*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.table{display:table}.hidden{display:none}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #f4f7fb;--panel: #ffffff;--panel-2: #f8fafc;--text: #122033;--muted: #667085;--primary: #2563eb;--primary-2: #1d4ed8;--green: #16a34a;--orange: #f97316;--red: #dc2626;--purple: #7c3aed;--border: #d7dfeb;--shadow: 0 12px 30px rgba(15, 23, 42, .08);--shadow-soft: 0 4px 12px rgba(15, 23, 42, .06);--focus-ring: #facc15;--focus-shadow: rgba(250, 204, 21, .32);color:var(--text);background:var(--bg)}[data-theme=dark]{--bg: #0b1220;--panel: #111827;--panel-2: #172033;--text: #e5e7eb;--muted: #9ca3af;--primary: #60a5fa;--primary-2: #3b82f6;--green: #4ade80;--orange: #fb923c;--red: #f87171;--purple: #a78bfa;--border: #273449;--shadow: 0 20px 50px rgba(0, 0, 0, .35);--shadow-soft: 0 10px 28px rgba(0, 0, 0, .25);--focus-ring: #fde047;--focus-shadow: rgba(253, 224, 71, .28)}[data-text-scale=large]{font-size:112.5%}[data-text-scale=xlarge]{font-size:125%}[data-contrast=high]{--bg: #ffffff;--panel: #ffffff;--panel-2: #f8fafc;--text: #020617;--muted: #1e293b;--primary: #003cff;--primary-2: #0027b8;--green: #047857;--orange: #b45309;--red: #b91c1c;--purple: #5b21b6;--border: #0f172a;--shadow: none;--shadow-soft: none;--focus-ring: #ffbf00;--focus-shadow: rgba(255, 191, 0, .44)}[data-theme=dark][data-contrast=high]{--bg: #000000;--panel: #050505;--panel-2: #111111;--text: #ffffff;--muted: #f1f5f9;--primary: #7dd3fc;--primary-2: #38bdf8;--green: #86efac;--orange: #fdba74;--red: #fca5a5;--purple: #d8b4fe;--border: #ffffff;--focus-ring: #facc15;--focus-shadow: rgba(250, 204, 21, .42)}*{box-sizing:border-box;min-width:0}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:12px;left:12px;z-index:200;transform:translateY(-150%);border:2px solid var(--focus-ring);border-radius:8px;padding:10px 14px;background:var(--panel);color:var(--text);font-weight:900;box-shadow:0 0 0 5px var(--focus-shadow)}.skip-link:focus{transform:translateY(0)}:is(a,button,input,select,textarea,[role=button],[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 6px var(--focus-shadow)}[data-focus=enhanced] :is(a,button,input,select,textarea,[role=button],[tabindex]):focus-visible{outline-width:4px;outline-offset:4px}button,.button-like{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:10px 14px;background:var(--panel);color:var(--text);box-shadow:var(--shadow-soft);font:inherit;font-weight:750;cursor:pointer;line-height:1.25;white-space:normal}button.primary{border-color:var(--primary);background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff}button.danger{border-color:#dc262638;background:#fee2e2;color:#991b1b}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--panel-2);color:var(--text);font:inherit;outline:none;min-width:0}textarea{min-height:150px;resize:vertical}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere}th{color:var(--muted);font-size:11px;letter-spacing:.055em;text-transform:uppercase}.app-shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh}.app-shell.sidebar-compact{grid-template-columns:88px minmax(0,1fr)}.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px}.login-card{display:grid;width:min(100%,440px);gap:14px}.login-brand{margin-bottom:4px;color:var(--text)}.login-brand p{color:var(--muted)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;overflow:auto;padding:20px 16px;background:linear-gradient(180deg,rgba(37,99,235,.16),transparent 34%),#0f172a;color:#fff;box-shadow:8px 0 24px #0f172a1a}.brand{display:flex;align-items:center;gap:13px;margin-bottom:22px;padding:8px}.logo{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:#2563eb;box-shadow:0 8px 18px #2563eb47}.brand h1{margin:0;font-size:20px}.brand p,.hint{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.brand p{color:#cbd5e1;font-size:12px}.sidebar-toggle{width:36px;height:36px;min-height:36px;margin-left:auto;padding:0;border-color:#ffffff1f;background:#ffffff12;color:#dbeafe;box-shadow:none}.nav{display:grid;gap:18px}.nav-section{display:grid;gap:7px}.nav-section-title{padding:0 10px;color:#93a4bd;font-size:11px;font-weight:850;text-transform:uppercase}.nav-section-list{display:grid;gap:5px}.nav button{position:relative;justify-content:flex-start;min-height:42px;border-color:transparent;border-radius:8px;padding:10px 12px;background:transparent;color:#dbeafe;box-shadow:none}.nav button svg{flex:0 0 auto;color:#b8c7dd}.nav button.active,.nav button:hover{border-color:#ffffff14;background:#ffffff14;color:#fff}.nav button.active:before{content:"";position:absolute;inset:8px auto 8px 0;width:3px;border-radius:999px;background:linear-gradient(180deg,var(--primary),#14b8a6)}.nav button.active svg{color:#fff;filter:drop-shadow(0 0 8px rgba(96,165,250,.42))}.sidebar-footer{display:grid;gap:10px;margin-top:auto;padding-top:18px}.source-compact,.sidebar-summary{border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff1a}.source-compact{display:flex;align-items:center;gap:9px;min-height:38px;padding:9px 11px;color:#dbeafe;font-size:12px;font-weight:850}.source-dot{width:9px;height:9px;border-radius:999px;background:var(--orange);box-shadow:0 0 0 4px #f9731624}.source-compact.server .source-dot{background:var(--green);box-shadow:0 0 0 4px #16a34a24}.sidebar-summary{display:grid;gap:1px;padding:8px}.sidebar-summary div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:8px;padding:8px;background:#ffffff0a}.sidebar-summary span{color:#b8c7dd;font-size:12px}.sidebar-summary strong{color:#fff;font-size:12px;text-align:right}.sidebar-compact .sidebar{padding:16px 10px}.sidebar-compact .brand{flex-direction:column;gap:8px;margin-bottom:18px;padding:4px 0}.sidebar-compact .logo{width:42px;height:42px}.sidebar-compact .brand-copy,.sidebar-compact .nav-section-title,.sidebar-compact .nav-label,.sidebar-compact .source-label,.sidebar-compact .sidebar-summary span{display:none}.sidebar-compact .sidebar-toggle{margin-left:0}.sidebar-compact .nav{gap:12px}.sidebar-compact .nav button{justify-content:center;min-height:42px;padding:10px}.sidebar-compact .nav button.active:before{inset:9px auto 9px -2px}.sidebar-compact .source-compact{justify-content:center;padding:10px}.sidebar-compact .sidebar-summary{padding:6px}.sidebar-compact .sidebar-summary div{justify-content:center;padding:7px 4px}.sidebar-compact .sidebar-summary strong{font-size:11px}.main{width:100%;max-width:1520px;margin:0 auto;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar h2{margin:0;font-size:28px;line-height:1.1}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.inline-toolbar{margin-top:14px}.api-status{display:inline-flex;align-items:center;gap:7px;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:8px 12px;background:var(--panel);color:var(--muted);font-size:13px;font-weight:800;overflow-wrap:anywhere}.api-status.ok{color:var(--green)}.api-status.down{color:var(--orange)}.user-status{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-summary{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.45}.notification-button{position:relative}.notification-button.warning{border-color:#fed7aa;color:#9a3412}.notification-button.danger{border-color:#fecaca;color:#991b1b}.notification-badge{display:inline-grid;min-width:22px;height:22px;place-items:center;border-radius:999px;padding:0 6px;background:var(--primary);color:#fff;font-size:12px;font-weight:900}.notification-panel{position:fixed;top:88px;right:24px;z-index:80;display:grid;width:min(440px,calc(100vw - 48px));max-height:min(680px,calc(100svh - 120px));gap:14px;overflow:auto;border:1px solid rgba(37,99,235,.18);border-radius:8px;padding:16px;background:color-mix(in srgb,var(--panel) 96%,white);box-shadow:0 28px 70px #0f172a33}[data-theme=dark] .notification-panel{background:color-mix(in srgb,var(--panel) 94%,#020617)}.notification-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.notification-panel-head span,.notification-card span{color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.notification-panel-head strong{display:block;margin-top:4px;font-size:18px}.notification-list{display:grid;gap:10px}.notification-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px;padding:12px;background:var(--panel-2)}.notification-card.warning{border-left-color:var(--orange)}.notification-card.danger{border-left-color:var(--red)}.notification-card strong{display:block;margin-top:3px}.notification-card p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.35}.view-stack{display:grid;gap:16px}.hero-grid,.content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.premium-grid,.goal-grid,.document-vault-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.projection-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);gap:16px;border:1px solid rgba(37,99,235,.16);border-radius:8px;padding:22px;background:linear-gradient(135deg,#2563eb1f,#14b8a61a),var(--panel);box-shadow:var(--shadow)}.projection-hero span,.goal-card-header span{color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.projection-hero strong{display:block;margin-top:8px;font-size:38px;line-height:1.05}.projection-hero p{max-width:720px;margin:10px 0 0;color:var(--muted)}.projection-meter{display:grid;gap:8px}.assistant-command-center{display:grid;gap:16px}.assistant-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:16px;align-items:stretch;border:1px solid rgba(37,99,235,.16);border-radius:8px;padding:22px;background:linear-gradient(135deg,#2563eb21,#16a34a14),var(--panel);box-shadow:var(--shadow)}.assistant-hero span,.floating-assistant-head span{color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.assistant-hero h3{margin:8px 0;font-size:30px;line-height:1.08}.assistant-hero p{max-width:720px;margin:0;color:var(--muted)}.assistant-health{display:grid;align-content:center;gap:8px}.assistant-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:16px;align-items:start}.hero-card{min-height:185px;padding:22px;border-radius:8px;background:linear-gradient(135deg,#1d4ed8,#0f766e);color:#fff;box-shadow:0 18px 42px #0f172a29}.hero-card span{color:#dbeafe;font-weight:800}.hero-card strong{display:block;margin-top:8px;font-size:40px;line-height:1.05}.hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.hero-pills span{border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:9px 12px;background:#ffffff24;color:#fff;font-size:13px;overflow-wrap:anywhere}.panel{border:1px solid var(--border);border-radius:8px;padding:18px;background:linear-gradient(180deg,var(--panel),rgba(255,255,255,.94));box-shadow:var(--shadow);min-width:0}[data-theme=dark] .panel{background:linear-gradient(180deg,var(--panel),#0f172a)}.panel h3{margin:0 0 12px;font-size:17px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi{position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--primary)}.kpi.orange:before{background:var(--orange)}.kpi.green:before{background:var(--green)}.kpi.purple:before{background:var(--purple)}.kpi span{color:var(--muted);font-size:13px;font-weight:800}.kpi strong{display:block;margin-top:9px;font-size:28px;line-height:1.12}.kpi small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.stat-row{display:flex;justify-content:space-between;gap:12px;margin-top:10px;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--panel-2);min-width:0}.stat-row span,.stat-row strong,.kpi strong,.hero-card strong{overflow-wrap:anywhere}.state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calm-panel{box-shadow:var(--shadow-soft)}.chart-panel{min-height:340px}.alert,.ok-box{border-radius:8px;padding:13px;font-weight:800}.alert{border:1px solid #fed7aa;background:#fff3e8;color:#9a3412}.ok-box{border:1px solid #bbf7d0;background:#e9fbef;color:#166534}.form-panel{display:grid;gap:12px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.form-grid.compact{grid-template-columns:repeat(2,minmax(0,280px))}.field{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.field.wide{grid-column:span 2}.form-error{margin:0;color:var(--red);font-weight:800}.table-wrap{overflow:auto;padding:0}.table-wrap>h3{margin:0;padding:16px 16px 0}.actions{display:inline-flex;align-items:center;gap:8px}.pill{display:inline-flex;border:1px solid rgba(37,99,235,.16);border-radius:8px;padding:6px 10px;background:#2563eb1a;color:var(--primary);font-size:12px;font-weight:800}.progress{width:120px;max-width:100%;height:9px;overflow:hidden;border-radius:999px;background:var(--panel-2);border:1px solid var(--border)}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(135deg,var(--primary),var(--green))}.goal-card{display:grid;gap:14px}.goal-card-header,.goal-progress{display:flex;align-items:center;justify-content:space-between;gap:12px}.goal-card-header h3{margin-top:4px}.goal-progress .progress{flex:1}.action-list,.brief-list,.issue-list,.timeline-list{display:grid;gap:9px}.action-list p,.brief-list p,.issue-item,.timeline-item{margin:0;border:1px solid var(--border);border-radius:8px;padding:11px 12px;background:var(--panel-2)}.issue-item{display:grid;gap:3px}.issue-item em{color:var(--muted);font-size:11px;font-style:normal;font-weight:900;text-transform:uppercase}.issue-item span{color:var(--muted);font-size:13px}.issue-item.warning{border-color:#fed7aa}.issue-item.danger{border-color:#fecaca}.timeline-item{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:10px}.timeline-item span,.timeline-item em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.timeline-item span{display:grid;gap:2px}.timeline-item small{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.timeline-item.blue{border-left:4px solid var(--primary)}.timeline-item.green{border-left:4px solid var(--green)}.timeline-item.orange{border-left:4px solid var(--orange)}.timeline-item.red{border-left:4px solid var(--red)}.timeline-item.past{opacity:.72}.timeline-item.past span,.timeline-item.past strong,.date-past{color:var(--muted);text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:color-mix(in srgb,var(--red) 68%,transparent)}.icon-button{min-height:34px;border-radius:8px;padding:7px 9px;box-shadow:none}.assistant-log{display:grid;max-height:360px;overflow:auto;gap:10px}.assistant-prompts,.assistant-docs{display:grid;gap:8px;margin-top:12px}.voice-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.assistant-prompts{grid-template-columns:repeat(2,minmax(0,1fr))}.assistant-prompts button,.assistant-docs button,.voice-controls button{min-height:38px;justify-content:flex-start;text-align:left;box-shadow:none}button:disabled{cursor:not-allowed;opacity:.55}.assistant-docs button{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.assistant-docs span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-card{display:grid;gap:10px}.draft-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--panel-2)}.draft-row span{color:var(--muted);font-size:12px;font-weight:800}.message{margin:0;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--panel-2)}.floating-assistant{position:fixed;right:24px;bottom:24px;z-index:60;display:grid;justify-items:end;gap:12px;pointer-events:none}.floating-assistant-button,.floating-assistant-panel{pointer-events:auto}.floating-assistant-button{width:54px;height:54px;min-height:54px;border-color:#2563eb47;border-radius:999px;padding:0;background:linear-gradient(135deg,var(--primary),#0f766e);color:#fff;box-shadow:0 18px 40px #2563eb47}.floating-assistant.open .floating-assistant-button{box-shadow:0 16px 34px #0f172a2e}.floating-assistant-panel{width:min(420px,calc(100vw - 48px));max-height:min(680px,calc(100svh - 112px));overflow:auto;border:1px solid rgba(37,99,235,.18);border-radius:8px;padding:16px;background:color-mix(in srgb,var(--panel) 94%,white);box-shadow:0 28px 70px #0f172a33}[data-theme=dark] .floating-assistant-panel{background:color-mix(in srgb,var(--panel) 92%,#020617)}.floating-assistant-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.floating-assistant-head strong{display:block;margin-top:3px;font-size:17px}.floating-assistant-head button{width:34px;height:34px;min-height:34px;padding:0;box-shadow:none}.floating-assistant-panel textarea{min-height:104px}.floating-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.floating-quick-actions button{min-height:34px;padding:8px 10px;box-shadow:none;font-size:12px}.floating-draft{display:grid;gap:8px;margin-top:12px;border:1px solid rgba(37,99,235,.2);border-radius:8px;padding:12px;background:linear-gradient(135deg,#2563eb1a,#16a34a14)}.floating-draft>span{color:var(--muted);font-size:13px}.floating-log{display:grid;gap:8px;margin-top:12px}.floating-log p{margin:0;border:1px solid var(--border);border-radius:8px;padding:10px;background:var(--panel-2);color:var(--muted);font-size:13px}.dropzone{display:grid;min-height:180px;place-items:center;gap:8px;border:2px dashed var(--border);border-radius:8px;padding:28px;background:var(--panel-2);color:var(--muted);text-align:center;cursor:pointer}.compact-dropzone{min-height:112px}.document-vault-card{display:grid;gap:12px}.document-vault-card .stat-row{min-width:0}.document-vault-card .stat-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-email-box,.notification-settings,.toggle-list{display:grid;gap:10px}.document-email-box{border-top:1px solid var(--border);padding-top:12px}.document-email-box textarea{min-height:78px}.check-row{display:flex;align-items:center;gap:10px;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:9px 11px;background:var(--panel-2);color:var(--text);font-weight:800}.check-row input{width:18px;min-height:18px;flex:0 0 auto;accent-color:var(--primary)}.settings-row{display:grid;grid-template-columns:1fr 180px;gap:12px;margin-bottom:10px}.accessibility-settings,.settings-group{display:grid;gap:12px}.settings-label{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.segmented-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.segmented-control button{display:grid;justify-items:start;gap:3px;min-height:62px;box-shadow:none;text-align:left}.segmented-control button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--panel))}.segmented-control button span{color:var(--muted);font-size:12px;font-weight:700}[data-contrast=high] .panel,[data-theme=dark][data-contrast=high] .panel{background:var(--panel)}[data-contrast=high] .hero-card,[data-contrast=high] .assistant-hero,[data-contrast=high] .projection-hero,[data-contrast=high] .floating-draft{background:var(--panel);color:var(--text)}[data-contrast=high] .hero-card span,[data-contrast=high] .hero-pills span{color:var(--text)}[data-contrast=high] .hero-pills span,[data-contrast=high] .pill,[data-contrast=high] .alert,[data-contrast=high] .ok-box{border-color:var(--border);background:var(--panel-2)}[data-density=simple] .hero-grid,[data-density=simple] .content-grid,[data-density=simple] .premium-grid,[data-density=simple] .goal-grid,[data-density=simple] .document-vault-grid,[data-density=simple] .assistant-grid,[data-density=simple] .projection-hero,[data-density=simple] .state-grid,[data-density=simple] .kpi-grid{grid-template-columns:1fr}[data-density=simple] .panel,[data-density=simple] .hero-card,[data-density=simple] .assistant-hero,[data-density=simple] .projection-hero{padding:22px}[data-density=simple] .premium-grid,[data-density=simple] .content-grid,[data-density=simple] .view-stack{gap:20px}[data-density=simple] .kpi-grid{display:none}[data-density=simple] .chart-panel .recharts-responsive-container{min-height:220px}.empty-state{max-width:720px}.recurrence-page{gap:18px}.recurrence-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:16px;align-items:center;border-color:#2563eb2e;background:linear-gradient(135deg,#2563eb1a,#16a34a14),var(--panel)}.recurrence-hero span,.recurrence-group-head span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.recurrence-hero h3{margin:6px 0 0;font-size:30px;line-height:1.1}.recurrence-hero-actions{display:grid;justify-items:stretch;gap:10px}.generation-preview{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--panel-2);color:var(--muted);font-size:13px;font-weight:850;text-align:center}.recurrence-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.recurrence-kind-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.recurrence-kind-grid button{display:grid;justify-items:start;gap:4px;min-height:66px;box-shadow:none;text-align:left}.recurrence-kind-grid button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--panel))}.recurrence-kind-grid span{color:var(--muted);font-size:12px;font-weight:700}.recurrence-detail-grid{grid-template-columns:.85fr 1.15fr}.recurrence-preview-panel{display:grid;align-content:start;gap:10px}.recurrence-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.recurrence-calendar-item{display:grid;gap:4px;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px;padding:12px;background:var(--panel-2)}.recurrence-calendar-item span,.recurrence-calendar-item em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.recurrence-calendar-item b{font-size:18px}.recurrence-calendar-item.generated{border-left-color:var(--green)}.recurrence-calendar-item.late{border-left-color:var(--red)}.recurrence-calendar-item.paused,.recurrence-calendar-item.out{border-left-color:var(--muted);opacity:.76}.recurrence-groups{display:grid;gap:16px}.recurrence-group{display:grid;gap:14px}.recurrence-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.recurrence-group-head h3{margin-top:4px}.recurrence-group-head>strong{font-size:22px;white-space:nowrap}.recurrence-card-list{display:grid;gap:10px}.recurrence-card{display:grid;gap:12px;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px;padding:14px;background:var(--panel-2)}.recurrence-card.generated{border-left-color:var(--green)}.recurrence-card.late{border-left-color:var(--red)}.recurrence-card.paused,.recurrence-card.out{border-left-color:var(--muted);opacity:.82}.recurrence-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.recurrence-card-main h4{margin:8px 0 4px;font-size:18px}.recurrence-card-main p{margin:0;color:var(--muted);font-size:13px}.recurrence-card-main>strong{font-size:22px;text-align:right;white-space:nowrap}.recurrence-card-meta{display:flex;flex-wrap:wrap;gap:8px}.recurrence-card-meta>span,.status-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:8px;padding:7px 9px;background:var(--panel);color:var(--muted);font-size:12px;font-weight:850}.status-chip.generated{color:var(--green)}.status-chip.late{color:var(--red)}.status-chip.upcoming{color:var(--primary)}.recurrence-actions{display:flex;flex-wrap:wrap}.recurrence-actions button{min-height:36px;padding:8px 10px;box-shadow:none;font-size:13px}@media (max-width: 900px){.table-wrap{overflow:visible;padding:12px}.table-wrap>h3{padding:0}table,thead,tbody,tr,td{display:block;width:100%}thead{display:none}tbody{display:grid;gap:10px}tr{border:1px solid var(--border);border-radius:8px;padding:8px;background:var(--panel)}td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding:9px 4px;text-align:right;word-break:break-word;white-space:normal}td:last-child{border-bottom:0}td:before{content:attr(data-label);flex:0 0 42%;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.04em;text-align:left;text-transform:uppercase}td .actions{justify-content:flex-end}.progress{width:100%;min-width:120px}}@media (max-width: 1100px){.app-shell,.app-shell.sidebar-compact{grid-template-columns:1fr}.sidebar{position:sticky;z-index:20;height:auto;max-height:none;padding:12px}.sidebar-toggle,.sidebar-footer,.nav-section-title{display:none}.brand{margin-bottom:12px;padding:0}.nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.nav-section,.nav-section-list{display:contents}.nav::-webkit-scrollbar{display:none}.nav button{flex:0 0 auto;white-space:nowrap}.hero-grid,.assistant-hero,.assistant-grid,.recurrence-hero,.recurrence-summary-grid,.recurrence-detail-grid,.premium-grid,.goal-grid,.document-vault-grid,.content-grid,.kpi-grid,.form-grid{grid-template-columns:1fr 1fr}}@media (max-width: 680px){body{background:var(--panel-2)}button,.button-like,input,select,textarea{min-height:44px}.app-shell{min-height:100svh}.sidebar{position:fixed;inset:auto 0 0;z-index:70;height:auto;padding:8px;border-top:1px solid rgba(255,255,255,.1);border-bottom:0;box-shadow:0 -12px 32px #0f172a2e}.brand,.sidebar-footer{display:none}.main{padding:12px 12px 132px}.nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;overflow:visible;padding:0}.nav-section,.nav-section-list{display:contents}.nav button{min-width:0;min-height:52px;flex:initial;flex-direction:column;justify-content:center;gap:4px;padding:7px 2px;font-size:10px;line-height:1.1;white-space:normal}.nav button.active:before{inset:auto 14px 0;width:auto;height:3px}.nav-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.topbar,.hero-grid,.assistant-hero,.assistant-grid,.recurrence-hero,.recurrence-summary-grid,.recurrence-detail-grid,.premium-grid,.goal-grid,.document-vault-grid,.projection-hero,.state-grid,.content-grid,.kpi-grid,.form-grid,.form-grid.compact,.settings-row{grid-template-columns:1fr}.topbar{display:grid;gap:12px}.topbar h2{font-size:22px}.topbar>.toolbar{display:flex;width:calc(100vw - 24px);max-width:100%;flex-wrap:nowrap;align-items:center;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.topbar>.toolbar::-webkit-scrollbar{display:none}.topbar>.toolbar>*,.topbar>.toolbar button,.topbar>.toolbar .button-like,.topbar>.toolbar .api-status{width:auto;flex:0 0 auto;min-height:38px;padding:8px 10px;font-size:12px;box-shadow:none;white-space:nowrap}.topbar>.toolbar .api-status{gap:6px}.topbar>.toolbar button,.topbar>.toolbar .button-like{max-width:150px}.notification-panel{inset:86px 12px auto;width:auto;max-height:calc(100svh - 210px);padding:14px}.notification-panel-head,.notification-card{grid-template-columns:1fr}.notification-panel-head{display:grid}.inline-toolbar{display:flex;width:100%;flex-wrap:wrap}.assistant-prompts,.recurrence-kind-grid,.recurrence-calendar{grid-template-columns:1fr}.recurrence-card-main,.recurrence-group-head{display:grid}.recurrence-card-main>strong,.recurrence-group-head>strong{text-align:left;white-space:normal}.assistant-hero{padding:16px}.assistant-hero h3{font-size:24px}.assistant-health{gap:6px}.voice-controls{grid-template-columns:1fr}.assistant-docs button{grid-template-columns:auto minmax(0,1fr)}.assistant-docs button strong{grid-column:2;font-size:12px}.projection-hero strong{font-size:30px}.timeline-item{grid-template-columns:1fr;gap:4px}.view-stack{gap:12px}.panel{padding:14px;box-shadow:var(--shadow-soft)}.floating-assistant{right:12px;bottom:100px;left:12px}.floating-assistant-button{width:50px;height:50px;min-height:50px}.floating-assistant-panel{width:100%;max-height:min(72svh,620px);padding:14px}.floating-quick-actions{display:grid;grid-template-columns:1fr}.hero-card{min-height:auto;padding:16px}.hero-card strong{font-size:30px}.field.wide{grid-column:span 1}.kpi strong{font-size:24px}.chart-panel{min-height:280px}.table-wrap{overflow:visible;padding:12px}.table-wrap>h3{padding:0}table,thead,tbody,tr,td{display:block;width:100%}thead{display:none}tbody{display:grid;gap:10px}tr{border:1px solid var(--border);border-radius:8px;padding:8px;background:var(--panel)}td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding:9px 4px;text-align:right;word-break:break-word;white-space:normal}td:last-child{border-bottom:0}td:before{content:attr(data-label);flex:0 0 42%;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.04em;text-align:left;text-transform:uppercase}td .actions{justify-content:flex-end}.progress{width:100%;min-width:120px}.settings-row{gap:8px}}
