:root,[data-theme=light]{color-scheme:light;--grad: linear-gradient(90deg, #8E53FC 0%, #C672A6 50%, #FE904F 100%);--grad-soft: linear-gradient(90deg, rgba(142,83,252,.1), rgba(198,114,166,.08), rgba(254,144,79,.1));--brand: #8E53FC;--brand-ink: #6d31da;--brand-soft: #f3efff;--brand-line: #e2d9ff;--accent: #ffa671;--bg: #fffbf2;--surface: #ffffff;--surface-2: #fbf8f1;--line: #efe9dc;--line-strong: #e0d8c8;--ink: #1e2634;--ink-2: #4d5566;--ink-3: #868c99;--ok: #0f8a5f;--ok-soft: #e4f7e8;--warn: #b26a00;--warn-soft: #fff1dc;--bad: #c33c3c;--bad-soft: #fdeceb;--series-1: #7A3FE0;--series-2: #E07A2B;--comp-1: #1B9E8F;--comp-2: #2F6FD6;--comp-3: #C2408A;--comp-4: #7D8B1E;--comp-5: #8C6D46;--comp-6: #5B6B8C;--grid: #efe9dc;--overlay: rgba(30,38,52,.52);--toast-bg: #1e2634;--shadow: 0 1px 2px rgba(30,38,52,.04), 0 8px 24px -12px rgba(30,38,52,.16);--shadow-lg: 0 24px 60px -24px rgba(30,38,52,.35);--auth-bg: radial-gradient(1000px 600px at 15% -10%, #efe7ff 0%, transparent 60%), radial-gradient(900px 500px at 100% 0%, #ffe9d8 0%, transparent 55%);--skeleton: linear-gradient(90deg,#f3eee3,#faf7f0,#f3eee3);--r-sm: 8px;--r: 12px;--r-lg: 18px;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif}[data-theme=dark]{color-scheme:dark;--brand: #a47dff;--brand-ink: #c4a9ff;--brand-soft: rgba(142,83,252,.16);--brand-line: rgba(164,125,255,.35);--grad-soft: linear-gradient(90deg, rgba(142,83,252,.18), rgba(198,114,166,.12), rgba(254,144,79,.14));--bg: #0e111b;--surface: #171b2a;--surface-2: #1d2234;--line: #262c40;--line-strong: #343b54;--ink: #eef0f7;--ink-2: #b6bbcd;--ink-3: #838aa2;--ok: #5fd39a;--ok-soft: rgba(95,211,154,.13);--warn: #f0b35a;--warn-soft: rgba(240,179,90,.13);--bad: #ff7a7a;--bad-soft: rgba(255,122,122,.13);--series-1: #9A6BF5;--series-2: #CF7236;--comp-1: #3CC2B1;--comp-2: #5B93F0;--comp-3: #E06AAE;--comp-4: #AAB843;--comp-5: #C49A6C;--comp-6: #8D9BBC;--grid: #262c40;--overlay: rgba(4,6,12,.66);--toast-bg: #2a3148;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 8px 24px -12px rgba(0,0,0,.6);--shadow-lg: 0 24px 60px -20px rgba(0,0,0,.75);--auth-bg: radial-gradient(1000px 600px at 15% -10%, rgba(142,83,252,.22) 0%, transparent 60%), radial-gradient(900px 500px at 100% 0%, rgba(254,144,79,.14) 0%, transparent 55%);--skeleton: linear-gradient(90deg,#1d2234,#252b40,#1d2234)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}a{color:var(--brand-ink);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;letter-spacing:-.02em;font-weight:650}h1{font-size:24px}h2{font-size:18px}h3{font-size:15px}p{margin:0 0 12px;color:var(--ink-2)}code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.app{--side-w: 248px;display:grid;grid-template-columns:var(--side-w) 1fr;min-height:100%;transition:grid-template-columns .18s ease}.app.side-collapsed{--side-w: 68px}.sidebar{background:var(--surface);border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px}.brand-mark{width:32px;height:32px;border-radius:10px;background:var(--grad);display:grid;place-items:center;color:#fff;flex:none}.brand-name{font-weight:650;letter-spacing:-.02em;font-size:15px}.brand-sub{font-size:12px;font-weight:600;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-top:-2px}.brand-sub .brand-by{display:block;font-size:11px;font-weight:500;-webkit-text-fill-color:var(--ink-3);color:var(--ink-3)}.nav-group{margin-top:14px;padding:4px 8px 6px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:6px;width:100%;background:none;border:0;font-family:inherit;cursor:pointer;text-align:left;border-radius:6px}.nav-group:hover{color:var(--ink)}.nav-group>span:first-child{flex:1}.nav-group-chev{transition:transform .15s ease;opacity:.7}.nav-group.shut .nav-group-chev{transform:rotate(-90deg)}.nav-group .count{background:var(--grad);color:#fff;font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:99px;letter-spacing:0}.side-collapsed .nav-group .nav-group-chev,.side-collapsed .nav-group .count{display:none}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);color:var(--ink-2);font-weight:500;cursor:pointer}.nav-item:hover{background:var(--surface-2);text-decoration:none;color:var(--ink)}.nav-item.active{background:var(--brand-soft);color:var(--brand-ink);font-weight:600}.nav-item.soon{opacity:.55;cursor:default}.nav-item.soon:hover{background:transparent;color:var(--ink-2)}.nav-item svg{flex:none;opacity:.85}.nav-item .count{margin-left:auto;background:var(--grad);color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:99px}.nav-item .tag{margin-left:auto;font-size:10.5px;font-weight:600;color:var(--ink-3);border:1px solid var(--line-strong);padding:0 6px;border-radius:99px}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 28px;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:20}.page{padding:26px 28px 60px;max-width:1280px;width:100%}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-head .sub{color:var(--ink-3);margin-top:4px}.btn.burger{display:none}.demo-banner{background:var(--grad-soft);border-bottom:1px solid var(--line);padding:7px 28px;font-size:12.5px;color:var(--ink-2)}.demo-banner b{color:var(--brand-ink)}.side-toggle{border:0;background:none;width:100%;font:inherit;text-align:left}.side-user{display:flex;align-items:center;gap:10px;padding:12px 6px 0;border-top:1px solid var(--line);margin-top:6px;min-width:0}.side-user-text{min-width:0}.side-avatar{width:30px;height:30px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-ink);font-weight:650;font-size:13px}.side-collapsed .sidebar{padding:20px 10px;overflow-x:hidden}.side-collapsed .brand{padding:4px 8px 20px 6px}.side-collapsed .brand-text,.side-collapsed .nav-label,.side-collapsed .nav-item .tag,.side-collapsed .side-user-text{display:none}.side-collapsed .nav-group{font-size:0;padding:0;margin:12px 8px 8px;border-top:1px solid var(--line)}.side-collapsed .nav-item{justify-content:center;padding:9px 0;position:relative}.side-collapsed .nav-item .count{position:absolute;top:2px;right:6px;margin:0;padding:0 5px;font-size:10px;line-height:16px;min-width:16px;text-align:center}.side-collapsed .side-user{justify-content:center;padding:12px 0 0}.side-collapsed .side-toggle svg{transform:scaleX(-1)}@media (prefers-reduced-motion: reduce){.app{transition:none}}@media (max-width: 860px){.app,.app.side-collapsed{grid-template-columns:1fr;--side-w: 0px}.side-collapsed .sidebar{padding:20px 14px}.side-collapsed .brand-text,.side-collapsed .nav-label,.side-collapsed .side-user-text{display:block}.side-collapsed .nav-item .tag{display:inline}.side-collapsed .nav-group{font-size:11px;padding:0 8px 6px;margin:14px 0 0;border-top:0}.side-collapsed .nav-item{justify-content:flex-start;padding:8px 10px}.side-collapsed .nav-item .count{position:static;margin-left:auto}.side-toggle{display:none}.sidebar{position:fixed;left:0;top:0;bottom:0;width:272px;z-index:90;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-lg)}.sidebar.open{transform:none}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:80}.btn.burger{display:inline-flex}.topbar{padding:12px 16px}.page{padding:20px 16px 48px}.demo-banner{padding:7px 16px}.hide-sm{display:none!important}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.card-pad{padding:20px}.card-head{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card-foot{padding:12px 20px;border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--r-lg) var(--r-lg);flex-wrap:wrap}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}@media (max-width: 1080px){.g4,.g3{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:1fr}}@media (max-width: 640px){.g2,.g3{grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}.row{display:flex;align-items:center;gap:10px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.wrap{flex-wrap:wrap}.spacer{flex:1}.stack{display:flex;flex-direction:column;gap:14px}.btn{font:inherit;font-weight:600;border:1px solid transparent;border-radius:var(--r);padding:9px 15px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;background:var(--surface);color:var(--ink);white-space:nowrap;transition:.12s ease}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--grad);color:#fff;border:0}.btn.primary:hover{filter:brightness(1.06)}.btn.outline{border-color:var(--line-strong)}.btn.ghost{background:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--surface-2);color:var(--ink)}.btn.approve{background:var(--ok-soft);color:var(--ok)}.btn.approve:hover{filter:brightness(.97);background:var(--ok-soft)}.btn.danger{background:var(--bad-soft);color:var(--bad)}.btn.sm{padding:6px 11px;font-size:13px;border-radius:var(--r-sm)}.btn.icon{padding:7px;border-radius:var(--r-sm)}.theme-toggle{position:relative;width:36px;height:36px;padding:0;justify-content:center;border:1px solid var(--line-strong);border-radius:99px}.theme-toggle svg{transition:transform .35s ease}.theme-toggle:hover svg{transform:rotate(-20deg)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field>label{font-weight:600;font-size:13px;color:var(--ink)}.field .hint{font-size:12px;color:var(--ink-3)}input[type=text],input[type=email],input[type=password],input[type=url],input[type=tel],input[type=number],input[type=time],input[type=date],input[type=search],select,textarea{font:inherit;width:100%;padding:9px 12px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface);color:var(--ink)}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #8e53fc2e}.check{display:flex;align-items:flex-start;gap:9px;cursor:pointer;padding:4px 0}.check input{width:17px;height:17px;accent-color:var(--brand);margin-top:2px}.switch{position:relative;width:38px;height:22px;flex:none;cursor:pointer}.switch input{opacity:0;width:0;height:0;position:absolute}.switch i{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:99px;background:var(--line-strong);transition:.15s}.switch i:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:99px;background:#fff;transition:.15s;box-shadow:0 1px 2px #0003}.switch input:checked+i{background:var(--grad)}.switch input:checked+i:after{transform:translate(16px)}.switch input:focus-visible+i{box-shadow:0 0 0 3px #8e53fc4d}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:13.5px}table.data th{text-align:left;font-weight:600;color:var(--ink-3);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap}table.data td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}table.data tr:last-child td{border-bottom:0}table.data tbody tr:hover{background:var(--surface-2)}table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.badge.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}.badge.bad{background:var(--bad-soft);color:var(--bad);border-color:transparent}.badge.brand{background:var(--brand-soft);color:var(--brand-ink);border-color:transparent}.dot{width:7px;height:7px;border-radius:99px;background:currentColor;flex:none}.stat{padding:18px 20px}.stat .label{font-size:12px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.stat .value{font-size:28px;font-weight:680;letter-spacing:-.03em;margin-top:6px;font-variant-numeric:tabular-nums}.stat .meta{font-size:12.5px;color:var(--ink-3);margin-top:4px}.delta-up{color:var(--ok);font-weight:600}.delta-down{color:var(--bad);font-weight:600}.hero{position:relative;overflow:hidden;padding:24px 26px}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--grad-soft);pointer-events:none}.hero>*{position:relative}.hero h1{font-size:26px}.hero .grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.rec{display:flex;gap:14px;padding:16px 20px;border-bottom:1px solid var(--line);cursor:pointer}.rec:last-child{border-bottom:0}.rec:hover{background:var(--surface-2)}.rec .avatar{flex:none}.rec-title{font-weight:600;color:var(--ink);line-height:1.35}.rec-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px;font-size:12.5px;color:var(--ink-3)}.rec-actions{display:flex;gap:6px;flex:none;align-items:flex-start}@media (max-width: 640px){.rec{flex-wrap:wrap}.rec-actions{width:100%;padding-left:50px}}.avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;font-weight:700;font-size:14px}.avatar.lg{width:48px;height:48px;border-radius:14px;font-size:18px}.avatar.type{background:var(--brand-soft);color:var(--brand-ink);flex:none}.prio{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:12px}.prio.critical{color:var(--bad)}.prio.high{color:var(--warn)}.prio.normal{color:var(--ink-3)}.impact{font-weight:650;font-variant-numeric:tabular-nums;color:var(--ok)}.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{font:inherit;font-size:13px;font-weight:600;padding:6px 12px;border-radius:99px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);cursor:pointer}.chip:hover{color:var(--ink)}.chip.on{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand-line)}.chip .n{opacity:.7;margin-left:4px}.comp-toggles{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.comp-toggles .chip{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:12.5px;padding:4px 10px}.comp-toggles .chip .swatch{width:14px;height:3px;border-radius:2px;opacity:.35}.comp-toggles .chip.on .swatch{opacity:1}.drawer-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;justify-content:flex-end;background:var(--overlay)}.drawer{width:100%;max-width:560px;height:100%;background:var(--surface);overflow-y:auto;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slide .18s ease}@keyframes slide{0%{transform:translate(30px);opacity:.6}}.drawer-head{padding:20px 22px;border-bottom:1px solid var(--line)}.drawer-body{padding:20px 22px;flex:1}.drawer-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;position:sticky;bottom:0;background:var(--surface);flex-wrap:wrap}.section-label{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:20px 0 8px}.callout{border:1px solid var(--brand-line);background:var(--brand-soft);border-radius:var(--r);padding:12px 14px;color:var(--ink)}.wa{background:#e9dfd4;border-radius:var(--r);padding:16px}[data-theme=dark] .wa{background:#0b141a}.wa-bubble{background:#fff;border-radius:10px 10px 10px 2px;padding:10px 12px;max-width:340px;box-shadow:0 1px 1px #0000001f;font-size:13.5px;color:#111b21;white-space:pre-line}[data-theme=dark] .wa-bubble{background:#202c33;color:#e9edef}.wa-btns{max-width:340px;display:grid;gap:4px;margin-top:4px}.wa-btn{background:#fff;border-radius:8px;text-align:center;padding:8px;color:#027eb5;font-weight:600;font-size:13.5px;box-shadow:0 1px 1px #0000001f}[data-theme=dark] .wa-btn{background:#202c33;color:#53bdeb}.wa-time{font-size:11px;color:#667781;text-align:right;margin-top:4px}.trace{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--r);font-size:12.5px;background:var(--surface)}.trace li{padding:9px 12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.trace li:last-child{border-bottom:0}.trace-head{display:flex;justify-content:space-between;gap:10px;color:var(--ink)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:grid;place-items:center;padding:24px;z-index:110}.overlay.above-dock{z-index:140}.modal{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:88vh;overflow:auto;border:1px solid var(--line)}.modal-head{padding:20px 22px 0}.modal-body{padding:18px 22px}.modal-foot{padding:14px 22px 20px;display:flex;justify-content:flex-end;gap:10px}.empty{text-align:center;padding:48px 24px;color:var(--ink-3)}.empty .bar{width:52px;height:5px;border-radius:99px;background:var(--grad);margin:0 auto 18px}.skeleton{background:var(--skeleton);background-size:200% 100%;animation:sh 1.2s infinite;border-radius:var(--r)}@keyframes sh{to{background-position:-200% 0}}.toast-wrap{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:10px;z-index:200}.toast{background:var(--toast-bg);color:#fff;padding:12px 16px;border-radius:var(--r);box-shadow:var(--shadow-lg);font-weight:500;max-width:380px}.toast.bad{background:#c33c3c}.toast.ok{background:#0f8a5f}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px;overflow-x:auto}.tab{padding:9px 14px;border-radius:var(--r-sm) var(--r-sm) 0 0;cursor:pointer;white-space:nowrap;font-weight:600;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px}.tab:hover{color:var(--ink)}.tab.active{color:var(--brand-ink);border-bottom-color:var(--brand)}.chart-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-2)}.chart-legend .key{display:inline-flex;align-items:center;gap:6px}.chart-legend .swatch{width:14px;height:3px;border-radius:2px}.chart-legend .swatch.dash{background:none!important;border-top:2px dashed;height:0}.chart-tip{position:absolute;pointer-events:none;background:var(--toast-bg);color:#fff;padding:8px 10px;border-radius:var(--r-sm);font-size:12px;white-space:nowrap;box-shadow:var(--shadow-lg);z-index:5;transform:translate(-50%,calc(-100% - 10px))}.chart-tip .k{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}.agent-card{padding:18px 20px;display:flex;flex-direction:column;gap:12px}.agent-card.off{opacity:.6}.agent-card .badge{white-space:normal}.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13px}.kv dt{color:var(--ink-3)}.kv dd{margin:0;color:var(--ink);font-weight:500}.rule-list{border:1px solid var(--line);border-radius:var(--r)}.rule{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-bottom:1px solid var(--line)}.rule:last-child{border-bottom:0}.rule .badge{white-space:normal;text-align:right}.chat{display:flex;flex-direction:column;height:calc(100dvh - 230px);min-height:420px;overflow:hidden}.chat-log{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.chat-older{align-self:center;display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:500;color:var(--brand-ink);background:none;border:0;padding:4px 8px;border-radius:99px;cursor:pointer}.chat-older:hover{background:var(--brand-soft)}.chat-older svg.up{transform:rotate(180deg)}.chat-older-hint{text-align:center;margin:4px 0 0}.chat-empty{margin:auto;text-align:center;max-width:560px;display:flex;flex-direction:column;align-items:center}.chat-empty .filters{justify-content:center;margin-top:6px}.chat .chip{text-align:left}.msg{display:flex;gap:10px;max-width:min(760px,100%)}.msg.user{align-self:flex-end;flex-direction:column;align-items:flex-end;gap:4px}.msg-ctx{font-size:11.5px;color:var(--ink-3)}.dock-ctx{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 6px 4px 12px;border-radius:99px;font-size:12.5px;color:var(--brand-ink);background:var(--brand-soft);border:1px solid var(--brand-line);box-shadow:var(--shadow)}.dock-ctx span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-ctx button{flex:none;width:22px;height:22px;border-radius:99px;border:0;background:transparent;color:inherit;cursor:pointer;display:grid;place-items:center}.dock-ctx button:hover{background:var(--brand-line)}.bubble{padding:10px 14px;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:4px 14px 14px}.msg.user .bubble{background:var(--brand-soft);border-color:var(--brand-line);border-radius:14px 4px 14px 14px}.bubble.error{background:var(--warn-soft);border-color:transparent}.msg .trace{margin-top:6px}.answer-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.trace-toggle{font:inherit;font-size:12.5px;font-weight:500;color:var(--brand-ink);background:none;border:0;padding:0;margin-top:6px;cursor:pointer;display:inline-flex;gap:5px;align-items:center;text-align:left}.chat-suggest{padding:10px 16px;border-top:1px solid var(--line);overflow-x:auto}.chat-suggest .filters{flex-wrap:nowrap}.chat-suggest .chip{white-space:nowrap}.chat-input{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}@media (max-width: 860px){.chat{height:calc(100dvh - 190px);min-height:380px}.chat-log{padding:14px}}.flow{margin-top:16px}.flow-track{list-style:none;margin:0;padding:3px;display:flex;flex-wrap:wrap;row-gap:10px}.flow-track li{display:flex;align-items:center;flex:1 1 0;min-width:128px;max-width:210px}.flow-track li+li:before{content:"›";color:var(--ink-3);font-size:20px;line-height:1;padding:0 5px;flex:none}.fnode{font:inherit;text-align:left;width:100%;height:100%;min-height:78px;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:10px 12px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r)}.fnode:hover{border-color:var(--line-strong)}.fnode.on{border-color:var(--brand);box-shadow:0 0 0 3px #8e53fc33}.fnode .tag{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.fnode .t{font-weight:600;font-size:13px;line-height:1.3}.fnode .sub{font-size:11.5px;color:var(--ink-3);overflow-wrap:anywhere}.fnode.trigger{background:var(--brand-soft);border-color:var(--brand-line)}.fnode.trigger .tag{color:var(--brand-ink)}.fnode.output{background:var(--surface);border-color:var(--line-strong)}.fnode.gate.auto{background:var(--ok-soft);border-color:transparent}.fnode.gate.auto .tag{color:var(--ok)}.fnode.gate.approval{background:var(--warn-soft);border:2px dashed var(--warn);border-radius:99px;padding:10px 18px}.fnode.gate.approval .tag{color:var(--warn)}.flow-detail{margin-top:10px;padding:10px 12px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}.flow-meta{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.flow-card.off .flow-track,.flow-card.off .flow-meta{opacity:.6}.thr{display:flex;flex-direction:column;gap:4px}.thr input[type=number]{width:90px}.thr input[type=time],.thr select{width:130px}@media (max-width: 640px){.flow-track{flex-direction:column;flex-wrap:nowrap;row-gap:0}.flow-track li{flex-direction:column;align-items:stretch;max-width:none;min-width:0;flex:none}.flow-track li+li:before{transform:rotate(90deg);text-align:center;padding:2px 0}.fnode{min-height:0}}.th-sort{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;white-space:nowrap}.th-sort:hover{color:var(--ink)}.step-edit{display:grid;grid-template-columns:auto minmax(0,1.2fr) minmax(0,1fr) auto;gap:8px}.override-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px}.override-row select{min-width:0!important}@media (max-width: 640px){.step-edit,.override-row{grid-template-columns:1fr}}table.data tr.clickable{cursor:pointer}table.data tr.sel td{background:var(--brand-soft)}.num-input{width:76px!important;text-align:right;padding:6px 8px!important}.trace .trace-model{color:var(--ink-3);background:var(--surface-2)}.timeline{position:relative}.tl-item{display:flex;gap:14px;padding:12px 20px;border-bottom:1px solid var(--line)}.tl-item:last-child{border-bottom:0}.tl-icon{width:30px;height:30px;border-radius:99px;display:grid;place-items:center;flex:none}.muted{color:var(--ink-3)}.small{font-size:12.5px}.strong{font-weight:600}.nowrap{white-space:nowrap}.right{text-align:right}.mt0{margin-top:0}.mb0{margin-bottom:0}.mt8{margin-top:8px}.mt16{margin-top:16px}.mt24{margin-top:24px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--auth-bg),var(--bg);position:relative}.auth .card{width:100%;max-width:420px;padding:34px}.auth .corner{position:absolute;top:16px;right:16px}.notice-page{align-items:flex-start}.notice-page .card{max-width:560px}.notice-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--brand-soft);color:var(--brand-ink)}.notice-list{display:flex;flex-direction:column;gap:8px}.notice-item{padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2)}.notice-item .mt4{margin-top:4px}.callout.ok{background:var(--ok-soft);border-color:transparent;color:var(--ink)}@media (max-width: 480px){.auth .card{padding:26px 22px}}:root,[data-theme=light]{--dock-bg: rgba(30,38,52,.82);--dock-ink: #ffffff;--dock-muted: rgba(255,255,255,.62);--dock-btn: rgba(255,255,255,.16)}[data-theme=dark]{--dock-bg: rgba(52,59,84,.88);--dock-ink: #eef0f7;--dock-muted: rgba(238,240,247,.6);--dock-btn: rgba(255,255,255,.12)}.page{padding-bottom:120px}.dock{position:fixed;z-index:60;bottom:20px;left:calc(var(--side-w, 248px) + (100vw - var(--side-w, 248px)) / 2);transform:translate(-50%);width:min(560px,calc(100vw - var(--side-w, 248px) - 48px));display:flex;flex-direction:column;gap:10px;pointer-events:none}.dock>*{pointer-events:auto}.dock-bar{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 20px;border-radius:99px;background:var(--dock-bg);color:var(--dock-ink);box-shadow:0 12px 36px -12px #00000073;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid rgba(255,255,255,.08);transition:box-shadow .15s ease}.dock-bar:focus-within{box-shadow:0 12px 36px -12px #00000073,0 0 0 3px #8e53fc59}.dock-bar input{flex:1;min-width:0;border:0;background:transparent;color:var(--dock-ink);font:inherit;font-size:15px;padding:8px 0;outline:none;box-shadow:none}.dock-bar input::placeholder{color:var(--dock-muted)}.dock-bar input:focus{box-shadow:none}.dock-btn{width:36px;height:36px;border-radius:99px;border:0;flex:none;cursor:pointer;display:grid;place-items:center;background:var(--dock-btn);color:var(--dock-ink);transition:.15s ease}.dock-btn:hover{background:#ffffff42}.dock-btn.live{background:#c33c3c;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 6px #c33c3c40}}.dock-btn.send:not(:disabled){background:var(--grad);color:#fff}.dock-btn:disabled{opacity:.55;cursor:default}.dock-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;height:min(60vh,560px);animation:dock-in .18s ease}@keyframes dock-in{0%{transform:translateY(10px);opacity:0}}.dock-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 8px 16px;border-bottom:1px solid var(--line)}.chat.docked{flex:1;height:auto;min-height:0}.chat.docked .chat-log{padding:14px}.chat.docked .msg{max-width:100%}@media (max-width: 860px){.dock{left:50%;width:calc(100vw - 32px);bottom:calc(12px + env(safe-area-inset-bottom))}.dock-panel{height:min(68vh,560px)}}.bubble.rich{white-space:normal}.bubble.rich p{margin:0 0 6px;color:var(--ink)}.bubble.rich p:last-child{margin-bottom:0}.bubble.rich ul{margin:4px 0 6px;padding-left:18px}.bubble.rich li{margin:2px 0;color:var(--ink-2)}.chat-table{margin:6px 0 8px}.chat-table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.chat-table table{border-collapse:collapse;width:100%;font-size:12.5px;font-variant-numeric:tabular-nums}.chat-table th,.chat-table td{padding:5px 9px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--line)}.chat-table th{font-weight:600;color:var(--ink-2);background:var(--surface-2)}.chat-table tr:last-child td{border-bottom:0}.chat-table .num{text-align:right}.chat-table-copy{margin-top:4px;background:none;border:0;padding:0;font-size:12px;color:var(--ink-2);text-decoration:underline;cursor:pointer}.rates-wrap{overflow-x:auto;margin:0 -20px;padding:0 20px}.rates-table{font-size:13px}.rates-table th,.rates-table td{padding:8px 10px}.rates-table .rates-hotel{position:sticky;left:0;background:var(--surface);min-width:170px;max-width:200px;white-space:normal;line-height:1.3;z-index:1}.rates-table thead .rates-hotel,.rates-table tbody tr:hover .rates-hotel{background:var(--surface-2)}.rates-own td,.rates-table tbody tr.rates-own:hover .rates-hotel,.rates-own .rates-hotel{background:var(--brand-soft)}.rate-cell{font:inherit;font-variant-numeric:tabular-nums;background:none;border:0;padding:2px 4px;border-radius:6px;color:var(--ink);cursor:help;border-bottom:1px dotted var(--line-strong)}.rate-cell:hover,.rate-cell:focus-visible{background:var(--surface-2);outline:none;box-shadow:0 0 0 2px var(--brand-line)}.rate-tip{position:fixed;z-index:120;transform:translate(-50%,calc(-100% - 8px));pointer-events:none;background:var(--toast-bg);color:#fff;border-radius:var(--r-sm);padding:10px 12px;font-size:12px;width:270px;box-shadow:var(--shadow-lg);line-height:1.45}.rate-tip-price{font-size:15px;font-weight:700;margin:4px 0 6px}.rate-tip-price span{font-size:11px;font-weight:500;opacity:.75}.rate-tip dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:0}.rate-tip dt{opacity:.7}.rate-tip dd{margin:0}.seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:99px;padding:2px}.seg button{font:inherit;font-size:12.5px;font-weight:600;border:0;background:none;color:var(--ink-3);padding:4px 10px;border-radius:99px;cursor:pointer}.seg button.on{background:var(--brand-soft);color:var(--brand-ink)}.brief{padding-top:4px}.brief-head{font-size:17px;font-weight:600;line-height:1.4;margin:0 0 12px;color:var(--ink)}.brief-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:12px}.brief-list li{display:grid;grid-template-columns:10px 1fr;gap:10px;line-height:1.5}.brief-dot{width:8px;height:8px;border-radius:50%;margin-top:7px}.brief-sug{color:var(--brand-ink);margin-top:4px}.week-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px 14px;margin-bottom:14px;background:var(--surface-2);border-radius:12px}.week-figs>div>span{display:block;font-size:11.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}.week-figs strong{font-size:18px;font-variant-numeric:tabular-nums}.week-figs em{font-style:normal;font-size:12px;margin-left:6px}.week-next{grid-column:1 / -1}.week-next>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.week-chip{font-size:13px;padding:4px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}.week-chip strong{font-size:13px}.week-note{grid-column:1 / -1}@media (max-width: 640px){.week-figs{grid-template-columns:repeat(2,minmax(0,1fr))}}.brief-folded{border-bottom:0}.brief-peek{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70ch}.fold-icon{transition:transform .15s ease;transform:rotate(180deg)}.fold-icon.is-folded{transform:none}@media (prefers-reduced-motion: reduce){.fold-icon{transition:none}}.op-kv{margin:0}.op-kv dd{font-variant-numeric:tabular-nums}.season-table select,.season-table input{min-width:0}.season-table td{vertical-align:middle}.season-card.is-active{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset}.season-card .section-label{margin-top:18px}.hour-chips{display:flex;flex-wrap:wrap;gap:6px}.hour-chips .chip{font-variant-numeric:tabular-nums}.season-credits{margin-top:16px;padding:12px 14px;border-radius:12px;background:var(--surface-2)}.day-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.day-chips .chip.day{min-width:34px;justify-content:center;padding-inline:0}.day-presets{display:inline-flex;gap:10px;margin-left:6px}.link-btn{background:none;border:0;padding:0;font:inherit;font-size:12.5px;color:var(--brand-ink);cursor:pointer}.link-btn:hover{text-decoration:underline}.ai-note{margin:0;font-size:11.5px;color:var(--ink-3);text-align:center}.dock-note{align-self:center;margin-top:-4px;padding:2px 10px;border-radius:99px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}.chat-note{padding:0 16px 10px}.fwd-hot{color:var(--warn)}.fwd-legend{gap:14px;margin-bottom:6px;align-items:center}.fwd-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.fwd-actions{border-top:1px solid var(--line)}.fwd-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:8px}.fwd-action{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2)}.fwd-action.warn{background:var(--warn-soft);border-color:transparent}.fwd-action.bad{background:var(--bad-soft);border-color:transparent}.fwd-action.brand{background:var(--brand-soft);border-color:transparent}.fwd-action-icon{font-size:18px;line-height:1.2}.fwd-when{font-weight:600;color:var(--ink-2);margin-left:4px;white-space:nowrap}.fwd-signals{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;border-top:1px solid var(--line)}.fwd-signals ul{margin:6px 0 0;padding-left:18px;font-size:13px;line-height:1.6}.rep-scale{font-size:15px;font-weight:560;color:var(--ink-3);letter-spacing:0}.pace-bar select{width:auto;min-width:0;font:inherit;font-size:13px;padding:6px 10px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.pace-quick{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:auto}.pace-kpi{text-align:right;white-space:nowrap}@media (max-width: 720px){.pace-quick{margin-left:0}}.pace-lbl{min-width:118px}.pace-bar .chip:disabled{opacity:.4;cursor:default}.fd-day{font-size:17px;margin:0}.fd-day .cap{text-transform:capitalize}.fd-date{width:auto;font:inherit;font-size:13px;padding:5px 8px}.fd-table{font-size:12px}table.data.fd-table td,table.data.fd-table th{padding:8px 4px}table.data.fd-table th{font-size:10.5px;letter-spacing:.02em;white-space:nowrap}table.data.fd-table td:first-child,table.data.fd-table th:first-child{padding-left:14px}table.data.fd-table td:last-child,table.data.fd-table th:last-child{padding-right:10px}.fd-table .badge{font-size:10.5px;padding:2px 7px}.fd-name{min-width:92px;line-height:1.25}.fd-table tr.clickable{cursor:pointer}.fd-table tr.clickable:hover td,.fd-table tr.clickable:focus-visible td{background:var(--brand-soft)}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px}@media (max-width: 1280px){.fd-grid{grid-template-columns:1fr}}.msg-item{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.conv-grid{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:16px;align-items:start}@media (max-width: 860px){.conv-grid{grid-template-columns:1fr}}.conv-list{overflow:hidden}.conv-item{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:0;border-top:1px solid var(--line);padding:12px 16px;cursor:pointer}.conv-item:hover{background:var(--surface-2, var(--brand-soft))}.conv-item.on{background:var(--brand-soft)}.conv-preview{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.conv-thread{gap:12px}.conv-bubble{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);max-width:640px}.fd-tabs{margin-bottom:14px}.fd-tabs button{padding:7px 16px;font-size:13px}.fd-search{max-width:280px}.fd-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.fd-pill{display:inline-flex;align-items:baseline;gap:6px;padding:6px 11px;border-radius:10px;border:1px solid var(--line-strong);background:var(--surface-2, transparent);font-size:12.5px;color:var(--ink-2)}.fd-pill strong{font-size:15px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.fd-pill.ok{background:var(--ok-soft);border-color:transparent}.fd-pill.ok strong{color:var(--ok)}.fd-pill.warn{background:var(--warn-soft);border-color:transparent}.fd-pill.warn strong{color:var(--warn)}.fd-pill.bad{background:var(--bad-soft);border-color:transparent}.fd-pill.bad strong{color:var(--bad)}.mk-bars{display:grid;gap:6px;margin-top:12px}.mk-bar{display:grid;grid-template-columns:minmax(90px,38%) 1fr auto;align-items:center;gap:10px;width:100%;font:inherit;font-size:12.5px;color:inherit;background:none;border:1px solid transparent;border-radius:8px;padding:4px 6px;cursor:pointer;text-align:left}.mk-bar:hover{background:var(--surface-2, var(--brand-soft))}.mk-bar.on{background:var(--brand-soft);border-color:var(--brand-line)}.mk-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.mk-track{height:8px;border-radius:99px;background:var(--grid);overflow:hidden}.mk-fill{display:block;height:100%;border-radius:99px;background:var(--series-1)}.mk-num{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}@media (max-width: 1200px){.mk-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 720px){.mk-grid{grid-template-columns:1fr}}.nav-item.locked{cursor:default}.gate-card{max-width:560px;margin:40px auto;text-align:center;display:grid;justify-items:center;gap:10px}.gate-card h2{margin:6px 0 0}.plan-chip{font-size:11.5px;padding:3px 9px}.drawer-wrap.stacked{z-index:110;background:transparent}.drawer-wrap.stacked .drawer{box-shadow:-18px 0 40px #00000059}.drawer table.data tr.clickable{cursor:pointer}.drawer table.data tr.clickable:hover td{background:var(--brand-soft)}body.drawer-open .dock{z-index:120;left:calc(var(--side-w, 248px) + (100vw - var(--side-w, 248px) - 560px) / 2);width:min(560px,calc(100vw - var(--side-w, 248px) - 560px - 40px))}@media (max-width: 1180px){body.drawer-open .dock{left:calc(var(--side-w, 248px) + 16px);transform:none;width:min(420px,calc(100vw - var(--side-w, 248px) - 32px))}}@media (max-width: 860px){body.drawer-open .dock{left:50%;transform:translate(-50%);width:calc(100vw - 32px)}}.hk-toolbar select{width:auto;font-size:13px;padding:6px 10px}.hk-legend{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto;align-items:center}.hk-legend span{display:inline-flex;align-items:center;gap:5px}.hk-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.hk-dot.dirty,.hk-tile.dirty{--hk: var(--bad);--hk-soft: var(--bad-soft)}.hk-dot.clean,.hk-tile.clean{--hk: var(--ok);--hk-soft: var(--ok-soft)}.hk-dot.inspected,.hk-tile.inspected{--hk: var(--brand-ink);--hk-soft: var(--brand-soft)}.hk-dot.out_of_order,.hk-tile.out_of_order{--hk: var(--ink-3);--hk-soft: var(--surface-2, rgba(127,127,127,.12))}.hk-dot{background:var(--hk)}.hk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.hk-tile{position:relative;display:grid;gap:2px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:var(--hk-soft);border:1px solid transparent;border-left:4px solid var(--hk);border-radius:10px;padding:8px 9px 7px;min-height:76px}.hk-tile:hover{border-color:var(--line-strong);border-left-color:var(--hk)}.hk-tile:focus-visible{outline:2px solid var(--brand-ink);outline-offset:2px}.hk-tile.out_of_order{background-image:repeating-linear-gradient(135deg,transparent 0 6px,rgba(127,127,127,.12) 6px 12px)}.hk-num{font-weight:750;font-size:15px;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:4px}.hk-st{font-size:11px;font-weight:700;color:var(--hk);text-transform:uppercase;letter-spacing:.03em}.hk-occ{font-size:11.5px;color:var(--ink-2)}.hk-tile.occ-free .hk-occ{color:var(--ink-3)}.hk-tile.occ-arriving .hk-occ,.hk-tile.occ-turn .hk-occ{color:var(--ink);font-weight:600}.hk-foot{display:flex;gap:4px;align-items:center;min-height:16px}.hk-who{font-size:10px;font-weight:700;background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:0 5px}.hk-note{font-size:11px;color:var(--ink-3)}.hk-prio-mark{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:99px;background:var(--bad);color:#fff;font-size:11px;font-weight:800}.hk-tile.prio{box-shadow:0 0 0 2px var(--bad) inset}.hk-tile.prio.p2{animation:hk-pulse 1.6s ease-in-out infinite}@keyframes hk-pulse{50%{box-shadow:0 0 0 2px var(--bad) inset,0 0 0 4px var(--bad-soft)}}@media (prefers-reduced-motion: reduce){.hk-tile.prio.p2{animation:none}}.hk-guest{display:grid;gap:2px;text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface)}.hk-guest:hover{background:var(--brand-soft)}.hk-req{color:var(--warn);font-size:12px;font-weight:700}.hk-req-line{color:var(--warn);font-weight:600}.hk-chip{font-size:11px;font-weight:700;padding:2px 7px;border-radius:99px;color:var(--hk);background:var(--hk-soft)}.hk-chip.dirty{--hk: var(--bad);--hk-soft: var(--bad-soft)}.hk-chip.clean{--hk: var(--ok);--hk-soft: var(--ok-soft)}.hk-chip.inspected{--hk: var(--brand-ink);--hk-soft: var(--brand-soft)}.hk-chip.out_of_order{--hk: var(--ink-3);--hk-soft: var(--surface-2, rgba(127,127,127,.12))}.night-pager{display:inline-flex;align-items:center;gap:6px;padding:2px 4px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.night-pager .btn.icon{font-size:17px;line-height:1;width:28px;justify-content:center}.night-pager .btn:disabled{opacity:.35;cursor:default}.ok-text{color:var(--ok)}.rate-tags{display:inline-flex;gap:2px;margin-left:4px;vertical-align:1px}.rate-tag{display:inline-block;font-size:9px;font-weight:700;line-height:1;padding:2px 3px;border-radius:4px}.rate-tag.g{background:#003b95;color:#fff}.rate-tag.m{background:var(--ok-soft);color:var(--ok)}.log-group td{background:var(--surface-2);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding-top:8px;padding-bottom:8px}tr.log-err td{background:color-mix(in srgb,var(--bad-soft) 60%,transparent)}tr.log-open td{background:var(--surface-2)}.log-json{margin:0;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:280px;overflow:auto}tr.log-warn td{background:color-mix(in srgb,var(--warn-soft) 60%,transparent)}.nav-sub{display:flex;flex-direction:column;gap:1px;margin:2px 0 6px 26px;padding-left:10px;border-left:1px solid var(--line)}.nav-sub-item{padding:6px 10px;border-radius:8px;font-size:13px;color:var(--ink-2);text-decoration:none}.nav-sub-item:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.nav-sub-item.active{color:var(--brand-ink);font-weight:600;background:var(--brand-soft)}.nav-item .nav-sub-chev{margin-left:auto;opacity:.5;transform:rotate(-90deg);transition:transform .15s ease}.nav-item .nav-sub-chev.open{transform:none}.staff-params{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 24px;padding-top:4px}.staff-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.staff-label{display:flex;flex-direction:column;gap:2px;font-size:13px;font-weight:600;color:var(--ink)}.staff-label .small{font-weight:400}.staff-field input{width:84px;flex:none;text-align:right}.staff-table td,.staff-table th{padding-top:8px;padding-bottom:8px}.staff-table tr.staff-we td{background:var(--surface-2)}.staff-table tfoot td{font-weight:600;border-top:2px solid var(--line-strong)}.staff-total{display:flex;align-items:center;gap:8px;min-width:130px}.staff-bar{flex:1;height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}.staff-bar i{display:block;height:100%;background:var(--series-1);border-radius:99px}.staff-bar i.peak{background:var(--warn)}.night-pager input[type=date]{width:auto;padding:4px 8px;font-size:13px;border:0;background:transparent}.staff-table tr.staff-today td:first-child{box-shadow:inset 3px 0 0 var(--brand);font-weight:600}.staff-table tr.staff-past td{opacity:.6}.staff-cal{margin-bottom:-4px}.rep-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(480px,1fr));gap:0 20px}@media (max-width: 560px){.rep-grid{grid-template-columns:1fr}}.rep-table td,.rep-table th{padding-top:8px;padding-bottom:8px}.rep-table tr.rep-own td{background:var(--brand-soft)}.rep-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;border-top:1px solid var(--line)}.rep-chip{display:inline-block;margin:6px 6px 0 0;padding:4px 10px;border-radius:99px;font-size:12.5px}.rep-chip.ok{background:var(--ok-soft);color:var(--ok)}.rep-chip.bad{background:var(--bad-soft);color:var(--bad)}.rep-stats-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rev-list{display:flex;flex-direction:column}.rev-item{display:flex;gap:14px;padding:14px 20px;border-top:1px solid var(--line)}.rev-score{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-weight:700;font-size:15px}.rev-score.ok{background:var(--ok-soft);color:var(--ok)}.rev-score.warn{background:var(--warn-soft);color:var(--warn)}.rev-score.bad{background:var(--bad-soft);color:var(--bad)}.rev-body{min-width:0;flex:1}.rev-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:12px;color:var(--ink-3);margin-bottom:4px}.rev-text{font-size:13.5px;line-height:1.5;color:var(--ink)}.rev-text .neg{color:var(--bad)}.rev-text .pos{color:var(--ok)}.sent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.sent-index{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.sent-index strong{font-size:28px;font-weight:700}.sent-bar{display:flex;height:14px;border-radius:99px;overflow:hidden;background:var(--surface-2)}.sent-bar i{display:block;height:100%}.sent-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px}.sent-legend i,.qi-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.sent-weeks{display:flex;align-items:flex-end;gap:6px;height:130px}.sent-week{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;min-width:0}.sent-week .small{font-size:10px;white-space:nowrap}.sent-col{width:100%;max-width:34px;display:flex;flex-direction:column;border-radius:6px 6px 2px 2px;overflow:hidden;min-height:3px}.sent-col i{display:block;width:100%}.sent-topics{display:flex;flex-direction:column;gap:6px;margin-top:8px}.sent-topic{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;gap:8px;font-size:12.5px}.sent-name{text-align:center;color:var(--ink);font-weight:600}.sent-neg,.sent-pos{display:flex;align-items:center;gap:6px;height:16px}.sent-neg{flex-direction:row-reverse}.sent-neg i,.sent-pos i{display:block;height:100%;border-radius:4px;min-width:0}.sent-neg i{background:var(--bad);opacity:.75}.sent-pos i{background:var(--ok);opacity:.75}.sent-neg span,.sent-pos span{color:var(--ink-3);font-variant-numeric:tabular-nums}.qi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:center}.qi-row{display:grid;grid-template-columns:150px 1fr 40px;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;font-size:13px}.qi-row.own{background:var(--brand-soft);font-weight:600}.qi-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qi-bar{display:flex;height:14px;background:var(--surface-2);border-radius:99px;overflow:hidden}.qi-bar i,.qi-legend i{display:block;height:100%}.qi-bar .rep,.qi-legend .rep{background:var(--series-1)}.qi-bar .cat,.qi-legend .cat{background:#c672a6}.qi-bar .svc,.qi-legend .svc{background:var(--series-2)}.qi-val{text-align:right;font-weight:700;font-size:15px;font-variant-numeric:tabular-nums}.qi-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px}.qi-legend i{display:inline-block;height:10px}.qi-radar{max-width:460px;margin:0 auto;width:100%}.qi-svc th.own,.qi-svc td.own{background:var(--brand-soft)}.qi-svc tr.qi-total td{border-top:2px solid var(--line-strong)}.reply{margin-top:8px}.reply-box{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:12px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line)}.reply-box textarea{width:100%;font:inherit;font-size:13.5px;line-height:1.5;resize:vertical}.chat-link{color:var(--brand-ink);font-weight:600;text-decoration:underline;text-underline-offset:2px}.ambrosio-team{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.team-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--ink-2);background:var(--surface)}.team-chip i{width:7px;height:7px;border-radius:50%}.team-chip.off{opacity:.55;text-decoration:line-through;text-decoration-thickness:1px}.rates-table tfoot .rates-market td{border-top:1px dashed var(--line)}.rates-table tfoot .rates-market:first-child td{border-top:1px solid var(--line)}.mkt-chip{border:0;border-radius:999px;padding:2px 8px;font:inherit;font-size:12px;font-weight:600;cursor:default}.mkt-chip.hot{background:var(--bad-soft);color:var(--bad)}.mkt-chip.warm{background:var(--warn-soft);color:var(--warn)}.mkt-chip.cool{background:var(--ok-soft);color:var(--ok)}.kn-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width: 900px){.kn-sources{grid-template-columns:1fr}}.kn-source{border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;background:var(--surface-2);display:flex;flex-direction:column}.kn-source .row-between:last-of-type{margin-top:auto;padding-top:8px}.kn-url{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt4{margin-top:4px}.kn-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.kn-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid var(--line)}.kn-row:first-child{border-top:0}.kn-row .kn-text{min-width:0}.kn-row.editing{flex-direction:column;align-items:stretch;background:var(--surface-2)}.kn-doubt{border:1px solid var(--warn);background:var(--warn-soft);border-radius:var(--r);padding:12px 14px}.kn-answer,.kn-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.kn-answer input,.kn-add input{flex:1;min-width:220px}.ask-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}.ask-history{display:flex;flex-direction:column;height:calc(100dvh - 230px);min-height:420px;overflow:hidden}.ask-history-head{display:flex;flex-direction:column;gap:8px;padding:14px 14px 10px;border-bottom:1px solid var(--line)}.ask-history-list{flex:1;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.ask-history-empty{padding:8px 10px;margin:0}.ask-conv{font:inherit;text-align:left;width:100%;display:flex;flex-direction:column;gap:2px;padding:8px 10px;color:var(--ink);background:none;border:0;border-radius:var(--r-sm, 8px);cursor:pointer}.ask-conv:hover{background:var(--surface-2)}.ask-conv.on{background:var(--brand-soft)}.ask-conv .t{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-conv .t svg{vertical-align:-2px;color:var(--brand-ink)}.ask-conv .d{font-size:11.5px;color:var(--ink-3)}.ask-main{min-width:0;display:flex;flex-direction:column;gap:8px}.ask-viewing{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 12px;border-radius:var(--r);background:var(--brand-soft);border:1px solid var(--brand-line)}.ask-main:has(.ask-viewing) .chat{height:calc(100dvh - 280px)}@media (max-width: 860px){.ask-layout{grid-template-columns:1fr}.ask-history{height:auto;min-height:0;max-height:220px}}.plan-modal .modal{max-width:760px;width:100%}.plan-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.plan-card{font:inherit;text-align:left;display:flex;flex-direction:column;gap:4px;padding:10px 12px;cursor:pointer;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r)}.plan-card:hover{border-color:var(--line-strong)}.plan-card.on{border-color:var(--brand);background:var(--brand-soft)}.plan-mods{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px 20px;max-height:50vh;overflow-y:auto}.plan-mod{display:flex;gap:8px;align-items:flex-start;padding:5px 0;cursor:pointer;font-size:13px}.plan-mod input{margin-top:3px;width:auto}.plan-mod .badge{margin-left:6px}.plan-mod-hint{display:block}.module-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 12px;font-size:13px}.module-list li{display:flex;gap:6px;align-items:baseline}.module-list li.off{color:var(--ink-3)}.module-list .mi{flex:none;width:16px;text-align:center;color:var(--ok)}.module-list li.off .mi{color:var(--ink-3)}.module-off{margin-bottom:0}.mfa-code{font-size:22px;letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums}.mfa-steps{margin:0 0 12px;padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:14px}.mfa-qr{margin:10px 0 6px;padding:10px;background:#fff;border-radius:var(--r);display:inline-block;border:1px solid var(--line)}.mfa-qr img{display:block}.mfa-secret{font-size:12.5px;word-break:break-all;-webkit-user-select:all;user-select:all}
