@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";:root{--surface-deep:#0b1220;--glow-color-1:#785a1447;--glow-color-2:#143c782e;--color-primary:#1e72d4;--color-primary-hover:#5497d6;--color-primary-active:#1a5fb0;--color-primary-bright:#2580e8;--color-primary-soft:#1e72d41f;--color-primary-hard:#1e72d480;--color-primary-soft-hover:#1e72d429;--logo-accent:#2072ca;--color-base:#334155;--cecp-control:#2072ca;--cecp-efficiency:#34d399;--cecp-cost:#c8a96a;--cecp-protection:#f87171;--cat-pill-bg:#1b2b4b;--cat-pill-border:#3d5a7a;--cat-pill-text:#fff;--cat-foundation-bg:#1a2740;--cat-foundation-border:#2f5c96;--cat-foundation-text:#9cc3e8;--cat-foundation-accent:#1e72d4;--cat-foundation-tint:#1e72d414;--cat-spousal-bg:#16302a;--cat-spousal-border:#2e7a60;--cat-spousal-text:#5fd79b;--cat-spousal-accent:#34d399;--cat-spousal-tint:#34d39914;--cat-advanced-bg:#302718;--cat-advanced-border:#9b5e14;--cat-advanced-text:#e8c242;--cat-advanced-accent:#f59e0b;--cat-advanced-tint:#f59e0b14;--cat-protection-bg:#241f38;--cat-protection-border:#534ab7;--cat-protection-text:#a99ff0;--cat-protection-accent:#a99ff0;--cat-protection-tint:#a99ff014;--text-primary:#fff;--text-body:#fffc;--text-secondary:#ffffff8c;--text-tertiary:#ffffff6b;--text-muted:#fff6;--text-faint:#ffffff47;--text-disabled:#fff6;--text-accent:#2580e8;--text-inverse:#1a1a2e;--text-placeholder:#8b93a4;--surface-primary:#0d1625;--surface-primary-gradient:#101726d1;--surface-header-accent:#041c38;--surface-secondary:#0a101c8c;--surface-secondary-transparent:#0a101c8c;--surface-tertiary:#ffffff0f;--surface-elevated:#161e30d1;--surface-hover:#ffffff0d;--surface-overlay:#06090eb8;--surface-label:#ffffff0f;--surface-canvas:#0d1119;--surface-header:#0a101cd9;--surface-sidebar:#0a101ce0;--surface-modal:#141924;--surface-field:#0e1220;--surface-input-white:#fff;--surface-disabled:#232a38;--overlay-fill-1:#ffffff14;--overlay-hover-1:#ffffff1a;--border-primary:#ffffff14;--border-muted:#ffffff12;--border-soft:#ffffff0d;--border-input:#ffffff1a;--border-modal:#ffffff1f;--border-medium:#ffffff1f;--border-strong:#ffffff24;--border-default:#ffffff24;--border-focus:#1e72d48c;--border-focus-ring:#1e72d480;--color-success:#22c55e;--color-success-soft:#22c55e1a;--text-success:#4ade80;--color-warning:#f59e0b;--color-warning-soft:#f59e0b1a;--text-warning:#fbb040;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-danger-soft:#ef444440;--text-danger:#f87171;--danger:#e5574e;--danger-soft:#e5574e24;--oppt-bg-lead:#1e72d424;--oppt-fg-lead:#2580e8;--oppt-bg-prospect:#a2f91624;--oppt-fg-prospect:#b8fb3c;--oppt-bg-opportunity:#f7d15524;--oppt-fg-opportunity:#fafc84;--status-new-bg:#14b8a629;--status-new-fg:#2dd4bf;--status-new-border:#14b8a640;--status-draft-bg:#eab30829;--status-draft-fg:#fde047;--status-draft-border:#eab30840;--status-plangen-bg:#6c63ff2e;--status-plangen-fg:#9b95ff;--status-plangen-border:#6c63ff40;--status-awaiting-bg:#f59e0b2e;--status-awaiting-fg:#fbb040;--status-awaiting-border:#f59e0b40;--status-docspending-bg:#f5b44424;--status-docspending-fg:#f5b544;--status-completed-bg:#64748b2e;--status-completed-fg:#94a3b8;--status-completed-border:#64748b40;--status-default-bg:#47556929;--status-default-fg:#64748b;--status-default-border:#47556933;--priority-critical:#fc8181;--priority-high:#f87171;--priority-medium:#fcd34d;--priority-low:#2580e8;--accent:#2580e8;--accent-link:#2580e8;--accent-soft-bg:#1e72d414;--accent-soft-bg-strong:#1e72d429;--status-docspending-border:#f5b4444d;--version-draft-bg:#e8c24229;--version-draft-fg:#e8c242;--status-score-fg:var(--accent-link);--status-score-pass-fg:#34d399;--status-score-glow:#5347fd40;--status-score-glow-0:#4759fd00;--status-score-pass-glow:#34d39940;--status-score-pass-glow-0:#34d39900;--button-primary-bg:var(--color-primary);--button-primary-bg-hover:var(--color-primary-hover);--button-primary-text:#fff;--button-ghost-bg:var(--surface-tertiary);--button-ghost-bg-hover:var(--overlay-hover-1);--button-ghost-text:var(--text-body);--button-danger-bg:var(--color-danger-soft);--button-danger-bg-hover:var(--color-danger-hover);--button-danger-text:#fff;--button-danger-text-hover:#fff;--button-disabled-bg:var(--surface-disabled);--button-disabled-text:var(--text-faint);--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-dropdown:0 12px 32px #00000080;--shadow-lg:0 12px 32px #00000080;--shadow-modal:0 24px 60px #0009;--overlay-backdrop:#06090eb8;--fs-xs:10px;--fs-sm:12px;--fs-md:14px;--fs-lg:15px;--fs-xl:16px;--fs-2xl:18px;--fs-3xl:20px;--fs-4xl:24px;--fs-5xl:32px;--fs-6xl:40px;--spacing-xxs:.1rem;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--radius-xs:4px;--radius-sm:4px;--radius-md:4px;--radius-lg:4px;--radius-xl:9999px;--transition-fast:.15s ease;--transition-base:.2s ease;--font-body:"DM Sans", "Inter", -apple-system, sans-serif;--font-display:"Playfair Display", serif;--sidebar-collapsed-width:72px;--sidebar-expanded-width:220px;--header-height:64px}:root[data-theme=light]{--surface-deep:#e7ecf3;--glow-color-1:#785a1429;--glow-color-2:#143c781a;--color-primary:#1e72d4;--color-primary-hover:#1a5fb0;--color-primary-active:#164e91;--color-primary-bright:#1a5fb0;--color-primary-soft:#1e72d41a;--color-primary-hard:#1e72d480;--color-primary-soft-hover:#1e72d429;--logo-accent:#2072ca;--color-base:#64748b;--cecp-control:#1e72d4;--cecp-efficiency:#10b981;--cecp-cost:#a8783a;--cecp-protection:#dc2626;--cat-pill-bg:#e7ecf5;--cat-pill-border:#c2cfe0;--cat-pill-text:#1e293b;--cat-foundation-bg:#e4effb;--cat-foundation-border:#8fbce8;--cat-foundation-text:#0f3d73;--cat-foundation-accent:#1e72d4;--cat-foundation-tint:#1e72d40f;--cat-spousal-bg:#e1f5ec;--cat-spousal-border:#6fc79e;--cat-spousal-text:#0b6b45;--cat-spousal-accent:#10b981;--cat-spousal-tint:#10b9810f;--cat-advanced-bg:#fbf0de;--cat-advanced-border:#d79a3d;--cat-advanced-text:#7a4a10;--cat-advanced-accent:#b45309;--cat-advanced-tint:#f59e0b14;--cat-protection-bg:#eceafb;--cat-protection-border:#9e93e0;--cat-protection-text:#4338a0;--cat-protection-accent:#6d5fd6;--cat-protection-tint:#6d5fd614;--text-primary:#0f172a;--text-body:#0f172ad1;--text-secondary:#0f172a99;--text-tertiary:#0f172a75;--text-muted:#0f172a75;--text-faint:#0f172a52;--text-disabled:#0f172a61;--text-accent:#1a5fb0;--text-inverse:#fff;--text-placeholder:#94a3b8;--surface-primary:#eef2f8;--surface-primary-gradient:#ffffffdb;--surface-secondary:#e2e8f08c;--surface-secondary-transparent:#e2e8f08c;--surface-tertiary:#0f172a0d;--surface-elevated:#ffffffeb;--surface-hover:#0f172a0a;--surface-overlay:#0f172a73;--surface-label:#0f172a0f;--surface-canvas:#f8fafc;--surface-header:#ffffffd9;--surface-sidebar:#ffffffe6;--surface-modal:#fff;--surface-field:#f8fafc;--surface-input-white:#fff;--surface-disabled:#e2e8f0;--overlay-fill-1:#0f172a14;--overlay-hover-1:#0f172a0f;--border-primary:#0f172a1a;--border-muted:#0f172a14;--border-soft:#0f172a0f;--border-input:#0f172a29;--border-modal:#0f172a1f;--border-medium:#0f172a24;--border-strong:#0f172a2e;--border-default:#0f172a2e;--border-focus:#1e72d48c;--border-focus-ring:#1e72d480;--color-success:#22c55e;--color-success-soft:#22c55e1f;--text-success:#16a34a;--color-warning:#f59e0b;--color-warning-soft:#f59e0b1f;--text-warning:#b45309;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-danger-soft:#ef444424;--text-danger:#dc2626;--danger:#e5574e;--danger-soft:#e5574e1f;--oppt-bg-lead:#1e72d41f;--oppt-fg-lead:#1a5fb0;--oppt-bg-prospect:#65a30d24;--oppt-fg-prospect:#4d7c0f;--oppt-bg-opportunity:#ca8a0424;--oppt-fg-opportunity:#a16207;--status-new-bg:#14b8a624;--status-new-fg:#0d9488;--status-new-border:#14b8a647;--status-draft-bg:#eab30824;--status-draft-fg:#a16207;--status-draft-border:#eab30847;--status-plangen-bg:#6c63ff24;--status-plangen-fg:#5b21b6;--status-plangen-border:#6c63ff47;--status-awaiting-bg:#f59e0b24;--status-awaiting-fg:#b45309;--status-awaiting-border:#f59e0b47;--status-docspending-bg:#f5b44424;--status-docspending-fg:#92660d;--status-completed-bg:#64748b24;--status-completed-fg:#475569;--status-completed-border:#64748b47;--status-default-bg:#4755691f;--status-default-fg:#475569;--status-default-border:#4755693d;--priority-critical:#b91c1c;--priority-high:#dc2626;--priority-medium:#b45309;--priority-low:#1a5fb0;--accent:#1a5fb0;--accent-link:#1a5fb0;--accent-soft-bg:#1e72d414;--accent-soft-bg-strong:#1e72d429;--status-docspending-border:#f5b44459;--version-draft-bg:#e8c2422e;--version-draft-fg:#92660d;--status-score-fg:var(--accent-link);--status-score-pass-fg:#059669;--status-score-glow:#5347fd2e;--status-score-glow-0:#4759fd00;--status-score-pass-glow:#34d3992e;--status-score-pass-glow-0:#34d39900;--shadow-sm:0 1px 2px #0f172a14;--shadow-md:0 4px 12px #0f172a1a;--shadow-dropdown:0 12px 32px #0f172a24;--shadow-lg:0 12px 32px #0f172a24;--shadow-modal:0 24px 60px #0f172a33;--overlay-backdrop:#0f172a73}body{color:var(--text-primary);isolation:isolate;background-blend-mode:screen;font-size:15px;line-height:1.6;font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-color:#031424;background-image:radial-gradient(circle at 0 0,#2986b480 0%,#0000 45%);margin:0;position:relative;overflow:hidden}body:before,body:after{content:"";filter:blur(120px);mix-blend-mode:screen;z-index:-1;border-radius:50%;position:absolute}body:before{z-index:-1;background:radial-gradient(circle at 10% 10%,#2a82adcc 15%,#0000 75%);width:65%;height:100%;top:-30%;left:-10%}body:after{z-index:-2;background:radial-gradient(circle at 20% 20%,#80913780 25%,#0000 75%);width:45%;height:55%;top:-5%;left:15%}:root[data-theme=light] body{background-blend-mode:normal;background-color:#eef2f8;background-image:radial-gradient(circle at 0 0,#93c5fd59 0%,#0000 45%)}:root[data-theme=light] body:before{mix-blend-mode:multiply;background:radial-gradient(circle at 10% 10%,#93c5fd73 15%,#0000 75%)}:root[data-theme=light] body:after{mix-blend-mode:multiply;background:radial-gradient(circle at 20% 20%,#bed28259 25%,#0000 75%)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700}h1{font-size:var(--fs-4xl);letter-spacing:-.02em}h2{font-size:var(--fs-3xl)}h3{font-size:var(--fs-2xl);font-weight:600}h4{font-size:var(--fs-md);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600}*{box-sizing:border-box}.rot{transition:transform .2s}.rot.rot-90{transform:rotate(90deg)}.rot.rot-270{transform:rotate(270deg)}.rot.rot-180{transform:rotate(180deg)}div{--div-width:auto;--div-height:auto;--div-padding:0;width:var(--div-width);height:var(--div-height);padding:var(--div-padding)}div.flex{display:flex}div.flex.j-stretch{justify-content:stretch}div.flex.col{flex-direction:column;display:flex}div.flex.center{justify-content:center;align-items:center}div.flex.j-space-between{justify-content:space-between}div.flex.a-center{align-items:center}div.flex.j-center{justify-content:center}div.flex.a-baseline{align-items:baseline}div.flex.gap-small{gap:var(--spacing-sm)}div.flex.gap-large{gap:var(--spacing-lg)}div.flex.gap-xlarge{gap:var(--spacing-xl)}div.flex.a-flex-end{align-items:flex-end}.icon{justify-content:center;align-items:center;display:inline-flex}.icon.accent{color:var(--color-primary-hover)}.icon.danger{color:var(--danger)}.icon.success{color:var(--color-success)}.icon.icon-32{width:32px;height:32px}.icon.icon-xxs{scale:.4}.icon.icon-xs{scale:.5}.icon.icon-sm{scale:.75}button{color:var(--button-primary-text);font-family:var(--font-body);font-size:var(--fs-md);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity 25ms ease-in-out;background:0 0;border:none;justify-content:center;align-items:center;display:flex}button.btn-primary{background:var(--button-primary-bg);font-size:var(--fs-md);gap:var(--spacing-sm);height:36px;padding:0 18px;font-weight:600}button.btn-icon{border:1px solid var(--border-primary);background:var(--surface-elevated);width:36px;height:36px}button:hover{background:var(--button-primary-bg-hover)}button.ghost:hover{background:var(--button-ghost-bg-hover);border-color:var(--border-strong);color:var(--text-primary)}button.no-hover:hover{background:0 0}button:disabled{opacity:.5;pointer-events:none}button:active{opacity:.7}button.btn-secondary{justify-content:center;align-items:center;gap:var(--spacing-sm);background:var(--surface-elevated);border:1px solid var(--border-primary);color:var(--text-body);height:36px;padding:0 14px;display:inline-flex}.icon.icon-md{scale:1.5}.icon.icon-lg{scale:2}button.btn-secondary:hover{background:var(--overlay-hover-1);border-color:var(--border-strong)}button.btn-secondary.inactive:hover{background:var(--surface-elevated);border:1px solid var(--border-primary)}button.btn-secondary.active{background:var(--overlay-hover-1)}button.btn-secondary.inactive{background:0 0;border:none}button.ghost{background:var(--button-ghost-bg);color:var(--button-ghost-text);border:none}button.transparent{color:var(--text-secondary);background:0 0}button.rounded{border-radius:var(--radius-xl)}button.danger{background:var(--button-danger-bg);color:var(--button-danger-text)}button.danger:hover{background:var(--button-danger-bg-hover);color:var(--button-danger-text-hover)}button.fg-accent{color:var(--accent)}.flex-1{flex:1}*{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent}:root[data-theme=light] *{scrollbar-color:#0f172a2e transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-xl);background:#ffffff26;transition:background-color .15s,border-color .15s}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:#0f172a2e}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}::-webkit-scrollbar-thumb:active{background:var(--color-primary-hover)}::-webkit-scrollbar-corner{background:0 0}.cv--control{--cv-color:var(--cecp-control);--cv-bg:#1e72d429}.cv--efficiency{--cv-color:var(--cecp-efficiency);--cv-bg:#34d39929}.cv--cost{--cv-color:var(--cecp-cost);--cv-bg:#f5b44429}.cv--protection{--cv-color:var(--cecp-protection);--cv-bg:#a99ff029}.cv--neutral{--cv-color:var(--text-tertiary);--cv-bg:#ffffff0a}:root[data-theme=light] .cv--neutral{--cv-bg:#0f172a0a}.status-pill{border-radius:var(--radius-xl);font-size:var(--fs-sm);text-transform:uppercase;white-space:nowrap;justify-content:center;align-items:center;padding:4px 12px;font-weight:900;display:inline-flex}.avatar{color:#fff;background:var(--color-base);width:36px;height:36px;font-weight:600;font-size:var(--fs-xs);border-radius:50%;justify-content:center;align-items:center;display:flex}.avatar.large{width:44px;height:44px;font-size:var(--fs-3xl)}.input.inactive{background:0 0}.input.inactive:hover{background:var(--surface-hover)}.input{border-radius:var(--radius-sm);border:1px solid var(--border-input);background:var(--surface-tertiary);caret-color:var(--text-primary);color:var(--text-primary);padding:var(--spacing-sm);font-size:var(--fs-md);font-family:var(--font-body);width:100%}.input.inactive{background:0 0;border:none}.input:focus{border:1px solid var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft-bg);outline:none}.input.full{width:100%}.input:disabled{background:var(--surface-secondary);color:var(--text-tertiary);border-color:var(--border-input);cursor:not-allowed;opacity:.7}.input-affix{align-items:center;display:inline-flex;position:relative}.input-affix .affix{color:var(--text-tertiary);font-size:var(--fs-md);pointer-events:none;position:absolute}.input-affix .suffix{color:var(--text-tertiary);font-size:var(--fs-md);position:absolute;right:0}.input-affix.prefix .input{padding-left:1.75rem}.input-affix.prefix .affix{left:var(--spacing-sm)}.input-affix.suffix .input{padding-right:1.75rem}.input-affix.suffix .affix{right:var(--spacing-sm)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input::placeholder{color:var(--text-placeholder)}.tag-box{background:var(--surface-hover);color:var(--text-muted);padding:var(--spacing-xxs) var(--spacing-xs);border-radius:var(--radius-sm);text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:var(--spacing-xxs);text-align:center;flex-direction:row;justify-content:center;align-self:center;align-items:center;font-weight:600;display:flex}.toast{justify-content:center;align-items:center;gap:var(--spacing-sm);max-width:400px;font-size:var(--fs-xs);background:var(--surface-elevated);color:var(--text-body);border-radius:var(--radius-sm);border:1px solid var(--border-primary);box-shadow:var(--shadow-dropdown);z-index:9999;padding:11px 20px;animation:.2s toast;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes toast{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.modal-backdrop{background:var(--overlay-backdrop);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--border-focus-ring);outline-offset:1px}@keyframes pe-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.logo{padding-left:var(--spacing-xs);flex:1;align-items:center;width:64px;height:25px;display:flex;position:relative}.logo.collapsed{width:24px;height:25px}.logo>svg{opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;position:absolute;transform:translate(-8px)}.logo>svg.collapsed{opacity:1;transform:translate(0)}.login-page{background:var(--surface-secondary,#0b1220);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.login-card{gap:var(--spacing-sm);width:360px;padding:var(--spacing-xl);background:var(--surface-primary);border-radius:var(--radius-md);flex-direction:column;display:flex;box-shadow:0 4px 80px 1px #00000059}.login-subtitle{color:var(--text-secondary);font-size:var(--fs-sm);margin:0}.login-divider{border:none;border-top:1px solid var(--border-primary);margin:var(--spacing-sm) 0;width:100%}.login-form{gap:var(--spacing-sm);flex-direction:column;display:flex}.btn-primary.full,.btn-secondary.full{width:100%}.login-error{color:var(--color-danger);font-size:var(--fs-sm)}.login-back{color:var(--text-secondary);font-size:var(--fs-sm);align-self:center}.main-layout{--sidebar-width:var(--sidebar-expanded-width);grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--header-height) minmax(0, 1fr);height:100vh;transition:grid-template-columns var(--transition-base);grid-template-areas:"sidebar header""sidebar content";display:grid;overflow:hidden}.main-layout.sidebar-collapsed{--sidebar-width:var(--sidebar-collapsed-width)}.main-content{grid-area:content;overflow:auto}.main-sidebar{background:var(--surface-sidebar);border-right:1px solid var(--border-muted);grid-area:sidebar}.main-sidebar-c-btn:hover{background:var(--surface-hover)}.main-header{background:var(--surface-header);border-bottom:1px solid var(--border-primary);flex-shrink:0;grid-area:header;justify-content:space-between;align-items:center;padding:0 40px;display:flex}.profile-menu{position:relative}.role-badge{padding:2px var(--spacing-xs);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-sm)}.profile-menu-dropdown{top:calc(100% + var(--spacing-sm));min-width:140px;padding:var(--spacing-xs);background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-dropdown);z-index:9999;flex-direction:column;display:flex;position:absolute;right:0}.profile-menu-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--fs-md);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.profile-menu-item:hover{background:var(--surface-hover)}.nav-item{min-height:48px;font-size:var(--fs-md);color:var(--text-secondary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;cursor:pointer;white-space:nowrap;margin:var(--spacing-sm);transition:background var(--transition-fast), font-weight var(--transition-fast), color var(--transition-fast), border-left-color var(--transition-fast);border-left:4px solid #0000;align-items:center;gap:10px;margin-bottom:0;padding:10px 12px 10px 8px;font-weight:500;display:flex}.nav-item>span{text-overflow:ellipsis;white-space:nowrap;opacity:1;transition:opacity var(--transition-fast);overflow:hidden}.nav-item>span.collapsed{opacity:0}.nav-item:hover{background:var(--surface-hover);color:var(--text-body)}.nav-item.collapsed{border-radius:var(--radius-sm);justify-content:center;align-items:center}.nav-item.is-active{background:var(--color-primary-soft);color:var(--text-primary);border-left-color:var(--color-primary);font-weight:600}.breadcrumb{align-items:center;gap:var(--spacing-sm);font-size:var(--fs-md);color:var(--text-secondary);display:flex}.subtree{background:var(--surface-elevated);border-radius:0 0 var(--radius-lg) var(--radius-lg);transition:max-height var(--transition-base), opacity var(--transition-base);opacity:0;padding-top:0;scale:0}.subtree.open{opacity:1;margin:0 var(--spacing-xl);padding:var(--spacing-md);scale:1}.client-layout{min-height:calc(100% - var(--spacing-xl));min-width:calc(100% - var(--spacing-xl));margin-bottom:var(--spacing-sm);flex-direction:column;display:flex;position:relative}.client-hero-sticky-wrapper{z-index:20;position:sticky;top:0}.client-hero{justify-content:space-between;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md);-webkit-backdrop-filter:blur(8px);background:var(--surface-primary-gradient);display:flex}.client-hero:after{content:"";filter:blur(50px);mix-blend-mode:screen;z-index:-1;background:radial-gradient(circle at 0 0,#1a1500 50%,#022836 100%);border-radius:50%;width:80%;height:150%;position:absolute;left:-50%}:root[data-theme=light] .client-hero:after{background:0 0}.client-outlet-wrapper{margin:0 var(--spacing-xl);padding:var(--spacing-xl) 0;flex-direction:column;flex:1;display:flex}.client-info-inline{gap:var(--spacing-sm);flex-direction:column;display:flex}.client-overview{width:100%}.client-overview-body{justify-content:space-between;align-items:stretch;gap:var(--spacing-lg);flex-direction:row;height:100%;display:flex}.overview-column{--flex-basis-max:1.5;--flex-basis-min:1;flex:var(--flex-basis-max);flex-direction:column;gap:18px;display:flex}.overview-column.min{flex:var(--flex-basis-min);min-width:300px}.overview-column.max{flex:var(--flex-basis-max)}.overview-card{background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;width:100%;min-height:0;max-height:400px;display:flex;overflow:visible}.overview-card-header{justify-content:space-between;align-items:center;gap:var(--spacing-md);border-bottom:1px solid var(--border-muted);padding:20px 24px 12px;display:flex}.overview-card-header .title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-3xl);color:var(--text-primary)}.overview-card-header .link{font-size:var(--fs-xs);color:var(--color-primary-bright)}.overview-card-row{justify-content:space-between;align-items:center;gap:var(--spacing-md);border-bottom:1px solid var(--border-soft);flex-direction:row;padding:9px 24px;display:flex}.overview-card-row.clickable:hover{background:var(--surface-hover);cursor:pointer}.overview-card-row .label{font-size:var(--fs-xs);color:var(--text-secondary);min-width:200px;max-width:50%}.overview-card-row .value{font-size:var(--fs-xs);color:var(--text-primary);text-align:right;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;min-width:fit-content;font-weight:500;overflow:hidden}.overview-card-row:last-child{border-bottom:none}.doc-icon{border-radius:var(--radius-sm);background:var(--danger-soft);width:30px;height:34px;color:var(--danger);flex-shrink:0;justify-content:center;align-items:center;display:flex}.doc-info{flex:1;min-width:0}.doc-name{font-size:var(--fs-xs);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.doc-date{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.doc-action-btn{background:var(--surface-tertiary);color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;padding:6px;display:flex}.doc-action-btn:hover{color:var(--text-primary);background:var(--overlay-hover-1);border:1px solid var(--border-strong)}.doc-action-btn:disabled{color:var(--text-faint);background:var(--surface-disabled);cursor:not-allowed;border:1px solid #0000}.ov-card{padding:var(--spacing-md);background:var(--surface-primary-gradient);border-radius:var(--radius-sm);border:1px solid var(--border-primary);gap:var(--spacing-sm);flex-direction:column;display:flex}.ov-card-title{color:var(--text-primary);border-bottom:1px solid var(--border-soft)}.ov-card-body{gap:var(--spacing-sm);flex-direction:column;display:flex;overflow-y:auto}.ov-card-body-row{justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-soft);flex-direction:row;display:flex}.ov-card-body-row:last-child{border-bottom:none}.ov-table{font-size:var(--fs-lg);white-space:nowrap;grid-template-columns:240px 1fr;width:100%;display:grid;overflow:visible}.ov-content{gap:var(--spacing-sm);background:var(--surface-primary-gradient);border-radius:var(--radius-sm);border:1px solid var(--border-primary);flex-direction:column;display:flex}.ov-row{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-soft);grid-template-columns:1fr repeat(2,.8fr);display:grid;position:relative}.ov-row:last-child{border-bottom:none}.ov-content.header{border:none}.ov-row.header{background:var(--color-primary-soft);border-radius:var(--radius-sm);border:1px solid var(--border-primary)}.ov-row.header span{color:var(--text-secondary);text-transform:uppercase;font-weight:600}.ov-row.header span.center{text-align:center}.ov-row.header span.right{text-align:right}.ov-row.header span.left{text-align:left}.ov-title{justify-content:flex-start;align-items:flex-start;gap:var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-primary);padding:var(--spacing-sm) var(--spacing-md);white-space:wrap;text-transform:uppercase;flex-direction:row;display:flex}.ov-asset{color:var(--text-primary);text-align:left}.ov-owner{color:var(--text-tertiary);text-align:center}.ov-value{color:var(--text-primary);text-align:right;justify-content:flex-end;align-items:center;font-weight:600;display:flex;position:relative}.ov-tooltip{background:var(--surface-modal);border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-width:300px;max-width:300px;color:var(--text-primary);font-size:var(--fs-xs);opacity:0;visibility:hidden;pointer-events:none;z-index:200;text-align:left;padding:8px 10px;transition:opacity .15s,transform .15s,visibility .15s;position:fixed;top:0;left:0}.ov-tooltip-row{gap:var(--spacing-md);font-size:var(--fs-sm);border-bottom:1px solid var(--border-soft);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-xs);grid-template-columns:1fr 1fr;align-items:center;display:grid}.ov-tooltip-row>*{white-space:wrap}.ov-tooltip-row:last-child{padding-bottom:none;margin-bottom:none;border-bottom:none}.ov-tooltip-title{font-size:var(--fs-md)}.ov-tooltip-subtitle{color:var(--text-muted);font-size:var(--fs-sm);border-bottom:1px solid var(--border-muted);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.ov-value:hover .ov-tooltip{opacity:1;visibility:visible}.ov-page{gap:var(--spacing-lg);flex-direction:row;display:flex}.ov-page-col{gap:var(--spacing-md);flex-direction:column;flex:.4;display:flex}.ov-page-col.max{flex:1;max-width:70%}.projection-container{background:var(--surface-primary-gradient);width:100%;padding:0 var(--spacing-md);flex-direction:row;display:flex}.projection-table-wrapper{flex-direction:column;justify-content:stretch;align-items:stretch;min-width:0;max-height:500px;display:flex;overflow:hidden}.projection-table-wrapper.bg{background:var(--surface-secondary);border:1px solid var(--border-primary);padding:var(--spacing-xs) var(--spacing-md)}.projection-label{color:var(--text-secondary);text-transform:uppercase;font-weight:600;font-size:var(--fs-sm);padding:var(--spacing-md) 0}.projection-table{grid-auto-rows:min-content;align-content:start;min-height:0;display:grid;position:relative;overflow-y:auto}.projection-table-cell{font-size:var(--fs-md);background:var(--surface-secondary);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-muted);justify-content:right;align-items:center;font-weight:600;display:flex}.projection-table-cell.left{justify-content:left}.projection-table-cell.header{color:var(--text-secondary);background:var(--surface-header-accent);white-space:nowrap;text-overflow:ellipsis;font-weight:600;position:sticky;top:0}.projection-table-cell.danger{color:var(--danger)}.projection-card{background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;width:100%;min-height:0;scroll-margin-top:200px;display:flex;overflow:visible}.projection-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-size:12px;font-weight:700}.projection-card-header{border-bottom:1px solid var(--border-muted);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-start;padding:20px 24px 12px;display:flex}.projection-card:not(.is-open) .projection-card-header{border-bottom:none}.projection-card-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .22s}.projection-card-chevron.is-open{transform:rotate(180deg)}.projection-card-collapse{grid-template-rows:0fr;transition:grid-template-rows .26s;display:grid}.projection-card-collapse.is-open{grid-template-rows:1fr}.projection-card-collapse-inner{min-height:0;overflow:hidden}.projection-card-header .title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-3xl);color:var(--text-primary)}.projection-card-header .link{font-size:var(--fs-xs);color:var(--color-primary-bright)}.projection-empty-state{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg) 24px;flex-direction:column;display:flex}.projection-empty-description{margin:var(--spacing-sm) 0 0;color:var(--text-secondary);font-size:var(--fs-md);line-height:1.5}.projection-card-row{justify-content:space-between;align-items:center;gap:var(--spacing-md);border-bottom:1px solid var(--border-soft);flex-direction:row;padding:9px 24px;display:flex}.projection-card-row.clickable:hover{background:var(--surface-hover);cursor:pointer}.projection-card-row .label{font-size:var(--fs-sm);color:var(--text-secondary);min-width:200px;max-width:50%}.projection-card-row .label-icon{gap:var(--spacing-sm);flex-direction:row;display:flex}.projection-card-row .label-icon span{align-items:center;display:flex}.projection-card-row .value{font-size:var(--fs-sm);color:var(--text-primary);text-align:right;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;min-width:fit-content;font-weight:900;overflow:hidden}.projection-card-row:last-child{border-bottom:none}.projection-outcome{justify-content:space-between;align-items:baseline;gap:var(--spacing-md);padding:var(--spacing-sm) 0 var(--spacing-md);border-bottom:1px solid var(--border-soft);margin-bottom:var(--spacing-sm);flex-direction:row;display:flex}.projection-outcome .label{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-weight:600}.projection-outcome .value{font-size:var(--fs-lg);color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.projection-banner{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--border-primary);margin-bottom:var(--spacing-md);border-left:3px solid #0000;flex-direction:column;display:flex}.projection-banner.success{background:var(--color-success-soft);border-left-color:var(--color-success)}.projection-banner.warning{background:var(--color-danger-soft);border-left-color:var(--color-danger)}.projection-banner.all-border{border:1px solid #0000}.projection-banner.all-border.success{border-color:var(--color-success)}.projection-banner.all-border.warning{border-color:var(--color-danger)}.projection-banner-title{font-size:var(--fs-lg);font-weight:600}.projection-banner.success .projection-banner-title{color:var(--text-primary)}.projection-banner.warning .projection-banner-title{color:var(--text-danger)}.projection-banner-description{font-size:var(--fs-md);color:var(--text-secondary);margin:0}.projection-cell-boost{color:var(--text-success);font-weight:600}.btn-tabs{justify-content:center;align-items:center;gap:var(--spacing-xl);background:var(--surface-sidebar);border-bottom:1px solid var(--border-primary);padding:var(--spacing-sm) var(--spacing-xl);-webkit-backdrop-filter:blur(16px);z-index:100;display:flex;position:sticky;top:0}.btn-tabs:last-child{flex:1;align-items:flex-end}.btn-tabs-actions{align-self:center;margin-left:auto}.btn-tab{color:var(--text-secondary);font-size:var(--fs-md);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin:0 28px 0 0;padding:12px 2px;font-weight:400}.btn-tab:hover{color:var(--text-body);border-bottom:2px solid var(--overlay-hover-1);background:0 0}.btn-tab.is-active{color:var(--text-primary);border-bottom-color:var(--color-primary);font-weight:600}.dw-toggle{border:1px solid var(--border-primary);border-radius:var(--radius-xl);flex-shrink:0;display:inline-flex;overflow:hidden}.dw-toggle button{color:var(--text-tertiary);font-family:var(--font-body);font-size:var(--fs-xs);letter-spacing:.03em;cursor:pointer;background:0 0;border:none;padding:5px 12px;font-weight:700;transition:background .15s,color .15s}.dw-toggle button:hover{color:var(--text-primary)}.dw-toggle button.is-active{background:var(--overlay-fill-1);color:var(--text-primary)}.dw-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:4px 0 6px;display:grid}.dw-panel{background:var(--overlay-fill-1);border:1px solid var(--border-primary);border-radius:var(--radius-lg);--dw-accent:var(--cv-color,var(--color-primary));--dw-accent-text:color-mix(in srgb, var(--cv-color,var(--color-primary)) 45%, white 55%);--dw-accent-fill:color-mix(in srgb, var(--cv-color,var(--color-primary)) 16%, var(--surface-primary-gradient));flex-direction:column;gap:10px;min-width:0;padding:14px 16px 15px;display:flex}:root[data-theme=light] .dw-panel{--dw-accent-text:color-mix(in srgb, var(--cv-color,var(--color-primary)) 80%, black 20%)}.dw-panel-h{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.dw-panel-h-main{align-items:center;gap:8px;min-width:0;display:flex}.dw-panel-status{width:16px;height:16px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dw-panel-title{font-family:var(--font-body);font-size:var(--fs-sm);letter-spacing:.02em;color:var(--text-primary);margin:0;font-weight:700}.dw-tag{font-size:var(--fs-xs);letter-spacing:.03em;border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:3px 10px;font-weight:700;display:inline-flex}.dw-tag:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 6px}.dw-tag.positive{color:var(--score-high-fg);background:color-mix(in srgb, var(--score-high-fg) 16%, transparent);border-color:color-mix(in srgb, var(--score-high-fg) 32%, transparent)}.dw-tag.watch{color:var(--score-mid-fg);background:color-mix(in srgb, var(--score-mid-fg) 20%, transparent);border-color:color-mix(in srgb, var(--score-mid-fg) 38%, transparent)}.dw-tag.concern{color:var(--score-low-fg);background:color-mix(in srgb, var(--score-low-fg) 22%, transparent);border-color:color-mix(in srgb, var(--score-low-fg) 42%, transparent)}.dw-note{font-size:var(--fs-sm);color:var(--text-secondary);margin:0;line-height:1.55}.dw-note b{color:var(--text-primary);font-weight:600}.dw-finding{gap:var(--spacing-xs);border-top:1px solid var(--border-primary);flex-direction:column;margin-top:auto;padding-top:10px;display:flex}.dw-finding-tags{gap:var(--spacing-sm);flex-flow:wrap;display:flex}.dw-finding-row{align-items:flex-start;gap:var(--spacing-xs);font-size:var(--fs-sm);color:var(--text-secondary);margin:0;line-height:1.5;display:flex}.dw-finding-mark{color:var(--text-muted);flex-shrink:0}.dw-narrative-btn{align-self:flex-start;gap:var(--spacing-xs);height:auto;font-size:var(--fs-sm);white-space:nowrap}.dw-narrative-btn:hover:not(:disabled){background:0 0;text-decoration:underline}.dw-narrative-btn:disabled{color:var(--text-tertiary)}.dw-narrative-pop{width:max-content;max-width:min(420px,100vw - 16px);max-height:min(60vh,420px);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-modal);border:1px solid var(--border-modal);border-left:4px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-dropdown);font-size:var(--fs-sm);color:var(--text-body);text-align:left;line-height:1.6;animation:.12s pe-fade;position:fixed;overflow-y:auto}.dw-donut-row{align-items:center;gap:16px;display:flex}.dw-donut{flex-shrink:0}.dw-donut circle{transition:stroke-dasharray .6s cubic-bezier(.22,1,.36,1)}.dw-donut-value{font-family:var(--font-display);font-size:17px;font-weight:700}.dw-donut-sublabel{font-family:var(--font-body);fill:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:7.5px;font-weight:600}.dw-legend{flex-direction:column;flex:1;gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.dw-legend li{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:8px;line-height:1.4;display:flex}.dw-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dw-legend-dot.muted{background:var(--text-tertiary);opacity:.6}.dw-legend-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dw-gauge-row{align-items:center;gap:12px;display:flex}.dw-gauge{flex-shrink:0;margin:-6px 0}.dw-gauge circle{transition:stroke-dasharray .6s cubic-bezier(.22,1,.36,1)}.dw-ror-track-wrap{padding-top:4px}.dw-ror-value{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--dw-accent-text);margin-bottom:14px;font-weight:700;line-height:1.1}.dw-ror-track{border-radius:var(--radius-xl);background:var(--overlay-fill-1);height:8px;margin:22px 0 26px;position:relative}.dw-ror-track-fill{border-radius:var(--radius-xl);background:var(--dw-accent);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1)}.dw-ror-marker{background:var(--text-tertiary);width:2px;height:16px;position:absolute;top:50%;transform:translate(-50%,-50%)}.dw-ror-marker.planned{background:var(--text-primary);height:20px}.dw-ror-marker-label{color:var(--text-tertiary);white-space:nowrap;font-size:9.5px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.dw-ror-marker-label.above{bottom:18px}.dw-ror-marker-label.below{top:18px}.dw-ror-marker.planned .dw-ror-marker-label{color:var(--text-primary);font-weight:700}.dw-ror-marker.align-start .dw-ror-marker-label{left:0;transform:none}.dw-ror-marker.align-end .dw-ror-marker-label{left:auto;right:0;transform:none}.dw-ror-scale{font-size:var(--fs-xs);color:var(--text-tertiary);justify-content:space-between;margin-top:2px;display:flex}.dw-multiplier-row{align-items:center;gap:10px;display:flex}.dw-multiplier-value{font-family:var(--font-display);color:var(--dw-accent-text);flex-shrink:0;font-size:30px;font-weight:700;line-height:1}.dw-multiplier-desc{font-size:var(--fs-sm);color:var(--text-secondary);flex:1;min-width:0;line-height:1.4}.dw-compare-bar{border-radius:var(--radius-md);border:1px solid var(--border-primary);display:flex;overflow:hidden}.dw-compare-bar-seg{background:var(--overlay-fill-1);flex-grow:0;flex-shrink:0;min-width:0;padding:10px 12px;transition:flex-basis .6s cubic-bezier(.22,1,.36,1)}.dw-compare-bar-seg.deployed{background:color-mix(in srgb, var(--dw-accent) 16%, var(--overlay-fill-1));border-left:1px solid var(--border-primary)}.dw-compare-bar-seg-value{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.dw-compare-bar-seg.deployed .dw-compare-bar-seg-value{color:var(--dw-accent-text)}.dw-compare-bar-seg-label{font-size:var(--fs-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.dw-assumptions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.dw-assumption{border-radius:var(--radius-md);background:var(--overlay-fill-1);border:1px solid var(--border-primary);align-items:center;gap:8px;min-width:0;padding:7px 10px;display:flex}.dw-assumption-icon{background:color-mix(in srgb, var(--color-primary) 20%, transparent);width:24px;height:24px;color:var(--text-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dw-assumption-text{min-width:0}.dw-assumption-label{letter-spacing:.03em;text-transform:uppercase;color:var(--text-tertiary);white-space:normal;font-size:9px;font-weight:600;line-height:1.25}.dw-assumption-value{font-size:var(--fs-xs);color:var(--text-primary);white-space:normal;overflow-wrap:break-word;font-weight:700}.dw-assumption-pills{flex-wrap:wrap;gap:8px;display:flex}.dw-assumption-pill{font-size:var(--fs-xs);color:var(--text-tertiary);background:var(--overlay-fill-1);border:1px solid var(--border-primary);border-radius:var(--radius-xl);white-space:nowrap;align-items:center;padding:5px 12px;display:inline-flex}.dw-assumption-pill b{color:var(--text-primary);margin-left:3px;font-weight:700}.dw-end-stat{flex-direction:column;gap:2px;display:flex}.dw-end-stat-value{font-family:var(--font-display);color:var(--dw-accent-text);font-size:26px;font-weight:700;line-height:1.1}.dw-end-stat-label{font-size:var(--fs-sm);color:var(--text-tertiary)}.dw-chip{font-size:var(--fs-xs);color:var(--text-tertiary);background:var(--overlay-fill-1);border:1px solid var(--border-primary);border-radius:var(--radius-sm);white-space:nowrap;padding:3px 8px}.dw-stat-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.dw-stat-row.cols-2{grid-template-columns:repeat(2,1fr)}.dw-stat{background:color-mix(in srgb, var(--color-primary) 14%, var(--surface-primary-gradient));border-radius:var(--radius-md);padding:8px 10px}.dw-stat.pos{background:var(--score-high-bg)}.dw-stat.neg{background:var(--score-low-bg)}.dw-stat.watch{background:var(--score-mid-bg)}.dw-stat.accent{background:var(--dw-accent-fill)}.dw-stat-label{font-size:var(--fs-xs);color:var(--text-tertiary)}.dw-stat.accent .dw-stat-label,.dw-stat.accent .dw-stat-value{color:var(--dw-accent-text)}.dw-stat.pos .dw-stat-label{color:var(--score-high-fg)}.dw-stat.neg .dw-stat-label{color:var(--score-low-fg)}.dw-stat.watch .dw-stat-label{color:var(--score-mid-fg)}.dw-stat-value{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--text-primary);font-variant-numeric:tabular-nums;margin:1px 0;font-weight:700;line-height:1.15}.dw-stat.pos .dw-stat-value{color:var(--score-high-fg)}.dw-stat.neg .dw-stat-value{color:var(--score-low-fg)}.dw-stat.watch .dw-stat-value{color:var(--score-mid-fg)}.dw-stat-sub{font-size:var(--fs-xs);color:var(--text-muted)}.dw-chain{margin:0;padding:0;list-style:none}.dw-chain-item{gap:10px;padding-bottom:14px;display:flex;position:relative}.dw-chain-item:last-child{padding-bottom:0}.dw-chain-rail{flex-shrink:0;justify-content:center;width:16px;display:flex;position:relative}.dw-chain-rail:before{content:"";background:var(--border-primary);width:1px;position:absolute;top:14px;bottom:-14px}.dw-chain-item:last-child .dw-chain-rail:before{display:none}.dw-chain-dot{background:var(--overlay-fill-1);border:2px solid var(--text-tertiary);z-index:1;border-radius:50%;width:9px;height:9px;margin-top:4px;position:relative}.dw-chain-item.positive .dw-chain-dot{border-color:var(--score-high-fg)}.dw-chain-item.watch .dw-chain-dot{border-color:var(--score-mid-fg)}.dw-chain-item.concern .dw-chain-dot{border-color:var(--score-low-fg)}.dw-chain-text{flex:1;min-width:0}.dw-chain-label{font-size:var(--fs-sm);color:var(--text-primary);font-weight:700}.dw-chain-detail{font-size:var(--fs-xs);color:var(--text-tertiary);margin:3px 0 0;line-height:1.5}.dw-route-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dw-route-row{border-top:1px solid var(--border-primary);font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;display:flex}.dw-route-row:first-child{border-top:none;padding-top:0}.dw-route-dest{color:var(--text-secondary)}.dw-route-target{border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;padding:2px 8px;font-weight:700}.dw-route-target.positive{color:var(--score-high-fg);background:color-mix(in srgb, var(--score-high-fg) 16%, transparent)}.dw-route-target.watch{color:var(--score-mid-fg);background:color-mix(in srgb, var(--score-mid-fg) 18%, transparent)}.dw-route-target.concern{color:var(--score-low-fg);background:color-mix(in srgb, var(--score-low-fg) 20%, transparent)}.dw-lane{margin-bottom:4px}.dw-lane-track{background:var(--overlay-fill-1);border-radius:2px;height:4px;margin:22px 0 10px;position:relative}.dw-lane-end{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:9.5px;position:absolute;top:-18px}.dw-lane-end.start{left:0}.dw-lane-end.end{right:0}.dw-lane-marker{border:3px solid;border-radius:50%;width:14px;height:14px;transition:left .5s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;transform:translate(-50%,-50%)}.dw-lane-value{font-size:var(--fs-sm);text-align:center;font-weight:700}.dw-callout{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--overlay-fill-1);padding:10px 12px}.dw-callout-eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--score-mid-fg);margin-bottom:5px;font-size:9.5px;font-weight:700;display:block}.dw-callout p{font-size:var(--fs-xs);color:var(--text-secondary);margin:0;line-height:1.55}.dw-chart-head{justify-content:flex-end;margin-top:-4px;display:flex}.dw-chart{width:100%;max-width:460px;height:auto;margin:0 auto;display:block;overflow:visible}.dw-chart-grid{stroke:var(--border-primary);stroke-width:1px}.dw-chart-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.dw-chart-line.deployed{stroke:var(--score-high-fg)}.dw-chart-line.idle{stroke:var(--text-tertiary);stroke-width:2px;stroke-dasharray:5 4}.dw-chart-axis-label{fill:var(--text-tertiary);font-size:9.5px;font-family:var(--font-body)}.dw-chart-end-label{font-size:11.5px;font-weight:700;font-family:var(--font-body)}.dw-chart-end-label.deployed{fill:var(--score-high-fg)}.dw-chart-end-label.idle{fill:var(--text-secondary);font-weight:600}.dw-bar-track{border-radius:var(--radius-xl);background:var(--overlay-fill-1);height:8px;overflow:hidden}.dw-bar-fill{border-radius:var(--radius-xl);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1),box-shadow .3s}.dw-bar-fill.pos{background:linear-gradient(90deg, color-mix(in srgb, var(--score-high-fg) 60%, transparent), var(--score-high-fg));box-shadow:0 0 10px color-mix(in srgb, var(--score-high-fg) 55%, transparent)}.dw-bar-fill.watch{background:linear-gradient(90deg, color-mix(in srgb, var(--score-mid-fg) 60%, transparent), var(--score-mid-fg));box-shadow:0 0 10px color-mix(in srgb, var(--score-mid-fg) 55%, transparent)}.dw-bar-fill.concern{background:linear-gradient(90deg, color-mix(in srgb, var(--score-low-fg) 60%, transparent), var(--score-low-fg));box-shadow:0 0 10px color-mix(in srgb, var(--score-low-fg) 55%, transparent)}.dw-bar-label-row{font-size:var(--fs-xs);color:var(--text-tertiary);justify-content:space-between;align-items:baseline;display:flex}.dw-bar-label-row b{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:700}.dw-tiles{grid-template-columns:1fr 1fr;gap:6px;display:grid}.dw-tile{border-radius:var(--radius-md);font-size:var(--fs-xs);background:var(--surface-primary-gradient);border:1px solid var(--border-primary);align-items:center;gap:8px;padding:7px 9px 7px 13px;font-weight:600;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.dw-tile:before{content:"";background:currentColor;width:3px;position:absolute;inset:0 auto 0 0}.dw-tile .dw-tile-icon{background:color-mix(in srgb, currentColor 22%, transparent);border-radius:50%;flex-shrink:0;width:20px;height:20px;padding:3px}.dw-tile span{min-width:0;color:inherit;flex:1}.dw-tile.ok{color:var(--score-high-fg);background:color-mix(in srgb, var(--score-high-fg) 16%, var(--surface-primary-gradient));border-color:color-mix(in srgb, var(--score-high-fg) 34%, transparent)}.dw-tile.ok span{color:color-mix(in srgb, var(--score-high-fg) 55%, white 45%)}.dw-tile.flaw{color:var(--score-mid-fg);background:color-mix(in srgb, var(--score-mid-fg) 18%, var(--surface-primary-gradient));border-color:color-mix(in srgb, var(--score-mid-fg) 38%, transparent)}.dw-tile.flaw span{color:color-mix(in srgb, var(--score-mid-fg) 55%, white 45%)}.dw-tile.miss{color:var(--score-low-fg);background:color-mix(in srgb, var(--score-low-fg) 20%, var(--surface-primary-gradient));border-color:color-mix(in srgb, var(--score-low-fg) 42%, transparent)}.dw-tile.miss span{color:color-mix(in srgb, var(--score-low-fg) 55%, white 45%)}.dw-tile:hover{box-shadow:0 4px 12px color-mix(in srgb, currentColor 25%, transparent);transform:translateY(-1px)}.dw-compare{grid-template-columns:1fr 1fr;align-items:end;gap:10px;height:132px;display:grid}.dw-compare-col{flex-direction:column;justify-content:flex-end;gap:3px;height:100%;display:flex}.dw-compare-stack{border-radius:var(--radius-sm) var(--radius-sm) 0 0;flex-direction:column-reverse;width:100%;display:flex;overflow:hidden}.dw-compare-seg{color:#0a1220;justify-content:center;align-items:center;width:100%;min-height:0;font-size:10px;font-weight:700;transition:height .6s cubic-bezier(.22,1,.36,1);display:flex}.dw-compare-seg.taxable{background:var(--score-low-fg)}.dw-compare-seg.sheltered{background:var(--score-high-fg)}.dw-compare-caption{font-size:var(--fs-xs);color:var(--text-tertiary);text-align:center}.dw-timeline{flex-direction:column;gap:8px;display:flex}.dw-timeline-track{border-radius:var(--radius-md);background:linear-gradient(to right, var(--score-high-bg) 0%, var(--score-mid-bg) 55%, var(--score-low-bg) 100%);height:34px;position:relative}.dw-timeline-mark{background:var(--border-strong);width:2px;position:absolute;top:-2px;bottom:-2px}.dw-timeline-mark-label{color:var(--text-tertiary);white-space:nowrap;font-size:10px;font-weight:700;position:absolute;top:-18px;transform:translate(-50%)}.dw-timeline-child{background:var(--cecp-control);border:2px solid var(--surface-primary-gradient);border-radius:50%;width:9px;height:9px;position:absolute;top:50%;transform:translate(-50%,-50%)}.dw-timeline-legend{font-size:var(--fs-xs);color:var(--text-tertiary);flex-wrap:wrap;gap:14px;display:flex}.dw-timeline-legend span{align-items:center;gap:5px;display:inline-flex}.dw-timeline-legend-dot{background:var(--cecp-control);border-radius:50%;flex-shrink:0;width:8px;height:8px}.dw-multiple-row{flex-direction:column;gap:4px;display:flex}.dw-multiple-label-row{font-size:var(--fs-xs);color:var(--text-tertiary);justify-content:space-between;display:flex}.dw-multiple-label-row b{color:var(--text-primary);font-variant-numeric:tabular-nums}.dw-multiple-track{border-radius:var(--radius-sm);background:var(--overlay-fill-1);height:16px;position:relative;overflow:visible}.dw-multiple-fill{border-radius:var(--radius-sm);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1)}.dw-multiple-exemption-line{background:var(--cecp-cost);width:2px;position:absolute;top:-3px;bottom:-3px}@container score-card (width<=640px){.dw-grid,.dw-stat-row,.dw-tiles{grid-template-columns:1fr}}:root{--score-low-bg:#e5574e29;--score-low-fg:#e5574e;--score-mid-bg:#eab30829;--score-mid-fg:#fde047;--score-high-bg:#4ade8024;--score-high-fg:#4ade80;--score-ring-track:#ffffff0f;--score-ring-glow:#1e72d41f;--shadow-ring:0 8px 20px #00000059}.score-layout{max-width:calc(100% - var(--spacing-xl));min-height:calc(100% - var(--spacing-xl));flex-direction:row;align-items:flex-start;gap:40px;display:flex}.score-layout.limit-height{max-height:calc(100% + var(--spacing-xl));overflow-y:auto}.score-layout.col{min-width:calc(100% - var(--spacing-xl));flex-direction:column;align-items:center}.score-layout.gen{min-width:calc(100% - var(--spacing-xl));justify-content:flex-start}.score-ring-panel{flex-direction:row;flex-shrink:0;align-items:center;gap:20px;display:flex}.score-ring-panel-wrapper{flex-direction:row;justify-content:center;align-items:center;width:100%;padding:32px;display:flex;overflow-x:auto}.score-ring-panel.vertical{flex-direction:column;flex-shrink:0;align-items:center;gap:20px;max-width:360px;display:flex}.score-ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.score-ring-label{font-size:var(--fs-md);color:var(--text-secondary);margin-top:0;font-weight:500}.score-ring-legend{flex-direction:column;gap:10px;width:100%;margin:0;padding:0;list-style:none;display:flex}.score-ring-legend li{font-size:var(--fs-md);color:var(--text-secondary);align-items:center;gap:10px;display:flex}.score-ring-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.score-ring-legend-label{flex:1;min-width:0}.score-ring-legend-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.score-grid{flex:1;align-items:flex-start;gap:20px;width:100%;display:flex}.score-grid-col{flex-direction:column;flex:1;padding-bottom:10%;display:flex}.score-card{background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-lg);flex-direction:column;transition:background .18s,border-color .18s;display:flex}.score-card-body{flex-direction:column;gap:12px;padding:16px;display:flex;container:score-card/inline-size}.score-card-chevron{color:var(--text-muted);font-size:var(--fs-sm);flex-shrink:0;margin-left:auto;transition:transform .22s}.score-card-chevron.is-open{transform:translateY(-25%)rotate(180deg)}.score-narrative{text-align:left;border-left:4px solid var(--border-muted);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-xs) 0;border-radius:var(--radius-lg);background:#ffffff06;justify-content:flex-start;align-items:center;display:flex}:root[data-theme=light] .score-narrative{background:#0000000a}.score-card-collapse{grid-template-rows:0fr;transition:grid-template-rows .26s;display:grid}.score-card-collapse.is-open{grid-template-rows:1fr}.score-card-collapse-inner{min-height:0;overflow:hidden}.narrative-toggle{width:minmax(10.5rem, auto);white-space:nowrap;transition:width .15s;overflow:hidden}.narrative-toggle.is-open{width:9rem}.score-card-header{align-items:center;gap:10px;padding:12px 16px;display:flex}.score-card:hover{cursor:pointer}.score-card-dot{border-radius:var(--radius-xl);background:var(--cv-color,var(--text-tertiary));flex-shrink:0;width:9px;height:9px}.score-card-title{min-width:0;font-family:var(--font-body);font-size:var(--fs-lg);color:var(--text-primary);flex:1;margin:0;font-weight:700}.score-card-value{font-size:var(--fs-4xl);color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:700}.score-card-bar-track{border-radius:var(--radius-xl);background:var(--overlay-fill-1);height:6px;overflow:hidden}.score-card-bar-fill{border-radius:var(--radius-xl);background:var(--cv-color,var(--accent));height:100%;transition:width 1s cubic-bezier(.22,1,.36,1)}.score-card-header>.score-card-tier{align-self:auto}.score-card-tier{border-radius:var(--radius-sm);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;align-self:flex-start;padding:3px 10px;font-weight:700}.score-card--high .score-card-tier{background:var(--score-high-bg);color:var(--score-high-fg)}.score-card--mid .score-card-tier{background:var(--score-mid-bg);color:var(--score-mid-fg)}.score-card--low .score-card-tier{background:var(--score-low-bg);color:var(--score-low-fg)}.score-card-summary{font-size:var(--fs-lg);color:var(--text-secondary);margin:0;line-height:1.6}.score-card-bullets{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.score-card-bullets li{font-size:var(--fs-lg);color:var(--text-tertiary);line-height:1.5}@media (width<=760px){.score-layout{flex-direction:column;align-items:center}.score-ring-panel{width:100%;max-width:280px}.score-grid{grid-template-columns:1fr;width:100%}}.score-ring-panel{flex-shrink:0;justify-content:center;align-items:center;display:flex;position:sticky;top:186px}.score-ring-wrap{display:inline-flex;position:relative}.score-ring{justify-content:center;align-items:center;display:flex;position:relative}.score-ring:before{content:"";background:radial-gradient(circle, var(--score-ring-glow), transparent 70%);z-index:-1;border-radius:50%;position:absolute;inset:30px}.score-ring-svg{filter:drop-shadow(var(--shadow-ring))}.score-ring-progress{transition:stroke-dashoffset 1s cubic-bezier(.22,1,.36,1)}.score-ring-tip{transition:opacity .35s}.score-ring-center{text-align:center;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.score-ring-value{font-family:var(--font-display);font-style:italic;font-size:var(--fs-6xl);letter-spacing:-.03em;color:var(--text-primary);font-weight:700;line-height:1}.score-ring-label{font-size:var(--fs-md);color:var(--text-tertiary);font-weight:500}.score-ring-labels{z-index:1;flex-direction:column;gap:14px;max-width:46%;margin:0;padding:0;list-style:none;display:flex;position:absolute;left:0%}.score-ring-labels li{align-items:center;gap:8px;display:flex}.score-ring-labels-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.score-ring-labels-text{font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;font-weight:600}@media (width<=760px){.score-ring-panel{width:100%;max-width:280px}}.m-content{text-align:center;justify-content:center;align-items:center;gap:var(--spacing-md);background:var(--surface-primary-gradient);border-radius:var(--radius-sm);border:1px solid var(--border-primary);width:auto;height:100%;margin:var(--spacing-md);padding:var(--spacing-lg);flex-direction:row;flex:1;display:flex}.m-panel{background:var(--surface-modal);border:1px solid var(--border-modal);border-radius:var(--radius-sm);box-shadow:var(--shadow-modal);flex-direction:column;align-items:center;min-width:400px;max-width:88%;min-height:200px;max-height:92vh;animation:.15s pe-fade;display:flex;overflow:hidden}.m-panel.simple{box-shadow:none;background:0 0;border:none;width:auto;min-width:0;height:auto;min-height:0}.m-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-3xl);text-align:center;width:100%;padding:var(--spacing-xs);color:var(--text-primary);flex-direction:row;justify-content:center;align-self:center;align-items:center;padding-bottom:0;display:flex}.m-content form.card{width:100%;min-width:0;box-shadow:none;background:0 0;border-left:none;margin:0}.m-footer{justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:0 0 var(--radius-sm) var(--radius-sm);width:100%;padding-top:0;display:flex}.cv-planning{padding:var(--spacing-lg) var(--spacing-xl);overflow-y:auto}.cv-planning-toprow,.cv-planning-body,.cv-section-label-row,.cv-summary-card{box-sizing:border-box;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.cv-planning-toprow{background:var(--surface-secondary);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:14px;display:flex;position:relative}.cv-subtabs{align-items:center;gap:var(--spacing-md);display:flex}.cv-subtab{box-sizing:border-box;border-radius:var(--radius-sm);font-family:inherit;font-size:var(--fs-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);background:0 0;border:1px solid #0000;align-items:center;padding:7px 16px;font-weight:600;display:inline-flex}.cv-subtab:hover{background:var(--surface-hover);color:var(--text-body)}.cv-subtab.is-active{background:var(--color-primary);color:var(--text-primary)}.cv-toolbar{align-items:center;gap:var(--spacing-md);flex-shrink:0;display:flex}.cv-icon-btn{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-body);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.cv-icon-btn:hover{background:var(--overlay-hover-1);border-color:var(--border-strong)}.cv-btn{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-body);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.cv-btn:hover{background:var(--overlay-hover-1);border-color:var(--border-strong)}.cv-text-btn{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);height:36px;color:var(--text-body);font-family:inherit;font-size:var(--fs-md);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex}.cv-text-btn:hover{background:var(--overlay-hover-1);border-color:var(--border-strong)}.cv-version-panel{box-sizing:border-box;background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:260px;box-shadow:var(--shadow-dropdown);z-index:30;padding:16px;position:absolute;top:calc(100% + 4px);right:16px}.cv-version-panel-title{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;font-weight:700}.cv-version-row{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.cv-version-row:first-of-type{border-top:none}.cv-version-name{font-size:var(--fs-lg);color:var(--text-primary);margin:0;font-weight:600}.cv-version-date{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.cv-version-pill{border-radius:var(--radius-sm);font-size:var(--fs-xs);white-space:nowrap;flex-shrink:0;align-items:center;padding:3px 10px;font-weight:600;display:inline-flex}.cv-version-pill--proposed{background:var(--accent-soft-bg-strong);color:var(--accent-link)}.cv-version-pill--draft{background:var(--version-draft-bg);color:var(--version-draft-fg)}.cv-board{flex-direction:column;display:flex}.cv-planning-body{align-items:stretch;gap:24px;min-height:0;margin:16px 0;display:flex}.aside-container{background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;align-items:center;height:500px;padding:10px;display:flex}.aside-container>aside{min-height:0;padding:10px;overflow:auto}.cv-planning-body>.cv-canvas{flex:1;min-width:0;overflow:hidden}.cv-blocks-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 14px;font-weight:700}.cv-blocks-list{flex-direction:column;gap:8px;display:flex}.cv-block{box-sizing:border-box;border:1px solid var(--border-primary);border-left:2px solid var(--cv-color,var(--border-strong));border-radius:var(--radius-sm);background:var(--cv-bg,var(--surface-primary-gradient));cursor:grab;transition:background var(--transition-base), border-color var(--transition-base), transform var(--transition-base);flex-direction:column;gap:2px;padding:9px 12px;display:flex}.cv-block:hover{background:var(--surface-hover);transform:translateY(-1px)}.cv-block:active{cursor:grabbing;transform:translateY(0)}.cv-block-title{font-size:var(--fs-xs);color:var(--text-primary);font-weight:600}.cv-block-subtitle{font-size:var(--fs-xs);color:var(--text-secondary)}.cv-canvas-container{border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex:1;min-width:0;min-height:0;overflow:auto}.cv-canvas{box-sizing:border-box;background-color:var(--surface-canvas);border:1px dashed var(--border-primary);min-width:820px;min-height:500px;transition:border-color var(--transition-base), background-color var(--transition-base);background-image:radial-gradient(#ffffff0a 1px,#0000 1px);background-size:22px 22px;flex:1;position:relative;overflow:hidden}.cv-canvas.is-drop-target{border-color:var(--color-primary);background-color:#1e72d40f}.cv-canvas-hint{font-size:var(--fs-xs);color:var(--text-faint);background:var(--surface-canvas);border-radius:var(--radius-sm);border:1px solid var(--border-soft);pointer-events:none;padding:4px 8px;position:absolute;left:10px}.cv-connections-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cv-edge{fill:none}.cv-edge-flow{stroke:#fff6;stroke-width:1.4px}.cv-edge-cecp{stroke-width:1.6px;stroke-dasharray:4 3;opacity:1}.cv-node{box-sizing:border-box;border-radius:var(--radius-sm);border:1.5px solid var(--cv-color,var(--border-primary));color:var(--cv-color,var(--text-secondary));background:var(--cv-bg,#ffffff0d);font-family:inherit;font-weight:600;font-size:var(--fs-xs);white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:grab;touch-action:none;transition:box-shadow var(--transition-base);justify-content:center;align-items:center;padding:8px 10px;display:inline-flex;position:absolute}.cv-node:hover{box-shadow:0 0 0 4px var(--cv-bg,#ffffff0f)}.cv-node:active{cursor:grabbing}.cv-node.is-selected{box-shadow:0 0 0 2px var(--color-primary), 0 0 10px var(--color-primary-hard)}.cv-node-readonly{cursor:default}.cv-node-readonly:hover{box-shadow:none}.cv-node-delete{background:var(--danger);color:#fff;cursor:pointer;width:18px;height:18px;box-shadow:0 0 0 2px var(--surface-canvas);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:-8px;right:-8px}.cv-node-tertiary{border-radius:var(--radius-sm);border-color:var(--cv-color,var(--border-strong));color:var(--cv-color,var(--text-primary));background:var(--cv-bg,var(--surface-elevated));padding:12px 24px}.cv-node-secondary{border-radius:var(--radius-sm);padding:10px 18px}.cv-node-primary{border-radius:var(--radius-sm);text-align:center;cursor:pointer;min-width:180px;padding:14px 26px;font-weight:700;position:static}.cv-node-primary.is-connect-target{box-shadow:0 0 0 3px var(--cv-color,var(--color-primary));animation:1.4s ease-in-out infinite cv-pulse}@keyframes cv-pulse{0%,to{box-shadow:0 0 0 2px var(--cv-color,var(--color-primary))}50%{box-shadow:0 0 0 5px var(--cv-color,var(--color-primary))}}.cv-node-family{white-space:normal;min-width:260px}.cv-family-node{flex-direction:column;align-items:center;gap:10px;display:flex}.cv-family-couple{align-items:flex-start;gap:14px;display:flex}.cv-family-member{flex-direction:column;align-items:center;gap:6px;width:92px;display:flex}.cv-family-avatar{background:var(--color-primary-soft);width:40px;height:40px;color:var(--color-primary);font-size:var(--fs-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.cv-family-name{font-size:var(--fs-xs);color:var(--text-primary);font-weight:600}.cv-family-age{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10.5px}.cv-family-divider{flex-direction:column;flex-shrink:0;align-items:center;gap:5px;width:60px;padding-top:12px;display:flex}.cv-family-divider-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:9px;font-weight:700}.cv-family-divider-line{background:var(--border-strong);width:100%;height:1px}.cv-family-children{flex-direction:column;align-items:center;gap:6px;width:100%;display:flex}.cv-family-children-line{background:var(--border-strong);width:1px;height:12px}.cv-family-children-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.cv-family-child{border-radius:var(--radius-xl);border:1px solid var(--border-primary);background:var(--surface-primary-gradient);align-items:center;gap:6px;padding:4px 10px;display:flex}.cv-family-child-avatar{background:var(--color-primary-soft);width:18px;height:18px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex}.cv-family-child-name{color:var(--text-body);white-space:nowrap;font-size:10.5px;font-weight:500}.cv-family-child-age{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10px}.cv-node-row{gap:16px;display:flex;position:absolute;bottom:20px;left:24px;right:24px}.cv-node-row .cv-node-primary{flex:1}.cv-section-label-row{justify-content:center;align-items:center;gap:8px;margin-top:16px;display:flex}.cv-section-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.cv-section-hint{font-size:var(--fs-xs);color:var(--text-muted);font-weight:400;position:absolute;top:8px;right:16px}.cv-summary-card{box-sizing:border-box;background:var(--surface-primary-gradient);border:1px solid var(--border-input);border-radius:var(--radius-sm);margin:20px;padding-top:2px;padding-bottom:6px;position:relative;overflow:hidden}.cv-summary-section{border-top:1px solid #ffffff0f;padding:18px 0}.cv-summary-section:first-child{border-top:none}.cv-summary-text-input{border-radius:var(--radius-sm);width:100%;min-height:80px;color:var(--text-primary);font:inherit;resize:vertical;resize:none;background:0 0;border:none;padding:8px 12px;line-height:1.7}.cv-summary-text-input:focus{background:var(--surface-elevated);box-shadow:0 0 0 2px var(--color-primary);outline:none}.cv-summary-heading{align-items:center;gap:10px;margin-bottom:14px;display:flex}.cv-summary-badge{width:22px;height:22px;font-size:var(--fs-xs);background:var(--cv-bg,var(--accent-soft-bg-strong));color:var(--cv-color,var(--accent-link));border:1px solid var(--cv-color,var(--accent-link));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.cv-summary-title{font-size:var(--fs-md);color:var(--text-primary);margin:0;font-weight:700}.cv-summary-text{font-size:var(--fs-md);color:var(--text-body);margin:0 0 10px;line-height:1.7}.cv-summary-text:last-child{margin-bottom:0}.cv-summary-token{border:1px solid var(--status-docspending-border);border-radius:var(--radius-sm);background:var(--status-docspending-bg);color:var(--status-docspending-fg);font-weight:600;font-size:var(--fs-xs);cursor:pointer;transition:background var(--transition-base);margin:0 2px;padding:2px 8px;display:inline-flex}.cv-summary-token:hover{background:#f5b44447}.cv-summary-token-input{border:1px solid var(--status-docspending-border);border-radius:var(--radius-sm);background:var(--surface-field);color:var(--status-docspending-fg);font:inherit;font-weight:600;font-size:var(--fs-xs);margin:0 2px;padding:1px 7px;display:inline-flex}.cv-request-panel{padding:var(--spacing-lg) var(--spacing-lg);align-items:flex-start;display:flex}.cv-request-card{flex-direction:column;gap:14px;max-width:560px;display:flex}.cv-request-eyebrow{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-link);font-weight:700}.cv-request-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-3xl);color:var(--text-primary);margin:0}.cv-request-description{font-size:var(--fs-md);color:var(--text-secondary);margin:0;line-height:1.6}.cv-request-btn{align-self:flex-start;gap:8px;margin-top:6px}.cv-plan-household{margin:16px var(--spacing-lg) 0;font-size:var(--fs-sm);color:var(--text-secondary);font-weight:600}.cv-plan-view-toggle{background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);align-self:center;gap:2px;margin:16px 0;padding:3px;display:flex}.cv-plan-view-toggle button{font-size:var(--fs-md);color:var(--text-secondary);border-radius:var(--radius-sm);padding:7px 18px;font-weight:600}.cv-plan-view-toggle button:hover{background:var(--surface-hover)}.cv-plan-view-toggle button.is-active{background:var(--surface-primary-gradient);color:var(--text-primary)}.cv-current-state-empty{justify-content:center;align-items:center;min-height:500px;display:flex}.cv-current-state-empty span{font-size:var(--fs-md);color:var(--text-muted);background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:6px 16px;font-weight:600}.cv-review-body{margin:16px var(--spacing-lg);align-items:stretch;gap:24px;display:flex}.cv-review-canvas{flex:1;min-width:0}.cv-library-panel{box-sizing:border-box;background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex:0 0 240px;width:240px;max-height:640px;padding:14px;overflow-y:auto}.cv-library-tier+.cv-library-tier{border-top:1px solid var(--border-soft);margin-top:14px;padding-top:14px}.cv-library-tier-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;font-weight:700}.cv-library-item{box-sizing:border-box;border:1px solid var(--border-primary);border-left:2px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--text-muted);opacity:.55;cursor:grab;background:0 0;margin-bottom:6px;padding:8px 10px;font-weight:500}.cv-library-item:active{cursor:grabbing}.cv-library-item:last-child{margin-bottom:0}.cv-library-item.is-selected{border-color:var(--cv-color,var(--color-primary));border-left-color:var(--cv-color,var(--color-primary));background:var(--cv-bg,var(--color-primary-soft));color:var(--text-primary);opacity:1;font-weight:600}.cv-node-count{font-variant-numeric:tabular-nums;opacity:.85;margin-left:6px}.cv-plan-actions-bar{justify-content:flex-end;align-items:center;gap:var(--spacing-md);padding:14px var(--spacing-lg);border-top:1px solid var(--border-primary);display:flex}.ft-container{box-sizing:border-box;border-radius:var(--radius-md);flex-direction:column;align-items:center;padding:40px 24px;display:flex;position:relative}.ft-container:hover{background:#ffffff0d}:root[data-theme=light] .ft-container:hover{background:#0000000d}.ft-parent-row{z-index:1;justify-content:center;display:flex}.ft-children-scroll{z-index:1;scrollbar-gutter:stable;overscroll-behavior-x:contain;width:100%;margin-top:48px;padding-bottom:12px;overflow:auto hidden}.ft-children-row{justify-content:center;align-items:flex-start;gap:56px;width:max-content;min-width:100%;display:flex}.ft-connectors{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.ft-line{stroke:var(--border-soft);stroke-width:2px}.ft-couple{align-items:center;gap:8px;display:flex}.ft-spouse-link{background:var(--border-soft);flex-shrink:0;width:64px;height:2px;position:relative}.ft-spouse-link:after{content:"MARRIED";color:var(--text-tertiary);white-space:nowrap;font-size:10px;position:absolute;transform:translate(25%)translateY(-90%)}.ft-couple--small .ft-spouse-link:after{transform:translate(25%)}.ft-person{flex-direction:column;align-items:center;gap:6px;display:flex}.ft-person.small{text-overflow:ellipsis;background:var(--surface-elevated);border-radius:var(--radius-xl);border:1px solid var(--border-primary);flex-direction:row;padding:4px 8px;overflow:hidden}.ft-person.small .ft-circle{width:24px;height:24px;font-size:9px}.ft-circle{background:var(--surface-elevated);border:2px solid var(--border-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.ft-couple--large .ft-circle{width:64px;height:64px;font-size:18px}.ft-couple--small .ft-circle{width:48px;height:48px;font-size:14px}.ft-label{text-align:center}.ft-name{color:var(--text-primary);white-space:nowrap;font-size:13px;font-weight:600}.ft-subtitle{color:var(--text-tertiary);white-space:nowrap;font-size:11px}.doc-review-card{width:100%}.client-documents-page{flex-direction:column;width:100%;height:100%;display:flex;overflow-y:auto}.doc-review-list{gap:var(--spacing-md);flex-direction:column;width:100%;display:flex}.doc-review-list.is-intake{gap:var(--spacing-lg);min-width:55vw;min-height:55vh;margin:var(--spacing-lg) 0}.doc-review-status{justify-content:center;align-items:center;gap:var(--spacing-sm);text-align:center;width:100%;min-height:320px;padding:var(--spacing-lg);flex-direction:column;display:flex}.doc-review-status-label{font-size:var(--fs-lg);color:var(--text-primary)}.doc-review-status-subtitle{font-size:var(--fs-md);color:var(--text-muted);max-width:420px}.doc-card{background:var(--surface-primary-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-sm);flex-direction:column;width:100%;min-height:0;scroll-margin-top:200px;display:flex;overflow:visible}.doc-card.doc-card--intake{border:none;border-left:3px solid var(--color-base);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.doc-card-header{align-items:center;gap:var(--spacing-md);border-bottom:1px solid var(--border-muted);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:row;padding:20px 24px;display:flex}.doc-card:not(.is-open) .doc-card-header{border-bottom:none}.doc-card-icon{border-radius:var(--radius-sm);color:var(--text-tertiary);background:var(--surface-hover);flex-shrink:0;align-items:center;display:inline-flex}.doc-card-heading{flex-direction:column;flex:auto;align-items:flex-start;min-width:0;display:flex}.doc-card-title-row{align-items:center;gap:var(--spacing-sm);min-width:0;max-width:100%;display:flex}.doc-card-ext{color:var(--danger);background:var(--danger-soft);flex-shrink:0}.doc-card-title{min-width:0;font-family:var(--font-body);font-weight:600;font-size:var(--fs-3xl);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;overflow:hidden}.doc-card-subtitle{font-size:var(--fs-xs);color:var(--color-primary-bright)}.doc-card-collapse{grid-template-rows:0fr;transition:grid-template-rows .26s;display:grid}.doc-card-collapse.is-open{grid-template-rows:1fr}.doc-card-collapse-inner{min-height:0;overflow:hidden}.doc-card-body{padding:var(--spacing-md) 24px var(--spacing-lg)}.doc-card-actions{align-items:center;gap:var(--spacing-sm);cursor:default;flex-shrink:0;display:inline-flex}.doc-card-message{align-items:center;gap:var(--spacing-sm);text-align:center;color:var(--text-muted);padding:var(--spacing-lg);flex-direction:column;display:flex}.doc-fields-form{flex-direction:column;align-items:stretch;width:100%;display:flex}.m-content .doc-fields-form{padding:var(--spacing-lg)}.doc-field-value{color:var(--text-secondary);overflow-wrap:anywhere}.doc-empty-value{color:var(--text-tertiary)}.doc-stringlist{gap:var(--spacing-sm);flex-direction:column;width:100%;display:flex}.doc-stringlist-row{align-items:center;gap:var(--spacing-sm);width:100%;display:flex}.doc-textarea{resize:vertical;min-height:72px;font-family:inherit}:root{--wq-table-columns:minmax(220px, 1.6fr) minmax(180px, 1fr) minmax(180px, 1fr) minmax(110px, .8fr) minmax(160px, .9fr) minmax(140px, .8fr);--wq-table-max-height:32rem;--wq-table-cell-px:24px;--wq-table-cell-py:2px;--wq-table-header-bg:transparent;--wq-table-header-text:var(--text-muted);--wq-table-row-border:var(--border-soft);--wq-table-row-hover:var(--surface-elevated);--wq-table-header-z:2}.wq-info-text{color:var(--text-muted);font-size:var(--fs-sm)}.wq-status-card{justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--surface-primary-gradient);flex-direction:column;width:100%;height:100%;min-height:100%;display:flex}.wq-status-label{font-family:var(--font-display);font-size:var(--fs-5xl);color:var(--text-primary);font-weight:700}.wq-status-label>span{padding:var(--spacing-sm);font-size:var(--fs-xs);color:var(--text-accent);font-weight:600}.wq-status-label>span.nil{color:var(--text-muted)}.wq-table{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--surface-primary-gradient);flex-direction:column;flex:1;width:100%;min-height:100%;display:flex;position:relative;overflow:auto hidden}.wq-table-body{flex-direction:column;width:fit-content;min-width:100%;min-height:100%;display:flex;overflow:hidden auto}.wq-table-row{grid-template-columns:var(--wq-table-columns);width:fit-content;min-width:100%;padding:var(--spacing-sm) 0;flex-shrink:0;align-items:center;display:grid}.wq-table-row>*{padding:var(--wq-table-cell-py) var(--wq-table-cell-px);min-width:0}.wq-table-row:not(.header){border-bottom:1px solid var(--wq-table-row-border);color:var(--text-primary);font-size:var(--fs-md);transition:background-color var(--transition-fast)}.wq-table-row:not(.header):hover{background:var(--wq-table-row-hover);cursor:pointer}.wq-table-row:not(.header):last-child{border-bottom:none}.wq-table-row.header{z-index:var(--wq-table-header-z);background:var(--wq-table-header-bg);color:var(--wq-table-header-text);font-size:var(--fs-xs);border-bottom:1px solid var(--border-muted);padding:8px 0;font-weight:600;position:sticky;top:0}.wq-cell-muted{font-size:var(--fs-xs);color:var(--text-tertiary);font-variant-numeric:tabular-nums;justify-content:center;display:flex}.wq-header-font{font-family:var(--font-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.07em;white-space:wrap;text-overflow:ellipsis;color:var(--text-muted);font-weight:600}.sd-chevron{color:var(--text-faint);font-size:var(--fs-sm);transition:transform var(--transition-fast);line-height:1}.sd-chevron-open{transform:rotate(180deg)}.sd-menu{background:var(--surface-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:fit-content;min-width:200px;height:fit-content;box-shadow:var(--shadow-dropdown);z-index:20;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px)}.sd-option{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-md);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;margin:2px 0;padding:8px 10px;display:block}.sd-option:hover{background:var(--surface-hover)}.sd-option-active{color:var(--text-primary);background:var(--surface-tertiary);font-weight:600}.sd-option-active:hover{background:var(--surface-tertiary)}.pe-fade-in{flex-direction:column;flex:1;min-height:0;animation:.25s pe-fade;display:flex}form.card{padding:var(--spacing-lg);border-radius:var(--radius-md);background:var(--surface-primary-gradient);min-width:55vw;margin:var(--spacing-lg) 0;box-shadow:var(--shadow-lg);border-left:3px solid var(--color-base);flex-direction:column;justify-content:center;align-items:stretch;display:flex}.display-card{min-width:55vw;margin:var(--spacing-lg) 0;gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.card-container{margin:0 var(--spacing-lg);flex-direction:column;justify-content:center;align-items:stretch;width:100%;display:flex}.fields{gap:var(--spacing-lg);width:100%;font-size:var(--fs-2xl);flex-direction:column;display:flex}.field-row{border-bottom:1px solid var(--border-primary);align-items:flex-start;gap:32px;padding:22px 0;display:flex}.field-row:last-child{border-bottom:none}.field-section-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:var(--spacing-lg);border-top:1px solid var(--border-soft);margin:4px 0;font-weight:700}.field-section:first-child .field-section-label{border-top:none;padding-top:0}.field-label{text-align:left;font-size:var(--fs-lg);color:var(--text-secondary);flex-direction:column;flex:1 0;padding-top:8px;display:flex}.field-body{border-left:1px solid var(--border-soft);flex-direction:column;flex:1;align-items:flex-start;min-width:0;padding-left:32px;display:flex}.input-percent{flex:none;width:80px}.hidden-input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute}.upload-zone{border:1px dashed var(--border-primary);border-radius:var(--radius-lg);background:var(--surface-primary-gradient);width:100%;min-height:128px;color:var(--text-secondary);transition:border-color var(--transition-base), background var(--transition-base);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:34px 24px;display:flex}.upload-zone span{font-size:var(--fs-md);text-align:center}.upload-zone.drag,.upload-zone:hover{border-color:var(--accent);background:var(--accent-soft-bg);border-style:solid}.upload-zone.disabled{cursor:not-allowed;opacity:.6}.upload-zone.disabled.drag,.upload-zone.disabled:hover{border-color:var(--border-primary);background:var(--surface-primary-gradient);border-style:dashed}.file-item{justify-content:space-between;align-items:center;gap:var(--spacing-lg);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-primary);border-radius:var(--radius-lg);background:var(--surface-modal);cursor:pointer;display:flex;position:relative}.file-item:hover{background:var(--surface-hover)}.file-item.umarked:after{content:"";border-radius:var(--radius-lg) 0 0 var(--radius-lg);background:#27000042;position:absolute;inset:0 65px 0 0}.choice-grid{flex-direction:column;align-items:flex-start;width:100%;display:flex}.intake-form-layout{grid-template:"navbar content""actions actions"1fr/280px 1fr;align-items:stretch;width:100%;min-height:100%;display:grid}.intake-form-navbar{flex-direction:column;grid-area:navbar;align-items:flex-start;width:100%;height:100%;display:flex;position:relative}.intake-nav-bar-content{text-align:center;top:var(--spacing-lg);background:var(--surface-sidebar);border:1px solid var(--border-muted);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);position:sticky;left:64px}.intake-form-actions{justify-content:space-between;align-self:flex-end;gap:var(--spacing-sm);background:var(--surface-sidebar);border-top:1px solid var(--border-muted);width:100%;padding:var(--spacing-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-area:actions;display:flex;position:sticky;bottom:0}.intake-form-panel{margin:0 var(--spacing-xl);flex-direction:column;grid-area:content;align-items:flex-start;width:100%;display:flex}.intake-form-title{font-family:var(--font-display);color:var(--text-primary);text-align:flex-start;padding-top:8px}.intake-form-note{color:var(--text-muted);font-size:var(--fs-sm);text-align:flex-start}.add-row{align-items:center;gap:var(--spacing-sm);width:100%;display:flex}.add-row .input{flex:1}.pill-button{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-xl);border:1px solid var(--border-primary);color:var(--text-secondary);font-size:var(--fs-sm);white-space:nowrap;background:0 0;align-self:flex-start;display:inline-flex}.pill-button:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--color-primary)}.pill-button svg{flex-shrink:0;width:14px;height:14px}.radio-group{gap:var(--spacing-sm);flex-flow:wrap;flex:1;width:100%;display:flex}.radio-button{width:max-content;min-width:calc(50% - var(--spacing-sm)/2);box-sizing:border-box;justify-content:flex-start;align-items:center;gap:var(--spacing-sm);max-width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--surface-tertiary);color:var(--text-secondary);font-size:var(--fs-md);flex:1 0 auto;display:inline-flex}.radio-button:hover{background:var(--surface-hover);color:var(--text-primary)}.radio-button.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--text-primary)}.radio-dot{border:1.5px solid var(--text-tertiary);border-radius:50%;flex-shrink:0;width:14px;height:14px;position:relative}.radio-button.active .radio-dot{border-color:var(--color-primary)}.radio-button.active .radio-dot:after{content:"";background:var(--color-primary);border-radius:50%;position:absolute;inset:2px}.radio-label{white-space:normal;overflow-wrap:break-word;word-break:break-word}.field-calc-note{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--fs-sm);max-width:420px;line-height:1.5}.field-calc-note.info{background:var(--surface-tertiary);color:var(--text-secondary);border:1px solid var(--border-soft)}.field-calc-note.warning{background:var(--color-warning-soft);color:var(--text-warning);border:1px solid var(--color-warning)}.field-calc-note strong{color:inherit}.field-row.stacked{align-items:stretch;gap:var(--spacing-sm);flex-direction:column}.field-row.stacked .field-label{text-align:left;width:100%;padding-top:0}.field-row.stacked .field-body{border-left:none;padding-left:0}@media screen and (width<=1400px){.field-row{align-items:stretch;gap:var(--spacing-sm);flex-direction:column}.field-row .field-label{text-align:left;width:100%;padding-top:0}.field-row .field-body{border-left:none;padding-left:0}}.checkbox-group{gap:var(--spacing-sm);flex-flow:wrap;display:flex}.checkbox-button{flex:1 1 calc(50% - var(--spacing-sm)/2);justify-content:flex-start;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--surface-tertiary);color:var(--text-secondary);font-size:var(--fs-md);display:inline-flex}.checkbox-button:hover{background:var(--surface-hover);color:var(--text-primary)}.checkbox-button.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--text-primary)}.checkbox-box{border-radius:var(--radius-xs);border:1.5px solid var(--text-tertiary);flex-shrink:0;width:16px;height:16px;position:relative}.checkbox-button.active .checkbox-box{border-color:var(--color-primary);background:var(--color-primary)}.checkbox-button.active .checkbox-box:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:0;left:3px;transform:rotate(45deg)}.checkbox-label{white-space:nowrap}.child-list{gap:var(--spacing-sm);flex-direction:column;width:100%;display:flex}.child-list .inline{border:1px solid var(--border-muted);border-radius:var(--radius-sm);flex-direction:column;gap:6px;width:100%;padding:14px 16px;display:flex}.child-list .inline-header{justify-content:space-between;align-items:center;display:flex}.child-list .inline-label{font-size:var(--fs-xs);color:var(--text-tertiary);letter-spacing:.02em}.child-list .inline-fields{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.child-list .inline-fields .input:first-child{flex:2;min-width:140px}.input-age{flex:none;width:60px}.child-list .inline-fields .input:last-child{flex:1.5;min-width:120px}.child-list .inline .btn-icon{border-color:var(--border-primary);width:28px;height:28px}.select{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:var(--radius-xs);background-color:var(--surface-tertiary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-sm) center;color:var(--text-primary);padding:var(--spacing-sm) 2rem var(--spacing-sm) var(--spacing-sm);font-size:var(--fs-xl);cursor:pointer;background-size:12px;border:1px solid #0000;min-width:220px;font-family:inherit}.select option{color:var(--text-primary);background-color:#1a1f2d}:root[data-theme=light] .select option{background-color:var(--surface-secondary)}.select option:checked,.select option:hover,.select option:focus{color:var(--text-primary);background-color:#171d2b}.select:hover{background-color:var(--surface-tertiary)}.select:focus{border:1px solid #154683;outline:none;box-shadow:0 0 0 3px #171d2b}.searchable-select{width:100%;position:relative}.searchable-select.fit-content{width:auto}.searchable-select-trigger.fit-content{width:auto;min-width:120px}.searchable-select-trigger{justify-content:space-between;align-items:center;gap:var(--spacing-sm);width:100%;padding-right:var(--spacing-sm);cursor:text;background-image:none;display:flex}.searchable-select-trigger:hover{background-color:var(--surface-tertiary)}.searchable-select-trigger.is-disabled{cursor:not-allowed;opacity:.5}.searchable-select-trigger.is-disabled:hover{background-color:inherit}.searchable-select-input{width:100%;min-width:0;color:var(--text-primary);font-size:var(--fs-xl);cursor:inherit;background:0 0;border:none;outline:none;flex:1;padding:0;font-family:inherit}.searchable-select-input::placeholder{color:var(--text-placeholder)}.searchable-select-chevron{color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.searchable-select-chevron.open{transform:rotate(180deg)}.searchable-select-panel{z-index:20;background:var(--surface-modal);border:1px solid var(--border-modal);border-radius:var(--radius-sm);max-height:220px;box-shadow:var(--shadow-dropdown);padding:var(--spacing-xs);flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.searchable-select-option{width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-xs);color:var(--text-body);font-size:var(--fs-md);text-align:left;justify-content:flex-start;display:flex}.searchable-select-option:hover{background:var(--surface-hover);color:var(--text-primary)}.searchable-select-option.active{background:var(--color-primary-soft);color:var(--text-primary)}.searchable-select-empty{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-tertiary);font-size:var(--fs-sm)}.tp-nav{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex;position:relative}.tp-nav-item{position:relative}.tp-nav-btn{border-radius:var(--radius-md);width:100%;font:inherit;text-align:left;color:var(--text-tertiary);font-size:var(--fs-xs);cursor:default;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;align-items:center;gap:14px;padding:10px 6px;display:flex}.tp-nav-dot{border:1.5px solid var(--text-tertiary);z-index:1;background:0 0;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-left:7px;transition:all .2s ease-in-out;position:relative}.tp-nav-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tp-nav-item.upcoming .tp-nav-label{color:var(--text-tertiary)}.tp-nav-item.done .tp-nav-btn{cursor:pointer}.tp-nav-item.done .tp-nav-dot{border-color:var(--color-primary);background:var(--color-primary);box-shadow:none}.tp-nav-dot:before{content:"";border-radius:var(--radius-xl);background:var(--surface-tertiary);width:3px;height:20px;transition:background var(--transition-base);position:absolute;bottom:220%;left:50%;transform:translate(-50%)}.tp-nav-item.done .tp-nav-dot:before,.tp-nav-item.active .tp-nav-dot:before{background:linear-gradient(to bottom, var(--color-primary) 0%, #1e72d44d 100%)}.tp-nav-item:first-of-type .tp-nav-dot:before{display:none}.tp-nav-item.done .tp-nav-label{color:var(--text-secondary)}.tp-nav-item.done .tp-nav-btn:hover,.tp-nav-item.done .tp-nav-btn:focus-visible{background:var(--surface-hover)}.tp-nav-item.done .tp-nav-btn:hover .tp-nav-dot,.tp-nav-item.done .tp-nav-btn:focus-visible .tp-nav-dot{background:var(--color-primary);box-shadow:0 0 8px 4px var(--color-primary-hard)}.tp-nav-item.done .tp-nav-btn:hover .tp-nav-label,.tp-nav-item.done .tp-nav-btn:focus-visible .tp-nav-label{color:var(--text-primary)}.tp-nav-item.done .tp-nav-btn:focus-visible{outline:none}.tp-nav-item.done .tp-nav-btn:focus-visible .tp-nav-dot{outline:2px solid var(--color-primary);outline-offset:3px}.tp-nav-item.active .tp-nav-dot{border-color:var(--status-score-fg);background:var(--status-score-fg);width:11px;height:11px;box-shadow:0 0 0 3px var(--status-score-glow);margin-left:5px;animation:1.8s ease-out infinite tp-nav-pulse-blue;bottom:100%}.tp-nav-item.active .tp-nav-label{color:var(--text-primary);font-weight:600}@keyframes tp-nav-pulse-blue{0%{box-shadow:0 0 0 3px var(--status-score-glow)}70%{box-shadow:0 0 0 7px var(--status-score-glow-0)}to{box-shadow:0 0 0 3px var(--status-score-glow)}}.ov-main{padding:var(--spacing-xl);flex-direction:column;justify-content:center;align-items:center;min-height:100%;display:flex;position:relative}.ov-hero{gap:var(--spacing-xl);flex-direction:row;flex:1;display:flex}.ov-intro{justify-content:center;align-items:center;gap:var(--spacing-xl);margin:var(--spacing-xl);flex-direction:column;display:flex}.ov-footer{padding:var(--spacing-sm);text-align:center;font-size:var(--fs-xs);color:var(--text-tertiary);position:absolute;bottom:0}.ov-panel{font-size:var(--fs-md);color:var(--text-body)}.ov-step{border-radius:var(--radius-sm);background:var(--surface-primary-gradient);border:1px solid var(--border-primary);padding:var(--spacing-xl);margin:var(--spacing-sm);box-shadow:var(--shadow-dropdown);flex-direction:column;display:flex}.ov-step:last-child{border-bottom:none}.ov-step-badge{border-radius:var(--radius-sm);background:var(--surface-tertiary);border:1px solid var(--border-primary);width:26px;height:26px;color:var(--text-primary);font-size:var(--fs-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.ov-pillars{border:1px solid var(--border-primary);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,.75fr));gap:0;display:grid;overflow:hidden}.ov-pillar{padding:var(--spacing-xl);align-items:flex-start;gap:var(--spacing-md);background:#ffffff08;display:flex}.ov-pillar-icon{width:42px;height:42px;color:var(--color-primary-bright);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ov-pillar-name{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 6px;font-weight:600}.ov-pillar-desc{font-size:var(--fs-md);color:var(--text-muted)}.extract-spinner{overflow:visible}.extract-ring-group{transform-origin:14px 14px;animation:1.5s linear infinite ring-rotate}.extract-ring-arc{stroke-dasharray:1 150;stroke-dashoffset:0;transform-origin:14px 14px;animation:1.5s cubic-bezier(.65,0,.35,1) infinite ring-dash}@keyframes ring-rotate{to{transform:rotate(360deg)}}@keyframes ring-dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:58 150;stroke-dashoffset:-18px}to{stroke-dasharray:58 150;stroke-dashoffset:-86px}}.extract-doc{transform-origin:14px 14px;animation:2.6s ease-in-out infinite doc-breathe}@keyframes doc-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.extract-line{stroke-dasharray:8;stroke-dashoffset:8px;opacity:.25;animation:2.4s ease-in-out infinite line-draw}.extract-line-1{animation-delay:0s}.extract-line-2{animation-delay:.18s}.extract-line-3{animation-delay:.36s}@keyframes line-draw{0%{stroke-dashoffset:8px;opacity:.25}35%,60%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-8px;opacity:.25}}.extract-scan{animation:2.1s ease-in-out infinite scan-move}@keyframes scan-move{0%{opacity:0;transform:translateY(0)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translateY(13px)}}@media (prefers-reduced-motion:reduce){.extract-ring-group,.extract-ring-arc,.extract-doc,.extract-line,.extract-scan{animation:none}}.fetch-packet{animation:1.6s ease-in-out infinite fetch-drop}@keyframes fetch-drop{0%{opacity:0;transform:translateY(0)}15%{opacity:1}70%{opacity:1;transform:translateY(6px)}to{opacity:0;transform:translateY(7px)}}.fetch-light{animation:1.6s ease-in-out infinite fetch-blink}.fetch-light-1{animation-delay:0s}.fetch-light-2{animation-delay:.8s}@keyframes fetch-blink{0%,to{opacity:.25}50%{opacity:1}}.fetch-pulse{opacity:0;animation:1.6s ease-in-out infinite fetch-ping}.fetch-pulse-1{animation-delay:0s}.fetch-pulse-2{animation-delay:.15s}.fetch-pulse-3{animation-delay:.3s}@keyframes fetch-ping{0%{opacity:0}30%,70%{opacity:1}to{opacity:0}}.score-bar{transform-box:fill-box;transform-origin:bottom;animation:1.2s ease-in-out infinite score-pulse}.score-bar-1{animation-delay:0s}.score-bar-2{animation-delay:.15s}.score-bar-3{animation-delay:.3s}@keyframes score-pulse{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.submit-plane{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite submit-nudge}@keyframes submit-nudge{0%,to{transform:translate(0)}50%{transform:translate(2px)}}.submit-trail{animation:1.4s ease-in-out infinite submit-trail-fade}.submit-trail-1{animation-delay:0s}.submit-trail-2{animation-delay:.12s}.submit-trail-3{animation-delay:.24s}@keyframes submit-trail-fade{0%,to{opacity:0}50%{opacity:.6}}.profile-draw{stroke-dasharray:30;animation:2.2s ease-in-out infinite profile-draw-loop}@keyframes profile-draw-loop{0%{stroke-dashoffset:30px}55%,70%{stroke-dashoffset:0}to{stroke-dashoffset:-30px}}.view-content{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite eye-blink}@keyframes eye-blink{0%,88%,to{transform:scaleY(1)}94%{transform:scaleY(.1)}}.edit-pencil{transform-origin:8.5px 19.5px;animation:1s ease-in-out infinite pencil-write}@keyframes pencil-write{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.error-content{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite error-pulse}@keyframes error-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.error-mark{animation:1.4s ease-in-out infinite error-flash}@keyframes error-flash{0%,to{opacity:1}50%{opacity:.4}}.theme-content{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite theme-flip}@keyframes theme-flip{0%,40%{transform:rotate(0)}50%,90%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.info-content{transform-box:fill-box;transform-origin:50%;animation:2.2s ease-in-out infinite info-pulse}@keyframes info-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.save-shutter{animation:1.4s ease-in-out infinite save-blink}@keyframes save-blink{0%,to{opacity:.35}50%{opacity:1}}.save-line{opacity:.15;animation:1.6s ease-in-out infinite save-line-write}.save-line-1{animation-delay:0s}.save-line-2{animation-delay:.25s}@keyframes save-line-write{0%,to{opacity:.15}40%,60%{opacity:1}}.trash-lid{transform-box:fill-box;transform-origin:10%;animation:1.2s ease-in-out infinite trash-lid-open}@keyframes trash-lid-open{0%,20%,to{transform:rotate(0)}50%{transform:rotate(-18deg)}}.trash-ridge{animation:1.2s ease-in-out infinite trash-ridge-fade}.trash-ridge-1{animation-delay:0s}.trash-ridge-2{animation-delay:.1s}.trash-ridge-3{animation-delay:.2s}@keyframes trash-ridge-fade{0%,40%,to{opacity:1}60%{opacity:.25}}
