:root{--bg:#080808;--bg-2:#0c0c0c;--sidebar:#0b0b0b;--surface:#111;--surface-2:#151515;--surface-3:#191919;--hover:#191919;--raised:#1c1c1c;--raised-2:#222;--fg:#f5f5f5;--fg-2:#d4d4d4;--muted:#a0a0a0;--subtle:#666;--faint:#3a3a3a;--primary:#f5f5f5;--primary-hover:#fff;--primary-press:#dadada;--on-primary:#0a0a0a;--success:#4ade80;--warning:#d4a84f;--danger:#f87171;--line:#ffffff0f;--line-2:#ffffff1a;--line-3:#ffffff29;--focus:#fff6;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--r-xs:8px;--r-sm:10px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-full:999px;--shadow-float:0 8px 30px #00000059;--shadow-pop:0 16px 48px #0000008c;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12.5px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:28px;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--t-fast:.14s;--t:.2s;--t-slow:.28s;--z-topbar:20;--z-sidebar:30;--z-nav:40;--z-menu:50;--z-overlay:60;--z-toast:70;--sidebar-w:244px;--sidebar-w-collapsed:68px;--gutter:12px;--topbar-h:64px;--tabbar-h:60px;--safe-bottom:env(safe-area-inset-bottom,0px);--vh:var(--app-h,100dvh);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--text-md);font-feature-settings:"cv11", "ss03";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.45}::selection{background:#fff3}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button:not(:disabled),a[href],[role=button]{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}h1,h2,h3{letter-spacing:-.015em;margin:0;font-weight:600}p{margin:0}code,.mono{font-family:var(--font-mono);font-size:.93em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.small{font-size:var(--text-sm)}.strong{font-weight:600}.accent{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3);text-underline-offset:3px;transition:text-decoration-color var(--t-fast) var(--ease)}.accent:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}.pos{color:var(--success)}.neg{color:var(--danger)}.r{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stack{gap:var(--s-3);flex-direction:column;display:flex}.hstack{align-items:center;gap:var(--s-2);display:flex}.spacer{flex:1}.narrow{max-width:640px}@supports not selector(::-webkit-scrollbar){html{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--r-full);background:#ffffff1a padding-box padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:#ffffff2e}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@keyframes drop{0%{opacity:0;transform:translateY(-8px)}}@keyframes pop{0%{opacity:0;transform:translateY(4px)scale(.98)}}@keyframes popOut{to{opacity:0;transform:translateY(4px)scale(.98)}}@keyframes slideLeft{0%{opacity:0;transform:translate(16px)}}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)scale(.98)}}@keyframes toastOut{to{opacity:0;transform:translateY(-6px)scale(.98)}}@keyframes sheetUp{0%{transform:translateY(100%)}}@keyframes sheetDown{to{transform:translateY(100%)}}@keyframes fadeOut{to{opacity:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.6)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@keyframes pulse{0%{opacity:.45;transform:scale(1)}70%,to{opacity:0;transform:scale(2.6)}}@keyframes fresh{0%{opacity:0;background-color:var(--raised-2);transform:translateY(-8px)}12%{opacity:1;transform:none}40%{background-color:var(--raised)}}@keyframes draw{0%{stroke-dashoffset:var(--len,40)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--s-2);height:40px;padding:0 var(--s-4);border-radius:var(--r-sm);white-space:nowrap;transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);border:1px solid #0000;font-weight:500;display:inline-flex;position:relative}.btn svg{width:16px;height:16px;transition:transform var(--t) var(--ease)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-sm{height:32px;padding:0 var(--s-3);font-size:13px}.btn-lg{height:50px;padding:0 var(--s-5);border-radius:var(--r-md);font-size:15px}.btn-block{width:100%}.btn-primary{background:var(--primary);color:var(--on-primary);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:active:not(:disabled){background:var(--primary-press)}.btn-primary .spinner{border-color:#00000026;border-top-color:var(--on-primary)}.btn-secondary{border-color:var(--line-2);color:#b5b5b5;background:0 0}.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--line-3);color:var(--fg)}.btn-ghost{border-color:var(--line);color:var(--muted);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--fg)}.btn-danger{border-color:var(--line-2);color:#e57373;background:0 0}.btn-danger:hover:not(:disabled){background:var(--surface-2);border-color:#f8717147}.btn-danger-solid{background:var(--danger);color:#0a0a0a;border-color:#0000;font-weight:600}.btn-danger-solid:hover:not(:disabled){background:#fa8585;border-color:#0000}.btn:hover .go{transform:translate(2px)}.icon-btn{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:38px;height:38px;color:var(--muted);transition:color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.icon-btn svg{width:18px;height:18px}.icon-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--line-2);color:var(--fg)}.icon-btn:active:not(:disabled){transform:scale(.95)}.icon-btn.plain{background:0 0;border-color:#0000}.icon-btn.plain:hover:not(:disabled){background:var(--surface-2)}.icon-btn .dot{background:var(--fg);width:7px;height:7px;box-shadow:0 0 0 2px var(--bg);animation:scaleIn var(--t) var(--ease-out);border-radius:50%;position:absolute;top:8px;right:8px}.link{color:var(--muted);transition:color var(--t-fast) var(--ease);background:0 0;border:0;padding:0;font-weight:500}.link:hover{color:var(--fg)}.strong-link{color:var(--fg);font-weight:600}.copy{border-radius:var(--r-xs);min-width:30px;height:30px;color:var(--subtle);transition:color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:0 6px;font-size:12px;display:inline-flex}.copy svg{width:15px;height:15px}.copy:hover{background:var(--surface-3);color:var(--fg)}.copy:active{transform:scale(.92)}.copy.done{color:var(--success)}.copy.done svg{animation:scaleIn var(--t) var(--ease-out)}.input{width:100%;height:40px;padding:0 var(--s-3);border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);color:var(--fg);transition:border-color var(--t) var(--ease), background-color var(--t) var(--ease);outline:none}textarea.input{resize:vertical;height:auto;padding:10px 12px;line-height:1.45}.input::placeholder{color:var(--subtle);transition:color var(--t) var(--ease)}.input:hover{border-color:var(--line-3)}.input:focus{background:var(--surface-2);border-color:#ffffff3d}.input:focus::placeholder{color:#7a7a7a}.search{flex:auto;min-width:0;position:relative}.search>svg{width:16px;height:16px;color:var(--subtle);opacity:.8;pointer-events:none;transition:color var(--t) var(--ease), opacity var(--t) var(--ease);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search .input{border-color:#1a1a1a;height:40px;padding-left:38px;padding-right:40px}.search:focus-within>svg{color:var(--fg);opacity:1}.search kbd{border:1px solid var(--line-2);min-width:20px;height:20px;color:var(--subtle);font-family:var(--font-mono);pointer-events:none;transition:opacity var(--t) var(--ease);border-radius:6px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.search:focus-within kbd{opacity:0}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--muted);font-size:12px}.form{flex-direction:column;gap:14px;display:flex}.card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.section-label{color:var(--subtle);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:600}.rows{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);margin:0;overflow:hidden}.rows>div{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:42px;padding:9px 14px;display:flex}.rows>div+div{border-top:1px solid var(--line)}.rows dt{color:var(--muted);flex-shrink:0;font-size:13px}.rows dd{text-align:right;overflow-wrap:anywhere;min-width:0;margin:0}.seg{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2);scrollbar-width:none;gap:2px;max-width:100%;padding:3px;display:inline-flex;position:relative;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg-thumb{background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--line);transition:transform var(--t) var(--ease-out), width var(--t) var(--ease-out);pointer-events:none;border-radius:9px;position:absolute;top:3px;bottom:3px;left:0}.seg button{z-index:1;height:30px;color:var(--subtle);white-space:nowrap;transition:color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;border:0;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex;position:relative}.seg button:hover{color:var(--fg-2)}.seg button:active{transform:scale(.97)}.seg button.active{color:var(--fg)}.seg button .seg-count{color:var(--subtle);font-variant-numeric:tabular-nums;transition:color var(--t-fast) var(--ease);font-size:12px}.seg button.active .seg-count{color:var(--muted)}.seg-block{display:flex}.seg-block button{flex:1;justify-content:center}.tabs{gap:var(--s-5);padding:0 var(--s-4);border-bottom:1px solid var(--line);display:flex;position:relative}.tabs button{height:44px;color:var(--subtle);transition:color var(--t-fast) var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:500;display:inline-flex;position:relative}.tabs button:hover{color:var(--fg-2)}.tabs button.active{color:var(--fg)}.tabs-line{background:var(--fg);height:1.5px;transition:transform var(--t) var(--ease-out), width var(--t) var(--ease-out);border-radius:2px;position:absolute;bottom:-1px;left:0}.status{border-radius:var(--r-xs);background:var(--surface-3);height:24px;color:var(--fg-2);white-space:nowrap;animation:fade var(--t) var(--ease);border:1px solid #ffffff12;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:500;display:inline-flex}.status svg{flex-shrink:0}.status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px;position:relative}.status-accent :is(.status-dot,svg),.status-warn :is(.status-dot,svg){color:var(--warning)}.status-neutral :is(.status-dot,svg){color:var(--fg)}.status-muted{color:var(--muted)}.status-muted :is(.status-dot,svg){color:var(--subtle)}.status-success :is(.status-dot,svg){color:var(--success)}.status-danger :is(.status-dot,svg){color:var(--danger)}.status-accent .status-dot:after{content:"";animation:pulse 2.4s var(--ease-out) infinite;background:currentColor;border-radius:50%;position:absolute;inset:0}.timer{color:var(--fg);font-family:var(--font-mono);font-variant-numeric:tabular-nums;transition:color var(--t) var(--ease);font-size:13px;font-weight:500}.timer.warn{color:var(--warning)}.timer.danger{color:var(--danger)}.count{border-radius:var(--r-full);background:var(--surface-3);min-width:18px;height:18px;color:var(--muted);font-variant-numeric:tabular-nums;animation:scaleIn var(--t) var(--ease-out);justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.count.hot{color:#fff;background:#2a2a2a}.metrics{gap:var(--s-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;min-width:0;transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);flex-direction:column;gap:2px;padding:14px 16px;display:flex;position:relative}button.metric,a.metric{color:inherit;font:inherit}button.metric:hover,a.metric:hover{background:var(--surface-2);border-color:var(--line-2)}button.metric:active,a.metric:active{transform:scale(.99)}.metric b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;padding-right:30px;font-size:24px;font-weight:600;line-height:1.15;display:block;overflow:hidden}.metric>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.metric-icon{color:var(--faint);transition:color var(--t-fast) var(--ease);position:absolute;top:14px;right:14px}.metric-icon svg{width:16px;height:16px}.metric:hover .metric-icon{color:var(--subtle)}.metric.hot .metric-icon:after{content:"";background:var(--warning);width:6px;height:6px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;position:absolute;top:-2px;right:-2px}.metric b .metric-value{animation:rise var(--t) var(--ease-out);display:inline-block}.skeleton{background:#161616;border-radius:6px;display:block;position:relative;overflow:hidden}.skeleton:after{content:"";animation:shimmer 1.6s var(--ease) infinite;background:linear-gradient(90deg,#0000,#ffffff09,#0000);position:absolute;inset:0;transform:translate(-100%)}.skeleton-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.skeleton-row{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.spinner{border:2px solid var(--line-2);border-top-color:var(--fg);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}.spinner-sm{width:14px;height:14px}.center{min-height:160px;color:var(--subtle);justify-content:center;align-items:center;gap:10px;display:flex}.empty{color:var(--subtle);text-align:center;animation:rise var(--t-slow) var(--ease-out);flex-direction:column;align-items:center;gap:4px;padding:48px 16px;display:flex}.empty-icon{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);width:44px;height:44px;color:var(--muted);justify-content:center;align-items:center;margin-bottom:10px;display:inline-flex}.empty-icon svg{width:20px;height:20px}.empty b{color:var(--fg);font-size:15px;font-weight:600}.empty>span{max-width:280px;font-size:13px}.empty .btn{margin-top:14px}.empty.failed .empty-icon{color:var(--danger)}.error{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);color:var(--fg-2);overflow-wrap:anywhere;animation:rise var(--t) var(--ease-out);align-items:center;gap:10px;padding:10px 10px 10px 14px;display:flex}.error>svg{width:16px;height:16px;color:var(--danger);flex-shrink:0}.error>span{flex:1;min-width:0}.pager{color:var(--subtle);justify-content:flex-end;align-items:center;gap:10px;font-size:12.5px;display:flex}.switch{border-radius:var(--r-full);background:var(--surface-3);width:42px;height:26px;box-shadow:inset 0 0 0 1px var(--line-2);transition:background-color var(--t) var(--ease);border:0;flex-shrink:0;position:relative}.switch span{background:var(--muted);width:20px;height:20px;transition:transform var(--t) var(--ease-out), background-color var(--t) var(--ease), width var(--t-fast) var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.switch:active:not(:disabled) span{width:24px}.switch.on{background:var(--primary)}.switch.on span{background:var(--on-primary);transform:translate(16px)}.switch.on:active:not(:disabled) span{transform:translate(12px)}.setting{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:56px;padding:10px var(--s-4);display:flex}.setting+.setting{border-top:1px solid var(--line)}.avatar{background:var(--surface-3);width:32px;height:32px;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--fg-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;animation:fade var(--t) var(--ease);display:block}.overlay{z-index:var(--z-overlay);padding:var(--s-4);-webkit-backdrop-filter:blur(6px);animation:fade var(--t) var(--ease);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay.closing{animation:fadeOut var(--t-fast) var(--ease-in) forwards}.modal{border:1px solid var(--line-2);border-radius:var(--r-xl);background:var(--surface);width:100%;max-width:420px;max-height:88dvh;box-shadow:var(--shadow-pop);animation:pop var(--t) var(--ease-out);overflow-y:auto}.overlay.closing .modal{animation:popOut var(--t-fast) var(--ease-in) forwards}.modal-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:16px 12px 0 20px;display:flex}.modal-head h3{font-size:17px}.modal-body{gap:var(--s-4);flex-direction:column;padding:8px 20px 20px;display:flex}.modal-text{color:var(--muted)}.modal-summary{justify-content:space-between;align-items:center;gap:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2);padding:12px 14px;display:flex}.modal-summary span{color:var(--muted);font-family:var(--font-mono);font-size:13px}.modal-summary b{font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.modal-actions{gap:var(--s-2);flex-direction:row-reverse;display:flex}.modal-actions .btn{flex:1}.dropdown{position:relative}.menu{z-index:var(--z-menu);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);min-width:230px;box-shadow:var(--shadow-pop);transform-origin:100% 0;animation:pop var(--t-fast) var(--ease-out);padding:5px;position:absolute;top:calc(100% + 8px);right:0}.menu.up{transform-origin:0 100%;top:auto;bottom:calc(100% + 8px)}.menu.left{left:0;right:auto}.menu-item{width:100%;min-height:38px;color:var(--muted);text-align:left;transition:background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.menu-item:hover,.menu-item.active{background:var(--surface-3);color:var(--fg)}.menu-item svg{width:16px;height:16px}.menu-sep{background:var(--line);height:1px;margin:5px 0}.menu-title{color:var(--subtle);padding:8px 10px 6px;font-size:12px}.notes{width:360px;max-height:440px;overflow-y:auto}.notes-head{justify-content:space-between;align-items:center;padding:8px 10px 6px;display:flex}.notes-head b{font-size:13px;font-weight:600}.note{text-align:left;width:100%;transition:background-color var(--t-fast) var(--ease);background:0 0;border:0;border-radius:8px;grid-template-columns:8px minmax(0,1fr) auto;align-items:baseline;gap:2px 10px;padding:10px;display:grid}.note:hover{background:var(--surface-3)}.note i{background:var(--subtle);border-radius:50%;width:6px;height:6px;transform:translateY(-1px)}.note-info i{background:var(--fg)}.note-success i{background:var(--success)}.note-warn i{background:var(--warning)}.note-error i{background:var(--danger)}.note b{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.note time{color:var(--subtle);font-variant-numeric:tabular-nums;font-size:11.5px}.note span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2/4;font-size:12.5px;overflow:hidden}.toasts{top:calc(var(--topbar-h) + 10px);z-index:var(--z-toast);gap:var(--s-2);pointer-events:none;flex-direction:column;width:360px;display:flex;position:fixed;right:20px}.toast{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);box-shadow:var(--shadow-float);pointer-events:auto;animation:toastIn var(--t) var(--ease-out);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px 8px 12px 14px;display:grid}.toast.leaving{animation:toastOut var(--t-fast) var(--ease-in) forwards}.toast-dot{background:var(--muted);border-radius:50%;align-self:start;width:7px;height:7px;margin-top:6px}.toast-info .toast-dot{background:var(--fg)}.toast-success .toast-dot{background:var(--success)}.toast-warn .toast-dot{background:var(--warning)}.toast-error .toast-dot{background:var(--danger)}.toast-main{min-width:0}.toast-title{align-items:baseline;gap:var(--s-2);min-width:0;display:flex}.toast-title b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.toast-title .mono{color:var(--subtle);flex-shrink:0;font-size:12px}.toast-line{color:var(--fg-2);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.toast-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.toast-side{align-items:center;gap:2px;display:flex}.toast .toast-close{width:30px;height:30px}.toast .toast-close svg{width:14px;height:14px}.app{min-height:var(--vh)}.sidebar{top:var(--gutter);bottom:var(--gutter);left:var(--gutter);z-index:var(--z-sidebar);width:var(--sidebar-w);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--sidebar);transition:width var(--t-slow) var(--ease-out);flex-direction:column;display:flex;position:fixed}.app.collapsed .sidebar{width:var(--sidebar-w-collapsed)}.brand{align-items:center;gap:10px;height:60px;padding:0 18px;display:flex;overflow:hidden}.brand-mark{border:1px solid var(--line-2);background:var(--bg);border-radius:9px;flex-shrink:0;width:30px;height:30px;display:inline-flex;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%}.brand-word{white-space:nowrap;transition:opacity var(--t) var(--ease);flex-direction:column;line-height:1;display:flex}.brand-word b{letter-spacing:.08em;font-size:13px;font-weight:700}.brand-word span{color:var(--subtle);letter-spacing:.28em;margin-top:4px;font-size:9.5px;font-weight:600}.app.collapsed .brand{padding:0 18px}.app.collapsed .brand-word{opacity:0}.side-nav{scrollbar-width:none;flex:1;padding:6px 10px;overflow:hidden auto}.side-nav::-webkit-scrollbar{display:none}.side-label{height:32px;color:var(--subtle);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:opacity var(--t) var(--ease);padding:14px 15px 0;font-size:10.5px;font-weight:600;overflow:hidden}.side-label:first-child{height:22px;padding-top:4px}.app.collapsed .side-label{opacity:1;color:#0000;position:relative}.app.collapsed .side-label:after{content:"";background:var(--line);height:1px;position:absolute;bottom:8px;left:14px;right:14px}.app.collapsed .side-label:first-child:after{display:none}.side-item{border-radius:var(--r-sm);width:100%;height:40px;color:var(--muted);text-align:left;white-space:nowrap;transition:background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;border:0;align-items:center;gap:12px;margin:1px 0;padding:0 14px;font-weight:500;display:flex;position:relative}.side-item>svg{width:18px;height:18px;color:var(--subtle);transition:color var(--t-fast) var(--ease);flex-shrink:0}.side-item .label{text-overflow:ellipsis;min-width:0;transition:opacity var(--t) var(--ease);flex:1;overflow:hidden}.side-item:hover{background:var(--surface-2);color:var(--fg)}.side-item:hover>svg{color:var(--fg-2)}.side-item:active{transform:scale(.98)}.side-item.active{background:var(--surface-3);color:var(--fg)}.side-item.active>svg{color:var(--fg)}.side-item.active:before{content:"";background:var(--fg);width:2px;animation:fade var(--t) var(--ease);border-radius:0 2px 2px 0;position:absolute;top:11px;bottom:11px;left:-10px}.app.collapsed .side-item .label{opacity:0}.app.collapsed .side-item .count{min-width:15px;height:15px;box-shadow:0 0 0 2px var(--sidebar);padding:0 3px;font-size:9.5px;position:absolute;top:5px;left:26px}.side-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:8px 10px 10px;display:flex}.side-user{border-radius:var(--r-sm);text-align:left;width:100%;min-height:50px;transition:background-color var(--t-fast) var(--ease);background:0 0;border:0;align-items:center;gap:10px;padding:7px 8px;display:flex}.side-user:hover,.side-user[aria-expanded=true]{background:var(--surface-2)}.side-user-text{min-width:0;transition:opacity var(--t) var(--ease);flex-direction:column;flex:1;line-height:1.25;display:flex}.side-user-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.side-user-text span{color:var(--subtle);font-size:12px}.app.collapsed .side-user-text{opacity:0}.presence{flex-shrink:0;display:inline-flex;position:relative}.presence:after{content:"";background:var(--success);width:9px;height:9px;box-shadow:0 0 0 2px var(--sidebar);transition:background-color var(--t) var(--ease);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.presence.connecting:after{background:var(--subtle)}.presence.offline:after{background:var(--danger)}.topbar .presence:after{box-shadow:0 0 0 2px var(--bg)}.content{min-width:0;margin-left:calc(var(--sidebar-w) + var(--gutter));transition:margin-left var(--t-slow) var(--ease-out)}.app.collapsed .content{margin-left:calc(var(--sidebar-w-collapsed) + var(--gutter))}.topbar{z-index:var(--z-topbar);height:calc(var(--topbar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 24px 0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);background:#080808db;align-items:center;gap:10px;display:flex;position:sticky;top:0}.topbar h1{text-overflow:ellipsis;white-space:nowrap;min-width:0;animation:fade var(--t) var(--ease);flex:1;font-size:18px;overflow:hidden}.topbar .topbar-mark,.topbar .back-mobile,.topbar .topbar-user{display:none}.topbar-actions{align-items:center;gap:var(--s-2);display:flex}.topbar-user{border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);transition:border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);padding:3px}.topbar-user:hover,.topbar-user[aria-expanded=true]{border-color:var(--line-3)}.topbar-user:active{transform:scale(.95)}.topbar-user .avatar{width:30px;height:30px;font-size:12px}.bell-count{border-radius:var(--r-full);background:var(--fg);min-width:16px;height:16px;color:var(--on-primary);box-shadow:0 0 0 2px var(--bg);animation:scaleIn var(--t) var(--ease-out);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:4px;right:4px}.offline-pill{border:1px solid var(--line-2);border-radius:var(--r-full);height:30px;color:var(--fg-2);animation:fade var(--t) var(--ease);align-items:center;gap:6px;padding:0 10px;font-size:12.5px;display:inline-flex}.offline-pill svg{width:14px;height:14px;color:var(--danger)}.page{padding:20px 24px 32px}.route{animation:rise var(--t) var(--ease-out)}.tabbar{display:none}.profile-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);align-items:center;gap:12px;padding:14px 16px;display:flex}.profile-card .avatar{width:44px;height:44px;font-size:16px}.profile-card b{font-size:15px;font-weight:600;display:block}.profile-card span{color:var(--subtle);font-size:12.5px}.menu-list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.menu-list a{min-height:54px;color:var(--fg);transition:background-color var(--t-fast) var(--ease);align-items:center;gap:12px;padding:0 14px;font-weight:500;display:flex}.menu-list a+a{border-top:1px solid var(--line)}.menu-list a:hover,.menu-list a:active{background:var(--surface-2)}.menu-list .menu-icon{border:1px solid var(--line);background:var(--bg-2);width:32px;height:32px;color:var(--muted);border-radius:9px;justify-content:center;align-items:center;display:inline-flex}.menu-list .menu-icon svg{width:17px;height:17px}.menu-list .chev{color:var(--subtle);transition:transform var(--t-fast) var(--ease);margin-left:auto}.menu-list a:hover .chev{transform:translate(2px)}.menu-list .count{margin-left:auto}.menu-list .count+.chev{margin-left:6px}.auth{min-height:var(--vh);padding:var(--s-4);justify-content:center;align-items:center;display:flex}.auth-card{align-items:center;gap:var(--s-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);text-align:center;width:100%;max-width:380px;animation:pop var(--t-slow) var(--ease-out);flex-direction:column;padding:32px 24px 28px;display:flex}.auth-card .brand-mark{border-radius:16px;width:56px;height:56px}.auth-card h1{font-size:22px}.auth-card .brand-word b{font-size:14px}.auth-card .stack{width:100%}.auth-card a.btn[aria-disabled=true]{opacity:.4;pointer-events:none}.login-wait{justify-content:center;align-items:center;gap:var(--s-2);animation:fade var(--t) var(--ease);display:flex}.widget-box{justify-content:center;min-height:44px;display:flex}.workspace{gap:var(--s-4);grid-template-columns:minmax(0,1fr) minmax(420px,480px);align-items:start;display:grid}.workspace:not(.has-selection){grid-template-columns:minmax(0,1fr)}.workspace:not(.has-selection) .workspace-side{display:none}@media (width>=1600px){.workspace.has-selection{grid-template-columns:minmax(0,1fr) 540px}}.workspace-main{gap:var(--s-4);flex-direction:column;min-width:0;display:flex;container-type:inline-size}.workspace-side{top:calc(var(--topbar-h) + 16px);height:calc(var(--vh) - var(--topbar-h) - 16px - var(--gutter));min-height:520px;animation:slideLeft var(--t-slow) var(--ease-out);position:sticky}.hero{flex-direction:column;gap:2px;padding:2px 2px 0;display:flex}.hero h2{letter-spacing:-.02em;font-size:22px;font-weight:600}.hero p{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.hero p i{background:var(--success);border-radius:50%;width:6px;height:6px}.hero p i.busy{background:var(--warning)}.toolbar{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.toolbar .search{flex:260px;max-width:380px}.list-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.list-count{color:var(--subtle);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.list-title{align-items:center;gap:8px;margin:4px 2px -6px;display:flex}.orders{flex-direction:column;gap:6px;display:flex}.order-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);animation:rise var(--t) var(--ease-out) backwards;outline:none;flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:relative}.order-card:hover{background:var(--surface-2);border-color:var(--line-2)}.order-card:active{background:#131313;transform:scale(.99)}.order-card:focus-visible{border-color:var(--focus)}.order-card.selected{background:var(--surface-2);border-color:var(--line-3)}.order-card.needs-action:before{content:"";background:var(--fg);border-radius:0 2px 2px 0;width:2px;position:absolute;top:14px;bottom:14px;left:-1px}.order-card.fresh{animation:fresh 2.6s var(--ease-out)}.oc-top,.oc-main,.oc-foot{align-items:center;gap:var(--s-3);min-width:0;display:flex}.oc-main{justify-content:space-between;align-items:flex-start}.oc-time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:12.5px}.oc-go{width:16px;color:var(--subtle);opacity:0;transition:opacity var(--t) var(--ease), transform var(--t) var(--ease), color var(--t) var(--ease);flex-shrink:0;margin-left:-4px;display:inline-flex;transform:translate(-6px)}.oc-go svg{width:16px;height:16px}.order-card:hover .oc-go,.order-card.selected .oc-go{opacity:1;color:var(--fg);transform:none}.oc-client{flex-direction:column;gap:3px;min-width:0;display:flex}.oc-client b{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.oc-client span{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;gap:10px;font-size:12.5px;display:flex}.oc-client em{font-style:normal}.oc-client em+em{color:var(--subtle)}.oc-amount{font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:3px;display:flex}.oc-amount b{letter-spacing:-.015em;font-size:17px;font-weight:700}.oc-amount span{color:var(--muted);font-size:12.5px}.oc-foot{color:var(--muted);justify-content:space-between;font-size:12.5px}.oc-pair{color:var(--fg-2);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.oc-pair svg{width:14px;height:14px;color:var(--subtle)}.oc-id{color:var(--subtle);font-family:var(--font-mono);font-size:12px}@container (width>=720px){.orders{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);gap:0;overflow:hidden}.orders-head,.order-card{align-items:center;gap:var(--s-4);grid-template-columns:150px minmax(140px,1.3fr) minmax(110px,.8fr) minmax(130px,auto) 84px 16px;grid-template-areas:"status client pair amount time go";padding:0 18px;display:grid}.orders-head{border-bottom:1px solid var(--line);height:40px;color:var(--subtle);font-size:11.5px;font-weight:500}.orders-head .r{text-align:right}.order-card{border:0;border-radius:0;min-height:62px}.order-card+.order-card{border-top:1px solid var(--line)}.order-card.selected{background:var(--surface-3)}.order-card.needs-action:before,.order-card.selected:before{top:16px;bottom:16px;left:0}.order-card.selected:before{content:"";background:var(--fg);border-radius:0 2px 2px 0;width:2px;position:absolute}.oc-top,.oc-main,.oc-foot{display:contents}.order-card .status{grid-area:status;justify-self:start}.oc-time{grid-area:time;justify-self:end;margin:0}.oc-go{grid-area:go;margin:0}.oc-client{grid-area:client}.oc-amount{grid-area:amount}.oc-pair{grid-area:pair}.oc-id{display:none}}@container (width<=719px){.orders-head{display:none}}.orders-skeleton{flex-direction:column;gap:6px;display:flex}.panel{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;height:100%;display:flex;overflow:hidden}.tx{border-bottom:1px solid var(--line);padding:16px 18px 14px;position:relative}.tx-top{align-items:center;gap:4px;min-height:30px;display:flex}.tx-id{color:var(--muted);font-family:var(--font-mono);font-size:13px}.tx-top .status{margin-left:auto}.tx-amount{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-top:8px;display:flex}.tx-amount b{font-size:var(--text-2xl);letter-spacing:-.025em;font-weight:700;line-height:1.1}.tx-amount span{color:var(--muted);font-size:15px}.tx-meta{flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:10px;display:flex}.tx-pair{color:var(--fg);align-items:center;gap:7px;font-size:14px;font-weight:500;display:inline-flex}.tx-pair svg{width:15px;height:15px;color:var(--subtle)}.tx-client{border:1px solid var(--line);border-radius:var(--r-full);background:var(--bg-2);color:var(--fg-2);transition:border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);align-items:center;gap:8px;padding:3px 10px 3px 3px;font-size:13.5px;font-weight:500;display:inline-flex}.tx-client:hover{border-color:var(--line-3);background:var(--surface-2);color:var(--fg)}.tx-client:active{transform:scale(.98)}.tx-client .avatar{width:22px;height:22px;font-size:10.5px}.tx-client em{color:var(--subtle);font-variant-numeric:tabular-nums;font-style:normal}.tx-owner{min-height:30px;color:var(--muted);align-items:center;gap:10px;margin-top:10px;font-size:13px;display:flex}.tx-owner b{color:var(--fg);font-weight:500}.tx-owner-btn{border:1px solid var(--line-2);border-radius:var(--r-full);height:30px;color:var(--fg-2);transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;align-items:center;gap:6px;margin-left:auto;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex}.tx-owner-btn svg{width:14px;height:14px}.tx-owner-btn:hover{background:var(--surface-2);border-color:var(--line-3);color:var(--fg)}.tx-owner-btn:active{transform:scale(.97)}.pick-list{flex-direction:column;gap:6px;max-height:320px;display:flex;overflow-y:auto}.pick{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2);text-align:left;width:100%;min-height:56px;transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);align-items:center;gap:12px;padding:8px 12px;display:flex}.pick:hover{background:var(--surface-2);border-color:var(--line-2)}.pick:active{transform:scale(.99)}.pick.active{background:var(--surface-3);border-color:#ffffff4d}.pick-text{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.pick-text b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.pick-text>span{color:var(--subtle);font-size:12.5px}.pick-mark{border:1px solid var(--line-2);width:22px;height:22px;color:var(--on-primary);transition:background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pick.active .pick-mark{border-color:var(--primary);background:var(--primary)}.pick.active .pick-mark svg{animation:scaleIn var(--t) var(--ease-out)}.tx-deadline{align-items:center;gap:10px;margin-top:12px;display:flex}.tx-deadline-label{color:var(--muted);transition:color var(--t) var(--ease);flex-shrink:0;font-size:12.5px}.tx-deadline.danger .tx-deadline-label{color:var(--fg-2)}.tx-deadline-bar{background:var(--surface-3);border-radius:2px;flex:1;height:3px;position:relative;overflow:hidden}.tx-deadline-bar i{background:var(--fg-2);transition:width 1s linear, background-color var(--t) var(--ease);border-radius:2px;position:absolute;inset:0 auto 0 0}.tx-deadline.warn .tx-deadline-bar i{background:var(--warning)}.tx-deadline.danger .tx-deadline-bar i{background:var(--danger)}.tx-step{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2);color:var(--fg-2);animation:rise var(--t) var(--ease-out);align-items:center;gap:10px;margin-top:12px;padding:10px 12px;font-size:13.5px;display:flex}.tx-step svg{width:16px;height:16px;color:var(--subtle);flex-shrink:0}.tx-step.hot{border-color:var(--line-2);background:var(--surface-2);color:#ececec;font-weight:500}.tx-step.hot svg{color:var(--fg)}.tx-result{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2);animation:rise var(--t-slow) var(--ease-out);align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.tx-result-mark{border:1px solid var(--line-2);width:34px;height:34px;color:var(--success);animation:scaleIn var(--t-slow) var(--ease-out);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tx-result.failed .tx-result-mark{color:var(--danger)}.tx-result-mark path{stroke-dasharray:var(--len,40);animation:draw .42s var(--ease-out) .12s backwards}.tx-result b{font-weight:600;display:block}.tx-result span{color:var(--muted);font-size:12.5px}.panel-body{min-height:0;animation:fade var(--t) var(--ease);flex:1;padding:16px 18px 18px;overflow-y:auto}.panel-body.flush{flex-direction:column;padding:0;display:flex;overflow:hidden}.panel-actions{gap:var(--s-2);border-top:1px solid var(--line);background:var(--surface);animation:fade var(--t) var(--ease);flex-direction:column;padding:12px 16px 14px;display:flex}.actions-row{gap:var(--s-2);grid-template-columns:minmax(0,1fr);display:grid}.actions-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-skeleton{flex-direction:column;gap:12px;padding:18px;display:flex}.details{flex-direction:column;gap:20px;display:flex}.detail-head{justify-content:space-between;align-items:center;min-height:28px;margin:0 2px 6px;display:flex}.req{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.req-line{min-height:44px;transition:background-color var(--t-fast) var(--ease);align-items:center;gap:8px;padding:4px 6px 4px 14px;display:flex}.req-line:hover{background:var(--surface-3)}.req-line+.req-line{border-top:1px solid var(--line)}.req-line span{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex:1;min-width:0}.notice{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);color:var(--muted);padding:10px 14px;font-size:13px}.timeline{margin:0;padding:4px 0 0;list-style:none;position:relative}.timeline li{color:var(--fg-2);grid-template-columns:14px minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:6px 2px 6px 0;font-size:13px;display:grid;position:relative}.timeline li:before{content:"";background:var(--line-2);width:1px;position:absolute;top:0;bottom:0;left:6px}.timeline li:first-child:before{top:14px}.timeline li:last-child:before{bottom:calc(100% - 14px)}.timeline li i{z-index:1;background:var(--faint);width:7px;height:7px;box-shadow:0 0 0 3px var(--surface);border-radius:50%;margin-left:3px;position:relative;transform:translateY(-1px)}.timeline li.ok i{background:var(--success)}.timeline li.bad i{background:var(--danger)}.timeline li.key i{background:var(--fg-2)}.timeline time{color:var(--subtle);font-family:var(--font-mono);font-size:12px}.timeline em{color:var(--subtle);font-style:normal}.chat{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.chat-scroll{overscroll-behavior:contain;flex-direction:column;flex:1;min-height:0;padding:12px 16px 8px;display:flex;overflow-y:auto}.chat-empty{color:var(--subtle);animation:fade var(--t) var(--ease);margin:auto;font-size:13px}.chat-day{border:1px solid var(--line);border-radius:var(--r-full);color:var(--subtle);font-variant-numeric:tabular-nums;align-self:center;margin:10px 0 6px;padding:2px 10px;font-size:11.5px}.chat-system{color:var(--subtle);align-self:stretch;align-items:center;gap:10px;margin:6px 0;font-size:12px;display:flex}.chat-system:before,.chat-system:after{content:"";background:var(--line);flex:1;height:1px}.chat-system time{font-variant-numeric:tabular-nums}.chat-system.important span{color:var(--fg-2);font-weight:500}.chat-system.new{animation:fade var(--t) var(--ease)}.msg{align-items:flex-end;gap:6px;margin-top:8px;display:flex;position:relative}.msg.cont{margin-top:2px}.msg.ours{flex-direction:row-reverse}.msg.new{animation:rise var(--t) var(--ease-out)}.bubble{background:var(--surface-2);max-width:78%;color:var(--fg);overflow-wrap:anywhere;border-radius:16px 16px 16px 6px;padding:8px 12px 6px}.msg.cont .bubble{border-top-left-radius:6px}.msg.ours .bubble{background:#1c1c1c;border-radius:16px 16px 6px}.msg.ours.cont .bubble{border-top-right-radius:6px}.bubble p{white-space:pre-wrap}.bubble-foot{color:var(--subtle);font-variant-numeric:tabular-nums;justify-content:flex-end;gap:8px;margin-top:2px;font-size:11px;display:flex}.bubble.pending{opacity:.55;transition:opacity var(--t) var(--ease)}.bubble.failed{opacity:1;box-shadow:inset 0 0 0 1px #f8717159}.bubble-error{color:var(--danger);margin-top:4px;font-size:12px}.bubble .link{font-size:11px;text-decoration:underline}.msg-actions{opacity:0;transition:opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);display:flex;transform:translateY(2px)}.msg:hover .msg-actions,.msg:focus-within .msg-actions{opacity:1;transform:none}.msg-actions .copy{width:28px;min-width:28px;height:28px}.attach-media{max-width:100%;max-height:260px;animation:fade var(--t) var(--ease);border-radius:10px;margin:2px 0 4px;display:block}.attach-box{justify-content:center;align-items:center;width:160px;height:110px;display:flex}.attach-doc{border:1px solid var(--line-2);transition:border-color var(--t-fast) var(--ease);background:0 0;border-radius:8px;align-items:center;gap:6px;margin:2px 0 4px;padding:6px 10px;display:inline-flex}.attach-doc:hover{border-color:var(--line-3)}.attach-doc svg{width:15px;height:15px}.chat-jump{z-index:2;border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface-2);height:32px;box-shadow:var(--shadow-float);color:var(--fg);animation:pop var(--t) var(--ease-out);align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.chat-jump svg{width:14px;height:14px}.chat-jump:hover{background:var(--surface-3)}.chat-skeleton{flex-direction:column;gap:10px;padding:16px;display:flex}.req-strip{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2);font-variant-numeric:tabular-nums;min-height:46px;animation:rise var(--t) var(--ease-out);align-items:center;gap:10px;margin:10px 12px 0;padding:6px 6px 6px 12px;font-size:13.5px;display:flex}.req-strip-label{color:var(--subtle);flex-shrink:0;font-size:12px}.req-strip-text{min-width:0;color:var(--fg);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;line-height:1.35;display:-webkit-box;overflow:hidden}.req-strip .copy{border:1px solid var(--line);background:var(--surface);width:34px;height:34px}.quick{scrollbar-width:none;overscroll-behavior-x:contain;animation:fade var(--t) var(--ease);flex-shrink:0;gap:6px;padding:4px 16px 10px;display:flex;overflow-x:auto}.quick::-webkit-scrollbar{display:none}.quick button{border:1px solid var(--line-2);border-radius:var(--r-full);height:32px;color:var(--muted);white-space:nowrap;transition:color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;flex:none;padding:0 12px;font-size:13px}.quick button:hover{background:var(--surface-3);border-color:var(--line-3);color:var(--fg)}.quick button:active{background:var(--raised-2);transform:scale(.97)}.composer{border-top:1px solid var(--line);flex-shrink:0;align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.composer textarea{border:1px solid var(--line-2);background:var(--bg-2);min-height:42px;max-height:140px;color:var(--fg);resize:none;transition:border-color var(--t) var(--ease), background-color var(--t) var(--ease);border-radius:14px;outline:none;flex:1;padding:11px 14px;line-height:1.35}.composer textarea:hover{border-color:var(--line-3)}.composer textarea:focus{background:var(--surface-2);border-color:#ffffff3d}.composer textarea::placeholder{color:var(--subtle)}.send{background:var(--primary);width:42px;height:42px;color:var(--on-primary);transition:background-color var(--t) var(--ease), color var(--t) var(--ease), transform var(--t-fast) var(--ease);border:0;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.send svg{width:18px;height:18px;transition:transform var(--t) var(--ease-out)}.send:hover:not(:disabled){background:var(--primary-hover)}.send:hover:not(:disabled) svg{transform:translate(1px)}.send:active:not(:disabled){transform:scale(.94)}.send:disabled{background:var(--surface-3);color:var(--subtle);cursor:not-allowed}.grid-table{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);animation:rise var(--t) var(--ease-out);overflow:hidden}.grid-row{align-items:center;gap:var(--s-3);border-top:1px solid var(--line);min-height:54px;transition:background-color var(--t-fast) var(--ease);padding:8px 16px;display:grid}.grid-row:first-child{border-top:0}a.grid-row:hover{background:var(--surface-2)}a.grid-row:active{background:#131313}a.grid-row .subtle:last-child{transition:transform var(--t-fast) var(--ease), color var(--t-fast) var(--ease)}a.grid-row:hover .subtle:last-child{color:var(--fg);transform:translate(2px)}.grid-row.head{min-height:40px;color:var(--subtle);font-size:11.5px;font-weight:500}.grid-row>*{min-width:0}.cell-main{flex-direction:column;gap:2px;min-width:0;display:flex}.cell-main b{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.grid-row .cell-main>span{color:var(--muted);font-size:12px}.cell-id{color:var(--subtle);font-family:var(--font-mono);font-size:12.5px}.log-row{grid-template-columns:84px 76px minmax(0,1fr)}.metrics.metrics-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-row{grid-template-columns:24px minmax(0,1fr) 70px 70px 70px 150px}.chips{flex-wrap:wrap;gap:6px;display:flex}.rank{background:var(--surface-3);width:24px;height:24px;color:var(--muted);border-radius:7px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.rank.top{background:var(--primary);color:var(--on-primary)}.online{align-items:center;gap:7px;display:inline-flex}.online:before{content:"";background:var(--success);border-radius:50%;flex-shrink:0;width:7px;height:7px}.online.away:before{background:var(--subtle)}.online.lost:before{background:var(--danger)}@media (width<=1179px){.workspace.has-selection{grid-template-columns:minmax(0,1fr)}.workspace.has-selection .workspace-main{display:none}.workspace-side{min-height:0;position:static}.workspace.has-selection .workspace-side{height:auto}.workspace.has-selection .panel{height:calc(var(--vh) - var(--topbar-h) - 36px);min-height:480px}.topbar .back-mobile{margin-left:-8px;display:inline-flex}}@media (width<=1100px) and (width>=900px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=899px){:root{--topbar-h:56px}.sidebar{display:none}.content,.app.collapsed .content{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 28px);margin-left:0}.topbar{gap:var(--s-2);padding:env(safe-area-inset-top,0px) max(12px, env(safe-area-inset-right,0px)) 0 max(16px, env(safe-area-inset-left,0px))}.topbar h1{font-size:17px}.topbar .topbar-mark{display:inline-flex}.topbar .topbar-mark.with-back{display:none}.topbar .topbar-user{display:inline-flex}.page{padding:14px max(12px, env(safe-area-inset-right,0px)) 16px max(12px, env(safe-area-inset-left,0px))}.menu,.menu.up{top:calc(var(--topbar-h) + env(safe-area-inset-top,0px) + 6px);min-width:0;max-height:calc(var(--vh) - var(--topbar-h) - 24px);transform-origin:top;position:fixed;bottom:auto;left:10px;right:10px;overflow-y:auto}.notes{width:100%;max-height:none}.input,.composer textarea{font-size:16px}.metric-icon{display:none}.metric.hot:after{content:"";background:var(--warning);border-radius:50%;width:6px;height:6px;position:absolute;top:12px;right:12px}.metric>span{white-space:normal;line-height:1.3}.metrics.metrics-3 .metric{padding:12px}.log-row{grid-template-columns:auto minmax(0,1fr);gap:2px 12px;padding:10px 14px}.log-row .cell-main{grid-column:1/-1}.log-row .cell-main b{white-space:normal}.hero h2{font-size:19px}.hero p{font-size:13px}.toolbar{flex-flow:column;align-items:stretch}.toolbar .search{flex:none;max-width:none}.toolbar .seg{align-self:flex-start}.search kbd{display:none}.tabbar{right:12px;bottom:calc(10px + var(--safe-bottom));z-index:var(--z-nav);max-width:460px;height:var(--tabbar-h);border:1px solid var(--line-2);box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(12px);animation:rise var(--t-slow) var(--ease-out);background:#0d0d0deb;border-radius:22px;grid-auto-columns:1fr;grid-auto-flow:column;margin-inline:auto;padding:5px;display:grid;position:fixed;left:12px}.tabbar-thumb{width:calc((100% - 10px) / var(--n,4));background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--line);transform:translateX(calc(var(--i,0) * 100%));transition:transform var(--t-slow) var(--ease-out), opacity var(--t) var(--ease);border-radius:17px;position:absolute;top:5px;bottom:5px;left:5px}.tabbar-thumb.none{opacity:0}.tab{z-index:1;color:var(--subtle);transition:color var(--t) var(--ease), transform var(--t-fast) var(--ease);border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:relative}.tab:active{transform:scale(.96)}.tab.active{color:#fff}.tab-icon{transition:transform var(--t) var(--ease-out);display:inline-flex;position:relative}.tab.active .tab-icon{transform:translateY(-1px)}.tab-icon svg{width:21px;height:21px}.tab-icon .count{min-width:16px;height:16px;padding:0 4px;font-size:10px;position:absolute;top:-6px;left:13px;box-shadow:0 0 0 2px #0d0d0d}.tab-label{opacity:.85;transition:opacity var(--t) var(--ease);font-size:10.5px;font-weight:500;line-height:1}.tab.active .tab-label{opacity:1}.app.order-open .tabbar{display:none}.app.order-open .content{padding-bottom:0}.app.order-open .page{padding:0}.workspace.has-selection .workspace-side{animation:slideLeft var(--t-slow) var(--ease-out)}.workspace.has-selection .panel{height:calc(var(--vh) - var(--topbar-h) - env(safe-area-inset-top,0px));overscroll-behavior:contain;background:var(--bg);border:0;border-radius:0;min-height:0;overflow-y:auto}.workspace.has-selection .panel>*{flex-shrink:0}.workspace.has-selection .panel>.panel-body{flex-shrink:1}.workspace.has-selection .panel-body.flush{min-height:280px}.workspace.has-selection .panel-body:not(.flush){min-height:220px}.workspace.has-selection .panel-actions{z-index:3;background:var(--bg);position:sticky;bottom:0}.tx{padding:12px 16px}.tx-top{min-height:28px}.tx-amount{margin-top:4px}.tx-amount b{font-size:25px}.tx-amount span{font-size:14px}.tx-meta{gap:6px 12px;margin-top:8px}.tx-step,.tx-result{margin-top:10px;padding:8px 10px;font-size:13px}.tx-result-mark{width:30px;height:30px}.tabs{padding:0 16px}.panel-body{padding:14px 12px 16px}.req-strip{min-height:44px;margin:8px 12px 0;padding:4px 4px 4px 12px}.chat-scroll{padding:10px 12px 6px}.bubble{max-width:86%}.quick{padding:2px 12px 8px}.composer{padding:8px 10px}.panel-actions{padding:10px 12px calc(10px + var(--safe-bottom))}.panel-actions.inline{flex-direction:row;align-items:stretch}.panel-actions.inline>.btn{flex:auto;min-width:0}.panel-actions.inline .actions-row{flex:none;display:flex}.panel-actions.inline .actions-row .btn{height:50px;padding:0 14px}html.kb-open .tabbar{display:none}html.kb-open .content{padding-bottom:8px}html.kb-open .workspace.has-selection .panel{height:calc(var(--vh) - var(--topbar-h) - env(safe-area-inset-top,0px));min-height:0;overflow:hidden}html.kb-open .workspace.has-selection .panel-body.flush{min-height:0}html.kb-open .quick,html.kb-open .tx-step,html.kb-open .tx-meta,html.kb-open .tx-deadline,html.kb-open .tx-owner,html.kb-open .tx-result,html.kb-open .req-strip,html.kb-open .actions-row{display:none}html.kb-open .tx{padding:8px 14px}html.kb-open .tx-amount{margin-top:2px}html.kb-open .tx-amount b{font-size:20px}html.kb-open .tabs button{height:38px}html.kb-open .panel-actions{padding:8px 12px}html.kb-open .panel-actions.inline .actions-row{display:none}.toasts{top:calc(var(--topbar-h) + 8px);gap:6px;width:auto;max-width:480px;margin-inline:auto;left:10px;right:10px}.toast:nth-last-child(n+3),.toast-sub{display:none}.notes{width:min(360px,100vw - 24px)}.modal-actions{flex-direction:column}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.metric{padding:12px 14px}.metric b{font-size:21px}}@media (width>=600px) and (width<=899px){.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.toolbar{flex-direction:row;align-items:center}.toolbar .search{flex:240px}.toolbar .seg{align-self:auto}.page{padding:18px 20px 20px}}@media (width<=359px){.metric b{font-size:18px}.oc-amount b{font-size:15px}.tx-amount b{font-size:22px}.panel-actions.inline{flex-direction:column}.panel-actions.inline .actions-row{display:grid}.panel-actions.inline .actions-row .btn{height:44px}.tab-label{font-size:10px}}@media (width<=899px) and (height<=500px){.hero,.tx-step,.quick{display:none}}@media (width<=599px){.overlay{align-items:flex-end;padding:0}.modal{max-width:none;padding-bottom:var(--safe-bottom);border-radius:var(--r-xl) var(--r-xl) 0 0;animation:sheetUp var(--t-slow) var(--ease-out)}.overlay.closing .modal{animation:sheetDown var(--t-fast) var(--ease-in) forwards}.modal:before{content:"";background:var(--line-3);border-radius:2px;width:36px;height:4px;margin:8px auto 0;display:block}.modal-head{padding-top:8px}.hide-sm{display:none}.stats-row{grid-template-columns:24px minmax(0,1fr) 50px 110px}}@media (pointer:coarse){.btn{min-height:44px}.btn-sm{min-height:38px}.btn-lg{min-height:50px}.icon-btn{width:44px;height:44px}.copy{min-width:40px;height:40px}.quick button,.seg button{height:38px}.tabs button{height:46px}.search .input{height:44px}.oc-go,.msg-actions{display:none}}
