:root{--font: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--blue-600: #1248C9;--blue-500: #1A6BFF;--blue-100: #E8F1FF;--blue-tint: #E4EEFC;--navy-900: #071A3A;--navy-700: #0F2744;--aqua-400: #3EE8C8;--aqua-300: #7EE8D4;--green-600: #166534;--green-500: #12C4A0;--green-50: #E6FAF6;--amber-700: #92400E;--amber-600: #B45309;--amber-500: #D97706;--amber-400: #D4A017;--amber-300: #F59E0B;--amber-100: #FDE68A;--amber-50: #FFFBEB;--amber-tint: #FFF3D6;--red-700: #7A241F;--red-600: #9B2C22;--red-500: #DC2626;--red-400: #D6453A;--red-100: #FECACA;--red-tint: #FFE8E4;--red-50: #FEF2F2;--slate-50: #F7F9FC;--slate-100: #F3F6FB;--slate-150: #E8EEF8;--slate-200: #D7E0EE;--slate-300-strong: #BFDBFE;--slate-400: #9CA3AF;--slate-500: #6B7C99;--slate-600: #5B6B82;--slate-700: #3D4F6A;--slate-900: #111827;--white: #ffffff;--bg: var(--slate-100);--surface: var(--white);--surface-sunken: var(--slate-50);--surface-inverse: var(--navy-900);--overlay: rgba(15, 23, 42, .4);--border: var(--slate-200);--border-strong: var(--slate-300-strong);--border-inverse: rgba(255, 255, 255, .14);--text: var(--slate-900);--text-body: var(--slate-700);--text-muted: var(--slate-500);--text-faint: var(--slate-400);--text-on-accent: #F2F6FF;--text-on-inverse: #F2F6FF;--text-on-inverse-muted: #C5D4F0;--navy: var(--navy-900);--aqua: var(--aqua-400);--accent: var(--blue-500);--accent-hover: var(--blue-600);--accent-fill: var(--blue-500);--accent-fill-hover: var(--blue-600);--accent-soft: var(--blue-100);--accent-ring-color: var(--blue-500);--text-on-fill: #F2F6FF;--success: var(--green-500);--success-soft: var(--green-50);--success-strong: var(--green-600);--warn: var(--amber-500);--warn-soft: var(--amber-50);--warn-tint: var(--amber-tint);--warn-strong: var(--amber-700);--warn-border: var(--amber-100);--danger: var(--red-500);--danger-soft: var(--red-50);--danger-tint: var(--red-tint);--danger-strong: var(--red-600);--danger-border: var(--red-100);--chart-1: var(--blue-500);--chart-2: #1e4f9a;--chart-3: #7c3aed;--chart-4: var(--amber-500);--chart-5: #0ea5e9;--chart-6: #ea4335;--chart-7: var(--slate-500);--chart-on-surface: var(--white);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--r-xs: 6px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-pill: 999px;--radius-md: var(--r-md);--radius-lg: var(--r-lg);--fs-2xs: 10px;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 15px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 28px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--shadow-xs: 0 2px 8px rgba(7, 26, 58, .12);--shadow-sm: 0 8px 20px rgba(7, 26, 58, .12);--shadow-md: 0 12px 28px rgba(7, 26, 58, .14);--shadow-lg: 0 16px 40px rgba(7, 26, 58, .16);--shadow-xl: 0 24px 60px rgba(7, 26, 58, .2);--shadow-2xl: 0 30px 80px rgba(7, 26, 58, .22);--ring: 0 0 0 3px rgba(26, 107, 255, .22);--ring-danger: 0 0 0 3px rgba(220, 38, 38, .2);--ring-warn: 0 0 0 4px rgba(245, 158, 11, .25);--dur-fast: .12s;--dur-base: .18s;--ease: cubic-bezier(.2, .6, .2, 1);--page-max: 980px;--rail-w: 212px;--session-panel-w: 280px;--mobile-nav-h: 64px;color-scheme:light;font-family:var(--font);color:var(--text);background:var(--bg);font-synthesis:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #050F22;--surface: #0B1F3F;--surface-sunken: #081832;--surface-inverse: #050F22;--overlay: rgba(2, 8, 20, .6);--border: #1C3A63;--border-strong: #2B5590;--border-inverse: rgba(255, 255, 255, .1);--text: #EAF1FC;--text-body: #C3D3EA;--text-muted: #8FA6C6;--text-faint: #7B93B4;--text-on-accent: #051227;--text-on-inverse: #EAF1FC;--text-on-inverse-muted: #9FB4D6;--accent: #5C9BFF;--accent-hover: #7FB0FF;--accent-fill: var(--blue-500);--accent-fill-hover: #3D84FF;--accent-soft: #12305C;--accent-ring-color: #5C9BFF;--text-on-fill: #F2F6FF;--success: var(--aqua-400);--success-soft: #0A3A36;--success-strong: var(--aqua-400);--warn: #F2B44C;--warn-soft: #3A2B10;--warn-tint: #3A2B10;--warn-strong: #F2B44C;--warn-border: #5C4013;--danger: #F87171;--danger-soft: #3A1618;--danger-tint: #3A1618;--danger-strong: #F87171;--danger-border: #6B2323;--chart-2: #7FB0FF;--chart-7: var(--text-muted);--chart-on-surface: var(--surface);--shadow-xs: 0 2px 8px rgba(0, 0, 0, .3);--shadow-sm: 0 8px 20px rgba(0, 0, 0, .32);--shadow-md: 0 12px 28px rgba(0, 0, 0, .34);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .36);--shadow-xl: 0 24px 60px rgba(0, 0, 0, .4);--shadow-2xl: 0 30px 80px rgba(0, 0, 0, .45);--ring: 0 0 0 3px rgba(92, 155, 255, .3)}}:root[data-theme=dark]{color-scheme:dark;--bg: #050F22;--surface: #0B1F3F;--surface-sunken: #081832;--surface-inverse: #050F22;--overlay: rgba(2, 8, 20, .6);--border: #1C3A63;--border-strong: #2B5590;--border-inverse: rgba(255, 255, 255, .1);--text: #EAF1FC;--text-body: #C3D3EA;--text-muted: #8FA6C6;--text-faint: #7B93B4;--text-on-accent: #051227;--text-on-inverse: #EAF1FC;--text-on-inverse-muted: #9FB4D6;--accent: #5C9BFF;--accent-hover: #7FB0FF;--accent-fill: var(--blue-500);--accent-fill-hover: #3D84FF;--accent-soft: #12305C;--accent-ring-color: #5C9BFF;--text-on-fill: #F2F6FF;--success: var(--aqua-400);--success-soft: #0A3A36;--success-strong: var(--aqua-400);--warn: #F2B44C;--warn-soft: #3A2B10;--warn-tint: #3A2B10;--warn-strong: #F2B44C;--warn-border: #5C4013;--danger: #F87171;--danger-soft: #3A1618;--danger-tint: #3A1618;--danger-strong: #F87171;--danger-border: #6B2323;--chart-2: #7FB0FF;--chart-7: var(--text-muted);--chart-on-surface: var(--surface);--shadow-xs: 0 2px 8px rgba(0, 0, 0, .3);--shadow-sm: 0 8px 20px rgba(0, 0, 0, .32);--shadow-md: 0 12px 28px rgba(0, 0, 0, .34);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .36);--shadow-xl: 0 24px 60px rgba(0, 0, 0, .4);--shadow-2xl: 0 30px 80px rgba(0, 0, 0, .45);--ring: 0 0 0 3px rgba(92, 155, 255, .3)}*{box-sizing:border-box}html,body{font-family:var(--font)}body{margin:0;min-width:320px;min-height:100vh;font-size:var(--fs-base);line-height:1.5;-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);transition:background var(--dur-base) var(--ease),color var(--dur-base) var(--ease)}button,input,textarea{font:inherit}a{color:var(--accent)}h1{font-family:inherit;font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:-.03em;margin:0 0 var(--sp-2);color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}@media(prefers-reduced-motion:reduce){*,:before,:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}.eyebrow{color:var(--accent);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase;margin:0 0 var(--sp-2)}.eyebrow.light{color:var(--aqua-300)}.muted{color:var(--text-muted);margin:0;line-height:1.5}.alert{border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);color:var(--danger-strong);background:var(--danger-soft);border:1px solid var(--danger-border);font-size:var(--fs-md)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-dot{display:inline-block;width:8px;height:8px;margin:0 var(--sp-2) 0 0;border-radius:50%;background:var(--success);vertical-align:middle}.text-button{border:0;background:none;color:var(--text-muted);cursor:pointer}.text-button:hover{color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-narrow{max-width:42rem}.center,.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--sp-6)}.auth-shell{background:radial-gradient(900px 420px at 12% -10%,rgba(26,107,255,.22),transparent 55%),radial-gradient(700px 380px at 110% 110%,rgba(7,26,58,.18),transparent 50%),var(--slate-150)}:root[data-theme=dark] .auth-shell{background:radial-gradient(900px 420px at 12% -10%,rgba(92,155,255,.16),transparent 55%),radial-gradient(700px 380px at 110% 110%,rgba(62,232,200,.08),transparent 50%),var(--bg)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .auth-shell{background:radial-gradient(900px 420px at 12% -10%,rgba(92,155,255,.16),transparent 55%),radial-gradient(700px 380px at 110% 110%,rgba(62,232,200,.08),transparent 50%),var(--bg)}}.auth-layout{width:min(100%,980px);display:grid;grid-template-columns:1.05fr .95fr;min-height:640px;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-2xl)}.auth-panel{color:var(--blue-100);padding:var(--sp-8) var(--sp-10);display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-8);background:linear-gradient(165deg,rgba(255,255,255,.06),transparent 32%),radial-gradient(circle at 18% 0%,rgba(26,107,255,.38),transparent 46%),radial-gradient(circle at 80% 120%,rgba(62,232,200,.28),transparent 42%),var(--navy-900)}.auth-panel-copy h2{font-family:inherit;font-size:clamp(28px,3vw,40px);font-weight:var(--fw-bold);letter-spacing:-.03em;line-height:1.15;margin:0 0 var(--sp-4);color:var(--text-on-inverse)}.auth-panel-copy p{margin:0;color:var(--text-on-inverse-muted);line-height:1.55;max-width:42ch}.auth-panel-copy p+p{margin-top:var(--sp-3)}.auth-points{margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-3);color:var(--text-on-inverse-muted);font-size:var(--fs-md)}.auth-points li{display:flex;gap:var(--sp-3);align-items:flex-start}.auth-points li:before{content:"";width:7px;height:7px;margin-top:7px;border-radius:50%;background:var(--aqua);flex:none}.auth-card{padding:var(--sp-10) 42px;display:grid;align-content:center;gap:var(--sp-5);background:var(--surface)}.brand{color:var(--navy);font-size:var(--fs-2xl);font-weight:var(--fw-bold);text-decoration:none;letter-spacing:-.04em;display:inline-flex;align-items:center;gap:var(--sp-3)}.brand-light{color:var(--text-on-inverse)}.brand-mark{width:36px;height:36px;border-radius:var(--r-sm);object-fit:cover;display:block;flex:none}.auth-card h1{font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:-.03em}.store-chip{margin:0;justify-self:start;display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.store-chip-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}.auth-card form{display:grid;gap:var(--sp-2)}.field-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-3)}.field-hint{color:var(--text-muted);font-size:var(--fs-sm)}label{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text)}input{width:100%;border:1px solid var(--border);border-radius:var(--r-md);padding:13px 14px;outline:none;background:var(--surface-sunken);color:var(--text);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}input::placeholder{color:var(--text-faint)}input:focus{border-color:var(--accent);box-shadow:var(--ring);background:var(--surface)}.password-field{position:relative}.password-field input{padding-right:68px}.password-toggle{position:absolute;right:var(--sp-2);top:50%;transform:translateY(-50%);padding:var(--sp-2)}.button{border:0;border-radius:var(--r-md);padding:13px var(--sp-5);cursor:pointer;font-weight:var(--fw-bold);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.button:disabled{cursor:not-allowed;opacity:.55}.button.primary{background:var(--accent-fill);color:var(--text-on-fill);margin-top:var(--sp-2)}.button.primary:hover:not(:disabled){background:var(--accent-fill-hover)}.button.secondary{background:var(--surface);border:1px solid var(--border);color:var(--text)}.button.secondary:hover:not(:disabled){background:var(--surface-sunken)}.button.danger{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--surface);border:1px solid var(--danger-border);color:var(--danger);margin-top:var(--sp-4)}.button.danger:hover:not(:disabled){background:var(--danger-soft)}.button.google{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);background:var(--surface-sunken);border:1px solid var(--border);color:var(--text);font-weight:var(--fw-semibold)}.button.google:hover:not(:disabled){background:var(--accent-soft);border-color:var(--border-strong)}.google-mark{width:18px;height:18px}.divider{display:flex;align-items:center;gap:var(--sp-3);color:var(--text-muted);font-size:var(--fs-sm)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.switch-copy{margin:var(--sp-1) 0 0;text-align:center;font-size:var(--fs-md);color:var(--text-muted)}.switch-copy a{color:var(--accent);font-weight:var(--fw-semibold)}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--rail-w) 1fr;background:var(--bg)}.app-shell.has-session-panel{grid-template-columns:var(--rail-w) var(--session-panel-w) 1fr}.app-rail{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:var(--sp-3) var(--sp-2);background:var(--bg);border-right:1px solid var(--border);z-index:2}.rail-top{display:flex;flex-direction:column;gap:6px}.rail-bottom{display:flex;flex-direction:column;gap:var(--sp-1)}.rail-brand{display:flex;align-items:center;gap:var(--sp-2);min-width:0;margin:0 0 var(--sp-3);padding:2px var(--sp-2);text-decoration:none;color:var(--text)}.rail-brand-icon{width:34px;height:34px;border-radius:var(--r-sm);object-fit:cover;flex:none;display:block}.rail-brand-name{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:-.02em;white-space:nowrap}.rail-nav{display:flex;flex-direction:column;gap:var(--sp-1)}.rail-item{position:relative;width:100%;height:40px;border-radius:var(--r-sm);display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-3);color:var(--text-muted);text-decoration:none;border:0;background:transparent;cursor:pointer;font:inherit;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.rail-item:hover{background:var(--surface-sunken);color:var(--text)}.rail-item.is-active{background:var(--accent-soft);color:var(--accent)}.rail-item.is-active:before{content:"";position:absolute;left:-8px;top:10px;bottom:10px;width:3px;border-radius:0 2px 2px 0;background:var(--accent)}.rail-label{font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.rail-avatar{width:18px;height:18px;border-radius:var(--r-pill);display:grid;place-items:center;flex:none;font-size:10px;font-weight:var(--fw-bold);line-height:1;background:color-mix(in srgb,currentColor 16%,transparent)}.rail-badge{margin-left:auto;min-width:16px;height:16px;padding:0 var(--sp-1);border-radius:var(--r-pill);background:var(--warn);color:var(--navy-900);font-size:var(--fs-2xs);font-weight:var(--fw-bold);display:grid;place-items:center}.session-panel{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:10px;padding:14px var(--sp-3) var(--sp-3);background:var(--surface);border-right:1px solid var(--border);min-width:0}.session-panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-1) var(--sp-1) 0 var(--sp-2)}.session-panel-title{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.sidebar-new-btn{width:28px;height:28px;border-radius:var(--r-pill);display:grid;place-items:center;color:var(--text-muted);text-decoration:none;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.sidebar-new-btn:hover{color:var(--accent);border-color:var(--border-strong);background:var(--accent-soft)}.sidebar-search{position:relative;display:flex;align-items:center}.sidebar-search-icon{position:absolute;left:var(--sp-3);color:var(--text-faint);pointer-events:none}.sidebar-search input{width:100%;height:36px;padding:0 var(--sp-3) 0 34px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--bg);color:var(--text);font-size:var(--fs-base);outline:none;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.sidebar-search input::placeholder{color:var(--text-faint)}.sidebar-search input:focus{border-color:var(--accent);box-shadow:var(--ring);background:var(--surface)}.session-source-pills{display:flex;flex-wrap:wrap;gap:6px;padding:0 var(--sp-1)}.session-source-pill{display:inline-flex;align-items:center;padding:5px var(--sp-3);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.session-source-pill.is-active{background:var(--accent-soft);border-color:var(--border-strong);color:var(--accent)}.sidebar-shop{margin:0;padding:0 var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted);display:flex;align-items:center;gap:6px;min-width:0}.sidebar-shop span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-live{width:6px;height:6px;border-radius:50%;background:var(--success);flex:none}.session-list{flex:1;min-height:0;overflow:auto;padding-right:2px}.session-group{margin-bottom:var(--sp-3)}.session-group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.session-item-row{position:relative}.session-item-row .session-item{padding-right:var(--sp-8)}.session-more{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:26px;height:26px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);display:grid;place-items:center;opacity:0;pointer-events:none;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.session-item-row:hover .session-more,.session-item-row:focus-within .session-more,.session-item-row.is-menu-open .session-more{opacity:1;pointer-events:auto}.session-item-row:hover .session-item-time,.session-item-row:focus-within .session-item-time,.session-item-row.is-menu-open .session-item-time{visibility:hidden}.session-more:hover,.session-more.is-open{background:var(--border);color:var(--text)}.session-item-menu{position:absolute;right:6px;top:calc(100% - 4px);z-index:40;min-width:160px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.session-item-menu-item{width:100%;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:0;border-radius:var(--r-sm);background:none;color:var(--text);font-size:var(--fs-base);font-weight:var(--fw-semibold);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease)}.session-item-menu-item:hover{background:var(--bg)}.session-item-menu-item.is-danger{color:var(--danger)}.session-item-menu-item.is-danger:hover{background:var(--danger-soft)}.session-group-label{margin:0 var(--sp-2) 6px;font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.session-item{position:relative;width:100%;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-3) 14px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit;transition:background var(--dur-fast) var(--ease)}.session-item:hover{background:var(--bg)}.session-item.is-active{background:var(--accent-soft);font-weight:var(--fw-semibold)}.session-item.is-active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 2px 2px 0;background:var(--accent)}.session-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-base)}.session-item-time{flex:none;max-width:7.5rem;font-size:var(--fs-xs);color:var(--text-faint);text-align:right;line-height:1.25;white-space:normal}.sidebar-empty{margin:var(--sp-2);font-size:var(--fs-base);color:var(--text-faint)}.nav-item-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--warn);color:var(--navy-900);font-size:var(--fs-2xs);font-weight:var(--fw-bold);display:inline-grid;place-items:center;line-height:1}.app-main{position:relative;min-width:0;min-height:100vh;background:var(--bg)}.agent-keepalive{display:none}.agent-keepalive.is-visible{display:contents}.app-mobile-nav,.app-mobile-more-sheet{display:none}@media(max-width:1100px)and (min-width:901px){.app-shell{grid-template-columns:64px 1fr}.app-shell.has-session-panel{grid-template-columns:64px var(--session-panel-w) 1fr}.rail-brand-name,.rail-label{display:none}.rail-brand,.rail-item{justify-content:center;padding-left:0;padding-right:0}}@media(max-width:900px){.app-shell{grid-template-columns:1fr;padding-bottom:var(--mobile-nav-h)}.app-shell.has-session-panel{grid-template-columns:1fr}.app-rail,.session-panel{display:none}.app-main{min-height:calc(100vh - var(--mobile-nav-h))}.app-mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);align-items:stretch;position:fixed;bottom:0;left:0;right:0;z-index:40;height:var(--mobile-nav-h);background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.mobile-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:var(--sp-1);color:var(--text-muted);text-decoration:none;font-size:var(--fs-xs);font-weight:var(--fw-semibold);background:none;border:0;cursor:pointer;font-family:inherit}.mobile-nav-item.is-active{color:var(--accent)}.mobile-nav-icon{width:18px;height:18px}.mobile-nav-icon svg{width:18px;height:18px;display:block}.mobile-nav-badge{position:absolute;top:2px;right:calc(50% - 22px);min-width:16px;height:16px;font-size:var(--fs-2xs)}.app-mobile-more-sheet{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.app-mobile-more-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay)}.app-mobile-more-panel{position:absolute;left:0;right:0;bottom:0;background:var(--surface);border-radius:var(--r-xl) var(--r-xl) 0 0;padding:var(--sp-3) var(--sp-4) calc(var(--sp-4) + env(safe-area-inset-bottom));box-shadow:var(--shadow-xl);display:grid;gap:2px}.app-mobile-more-title{margin:0 0 var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);padding:0 var(--sp-2)}.app-mobile-more-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-2);border-radius:var(--r-sm);color:var(--text);text-decoration:none;font-size:var(--fs-md);font-weight:var(--fw-medium)}.app-mobile-more-item.is-active{color:var(--accent);background:var(--accent-soft)}.app-mobile-more-item .nav-item-badge{margin-left:auto}}.page{padding:var(--sp-8) var(--sp-8) var(--sp-12);max-width:var(--page-max)}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--sp-3) var(--sp-6);margin-bottom:var(--sp-8)}.page-header h1{margin-bottom:0}.page-header .eyebrow{margin-bottom:6px}.page-header .muted{margin-top:6px}.header-meta{display:flex;align-items:center;gap:var(--sp-2);margin:0}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);margin-bottom:var(--sp-4);background:var(--surface);box-shadow:var(--shadow-xs)}.panel h2{font-family:inherit;font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:-.01em;margin:0 0 var(--sp-4);color:var(--text)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.panel-head h2{margin:0}.panel-head a{font-size:var(--fs-md);font-weight:var(--fw-semibold);text-decoration:none;color:var(--accent)}.panel-head a:hover{text-decoration:underline}.panel-head .button{margin-top:0;padding:var(--sp-2) var(--sp-3)}.panel-warn{border-color:var(--warn-border);background:var(--warn-soft)}.empty-state{padding:var(--sp-8) var(--sp-2);text-align:center}.agent-shell{height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg)}.chat-page-header{padding:var(--sp-6) var(--sp-8) var(--sp-4);margin-bottom:0;border-bottom:1px solid var(--border);background:var(--surface)}.conversation{overflow:auto;padding:var(--sp-8) max(var(--sp-6),calc((100% - var(--page-max)) / 2));display:flex;flex-direction:column;gap:var(--sp-5)}.message{max-width:76%;line-height:1.55;white-space:pre-wrap;color:var(--text)}.message.user{align-self:flex-end;background:var(--accent-soft);color:var(--text);padding:var(--sp-4);border-radius:var(--radius-lg) var(--radius-lg) 4px var(--radius-lg);border:1px solid var(--border-strong)}.message.assistant{align-self:flex-start;background:var(--surface);padding:var(--sp-4);border:1px solid var(--border);border-radius:4px var(--radius-lg) var(--radius-lg) var(--radius-lg)}.message-label{display:block;color:var(--text-faint);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.thinking{color:var(--text-muted)}.agent-steps{margin:0 0 var(--sp-3);font-size:var(--fs-base);color:var(--text-muted)}.agent-steps summary{cursor:pointer;font-weight:var(--fw-semibold);list-style:none}.agent-steps summary::-webkit-details-marker{display:none}.agent-steps summary:before{content:"▾ ";display:inline-block}.agent-steps:not([open]) summary:before{content:"▸ "}.agent-steps ul{margin:6px 0 0;padding:0 0 0 var(--sp-3);list-style:none;border-left:1px solid var(--border)}.agent-step{display:flex;gap:var(--sp-2);align-items:flex-start;padding:3px 0;font-family:var(--font-mono);font-size:var(--fs-sm)}.agent-step-dot{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--text-faint);flex-shrink:0}.agent-step.is-running .agent-step-dot{background:var(--accent)}.agent-step.is-done .agent-step-dot{background:var(--success)}.agent-step.is-error .agent-step-dot{background:var(--danger)}.agent-response-pending{color:var(--text-faint);font-size:var(--fs-base);margin-top:var(--sp-2)}.chat-alert{align-self:center;max-width:520px;color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.composer-wrap{flex-shrink:0;padding:var(--sp-3) var(--sp-6) var(--sp-5);background:var(--bg)}.composer-box{max-width:min(100%,var(--page-max));margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;box-shadow:var(--shadow-xs);transition:border-color var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease)}.composer-box:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.composer-input{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-size:var(--fs-lg);line-height:1.65;padding:var(--sp-3) var(--sp-4) 6px;resize:none;min-height:44px;max-height:200px;font-family:inherit;overflow-y:auto}.composer-input::placeholder{color:var(--text-faint)}.composer-input:disabled{opacity:.7}.composer-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:6px var(--sp-3) var(--sp-3)}.composer-left{display:flex;align-items:center;gap:var(--sp-1);min-width:0;flex:1;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.composer-left::-webkit-scrollbar{display:none}.composer-divider{width:1px;height:16px;background:var(--border);margin:0 3px;flex-shrink:0}.composer-icon-btn{width:34px;height:34px;border-radius:var(--r-sm);background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.75;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease)}.composer-icon-btn:hover{background:var(--bg);color:var(--text);opacity:1}.composer-chip{display:inline-flex;align-items:center;gap:6px;max-width:180px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);border:1px solid transparent;background:transparent;color:var(--text-muted);font-size:12.5px;font-weight:var(--fw-medium);cursor:pointer;flex-shrink:0;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.composer-chip:hover{color:var(--text);background:var(--bg)}.composer-chip-profile{color:var(--accent)}.composer-chip-profile:hover{color:var(--accent-hover);background:var(--accent-soft)}.composer-chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-chip-reasoning .composer-chip-label{font-size:var(--fs-xs);font-weight:var(--fw-bold)}.composer-workspace-group{display:inline-flex;align-items:stretch;max-width:160px;border-radius:var(--r-pill);overflow:hidden;border:1px solid var(--border);background:transparent;flex-shrink:0}.composer-workspace-group:hover{background:var(--bg)}.composer-workspace-files{display:inline-flex;align-items:center;justify-content:center;padding:7px var(--sp-3) 7px var(--sp-3);background:transparent;border:none;color:var(--text-muted);cursor:pointer}.composer-workspace-chip{display:inline-flex;align-items:center;gap:6px;min-width:0;padding:7px var(--sp-3) 7px var(--sp-2);border:none;border-left:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:12.5px;font-weight:var(--fw-medium);cursor:pointer}.composer-right{display:flex;gap:var(--sp-2);align-items:center;flex-shrink:0}.composer-ctx{position:relative;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.composer-ctx-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:28px;height:28px;transform:rotate(-90deg)}.composer-ctx-track,.composer-ctx-value{fill:none;stroke-width:2.5}.composer-ctx-track{stroke:var(--border)}.composer-ctx-value{stroke:var(--text-muted);stroke-linecap:round;stroke-dasharray:var(--ctx-ring-len, 61.26);stroke-dashoffset:var(--ctx-ring-len, 61.26);transition:stroke-dashoffset .35s ease}.composer-ctx-num{position:relative;font-size:var(--fs-2xs);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;color:var(--text-muted);line-height:1}.composer-icon-btn.is-open,.composer-icon-btn.is-recording{background:var(--accent-soft);color:var(--accent);opacity:1}.composer-icon-btn.is-recording{color:var(--danger);background:var(--danger-soft)}.composer-chip.is-open,.composer-workspace-chip.is-open,.composer-icon-btn.is-open{color:var(--accent);background:var(--accent-soft);border-color:var(--border-strong)}.composer-menu-wrap{position:relative;flex-shrink:0}.composer-popover{display:flex;flex-direction:column;gap:2px;padding:var(--sp-3);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg)}.composer-popover-kicker{margin:0 var(--sp-1) var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted);line-height:1.35}.composer-popover-section{display:block;margin:var(--sp-3) var(--sp-1) 6px;font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.composer-popover-search{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);padding:0 var(--sp-3);height:36px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);color:var(--text-faint)}.composer-popover-search input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:var(--fs-base);color:var(--text)}.composer-custom-model{margin-bottom:var(--sp-1)}.composer-custom-model-row{display:flex;gap:6px;padding:0 2px}.composer-custom-model-row input{flex:1;min-width:0;height:34px;border:1px solid var(--border);border-radius:var(--r-sm);padding:0 var(--sp-3);font-size:var(--fs-base)}.composer-custom-model-row button{width:34px;height:34px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-size:var(--fs-xl);cursor:pointer}.composer-custom-model-row button:disabled{color:var(--text-faint);cursor:not-allowed}.composer-popover-configured,.composer-model-group{margin-top:2px}.composer-model-badge{display:inline-flex;align-self:flex-start;margin:2px 0;padding:2px var(--sp-2);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:.02em}.composer-menu-title{margin:var(--sp-1) var(--sp-2) var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.composer-menu-empty{margin:var(--sp-1) var(--sp-2) var(--sp-2);font-size:var(--fs-sm);color:var(--text-faint)}.composer-menu-item{display:block;width:100%;text-align:left;border:0;background:none;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-base);color:var(--text);cursor:pointer}.composer-menu-item:hover,.composer-menu-item.is-selected{background:var(--accent-soft)}.composer-menu-item-stack{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.composer-menu-item-stack strong{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.composer-menu-item-stack>span:last-child{font-size:var(--fs-xs);color:var(--text-muted)}.composer-menu-item-action{margin-top:var(--sp-1);border-top:1px solid var(--border);border-radius:0 0 var(--r-sm) var(--r-sm);color:var(--accent);font-weight:var(--fw-semibold)}.composer-menu-row{display:flex;align-items:center;gap:var(--sp-1)}.composer-menu-row .composer-menu-item{flex:1}.composer-menu-x{border:0;background:none;color:var(--text-faint);cursor:pointer;width:24px;height:24px;display:grid;place-items:center}.composer-menu-save{display:flex;gap:6px;padding:var(--sp-2) var(--sp-1) var(--sp-1);border-top:1px solid var(--border);margin-top:var(--sp-1)}.composer-menu-save input{flex:1;min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);padding:6px var(--sp-2);font-size:var(--fs-sm)}.composer-menu-save button{border:0;border-radius:var(--r-sm);background:var(--accent);color:var(--text-on-accent);font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:6px var(--sp-2);cursor:pointer}.composer-menu-save button:disabled{background:var(--border);color:var(--text-faint)}.composer-attach-tray{display:flex;flex-wrap:wrap;gap:6px;padding:var(--sp-3) var(--sp-4) 0}.composer-attach-chip{display:inline-flex;align-items:center;gap:6px;padding:var(--sp-1);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-xs);color:var(--text-muted)}.composer-attach-chip img{width:28px;height:28px;object-fit:cover;border-radius:4px}.composer-attach-chip button{border:0;background:none;color:var(--text-faint);cursor:pointer;display:grid;place-items:center}.composer-attach-error{margin:0;padding:6px var(--sp-4) 0;font-size:var(--fs-sm);color:var(--danger)}.composer-send{width:34px;height:34px;border-radius:50%;background:var(--accent);border:none;color:var(--text-on-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease);box-shadow:var(--shadow-xs)}.composer-send:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.04)}.composer-send:disabled{background:var(--border);color:var(--text-faint);cursor:not-allowed;box-shadow:none;opacity:1}.composer-stop{background:var(--text);box-shadow:var(--shadow-xs)}.composer-stop:hover:not(:disabled){background:var(--danger);transform:scale(1.04)}.risk-badge{display:inline-flex;align-items:center;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.risk-low{background:var(--success-soft);color:var(--success-strong)}.risk-medium{background:var(--warn-tint);color:var(--warn-strong)}.risk-high{background:var(--danger-tint);color:var(--danger-strong)}.risk-dot{width:10px;height:10px;border-radius:50%;flex:none}.risk-dot.risk-low{background:var(--success)}.risk-dot.risk-medium{background:var(--warn)}.risk-dot.risk-high{background:var(--danger)}.risk-border-low{border-left:4px solid var(--success)}.risk-border-medium{border-left:4px solid var(--warn)}.risk-border-high{border-left:4px solid var(--danger)}.status-badge{display:inline-flex;align-items:center;padding:5px var(--sp-3);border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.02em;text-transform:uppercase}.status-badge.needs{background:var(--warn-tint);color:var(--warn-strong)}.status-badge.running{background:var(--accent-soft);color:var(--accent)}.status-badge.completed{background:var(--success-soft);color:var(--success-strong)}.status-badge.failed{background:var(--danger-tint);color:var(--danger-strong)}.status-badge.rejected{background:var(--bg);color:var(--text-muted)}.status-pill{display:inline-flex;padding:2px var(--sp-2);border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.status-pill.yes{background:var(--success-soft);color:var(--success-strong)}.status-pill.no{background:var(--danger-tint);color:var(--danger-strong)}.pill{display:inline-flex;align-items:center;gap:6px;padding:var(--sp-1) 9px;border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-semibold);background:var(--bg);color:var(--text-muted)}.pill.is-live{background:var(--success-soft);color:var(--success-strong)}.pill.is-warn{background:var(--warn-soft);color:var(--warn-strong)}.pill-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--sp-3)}.chart-frame{width:100%;height:220px}.chart-frame-tall{height:280px}.chart-frame-pie{position:relative;height:200px}.chart-toggle{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none}.chart-toggle input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3);box-shadow:var(--shadow-sm);min-width:140px}.chart-tooltip-label{margin:0 0 var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-muted)}.chart-tooltip ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.chart-tooltip li,.action-mix-legend li{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base);color:var(--text-body)}.chart-tooltip li strong,.action-mix-legend li strong{margin-left:auto;font-weight:var(--fw-bold);color:var(--text)}.chart-tooltip-swatch{width:8px;height:8px;border-radius:50%;flex:none}.chart-legend{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:14px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted)}.chart-legend li{display:flex;align-items:center;gap:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--overlay);display:grid;place-items:center;padding:var(--sp-6)}.modal{width:min(100%,420px);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-5) var(--sp-5);box-shadow:var(--shadow-xl)}.modal h2{margin:0 0 var(--sp-2);font-size:var(--fs-xl)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-5)}.modal-actions .button.danger{margin-top:0}.field-tip{position:relative;display:inline-flex;color:var(--text-muted);cursor:help}.field-tip-pop{display:none;position:absolute;left:0;top:calc(100% + 6px);z-index:20;width:260px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:var(--surface-inverse);color:var(--text-on-inverse);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.4;box-shadow:var(--shadow-sm)}.field-tip:hover .field-tip-pop,.field-tip:focus-within .field-tip-pop{display:block}.icon-btn{width:28px;height:28px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);display:grid;place-items:center;cursor:pointer;flex:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.icon-btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--text)}.icon-btn.is-danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.unsaved-bar{position:sticky;bottom:var(--sp-4);z-index:12;margin-top:var(--sp-6)}.unsaved-bar-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border:1px solid var(--warn-border);background:var(--warn-soft);box-shadow:var(--shadow-md)}.unsaved-bar-copy{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--warn-strong)}.unsaved-dot{width:8px;height:8px;border-radius:var(--r-pill);background:var(--warn);box-shadow:var(--ring-warn)}.unsaved-bar-actions{display:flex;align-items:center;gap:var(--sp-2)}.page.overview-page,.page.insights-page{max-width:1180px}.overview-header{align-items:flex-end}.overview-header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-3)}.range-chips{display:inline-flex;gap:6px;padding:var(--sp-1);border-radius:var(--r-pill);background:var(--surface-sunken);border:1px solid var(--border)}.range-chip{border:0;background:transparent;border-radius:var(--r-pill);padding:7px var(--sp-3);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.range-chip:hover{color:var(--accent)}.range-chip.active{background:var(--surface-inverse);color:var(--text-on-inverse)}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:var(--sp-5)}.kpi-grid-4{grid-template-columns:repeat(4,1fr)}.kpi-card{border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5) var(--sp-3);background:var(--surface-sunken);display:grid;gap:6px;color:var(--accent);min-width:0;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.kpi-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.kpi-card-top{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-2)}.kpi-label{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-muted)}.kpi-value{font-family:inherit;font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:-.03em;color:var(--text)}.kpi-delta{font-size:var(--fs-sm);font-weight:var(--fw-bold)}.kpi-delta.up{color:var(--success-strong)}.kpi-delta.down{color:var(--danger-strong)}.kpi-spark{width:100%;height:40px;margin-top:2px}.overview-charts{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.9fr);gap:var(--sp-4);margin-bottom:var(--sp-4)}.overview-charts-secondary{grid-template-columns:1fr 1fr}.overview-panel{margin-bottom:0;min-width:0}.insights-page>.overview-panel{margin-bottom:var(--sp-5)}.overview-panel .panel-head{margin-bottom:var(--sp-3)}.panel-sub{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.panel-intro{margin:0 0 var(--sp-3);font-size:var(--fs-base)}.action-mix{display:grid;gap:var(--sp-2)}.action-mix-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;pointer-events:none}.action-mix-center strong{font-family:inherit;font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:-.03em;color:var(--text);line-height:1}.action-mix-center span{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted);margin-top:var(--sp-1)}.action-mix-legend{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-2)}.action-teaser-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.action-teaser{display:flex;align-items:center;gap:14px;padding:var(--sp-3) var(--sp-3);border-radius:var(--r-md);text-decoration:none;color:inherit;border:1px solid transparent;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.action-teaser:hover{background:var(--surface-sunken);border-color:var(--border)}.action-teaser strong{display:block;font-size:var(--fs-md)}.action-teaser .muted{margin:2px 0 0;font-size:var(--fs-sm)}.teaser-arrow{margin-left:auto;color:var(--text-muted)}.citation-mix{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}.citation-mix-meta{display:flex;justify-content:space-between;gap:var(--sp-2);font-size:var(--fs-base);margin-bottom:var(--sp-1)}.citation-mix-meta span{display:flex;align-items:center;gap:var(--sp-2)}.citation-mix-track{height:8px;border-radius:var(--r-pill);background:var(--surface-sunken);overflow:hidden}.citation-mix-track span{display:block;height:100%;border-radius:inherit}.fanout-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}.fanout-item{padding-bottom:var(--sp-3);border-bottom:1px solid var(--border)}.fanout-item:last-child{padding-bottom:0;border-bottom:0}.fanout-item-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-1)}.fanout-engine{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted)}.fanout-search{margin:0;font-size:var(--fs-base);font-weight:var(--fw-semibold)}.fanout-prompt{margin:2px 0 6px;font-size:var(--fs-sm)}.fanout-rewrite{margin:0;display:flex;flex-wrap:wrap;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted)}.fanout-rewrite em{font-style:normal;color:var(--text);font-weight:var(--fw-semibold)}.prompt-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.opportunity-teaser{cursor:default}.opportunity-teaser:hover{background:transparent;border-color:transparent}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--fs-base)}.data-table th{text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:var(--sp-2) var(--sp-3) var(--sp-3) 0;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:var(--sp-3) var(--sp-3) var(--sp-3) 0;border-bottom:1px solid var(--border);color:var(--text-body);vertical-align:top}.data-table td strong{display:block;font-size:var(--fs-base);color:var(--text)}.table-sub{display:block;margin-top:2px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.issue-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-2)}.issue-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);border:1px solid transparent;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.issue-row:hover{background:var(--surface-sunken);border-color:var(--border)}.issue-row strong{display:block;font-size:var(--fs-md)}.issue-row .muted{margin:2px 0 0;font-size:var(--fs-sm)}.issue-row .risk-badge{margin-left:auto;text-transform:capitalize}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-5)}.filter-chip{border:1px solid var(--border);background:var(--surface);border-radius:var(--r-pill);padding:var(--sp-2) 14px;cursor:pointer;font-weight:var(--fw-semibold);font-size:var(--fs-base);color:var(--text-body);display:inline-flex;align-items:center;gap:var(--sp-2);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.filter-chip:hover{border-color:var(--accent);color:var(--accent)}.filter-chip.active{background:var(--surface-inverse);border-color:var(--surface-inverse);color:var(--text-on-inverse)}.filter-count{font-size:var(--fs-xs);font-weight:var(--fw-bold);opacity:.75;background:#00000014;border-radius:var(--r-pill);padding:2px 7px}.filter-chip.active .filter-count{background:#ffffff2e}.activity-list{display:grid;gap:14px}.activity-card{border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5);background:var(--surface-sunken);display:grid;gap:var(--sp-3);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.activity-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.activity-card-top{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;justify-content:space-between}.activity-title{font-family:inherit;font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:-.02em;margin:0}.wants-label{margin:0;font-weight:var(--fw-bold);font-size:var(--fs-md)}.summary-list{margin:0;padding-left:1.2em;display:grid;gap:var(--sp-1);color:var(--text-body);font-size:var(--fs-md);line-height:1.45}.activity-card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:6px;padding-top:var(--sp-3);border-top:1px solid var(--border)}.review-link{text-decoration:none;display:inline-flex;margin-top:0;padding:var(--sp-3) var(--sp-4)}.audit-trail{margin:0;display:grid;gap:var(--sp-2);font-size:var(--fs-md)}.audit-trail>div{display:grid;grid-template-columns:100px 1fr;gap:var(--sp-3)}.audit-trail dt{color:var(--text-muted);font-weight:var(--fw-semibold)}.audit-trail dd{margin:0;color:var(--text-body)}.review-page{padding-bottom:100px}.back-link{display:inline-block;margin-bottom:var(--sp-4);font-size:var(--fs-md);font-weight:var(--fw-semibold);text-decoration:none}.back-link:hover{text-decoration:underline}.review-header{align-items:flex-start}.review-meta{margin-top:var(--sp-2);display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.why-copy{margin:0;line-height:1.55;color:var(--text-body)}.change-groups{display:grid;gap:var(--sp-4)}.product-change{border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4);background:var(--surface)}.product-change h3{margin:0 0 var(--sp-1);font-size:var(--fs-xl)}.sku-line{margin:0 0 var(--sp-3);font-size:var(--fs-base)}.field-changes{display:grid;gap:var(--sp-3)}.field-diff h4{margin:0 0 var(--sp-2);font-size:var(--fs-base);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.before-after>div{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--sp-3)}.ba-label{display:block;font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.before-after p{margin:0;font-size:var(--fs-md);line-height:1.45;white-space:pre-wrap}.toggle-diff{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);border:0;background:none;padding:var(--sp-2) 0;cursor:pointer;font-weight:var(--fw-bold);text-align:left;color:var(--text)}.field-diff.collapsible{border-top:1px solid var(--border);padding-top:var(--sp-1)}.review-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) 0;margin-top:var(--sp-2);background:linear-gradient(transparent,var(--bg) 30%)}.review-actions .button.primary{margin-top:0}.settings-dl{margin:0;display:grid;gap:var(--sp-3)}.settings-dl>div{display:grid;grid-template-columns:120px 1fr;gap:var(--sp-3);font-size:var(--fs-md)}.settings-dl dt{color:var(--text-muted);font-weight:var(--fw-semibold)}.settings-dl dd{margin:0;display:flex;align-items:center;gap:var(--sp-2)}.settings-note{margin:-6px 0 var(--sp-4);font-size:var(--fs-base)}.autonomy-fieldset{border:0;margin:0 0 var(--sp-5);padding:0;display:grid;gap:var(--sp-3)}.check-row{display:flex;gap:var(--sp-3);align-items:flex-start;padding:14px var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.check-row:hover:not(.locked){border-color:var(--border-strong)}.check-row input{width:auto;margin-top:3px;accent-color:var(--accent)}.check-row span{display:grid;gap:2px}.check-row .muted{font-size:var(--fs-base)}.check-row.locked{opacity:.85;cursor:default;background:var(--surface-sunken)}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}.permission-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px var(--sp-4)}.permission-col h3{margin:0 0 var(--sp-3)}.permission-col ul{margin:0;padding-left:1.1em;font-size:var(--fs-base);line-height:1.5;color:var(--text-body);display:grid;gap:var(--sp-1)}.theme-toggle{display:inline-flex;gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-pill);background:var(--surface-sunken);border:1px solid var(--border)}.theme-toggle-option{display:inline-flex;align-items:center;gap:6px;padding:7px var(--sp-3);border:0;border-radius:var(--r-pill);background:transparent;color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.theme-toggle-option:hover{color:var(--text)}.theme-toggle-option[aria-pressed=true]{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-xs)}.identity-row{display:flex;align-items:center;gap:var(--sp-4)}.identity-avatar{width:64px;height:64px;border-radius:var(--r-lg);display:grid;place-items:center;flex:none;background:var(--accent-soft);color:var(--accent);font-size:var(--fs-3xl);font-weight:var(--fw-bold);overflow:hidden}.identity-avatar.is-photo{object-fit:cover;display:block}.identity-name{margin:0 0 2px;font-size:var(--fs-xl);font-weight:var(--fw-bold)}.identity-link{display:flex;align-items:center;gap:var(--sp-3);margin-top:14px;padding:var(--sp-3) 14px;border:1px solid var(--border);border-radius:var(--radius-md);text-decoration:none;color:var(--text);background:var(--bg);font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.identity-link:hover{border-color:var(--border-strong);background:var(--accent-soft);color:var(--accent)}.identity-link-icon{width:32px;height:32px;border-radius:var(--r-sm);display:grid;place-items:center;flex:none;background:var(--surface);color:var(--accent);border:1px solid var(--border)}.identity-note{display:flex;gap:var(--sp-3);align-items:flex-start;margin-bottom:var(--sp-2)}.identity-note-icon{width:28px;height:28px;border-radius:var(--r-pill);display:grid;place-items:center;flex:none;background:var(--success-soft);color:var(--success)}.button.sm{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);font-size:var(--fs-base);font-weight:var(--fw-semibold);margin-top:0}.button.ghost{background:transparent;color:var(--text-muted)}.button.ghost:hover:not(:disabled){background:var(--surface-sunken);color:var(--text)}.competitor-alert{display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3) 14px;margin-bottom:var(--sp-5);border-radius:var(--r-md);border:1px solid var(--warn-border);background:var(--warn-soft);color:var(--warn-strong)}.competitor-alert svg{flex:none;margin-top:2px;color:var(--warn)}.competitor-alert strong{display:block;font-size:var(--fs-base);margin-bottom:2px}.competitor-alert p{margin:0;font-size:var(--fs-base);color:var(--warn-strong);line-height:1.45}.competitors-editor{display:grid;gap:var(--sp-4)}.competitor-card{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.competitor-card-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3)}.competitor-card-copy{min-width:0;flex:1;display:flex;align-items:baseline;gap:var(--sp-2)}.competitor-name{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.competitor-name.is-empty{color:var(--text-muted);font-style:italic;font-weight:var(--fw-medium)}.competitor-domain{font-size:var(--fs-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competitor-card-body{display:grid;gap:var(--sp-3);padding:var(--sp-3);border-top:1px solid var(--border);background:var(--bg)}.competitor-field{display:grid;gap:6px}.competitor-field>span{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.competitor-field input{background:var(--surface);padding:var(--sp-3);border-radius:var(--r-sm)}.competitor-count,.competitor-cap{font-size:var(--fs-sm)}.competitor-count strong{color:var(--text)}.site-icon{width:32px;height:32px;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--text-muted);display:grid;place-items:center;flex:none;overflow:hidden}.site-icon img{width:100%;height:100%;object-fit:contain}.tags-input{display:flex;flex-wrap:wrap;gap:6px;min-height:42px;padding:6px var(--sp-2);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.tags-input.is-disabled{opacity:.6}.tags-input:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.tags-input input{flex:1;min-width:120px;border:0;padding:6px var(--sp-1);background:transparent;box-shadow:none}.tags-input input:focus{box-shadow:none}.tag-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-pill);background:var(--surface-sunken);border:1px solid var(--border);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.tag-chip button{border:0;background:none;color:var(--text-muted);cursor:pointer;font-size:var(--fs-md);line-height:1;padding:0}.tags-input-error{margin:6px 0 0;font-size:var(--fs-sm);color:var(--danger)}@media(max-width:900px){.unsaved-bar{bottom:calc(var(--mobile-nav-h) + var(--sp-4))}.auth-shell{padding:var(--sp-4)}.auth-layout{grid-template-columns:1fr;min-height:0}.auth-panel{padding:var(--sp-8) var(--sp-6) var(--sp-6);gap:var(--sp-5)}.auth-panel-copy h2{font-size:var(--fs-3xl)}.auth-points{display:none}.auth-card{padding:var(--sp-8) var(--sp-6) var(--sp-8)}.kpi-grid,.kpi-grid-4{grid-template-columns:repeat(2,1fr)}.overview-charts,.overview-charts-secondary{grid-template-columns:1fr}.overview-header-meta{align-items:flex-start;width:100%}.chart-frame-tall{height:240px}.permission-grid,.before-after{grid-template-columns:1fr}.page{padding:var(--sp-5) var(--sp-5) var(--sp-10)}.agent-shell{height:calc(100vh - var(--mobile-nav-h))}}@media(max-width:600px){.conversation{padding:var(--sp-6) var(--sp-4)}.message{max-width:90%}.kpi-grid,.kpi-grid-4{grid-template-columns:1fr}.audit-trail>div,.settings-dl>div{grid-template-columns:1fr;gap:2px}.review-actions{flex-direction:column-reverse}.review-actions .button,.theme-toggle{width:100%}.theme-toggle-option{flex:1;justify-content:center}}
