.ask{background:var(--surface);border-left:1px solid var(--border);z-index:40;flex-direction:column;flex:none;width:400px;height:100vh;display:flex;position:sticky;top:0}@media (width<=1180px){.ask{width:min(420px,100%);height:auto;box-shadow:var(--shadow-lg);z-index:90;position:fixed;top:0;bottom:0;right:0}}.ask-fab{z-index:91;cursor:pointer;color:#fff;background:linear-gradient(135deg, var(--accent), #7048e8);width:56px;height:56px;box-shadow:var(--shadow-lg);border:0;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:16px;right:16px}.ask-fab:hover,.ask-fab:focus-visible{box-shadow:0 0 0 4px var(--focus), var(--shadow-lg)}.ask-fab.rec{background:var(--bad);animation:1.2s ease-in-out infinite mic-pulse}.ask-mic{cursor:pointer;border:1px solid var(--border-strong);background:var(--surface);min-width:44px;height:44px;color:var(--text);border-radius:10px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:13px;font-weight:650;display:inline-flex}.ask-mic:hover{border-color:var(--accent);color:var(--accent-text)}.ask-mic.rec{background:var(--bad);border-color:var(--bad);color:#fff;animation:1.2s ease-in-out infinite mic-pulse}.ask-mic:disabled{opacity:.6;cursor:wait}.ask-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 12px 10px 16px;display:flex}.ask-mark{color:#fff;background:linear-gradient(135deg, var(--accent), #7048e8);border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.ask-ctx{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:7px 16px;font-size:12.5px;display:flex}.ask-list{flex-direction:column;flex:1;gap:10px;padding:14px 14px 6px;display:flex;overflow-y:auto}.ask-welcome{flex-direction:column;gap:12px;padding:4px 2px;display:flex}.ask-msg{border-radius:12px;max-width:92%;padding:9px 12px;font-size:13.5px;line-height:1.45}.ask-msg.me{background:var(--accent);color:#fff;white-space:pre-wrap;border-bottom-right-radius:4px;align-self:flex-end}.ask-msg.bot{background:var(--surface-3);border-bottom-left-radius:4px;flex-direction:column;align-self:flex-start;gap:8px;display:flex}.ask-words p+p{margin-top:4px}.ask-words.bad{color:var(--bad)}.ask-chips{flex-wrap:wrap;gap:6px;display:flex}.ask-chip{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;color:var(--text-2);border-radius:999px;padding:5px 11px;font-size:12.5px}.ask-chip:hover{border-color:var(--accent);color:var(--accent-text)}.ask-choices{flex-direction:column;gap:6px;display:flex}.ask-choice{text-align:left;border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:7px 10px;display:flex}.ask-choice:hover{border-color:var(--accent)}.ask-call{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:10px 12px}.ask-call.proposed{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:var(--accent-soft)}.ask-call.failed{border-color:color-mix(in srgb, var(--bad) 45%, var(--border))}.ask-call-icon{color:var(--accent);flex:none}.ask-items{flex-direction:column;gap:4px;margin-top:8px;display:flex}.ask-item{background:var(--surface-2);border-radius:7px;align-items:center;gap:8px;min-width:0;padding:6px 8px;display:flex}a.ask-item:hover{background:var(--surface-3)}.ask-link{color:var(--accent-text);margin-top:8px;font-weight:600;display:inline-block}.ask-input{border-top:1px solid var(--border);align-items:flex-end;gap:8px;padding:10px 12px 12px;display:flex}.ask-input .textarea{resize:none;min-height:44px;max-height:140px}@keyframes spin{to{transform:rotate(360deg)}}.sg-list{flex-direction:column;display:flex}.sg{border-top:1px solid var(--border);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.sg:first-child{border-top:0}.sg-dot{background:var(--info);border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.sg.warn .sg-dot{background:var(--warn)}.sg.bad .sg-dot{background:var(--bad)}.sg-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.sg-agent{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-size:11px;font-weight:650}.sg-done{color:var(--good);font-size:12.5px}@media (width<=720px){.sg{flex-wrap:wrap}.sg-actions{justify-content:flex-start;width:100%;padding-left:20px}}.ask-rec{align-items:center;gap:8px;display:flex}.rec-dot{background:var(--bad);border-radius:50%;flex:none;width:10px;height:10px;animation:1.2s ease-in-out infinite mic-pulse}.ask-msg.ask-err{color:var(--bad);flex-direction:row;align-items:flex-start}.rec-meter{background:var(--surface);border:1px solid var(--border);border-radius:99px;height:8px;overflow:hidden}.rec-meter span{background:var(--good);height:100%;transition:width .1s linear;display:block}:root{--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--bg:#f4f5f7;--surface:#fff;--surface-2:#f8f9fb;--surface-3:#eef0f3;--border:#e3e6eb;--border-strong:#cfd4dc;--text:#121821;--text-2:#4a5566;--text-3:#7d8797;--accent:#e8590c;--accent-2:#ff7a2e;--accent-soft:#fff1e8;--accent-text:#b84405;--focus:#e8590c55;--side:#0f1720;--side-2:#17212d;--side-text:#c7ced9;--side-muted:#7c8899;--good:#0f9d58;--good-soft:#e6f6ee;--warn:#d98e04;--warn-soft:#fff6e0;--bad:#d92d20;--bad-soft:#fdecea;--info:#1c6fd1;--info-soft:#e8f1fd;--shadow-sm:0 1px 2px #1018280f;--shadow:0 1px 3px #10182814, 0 4px 12px #1018280d;--shadow-lg:0 12px 40px #1018282e;--r-sm:6px;--r:10px;--r-lg:14px;--side-w:248px;--top-h:60px;--t-slate:#64748b;--t-slate-bg:#eef1f5;--t-blue:#1c6fd1;--t-blue-bg:#e7f0fc;--t-violet:#7048e8;--t-violet-bg:#f0ebff;--t-amber:#b7791f;--t-amber-bg:#fff4dc;--t-cyan:#0b7fa5;--t-cyan-bg:#e1f5fb;--t-teal:#0c8f7a;--t-teal-bg:#dff7f1;--t-green:#178a3e;--t-green-bg:#e2f6e9;--t-orange:#c4510a;--t-orange-bg:#fff0e5;--t-emerald:#0a7a55;--t-emerald-bg:#dcf5ea;--t-zinc:#6b6f76;--t-zinc-bg:#efeff1;--t-red:#c9291e;--t-red-bg:#fdeceb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0c1117;--surface:#131a22;--surface-2:#17202a;--surface-3:#1e2833;--border:#243140;--border-strong:#33445a;--text:#e8edf3;--text-2:#aab5c3;--text-3:#7a8798;--accent-soft:#3a1f0e;--accent-text:#ff9a5c;--side:#080c11;--side-2:#121a23;--good-soft:#0f2a1d;--warn-soft:#2e2208;--bad-soft:#321412;--info-soft:#0f2238;--shadow:0 1px 3px #0006, 0 4px 12px #0000004d;--shadow-lg:0 12px 40px #0009;--t-slate-bg:#1f2833;--t-slate:#9fb0c4;--t-blue-bg:#11294a;--t-blue:#7fb1f3;--t-violet-bg:#251b4a;--t-violet:#b3a0ff;--t-amber-bg:#33260a;--t-amber:#f2c265;--t-cyan-bg:#0b2d38;--t-cyan:#6fd0ef;--t-teal-bg:#0b2f29;--t-teal:#5fe0c8;--t-green-bg:#0f2d1a;--t-green:#74d99a;--t-orange-bg:#37200e;--t-orange:#ffab70;--t-emerald-bg:#0b2d21;--t-emerald:#5fdcae;--t-zinc-bg:#23262b;--t-zinc:#a5a9b1;--t-red-bg:#3a1614;--t-red:#ff8f86;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-size:14px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.01em;margin:0}h1{font-size:24px;font-weight:750}h2{font-size:17px;font-weight:700}h3{font-size:14px;font-weight:650}p{margin:0}.mono{font-family:var(--mono);letter-spacing:-.01em;font-size:.92em}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:12.5px}.tiny{font-size:11.5px}.strong{font-weight:650}.nowrap{white-space:nowrap}.right{text-align:right}.center{text-align:center}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.good{color:var(--good)}.bad{color:var(--bad)}.warn{color:var(--warn)}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.row.top{align-items:flex-start}.row.between{justify-content:space-between}.col{flex-direction:column;gap:8px;display:flex}.grow{flex:1;min-width:0}.gap-4{gap:4px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.split{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}@media (width<=1180px){.split{grid-template-columns:minmax(0,1fr)}.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.shell{grid-template-columns:var(--side-w) minmax(0, 1fr);min-height:100%;display:grid}.side{background:linear-gradient(180deg, var(--side) 0%, #111b26 100%);height:100vh;color:var(--side-text);scrollbar-width:thin;scrollbar-color:#2a3644 transparent;flex-direction:column;padding:14px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:10px;padding:4px 8px 16px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent-2), var(--accent));color:#fff;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-size:15px;font-weight:800;display:grid;box-shadow:0 4px 14px #e8590c73}.brand-name{color:#fff;font-size:14.5px;font-weight:750;line-height:1.15}.brand-sub{color:var(--side-muted);font-size:11px}.nav-group{margin-top:12px}.nav-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--side-muted);padding:6px 10px;font-size:10.5px;font-weight:650}.nav-link{color:var(--side-text);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:500;transition:background .12s,color .12s;display:flex;position:relative}.nav-link:hover{background:var(--side-2);color:#fff}.nav-link.active{color:#fff;background:#e8590c24}.nav-link.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-12px}.nav-link svg{opacity:.9;flex:none;width:18px;height:18px}.nav-count{color:#dfe6ee;background:#243140;border-radius:99px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:650}.nav-count.hot{background:var(--accent);color:#fff}.side-foot{border-top:1px solid #1e2935;margin-top:auto;padding-top:12px}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--top-h);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:0 24px;display:flex;position:sticky;top:0}.search-btn{border:1px solid var(--border);background:var(--surface);max-width:520px;height:38px;color:var(--text-3);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:10px;flex:1;align-items:center;gap:10px;padding:0 12px;display:flex}.search-btn:hover{border-color:var(--border-strong)}.kbd{font-family:var(--mono);border:1px solid var(--border);color:var(--text-3);background:var(--surface-2);border-bottom-width:2px;border-radius:5px;padding:0 5px;font-size:11px}.content{width:100%;max-width:1480px;margin:0 auto;padding:24px 24px 96px}.menu-btn{display:none}@media (width<=1024px){.shell{grid-template-columns:minmax(0,1fr)}.side{z-index:60;width:280px;box-shadow:var(--shadow-lg);transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-105%)}.side.open{transform:none}.side-scrim{z-index:55;background:#080c1273;position:fixed;inset:0}.menu-btn{display:inline-flex}.topbar{padding:0 14px}.content{padding:16px}}@media (width<=640px){.hide-sm{display:none!important}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head .sub{color:var(--text-2);margin-top:4px}.crumbs{color:var(--text-3);align-items:center;gap:6px;margin-bottom:6px;font-size:12.5px;display:flex}.crumbs a:hover{color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.card-head h2,.card-head h3{align-items:center;gap:8px;display:flex}.card-body{padding:16px}.card-body.tight{padding:8px}.card-foot{border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--r-lg) var(--r-lg);padding:12px 16px}.card.flat{box-shadow:none}.card.hover{cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .15s}.card.hover:hover{box-shadow:var(--shadow);border-color:var(--border-strong)}.btn{border:1px solid var(--border-strong);background:var(--surface);height:38px;color:var(--text);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-sm);border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:600;transition:background .12s,border-color .12s,box-shadow .12s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--text-3)}.btn:active{transform:translateY(1px)}.btn:focus-visible,.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.btn svg{flex:none;width:16px;height:16px}.btn.primary{background:linear-gradient(180deg, var(--accent-2), var(--accent));border-color:var(--accent);color:#fff;box-shadow:0 2px 8px #e8590c4d}.btn.primary:hover{filter:brightness(1.05)}.btn.dark{background:var(--text);color:var(--surface);border-color:var(--text)}.btn.good{background:var(--good);border-color:var(--good);color:#fff}.btn.danger{color:var(--bad)}.btn.danger.solid{background:var(--bad);color:#fff;border-color:var(--bad)}.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-3)}.btn.sm{border-radius:7px;height:30px;padding:0 10px;font-size:12.5px}.btn.lg{border-radius:11px;height:46px;padding:0 20px;font-size:15px}.btn.icon{width:38px;padding:0}.btn.icon.sm{width:30px}.btn:disabled,.btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn.block{width:100%}@media (pointer:coarse){.btn{height:44px}.btn.sm{height:36px}.btn.icon{width:44px}.nav-link{padding:11px 10px}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.label{color:var(--text-2);font-size:12.5px;font-weight:600}.field .hint{color:var(--text-3);font-size:12px}.input,.select,.textarea{border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;width:100%;height:38px;padding:0 11px;transition:border-color .12s,box-shadow .12s}.textarea{resize:vertical;height:auto;min-height:84px;padding:9px 11px;line-height:1.45}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus);outline:none}.input.lg{height:46px;font-size:16px}@media (pointer:coarse){.input,.select{height:44px;font-size:16px}}.input-icon{position:relative}.input-icon>svg{width:16px;height:16px;color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.input-icon>.input{padding-left:34px}.check{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:inline-flex}.check input{width:17px;height:17px;accent-color:var(--accent)}.badge{white-space:nowrap;background:var(--t-slate-bg);height:22px;color:var(--t-slate);border-radius:99px;align-items:center;gap:5px;padding:0 8px;font-size:11.5px;font-weight:650;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.badge.lg{height:28px;padding:0 12px;font-size:13px}.tone-slate{background:var(--t-slate-bg);color:var(--t-slate)}.tone-blue{background:var(--t-blue-bg);color:var(--t-blue)}.tone-violet{background:var(--t-violet-bg);color:var(--t-violet)}.tone-amber{background:var(--t-amber-bg);color:var(--t-amber)}.tone-cyan{background:var(--t-cyan-bg);color:var(--t-cyan)}.tone-teal{background:var(--t-teal-bg);color:var(--t-teal)}.tone-green{background:var(--t-green-bg);color:var(--t-green)}.tone-orange{background:var(--t-orange-bg);color:var(--t-orange)}.tone-emerald{background:var(--t-emerald-bg);color:var(--t-emerald)}.tone-zinc{background:var(--t-zinc-bg);color:var(--t-zinc)}.tone-red{background:var(--t-red-bg);color:var(--t-red)}.brand-chip{align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.brand-chip i{border-radius:2px;width:8px;height:8px;display:inline-block}.tag{background:var(--surface-3);height:20px;color:var(--text-2);border-radius:5px;align-items:center;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.avatar{color:#fff;letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:11.5px;font-weight:700;display:inline-grid}.avatar.sm{width:22px;height:22px;font-size:9.5px}.avatar.lg{width:44px;height:44px;font-size:15px}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table.table{border-collapse:separate;border-spacing:0;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;padding:10px 14px;font-size:11.5px;font-weight:650;position:sticky;top:0}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:11px 14px}.table tr:last-child td{border-bottom:none}.table tbody tr.click{cursor:pointer}.table tbody tr.click:hover td{background:var(--surface-2)}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table.compact td{padding:8px 12px}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}.tab{color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 14px;font-weight:600;display:inline-flex}.tab:hover{color:var(--text)}.tab.active{color:var(--accent-text);border-bottom-color:var(--accent)}.tab .count{background:var(--surface-3);color:var(--text-2);border-radius:99px;padding:0 6px;font-size:11px}.seg{background:var(--surface-3);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:5px 11px;font-size:12.5px;font-weight:600}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.stat{flex-direction:column;gap:6px;padding:16px;display:flex}.stat .label{color:var(--text-2);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.stat .value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:780;line-height:1.1}.stat .delta{font-size:12px;font-weight:650}.stat-icon{border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.stat-icon svg{width:18px;height:18px}.overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#090e1480;place-items:center;padding:20px;animation:.14s fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(560px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;animation:.16s pop;display:flex}.modal.wide{width:min(860px,100%)}.modal.xwide{width:min(1100px,100%)}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.modal-body{padding:20px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 16px 16px;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.drawer-overlay{z-index:100;background:#090e1466;animation:.14s fade;position:fixed;inset:0}.drawer{background:var(--surface);z-index:101;width:min(520px,100%);box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s slide;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.97)translateY(6px)}}@keyframes slide{0%{opacity:0;transform:translate(40px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.spin{animation:.9s linear infinite spin}.pulse{animation:1.6s infinite pulse}.toasts{z-index:200;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{pointer-events:auto;background:var(--text);min-width:280px;max-width:420px;color:var(--surface);box-shadow:var(--shadow-lg);border-radius:11px;align-items:flex-start;gap:10px;padding:12px 14px;font-weight:500;animation:.18s pop;display:flex}.toast svg{flex:none;width:18px;height:18px;margin-top:1px}.toast.good svg{color:#4ade80}.toast.bad{background:var(--bad);color:#fff}@media (width<=640px){.toasts{left:12px;right:12px}.toast{min-width:0;max-width:none}}.empty{text-align:center;color:var(--text-3);flex-direction:column;align-items:center;gap:8px;padding:36px 16px;display:flex}.empty svg{opacity:.5;width:34px;height:34px}.divider{background:var(--border);height:1px;margin:12px 0}.list-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 16px;display:flex}.list-row:last-child{border-bottom:none}a.list-row:hover,.list-row.click:hover{background:var(--surface-2);cursor:pointer}.callout{background:var(--info-soft);color:var(--text);border:1px solid color-mix(in srgb, var(--info) 25%, transparent);border-radius:10px;gap:10px;padding:12px 14px;display:flex}.callout svg{width:18px;height:18px;color:var(--info);flex:none;margin-top:1px}.callout.warn{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.callout.warn svg{color:var(--warn)}.callout.bad{background:var(--bad-soft);border-color:color-mix(in srgb, var(--bad) 30%, transparent)}.callout.bad svg{color:var(--bad)}.callout.good{background:var(--good-soft);border-color:color-mix(in srgb, var(--good) 30%, transparent)}.callout.good svg{color:var(--good)}.kv{grid-template-columns:130px minmax(0,1fr);gap:8px 12px;font-size:13.5px;display:grid}.kv dt{color:var(--text-3);font-weight:500}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:550}.progress{background:var(--surface-3);border-radius:99px;height:6px;overflow:hidden}.progress>i{background:var(--accent);border-radius:99px;height:100%;transition:width .3s;display:block}.link{color:var(--accent-text);font-weight:600}.link:hover{text-decoration:underline}.banner{background:var(--bad);color:#fff;align-items:center;gap:10px;padding:9px 24px;font-size:13px;font-weight:600;display:flex}.banner a{white-space:nowrap;margin-left:auto;text-decoration:underline}.skeleton{background:linear-gradient(90deg, var(--surface-3), var(--surface-2), var(--surface-3));background-size:200% 100%;border-radius:6px;animation:1.4s infinite pulse}.palette{background:var(--surface);width:min(640px,100%);box-shadow:var(--shadow-lg);border-radius:16px;align-self:start;margin-top:10vh;animation:.14s pop;overflow:hidden}.palette-input{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:0 16px;display:flex}.palette-input input{background:0 0;border:none;outline:none;flex:1;height:56px;font-size:16px}.palette-list{max-height:60vh;padding:6px;overflow-y:auto}.palette-group{text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);padding:10px 10px 4px;font-size:11px;font-weight:650}.palette-item{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;display:flex}.palette-item.on{background:var(--accent-soft)}.palette-item svg{width:16px;height:16px;color:var(--text-3);flex:none}@media print{body{background:#fff}.side,.topbar,.no-print,.toasts,.banner{display:none!important}.shell{display:block}.content{max-width:none;padding:0}.card{box-shadow:none;border-color:#ccc}}.span-2{grid-column:span 2}@media (width<=720px){.span-2{grid-column:auto}}.source-strip{align-items:center;gap:8px;padding:6px 24px;font-size:12.5px;font-weight:600;display:flex}.source-strip.live{background:var(--info-soft);color:var(--info);border-bottom:1px solid color-mix(in srgb, var(--info) 25%, transparent)}.source-strip.demo{background:var(--warn-soft);color:var(--t-amber);border-bottom:1px solid color-mix(in srgb, var(--warn) 30%, transparent)}@media (width<=1024px){.source-strip{padding:6px 14px}}.gap-8{gap:8px}.shell.with-ask{grid-template-columns:var(--side-w) minmax(0, 1fr) 400px}@media (width<=1180px){.shell.with-ask{grid-template-columns:var(--side-w) minmax(0, 1fr)}}@media (width<=1024px){.shell.with-ask{grid-template-columns:minmax(0,1fr)}}.ask-btn{cursor:pointer;border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));height:38px;color:var(--accent-text);background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb, #7048e8 10%, var(--surface)));border-radius:10px;align-items:center;gap:7px;padding:0 14px;font-weight:650;display:inline-flex}.ask-btn:hover,.ask-btn.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}.who-btn{cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:6px;display:flex}.who-btn:hover{background:var(--side-2)}.who-menu{background:var(--side-2);border:1px solid #243140;border-radius:10px;flex-direction:column;gap:2px;margin-bottom:8px;padding:6px;display:flex}.who-item{color:var(--side-text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.who-item:hover,.who-item.on{color:#fff;background:#22303f}.chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;height:32px;color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:550;display:inline-flex}.chip:hover{border-color:var(--border-strong)}.chip.on{background:var(--text);color:var(--surface);border-color:var(--text)}.chip.on .faint{color:inherit;opacity:.7}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--bad) 45%, transparent)}50%{box-shadow:0 0 0 6px #0000}}@media (prefers-reduced-motion:reduce){.ask-mic.rec,.ask-fab.rec,.rec-dot{animation:none}}.source-strip.real{background:var(--bad);color:#fff}
