:root{--bg:#f5f0e8;--bg-strong:#efe7db;--card:rgba(255,252,247,0.9);--ink:#22211f;--muted:#524e47;--line:rgba(28,27,24,0.12);--accent:#a94d2f;--accent-soft:#e8bb93;--accent-subtle:rgba(169,77,47,0.18);--success:#256045;--success-subtle:rgba(37,96,69,0.22);--warning:#9e5b0e;--warning-subtle:rgba(158,91,14,0.14);--danger:#9f2b2b;--danger-subtle:rgba(159,43,43,0.18);--neutral-subtle:rgba(94,106,127,0.15);--shadow:0 24px 80px rgba(62,42,24,0.14);--series-1:#a94d2f;--series-2:#2f6f52;--series-3:#5e6a7f;--chart-surface:rgba(255,252,247,0.6);--grad-1:rgba(169,77,47,0.15);--grad-2:rgba(71,111,82,0.14);--field-bg:rgba(255,255,255,0.90);--card-accent-bg:linear-gradient(180deg,rgba(255,248,240,0.9),rgba(255,255,255,0.55));--type-2xs:12px;--type-xs:14px;--type-sm:16px;--type-md:18px;--type-lg:22px;--type-xl:28px;--type-2xl:36px;--type-3xl:48px;--data-hero:clamp(2.5rem,6vw,4rem);--motion-fast:150ms;--motion-normal:200ms;--motion-slow:250ms;--ease-out:cubic-bezier(0.16,1,0.3,1)}@media (prefers-color-scheme:dark){:root:not(.light){--bg:#0a0908;--bg-strong:#121110;--card:rgba(22,20,18,0.95);--ink:#f4f0e9;--muted:#cbc5b9;--line:rgba(232,230,225,0.15);--accent:#e08567;--accent-soft:#855d40;--accent-subtle:rgba(224,133,103,0.28);--success:#54b587;--success-subtle:rgba(84,181,135,0.28);--warning:#eab464;--warning-subtle:rgba(234,180,100,0.20);--danger:#d96868;--danger-subtle:rgba(217,104,104,0.28);--neutral-subtle:rgba(148,163,189,0.18);--shadow:0 24px 80px rgba(0,0,0,0.5);--series-1:#e08567;--series-2:#54b587;--series-3:#94a3bd;--chart-surface:rgba(22,20,18,0.7);--grad-1:rgba(224,133,103,0.10);--grad-2:rgba(84,181,135,0.10);--field-bg:rgba(0,0,0,0.65);--card-accent-bg:linear-gradient(180deg,rgba(45,35,30,0.85),rgba(25,20,18,0.7))}}html.dark{--bg:#0a0908;--bg-strong:#121110;--card:rgba(22,20,18,0.95);--ink:#f4f0e9;--muted:#cbc5b9;--line:rgba(232,230,225,0.15);--accent:#e08567;--accent-soft:#855d40;--accent-subtle:rgba(224,133,103,0.28);--success:#54b587;--success-subtle:rgba(84,181,135,0.28);--warning:#eab464;--warning-subtle:rgba(234,180,100,0.20);--danger:#d96868;--danger-subtle:rgba(217,104,104,0.28);--neutral-subtle:rgba(148,163,189,0.18);--shadow:0 24px 80px rgba(0,0,0,0.5);--series-1:#e08567;--series-2:#54b587;--series-3:#94a3bd;--chart-surface:rgba(22,20,18,0.7);--grad-1:rgba(224,133,103,0.10);--grad-2:rgba(84,181,135,0.10);--field-bg:rgba(0,0,0,0.65);--card-accent-bg:linear-gradient(180deg,rgba(45,35,30,0.85),rgba(25,20,18,0.7))}*{box-sizing:border-box}html{font-family:var(--font-sans,Inter,system-ui,-apple-system,sans-serif);background-color:var(--bg);background-image:radial-gradient(circle at top left,var(--grad-1),transparent 30%),radial-gradient(circle at right 20%,var(--grad-2),transparent 24%),linear-gradient(180deg,var(--bg) 0,var(--bg-strong) 100%);color:var(--ink)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display,"Outfit",sans-serif);font-weight:600}strong{font-weight:500}body,html{margin:0;min-height:100vh;width:100%;overflow-x:clip}.money,.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@media (prefers-reduced-motion:reduce){body:before{display:none}}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}select{width:100%;background-color:var(--field-bg)}option{background-color:var(--bg-strong);color:var(--ink)}.app-shell{max-width:1280px;margin:0 auto;padding:32px 20px 64px}.app-shell:has(.sticky-header){padding-top:0}.sticky-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:var(--card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line);margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;padding-top:12px}.sticky-header .nav-bar,.sticky-header .top-bar{margin-bottom:0;padding-bottom:10px}.top-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.hero{display:grid;grid-gap:18px;gap:18px;margin-bottom:32px}.sticky-header~.hero{margin-top:20px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;font-size:15px;font-weight:700;color:var(--accent)}.hero h1{margin:0;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.1;font-weight:700;letter-spacing:-.02em}.hero p{margin:0;max-width:68ch;color:var(--muted);font-size:1.05rem;line-height:1.6}.finances-subtitle-hint{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--accent) 7%,var(--card));border:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);border-radius:8px;font-size:.88rem;color:var(--muted);line-height:1.45;margin-top:4px}.finances-subtitle-hint__icon{font-size:1.1rem;flex-shrink:0}.finances-subtitle-hint__text{font-weight:500}.nav-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 28px}.nav-chip{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);background:var(--card);padding:10px 14px;border-radius:999px;color:var(--muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.nav-chip:hover{color:var(--ink);border-color:var(--accent)}.nav-chip[data-active=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:600}.nav-chip-inputs{margin-left:auto;font-size:13px;opacity:.85}.nav-chip svg{color:var(--muted);transition:color .15s ease-out}.nav-chip:hover svg,.nav-chip[data-active=true] svg{color:inherit}.workspace-switcher{flex-wrap:wrap;gap:4px;padding:4px;margin:0;background:var(--bg-strong);border:1px solid var(--line)}.workspace-chip,.workspace-switcher{display:inline-flex;border-radius:999px}.workspace-chip{align-items:center;min-height:34px;padding:6px 16px;color:var(--muted);font-weight:600;font-size:.95rem;letter-spacing:-.01em;text-decoration:none;transition:color .15s ease,background .15s ease}.workspace-chip:hover{color:var(--ink)}.workspace-chip[data-active=true]{background:var(--ink);color:var(--bg)}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:18px;gap:18px}.home-module-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--ink);transition:transform .18s ease,border-color .18s ease}.home-module-card:hover{transform:translateY(-3px);border-color:var(--accent)}.home-module-card__stat{font-family:var(--font-display,"Outfit",sans-serif);font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:700;line-height:1.1;letter-spacing:-.02em;margin-top:8px}.home-module-card__stat-label{color:var(--muted);font-size:.92rem}.home-module-card__status{font-weight:600;font-size:.92rem;margin-top:4px}.home-module-card__cta{margin-top:auto;padding-top:14px;color:var(--accent);font-weight:600;font-size:.92rem}.progress-home-strip{display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,1.6fr) auto;align-items:center;grid-gap:18px;gap:18px;color:var(--ink);text-decoration:none;transition:border-color .18s ease,transform .18s ease}.progress-home-strip:hover{border-color:var(--accent);transform:translateY(-2px)}.progress-home-strip h2{margin:6px 0 0;font-size:1.35rem}.progress-home-strip__metrics{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));grid-gap:12px;gap:12px}.progress-home-strip__metrics span{display:grid;grid-gap:4px;gap:4px;color:var(--muted);font-size:.86rem}.progress-home-strip__metrics strong{color:var(--ink);font-size:1.35rem;line-height:1}.forecast-game-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-game-grid>*{min-width:0}.forecast-hero-card{grid-column:1/-1}.forecast-kpi-grid,.forecast-result-grid,.forecast-track-record{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:14px;gap:14px}.forecast-kpi-grid>div,.forecast-result-grid>div,.forecast-track-record>div{display:grid;grid-gap:5px;gap:5px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--bg-strong)}.forecast-kpi-grid strong,.forecast-result-grid strong,.forecast-track-record strong{font-size:1.25rem;overflow-wrap:anywhere}.forecast-label{color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.forecast-month-progress{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.forecast-month-progress__meta,.forecast-range-labels,.progress-badge-card__meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.86rem}.forecast-form{display:grid;grid-gap:12px;gap:12px}.forecast-input-row{display:grid;grid-template-columns:minmax(160px,1fr) auto;grid-gap:12px;gap:12px;align-items:center}.forecast-range{width:100%;accent-color:var(--accent)}.forecast-result-card{padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--card);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.forecast-inline-result{display:grid;grid-gap:12px;gap:12px}.forecast-result-card[data-tone=success]{border-color:color-mix(in srgb,var(--success) 42%,transparent)}.forecast-result-card[data-tone=warning]{border-color:color-mix(in srgb,var(--warning) 42%,transparent)}.forecast-result-card[data-tone=danger]{border-color:color-mix(in srgb,var(--danger) 42%,transparent)}.form-error{padding:10px 12px;border-radius:14px;color:var(--danger);background:var(--danger-subtle);border:1px solid color-mix(in srgb,var(--danger) 28%,transparent)}.progress-dashboard{display:grid;grid-gap:18px;gap:18px}.progress-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:18px;gap:18px}.progress-stat-card{display:grid;grid-gap:7px;gap:7px}.progress-stat-card strong{font-size:2rem;line-height:1.05}@media (max-width:520px){.progress-stat-card strong{font-size:1.7rem}}.progress-chart-wrap{display:grid;grid-gap:12px;gap:12px}.progress-trend-chart{width:100%;min-height:220px;border:1px solid var(--line);border-radius:18px;background:var(--chart-surface)}.progress-chart-axis,.progress-chart-gridline{stroke:var(--line);stroke-width:1.2}.progress-chart-gridline{stroke-dasharray:5 8}.progress-chart-line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.progress-chart-line--fire{stroke:var(--accent)}.progress-chart-line--resilience{stroke:var(--success)}.progress-chart-line--savings{stroke:var(--series-3)}.progress-chart-footer,.progress-chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:12px;justify-content:space-between}.progress-chart-legend span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.9rem}.legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.legend-dot--fire{background:var(--accent)}.legend-dot--resilience{background:var(--success)}.legend-dot--savings{background:var(--series-3)}.progress-badge-grid,.wrapped-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.progress-badge-card,.wrapped-card{display:grid;grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--bg-strong)}.progress-badge-card[data-earned=true]{border-color:color-mix(in srgb,var(--success) 42%,transparent);background:color-mix(in srgb,var(--success) 8%,var(--bg-strong))}.progress-badge-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.progress-badge-card h3,.wrapped-card h3{margin:0;font-size:1rem}.progress-badge-card p,.wrapped-card p{margin:0;color:var(--muted);line-height:1.5}.wrapped-card strong{font-size:1.45rem;line-height:1.1;overflow-wrap:anywhere}.wrapped-card[data-tone=success]{border-color:color-mix(in srgb,var(--success) 35%,transparent)}.wrapped-card[data-tone=warning]{border-color:color-mix(in srgb,var(--warning) 35%,transparent)}@media (max-width:760px){.forecast-input-row,.progress-home-strip{grid-template-columns:1fr}.progress-home-strip__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.forecast-game-grid{grid-template-columns:1fr}}.jars-panel{display:grid;grid-gap:18px;gap:18px}.jars-panel__head{align-items:flex-end;margin-bottom:4px}.jars-panel__head h2{font-size:1.55rem;line-height:1.1}.jars-panel__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.jars-action-chip{min-height:34px;display:inline-flex;align-items:center;gap:9px;padding:7px 16px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:999px;color:var(--muted);background:color-mix(in srgb,var(--bg) 76%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease}.jars-action-chip span{color:var(--accent);font-weight:700}.jars-action-chip:focus-visible,.jars-action-chip:hover{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 62%,var(--line));outline:none}.jars-action-chip--primary{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 76%,var(--line))}.jar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px}.jar-card{position:relative;min-height:194px;display:grid;grid-template-rows:auto 1fr auto;grid-gap:15px;gap:15px;padding:18px 19px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:8px;background:radial-gradient(circle at 78% 0,color-mix(in srgb,var(--accent) 10%,transparent),transparent 36%),linear-gradient(145deg,color-mix(in srgb,var(--card) 88%,var(--bg)) 0,color-mix(in srgb,var(--bg-strong) 76%,#050505) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 46px rgba(0,0,0,.18);overflow:hidden;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.jar-card--interactive{cursor:pointer}.jar-card--interactive:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.jar-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 22px 54px rgba(0,0,0,.24)}.jar-card__topbar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;grid-gap:12px;gap:12px;padding-right:26px}.jar-card__name{min-width:0;font-family:var(--font-display,"Outfit",sans-serif);font-size:1.18rem;line-height:1.15;font-weight:700;color:var(--ink);overflow-wrap:anywhere}.jar-card__status{display:inline-flex;align-items:center;min-height:25px;padding:0 14px;border-radius:999px;border:1px solid transparent;font-size:.77rem;font-weight:500}.jar-card__status[data-tone=success]{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent);border-color:color-mix(in srgb,var(--success) 28%,transparent)}.jar-card__status[data-tone=warning]{color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,transparent);border-color:color-mix(in srgb,var(--warning) 32%,transparent)}.jar-card__status[data-tone=danger]{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.jar-card__status[data-tone=neutral]{color:var(--muted);background:color-mix(in srgb,var(--muted) 8%,transparent);border-color:color-mix(in srgb,var(--muted) 20%,transparent)}.jar-card__menu-btn{position:absolute;top:-6px;right:-7px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:.9rem;line-height:1;opacity:0;transition:opacity .16s ease,color .16s ease,border-color .16s ease,background .16s ease}.jar-card:hover .jar-card__menu-btn,.jar-card__menu-btn:focus-visible,.jar-card__menu-btn[aria-expanded=true]{opacity:1}.jar-card__menu-btn:focus-visible,.jar-card__menu-btn:hover{color:var(--ink);border-color:var(--line);background:color-mix(in srgb,var(--card) 86%,var(--bg-strong));outline:none}.jar-card__menu{position:absolute;top:28px;right:0;display:grid;grid-gap:4px;gap:4px;min-width:152px;padding:8px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--card) 96%,var(--bg-strong));box-shadow:0 18px 48px rgba(0,0,0,.32);z-index:4}.jar-card__menu button{text-align:left;border:0;background:transparent;color:var(--ink);border-radius:6px;padding:8px 10px;cursor:pointer;font:inherit}.jar-card__menu button:hover{background:var(--accent-subtle)}.jar-card__menu-danger{color:var(--danger)!important}.jar-card__hero{display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto 1fr;grid-column-gap:18px;column-gap:18px;grid-row-gap:12px;row-gap:12px;align-items:center}.jar-card__vertical-meter{position:relative;width:14px;height:104px;grid-row:1/3;align-self:stretch;min-height:98px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:color-mix(in srgb,var(--bg-strong) 72%,transparent);box-shadow:inset 0 0 0 2px rgba(255,255,255,.03),inset 0 -12px 18px rgba(0,0,0,.2);overflow:hidden}.jar-card__vertical-meter span{position:absolute;left:3px;right:3px;bottom:4px;min-height:5px;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--success) 82%,#ffffff),var(--success));box-shadow:0 0 16px color-mix(in srgb,var(--success) 46%,transparent)}.jar-card__vertical-meter[data-tone=warning] span{background:linear-gradient(180deg,color-mix(in srgb,var(--warning) 86%,#ffffff),var(--warning));box-shadow:0 0 16px color-mix(in srgb,var(--warning) 48%,transparent)}.jar-card__vertical-meter[data-tone=danger] span{background:linear-gradient(180deg,color-mix(in srgb,var(--danger) 88%,#ffffff),var(--danger));box-shadow:0 0 16px color-mix(in srgb,var(--danger) 50%,transparent)}.jar-card__vertical-meter[data-tone=neutral] span{background:linear-gradient(180deg,color-mix(in srgb,var(--muted) 80%,#ffffff),var(--muted));box-shadow:0 0 12px color-mix(in srgb,var(--muted) 34%,transparent)}.jar-card__percent{font-family:var(--font-display,"Outfit",sans-serif);font-size:clamp(2.2rem,3.1vw,2.7rem);line-height:1;font-weight:700;color:var(--ink);white-space:nowrap;align-self:end}.jar-card__percent[data-tone=success]{color:var(--success)}.jar-card__percent[data-tone=warning]{color:var(--warning)}.jar-card__percent[data-tone=danger]{color:var(--danger)}.jar-card__summary{display:grid;grid-template-columns:auto auto;justify-content:space-between;grid-gap:14px;gap:14px;align-self:start;padding-top:11px;border-top:1px solid color-mix(in srgb,var(--line) 68%,transparent)}.jar-card__summary-row{display:grid;grid-gap:4px;gap:4px;min-width:0}.jar-card__summary-row span{color:var(--muted);font-size:.74rem;line-height:1.1;white-space:nowrap}.jar-card__summary-row strong{color:var(--ink);font-size:clamp(.82rem,.86vw,.95rem);font-weight:500;line-height:1.15;white-space:nowrap}.jar-card__summary-row strong[data-tone=danger]{color:var(--danger)}.jar-card__bar{height:7px;border-radius:999px;background:color-mix(in srgb,var(--line) 48%,var(--bg-strong));overflow:hidden}.jar-card__bar-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--success) 88%,#ffffff),var(--success));box-shadow:0 0 14px color-mix(in srgb,var(--success) 42%,transparent)}.jar-card__bar-fill[data-tone=warning]{background:linear-gradient(90deg,color-mix(in srgb,var(--warning) 90%,#ffffff),var(--warning));box-shadow:0 0 14px color-mix(in srgb,var(--warning) 44%,transparent)}.jar-card__bar-fill[data-tone=danger]{background:linear-gradient(90deg,color-mix(in srgb,var(--danger) 90%,#ffffff),var(--danger));box-shadow:0 0 14px color-mix(in srgb,var(--danger) 44%,transparent)}.jar-card__bar-fill[data-tone=neutral]{background:linear-gradient(90deg,color-mix(in srgb,var(--muted) 84%,#ffffff),var(--muted));box-shadow:none}.jar-card__categories{display:none}.jar-category-badge{font-size:.72rem;font-weight:700;color:var(--muted);background:color-mix(in srgb,var(--card) 80%,var(--bg-strong));border:1px solid var(--line);padding:3px 8px;border-radius:999px}.jars-summary-strip{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(170px,.8fr) minmax(300px,1.6fr);align-items:center;grid-gap:24px;gap:24px;margin-top:-2px;margin-bottom:12px;padding:17px 24px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:8px;background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 38%),linear-gradient(145deg,color-mix(in srgb,var(--card) 82%,var(--bg)),color-mix(in srgb,var(--bg-strong) 78%,#050505));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.jars-summary-strip__stat{display:grid;grid-gap:5px;gap:5px;min-width:0;padding-right:26px;border-right:1px solid color-mix(in srgb,var(--line) 82%,transparent)}.jars-summary-strip__meter span,.jars-summary-strip__stat span{color:var(--muted);font-size:.78rem}.jars-summary-strip__meter strong,.jars-summary-strip__stat strong{font-family:var(--font-display,"Outfit",sans-serif);font-size:1.28rem;font-weight:600;line-height:1.05;white-space:nowrap}.jars-summary-strip__meter strong[data-tone=success],.jars-summary-strip__stat strong[data-tone=success]{color:var(--success)}.jars-summary-strip__meter strong[data-tone=danger],.jars-summary-strip__stat strong[data-tone=danger]{color:var(--danger)}.jars-summary-strip__meter strong[data-tone=warning]{color:var(--warning)}.jars-summary-strip__meter{display:grid;grid-template-columns:auto minmax(108px,.45fr) minmax(160px,1fr);align-items:center;grid-gap:12px;gap:12px;min-width:0}.jars-summary-strip__bar{height:8px;border-radius:999px;background:color-mix(in srgb,var(--line) 46%,var(--bg-strong));overflow:hidden}.jars-summary-strip__bar span{display:block;height:100%;border-radius:inherit;background:var(--success);box-shadow:0 0 14px color-mix(in srgb,var(--success) 40%,transparent)}.jars-summary-strip__bar span[data-tone=warning]{background:var(--warning);box-shadow:0 0 14px color-mix(in srgb,var(--warning) 40%,transparent)}.jars-summary-strip__bar span[data-tone=danger]{background:var(--danger);box-shadow:0 0 14px color-mix(in srgb,var(--danger) 40%,transparent)}.jars-summary-strip__button{min-height:40px;padding:8px 18px;border:1px solid color-mix(in srgb,var(--accent) 66%,var(--line));border-radius:8px;color:var(--accent);background:transparent;cursor:pointer}.jars-summary-strip__button:focus-visible,.jars-summary-strip__button:hover{color:var(--ink);background:var(--accent-subtle);outline:none}.jar-drawer-backdrop{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.38);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:flex-end}.jar-drawer{width:min(440px,calc(100vw - 24px));height:100%;padding:20px;border-left:1px solid var(--line);background:color-mix(in srgb,var(--card) 96%,var(--bg-strong));box-shadow:-24px 0 60px rgba(0,0,0,.25);overflow:auto}.jar-drawer__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.jar-drawer__head h3{margin:4px 0 0;font-size:1.4rem}.jar-drawer__hero{margin-top:18px;display:grid;grid-gap:18px;gap:18px}.jar-drawer__meter{display:grid;grid-gap:10px;gap:10px;padding:16px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card) 90%,var(--bg-strong))}.jar-drawer__percent{font-family:var(--font-display,"Outfit",sans-serif);font-size:2.4rem;font-weight:700;letter-spacing:-.04em}.jar-drawer__meter-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--bg-strong) 74%,var(--line));overflow:hidden}.jar-drawer__meter-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent) 0,color-mix(in srgb,var(--accent) 68%,var(--success)) 100%)}.jar-drawer__meter-fill[data-tone=warning]{background:linear-gradient(90deg,var(--warning) 0,color-mix(in srgb,var(--warning) 68%,var(--accent)) 100%)}.jar-drawer__meter-fill[data-tone=danger]{background:linear-gradient(90deg,var(--danger) 0,color-mix(in srgb,var(--danger) 68%,var(--accent)) 100%)}.jar-drawer__meter-fill[data-tone=neutral]{background:linear-gradient(90deg,var(--muted) 0,color-mix(in srgb,var(--muted) 80%,var(--line)) 100%)}.jar-drawer__meter-copy{color:var(--muted);font-size:.92rem}.jar-drawer__stats{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.jar-drawer__stat{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--card) 88%,var(--bg-strong))}.jar-drawer__stat span{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.jar-drawer__stat strong{font-size:1rem}.jar-drawer__actions{display:flex;gap:10px;margin-top:18px}.jar-drawer__actions>*{flex:1 1}@media (max-width:600px){.jar-grid{grid-template-columns:1fr;gap:14px}.jar-card{padding:16px;min-height:auto;gap:12px}.jar-card__vertical-meter{display:none}.jar-card__hero{grid-template-columns:75px 1fr;grid-template-rows:auto;align-items:center;gap:16px}.jar-card__name{font-size:1.18rem;font-weight:700}.jar-card__status{font-size:.74rem;padding:0 10px;min-height:22px}.jar-card__menu-btn{opacity:1;color:var(--muted)}.jar-card__percent{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;font-family:var(--font-display,"Outfit",sans-serif);font-size:1.3rem;font-weight:700;align-self:center;line-height:1.2;text-align:left;padding-right:16px;border-right:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.jar-card__percent:before{content:"USED";font-size:.78rem;font-weight:500;letter-spacing:.04em;color:var(--muted);text-transform:uppercase;line-height:1.1;margin-bottom:6px}.jar-card__summary{grid-template-columns:1fr 1fr;gap:12px;padding-top:0;border-top:0;align-self:center}.jar-card__summary-row{gap:2px}.jar-card__summary-row span{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.jar-card__summary-row strong{font-family:var(--font-display,"Outfit",sans-serif);font-size:1.3rem;font-weight:700;color:var(--ink);line-height:1.2}.jars-panel__head{align-items:flex-start}.jars-panel__actions{justify-content:flex-start;width:100%}.jars-summary-strip{grid-template-columns:1fr 1fr;gap:16px;padding:16px}.jars-summary-strip__stat{border-right:0;padding-right:0;display:flex;flex-direction:column;gap:4px}.jars-summary-strip__stat span{font-size:.8rem;color:var(--muted)}.jars-summary-strip__stat strong{font-size:1.35rem;font-weight:700}.jars-summary-strip__meter{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:8px 12px;gap:8px 12px;margin-top:4px;padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--line) 60%,transparent)}.jars-summary-strip__meter strong{font-size:1.35rem;font-weight:700}.jars-summary-strip__meter span{font-size:.8rem;color:var(--muted)}.jars-summary-strip__bar{grid-column:1/-1;height:8px}.jar-drawer{width:100%;border-left:0;border-top:1px solid var(--line)}}@media (min-width:601px) and (max-width:1020px){.jar-grid,.jars-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.jars-summary-strip__button,.jars-summary-strip__meter{grid-column:1/-1}}@media (min-width:1021px) and (max-width:1240px){.jar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1241px) and (max-width:1400px){.jar-card{padding-left:17px;padding-right:17px}.jar-card__summary{gap:12px}}.jar-form{margin-top:20px;padding:18px;border:1px dashed var(--line);border-radius:16px;display:grid;grid-gap:12px;gap:12px;max-width:460px}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.85rem;padding:0}.link-btn:hover{text-decoration:underline}.link-btn--danger{color:var(--danger)}.txn-add{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) auto;grid-gap:8px;gap:8px;margin-bottom:18px}.inline-select{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:4px 8px;color:var(--ink);display:grid;grid-template-columns:140px 1fr 90px;align-items:center;grid-gap:12px;gap:12px;margin-bottom:10px}.bar-row__label{font-size:.9rem;min-width:0;overflow:hidden;word-break:break-word}.bar-row__value{text-align:right;font-size:.9rem;font-weight:600;min-width:0;white-space:nowrap}.bar-track{height:10px;background:var(--bg-strong)}.bar-fill{background:var(--accent)}.category-bars-list{display:flex;flex-direction:column;gap:8px}.spending-cat-row{grid-template-columns:minmax(0,160px) 1fr minmax(0,100px);align-items:center}@media (max-width:600px){.bar-row{grid-template-columns:100px 1fr 80px}.spending-cat-row{grid-template-columns:minmax(0,110px) 1fr minmax(0,88px)}.txn-add{grid-template-columns:1fr 1fr}}@media (max-width:768px){.nav-chip-inputs{margin-left:0}}.grid{display:grid;grid-gap:18px;gap:18px}.grid>*,.stack>*{min-width:0}.grid.metrics{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:24px}.card{background:var(--card);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.metric-card{padding:20px}.metric-label{color:var(--muted);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.metric-value{margin-top:10px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.05;overflow-wrap:anywhere;word-break:break-word}.metric-note{margin-top:8px;color:var(--muted);font-size:.92rem;overflow-wrap:anywhere}.stack{display:grid;grid-gap:18px;gap:18px}.section-card{padding:22px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.section-head h2,.section-head h3{margin:0;font-size:1.25rem}.subdued{color:var(--muted)}.prefill-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:1rem;padding:12px 14px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px}.prefill-toolbar__label{font-size:.85rem;color:var(--muted);white-space:nowrap}.prefill-toolbar__select{flex:1 1 160px;min-width:0;max-width:280px}.prefill-toolbar .secondary-button{flex:0 0 auto}@media (max-width:600px){.prefill-toolbar{gap:12px}.prefill-toolbar__label{flex:1 1 100%;white-space:normal}.prefill-toolbar__select{flex:1 1 100%;max-width:none}.prefill-toolbar .secondary-button{flex:1 1 100%}.section-action-btn{width:100%}}.import-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 18px;margin-bottom:18px;border:1px solid var(--line);border-radius:18px;background:var(--card-accent-bg,var(--surface-2));box-shadow:var(--shadow)}.import-bar__text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 280px}.import-bar__title{font-size:1rem}.import-bar__sub{font-size:.85rem;color:var(--muted);line-height:1.5}.import-bar__cta{flex:0 0 auto}@media (max-width:600px){.import-bar{padding:14px 16px}.import-bar__cta{flex:1 1 100%}}.replace-all-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.replace-all-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.replace-all-row--empty{opacity:.6}.replace-all-row__head{display:flex;align-items:center;gap:8px;min-width:0}.replace-all-row__name{font-weight:600}.replace-all-row__source{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:2px 8px;border:1px solid var(--line);border-radius:999px}.replace-all-row__delta{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--muted)}.replace-all-row__incoming{color:var(--ink);font-weight:600}.table-wrap{overflow-x:auto;overscroll-behavior-x:contain}.tradeoff-merchant-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;cursor:default}.tradeoff-merchant-name--expanded{display:block;overflow:visible}.table-wrap>table tbody td{white-space:nowrap}.table-wrap>table thead th.th-with-hint{cursor:help;-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-decoration-thickness:1px;text-underline-offset:4px}.column-glossary{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:14px 18px;margin-bottom:18px}.column-glossary>summary{cursor:pointer;font-weight:600;color:var(--ink);font-size:.95rem;padding:2px 0}.column-glossary[open]>summary{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.glossary-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-column-gap:28px;column-gap:28px;grid-row-gap:14px;row-gap:14px;margin:0}.glossary-row{display:flex;flex-direction:column;gap:3px}.glossary-row dt{font-weight:600;font-size:.88rem;color:var(--ink);letter-spacing:.01em}.glossary-row dd{margin:0;font-size:.85rem;color:var(--muted);line-height:1.5}.table-wrap>table tbody td.table-notes,.table-wrap>table tbody td[data-label="Event Signals"],.table-wrap>table tbody td[data-label=Description],.table-wrap>table tbody td[data-label=Notes]{white-space:normal}.monthly-summary-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:18px}.readiness-card{border:1px solid var(--line)}.section-head-stacked{margin-bottom:20px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.section-head-stacked h2{margin:0;font-size:1.35rem;font-weight:600}.section-head-stacked .subdued{margin:0;font-size:.92rem;line-height:1.5;color:var(--muted)}.readiness-status-banner{display:flex;gap:16px;padding:16px 20px;border-radius:16px;margin-bottom:24px;align-items:flex-start;border:1px solid var(--line);background:var(--bg-strong)}.readiness-status-banner.on_track{border-color:rgba(37,96,69,.4);background:var(--success-subtle)}.readiness-status-banner.at_risk{border-color:rgba(158,91,14,.4);background:rgba(158,91,14,.12)}.readiness-status-banner.shortfall{border-color:rgba(159,43,43,.4);background:var(--danger-subtle)}.readiness-status-icon{display:flex;align-items:center;justify-content:center;padding-top:2px}.readiness-status-content{display:flex;flex-direction:column;gap:6px;flex:1 1}.readiness-status-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.readiness-status-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;border-radius:6px;color:#ffffff}.readiness-status-badge.on_track{background:var(--success)}.readiness-status-badge.at_risk{background:var(--warning)}.readiness-status-badge.shortfall{background:var(--danger)}.readiness-status-headline{font-weight:600;font-size:1.05rem;color:var(--ink)}.readiness-status-description{font-size:.92rem;line-height:1.5;color:var(--ink);opacity:.9;margin:0}.readiness-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:24px}.readiness-cell{border:1px solid var(--line);border-radius:18px;background:var(--card);padding:16px 18px;display:flex;flex-direction:column;gap:6px;transition:transform .2s ease,box-shadow .2s ease}.readiness-cell:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.04)}.readiness-cell-primary{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:var(--card-accent-bg)}.readiness-cell-projected{border-style:dashed;border-color:var(--accent-soft)}.readiness-cell-good{border-color:color-mix(in srgb,var(--success) 55%,transparent);background:color-mix(in srgb,var(--success) 8%,transparent)}.readiness-cell-bad{border-color:color-mix(in srgb,var(--danger) 55%,transparent);background:color-mix(in srgb,var(--danger) 8%,transparent)}.readiness-label{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.readiness-value{font-size:1.6rem;color:var(--ink);font-weight:700}.readiness-hint{font-size:.8rem;color:var(--muted);line-height:1.45}.readiness-assumptions{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:12px 16px;margin-bottom:24px!important}.readiness-assumptions>summary{cursor:pointer;font-size:.88rem;color:var(--ink);font-weight:600}.readiness-assumptions[open]>summary{margin-bottom:14px;padding-bottom:8px;border-bottom:1px dashed var(--line)}.readiness-cell-bands{border:1px dashed var(--accent-soft);background:var(--card-accent-bg);padding:18px 20px;border-radius:18px;margin-bottom:20px}.readiness-bands{display:flex;gap:32px;align-items:center;margin:12px 0;flex-wrap:wrap;padding:14px 20px;background:rgba(255,255,255,.45);border-radius:12px;border:1px solid var(--line);width:-moz-fit-content;width:fit-content}:root.dark .readiness-bands{background:rgba(0,0,0,.25)}.readiness-band-item{display:flex;flex-direction:column;gap:2px;min-width:100px;position:relative}.readiness-band-item:not(:last-child):after{content:"";position:absolute;right:-16px;top:15%;height:70%;width:1px;background:var(--line)}.readiness-band-label{display:block;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.readiness-band-value{display:block;font-size:1.35rem;color:var(--ink);font-weight:700}.readiness-assumptions ul{margin:10px 0 0;padding-left:18px;font-size:.85rem;color:var(--muted);line-height:1.55}.readiness-assumptions ul.readiness-notes{margin-top:8px;border-top:1px dashed var(--line);padding-top:8px}.monthly-summary-card{border:1px solid var(--line);border-radius:18px;background:var(--card);padding:14px 16px}.monthly-summary-card strong{display:block;font-size:1.15rem;margin-top:4px}.table-pill-stack{display:flex;flex-wrap:wrap;gap:6px;min-width:180px}.table-notes{min-width:240px;color:var(--muted);line-height:1.45}tr.table-row-worst td{background:rgba(159,43,43,.06)}tr.table-row-stressed td{background:color-mix(in srgb,var(--warning) 8%,transparent)}tr.table-row-worst.table-row-stressed td{background:linear-gradient(90deg,color-mix(in srgb,var(--danger) 8%,transparent) 0,color-mix(in srgb,var(--warning) 8%,transparent) 100%)}.goal-grid,.recommendation-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.goal-card{border:1px solid var(--line);border-radius:22px;padding:16px;background:var(--card)}.goal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.goal-head h4{margin:0;font-size:1rem}.goal-meta{margin-top:8px;color:var(--muted);font-size:.9rem}.scenario-description{margin-top:6px;margin-bottom:12px;font-size:.82rem;line-height:1.45;color:var(--muted)}.goal-metrics{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.metric-inline{display:grid;grid-gap:4px;gap:4px;margin-top:12px}.metric-inline strong{font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.compact-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.goal-label{display:block;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.goal-allocation{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink)}.recommendation-card{border:1px solid var(--line);border-radius:22px;padding:20px;background:var(--card);display:flex;flex-direction:column;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.recommendation-card:focus-within,.recommendation-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 10px 25px rgba(224,133,103,.08),var(--shadow);outline:none}.recommendation-card .action-row{margin:12px 0 0;padding:0}.recommendation-copy{margin:12px 0 14px;color:var(--ink);line-height:1.5;white-space:pre-line}.recommendation-hint{margin:-4px 0 14px;color:var(--muted);line-height:1.5}.recommendation-meta{padding-top:14px;margin-top:16px;border-top:1px solid var(--line)}.cashflow-action-card{background:var(--card-accent-bg)}.action-amount-row{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.action-amount-card{padding:12px;border-radius:16px;border:1px solid var(--line);background:var(--card)}.timeline-stack{display:grid;grid-gap:14px;gap:14px}.timeline-row{display:grid;grid-template-columns:88px 20px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.timeline-year{font-size:1.15rem;font-weight:600;padding-top:8px}.timeline-marker{width:14px;height:14px;margin-top:12px;border-radius:999px;background:linear-gradient(180deg,var(--accent) 0,var(--accent-soft) 100%);box-shadow:0 0 0 6px var(--grad-1)}.timeline-card{border:1px solid var(--line);border-radius:20px;padding:14px 16px;background:var(--card)}.timeline-copy{margin:10px 0 0;color:var(--muted);line-height:1.5}.ledger-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.ledger-panel{border:1px solid var(--line);border-radius:22px;background:var(--card);padding:16px}.ledger-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.ledger-head h4{margin:0}.ledger-row{display:grid;grid-gap:6px;gap:6px;padding:12px 0;border-top:1px solid var(--line)}.ledger-row:first-child{border-top:0;padding-top:0}.compact-stack{gap:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.legend-item{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.92rem}.legend-swatch{width:12px;height:12px;border-radius:999px}.chart-wrap{overflow-x:auto}.chart-svg{width:100%;max-width:100%;height:auto}.metrics-wrap{overflow-x:auto;padding-bottom:8px;margin:0 -4px}.bar-stack{display:grid;grid-gap:14px;gap:14px}.bar-row{display:grid;grid-gap:8px;gap:8px}.bar-meta{display:flex;justify-content:space-between;gap:14px;align-items:center}.bar-track{width:100%;height:18px;border-radius:999px;background:var(--line);overflow:hidden}.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0,var(--accent-soft) 100%)}.layered-track{position:relative}.layered-track .bar-fill{position:absolute;left:0;top:0}.required-fill{background:var(--muted);opacity:.25}.funded-fill{background:linear-gradient(90deg,var(--series-2) 0,var(--success) 100%)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:.95rem}th{color:var(--muted);font-weight:500}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.pill-row{display:flex;flex-wrap:wrap;gap:10px}.pill{border-radius:999px;padding:8px 12px;background:rgba(169,77,47,.1);color:var(--ink);font-size:.92rem}.pill.warning{background:var(--warning-subtle);color:var(--warning)}.pill.danger{background:rgba(159,43,43,.12);color:var(--danger)}.pill.success{background:rgba(47,111,82,.12);color:var(--success)}.two-col{display:grid;grid-gap:18px;gap:18px;grid-template-columns:1.1fr .9fr}.cta-link{color:var(--accent);font-style:italic}.form-grid{display:grid;grid-gap:16px;gap:16px}.quick-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.settings-grid{display:grid;grid-gap:28px 32px;gap:28px 32px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:1rem;margin-bottom:1.5rem}.settings-section-head{margin-top:2.5rem!important;padding-top:1.75rem;border-top:1px solid var(--line)}.settings-form details.readiness-assumptions{margin-top:2rem;padding-top:1.75rem;border-top:1px solid var(--line)}.settings-form details.readiness-assumptions>summary{padding:.5rem 0;cursor:pointer;font-size:1.05rem}.settings-asset-return-table{table-layout:fixed;width:100%}.settings-asset-return-table td:first-child,.settings-asset-return-table th:first-child{width:16%}.settings-asset-return-table td:nth-child(2),.settings-asset-return-table td:nth-child(3),.settings-asset-return-table th:nth-child(2),.settings-asset-return-table th:nth-child(3){width:34%}.settings-asset-return-table td:nth-child(4),.settings-asset-return-table th:nth-child(4){width:18%}.settings-asset-return-table td:nth-child(5),.settings-asset-return-table th:nth-child(5){width:8%}.settings-percent-field{display:grid;grid-template-columns:minmax(160px,1fr) 20px;align-items:center;grid-gap:8px;gap:8px;width:100%}.settings-percent-input{min-width:0}.settings-percent-suffix{display:inline-flex;justify-content:flex-start;font-weight:650}.admin-grid{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(240px,1.35fr);align-items:start}.editor-section{display:grid;grid-gap:12px;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.editor-section h4{margin:0}.editor-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.editor-header strong{font-size:1.05rem;color:var(--ink)}.editor-block>.editor-header{margin-bottom:16px}.editor-block{border:1px solid var(--line);border-radius:24px;background:var(--bg-strong);padding:20px;position:relative;transition:transform .2s,box-shadow .2s}.editor-block:hover{border-color:var(--accent-soft)}.editor-block--new{border-color:var(--accent);background:linear-gradient(0deg,rgba(169,77,47,.08),rgba(169,77,47,.08)),var(--bg-strong);box-shadow:0 0 0 3px rgba(169,77,47,.12);animation:pcfo-new-row-pulse 1.2s ease-out 1}@keyframes pcfo-new-row-pulse{0%{transform:translateY(-4px);box-shadow:0 0 0 5px rgba(169,77,47,.2)}to{transform:translateY(0);box-shadow:0 0 0 3px rgba(169,77,47,.12)}}.secondary-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--field-bg);color:var(--ink);border-radius:999px;padding:8px 14px;cursor:pointer;font-weight:500;transition:background .2s,border-color .2s}.secondary-button:hover{background:var(--line);border-color:var(--accent-soft)}.secondary-button.danger{color:var(--danger)}.section-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink);padding:0;cursor:pointer;flex-wrap:wrap;gap:10px;text-align:left}.section-summary,.section-toggle{display:inline-flex;align-items:center}.section-summary{border-radius:999px;padding:5px 10px;background:var(--line);color:var(--muted);font-size:.82rem}.field{display:grid;grid-gap:8px;gap:8px;min-width:0}.field-span-2{grid-column:span 2}.checkbox-field{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 4px;color:var(--ink);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-self:end}.checkbox-field input{width:18px;height:18px;margin:0;accent-color:var(--accent);cursor:pointer}.field-label{gap:6px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;line-height:1.35}.field-label,.hint-wrap{display:inline-flex;align-items:center}.hint-wrap{position:relative;flex:0 0 auto}.hint-pill{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:rgba(169,77,47,.14);color:var(--accent);font-size:.74rem;font-weight:600;cursor:help;border:0;padding:0;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none}.hint-popup{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);width:min(280px,calc(100vw - 48px));max-width:280px;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:rgba(28,27,24,.94);color:#f7efe5;font-size:.82rem;line-height:1.45;box-shadow:0 18px 48px rgba(28,27,24,.2);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s ease,visibility .14s ease;z-index:30;white-space:normal;overflow-wrap:anywhere;text-align:left}.hint-pill:focus-visible+.hint-popup,.hint-popup[data-open=true],.hint-wrap:focus-within .hint-popup,.hint-wrap:hover .hint-popup{opacity:1;visibility:visible}.hint-pill:focus-visible{outline:2px solid rgba(169,77,47,.35);outline-offset:2px}.field-input,.field-textarea{border-radius:18px;border:1px solid var(--line);background:var(--field-bg);padding:14px 16px;color:var(--ink);min-height:52px;font-size:1rem;width:100%;min-width:0;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}input[type=date].field-input{min-width:0;max-width:100%}.field-input:focus,.field-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--grad-1)}select.field-input{padding-right:42px}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.dark input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}.field-textarea{min-height:320px;resize:vertical}.compact-input{padding:10px 12px}.compact-button,.compact-input{min-height:42px;border-radius:14px}.icon-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:6px;cursor:pointer;position:absolute;top:10px;right:10px;z-index:2;color:var(--muted);border-radius:999px;display:grid;place-items:center;min-width:44px;min-height:44px}.icon-button:hover{background:rgba(28,27,24,.06)}.icon-button.danger{color:var(--danger)}.icon-trash{display:block;width:22px;height:22px}.multi-select-input{min-height:120px;padding-right:12px}.multi-select{position:relative}.multi-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer}.multi-select-value{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-select-caret{color:var(--muted);font-size:.8rem;flex:0 0 auto}.multi-select-panel{position:absolute;top:calc(100% + 8px);left:0;width:100%;max-height:240px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--bg-strong);box-shadow:var(--shadow);z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.multi-select-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;cursor:pointer;color:var(--ink)}.multi-select-option:hover{background:rgba(169,77,47,.08)}.multi-select-option input{width:16px;height:16px;margin:0}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:18px 0 22px}.plan-editor-error-row{display:flex;margin:10px 0 0}.plan-editor-card{position:relative}.plan-editor-unsaved-bar{position:fixed;left:50%;bottom:24px;z-index:100;display:flex;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:12px 24px;border:2px solid var(--accent);border-radius:999px;background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:0 20px 40px rgba(0,0,0,.25);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateX(-50%)}.plan-editor-unsaved-label{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--ink);font-size:.95rem;font-weight:650;line-height:1.15}.plan-editor-unsaved-divider{width:1px;height:20px;flex:0 0 auto;background:var(--line)}.plan-editor-unsaved-action{padding:8px 16px;font-size:.85rem;white-space:nowrap}.builder-save-run-button{white-space:nowrap}.workspace-tabs{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:28px}.workspace-tabs>.pill-row,.workspace-tabs>.segmented-tabs{flex:1 1 auto;min-width:0}.run-selector{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.report-download-buttons{display:inline-flex;gap:8px;flex-shrink:0}.report-download-button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--accent);background:var(--accent);color:var(--bg);font-size:13px;font-weight:600;letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .1s,opacity .15s;white-space:nowrap}.report-download-button:hover{opacity:.88}.report-download-button:active{transform:scale(.96)}.report-download-button svg{flex-shrink:0}.run-selector .field-input{min-width:220px;max-width:320px}.demo-card{border:1px solid var(--accent-soft);background:linear-gradient(180deg,rgba(169,77,47,.05) 0,var(--card) 100%)}.demo-highlights{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.collapsible-card{padding:16px 20px}.collapsible-toggle{display:flex;align-items:center;gap:12px;width:100%;flex-wrap:wrap}.collapsible-content{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;background:var(--ink);color:var(--bg);padding:12px 18px;cursor:pointer;font-weight:500;transition:all .2s ease-out}.action-button:hover{opacity:.9;transform:translateY(-1px)}.action-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.action-button.danger{background:var(--danger)}.inline-action-stack{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.success-text{color:var(--success)}.inline-error{color:var(--danger)}.smartfill-section{display:flex;flex-direction:column;gap:.5rem}.smartfill-section--review{padding:.75rem;border:1px solid var(--warning-subtle);border-left:3px solid var(--warning);border-radius:10px;background:var(--warning-subtle)}.smartfill-section__title{margin:0;font-weight:700;font-size:.9rem;color:var(--warning)}.smartfill-section__hint{margin:0;font-size:.8rem;color:var(--muted)}.smartfill-list{display:flex;flex-direction:column;gap:.5rem}.smartfill-row{display:flex;align-items:flex-start;gap:.625rem;padding:.625rem .75rem;border:1px solid var(--line);border-radius:10px;background:var(--card);cursor:pointer}.smartfill-row[data-selected]{border-color:var(--accent);background:var(--accent-subtle)}.smartfill-row__check{width:18px;height:18px;margin-top:2px;flex-shrink:0;cursor:pointer}.smartfill-row__body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.smartfill-row__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.smartfill-row__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smartfill-row__chip{flex-shrink:0;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:var(--neutral-subtle);border-radius:999px;padding:.1rem .5rem}.smartfill-row__amounts{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-size:.9rem}.smartfill-row__arrow,.smartfill-row__from{color:var(--muted)}.smartfill-row__to{font-weight:700}.smartfill-row__delta{font-weight:600;margin-left:auto}.smartfill-row__note{margin:.1rem 0 0;font-size:.78rem;color:var(--muted)}.smartfill-warning{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;background:var(--danger-subtle);border:1px solid var(--danger);color:var(--danger)}.validation-list{margin:10px 0 0;padding-left:18px}.validation-list li+li{margin-top:6px}.code-block{margin:0;overflow-x:auto;padding:18px;border-radius:22px;background:rgba(28,27,24,.92);color:#f7efe5;font-family:Courier New,monospace;font-size:.88rem;line-height:1.5}.info-banner{padding:12px 18px;border:1px solid var(--accent);border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--bg-strong));color:var(--fg);font-size:.9rem;line-height:1.5}.required-marker{color:var(--danger,#e25c5c);margin-left:2px;font-weight:600}.empty-state{padding:40px 22px;border:1px dashed var(--line);border-radius:22px;color:var(--muted);background:var(--bg-strong);text-align:center;line-height:1.6}.arrow-pointer{display:block;font-size:1.5rem;color:var(--accent);margin-bottom:12px;animation:bounce-up .8s infinite alternate}@keyframes bounce-up{0%{transform:translateY(0)}to{transform:translateY(-8px)}}.error-box{padding:18px;border-radius:20px;color:var(--danger);background:rgba(159,43,43,.08);border:1px solid rgba(159,43,43,.16)}.choice-chip-row{display:flex;flex-wrap:wrap;gap:10px}.choice-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:10px 12px;background:var(--field-bg);cursor:pointer;color:var(--muted)}.choice-chip.is-selected{border-color:rgba(169,77,47,.35);background:rgba(169,77,47,.1);color:var(--ink)}.choice-chip-input{width:16px;height:16px;margin:0}.comparison-change-list,.comparison-pill-stack{display:flex;flex-wrap:wrap;gap:8px}.scenario-detail-card{margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--bg-strong)}.scenario-copy{margin:12px 0 0;color:var(--muted);line-height:1.6}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--line) 25%,var(--bg-strong) 50%,var(--line) 75%);background-size:800px 100%;animation:shimmer 1.6s ease-in-out infinite;border-radius:12px}.skeleton-title{height:clamp(2.2rem,5vw,4rem);width:min(360px,60%);margin-bottom:12px}.skeleton-subtitle{height:1.1rem;width:min(480px,80%)}.skeleton-metric{height:72px;width:100%}.skeleton-block{height:120px;width:100%}.skeleton-block-tall{height:240px;width:100%}.skeleton-row{height:42px;width:100%}.percent-input-wrap{position:relative}.percent-input-wrap .field-input{padding-right:36px}.percent-suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.9rem;pointer-events:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field-input:focus-visible,.field-textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent-soft)}@media (max-width:1024px){.two-col{grid-template-columns:1fr}.app-shell{padding-top:20px}.timeline-row{grid-template-columns:70px 18px minmax(0,1fr)}.hint-popup{left:0;right:auto;top:calc(100% + 10px);transform:none;width:min(260px,70vw)}.admin-grid{grid-template-columns:1fr}}@media (max-width:768px){.table-wrap>table{display:block}.table-wrap>table thead{display:none}.table-wrap>table tbody,.table-wrap>table tr{display:block}.table-wrap>table tr{border:1px solid var(--line);border-radius:18px;padding:12px 14px;margin-bottom:12px;background:var(--card)}.table-wrap>table tr.table-row-worst{border-color:rgba(159,43,43,.35)}.table-wrap>table tr.table-row-stressed{border-color:color-mix(in srgb,var(--warning) 35%,transparent)}.table-wrap>table tr.txn-row-review-later{border-color:color-mix(in srgb,var(--danger) 42%,var(--line));box-shadow:inset 4px 0 0 var(--danger)}.table-wrap>table td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:.92rem;text-align:right;overflow-wrap:anywhere}.table-wrap>table td:last-child{border-bottom:0}.table-wrap>table td:before{content:attr(data-label);color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;flex:0 0 auto;text-align:left}.table-wrap>table td:not([data-label]):before{content:""}.spending-insight-table>table tr{padding:14px;border-radius:14px}.spending-insight-table>table td{align-items:flex-start;gap:18px;line-height:1.35;white-space:normal}.spending-insight-table>table td:before{max-width:42%;line-height:1.2}.spending-insight-table>table td:first-child{padding-top:0;font-size:.98rem}.spending-insight-table>table td:last-child{padding-bottom:0}.spending-insight-table--tradeoffs td[data-label=Merchant] .tradeoff-merchant-name{max-width:55%;cursor:pointer;text-align:right}.table-wrap{overflow-x:hidden}.workspace-tabs{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:20px}.workspace-tabs>.pill-row{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;width:100%;padding-bottom:2px}}@media (max-width:768px){.workspace-tabs>.pill-row::-webkit-scrollbar{display:none}.workspace-tabs>.segmented-tabs{width:100%;flex:0 0 auto;scroll-padding-inline:16px}.workspace-tabs>.pill-row .nav-chip{flex:0 0 auto;justify-content:center;white-space:nowrap;min-height:44px;padding:8px 12px;font-size:13px}.workspace-tabs>.pill-row .nav-chip-inputs{margin-left:0}.run-selector{width:100%}.run-selector .field-input{flex:1 1 auto;min-width:0;max-width:none}}@media (max-width:640px){.plan-list-table{display:block}.plan-list-table thead{display:none}.plan-list-table tbody{display:block}.plan-list-table tr{display:grid;grid-template-columns:1fr auto;grid-gap:2px 8px;gap:2px 8px;padding:12px 0;border-bottom:1px solid var(--line)}.plan-list-table td:first-child{display:none}.plan-list-table td:nth-child(2){grid-column:1;font-weight:600}.plan-list-table td:nth-child(3){grid-column:1;font-size:.82rem;color:var(--muted)}.plan-list-table td:nth-child(4),.plan-list-table td:nth-child(5),.plan-list-table td:nth-child(6){display:none}.plan-list-table td:nth-child(7){grid-column:1;font-size:.75rem;color:var(--muted)}.plan-list-table td:nth-child(8){grid-column:2;grid-row:1/4;align-self:center;min-width:44px;display:flex;align-items:center;justify-content:center}}@media (max-width:768px){.action-amount-row,.goal-grid,.quick-grid,.recommendation-grid{grid-template-columns:1fr}.monthly-summary-grid{grid-template-columns:1fr 1fr}.field-span-2{grid-column:span 1}.ledger-grid{grid-template-columns:1fr}.app-shell{padding:16px 12px 40px}.sticky-header{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}.top-bar{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:18px}.hero{margin-bottom:22px;gap:12px}.hero p{font-size:.98rem}.nav-bar{margin-bottom:18px}.section-card{padding:18px 16px;border-radius:22px}.section-head{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:14px}.grid.metrics{grid-template-columns:1fr 1fr;gap:12px}.grid.metrics>:last-child:nth-child(odd){grid-column:1/-1}.metric-card{padding:14px}.metric-value{font-size:clamp(1.3rem,6vw,1.8rem)}.editor-block{padding:16px;border-radius:20px}.plan-editor-card--dirty{padding-bottom:18px}.plan-editor-error-row{margin-top:8px}.plan-editor-unsaved-bar{position:static;display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:none;margin:12px 0 20px;padding:14px;grid-gap:10px;gap:10px;border-radius:18px;transform:none;box-shadow:0 14px 30px rgba(0,0,0,.22)}.plan-editor-unsaved-label{grid-column:1/-1;justify-content:center;text-align:center;font-size:.92rem}.plan-editor-unsaved-divider{display:none}.plan-editor-unsaved-action{width:100%;min-height:44px;padding:9px 12px;white-space:normal;line-height:1.15}.builder-section-navigation{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:24px;padding-top:18px}.builder-section-navigation .action-button,.builder-section-navigation .secondary-button{flex:1 1;min-width:0;max-width:none;overflow:hidden;padding-inline:12px;text-overflow:ellipsis;white-space:nowrap}.builder-section-navigation .builder-save-run-button{flex:0 0 auto;min-width:116px}.demo-highlights{gap:6px}.demo-highlights .pill{padding:6px 10px;font-size:.82rem}}@media (max-width:480px){.grid.metrics{grid-template-columns:1fr}}@media (max-width:375px){.grid.metrics,.monthly-summary-grid{grid-template-columns:1fr}}@media print{.action-button,.action-row,.editor-section,.nav-bar,.secondary-button,.section-toggle{display:none}.card{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid;break-inside:avoid}.app-shell{padding:0}}.ai-analysis-block{border-radius:18px;border:1px solid var(--line);padding:18px 20px;background:var(--card-accent-bg)}.ai-analysis-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ai-analysis-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:var(--accent)}.ai-analysis-content{line-height:1.75;font-size:14px;color:var(--ink)}.ai-analysis-content p{margin:0 0 10px}.ai-analysis-content p:last-child{margin-bottom:0}.ai-analysis-idle .ai-analysis-header{margin-bottom:10px}@media (max-width:600px){.ai-analysis-header{flex-direction:column;align-items:flex-start;gap:6px}}.ai-analysis-generating .ai-analysis-spinner{padding:8px 0}.action-button-ghost{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);padding:6px 14px;cursor:pointer;font-size:13px;font-weight:500}.action-button-ghost:hover{background:var(--card)}.login-shell{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;position:relative;overflow:hidden;background-color:#050505;--ink:#f4f0e9;--muted:#cbc5b9;--line:rgba(232,230,225,0.15);--accent:#e08567;color:var(--ink)}.login-bg-blob{position:absolute;width:500px;height:500px;background:radial-gradient(circle,var(--accent) 0,transparent 70%);filter:blur(80px);opacity:.15;z-index:0;pointer-events:none}.login-bg-blob-1{top:-100px;left:-100px}.login-bg-blob-2{bottom:-100px;right:-100px;background:radial-gradient(circle,var(--success) 0,transparent 70%)}.login-hero{text-align:center;margin-bottom:40px;position:relative;z-index:1}.login-hero h1{font-size:clamp(3rem,9vw,5.5rem);margin:0 0 12px;letter-spacing:-.03em;font-weight:700;color:var(--ink)}.login-tagline{font-size:1.25rem;color:var(--muted);max-width:none;line-height:1.2;font-weight:400;white-space:nowrap}@media (max-width:768px){.login-tagline{white-space:normal;max-width:30ch;margin:0 auto}}.login-highlight{display:block;margin-top:14px;color:var(--accent);font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.1em;opacity:.9}.login-card-title{font-size:1.75rem;margin:0 0 32px;text-align:center;font-weight:600;opacity:.95}.login-card{width:100%;max-width:440px;padding:48px 32px;position:relative;z-index:1;background:rgba(22,20,18,.6);border:1px solid rgba(255,255,255,.08);box-shadow:0 32px 100px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.05)}.login-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(180deg,rgba(255,255,255,.1),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@keyframes modal-backdrop-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-card-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1500;display:flex;align-items:flex-start;justify-content:center;padding:2.5rem 1rem;overflow-y:auto;animation:modal-backdrop-fade .2s ease-out}.modal-card{background:var(--card);border:1px solid var(--line);border-radius:.75rem;padding:1.5rem;max-width:720px;width:100%;box-shadow:var(--shadow);color:inherit;animation:modal-card-in .2s cubic-bezier(.16,1,.3,1)}.modal-card:focus{outline:none}.toast-stack{position:fixed;bottom:1.25rem;right:1.25rem;z-index:1100;display:flex;flex-direction:column;gap:.5rem;max-width:min(380px,calc(100vw - 2rem))}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:.7rem .9rem;border-radius:.6rem;border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:inherit;font-size:.9rem;animation:toast-in .18s ease-out}.toast-message{flex:1 1}.toast-dismiss{background:none;border:none;color:inherit;cursor:pointer;opacity:.6;font-size:.85rem;line-height:1;padding:0}.toast-dismiss:hover{opacity:1}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-info{border-left:3px solid var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.save-run-dialog{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.save-run-dialog-inner{background:var(--card);border:1px solid var(--line);border-radius:.75rem;padding:1.75rem;width:100%;max-width:460px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1rem}.save-run-dialog-inner h3{margin:0}.quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:1rem;gap:1rem}.quota-card{gap:.85rem}.quota-card,.quota-meter{display:flex;flex-direction:column}.quota-meter{gap:6px}.quota-meter-bar{width:100%;height:10px;background:var(--bg-strong);border:1px solid var(--line);border-radius:999px;overflow:hidden}.quota-meter-fill{height:100%;background:var(--accent);transition:width .2s ease}.quota-meter-bar[data-tone=warn] .quota-meter-fill{background:var(--warning,#d99536)}.quota-meter-bar[data-tone=danger] .quota-meter-fill{background:var(--danger,#d65555)}.quota-meter-legend{display:flex;justify-content:space-between;gap:.75rem;font-size:.85rem;flex-wrap:wrap}.quota-detail{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem 1rem;gap:.5rem 1rem;margin:0}.quota-detail dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.quota-detail dd{margin:0;font-size:.95rem}.quota-grants summary{cursor:pointer;font-size:.85rem;color:var(--muted);margin-top:6px}.quota-grants ul{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:6px;font-size:.85rem}.admin-quota-panel-inner{max-width:820px}.quota-admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.quota-admin-table td,.quota-admin-table th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}.quota-admin-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.grant-row{display:grid;grid-template-columns:1fr auto;grid-gap:4px 12px;gap:4px 12px;padding:8px 10px;border:1px solid var(--line);border-radius:8px}.grant-row[data-revoked=true]{opacity:.55}.action-button.danger{background:var(--danger,#d65555);color:white}.chat-drawer-trigger{position:fixed;right:18px;bottom:18px;z-index:40;display:inline-flex;align-items:center;justify-content:flex-end;gap:0;min-width:44px;height:44px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--ink);color:var(--bg);font-weight:600;font-size:.9rem;cursor:pointer;box-shadow:0 4px 20px rgba(0,0,0,.3);overflow:hidden;white-space:nowrap;max-width:44px;transition:max-width .3s cubic-bezier(.25,1,.5,1),box-shadow .2s ease-out}.chat-drawer-trigger:focus-visible,.chat-drawer-trigger:hover{max-width:240px;box-shadow:0 8px 28px rgba(0,0,0,.4)}.chat-trigger-label{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;transition:max-width .3s cubic-bezier(.25,1,.5,1),opacity .15s ease,margin-right .3s cubic-bezier(.25,1,.5,1);margin-right:0}.chat-drawer-trigger:focus-visible .chat-trigger-label,.chat-drawer-trigger:hover .chat-trigger-label{max-width:180px;opacity:1;margin-right:8px}.chat-drawer-backdrop{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end}.chat-drawer{width:min(960px,100%);height:100%;background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;box-shadow:-30px 0 80px rgba(0,0,0,.4)}.chat-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}.chat-drawer-title{margin:0;font-size:1.15rem}.chat-drawer-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);font-size:1.6rem;cursor:pointer;line-height:1}.chat-drawer-body{display:grid;grid-template-columns:240px 1fr;flex:1 1;min-height:0}@media (max-width:768px){.chat-drawer-body{grid-template-columns:1fr}.chat-threads{display:none}}.chat-threads{border-right:1px solid var(--line);padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.chat-new-thread{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px dashed var(--line);background:transparent;color:var(--ink);padding:10px 12px;border-radius:12px;cursor:pointer;text-align:left;font-weight:500}.chat-threads-empty{padding:8px 4px;font-size:.85rem}.chat-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.chat-thread-list li{position:relative;display:flex;align-items:stretch}.chat-thread-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1 1;text-align:left;background:transparent;border:1px solid transparent;border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0}.chat-thread-item:hover{background:var(--bg-strong)}.chat-thread-item[data-active=true]{background:var(--bg-strong);border-color:var(--line)}.chat-thread-title{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-thread-date{font-size:.72rem}.chat-thread-delete{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0 8px;font-size:1.1rem;opacity:0;transition:opacity .15s}.chat-thread-list li:hover .chat-thread-delete{opacity:1}.chat-conversation{display:flex;flex-direction:column;min-height:0}.chat-scroll{flex:1 1;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:12px}.chat-bubble{max-width:78%;padding:12px 16px;border-radius:18px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.chat-bubble p{margin:0}.chat-bubble p+p{margin-top:10px}.chat-bubble-user{align-self:flex-end;background:var(--ink);color:var(--bg);border-bottom-right-radius:6px}.chat-bubble-assistant{align-self:flex-start;background:var(--bg-strong);border:1px solid var(--line);border-bottom-left-radius:6px}.chat-bubble-thinking{display:inline-flex;align-items:center;gap:10px}.chat-thinking-dots{display:inline-flex;gap:4px}.chat-thinking-dots span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:chat-dot 1.1s ease-in-out infinite}.chat-thinking-dots span:nth-child(2){animation-delay:.15s}.chat-thinking-dots span:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-tool-trace{align-self:flex-start;font-size:.82rem;color:var(--muted);max-width:92%}.chat-tool-trace-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);cursor:pointer;padding:4px 0;font-size:.82rem}.chat-tool-names{color:var(--ink)}.chat-tool-list{margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.chat-tool-name{font-weight:600;color:var(--ink)}.chat-tool-args{margin-left:8px;color:var(--muted)}.chat-tool-result{margin:4px 0 0;padding:8px 10px;background:var(--bg-strong);border:1px solid var(--line);border-radius:8px;max-height:220px;overflow:auto;font-size:.78rem}.chat-tool-error{color:var(--danger);margin-top:4px}.chat-suggestions{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.chat-suggestion-head{width:100%;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}.chat-suggestion-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--bg-strong);color:var(--ink);padding:10px 14px;border-radius:999px;cursor:pointer;font-size:.9rem}.chat-suggestion-chip:hover{background:var(--ink);color:var(--bg)}.chat-suggestion-chip:disabled{opacity:.5;cursor:not-allowed}.chat-error{margin:0 22px;padding:10px 14px;border-radius:12px;background:rgba(159,43,43,.08);border:1px solid rgba(159,43,43,.16);color:var(--danger);font-size:.88rem}.chat-input-row{display:flex;gap:10px;padding:14px 22px 22px;border-top:1px solid var(--line);background:var(--bg)}.chat-input{flex:1 1;resize:none;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--card);color:inherit;font:inherit;line-height:1.4}.chat-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-send-button{align-self:flex-end}.whatif-card{margin-top:6px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--bg-strong);font-size:.82rem;color:var(--ink)}.whatif-applied{margin-bottom:10px}.whatif-applied ul{margin:4px 0 0;padding-left:18px}.whatif-table{width:100%;border-collapse:collapse;font-size:.8rem}.whatif-table td,.whatif-table th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}.whatif-table th{color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.studio-ai-narration{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:16px 18px;border-radius:16px;background:linear-gradient(135deg,rgba(169,77,47,.06),rgba(169,77,47,.02));border:1px solid var(--accent-subtle);animation:fi-hero-in .35s cubic-bezier(.4,0,.2,1) both}.studio-ai-narration--loading{align-items:center;opacity:.7}.studio-ai-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:var(--accent-subtle);color:var(--accent)}.studio-ai-text{margin:0;font-size:.93rem;line-height:1.65;color:var(--ink)}.whatif-table tr:last-child td{border-bottom:0}.whatif-delta{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.whatif-delta-up{color:var(--success)}.whatif-delta-down{color:var(--danger)}.whatif-delta-flat{color:var(--muted)}.whatif-note{margin-top:8px;font-size:.78rem;font-style:italic}.creation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:20px;gap:20px;margin-bottom:24px}@media (max-width:1024px){.creation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (max-width:560px){.creation-grid{grid-template-columns:1fr;gap:12px}}.creation-card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:30px 28px;min-height:250px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1),border-color .22s cubic-bezier(.2,.8,.2,1)}button.creation-card{width:100%}.creation-card:focus-visible:not(.creation-card--coming-soon),.creation-card:hover:not(:disabled):not(.creation-card--coming-soon){transform:translateY(-4px);outline:none}.creation-card--demo:hover:not(:disabled){border-color:var(--accent);box-shadow:0 20px 45px rgba(169,77,47,.12),var(--shadow)}.creation-card--manual:hover:not(:disabled){border-color:var(--success);box-shadow:0 20px 45px rgba(37,96,69,.12),var(--shadow)}.creation-card--ai:hover:not(:disabled){border-color:var(--muted);box-shadow:0 20px 45px rgba(94,106,127,.12),var(--shadow)}.creation-card--quick:hover:not(:disabled){border-color:#c18c2a;box-shadow:0 20px 45px rgba(193,140,42,.14),var(--shadow)}.creation-card:focus-visible:not(.creation-card--coming-soon){outline:2px solid var(--accent);outline-offset:3px}.creation-card--demo{background:var(--card-accent-bg)}.creation-card--coming-soon{cursor:default;opacity:.78}.creation-card--compact{min-height:190px;padding:22px 20px}.creation-card__head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:10px}.creation-card__icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:1.35rem;font-weight:700;flex-shrink:0;transition:transform .22s ease}.creation-card:hover:not(:disabled) .creation-card__icon{transform:scale(1.08)}.creation-card__icon--demo,.creation-card__icon--primary{background:var(--accent-subtle);color:var(--accent)}.creation-card__icon--manual{background:var(--success-subtle);color:var(--success)}.creation-card__icon--ai{background:rgba(94,106,127,.12);color:var(--muted)}:root:not(.light) .creation-card__icon--ai,html.dark .creation-card__icon--ai{background:rgba(148,163,189,.15);color:#94a3bd}.creation-card__icon--quick{background:rgba(193,140,42,.14);color:#b5811f}:root:not(.light) .creation-card__icon--quick,html.dark .creation-card__icon--quick{background:rgba(214,168,74,.18);color:#e0b65f}.creation-card__badge{background:var(--accent);color:#fffaf3;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:999px;white-space:nowrap}.creation-card__badge--muted{background:var(--muted);color:var(--bg)}.creation-card__title{font-size:1.25rem;margin:0 0 8px;color:var(--ink)}.creation-card__lede{color:var(--muted);margin:0 0 14px;line-height:1.5;font-size:.94rem}.creation-card__bullets{list-style:none;padding:0;margin:0 0 18px;display:grid;grid-gap:6px;gap:6px}.creation-card__bullets li{position:relative;padding-left:16px;color:var(--muted);font-size:.88rem;line-height:1.4}.creation-card__bullets li:before{content:"·";position:absolute;left:4px;top:-2px;color:var(--accent);font-weight:700;font-size:1.1rem}.creation-card__foot{margin-top:auto;display:flex;flex-direction:column;gap:4px}.creation-card__cta{font-size:.98rem}.creation-card__cta--muted{color:var(--muted)}.creation-card__meta{color:var(--muted);font-size:.8rem}.creation-card__error{margin-top:8px;color:var(--danger);font-size:.85rem}.continue-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:32px;gap:32px;align-items:center;padding:30px 32px;margin-bottom:28px;background:linear-gradient(135deg,var(--card) 0,rgba(22,20,18,.4) 100%);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow),0 10px 30px rgba(0,0,0,.04);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}:root.light .continue-card,html:not(.dark) .continue-card{background:linear-gradient(135deg,var(--card) 0,rgba(255,252,247,.4) 100%)}.continue-card:hover{border-color:rgba(224,133,103,.4);box-shadow:var(--shadow),0 15px 35px rgba(224,133,103,.05);transform:translateY(-2px)}@media (max-width:768px){.continue-card{grid-template-columns:1fr;gap:18px}}.continue-card__body{min-width:0}.continue-card__eyebrow{color:var(--accent);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.continue-card__title{margin:10px 0 16px;font-size:1.8rem;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.continue-card__pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.continue-card__pills .pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;font-size:.88rem;font-weight:500;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:all .2s ease}:root.light .continue-card__pills .pill,html:not(.dark) .continue-card__pills .pill{background:rgba(0,0,0,.02);border-color:rgba(0,0,0,.05)}.continue-card__pills .pill:hover{background:rgba(255,255,255,.06);transform:translateY(-1px)}.continue-card .action-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-weight:600;font-size:.95rem;border-radius:14px;background:var(--accent);color:#ffffff;box-shadow:0 4px 15px rgba(224,133,103,.3);border:none;transition:all .2s ease;text-decoration:none;width:-moz-fit-content;width:fit-content;cursor:pointer}.continue-card .action-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(224,133,103,.4);filter:brightness(1.05)}.continue-card__net-worth{color:var(--muted);margin-bottom:24px;font-size:.96rem;line-height:1.5}.continue-card__net-worth strong{color:var(--ink);font-size:1.1rem;font-weight:600}.continue-card__chart{color:var(--accent)}.landing-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px;margin-bottom:28px}.landing-metric{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px 24px;box-shadow:var(--shadow),0 4px 12px rgba(0,0,0,.02);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.landing-metric:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:transparent;transition:background-color .3s ease}.landing-metric--plans:before{background:var(--accent)}.landing-metric--fire.landing-metric--optimal:before,.landing-metric--resilience.landing-metric--optimal:before{background:var(--success)}.landing-metric--fire.landing-metric--warning:before,.landing-metric--resilience.landing-metric--warning:before{background:var(--warning)}.landing-metric--fire.landing-metric--danger:before,.landing-metric--resilience.landing-metric--danger:before{background:var(--danger)}.landing-metric:hover{transform:translateY(-3px);border-color:rgba(224,133,103,.3);box-shadow:var(--shadow),0 12px 24px rgba(0,0,0,.08)}.landing-metric__label{color:var(--muted);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;gap:8px;margin-bottom:12px}.landing-metric__value{font-size:1.85rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin-top:0}.health-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0}.recent-plans{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:28px;padding:12px 18px;background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:16px}:root.light .recent-plans,html:not(.dark) .recent-plans{background:rgba(0,0,0,.01)}.recent-plans__label{color:var(--muted);font-size:.84rem;font-weight:600;margin-right:6px}.recent-plans .pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--card);border:1px solid var(--line);border-radius:20px;font-size:.88rem;color:var(--ink);text-decoration:none;font-weight:500;transition:all .2s ease}.recent-plans .pill:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 4px 12px rgba(0,0,0,.05);background:var(--bg-strong)}.recent-plans .cta-link{font-size:.88rem;font-weight:600;color:var(--accent);text-decoration:none;transition:color .2s ease}.recent-plans .cta-link:hover{color:var(--ink);text-decoration:underline}.create-another-label{color:var(--muted);font-size:.92rem;margin:6px 0 8px;letter-spacing:.02em}.trust-strip{margin-top:32px;padding:18px 22px;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem;text-align:center;line-height:1.55}.sparkline{display:block}.builder-back-row{margin-bottom:14px}.currency-input{position:relative;display:flex;align-items:stretch}.currency-input__symbol{display:grid;place-items:center;padding:0 10px;background:var(--field-bg);border:1px solid var(--line);border-right:none;border-radius:8px 0 0 8px;color:var(--muted);font-weight:500;font-size:.92rem}.currency-input__field{border-radius:0 8px 8px 0;flex:1 1;min-width:0}.advanced-options{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}.advanced-options__toggle{background:none;border:none;color:var(--accent);font:inherit;font-size:.92rem;font-weight:500;cursor:pointer;padding:4px 0;display:inline-flex;align-items:center;gap:6px}.advanced-options__toggle:focus-visible,.advanced-options__toggle:hover{text-decoration:underline;outline:none}.advanced-options__chevron{display:inline-block;width:12px;text-align:center;color:var(--muted)}.advanced-options__content{margin-top:12px}.jargon-tip{position:relative;display:inline-block;margin-left:4px}.jargon-tip__trigger{background:var(--accent-subtle);border:none;color:var(--accent);width:18px;height:18px;border-radius:50%;font-size:.72rem;font-weight:700;line-height:1;cursor:help;padding:0;display:inline-grid;place-items:center}.jargon-tip__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jargon-tip__popup{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:50;min-width:220px;max-width:320px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:10px 12px;display:grid;grid-gap:4px;gap:4px;font-size:.84rem;line-height:1.4;color:var(--ink);text-align:left;font-weight:400;letter-spacing:0;text-transform:none}.jargon-tip__term{font-weight:600;color:var(--accent)}.jargon-tip__definition{color:var(--ink)}.jargon-tip__example{color:var(--muted);font-style:italic;font-size:.8rem}.dirty-nav-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center}.dirty-nav-modal__backdrop{position:absolute;inset:0;background:rgba(8,6,4,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dirty-nav-modal__panel{position:relative;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:24px;max-width:460px;width:calc(100% - 32px)}.dirty-nav-modal__title{margin:0 0 8px;font-size:1.2rem}.dirty-nav-modal__body{margin:0 0 16px;color:var(--muted);line-height:1.5}.dirty-nav-modal__error{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--danger-subtle);color:var(--danger);font-size:.88rem}.dirty-nav-modal__actions{display:flex;flex-direction:column;gap:8px}.builder-shell{display:grid;grid-gap:18px;gap:18px}.builder-shell__top{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-wrap:wrap}.builder-shell__back{display:flex;align-items:center;gap:16px;min-width:0}.builder-shell__autosave-status{color:var(--muted);font-size:.84rem}.builder-shell__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.builder-shell__actions--bottom{display:none}.builder-shell__action-hint{color:var(--muted);font-size:.82rem}.builder-shell__error{margin:0}.builder-shell__body{display:grid;grid-template-columns:240px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}@media (max-width:1024px){.builder-shell__body{grid-template-columns:1fr;grid-template-areas:"form" "rail"}.builder-shell__body>.section-rail{grid-area:rail}.builder-shell__body>.builder-shell__main{grid-area:form}}.builder-shell__main{display:grid;grid-gap:18px;gap:18px;min-width:0;max-width:760px;width:100%;justify-self:center}.builder-shell__hint{margin:0}.section-rail{position:-webkit-sticky;position:sticky;top:90px;align-self:start;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 14px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}@media (max-width:1024px){.section-rail{position:static;margin-bottom:8px}}.builder-shell__mode{display:inline-flex;padding:3px;gap:2px;background:var(--field-bg);border:1px solid var(--line);border-radius:999px}.builder-shell__mode-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.85rem;font-weight:600;padding:8px 16px;min-height:40px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .18s,color .18s}.builder-shell__mode-option:hover{color:var(--ink)}.builder-shell__mode-option.is-active{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.builder-shell__body--quick{display:block}.quick-plan-form{max-width:720px;width:100%;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.quick-plan-form__intro{margin-bottom:22px}.quick-plan-form__title{margin:0 0 6px;font-size:1.35rem}.quick-plan-form__lede{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}.quick-plan-form__grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.quick-plan-form__foot{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.quick-plan-form__switch{background:transparent;border:0;padding:0;font:inherit;cursor:pointer}@media (max-width:768px){.builder-shell__top{position:static}.builder-shell__actions--top{display:none}.builder-shell__actions--bottom{display:flex;flex-direction:column;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.builder-shell__actions--bottom>.action-button,.builder-shell__actions--bottom>.secondary-button{width:100%;min-height:48px}}@media (max-width:600px){.builder-shell__top{padding:12px 14px;gap:12px}.builder-shell__back{width:100%;justify-content:space-between}.builder-shell__mode{width:100%;justify-content:stretch}.builder-shell__mode-option{flex:1 1;min-height:44px}.builder-shell__actions{width:100%}.builder-shell__actions>.action-button,.builder-shell__actions>.secondary-button{flex:0 0 auto;min-height:46px}.quick-plan-form{padding:20px 16px;border-radius:18px}.quick-plan-form__grid{grid-template-columns:1fr}}.section-rail__progress{padding:0 6px 12px;border-bottom:1px solid var(--line);margin-bottom:12px}.section-rail__progress-counter{color:var(--muted);font-size:.78rem;letter-spacing:.04em;margin-bottom:8px}.section-rail__progress-bar{height:4px;background:var(--line);border-radius:999px;overflow:hidden}.section-rail__progress-fill{height:100%;background:var(--accent);transition:width .24s ease}.section-rail__list{list-style:none;padding:0;margin:0;display:grid;grid-gap:2px;gap:2px}.section-rail__item{margin:0}.section-rail__link{display:grid;grid-template-columns:18px 1fr;grid-template-rows:auto auto;grid-column-gap:10px;column-gap:10px;padding:8px;border-radius:10px;cursor:pointer;transition:background .12s ease}.section-rail__link:focus-visible,.section-rail__link:hover{background:var(--accent-subtle);outline:none}.section-rail__glyph{grid-row:1/3;align-self:center;font-size:.95rem;line-height:1}.section-rail__glyph--complete{color:var(--success)}.section-rail__glyph--partial{color:var(--warning)}.section-rail__glyph--untouched{color:var(--muted);opacity:.6}.section-rail__title{color:var(--ink);font-weight:500;font-size:.94rem;line-height:1.25}.section-rail__summary{color:var(--muted);font-size:.78rem;line-height:1.3}.required-marker{color:var(--accent);margin-left:1px;font-weight:700}.resume-drafts{display:flex;flex-direction:column;align-items:stretch;gap:16px;height:100%;flex:1 1;padding:20px 24px;background:linear-gradient(135deg,rgba(224,133,103,.08),rgba(224,133,103,.02));border:1px solid rgba(224,133,103,.2);border-radius:28px;box-shadow:var(--shadow),0 4px 12px rgba(0,0,0,.02);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}:root.light .resume-drafts,html:not(.dark) .resume-drafts{background:linear-gradient(135deg,rgba(169,77,47,.06),rgba(169,77,47,.02));border-color:rgba(169,77,47,.2)}.resume-drafts__header{display:flex;align-items:center;gap:10px}.resume-drafts__pulse{width:8px;height:8px;background-color:var(--accent);border-radius:50%;position:relative;display:inline-block}.resume-drafts__pulse:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--accent);border-radius:50%;animation:resume-pulse 2s ease-in-out infinite}@keyframes resume-pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(3.5);opacity:0}}.resume-drafts__label{color:var(--accent);font-size:.82rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.resume-drafts__items{display:flex;flex-direction:column;gap:10px}.resume-drafts__pill{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--card);border:1px solid var(--line);border-radius:12px;font-size:.88rem;color:var(--ink);text-decoration:none;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.resume-drafts__pill:hover{transform:translateX(2px);border-color:var(--accent);box-shadow:0 4px 12px rgba(224,133,103,.1);background:var(--bg-strong)}.resume-drafts__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resume-drafts__time{color:var(--muted);font-size:.78rem;font-weight:400;margin-left:auto}.resume-drafts__foot{margin-top:auto;display:flex;justify-content:flex-end}.resume-drafts .cta-link{font-size:.88rem;font-weight:600;color:var(--accent);text-decoration:none;transition:color .2s ease}.resume-drafts .cta-link:hover{color:var(--ink);text-decoration:underline}.continue-row{display:grid;grid-template-columns:7fr 3fr;grid-gap:24px;gap:24px;align-items:stretch;margin-bottom:24px}@media (max-width:1024px){.continue-row{grid-template-columns:1fr;gap:20px}}.continue-row__main{min-width:0;display:flex;flex-direction:column}.continue-row .continue-card{flex:1 1;height:100%;margin-bottom:0}.continue-row__side{min-width:0;display:flex;flex-direction:column}.dashboard-section{display:flex;flex-direction:column;gap:16px}.section-rail__link--active{background:var(--accent-subtle)!important;box-shadow:inset 3px 0 0 0 var(--accent);border-radius:10px}.section-rail__link--active .section-rail__title{color:var(--accent)!important;font-weight:600}.builder-section-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.builder-section-navigation>*{min-width:0}.ai-chat{display:flex;flex-direction:column;gap:1.25rem;max-width:760px;margin:0 auto;width:100%}.ai-chat__header{display:flex;align-items:center;justify-content:flex-start}.ai-chat__meta{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem}.ai-chat__credits{color:var(--muted);background:var(--accent-subtle);padding:.35rem .75rem;border-radius:999px}.ai-chat__credits strong{color:var(--ink)}.ai-chat__turns{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.conversation-view{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;min-height:240px;max-height:56vh;overflow-y:auto;scroll-behavior:smooth}.conversation-view__empty{color:var(--muted);font-size:.95rem;text-align:center;padding:2rem 1rem;border:1px dashed var(--line);border-radius:14px;background:rgba(255,255,255,.35);line-height:1.5}.turn-bubble{display:flex;max-width:85%}.turn-bubble--user{align-self:flex-end}.turn-bubble--assistant{align-self:flex-start}.turn-bubble__body{padding:.75rem 1rem;border-radius:14px;line-height:1.55;font-size:.95rem;word-wrap:break-word}.turn-bubble--user .turn-bubble__body{background:var(--accent);color:#fff8f1;border-bottom-right-radius:4px}.turn-bubble--assistant .turn-bubble__body{background:var(--bg-strong);color:var(--ink);border-bottom-left-radius:4px}.turn-bubble__line{margin:0}.turn-bubble__lines .turn-bubble__line+.turn-bubble__line{margin-top:.4rem}.turn-bubble--typing .turn-bubble__body{display:inline-flex;gap:4px;padding:.85rem 1rem}.turn-bubble__typing-dot{width:6px;height:6px;border-radius:50%;background:var(--muted);opacity:.5;animation:ai-chat-bounce 1.2s ease-in-out infinite}.turn-bubble__typing-dot:nth-child(2){animation-delay:.15s}.turn-bubble__typing-dot:nth-child(3){animation-delay:.3s}@keyframes ai-chat-bounce{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}.ai-chat__composer{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.ai-chat__error{background:var(--danger-subtle);color:var(--danger);border-radius:10px;padding:.6rem .85rem;font-size:.9rem}.ai-chat__error.is-quota{background:rgba(158,91,14,.18);color:var(--warning)}.ai-chat__textarea{width:100%;min-height:88px;max-height:260px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:.75rem .9rem;background:var(--field-bg);color:var(--ink);font:inherit;font-size:.95rem;line-height:1.5}.ai-chat__textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.ai-chat__composer-row{display:flex;align-items:center;justify-content:space-between;gap:.85rem;flex-wrap:wrap}.ai-chat__composer-actions{display:flex;gap:.5rem;align-items:center;margin-left:auto}.ai-chat__chars{font-size:.8rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-chat__chars.is-over{color:var(--danger);font-weight:600}.ai-chat__handoff-btn,.ai-chat__send,.ai-chat__skip{border:none;border-radius:10px;padding:.55rem 1rem;font:inherit;font-weight:600;cursor:pointer;transition:opacity .15s ease,transform .05s ease}.ai-chat__send{background:var(--accent);color:#fff8f1}.ai-chat__send:hover:not(:disabled){filter:brightness(1.05)}.ai-chat__send:disabled{opacity:.5;cursor:not-allowed}.ai-chat__skip{background:transparent;color:var(--muted);border:1px solid var(--line)}.ai-chat__skip:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ai-chat__handoff{background:var(--card);border:1px solid var(--success-subtle);border-radius:18px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.ai-chat__handoff p{margin:0;color:var(--ink);line-height:1.55}.ai-chat__handoff-btn{background:var(--success);color:#f6fff8;padding:.7rem 1.4rem;font-size:.95rem}.ai-chat__handoff-btn:hover:not(:disabled){filter:brightness(1.06)}.ai-chat__handoff-btn:disabled{opacity:.6;cursor:not-allowed}.mic-recorder{display:flex;flex-direction:column;gap:.35rem}.mic-recorder__row{display:flex;align-items:center;gap:.75rem}.mic-recorder__btn{background:transparent;border:1px solid var(--line);border-radius:999px;padding:.5rem .95rem;color:var(--muted);font:inherit;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.mic-recorder__btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.mic-recorder__btn.is-recording{background:var(--danger-subtle);border-color:var(--danger);color:var(--danger)}.mic-recorder__btn:disabled{opacity:.5;cursor:not-allowed}.mic-recorder__viz{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.85rem}.mic-recorder__bars{display:inline-flex;align-items:center;gap:3px;height:26px}.mic-recorder__bar{width:3px;height:22px;border-radius:2px;transform-origin:center;transform:scaleY(.2);transition:transform .05s linear}.mic-recorder__bar,.mic-recorder__dot{display:inline-block;background:var(--danger)}.mic-recorder__dot{width:10px;height:10px;border-radius:50%;animation:ai-chat-pulse 1.2s ease-in-out infinite}@keyframes ai-chat-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.mic-recorder__elapsed{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:.5rem}.mic-recorder__wrap{font-style:italic;color:var(--warning);font-size:.8rem}.mic-recorder__error{background:var(--danger-subtle);color:var(--danger);border-radius:8px;padding:.45rem .7rem;font-size:.85rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mic-recorder__retry{background:transparent;border:none;color:var(--danger);text-decoration:underline;cursor:pointer;font:inherit}.ai-suggested-field{position:relative}.ai-suggested-field--glow>*{animation:ai-suggested-glow 2.6s ease-out forwards}@keyframes ai-suggested-glow{0%{background-color:rgba(232,187,147,.45)}85%{background-color:rgba(232,187,147,.05)}to{background-color:transparent}}.ai-suggested-pill{display:inline-block;margin-left:.5rem;padding:.1rem .45rem;border-radius:999px;background:var(--accent-subtle);color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.02em;vertical-align:middle}.ai-draft-banner{background:var(--accent-subtle);border:1px solid var(--accent);border-radius:12px;padding:.85rem 1.1rem;color:var(--ink);display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.92rem;line-height:1.5}.ai-draft-banner strong{color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.comparison-controls-card{background:var(--bg-strong);border:1px solid var(--line);border-radius:20px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.01)}.comparison-selector-pair{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.comparison-selector-field{flex:1 1;min-width:240px;display:flex;flex-direction:column;gap:.5rem}.comparison-selector-label{font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.comparison-vs-badge{font-family:var(--font-display),sans-serif;font-weight:800;color:var(--accent);background:var(--accent-subtle);border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:.8rem;border:1px solid rgba(169,77,47,.15);margin-top:1rem}@media (max-width:640px){.comparison-vs-badge{align-self:center;margin-top:0}.comparison-selector-field{min-width:0;width:100%}.comparison-selector-pair{flex-direction:column;gap:.75rem}.table-notes{min-width:0}}.comparison-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-top:1rem;margin-bottom:2rem}.comparison-metric-card{background:var(--bg-strong);border:1px solid var(--line);border-radius:20px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.comparison-metric-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.03)}.comparison-metric-card.success-border{border-color:rgba(84,181,135,.3);background:linear-gradient(180deg,var(--bg-strong) 0,rgba(84,181,135,.04) 100%)}.comparison-metric-card.danger-border{border-color:rgba(217,104,104,.3);background:linear-gradient(180deg,var(--bg-strong) 0,rgba(217,104,104,.04) 100%)}.comparison-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.comparison-card-title{font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.comparison-card-delta-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:700}.comparison-card-delta-badge.success{background:var(--success-subtle);color:var(--success)}.comparison-card-delta-badge.danger{background:var(--danger-subtle);color:var(--danger)}.comparison-card-delta-badge.neutral{background:var(--field-bg);color:var(--muted)}.comparison-card-value-section{display:flex;flex-direction:column;gap:.25rem}.comparison-card-large-delta{font-size:1.6rem;font-weight:700;font-family:var(--font-display),sans-serif;color:var(--ink);line-height:1.1}.comparison-card-progression{font-size:.85rem;color:var(--muted);display:flex;align-items:center;gap:.4rem}.comparison-card-progression-arrow{color:var(--muted);opacity:.5}.skip-link{position:absolute;top:-100%;left:1rem;background:var(--accent);color:#fff;padding:.5rem 1rem;border-radius:0 0 var(--radius,8px) var(--radius,8px);z-index:9999;font-weight:600;text-decoration:none}.skip-link:focus{top:0}.session-expiry-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background:var(--danger,#9f2b2b);color:#fff;text-align:center;padding:.75rem 1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.session-expiry-banner__renew{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.12);color:#fff;font:inherit;font-weight:600;border-radius:999px;padding:.3rem .9rem;cursor:pointer}.session-expiry-banner__renew:hover{background:rgba(255,255,255,.22)}.dirty-nav-modal__actions button:disabled{opacity:.55;cursor:not-allowed}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.empty-state__icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:var(--accent-subtle);color:var(--accent)}.empty-state__title{margin:0 0 .35rem;color:var(--ink);font-weight:600;font-size:1.05rem}.empty-state__description{margin:0 auto;max-width:46ch;color:var(--muted)}.empty-state__action{display:inline-flex;align-items:center;min-height:44px;margin-top:1.1rem;text-decoration:none}.basis-badge{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:var(--accent-subtle);color:var(--accent);cursor:help}.basis-badge,.status-pill{display:inline-flex;align-items:center;font-weight:600;white-space:nowrap}.status-pill{gap:5px;font-size:.82rem}.status-pill svg{flex-shrink:0}.status-pill--danger{color:var(--danger)}.status-pill--success{color:var(--success)}.projection-legend{display:flex;flex-wrap:wrap;gap:16px;margin:-6px 0 16px}.table-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;text-align:center;color:var(--muted)}.table-empty__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--bg-strong);border:1px solid var(--line);color:var(--muted)}.table-empty__title{margin:0;color:var(--ink);font-weight:600}.trust-strip__line{margin:0;text-align:center}.trust-strip__legal{margin:10px auto 0;max-width:80ch;font-size:.78rem;line-height:1.5;opacity:.62;text-align:center}@media (min-width:769px){.text-center-desktop{text-align:center!important}}.scroll-to-save-btn{position:fixed;bottom:18px;left:18px;z-index:998;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--card);color:var(--ink);border:1px solid var(--line);cursor:pointer;box-shadow:var(--shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-weight:500;font-size:.85rem;line-height:1.2;transition:all .2s ease-out;animation:scroll-btn-fade-in .25s ease-out}.scroll-to-save-btn:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent);box-shadow:0 8px 24px rgba(0,0,0,.15)}.scroll-to-save-btn svg{width:14px;height:14px;fill:currentColor}@keyframes scroll-btn-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.scroll-to-save-btn{bottom:74px;left:18px}}.fi-hero{display:flex;align-items:center;gap:32px;padding:28px 32px;background:var(--card-accent-bg);animation:fi-hero-in .5s cubic-bezier(.4,0,.2,1) both}@keyframes fi-hero-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fi-hero-ring{position:relative;flex-shrink:0;width:188px;height:188px}.fi-hero-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 26px}.fi-hero-pct{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:3rem;font-weight:700;line-height:1;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fi-hero-pct-sign{font-size:1.5rem;font-weight:600;margin-left:1px}.fi-hero-pct-label{margin-top:6px;font-size:.66rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);line-height:1.25}.fi-hero-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:18px}.fi-hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.fi-hero-title{margin:0;font-size:1.35rem;line-height:1.2}.fi-hero-sub{margin:4px 0 0;font-size:.9rem;max-width:52ch}.fi-delta-chip{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;padding:6px 12px;border-radius:999px;font-size:.8rem;font-weight:700;white-space:nowrap}.fi-delta-chip[data-direction=good]{color:var(--success);background:var(--success-subtle)}.fi-delta-chip[data-direction=bad]{color:var(--danger);background:var(--danger-subtle)}.fi-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.fi-stat{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.fi-stat-label{font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.fi-stat-value{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:1.7rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fi-stat-note{font-size:.78rem}.fi-corpus{display:flex;flex-direction:column;gap:7px}.fi-corpus-row{display:flex;justify-content:space-between;font-size:.82rem;font-weight:600}.fi-corpus-track{height:8px;border-radius:999px;background:var(--line);overflow:hidden}.fi-corpus-fill{height:100%;border-radius:999px;min-width:4px}@media (max-width:720px){.fi-hero{flex-direction:column;gap:22px;padding:24px 20px}.fi-hero-body{width:100%}.fi-hero-head{flex-direction:column}}.pvi-controls{display:grid;grid-template-columns:1.6fr 1fr 1.4fr;grid-gap:16px;gap:16px;margin:18px 0 4px}.pvi-field{display:flex;flex-direction:column;gap:6px}.pvi-field-slider input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;margin-top:10px}.pvi-result{display:flex;flex-direction:column;gap:20px;margin-top:18px}.pvi-verdict{border-radius:18px;padding:18px 20px;border:1px solid var(--line);background:var(--card);animation:fi-hero-in .4s cubic-bezier(.4,0,.2,1) both}.pvi-verdict[data-winner=invest]{border-left:5px solid var(--success)}.pvi-verdict[data-winner=prepay]{border-left:5px solid var(--accent)}.pvi-verdict-main{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.pvi-verdict-badge{font-family:var(--font-display,"Outfit"),sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.pvi-verdict[data-winner=invest] .pvi-verdict-badge{color:var(--success)}.pvi-verdict[data-winner=prepay] .pvi-verdict-badge{color:var(--accent)}.pvi-verdict-amount{font-size:1.25rem;font-weight:700;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pvi-verdict-sub{margin:8px 0 0;font-size:.9rem;color:var(--muted);line-height:1.5}.pvi-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.pvi-branch{position:relative;display:flex;flex-direction:column;gap:4px;padding:18px 20px;border:1.5px solid var(--line);border-radius:16px;background:var(--card);transition:border-color .25s,box-shadow .25s,transform .25s}.pvi-branch[data-winner=true]{border-color:var(--success);box-shadow:0 8px 28px rgba(37,96,69,.12);transform:translateY(-2px)}.pvi-branch-flag{position:absolute;top:14px;right:16px;font-size:.66rem;font-weight:700;color:var(--success);background:var(--success-subtle);padding:3px 9px;border-radius:999px}.pvi-branch-flag,.pvi-branch-title{letter-spacing:.06em;text-transform:uppercase}.pvi-branch-title{font-size:.72rem;font-weight:600;color:var(--muted)}.pvi-branch-amount{font-family:var(--font-display,"Outfit"),sans-serif;font-size:2.1rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pvi-branch-sub{font-size:.78rem}.pvi-branch-detail{display:flex;flex-direction:column;gap:3px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:.86rem;color:var(--muted)}.pvi-branch-detail strong{color:var(--ink)}.pvi-chart{width:100%;background:var(--chart-surface);border-radius:14px;padding:10px 12px 4px}.pvi-chart svg{width:100%;height:220px;display:block}.pvi-axis{display:flex;justify-content:space-between;font-size:.74rem;color:var(--muted);padding:0 4px}.pvi-tradeoffs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;font-size:.86rem;color:var(--muted);line-height:1.5}.pvi-tradeoffs strong{color:var(--ink)}@media (max-width:720px){.pvi-branches,.pvi-controls,.pvi-tradeoffs{grid-template-columns:1fr}}.goal-celebrate-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:rgba(10,9,8,.28);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:goal-celebrate-fade .25s ease both}@keyframes goal-celebrate-fade{0%{opacity:0}to{opacity:1}}.goal-celebrate-card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;max-width:360px;margin:0 20px;padding:32px 28px;border-radius:24px;background:var(--card);border:1px solid var(--success-subtle);box-shadow:0 24px 70px rgba(37,96,69,.28),var(--shadow);animation:goal-celebrate-pop .42s cubic-bezier(.34,1.56,.64,1) both}@keyframes goal-celebrate-pop{0%{opacity:0;transform:scale(.85) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.goal-celebrate-title{margin:6px 0 0;font-size:1.5rem;color:var(--success)}.goal-celebrate-text{margin:0;font-size:.95rem;color:var(--muted);line-height:1.5}.goal-celebrate-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.goal-confetti-piece{position:absolute;top:-8%;width:9px;height:14px;border-radius:2px;opacity:.9;animation-name:goal-confetti-fall;animation-timing-function:cubic-bezier(.4,0,.6,1);animation-iteration-count:1;animation-fill-mode:both}@keyframes goal-confetti-fall{0%{transform:translateY(-10vh) rotate(0deg);opacity:1}to{transform:translateY(110vh) rotate(540deg);opacity:0}}@media (prefers-reduced-motion:reduce){.goal-celebrate-card,.goal-celebrate-overlay{animation:none}}.future-self{padding:24px 28px;background:linear-gradient(180deg,rgba(169,77,47,.05),transparent 60%),var(--card-accent-bg);border:1px solid var(--accent-subtle)}.future-self-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.future-self-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.future-self-idle{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.future-self-prompt{margin:0;font-size:1.02rem;color:var(--muted);line-height:1.55;max-width:60ch}.future-self-letter p{margin:0 0 14px;font-size:1.02rem;line-height:1.72;color:var(--ink)}.future-self-letter p:first-child:first-letter{font-family:var(--font-display,"Outfit"),serif;font-size:2.6rem;font-weight:700;float:left;line-height:.86;padding:4px 10px 0 0;color:var(--accent)}.future-self-sign{margin-top:6px!important;font-family:var(--font-display,"Outfit"),sans-serif;font-style:italic;font-weight:600;color:var(--accent)!important}.studio-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.studio-header .section-head{margin:0}.studio-dice{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--accent);background:var(--accent-subtle);color:var(--accent);font-weight:700;font-size:.9rem;cursor:pointer;transition:background .2s,transform .15s}.studio-dice:hover{background:var(--accent);color:var(--bg)}.studio-dice:active{transform:scale(.97)}.studio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.studio-card{display:flex;flex-direction:column;gap:7px;text-align:left;padding:18px;border:1.5px solid var(--line);border-radius:18px;background:var(--card);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}.studio-card:hover{border-color:var(--accent-soft);box-shadow:0 10px 30px rgba(0,0,0,.06);transform:translateY(-3px)}.studio-card[data-active=true]{border-color:var(--accent);box-shadow:0 10px 30px var(--accent-subtle)}.studio-card-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:var(--accent-subtle);color:var(--accent)}.studio-card-label{font-family:var(--font-display,"Outfit"),sans-serif;font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.2}.studio-card-desc{font-size:.82rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.studio-result{background:var(--card-accent-bg);border:1px solid var(--accent-subtle);animation:fi-hero-in .4s cubic-bezier(.4,0,.2,1) both}.studio-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.studio-result-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.studio-result-title{margin:4px 0 0;font-size:1.35rem}.studio-changes{margin:16px 0 0;padding-left:18px;color:var(--muted);font-size:.88rem;line-height:1.6}.studio-deltas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:10px;gap:10px;margin-top:18px}.studio-delta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.studio-delta-label{font-size:.84rem;font-weight:600;color:var(--muted)}.studio-delta-values{display:inline-flex;align-items:center;gap:8px;font-size:.95rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.studio-delta-chip{font-size:.85rem;font-weight:700}@media (max-width:720px){.studio-result-head{flex-direction:column}}.windfall-controls{display:flex;gap:14px;align-items:flex-end;margin-top:16px;flex-wrap:wrap}.windfall-result{margin-top:18px}.windfall-headline{padding:12px 16px;border-radius:14px;background:var(--success-subtle);color:var(--success);font-size:.95rem;margin-bottom:14px}.windfall-headline strong{font-weight:700}.windfall-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.windfall-step{display:flex;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.windfall-step-num{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--accent-subtle);color:var(--accent);font-weight:700;display:flex;align-items:center;justify-content:center}.windfall-step-body{flex:1 1;min-width:0}.windfall-step-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.windfall-step-bucket{font-family:var(--font-display,"Outfit"),sans-serif;font-weight:700;font-size:1.05rem;color:var(--ink)}.windfall-step-amount{font-weight:700;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.windfall-step-detail{margin:4px 0 0;font-size:.86rem;line-height:1.45}.windfall-tax-badge{display:inline-block;margin-top:8px;font-size:.74rem;font-weight:700;color:var(--success);background:var(--success-subtle);padding:3px 10px;border-radius:999px}.relocation-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.relocation-from{font-size:.95rem;color:var(--muted)}.relocation-from strong{color:var(--ink)}.tradeoff-list{gap:18px;margin-top:8px}.tradeoff-list,.tradeoff-row{display:flex;flex-direction:column}.tradeoff-row{gap:8px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.tradeoff-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.tradeoff-name{font-weight:700;color:var(--ink)}.tradeoff-year{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.tradeoff-slider{width:100%;accent-color:var(--accent);cursor:pointer}.tradeoff-impact{display:flex;gap:18px;font-size:.88rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:opacity .2s;min-height:1.2em}@media (max-width:720px){.windfall-controls{flex-direction:column;align-items:stretch}}.drift-banner{border-radius:18px;padding:16px 20px;border:1px solid var(--warning-subtle);background:var(--warning-subtle);animation:fi-hero-in .4s cubic-bezier(.4,0,.2,1) both}.drift-banner.drift-under{border-color:var(--success-subtle);background:var(--success-subtle)}.drift-banner-main{display:flex;align-items:center;gap:14px}.drift-icon{color:var(--warning);flex-shrink:0;display:inline-flex}.drift-under .drift-icon{color:var(--success)}.drift-text{flex:1 1;font-size:.92rem;line-height:1.5;color:var(--ink)}.drift-toggle{flex-shrink:0}.drift-detail{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:.9rem;line-height:1.55}@media (max-width:640px){.drift-banner-main{flex-direction:column;align-items:flex-start;gap:8px}.drift-toggle{align-self:flex-end}}.si-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:18px;gap:18px}.si-card{display:flex;flex-direction:column;gap:8px}.si-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.si-stat-row{display:flex;align-items:baseline;gap:10px}.si-stat{font-family:var(--font-display,"Outfit"),sans-serif;font-size:2.2rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.si-vs{font-size:.88rem}.si-bar{position:relative;height:10px;border-radius:999px;background:var(--line);overflow:hidden;margin:4px 0}.si-bar-cpi,.si-bar-you{position:absolute;top:0;left:0;height:100%;border-radius:999px}.si-bar-cpi{background:var(--muted);opacity:.35}.si-note{margin:2px 0 0;font-size:.86rem;line-height:1.5}.si-drivers{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.si-driver{font-size:.78rem;padding:4px 10px;border-radius:999px;background:var(--accent-subtle);color:var(--accent);text-transform:capitalize}.si-driver strong{font-weight:700}.tax-hero{background:var(--card-accent-bg);border:1px solid var(--accent-subtle)}.tax-hero-warroom{border-color:var(--danger-subtle);background:linear-gradient(180deg,rgba(159,43,43,.06),transparent 60%),var(--card-accent-bg)}.tax-hero-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.tax-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}.tax-hero-warroom .tax-eyebrow{color:var(--danger)}.tax-hero-title{margin:6px 0 0;font-size:1.5rem;font-weight:700}.tax-hero-title strong{color:var(--success)}.tax-countdown{display:flex;flex-direction:column;align-items:center;padding:10px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line)}.tax-countdown-num{font-family:var(--font-display,"Outfit"),sans-serif;font-size:2rem;font-weight:700;line-height:1;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tax-countdown-label{font-size:.72rem;color:var(--muted);margin-top:2px}.tax-gainharvest p{margin:0 0 12px;font-size:.95rem;line-height:1.6}.tax-meter{height:12px;border-radius:999px;background:var(--line);overflow:hidden;margin-bottom:6px}.tax-meter-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--success));transition:width .7s cubic-bezier(.4,0,.2,1)}.tax-list{display:flex;flex-direction:column;gap:10px}.tax-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.tax-row-main{display:flex;flex-direction:column;gap:4px;min-width:0}.tax-row-name{font-weight:600;color:var(--ink)}.tax-row-tag{font-size:.72rem;text-transform:capitalize;color:var(--muted);background:var(--bg-strong);padding:2px 8px;border-radius:999px;width:-moz-fit-content;width:fit-content}.tax-tag-warn{color:var(--warning);background:var(--warning-subtle)}.tax-row-value{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.survivorship.surv-ok{border-left:5px solid var(--success)}.survivorship.surv-gap{border-left:5px solid var(--danger)}.surv-body{display:flex;align-items:center;gap:18px;margin-top:6px}.surv-icon{flex-shrink:0}.surv-text p{margin:0;font-size:1rem;line-height:1.6;color:var(--ink)}.surv-gapbar{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-gap:14px;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.surv-gap-figure{display:flex;flex-direction:column;gap:3px}.surv-gap-label{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.surv-gap-amount{font-family:var(--font-display,"Outfit"),sans-serif;font-size:1.9rem;font-weight:700;line-height:1.05;color:var(--danger);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.surv-gap-sub{font-size:1.15rem;font-weight:700;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.surv-gapbar{grid-template-columns:1fr}}.info-hint{position:relative;display:inline-flex;vertical-align:middle;margin-left:5px}.info-hint-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;width:16px;height:16px;border:none;background:none;color:var(--muted);cursor:help;opacity:.65;transition:opacity .15s,color .15s}.info-hint-btn:focus-visible,.info-hint-btn:hover{opacity:1;color:var(--accent);outline:none}.info-hint-pop{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(4px);width:max-content;max-width:260px;padding:10px 13px;border-radius:12px;background:var(--ink);color:var(--bg);font-size:.8rem;font-weight:400;line-height:1.5;letter-spacing:normal;text-transform:none;text-align:left;white-space:normal;box-shadow:0 10px 30px rgba(0,0,0,.28);opacity:0;pointer-events:none;z-index:1200;transition:opacity .18s ease,transform .18s ease}.info-hint-pop[data-open=true]{opacity:1;transform:translateX(-50%) translateY(0)}.info-hint-term{display:block;margin-bottom:3px;color:var(--accent-soft);font-weight:700}@media (max-width:560px){.info-hint-pop{max-width:200px}}.hero h1 .info-hint-pop{left:0;transform:translateX(0) translateY(4px)}.hero h1 .info-hint-pop[data-open=true]{transform:translateX(0) translateY(0)}.twin-result{display:flex;flex-direction:column;gap:14px}.twin-headline{margin:0;font-size:1.05rem;line-height:1.6;color:var(--ink)}.twin-chart{width:100%;background:var(--chart-surface);border-radius:14px;padding:10px 12px 4px}.twin-chart svg{width:100%;height:240px;display:block}.twin-axis{display:flex;justify-content:space-between;font-size:.74rem;color:var(--muted);padding:0 4px}.twin-legend{display:flex;flex-wrap:wrap;gap:10px 20px}.twin-legend-item{display:flex;align-items:center;gap:8px;font-size:.88rem}.twin-swatch{width:14px;height:4px;border-radius:2px;flex-shrink:0}.twin-legend-label{font-weight:600;color:var(--ink)}.twin-legend-metric{color:var(--muted)}.feed-list{display:flex;flex-direction:column;gap:10px}.feed-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-left-width:4px;border-radius:14px;background:var(--card);transition:box-shadow .2s,transform .2s}.feed-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.06);transform:translateY(-1px)}.feed-action{border-left-color:var(--accent)}.feed-success{border-left-color:var(--success)}.feed-warning{border-left-color:var(--warning)}.feed-info{border-left-color:var(--series-3)}.feed-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;flex-shrink:0}.feed-action .feed-icon{color:var(--accent);background:var(--accent-subtle)}.feed-success .feed-icon{color:var(--success);background:var(--success-subtle)}.feed-warning .feed-icon{color:var(--warning);background:var(--warning-subtle)}.feed-info .feed-icon{color:var(--series-3);background:var(--bg-strong)}.feed-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.feed-headline{font-weight:600;color:var(--ink);line-height:1.35}.feed-detail{font-size:.84rem;line-height:1.4}.feed-cta{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--field-bg);color:var(--accent);font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.feed-cta:hover{background:var(--accent-subtle);border-color:var(--accent-soft)}@media (max-width:640px){.feed-card{flex-wrap:wrap}.feed-cta{width:100%;justify-content:center;margin-top:4px}}.anomaly-badge{background:var(--warning-subtle,rgba(158,91,14,.15));color:var(--warning);font-weight:600}.anomaly-badge,.review-later-badge{margin-left:8px;padding:2px 8px;border-radius:999px;font-size:.72rem}.review-later-badge{border:1px solid color-mix(in srgb,var(--danger) 38%,transparent);background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.table-wrap>table tr.txn-row-review-later{box-shadow:inset 4px 0 0 var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--card))}.table-wrap>table tr.txn-row-review-later td{border-color:color-mix(in srgb,var(--danger) 18%,var(--line))}.true-cost-chip{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;background:var(--accent-subtle);color:var(--accent);font-size:.67rem;font-weight:700;letter-spacing:.025em;vertical-align:middle;white-space:nowrap;cursor:help;transition:background .2s}.true-cost-chip:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.spending-filters-toggle,.txn-actions-kebab,.txn-badges-cell{display:none}.txn-category-cell{display:flex;align-items:center;gap:6px}@media (max-width:768px){.table-wrap{overflow:visible}.txn-badges--inline{display:none}.txn-badges-cell{display:flex!important;justify-content:space-between;align-items:center;gap:8px}.txn-badges-cell:before{display:none}.txn-badges-cell__tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.txn-badges-cell__tags .anomaly-badge,.txn-badges-cell__tags .review-later-badge{margin-left:0}.txn-badges-cell__check{flex:0 0 auto}.txn-badges-cell__actions{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.table-wrap>table td.txn-select-cell,.table-wrap>table td[data-label=For]{display:none}.table-wrap>table td[data-label=Category]{align-items:center}.txn-category-cell{margin-left:auto}.txn-category-cell .inline-select{margin-bottom:0}.table-wrap>table td[data-label=Action]{display:none}.txn-actions-kebab{display:inline-flex;position:relative}.txn-kebab-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font-size:1.1rem;line-height:1;cursor:pointer}.txn-kebab-btn:disabled{opacity:.5;cursor:default}.txn-actions-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:60;min-width:132px;display:flex;flex-direction:column;padding:4px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.35)}.txn-actions-menu button{text-align:left;padding:9px 12px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:.9rem;cursor:pointer}.txn-actions-menu button:hover{background:var(--accent-subtle)}.txn-actions-menu__danger{color:var(--danger)}.txn-menu-backdrop{position:fixed;inset:0;z-index:55}.spending-filters-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:44px}.spending-filters-toolbar{display:grid!important;grid-template-columns:1fr 1fr;grid-gap:10px!important;gap:10px!important;align-items:end}.spending-filters-toolbar.is-collapsed{display:none!important}.spending-filters-toolbar .field{flex:unset!important}.spending-filters-toolbar .field:first-child{grid-column:1/-1}}.unusual-alert-card{border:1px solid color-mix(in srgb,var(--danger) 22%,var(--line));background:color-mix(in srgb,var(--danger) 4%,var(--card));box-shadow:0 8px 32px color-mix(in srgb,var(--danger) 8%,transparent)}.unusual-alert-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.unusual-alert-head h3{margin:0;color:var(--danger);font-size:1.05rem}.unusual-alert-icon{width:34px;height:34px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.unusual-alert-copy{margin:0 0 16px;color:var(--subdued);font-size:.9rem;line-height:1.45}@media (max-width:768px){.unusual-alert-card{padding:16px}.unusual-alert-head{align-items:flex-start}.unusual-alert-head h3{font-size:1rem;line-height:1.2}.unusual-alert-table>table tr{border-color:color-mix(in srgb,var(--danger) 30%,var(--line));box-shadow:inset 4px 0 0 var(--danger)}.unusual-alert-table>table td{align-items:flex-start;line-height:1.35;white-space:normal}.unusual-alert-table>table td:before{max-width:42%;line-height:1.2}}.bell-wrap{position:relative}.bell-backdrop{position:fixed;inset:0;z-index:199}.bell-drawer{position:absolute;top:calc(100% + 10px);right:0;z-index:200;width:360px;max-width:calc(100vw - 24px);background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 64px rgba(0,0,0,.16);display:flex;flex-direction:column;animation:bell-drawer-in .22s cubic-bezier(.34,1.56,.64,1) both;overflow:hidden}@keyframes bell-drawer-in{0%{opacity:0;transform:scale(.92) translateY(-8px);transform-origin:top right}to{opacity:1;transform:scale(1) translateY(0);transform-origin:top right}}.bell-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--line)}.bell-drawer-title{font-family:var(--font-display,"Outfit"),sans-serif;font-size:.95rem;font-weight:700;color:var(--ink)}.bell-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.bell-close:hover{background:var(--bg-strong);color:var(--ink)}.bell-drawer-body{flex:1 1;overflow-y:auto;max-height:420px;padding:12px 14px}.bell-drawer-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 16px;color:var(--muted);font-size:.9rem;text-align:center}.bell-drawer-foot{padding:10px 18px 14px;border-top:1px solid var(--line);text-align:center}.bell-feed-list{display:flex;flex-direction:column;gap:8px}.bell-feed-card{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);transition:box-shadow .2s}.bell-feed-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.07)}.bell-feed-warning{border-left:3px solid var(--warning)}.bell-feed-action{border-left:3px solid var(--accent)}.bell-feed-success{border-left:3px solid var(--success)}.bell-feed-info{border-left:3px solid var(--muted)}.bell-feed-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:var(--accent-subtle);color:var(--accent);margin-top:1px}.bell-feed-warning .bell-feed-icon{background:var(--warning-subtle);color:var(--warning)}.bell-feed-success .bell-feed-icon{background:var(--success-subtle);color:var(--success)}.bell-feed-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.bell-feed-headline{font-size:.86rem;font-weight:700;color:var(--ink);line-height:1.3}.bell-feed-detail{font-size:.78rem;line-height:1.4}.bell-feed-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-size:.72rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s;align-self:center}.bell-feed-cta:hover{background:var(--accent);color:var(--bg)}@media (max-width:480px){.bell-drawer{width:calc(100vw - 24px);right:-8px}}.bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s}.bell-btn:hover{background:var(--accent-subtle);border-color:var(--accent-soft);color:var(--accent)}.bell-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--accent);color:#fff;font-size:.6rem;font-weight:800;pointer-events:none}.bell-badge,.bm-overlay{display:flex;align-items:center;justify-content:center}.bm-overlay{position:fixed;inset:0;z-index:500;padding:24px 16px;background:rgba(8,7,6,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:bm-overlay-in .2s ease both}@keyframes bm-overlay-in{0%{opacity:0}to{opacity:1}}.bm-modal{position:relative;width:100%;max-width:680px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:28px;box-shadow:0 32px 80px rgba(0,0,0,.28);overflow:hidden;animation:bm-modal-in .28s cubic-bezier(.34,1.4,.64,1) both}@keyframes bm-modal-in{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.bm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:28px 32px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--accent-subtle) 0,transparent 100%)}.bm-header-left{display:flex;flex-direction:column;gap:4px}.bm-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.bm-title{margin:0;font-family:var(--font-display,"Outfit"),sans-serif;font-size:1.55rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.15}.bm-subtitle{margin:2px 0 0;font-size:.88rem;color:var(--muted);line-height:1.4}.bm-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1.5px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;transition:background .15s,color .15s;margin-top:2px}.bm-close:hover{background:var(--bg-strong);color:var(--ink)}.bm-body{flex:1 1;overflow-y:auto;padding:24px 32px;scrollbar-width:thin}.bm-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;text-align:center}.bm-empty-spinner{width:32px;height:32px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:bm-spin .8s linear infinite}@keyframes bm-spin{to{transform:rotate(1turn)}}.bm-cards{display:flex;flex-direction:column;gap:14px}.bm-card{display:flex;align-items:flex-start;gap:18px;padding:20px 22px;border-radius:18px;border:1px solid var(--line);background:var(--bg);transition:box-shadow .2s,transform .2s;animation:bm-card-in .35s cubic-bezier(.4,0,.2,1) both}@keyframes bm-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bm-card:hover{box-shadow:0 8px 28px rgba(0,0,0,.08);transform:translateY(-1px)}.bm-card--warning{border-left:4px solid var(--warning)}.bm-card--action{border-left:4px solid var(--accent)}.bm-card--success{border-left:4px solid var(--success)}.bm-card--info{border-left:4px solid var(--muted)}.bm-card-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:var(--accent-subtle);color:var(--accent)}.bm-card--warning .bm-card-icon{background:var(--warning-subtle);color:var(--warning)}.bm-card--success .bm-card-icon{background:var(--success-subtle);color:var(--success)}.bm-card--info .bm-card-icon{background:var(--bg-strong);color:var(--muted)}.bm-card-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:6px}.bm-card-meta{display:flex;align-items:center;gap:8px}.bm-card-tag{font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:2px 9px;border-radius:999px;background:var(--accent-subtle);color:var(--accent)}.bm-card-tag--warning{background:var(--warning-subtle);color:var(--warning)}.bm-card-tag--success{background:var(--success-subtle);color:var(--success)}.bm-card-tag--info{background:var(--bg-strong);color:var(--muted)}.bm-card-headline{margin:0;font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.35}.bm-card-detail{margin:0;font-size:.9rem;color:var(--muted);line-height:1.6}.bm-card-action{flex-shrink:0;display:flex;align-items:center;padding-top:2px}.bm-cta{display:inline-flex;align-items:center;gap:5px;padding:9px 18px;border-radius:999px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.bm-cta:hover{background:var(--accent);color:var(--bg)}.bm-cta--warning{border-color:var(--warning);color:var(--warning)}.bm-cta--warning:hover{background:var(--warning);color:#fff}.bm-cta--success{border-color:var(--success);color:var(--success)}.bm-cta--success:hover{background:var(--success);color:#fff}.bm-footer{padding:14px 32px 18px;border-top:1px solid var(--line);text-align:center;font-size:.75rem}@media (max-width:600px){.bm-header{padding:20px 20px 16px}.bm-title{font-size:1.25rem}.bm-body{padding:16px 20px}.bm-card{flex-wrap:wrap;gap:12px}.bm-card-action,.bm-cta{width:100%}.bm-cta{justify-content:center}.bm-footer{padding:12px 20px 16px}}@media (hover:none) and (pointer:coarse){html{touch-action:manipulation}}[role=button],a,button{-webkit-tap-highlight-color:transparent}.bottom-tab-bar,.nav-bar,.top-bar,.workspace-switcher{-moz-user-select:none;user-select:none;-webkit-user-select:none}.bottom-tab-bar{display:none}.nav-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}@media (max-width:520px){.pf-hero-value{font-size:clamp(1.6rem,5vw,2rem)}.fi-hero-pct{font-size:2.2rem}.si-stat{font-size:1.6rem}.landing-metrics{grid-template-columns:1fr 1fr;gap:12px}.login-bg-blob{width:280px;height:280px}.stack{gap:14px}.hero{margin-bottom:16px}.nav-bar{margin-bottom:14px;gap:8px}}@media (max-width:768px){.bottom-tab-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--card);border-top:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding-bottom:max(8px,env(safe-area-inset-bottom));padding-top:6px;height:calc(56px + env(safe-area-inset-bottom))}.bottom-tab{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 4px;color:var(--muted);text-decoration:none;transition:color .15s ease;min-height:44px;-webkit-tap-highlight-color:transparent}.bottom-tab[data-active=true]{color:var(--accent)}.bottom-tab__icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.bottom-tab__label{font-size:.68rem;font-weight:600;letter-spacing:.02em;line-height:1}.bottom-tab--quick-log{background:none;border:none;font-family:inherit;cursor:pointer}.bottom-tab--quick-log .bottom-tab__icon{width:30px;height:30px}.bottom-tab-quick-log-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:999px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 78%,var(--success)));color:#fff;font-weight:800;font-size:1.05rem;box-shadow:0 4px 10px rgba(65,37,22,.15);transition:transform .12s ease}.bottom-tab--quick-log:active .bottom-tab-quick-log-btn{transform:scale(.92)}.workspace-switcher{display:none}.app-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.chat-drawer-trigger{bottom:calc(68px + env(safe-area-inset-bottom))}.nav-chip{white-space:nowrap}.top-bar{flex-direction:row!important;align-items:center;gap:8px;margin-bottom:14px}.app-shell{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.link-btn{min-height:44px;display:inline-flex;align-items:center}.action-button-ghost{padding:10px 14px}.pf-btn-remove{width:36px;height:36px}}@media (max-width:480px){.nav-row{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 4px 4px}.nav-row::-webkit-scrollbar{display:none}.nav-chip{flex:0 0 auto}}@media (max-width:375px){.landing-metrics{grid-template-columns:1fr}.progress-home-strip__metrics{grid-template-columns:1fr;gap:8px}}.nav-row,.table-wrap{-webkit-overflow-scrolling:touch}.nav-global-group,.nav-theme-toggle{display:none}.user-avatar-btn,.user-status{position:relative}.user-avatar-btn{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-size:.72rem;font-weight:700;letter-spacing:.04em;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;flex-shrink:0}.user-avatar-initials{line-height:1}.user-avatar-badge{position:absolute;top:1px;right:1px;width:8px;height:8px;border-radius:50%;background:var(--warning);border:1.5px solid var(--card)}.user-menu-backdrop{position:fixed;inset:0;z-index:299}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:300;min-width:200px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 48px rgba(0,0,0,.18);padding:8px 0;animation:user-menu-in .15s cubic-bezier(.4,0,.2,1) both}@keyframes user-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.user-menu-header{display:flex;align-items:center;gap:6px;padding:10px 16px 8px}.user-menu-name{font-size:.82rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.user-menu-divider{height:1px;background:var(--line);margin:4px 0}.user-menu-row{display:flex;align-items:center;width:100%;padding:10px 16px;font-size:.88rem;font-weight:500;color:var(--ink);text-decoration:none;background:none;border:none;cursor:pointer;text-align:left;gap:10px;transition:background .12s;-webkit-tap-highlight-color:transparent}.user-menu-row:focus-visible,.user-menu-row:hover{background:var(--bg-strong)}.user-menu-row__icon{color:var(--muted);display:flex;align-items:center;flex-shrink:0}.user-menu-row__ext{color:var(--muted);flex-shrink:0;margin-left:auto}.user-menu-row--toggle{justify-content:flex-start;gap:10px;color:var(--ink)}.user-menu-row--danger{color:var(--danger)}.quick-log-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:980;min-width:58px;height:58px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 78%,var(--success)));color:#fff;box-shadow:0 18px 44px rgba(65,37,22,.28);display:inline-flex;align-items:center;justify-content:center;gap:5px;font-weight:800;font-size:1.08rem;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.quick-log-fab:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(65,37,22,.34)}.quick-log-fab:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.quick-log-layer{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.18)}.quick-log-panel{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(max(22px, env(safe-area-inset-bottom)) + 76px);width:min(440px,calc(100vw - 28px));max-height:min(760px,calc(100vh - 120px));overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);box-shadow:var(--shadow);padding:18px;animation:quick-log-pop .18s cubic-bezier(.16,1,.3,1)}.quick-log-grip{display:none}.quick-log-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.quick-log-title{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.quick-log-head h2{margin:0;font-size:1.16rem;white-space:nowrap}.quick-log-kicker{margin:0;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.quick-log-icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 82%,var(--bg-strong));color:inherit;cursor:pointer}.quick-log-error{margin:0 0 12px;padding:9px 11px;border-radius:8px;background:var(--danger-subtle);color:var(--danger);font-size:.86rem}.quick-log-amount{display:grid;grid-gap:6px;gap:6px;margin-bottom:14px}.quick-log-amount span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.quick-log-amount input{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--field-bg);color:inherit;padding:12px 52px 12px 14px;font-size:2rem;font-weight:800;line-height:1.1}.quick-log-amount input::-webkit-inner-spin-button,.quick-log-amount input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.quick-log-amount input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.quick-log-amount-control{position:relative}.quick-log-calculator-btn{position:absolute;right:10px;top:50%;width:36px;height:36px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--card) 88%,var(--bg-strong));color:var(--muted);cursor:pointer}.quick-log-calculator-btn:hover,.quick-log-calculator-btn[aria-expanded=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.quick-log-calculator{display:grid;grid-gap:10px;gap:10px;margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 88%,var(--bg-strong))}.quick-log-calculator-actions{display:flex;justify-content:flex-end;gap:8px}.quick-log-calculator-actions .action-button,.quick-log-calculator-actions .secondary-button{min-height:36px;padding:0 14px}.quick-log-calculator-error{margin:-2px 0 0;color:var(--danger);font-size:.82rem;font-weight:700}.quick-log-section{display:grid;grid-gap:8px;gap:8px;margin-bottom:12px}.quick-log-section-title{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.quick-log-section-title small{font-size:.75rem;font-weight:600;text-transform:none;letter-spacing:0}.quick-log-jar-search{flex:0 1 210px;min-width:148px}.quick-log-jar-search input{width:100%;min-height:32px;border:1px solid var(--line);border-radius:999px;background:var(--field-bg);color:var(--ink);padding:6px 11px;font:inherit;font-size:.78rem;font-weight:650;letter-spacing:0;text-transform:none}.quick-log-jar-search input:focus{border-color:var(--accent);outline:2px solid var(--accent-soft);outline-offset:1px}.quick-log-jars{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.quick-log-jar-pill{min-height:86px;border-radius:10px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 86%,var(--bg-strong));color:inherit;padding:10px;text-align:left;cursor:pointer;display:grid;grid-gap:5px;gap:5px;transition:border-color .16s ease,background .16s ease}.quick-log-jar-pill[data-active=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.quick-log-jar-pill--inbox{border-style:dashed;background:color-mix(in srgb,var(--card) 80%,var(--bg-strong))}.quick-log-jar-pill[data-tone=success] .quick-log-jar-fill{color:var(--success)}.quick-log-jar-pill[data-tone=warning] .quick-log-jar-fill{color:var(--warning)}.quick-log-jar-pill[data-tone=danger] .quick-log-jar-fill{color:var(--danger)}.quick-log-jar-name{font-weight:800;line-height:1.1;overflow-wrap:anywhere}.quick-log-jar-match{color:var(--accent);font-size:.74rem;font-weight:800}.quick-log-jar-fill,.quick-log-jar-left{font-size:.78rem;font-weight:700}.quick-log-empty,.quick-log-jar-left{color:var(--muted)}.quick-log-empty{grid-column:1/-1;border:1px dashed var(--line);border-radius:10px;padding:12px;font-size:.88rem}.quick-log-budget-note{margin:-2px 0 12px;color:var(--danger);font-size:.84rem;font-weight:700}.quick-log-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.quick-log-chip{min-height:38px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 86%,transparent);color:inherit;padding:7px 12px;font-size:.86rem;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.quick-log-chip[data-active=true]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.member-spend-chip{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 86%,var(--bg-strong));color:var(--muted);padding:3px 9px;font-size:.78rem;font-weight:750;white-space:nowrap}.member-spend-list{display:grid;grid-gap:10px;gap:10px}.member-spend-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:color-mix(in srgb,var(--card) 84%,transparent)}.member-spend-cats{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:6px;color:var(--muted);font-size:.8rem}.merchant-list{display:flex;flex-direction:column;gap:8px}.merchant-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:color-mix(in srgb,var(--card) 84%,transparent);border:1px solid var(--line);border-radius:12px}.merchant-card__info{min-width:0;flex:1 1}.merchant-card__name{font-weight:600;text-transform:capitalize;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merchant-card__meta{font-size:.78rem;color:var(--muted);margin-top:2px}.merchant-card__total{font-weight:700;font-size:1rem;white-space:nowrap;flex-shrink:0}.quick-log-action-area{display:grid;grid-gap:0;gap:0}.quick-log-description{margin-bottom:10px}.quick-log-more{width:100%;min-height:40px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);padding:8px 11px;margin-bottom:12px;font-weight:800;cursor:pointer}.quick-log-more span{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em}.quick-log-more-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin:12px 0}.quick-log-notes{grid-column:1/-1}.quick-log-submit{width:100%;min-height:48px;border:none;border-radius:10px;background:var(--accent);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 28px var(--accent-subtle)}.quick-log-submit:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}@keyframes quick-log-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (min-width:769px){.quick-log-layer{background:transparent}.quick-log-panel{right:max(22px,env(safe-area-inset-right));bottom:calc(max(22px, env(safe-area-inset-bottom)) + 82px);width:min(700px,calc(100vw - 64px));max-height:min(720px,calc(100vh - 170px));overflow-y:auto;overscroll-behavior:contain;padding:14px;border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.44)}.quick-log-head{align-items:center;margin-bottom:10px}.quick-log-title{gap:8px}.quick-log-head h2{font-size:1rem;line-height:1.1}.quick-log-kicker{font-size:.68rem;letter-spacing:.07em}.quick-log-icon-btn{width:34px;height:34px}.quick-log-error{margin-bottom:10px;padding:8px 10px}.quick-log-amount{gap:5px;margin-bottom:10px}.quick-log-amount input{min-height:58px;padding:9px 54px 9px 14px;font-size:1.65rem}.quick-log-calculator-btn{right:11px;width:34px;height:34px}.quick-log-calculator{gap:8px;margin-top:7px;padding:9px}.quick-log-section{gap:7px;margin-bottom:10px}.quick-log-section-title{min-height:32px;gap:10px}.quick-log-jar-search{flex-basis:340px}.quick-log-jar-section .quick-log-jars{grid-template-columns:repeat(3,minmax(0,1fr));max-height:206px;overflow-y:auto;align-content:start;padding-right:4px;scrollbar-width:thin}.quick-log-jar-section .quick-log-jars::-webkit-scrollbar{width:8px}.quick-log-jar-section .quick-log-jars::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--line) 78%,var(--muted))}.quick-log-jar-pill{min-height:72px;border-radius:8px;padding:9px 10px;gap:3px}.quick-log-jar-name{font-size:.9rem;line-height:1.14}.quick-log-jar-fill,.quick-log-jar-left,.quick-log-jar-match{font-size:.74rem;line-height:1.25}.quick-log-chip-row{gap:7px;margin-bottom:10px}.quick-log-chip{min-height:34px;padding:6px 10px;font-size:.8rem}.quick-log-description{margin-bottom:8px}.quick-log-more{min-height:36px;margin-bottom:12px;border-radius:8px}.quick-log-more-grid{gap:8px;margin:0 0 10px}.quick-log-submit{min-height:44px;border-radius:8px}}@media (max-width:768px){.quick-log-fab{display:none!important}.quick-log-layer{background:rgba(0,0,0,.42);display:flex;align-items:flex-end}.quick-log-panel{position:relative;right:auto;bottom:auto;width:100%;max-height:min(82vh,760px);border-radius:18px 18px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));animation:quick-log-sheet .22s cubic-bezier(.16,1,.3,1)}.quick-log-section-title{align-items:flex-start;gap:10px}.quick-log-jar-search{flex-basis:190px}.quick-log-grip{display:block;width:44px;height:5px;border-radius:999px;background:var(--line);margin:0 auto 10px}.quick-log-jars{display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}.quick-log-jar-pill{min-width:168px;scroll-snap-align:start}.quick-log-more-grid{grid-template-columns:1fr}}@keyframes quick-log-sheet{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.pf-household-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.pf-stat-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:14px;display:grid;grid-gap:4px;gap:4px;min-width:0}.pf-stat-card .label{color:var(--muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pf-stat-card .value{font-size:1.1rem;font-weight:700;color:var(--text)}.pf-stat-card .meta{color:var(--muted);font-size:.82rem}.pf-member-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:16px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,2fr);grid-gap:16px;gap:16px;margin-bottom:14px}.pf-member-profile-col{display:grid;align-content:start;grid-gap:10px;gap:10px;min-width:0}.pf-member-avatar{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line);font-weight:700}.pf-member-name{font-weight:700;font-size:1rem}.pf-financial-count,.pf-financial-coverage-badge,.pf-financial-source-badge,.pf-financial-timeline-badge,.pf-member-role-badge{width:-moz-fit-content;width:fit-content;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:600}.pf-member-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.pf-meta-badge{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:8px;min-width:0}.pf-meta-badge-empty{cursor:pointer;opacity:.75}.pf-meta-badge .lbl,.pf-meta-badge .val{display:flex;align-items:center;gap:4px;min-width:0}.pf-meta-badge .lbl{color:var(--muted);font-size:.72rem;font-weight:600}.pf-meta-badge .val{color:var(--text);font-size:.84rem;font-weight:650;margin-top:2px}.pf-member-actions,.pf-member-actions-row{display:grid;grid-gap:8px;gap:8px}.pf-member-actions-row{grid-template-columns:1fr 1fr auto}.pf-completeness-badge{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.78rem;font-weight:600}.pf-member-financials-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;min-width:0}.pf-financial-card{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:12px;min-width:0}.pf-financial-header,.pf-financial-info-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.pf-financial-title{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.88rem}.pf-financial-list{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-gap:8px;gap:8px}.pf-financial-item{justify-content:space-between}.pf-financial-item,.pf-financial-item-details{display:flex;align-items:center;gap:8px;min-width:0}.pf-financial-icon-wrap{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--surface);border:1px solid var(--line);flex:0 0 auto}.pf-financial-info{min-width:0}.pf-financial-info strong{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-financial-empty,.pf-financial-muted{color:var(--muted);font-size:.8rem}.pf-btn-remove{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:6px;width:26px;height:26px;display:grid;place-items:center;cursor:pointer}.pf-household-section{display:block}.pf-form-section-title{color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding-top:6px}.pf-replace-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.pf-replace-preview>div{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:12px;display:grid;grid-gap:4px;gap:4px}.pf-replace-preview span{color:var(--muted);font-size:.86rem}@media (max-width:980px){.pf-member-card,.pf-member-financials-col{grid-template-columns:1fr}}@media (max-width:640px){.pf-member-card{padding:12px}.pf-member-actions-row,.pf-member-meta-grid,.pf-replace-preview{grid-template-columns:1fr}.pf-financial-info strong{max-width:220px}}.notif-overlay{position:fixed;inset:0;z-index:500;display:flex;align-items:flex-start;justify-content:flex-end;padding:56px 16px 24px;background:rgba(8,7,6,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:bm-overlay-in .18s ease both}.notif-panel{width:100%;max-width:400px;max-height:calc(100vh - 80px);display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.22);overflow:hidden;animation:bm-modal-in .25s cubic-bezier(.34,1.4,.64,1) both}.notif-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 22px 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--accent-subtle) 0,transparent 100%)}.notif-eyebrow{display:block;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:2px}.notif-title{margin:0;font-family:var(--font-display,"Outfit"),sans-serif;font-size:1.15rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.2}.notif-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1.5px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;transition:background .15s,color .15s;margin-top:1px}.notif-close:hover{background:var(--bg-strong);color:var(--ink)}.notif-body{flex:1 1;overflow-y:auto;padding:14px 16px;scrollbar-width:thin}.notif-empty{align-items:center;gap:10px;padding:36px 16px;text-align:center}.notif-empty,.notif-list{display:flex;flex-direction:column}.notif-list{list-style:none;margin:0;padding:0;gap:8px}.notif-item{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);transition:box-shadow .18s}.notif-item--unread{border-left:3px solid var(--accent);background:var(--accent-subtle)}.notif-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.07)}.notif-item-icon{flex-shrink:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--accent-subtle);color:var(--accent)}.notif-item-body{flex:1 1;min-width:0}.notif-item-title{margin:0 0 3px;font-size:.85rem;font-weight:700;color:var(--ink);line-height:1.3}.notif-item-detail{margin:0 0 5px;font-size:.78rem;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-item-time{font-size:.72rem;color:var(--muted);opacity:.7}.notif-item-cta{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1.5px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s;margin-top:2px}.notif-item-cta:hover{background:var(--accent-subtle);border-color:var(--accent-soft);color:var(--accent)}@media (max-width:480px){.notif-overlay{padding:56px 8px 16px}.notif-panel{max-width:100%;border-radius:16px}}.dev-login-divider{display:flex;align-items:center;text-align:center;margin:24px 0;color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.1em}.dev-login-divider:after,.dev-login-divider:before{content:"";flex:1 1;border-bottom:1px solid rgba(255,255,255,.08)}.dev-login-divider:not(:empty):before{margin-right:1.5em}.dev-login-divider:not(:empty):after{margin-left:1.5em}.dev-login-title{text-align:center;margin-bottom:20px}.dev-login-title h3{font-size:1.1rem;font-weight:600;margin:0 0 4px;color:var(--ink)}.dev-login-title p{font-size:.8rem;margin:0}.dev-login-form{gap:16px;width:100%}.dev-login-field,.dev-login-form{display:flex;flex-direction:column}.dev-login-field{gap:6px;align-items:flex-start}.dev-login-field label{font-size:.8rem;font-weight:500;color:var(--muted)}.dev-login-input,.dev-login-select{width:100%;padding:10px 14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--ink);font-size:.9rem;transition:border-color .2s,box-shadow .2s}.dev-login-input:focus,.dev-login-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(224,133,103,.2)}.dev-login-select option{background-color:#1a1715;color:var(--ink)}.dev-login-btn{margin-top:8px;background:linear-gradient(135deg,var(--accent) 0,#ca7458 100%);color:#050505;font-weight:600;border:none;border-radius:8px;padding:12px;font-size:.95rem;cursor:pointer;transition:transform .1s,opacity .2s}.dev-login-btn:hover{opacity:.9;transform:translateY(-1px)}.dev-login-btn:active{transform:translateY(0)}.dev-login-btn:disabled{opacity:.5;pointer-events:none}.verdict-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-weight:600;font-size:var(--type-xs);line-height:1.2;border:1px solid transparent;background:var(--neutral-subtle);color:var(--ink)}.verdict-pill[data-size=md]{font-size:var(--type-md);padding:10px 18px}.verdict-pill__icon{display:inline-flex;flex-shrink:0}.verdict-pill[data-tone=success]{background:var(--success-subtle);color:var(--success);border-color:var(--success-subtle)}.verdict-pill[data-tone=warning]{background:var(--warning-subtle);color:var(--warning);border-color:var(--warning-subtle)}.verdict-pill[data-tone=danger]{background:var(--danger-subtle);color:var(--danger);border-color:var(--danger-subtle)}.verdict-pill[data-tone=neutral]{background:var(--neutral-subtle);color:var(--muted)}.hero-metric{display:flex;flex-direction:column;gap:6px}.hero-metric__label{font-size:var(--type-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.hero-metric__figure{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-weight:700;line-height:1.05;color:var(--ink)}.hero-metric__foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero-metric__caption{font-size:var(--type-xs);color:var(--muted)}.hero-metric__delta{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:var(--type-2xs);font-weight:600;background:var(--neutral-subtle);color:var(--muted)}.hero-metric__delta[data-tone=success]{background:var(--success-subtle);color:var(--success)}.hero-metric__delta[data-tone=warning]{background:var(--warning-subtle);color:var(--warning)}.hero-metric__delta[data-tone=danger]{background:var(--danger-subtle);color:var(--danger)}.hero-metric__spark{color:var(--accent);margin-top:4px}.answer-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.answer-card__headline{margin:0;font-size:var(--type-lg)}.answer-card__subhead{margin:4px 0 0;font-size:var(--type-xs)}.answer-card__figure{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:var(--type-2xl);font-weight:700;color:var(--ink);line-height:1.1}.answer-card__body{margin-top:16px}.answer-card__details{margin-top:12px}.answer-card__details-body,.answer-card__details-toggle{width:100%}.answer-card__details-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--accent);font-weight:600;font-size:var(--type-xs);cursor:pointer;padding:8px 0;min-height:44px}.answer-card__details-body{margin-top:8px}.insight-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.insight-row+.insight-row{margin-top:10px}.insight-row__bar{flex-shrink:0;width:4px;align-self:stretch;border-radius:4px;background:var(--muted)}.insight-row[data-tone=success] .insight-row__bar{background:var(--success)}.insight-row[data-tone=warning] .insight-row__bar{background:var(--warning)}.insight-row[data-tone=danger] .insight-row__bar{background:var(--danger)}.insight-row[data-tone=accent] .insight-row__bar{background:var(--accent)}.insight-row__icon{display:inline-flex;flex-shrink:0;color:var(--muted)}.insight-row__text{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.insight-row__finding{font-size:var(--type-sm);color:var(--ink)}.insight-row__detail{font-size:var(--type-xs)}.insight-row__action{flex-shrink:0;min-height:44px}.segmented-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.segmented-tabs::-webkit-scrollbar{display:none}.segmented-tabs__tab{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;min-height:44px;scroll-snap-align:start}.segmented-tabs__icon{display:inline-flex}.segmented-tabs__short{display:none}@media (max-width:520px){.workspace-tabs .segmented-tabs__label{display:none}.workspace-tabs .segmented-tabs__short{display:inline}}.bottom-sheet-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.4);display:flex;align-items:flex-end;justify-content:center;animation:modal-backdrop-fade var(--motion-normal) var(--ease-out)}.bottom-sheet{width:100%;max-height:90vh;background:var(--card);border-top-left-radius:22px;border-top-right-radius:22px;border:1px solid var(--line);border-bottom:none;box-shadow:var(--shadow);display:flex;flex-direction:column;padding:8px 20px max(20px,env(safe-area-inset-bottom));animation:bottom-sheet-up var(--motion-slow) var(--ease-out)}@keyframes bottom-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bottom-sheet__handle{width:40px;height:4px;border-radius:4px;background:var(--line);margin:8px auto 12px;flex-shrink:0}.bottom-sheet__title{margin:0 0 12px;font-size:var(--type-lg)}.bottom-sheet__body{overflow-y:auto;flex:1 1}.bottom-sheet__footer{position:-webkit-sticky;position:sticky;bottom:0;padding-top:12px;margin-top:12px;border-top:1px solid var(--line);background:var(--card)}.data-table__bulkbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:12px;border-radius:12px;background:var(--accent-subtle);border:1px solid var(--accent-subtle)}.data-table__bulkcount{font-weight:600;font-size:var(--type-xs);color:var(--accent)}.data-table__bulkactions{display:flex;gap:8px}.data-table__cards{display:flex;flex-direction:column;gap:12px}.data-table__card{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:14px 16px;display:flex;flex-direction:column;gap:8px}.data-table__card[data-selected=true]{border-color:var(--accent);background:var(--accent-subtle)}.data-table__card-select{display:inline-flex;align-items:center;gap:8px}.data-table__kv{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.data-table__k{font-size:var(--type-2xs)}.data-table__v{font-size:var(--type-sm);text-align:right}tr[data-selected=true]{background:var(--accent-subtle)}.creation-grid--lean{grid-template-columns:1.4fr 1fr;align-items:stretch}@media (max-width:768px){.creation-grid--lean{grid-template-columns:1fr}}.creation-card--primary{background:var(--card-accent-bg);border-color:var(--accent-subtle);gap:12px}.creation-card--primary .creation-card__title{font-size:var(--type-xl)}.creation-card--primary .creation-card__lede{color:var(--muted);font-size:var(--type-sm)}.creation-card__cta{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-weight:600;color:var(--accent)}.creation-grid__secondary{display:flex;flex-direction:column;gap:14px}.creation-grid__secondary .creation-card{min-height:0;flex:1 1}.onboarding{max-width:680px;margin:0 auto;padding-bottom:96px}.onboarding__progress{display:flex;gap:6px;margin-bottom:10px}.onboarding__progress-seg{flex:1 1;height:4px;border-radius:4px;background:var(--line);transition:background var(--motion-normal) var(--ease-out)}.onboarding__progress-seg[data-state=active]{background:var(--accent)}.onboarding__progress-seg[data-state=done]{background:var(--success)}.onboarding__step-count{font-size:var(--type-xs);margin:0 0 16px}.onboarding__panel{min-height:280px}.onboarding__title{margin:0 0 20px;font-size:var(--type-xl)}.onboarding__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.onboarding__grid--narrow{grid-template-columns:1fr;max-width:360px}@media (max-width:560px){.onboarding__grid{grid-template-columns:1fr}}.onboarding__summary{display:flex;flex-direction:column;gap:10px;margin:16px 0 0}.onboarding__summary>div{display:flex;justify-content:space-between;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}.onboarding__summary dt{color:var(--muted);margin:0;font-size:var(--type-xs)}.onboarding__summary dd{margin:0;font-weight:600}.onboarding__footer{position:-webkit-sticky;position:sticky;bottom:0;display:flex;justify-content:space-between;gap:12px;padding:16px 0 max(16px,env(safe-area-inset-bottom));margin-top:20px;background:linear-gradient(180deg,transparent,var(--bg) 40%)}.onboarding__footer .action-button,.onboarding__footer .secondary-button{min-height:48px;min-width:120px}.overview-verdict{display:flex;justify-content:center;margin:4px 0}.edit-mode-bar{display:flex;align-items:center;gap:16px;margin-bottom:4px}.edit-mode-bar__title{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:var(--type-lg);font-weight:700;color:var(--ink)}.plan-provenance{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:var(--type-xs);margin:-4px 0 12px}.plan-provenance__refresh{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.plan-provenance__refresh:hover{text-decoration:underline}.dev-components{padding:24px;display:flex;flex-direction:column;gap:32px;max-width:900px;margin:0 auto}.dev-components__section{display:flex;flex-direction:column;gap:12px}.dev-components__section>h2{margin:0;font-size:var(--type-md);border-bottom:1px solid var(--line);padding-bottom:6px}.dev-components__row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.quick-estimate-banner{transition:transform var(--motion-normal) var(--ease-out),border-color var(--motion-normal) var(--ease-out);color:var(--ink)}.quick-estimate-banner:hover{transform:translateY(-2px);border-color:var(--accent-soft)}.quick-estimate-banner strong{font-size:var(--type-sm)}.quick-estimate-assumptions>summary{list-style:revert}.quick-estimate-advanced-summary{display:inline-block;width:-moz-fit-content;width:fit-content;cursor:pointer;color:var(--accent);font-size:var(--type-xs);font-weight:600;text-decoration:underline;text-underline-offset:3px}.quick-estimate-advanced-summary:hover{opacity:.85}.quick-estimate-assumptions[open]>.quick-estimate-advanced-summary{margin-bottom:4px}.quick-estimate-cta{justify-content:flex-end}.quick-estimate-cta .action-button{display:inline-flex;align-items:center;gap:8px}@media (max-width:600px){.quick-estimate-cta{position:-webkit-sticky;position:sticky;bottom:12px;z-index:20;justify-content:stretch}.quick-estimate-cta .action-button{width:100%;justify-content:center}}.quick-estimate-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:40px 24px}.qe-hero__eyebrow{font-size:var(--type-2xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--muted)}.qe-hero__figure{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:var(--data-hero);font-weight:700;line-height:1.02;color:var(--ink)}.qe-hero__verdict{display:flex;flex-direction:column;gap:4px;font-weight:700;line-height:1.25}.qe-hero__badge{font-size:var(--type-md)}.qe-hero__verdict-text{font-size:var(--type-sm);font-weight:500;opacity:.85}.qe-hero__verdict[data-tone=success]{color:var(--success)}.qe-hero__verdict[data-tone=warning]{color:var(--warning,#d97706)}.qe-hero__verdict[data-tone=danger]{color:var(--danger)}.qe-hero__caption{font-size:var(--type-sm)}.qe-footnote,.qe-hero__caption{color:var(--muted);line-height:1.5}.qe-footnote{margin:0;font-size:var(--type-2xs)}.quick-estimate-metrics{margin:0}.lever-card{display:flex;flex-direction:column;gap:12px;padding:22px 20px;border:2px solid var(--line);transition:transform var(--motion-normal) var(--ease-out),box-shadow var(--motion-normal) var(--ease-out)}.lever-card:hover{transform:translateY(-3px)}.lever-card__label{font-size:var(--type-xs);font-weight:600;color:var(--muted);line-height:1.4}.lever-card__value{font-family:var(--font-display,"Outfit"),system-ui,sans-serif;font-size:var(--type-xl);font-weight:700;line-height:1.1;color:var(--ink)}.lever-card__note{font-size:var(--type-xs);line-height:1.5}.lever-card__cta{gap:8px;margin-top:auto}.lever-card__cta,.lever-tip{display:inline-flex;align-items:center;justify-content:center}.lever-tip{position:relative;flex-shrink:0;width:22px;height:22px;border-radius:50%;color:var(--muted);cursor:help;transition:color var(--motion-fast,.15s) ease}.lever-tip:hover{color:var(--accent)}.lever-tip__content{pointer-events:none;visibility:hidden;opacity:0;position:absolute;bottom:calc(100% + 10px);right:0;width:220px;background:var(--ink);color:var(--surface,#fff);font-size:var(--type-2xs);font-weight:400;line-height:1.55;padding:10px 12px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.18);transition:opacity var(--motion-fast,.15s) ease,visibility var(--motion-fast,.15s) ease;z-index:200}.lever-tip__content:after{content:"";position:absolute;top:100%;right:6px;border:6px solid transparent;border-top:6px solid var(--ink)}.lever-tip:hover .lever-tip__content{visibility:visible;opacity:1}.glass-panel{background:rgba(255,252,247,.45);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,252,247,.4);box-shadow:0 8px 32px 0 rgba(31,38,135,.04);border-radius:20px}@media (prefers-color-scheme:dark){:root:not(.light) .glass-panel{background:rgba(22,20,18,.45);border:1px solid rgba(232,230,225,.1);box-shadow:0 8px 32px 0 rgba(0,0,0,.3)}}html.dark .glass-panel{background:rgba(22,20,18,.45);border:1px solid rgba(232,230,225,.1);box-shadow:0 8px 32px 0 rgba(0,0,0,.3)}.qe-sandbox-layout{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:32px;gap:32px;align-items:start}@media (max-width:1024px){.qe-sandbox-layout{grid-template-columns:1fr}}.slider-field{display:flex;flex-direction:column;gap:8px;padding:16px;background:rgba(255,255,255,.3);border-radius:12px;border:1px solid rgba(255,255,255,.2)}@media (prefers-color-scheme:dark){:root:not(.light) .slider-field{background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.05)}}html.dark .slider-field{background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.05)}.slider-field__header{display:flex;justify-content:space-between;align-items:center}.slider-field__value{font-family:var(--font-display,"Outfit"),sans-serif;font-weight:700;color:var(--accent);font-size:var(--type-sm)}.slider-field__value-box{display:flex;align-items:center;gap:2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:3px 10px;transition:border-color .15s ease,background .15s ease;min-width:130px}.slider-field__value-box:focus-within{border-color:var(--accent);background:rgba(255,255,255,.1);box-shadow:0 0 0 2px rgba(var(--accent-rgb,232,121,53),.2)}.slider-field__input-prefix,.slider-field__input-suffix{-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.slider-field__input-prefix,.slider-field__input-suffix,.slider-field__text-input{font-family:var(--font-display,"Outfit"),sans-serif;font-weight:700;font-size:var(--type-sm);color:var(--accent)}.slider-field__text-input{width:100px;background:transparent;border:none;outline:none;text-align:right;padding:0;min-width:0}.slider-field__text-input::-webkit-inner-spin-button,.slider-field__text-input::-webkit-outer-spin-button{-webkit-appearance:none}.slider-field__range{width:100%;accent-color:var(--accent);cursor:pointer;height:6px;border-radius:3px;outline:none;background:var(--bg-strong)}.slider-field__markers{display:flex;justify-content:space-between;font-size:var(--type-2xs);color:var(--muted)}.multiplier-bar-container{width:100%;height:14px;border-radius:7px;background:var(--bg-strong);overflow:hidden;display:flex;margin:12px 0}.multiplier-bar__contrib{height:100%;background:var(--accent-soft);transition:width .3s ease}.multiplier-bar__growth{height:100%;background:var(--success);transition:width .3s ease}.multiplier-legend{display:flex;justify-content:space-between;font-size:var(--type-2xs);color:var(--muted)}.multiplier-legend__item{display:flex;align-items:center;gap:6px}.multiplier-legend__dot{width:10px;height:10px;border-radius:50%}.multiplier-legend__dot.contrib{background:var(--accent-soft)}.multiplier-legend__dot.growth{background:var(--success)}.qe-story-card{display:flex;gap:16px;padding:20px;border-radius:16px;background:rgba(255,255,255,.4);border:1px solid rgba(255,255,255,.2)}@media (prefers-color-scheme:dark){:root:not(.light) .qe-story-card{background:rgba(22,20,18,.4);border:1px solid rgba(255,255,255,.05)}}html.dark .qe-story-card{background:rgba(22,20,18,.4);border:1px solid rgba(255,255,255,.05)}.qe-story-card__icon{flex-shrink:0;width:44px;height:44px;border-radius:12px;background:var(--accent-subtle);color:var(--accent);display:flex;align-items:center;justify-content:center}.qe-story-card__content{display:flex;flex-direction:column;gap:4px}.qe-story-card__title{font-weight:600;font-size:var(--type-xs);color:var(--ink)}.qe-story-card__text{font-size:var(--type-xs);color:var(--muted);line-height:1.4}.marketing-shell{min-height:100vh;display:flex;flex-direction:column}.marketing-nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,4vw,40px);background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.marketing-brand{font-family:var(--font-display),sans-serif;font-weight:700;font-size:var(--type-md);color:var(--ink);text-decoration:none;letter-spacing:-.01em}.marketing-nav-links{display:flex;align-items:center;gap:10px}.marketing-main{flex:1 1;width:100%;max-width:1120px;margin:0 auto;padding:clamp(24px,5vw,56px) clamp(16px,4vw,40px) 64px}.marketing-hero{display:grid;grid-template-columns:1fr;grid-gap:clamp(24px,4vw,48px);gap:clamp(24px,4vw,48px);align-items:center;margin-bottom:clamp(40px,7vw,80px)}@media (min-width:901px){.marketing-hero{grid-template-columns:1.05fr .95fr}}.marketing-hero-copy h1{font-family:var(--font-display),sans-serif;font-size:clamp(2.1rem,6vw,3.6rem);line-height:1.05;letter-spacing:-.02em;margin:10px 0 14px}.marketing-hero-copy p{color:var(--muted);font-size:var(--type-md);line-height:1.6;max-width:56ch}.marketing-hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 10px}.marketing-hero-cta .action-button,.marketing-hero-cta .secondary-button{min-height:48px;padding-inline:22px;font-size:var(--type-sm)}.marketing-section{margin-bottom:clamp(40px,7vw,72px)}.marketing-section-title{font-family:var(--font-display),sans-serif;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.01em;text-align:center;margin:0 0 24px}.feature-grid,.pricing-grid,.pricing-teaser,.step-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:1fr;list-style:none;margin:0;padding:0}@media (min-width:560px){.feature-grid,.pricing-teaser{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (min-width:768px){.step-grid{grid-template-columns:repeat(3,1fr)}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}.feature-grid h3,.step-card h3{font-size:var(--type-md);margin:10px 0 6px}.step-num{align-items:center;width:34px;height:34px;border-radius:999px;background:var(--accent-subtle);color:var(--accent);font-weight:700;font-family:var(--font-display),sans-serif}.pricing-toggle,.step-num{display:inline-flex;justify-content:center}.pricing-toggle{gap:6px;margin:0 auto 28px;width:100%}.price-card{display:flex;flex-direction:column;gap:10px;position:relative}.price-card-featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow)}.price-badge{position:absolute;top:-12px;right:16px}.price-amount{font-family:var(--font-display),sans-serif;font-size:var(--type-2xl);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:2px 0 6px}.price-features{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:8px;gap:8px}.price-features li{position:relative;padding-left:22px;color:var(--muted);font-size:var(--type-xs);line-height:1.4}.price-features li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.marketing-cta{text-align:center;display:grid;grid-gap:10px;gap:10px;justify-items:center;padding:clamp(28px,5vw,48px)!important}.marketing-cta .action-button{min-height:48px;padding-inline:24px}.legal-doc{max-width:760px;margin:0 auto;line-height:1.7}.legal-doc h1{font-family:var(--font-display),sans-serif;margin-top:0}.legal-doc h2{font-size:var(--type-md);margin:28px 0 8px}.legal-doc ul{padding-left:20px;color:var(--muted)}.marketing-footer{border-top:1px solid var(--line);padding:28px clamp(16px,4vw,40px)}.marketing-footer-inner{max-width:1120px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.marketing-footer-links{display:flex;flex-wrap:wrap;gap:16px}.marketing-footer-links a{color:var(--muted);text-decoration:none;font-size:var(--type-xs)}.marketing-footer-links a:hover{color:var(--ink)}.marketing-disclaimer{max-width:1120px;margin:16px auto 0;font-size:var(--type-2xs);line-height:1.5}.qe-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:16px}.qe-actions{grid-column:1/-1}.qe-result{margin-top:18px;display:grid;grid-gap:14px;gap:14px}.qe-metrics{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}@media (min-width:480px){.qe-metrics{grid-template-columns:1fr 1fr}}.qe-metrics .metric-card{display:grid;grid-gap:4px;gap:4px}.onboarding-checklist{display:grid;grid-gap:14px;gap:14px}.onboarding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.onboarding-progress{height:8px;border-radius:999px;background:var(--bg-strong);overflow:hidden}.onboarding-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--success));transition:width var(--motion-slow,.25s) var(--ease-out,ease-out)}.onboarding-steps{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.onboarding-step{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:14px;background:var(--field-bg)}.onboarding-step[data-done=true]{opacity:.7}.onboarding-step[data-done=true] .onboarding-step-label{text-decoration:line-through;color:var(--muted)}.onboarding-check{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;border-radius:999px;font-weight:700}.onboarding-step[data-done=true] .onboarding-check{background:var(--success-subtle);color:var(--success)}.onboarding-step[data-done=false] .onboarding-check{background:var(--neutral-subtle);color:var(--muted)}.onboarding-step-label{flex:1 1;font-weight:500}.onboarding-step-cta{flex:0 0 auto}@media (max-width:480px){.onboarding-step{flex-wrap:wrap}.onboarding-step-cta{width:100%;justify-content:center;margin-top:6px}}.glossary-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr}@media (min-width:640px){.glossary-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}.glossary-item h3{font-size:var(--type-md)}.advanced-gate{display:grid;grid-gap:4px;gap:4px;border-style:dashed}@media (max-width:480px){.marketing-nav-advisors{display:none}}.testimonial blockquote{font-size:var(--type-md);line-height:1.5;color:var(--ink)}