:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#fafbfc;--surface-hover:#f2f4f7;--border:#e3e6ea;--border-strong:#cfd4da;--text:#14181f;--text-muted:#6b7280;--text-faint:#99a1ad;--accent:#3b5bdb;--accent-soft:#e8ecfd;--accent-text:#2f49b0;--pos:#10806a;--pos-soft:#e0f4ef;--neg:#c2413b;--neg-soft:#fceceb;--warn:#a86a12;--warn-soft:#fdf3e2;--shadow-sm:0 1px 2px #1018280d;--shadow-md:0 4px 14px #10182812;--shadow-lg:0 18px 48px #1018282e;--radius:12px;--radius-sm:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0e1117;--surface:#171b23;--surface-2:#1c212b;--surface-hover:#222834;--border:#272d38;--border-strong:#39414f;--text:#e8ebf0;--text-muted:#9aa3b1;--text-faint:#6d7686;--accent:#7d95ff;--accent-soft:#212a4d;--accent-text:#a8b8ff;--pos:#4bc79f;--pos-soft:#17362f;--neg:#f2857f;--neg-soft:#3a2220;--warn:#e0aa5c;--warn-soft:#362a17;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000059;--shadow-lg:0 18px 48px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;font-size:14px;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:600}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.tabular{font-variant-numeric:tabular-nums}.app{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:26px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 8px;display:flex}.brand-mark{background:linear-gradient(140deg, var(--accent), #8b5cf6);color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:15px;font-weight:700;display:grid}.brand-text strong{font-size:14px;line-height:1.25;display:block}.brand-text span{color:var(--text-muted);font-size:12px}.nav,.nav-group{flex-direction:column;gap:3px;display:flex}.nav-group+.nav-group{margin-top:15px}.nav-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);padding:0 11px 3px;font-size:10.5px;font-weight:700}.nav-item{border-radius:var(--radius-sm);color:var(--text-muted);text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:9px 11px;font-weight:500;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.nav-item .badge{margin-left:auto}.sidebar-footer{flex-direction:column;gap:8px;margin-top:auto;display:flex}.sidebar-note{color:var(--text-faint);padding:0 8px;font-size:11.5px;line-height:1.45}.main{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:20;align-items:center;gap:14px;padding:20px 28px;display:flex;position:sticky;top:0}.topbar h1{font-size:19px}.topbar p{color:var(--text-muted);margin:2px 0 0;font-size:13px}.topbar-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.content{flex-direction:column;gap:18px;padding:24px 28px 56px;display:flex}.topbar-back{flex-shrink:0}.section-head{align-items:flex-end;gap:14px;padding-top:8px;display:flex}.section-head:first-child{padding-top:0}.section-head .spacer{flex:1}.section-head-text{min-width:0}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:12.5px;font-weight:700}.section-hint{color:var(--text-faint);max-width:82ch;margin:3px 0 0;font-size:12.5px;line-height:1.5}.page-summary{flex-direction:column;gap:14px;display:flex}.mini-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.mini-list button{border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.mini-list button:hover{background:var(--surface-hover)}.mini-list-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-list .tabular{font-weight:600}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);white-space:nowrap;align-items:center;gap:7px;padding:8px 13px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,transform 60ms;display:inline-flex}.btn:hover{background:var(--surface-hover)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent);filter:brightness(1.08)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-small{gap:5px;padding:4px 9px;font-size:12.5px}.btn-ghost:hover{background:var(--surface-hover);color:var(--text)}.btn-danger{color:var(--neg);border-color:var(--border-strong)}.btn-danger:hover{background:var(--neg-soft)}.btn-icon{padding:7px 9px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:16px 18px;display:flex}.card-head h2{font-size:14.5px}.card-head p{color:var(--text-muted);margin:2px 0 0;font-size:12.5px}.card-head .spacer{margin-left:auto}.card-body{padding:18px}.badge{background:var(--surface-hover);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-pos{background:var(--pos-soft);color:var(--pos)}.badge-neg{background:var(--neg-soft);color:var(--neg)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--text-muted)}.field{flex-direction:column;gap:5px;display:flex}.field>label{color:var(--text-muted);font-size:12px;font-weight:600}.field .hint{color:var(--text-faint);font-size:11.5px}.input,.select,.textarea{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:100%;padding:8px 10px;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.textarea{resize:vertical;min-height:62px}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 15px) 52%,calc(100% - 10px) 52%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:28px}.search{flex:1;min-width:180px;position:relative}.search .input{padding-left:32px}.search svg{color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:6px;padding:16px 18px;display:flex}.kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.kpi-value{letter-spacing:-.02em;font-size:25px;font-weight:650}.kpi-sub{color:var(--text-muted);font-size:12.5px}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;padding:10px 14px;font-size:11.5px;font-weight:600;position:sticky;top:0}table.data th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.data th.sortable:hover{color:var(--text)}table.data td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 14px}table.data tbody tr:hover{background:var(--surface-2)}table.data tbody tr.is-skipped td{opacity:.5}table.data tbody tr.is-current,table.data tbody tr.is-current:hover{background:var(--accent-soft)}table.data tfoot td{border-top:1px solid var(--border-strong);background:var(--surface-2);padding:11px 14px;font-weight:650}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.task-title{font-weight:500}.task-notes{color:var(--text-muted);max-width:46ch;margin-top:2px;font-size:12px;display:block}.row-actions{opacity:0;justify-content:flex-end;gap:2px;transition:opacity .12s;display:flex}tr:hover .row-actions,.row-actions:focus-within{opacity:1}.icon-btn{color:var(--text-muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:5px;display:grid}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn.danger:hover{color:var(--neg);background:var(--neg-soft)}.status-pill{background:var(--surface-hover);color:var(--text-muted);border:1px solid #0000;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.status-pill.Planned{background:var(--accent-soft);color:var(--accent-text)}.status-pill.Done{background:var(--pos-soft);color:var(--pos)}.status-pill.Skipped{background:var(--surface-hover);color:var(--text-faint)}.type-tag{white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.chart-grid{grid-template-columns:1.65fr 1fr;gap:18px;display:grid}.chart-grid>:only-child{grid-column:1/-1}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.chart-gridline{stroke:var(--border);stroke-width:1px}.chart-axis-label{fill:var(--text-faint);font-size:10.5px}.chart-legend{color:var(--text-muted);flex-wrap:wrap;gap:16px;font-size:12.5px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.cat-list{flex-direction:column;gap:11px;display:flex}.cat-row{grid-template-columns:1fr auto;gap:4px 10px;font-size:13px;display:grid}.cat-bar{background:var(--surface-hover);border-radius:999px;grid-column:1/-1;height:7px;overflow:hidden}.cat-bar>i{border-radius:999px;height:100%;display:block}.card-headline{white-space:nowrap;flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.card-headline span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.card-headline strong{font-variant-numeric:tabular-nums;font-size:18px}.savings-body{flex-direction:column;gap:20px;display:flex}.flow-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.flow-step{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:3px;min-width:0;padding:11px 14px;display:flex}.flow-step.is-total{background:var(--accent-soft);border-color:#0000}.flow-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:11px;font-weight:600}.flow-value{font-size:17px;font-weight:650;line-height:1.2}.flow-note{color:var(--text-faint);font-size:11.5px}.flow-op{color:var(--text-faint);margin-right:4px;font-size:12.5px}.savings-foot{border-top:1px solid var(--border);color:var(--text-muted);margin:0;padding:12px 18px;font-size:12px;line-height:1.5}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.overview-card{flex-direction:column;display:flex;overflow:hidden}.overview-head{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;grid-template-areas:"icon title value""icon caption caption";align-items:center;column-gap:10px;width:100%;padding:14px 16px;display:grid}.overview-icon{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-text);border-radius:9px;grid-area:icon;justify-content:center;align-items:center;display:inline-flex}.overview-title{grid-area:title;font-size:13.5px}.overview-caption{color:var(--text-muted);grid-area:caption;font-size:11.5px}.overview-value{letter-spacing:-.01em;white-space:nowrap;grid-area:value;font-size:16px;font-weight:650}.overview-body{flex-direction:column;flex:1;padding:14px 16px;display:flex}.overview-body .cat-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-empty,.overview-foot{color:var(--text-muted);margin:0;font-size:12px}.overview-foot{border-top:1px dashed var(--border);margin-top:auto;padding-top:10px}.overview-body .cat-list{margin-bottom:12px}.filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:14px 18px;display:flex}.filters .select{width:auto;min-width:120px}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:500}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.chip:hover:not(.active){border-color:var(--text-faint);color:var(--text)}.chip.is-now:not(.active){border-color:var(--accent);color:var(--accent-text);font-weight:700}.month-filter{padding:14px 18px}.month-filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.month-filter-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:12px;font-weight:600}.month-filter-row .chip-row .chip{text-align:center;min-width:34px}.month-filter-preset{width:auto;min-width:150px}.month-filter-summary{color:var(--text-muted);align-items:center;gap:10px;margin:10px 0 0;font-size:12.5px;display:flex}.month-filter-summary strong{color:var(--text)}.btn-sm{padding:3px 10px;font-size:11.5px}.tabs{background:var(--surface-hover);border-radius:999px;gap:3px;width:fit-content;padding:4px;display:inline-flex}.tab{color:var(--text-muted);background:0 0;border:0;border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600;transition:background .12s,color .12s}.tab:hover{color:var(--text)}.tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.month-group-head{background:var(--surface-2);font-size:12.5px;font-weight:650}.month-group-head td{border-bottom:1px solid var(--border);padding:8px 14px}.baseline-grid{overflow-x:auto}.baseline-grid table{border-collapse:collapse;width:100%;min-width:860px}.baseline-grid th,.baseline-grid td{border-bottom:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums;padding:6px 8px;font-size:13px}.baseline-grid th:first-child,.baseline-grid td:first-child{text-align:left;background:var(--surface);white-space:nowrap;font-weight:600;position:sticky;left:0}.baseline-grid thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--surface-2);font-size:11.5px}.cell-input{text-align:right;font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;border-radius:6px;width:100%;min-width:78px;padding:6px 7px}.cell-input:hover{border-color:var(--border-strong)}.cell-input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.settings-actions{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.settings-actions .field>.hint{margin:0 0 4px}.settings-actions .btn{align-self:start}.hint-btn{align-self:flex-start;margin-top:2px;padding:4px 8px;font-size:11.5px}.forecast-calc{flex-direction:column;gap:18px;display:flex}.forecast-inputs{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.input-suffix{align-items:center;gap:8px;display:flex}.input-suffix .input{flex:1}.input-suffix span{color:var(--text-muted);font-size:13px}.forecast-result{background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.income-owners{flex-direction:column;gap:16px;padding:4px 20px 20px;display:flex}.income-owner{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.income-owner-head{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 14px;display:flex}.income-owner-head .spacer{margin-left:auto}.income-owner-name{font-size:14px;font-weight:650}.income-owner-name-input{max-width:220px;font-size:14px;font-weight:650}.income-owner-empty{text-align:center;color:var(--text-muted);padding:20px;font-size:13px}.income-owner .recurring-list{padding:12px 14px}.income-owner-add{margin:0 14px 14px}.income-quickfill{gap:8px;display:flex}.income-quickfill .input{max-width:140px}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#0f141e73;place-items:center;padding:20px;animation:.14s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);box-shadow:var(--shadow-lg);border-radius:14px;width:min(560px,100%);max-height:90vh;animation:.16s ease-out pop;overflow-y:auto}.modal header{border-bottom:1px solid var(--border);align-items:center;padding:18px 20px;display:flex}.modal header h2{font-size:16px}.modal-body{grid-template-columns:1fr 1fr;gap:14px;padding:20px;display:grid}.modal-body .span-2{grid-column:1/-1}.modal footer{border-top:1px solid var(--border);background:var(--surface);justify-content:flex-end;gap:8px;padding:16px 20px;display:flex;position:sticky;bottom:0}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}.empty{text-align:center;color:var(--text-muted);padding:48px 20px}.empty strong{color:var(--text);margin-bottom:4px;display:block}.banner{border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;font-size:13px;display:flex}.banner-warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.banner-ok{background:var(--pos-soft);color:var(--pos);border-color:#0000}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);z-index:200;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:500;animation:.16s ease-out pop;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.budget-card-stripe{width:4px;position:absolute;inset:0 auto 0 0}.budget-card-inactive{border-top:1px dashed var(--border);border-bottom:1px dashed var(--border);padding:7px 0;font-size:12.5px}.budget-card-figures{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;display:grid}.budget-card-figures dt{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.budget-card-figures dd{margin:2px 0 0;font-size:14px;font-weight:600}.budget-bar-wrap{flex-direction:column;gap:8px;display:flex}.budget-bar{background:var(--surface-hover);border-radius:999px;height:10px;display:flex;position:relative;overflow:hidden}.budget-bar .seg{height:100%;display:block}.seg-planned{opacity:.34}.seg-over{background:var(--neg)}.budget-mark{background:var(--text);opacity:.55;width:2px;position:absolute;top:-2px;bottom:-2px}.budget-bar-legend{color:var(--text-muted);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.budget-bar-legend span{align-items:center;gap:6px;display:inline-flex}.dot-soft{opacity:.34}.bulk-bar{background:var(--accent-soft);border-bottom:1px solid var(--border);color:var(--accent-text);align-items:center;gap:8px;padding:10px 18px;font-size:13px;display:flex}.bulk-bar strong{white-space:nowrap}.bulk-bar .spacer{margin-left:auto}.select-all-row{color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.select-all-row.is-inset{margin-bottom:0;padding:12px 18px 0}.meta-chip{background:var(--surface-hover);border:1px solid var(--border);color:var(--text-muted);vertical-align:1px;border-radius:999px;align-items:center;gap:5px;margin-left:8px;padding:1px 8px 1px 6px;font-size:11.5px;font-weight:500;display:inline-flex}.cat-cell{align-items:center;gap:6px;display:inline-flex}.cat-name{align-items:center;gap:7px;display:inline-flex}.cat-icon{place-items:center;display:grid}.cat-row.is-clickable{cursor:pointer;border-radius:var(--radius-sm);margin:-4px -6px;padding:4px 6px}.cat-row.is-clickable:hover{background:var(--surface-hover)}.cat-row.is-general{opacity:.62}.cat-preview{border:1px solid var(--border-strong);background:var(--surface);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:7px 12px;font-size:13px;font-weight:500;display:inline-flex}.icon-swatch-row{flex-wrap:wrap;gap:6px;display:flex}.icon-swatch{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:32px;height:32px;color:var(--text-muted);place-items:center;transition:border-color .12s,background .12s,color .12s;display:grid}.icon-swatch:hover{border-color:var(--accent);color:var(--text)}.icon-swatch.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover{background:var(--accent);filter:none}.field>.label{color:var(--text-muted);font-size:12px;font-weight:600}.segmented{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:flex;overflow:hidden}.segmented-option{border:0;border-right:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);flex:1;padding:8px 10px;font-size:13px;font-weight:600;transition:background .12s,color .12s}.segmented-option:last-child{border-right:0}.segmented-option:hover{background:var(--surface-hover)}.segmented-option.active{background:var(--accent-soft);color:var(--accent-text)}.segmented-option:disabled{opacity:.45;cursor:not-allowed}.segmented-option:disabled:hover{background:var(--surface)}.segmented-option.active:disabled:hover{background:var(--accent-soft)}.swatch-row{flex-wrap:wrap;gap:8px;display:flex}.swatch{width:26px;height:26px;box-shadow:0 0 0 1px var(--border-strong);border:2px solid #0000;border-radius:50%;transition:transform .1s}.swatch:hover{transform:scale(1.12)}.swatch.active{border-color:var(--surface);box-shadow:0 0 0 2px var(--accent)}.hint-error{color:var(--neg)!important}.recurring-list{flex-direction:column;gap:10px;padding:4px 20px 20px;display:flex}.recurring-item{border:1px solid var(--border);border-radius:10px;overflow:hidden}.recurring-item-head{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.recurring-item-head:hover{background:var(--surface-hover)}.recurring-item-head .spacer{margin-left:auto}.recurring-item-name{font-weight:600}.recurring-item .chevron{color:var(--text-faint);transition:transform .15s;display:inline-flex}.recurring-item .chevron.open{transform:rotate(180deg)}.recurring-item .table-wrap{border-top:1px solid var(--border)}.recurring-item-total{flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.recurring-item-total small{font-size:12px}.month-grid{border-top:1px solid var(--border)}.month-grid-bar{background:var(--surface-hover);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.month-grid-bar .spacer{margin-left:auto}.month-grid-scope{color:var(--text-faint);font-size:12px}.month-grid-fill{gap:6px;display:flex}.month-grid-fill .input{width:190px}.month-grid .table-wrap{border-top:none}.month-grid-table td{vertical-align:middle}.month-grid-table tr.is-selected{background:var(--accent-soft)}.month-pick{min-width:52px;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 8px}.month-pick:hover{background:var(--surface-hover)}.month-pick.active{border-color:var(--accent);color:var(--accent);font-weight:600}.cell-input{width:100%;padding:5px 8px}.cell-input.is-off{color:var(--text-faint)}.month-grid-table .hint{margin-top:2px;font-size:11px;display:block}.account-detail{border-top:1px solid var(--border)}.account-detail>.table-wrap{border-top:none;max-width:340px}.budget-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.budget-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;gap:12px;padding:16px 16px 14px 18px;display:flex;position:relative;overflow:hidden}.budget-card-head{align-items:flex-start;gap:10px;display:flex}.budget-card-head>div{min-width:0}.budget-card-head h3{align-items:center;gap:7px;font-size:15px;display:flex}.budget-card-head p{margin:2px 0 0;font-size:12px}.budget-card-head .icon-btn{margin-left:auto}.budget-card-foot{border-top:1px solid var(--border);padding-top:10px;font-size:12px}.budget-card .budget-card-figures,.budget-card .budget-bar-wrap{margin:0}.budget-suggest{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:16px;padding-top:16px;display:flex}.budget-suggest>.label{color:var(--text-muted);font-size:12px;font-weight:600}.budget-suggest p{margin:0;font-size:12px}.budget-suggest-row{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.budget-suggest-chip{border:1px dashed var(--border-strong);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:13px;transition:border-color .12s,background .12s;display:inline-flex}.budget-suggest-chip:hover{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.budget-suggest-chip .cat-icon{color:var(--text-faint)}.budget-dash{flex-direction:column;gap:16px;display:flex}.budget-dash-headline{flex-direction:column;gap:8px;display:flex}.budget-dash-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.budget-dash-title{font-weight:600}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.cell-select{width:auto;color:var(--text-muted);padding:5px 26px 5px 8px;font-size:12px}td>.hint{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.link-btn{color:var(--accent-text);font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-weight:600;display:inline-flex}.link-btn:hover{text-decoration:underline}@media (width<=900px){.app{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;gap:14px;height:auto;padding:12px 16px;position:static;overflow-x:auto}.sidebar .brand-text,.sidebar-note{display:none}.nav{flex-direction:row}.nav-group{flex-direction:row;align-items:center}.nav-group+.nav-group{margin-top:0}.nav-group-label{display:none}.sidebar-footer{flex-direction:row;margin-top:0}.chart-grid{grid-template-columns:1fr}.flow-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.flow-step.is-total{grid-column:1/-1}.account-detail,.budget-grid{grid-template-columns:1fr}.account-forecast{border-left:none;border-top:1px solid var(--border)}.content,.topbar{padding-left:16px;padding-right:16px}.modal-body{grid-template-columns:1fr}}.year-switcher{align-items:center;display:flex;position:relative}.year-switcher .select{font-variant-numeric:tabular-nums;width:auto;min-width:116px;padding-left:30px;font-weight:600}.year-switcher-icon{pointer-events:none;color:var(--text-faint);display:inline-flex;position:absolute;left:9px}.category-picker{align-items:center;display:flex;position:relative}.category-picker .input,.category-picker .select{width:100%;padding-left:32px}.category-picker-icon{pointer-events:none;color:var(--text-faint);display:inline-flex;position:absolute;left:10px}.month-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.month-range .select{width:auto;min-width:88px}.month-range-to{color:var(--text-muted);font-size:13px}.attention{flex-direction:column;gap:8px;display:flex}.attention-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);border-left-width:3px;align-items:center;gap:11px;padding:13px 16px;font-size:14px;line-height:1.5;display:flex}.attention-row.is-bad{border-left-color:var(--neg);background:var(--neg-soft)}.attention-row.is-warn{border-left-color:var(--warn);background:var(--warn-soft)}.attention-row.is-good{border-left-color:var(--pos)}.attention-mark{flex:none;display:inline-flex}.attention-row.is-bad .attention-mark{color:var(--neg)}.attention-row.is-warn .attention-mark{color:var(--warn)}.attention-row.is-good .attention-mark{color:var(--pos)}.attention-text{flex:1;min-width:0}.attention-action{flex:none;gap:4px}.goal-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.goal-card .card-head{align-items:flex-start}.goal-icon{padding-top:2px;display:inline-flex}.goal-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px;display:grid}.goal-stats>div{flex-direction:column;gap:3px;display:flex}.goal-stats strong{font-size:17px}.goal-bar{background:var(--surface-hover);border-radius:999px;height:7px;display:block;overflow:hidden}.goal-bar>i{border-radius:999px;height:100%;display:block}.goal-track-list{flex-direction:column;gap:14px;display:flex}.goal-track{border-radius:var(--radius-sm);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:6px;margin:-10px;padding:10px;display:flex}.goal-track:hover{background:var(--surface-hover)}.goal-track-head{align-items:center;gap:8px;font-size:13.5px;display:flex}.goal-track-foot{font-size:12px}.surplus-split{grid-template-columns:repeat(12,1fr);align-items:end;gap:5px;display:grid}.surplus-month{flex-direction:column;align-items:center;gap:5px;display:flex}.surplus-stack{border-radius:var(--radius-sm);background:var(--surface-hover);flex-direction:column-reverse;justify-content:flex-start;width:100%;height:96px;display:flex;overflow:hidden}.surplus-stack>i{width:100%;display:block}.surplus-claimed{background:var(--accent)}.surplus-free{background:var(--accent-soft)}.surplus-missed{background:repeating-linear-gradient(135deg, var(--neg) 0 3px, transparent 3px 7px);opacity:.5}.surplus-label{font-size:11px}.surplus-key{flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12px;display:flex}.surplus-key span{align-items:center;gap:6px;display:inline-flex}.surplus-key i{border-radius:3px;width:10px;height:10px}.goal-months{grid-template-columns:repeat(12,1fr);align-items:end;gap:4px;margin-top:12px;display:grid}.goal-month{flex-direction:column;align-items:center;gap:3px;display:flex}.goal-month>i{background:var(--surface-hover);border-radius:2px;width:100%;min-height:1px;display:block}.goal-month{justify-content:flex-end;height:46px}.goal-month>b{font-size:10px;font-weight:500}.goal-month-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}@media (width<=560px){.goal-month-grid{grid-template-columns:repeat(3,1fr)}}.goal-month-cell{flex-direction:column;gap:4px;display:flex}.goal-month-cell .input{padding:5px 7px;font-size:12.5px}.goal-month-toggle{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font:inherit;color:inherit;cursor:pointer;padding:3px 6px;font-size:11.5px}.goal-month-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.goal-month-cell.is-off .input{opacity:.45}.debt-preview{border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-alt,transparent);padding:12px 14px}.debt-preview .kpi-label{margin-bottom:6px;display:block}.asset-owed{margin:0 0 4px;font-size:15px}.savings-note{border-top:1px solid var(--border);color:var(--text-muted);margin:0;padding:12px 18px;font-size:12.5px;line-height:1.55}.confidence-pill{letter-spacing:.02em;vertical-align:middle;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:10.5px;font-weight:600;display:inline-block}.confidence-pill.is-likely{background:var(--accent-soft);color:var(--accent-text)}.confidence-pill.is-maybe{background:var(--warn-soft);color:var(--warn)}.backfill{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px}.backfill.is-live{border-color:var(--accent);background:var(--accent-soft)}.check{cursor:pointer;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.45;display:flex}.check input{flex:none;margin-top:2px}.modal-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:13px;line-height:1.5}.confirm-body{display:block}.confirm-list{color:var(--text);flex-direction:column;gap:6px;margin:0 0 10px;padding-left:20px;font-size:14px;display:flex}.confirm-reassurance{color:var(--text-muted);margin:0;font-size:13px}.modal-wide{max-width:760px}.toast{align-items:center;gap:14px;display:flex}.toast-undo{border-radius:var(--radius-sm);color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff47;align-items:center;gap:5px;padding:5px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.toast-undo:hover{background:#ffffff24}tr.is-clickable{cursor:pointer}tr.is-clickable:hover{background:var(--surface-hover)}button.cat-row{width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:0}.nav-item.active{box-shadow:inset 2px 0 0 var(--accent)}.nav-toggle{display:none}.btn-icon-only{padding:8px}@media (width<=900px){.sidebar{flex-direction:column;align-items:stretch;gap:10px;overflow:visible}.sidebar .brand-text{display:flex}.nav-toggle{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;font-weight:600;display:inline-flex}.nav{flex-direction:column;display:none}.nav.is-open{display:flex}.nav-group{flex-direction:column;align-items:stretch}.nav-group-label{display:block}.nav-group+.nav-group{margin-top:10px}.goal-stats{grid-template-columns:repeat(2,1fr)}.attention-row{flex-wrap:wrap}.topbar{flex-wrap:wrap;row-gap:12px}.topbar>div:not(.topbar-actions){flex:100%;order:1}.topbar-back{order:0}.topbar-actions{order:2;justify-content:space-between;width:100%}}.recurring-item-head{align-items:center;gap:10px;display:flex}.recurring-item-toggle{border-radius:var(--radius-sm);color:inherit;cursor:pointer;background:0 0;border:0;padding:4px;display:inline-flex}.recurring-item-toggle:hover{background:var(--surface-hover)}.account-menu{position:relative}.account-trigger{gap:8px;max-width:220px}.account-label{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sync-dot{background:var(--text-faint);border-radius:50%;flex:none;width:7px;height:7px}.sync-dot.sync-synced{background:var(--pos)}.sync-dot.sync-saving,.sync-dot.sync-loading{background:var(--accent)}.sync-dot.sync-offline,.sync-dot.sync-drive-disconnected,.sync-dot.sync-reconcile-needed{background:var(--warn)}.sync-dot.sync-error{background:var(--neg)}.sync-actions{flex-wrap:wrap;gap:8px;display:flex}.sync-divider{border-top:1px solid var(--border);margin:16px 0}.sync-banner{margin-top:12px}.account-panel{z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:8px;width:300px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 40px -18px #00000073}.account-email{text-overflow:ellipsis;margin:0;font-size:13.5px;font-weight:600;overflow:hidden}.account-status{color:var(--text-muted);align-items:center;gap:7px;margin:0;font-size:12.5px;display:flex}.account-status.sync-error{color:var(--neg)}.account-status.sync-offline{color:var(--warn)}.account-note{color:var(--text-faint);margin:0;font-size:11.5px;line-height:1.5}.account-signout{justify-content:center;gap:8px}.signin-code{letter-spacing:6px;font-variant-numeric:tabular-nums;font-size:22px}.signin-resend{align-self:flex-start;padding-left:0;padding-right:0}.signin-reassurance{align-items:flex-start;gap:7px;display:flex}.site{--site-max:1140px;--site-gutter:24px;flex-direction:column;min-height:100vh;display:flex;overflow-x:clip}.site-shell{width:100%;max-width:var(--site-max);padding:0 var(--site-gutter);margin:0 auto}.skip-link{z-index:100;background:var(--surface);color:var(--text);border-radius:var(--radius-sm);border:1px solid var(--border-strong);padding:10px 16px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:16px}.site-header{z-index:40;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header-inner{align-items:center;gap:18px;height:64px;display:flex}.site-brand{color:var(--text);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:650;text-decoration:none;display:inline-flex}.site-brand-mark{background:linear-gradient(140deg, var(--accent), #8b5cf6);border-radius:9px;flex:none;place-items:center;display:grid}.site-nav{align-items:center;gap:4px;margin-right:auto;display:flex}.site-nav-link{border-radius:var(--radius-sm);color:var(--text-muted);padding:7px 11px;font-size:13.5px;font-weight:500;text-decoration:none}.site-nav-link:hover{background:var(--surface-hover);color:var(--text)}.site-nav-link.is-active{color:var(--accent-text);background:var(--accent-soft)}.site-header-actions{align-items:center;gap:8px;display:flex}.site-nav-toggle{display:none}.site-section{padding:84px 0}.site-section-tinted{background:var(--surface);border-block:1px solid var(--border)}.site-section-head{max-width:720px;margin-bottom:44px}.site-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin:0 0 10px;font-size:12px;font-weight:650}.site-section h1,.site-section h2{letter-spacing:-.025em;margin-bottom:14px;font-size:clamp(26px,3.4vw,36px);line-height:1.18}.site-lead{color:var(--text-muted);margin:0;font-size:17px;line-height:1.65}.site-section-foot{margin:40px 0 0;font-size:15px}.site-section-foot a,.site-prose a,.site-panel a,.site-card a{color:var(--accent-text);font-weight:550;text-decoration:none}.site-section-foot a:hover,.site-prose a:hover,.site-panel a:hover,.site-card a:hover{text-decoration:underline}.hero{padding:76px 0 0;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(60% 60% at 22% 40%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), radial-gradient(45% 55% at 82% 20%, #8b5cf62e, transparent 70%);pointer-events:none;height:620px;position:absolute;inset:-280px 0 auto}.hero-inner{text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.hero h1{letter-spacing:-.035em;max-width:15ch;margin-bottom:20px;font-size:clamp(34px,6vw,60px);line-height:1.06}.hero-name{letter-spacing:-.01em;color:var(--accent-text);margin-bottom:12px;font-size:clamp(17px,1.9vw,21px);font-weight:650;line-height:1.2;display:block}.site-scope{color:var(--text-muted);overflow-wrap:anywhere;margin:22px 0 0;font-size:14px}.site-scope code{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:2px 7px;font-size:13px}.hero-lead{color:var(--text-muted);max-width:64ch;margin:0 0 30px;font-size:clamp(16px,2vw,19px);line-height:1.6}.hero .site-checks{flex-flow:wrap;justify-content:center;gap:10px 26px;margin:28px 0 0}.hero .shot{width:100%;margin-top:52px}.btn-lg{border-radius:10px;padding:11px 22px;font-size:15px;font-weight:600}.site-cta-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}a.btn{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.site-stats{grid-template-columns:repeat(4,1fr);gap:28px;display:grid}.site-stat{flex-direction:column;gap:6px;display:flex}.site-stat strong{letter-spacing:-.02em;font-size:26px;font-weight:650}.site-stat span{color:var(--text-muted);font-size:13.5px;line-height:1.5}.site-checks{flex-direction:column;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.site-checks li{align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.5;display:flex}.site-checks svg{color:var(--pos);flex:none;margin-top:2px}.site-nots{flex-direction:column;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:flex}.site-nots li{color:var(--text-muted);padding-left:20px;font-size:14.5px;line-height:1.55;position:relative}.site-nots li:before{content:"";background:var(--border-strong);border-radius:2px;width:9px;height:2px;position:absolute;top:9px;left:0}.site-split{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.site-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:26px}.site-section-tinted .site-panel{background:var(--bg)}.site-panel-muted{background:var(--surface-2)}.site-panel h3,.site-card h3{margin-bottom:10px;font-size:16px}.site-panel p{color:var(--text-muted);margin:0;line-height:1.6}.site-steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin:0;padding:0;list-style:none;display:grid}.site-steps li{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:26px}.site-section-plain .site-steps li{background:var(--surface)}.site-step-number{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-text);border-radius:9px;place-items:center;margin-bottom:14px;font-size:14px;font-weight:700;display:grid}.site-steps h2,.site-steps h3{margin-bottom:10px;font-size:17px}.site-steps p{color:var(--text-muted);margin:0;line-height:1.6}.site-steps-large li{padding:30px}.site-steps .site-step-time{border-top:1px solid var(--border);color:var(--accent-text);letter-spacing:.01em;margin:14px 0 0;padding-top:12px;font-size:13px;font-weight:600}.site-versus{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.site-versus .site-card.is-ours{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 42%, transparent)}.site-versus .site-card.is-ours h3{color:var(--accent-text)}.site-section-lead-in{padding-bottom:24px}.site-alternating{flex-direction:column;gap:80px;display:flex}.site-alternating-page{gap:0}.site-alt-row{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:48px;display:grid}.site-alternating .site-alt-row:nth-child(2n) .site-alt-text,.site-alt-reverse .site-alt-text{order:2}.site-alt-text h2{margin-bottom:14px;font-size:clamp(22px,2.6vw,28px)}.site-alt-text h3{letter-spacing:-.02em;margin-bottom:14px;font-size:clamp(20px,2.4vw,25px)}.site-alt-text p{color:var(--text-muted);margin:0 0 12px;font-size:15px;line-height:1.65}.site-alt-text strong{color:var(--text);font-weight:600}.site-alt-shot .shot img{aspect-ratio:6/5;object-fit:cover;object-position:100% 0}.shot{margin:0}.shot-framed{border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:12px;overflow:hidden}.shot-chrome{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:9px 12px;display:flex}.shot-dot{background:var(--border-strong);border-radius:50%;width:9px;height:9px}.shot-url{color:var(--text-faint);margin-left:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.shot img{width:100%;height:auto;display:block}.shot figcaption{color:var(--text-muted);border-top:1px solid var(--border);background:var(--surface);padding:14px 16px;font-size:13px;line-height:1.5}.shot img[src=""]{visibility:hidden}.site-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.site-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px}.site-section-tinted .site-card{background:var(--bg)}.site-card p{color:var(--text-muted);margin:0;font-size:14.5px;line-height:1.6}.site-card code,.site-prose code{background:var(--surface-hover);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.site-rules{border:1px solid var(--border);border-radius:var(--radius);background:var(--border);gap:2px;margin:0;display:grid;overflow:hidden}.site-rules>div{background:var(--surface);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:baseline;gap:24px;padding:22px 24px;display:grid}.site-section-tinted .site-rules>div{background:var(--bg)}.site-rules dt{letter-spacing:-.01em;font-size:15px;font-weight:600}.site-rules dd{color:var(--text-muted);margin:0;font-size:14.5px;line-height:1.6}.site-toc{flex-wrap:wrap;gap:8px;display:flex}.site-toc a{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:999px;padding:7px 13px;font-size:13.5px;text-decoration:none}.site-toc a:hover{border-color:var(--accent);color:var(--accent-text)}.site-plans{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;display:grid}.site-plan{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;height:100%;padding:30px 26px;display:flex;position:relative}.site-plan.is-featured{border-color:var(--accent);box-shadow:var(--shadow-md)}.site-plan-flag{background:var(--accent);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:650;position:absolute;top:-11px;left:26px}.site-plan h2{margin-bottom:12px;font-size:17px}.site-plan-price{align-items:baseline;gap:6px;margin:0 0 12px;display:flex}.site-plan-price strong{letter-spacing:-.03em;font-size:40px;font-weight:650;line-height:1}.site-plan-currency{color:var(--text-muted);font-size:15px;font-weight:600}.site-plan-was{color:var(--text-faint);letter-spacing:-.02em;font-size:24px;font-weight:500;text-decoration-thickness:2px}.site-plan-cadence{color:var(--text-muted);font-size:13.5px}.site-plan-summary{color:var(--text-muted);margin:0;font-size:14.5px;line-height:1.6}.site-plan .site-checks{flex:1;margin-bottom:26px}.site-plan-cta{justify-content:center;width:100%;padding:10px 16px;font-weight:600}.site-plan-note{color:var(--text-faint);text-align:center;margin:12px 0 0;font-size:12.5px;line-height:1.5}.site-plan-note+.site-plan-note{margin-top:8px}.site-badges{text-align:left;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;max-width:880px;margin:34px 0 0;padding:0;list-style:none;display:grid}.site-badges li{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface) 70%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;gap:3px;padding:14px 16px;display:flex}.site-badges strong{letter-spacing:-.01em;font-size:13.5px;font-weight:650}.site-badges span{color:var(--text-muted);font-size:12.5px;line-height:1.45}.site-eu{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:5px 11px 5px 7px;font-size:12.5px;font-weight:550;display:inline-flex}.site-eu svg{border-radius:50%;flex:none}.site-flow{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);margin:0 0 32px;padding:26px 20px 18px}.site-section-plain .site-flow{background:var(--surface)}.site-flow svg{width:100%;max-width:720px;height:auto;margin:0 auto;display:block}.site-flow-owned rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5px}.site-flow-ours rect{fill:none;stroke:var(--border-strong);stroke-width:1.5px;stroke-dasharray:5 4}.site-flow-label,.site-flow-label-sm,.site-flow-sub{text-anchor:middle;fill:var(--text);font-family:inherit}.site-flow-label{font-size:15px;font-weight:650}.site-flow-label-sm{fill:var(--text-muted);font-size:13px;font-weight:600}.site-flow-sub{fill:var(--text-muted);font-size:11.5px}.site-flow-arrow line{stroke:var(--accent);stroke-width:2px}.site-flow-arrow polygon{fill:var(--accent)}.site-flow-dashed{stroke:var(--border-strong);stroke-width:1.5px;stroke-dasharray:4 4}.site-flow-cross line{stroke:var(--neg);stroke-width:2.4px;stroke-linecap:round}.site-flow figcaption{text-align:center;color:var(--text-muted);margin-top:16px;max-width:62ch;margin-inline:auto;font-size:13px;line-height:1.55}.site-disclaimer{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--bg);align-items:flex-start;gap:16px;margin:0 0 28px;padding:22px 24px;display:flex}.site-section-plain .site-disclaimer{background:var(--surface)}.site-disclaimer-mark{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;display:grid}.site-disclaimer h3{margin:0 0 6px;font-size:15.5px}.site-disclaimer p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.site-price-strip{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.site-price-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;padding:26px;position:relative}.site-section-tinted .site-price-card{background:var(--bg)}.site-price-card.is-featured{border-color:var(--accent);box-shadow:var(--shadow-md)}.site-price-card h3{margin-bottom:12px;font-size:16px}.site-price-card p{color:var(--text-muted);margin:0;font-size:14.5px;line-height:1.6}.site-price-card .site-price-figure{flex-wrap:wrap;align-items:baseline;gap:9px;margin:0 0 12px;display:flex}.site-price-figure strong{letter-spacing:-.03em;color:var(--text);font-size:32px;font-weight:650}.site-price-figure s{color:var(--text-faint);font-size:20px;text-decoration-thickness:2px}.site-price-figure span{color:var(--text-muted);font-size:13.5px}.site-cards-tight{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.site-cards-tight .site-card{padding:20px 22px}.site-faq{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.site-faq details+details{border-top:1px solid var(--border)}.site-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;font-size:15.5px;font-weight:600;list-style:none;display:flex}.site-faq summary::-webkit-details-marker{display:none}.site-faq summary:hover{background:var(--surface-hover)}.site-faq summary svg{color:var(--text-faint);flex:none;transition:transform .15s}.site-faq details[open] summary svg{transform:rotate(180deg)}.site-faq details p{color:var(--text-muted);max-width:78ch;margin:0;padding:0 24px 22px;line-height:1.65}.site-faq-preview{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:30px 48px;display:grid}.site-faq-preview h3{margin-bottom:8px;font-size:15.5px}.site-faq-preview p{color:var(--text-muted);margin:0;font-size:14.5px;line-height:1.6}.site-prose{max-width:70ch}.site-prose p{color:var(--text-muted);margin:0 0 18px;font-size:15.5px;line-height:1.7}.site-prose h2{margin:34px 0 14px;font-size:21px}.site-contact-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:40px;display:grid}.site-contact-aside h2{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:18px;font-size:15px}.site-contact-aside dl{flex-direction:column;gap:18px;margin:0;display:flex}.site-contact-aside dt{margin-bottom:5px;font-size:14.5px;font-weight:600}.site-contact-aside dd{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.site-contact-note{border-top:1px solid var(--border);color:var(--text-faint);margin:26px 0 0;padding-top:18px;font-size:12.5px;line-height:1.6}.site-contact-cta{text-align:center;margin-top:40px}.site-contact-cta p{color:var(--text-muted);margin:12px 0 0;font-size:13.5px}.site-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:680px;box-shadow:var(--shadow-sm);flex-direction:column;gap:22px;padding:28px;display:flex}.site-section-tinted .site-form{background:var(--bg)}.site-form-topics{border:0;margin:0;padding:0}.site-form-topics legend,.site-form-field label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;padding:0;font-size:12px;font-weight:650;display:block}.site-form-chips{flex-wrap:wrap;gap:8px;display:flex}.site-chip input{opacity:0;width:0;height:0;position:absolute}.site-chip{border:1px solid var(--border-strong);background:var(--bg);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:13.5px;transition:border-color .12s,background .12s,color .12s;display:inline-flex;position:relative}.site-section-tinted .site-chip{background:var(--surface)}.site-chip:hover{border-color:var(--accent)}.site-chip.is-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text);font-weight:600}.site-chip:focus-within{outline:2px solid var(--accent);outline-offset:2px}.site-form-hint{color:var(--text-muted);margin:12px 0 0;font-size:13px}.site-form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;display:grid}.site-form-field{flex-direction:column;display:flex}.site-form-textarea{min-height:150px;line-height:1.6}.site-form-count{min-height:16px;color:var(--text-faint);text-align:right;margin:6px 0 0;font-size:12px}.site-form-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.site-form-error{border-radius:var(--radius-sm);background:var(--neg-soft);color:var(--neg);margin:0;padding:12px 14px;font-size:13.5px;line-height:1.55}.site-form-actions{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.site-form-actions p{color:var(--text-faint);margin:0;font-size:12.5px;line-height:1.55}.site-form-done{border:1px solid var(--pos);border-radius:var(--radius);background:var(--pos-soft);flex-direction:column;align-items:flex-start;gap:12px;max-width:680px;padding:34px 28px;display:flex}.site-form-tick{background:var(--surface);width:44px;height:44px;color:var(--pos);border-radius:50%;place-items:center;display:grid}.site-form-done h3{margin:0;font-size:18px}.site-form-done p{color:var(--text);max-width:56ch;margin:0;font-size:14.5px;line-height:1.6}.site-legal{max-width:74ch;color:var(--text-muted);font-size:15px;line-height:1.72}.site-legal-intro{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text);padding:20px 22px;font-size:15.5px}.site-legal h2{letter-spacing:-.01em;color:var(--text);border-top:1px solid var(--border);margin:40px 0 12px;padding-top:20px;font-size:18px}.site-legal p{margin:0 0 14px}.site-legal strong{color:var(--text);font-weight:600}.site-legal a{color:var(--accent-text);text-underline-offset:2px;font-weight:550;text-decoration:underline}.site-legal-list{flex-direction:column;gap:8px;margin:0 0 16px;padding-left:20px;display:flex}.site-legal-list li{padding-left:4px}.site-legal .site-rules{margin:0 0 18px}.site-legal .site-rules>div{grid-template-columns:minmax(0,1fr);gap:6px;padding:18px 20px}.site-badge-line{margin:0 0 26px}.site-cta-band{background:linear-gradient(140deg, var(--accent), #7c4ddb);color:#fff;text-align:center;padding:84px 0}.site-cta-band h2{letter-spacing:-.03em;margin-bottom:14px;font-size:clamp(26px,3.6vw,38px)}.site-cta-band p{color:#ffffffdb;max-width:58ch;margin:0 auto 26px;font-size:16.5px;line-height:1.6}.site-cta-band .btn{color:#fff;background:#ffffff1f;border-color:#ffffff57}.site-cta-band .btn:hover{background:#fff3}.site-cta-band .btn-primary{color:#2f2a6b;background:#fff;border-color:#fff}.site-cta-band .btn-primary:hover{background:#ffffffe6}.site-cta-note{color:#ffffffb8!important;margin-top:20px!important;font-size:13px!important}.site-footer{background:var(--surface);border-top:1px solid var(--border);margin-top:auto;padding:56px 0 28px}.site-footer-inner{grid-template-columns:1.6fr repeat(3,1fr);gap:40px;display:grid}.site-footer-brand p{color:var(--text-muted);max-width:40ch;margin:14px 0 0;font-size:13.5px;line-height:1.6}.site-footer-col{flex-direction:column;gap:10px;display:flex}.site-footer-col h2{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:2px;font-size:12px}.site-footer-col a{color:var(--text-muted);font-size:13.5px;text-decoration:none}.site-footer-col a:hover{color:var(--accent-text)}.site-footer-legal{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:44px;padding-top:22px;display:flex}.site-footer-legal p{color:var(--text-faint);margin:0;font-size:12.5px}.auth{background:radial-gradient(55% 45% at 15% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), var(--bg);flex-direction:column;align-items:center;gap:18px;min-height:100vh;padding:24px 24px 40px;display:flex}.auth-topbar{flex:none;align-items:center;width:100%;max-width:940px;display:flex}.auth-shell{background:var(--surface);border:1px solid var(--border);width:100%;max-width:940px;box-shadow:var(--shadow-lg);border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:0;margin:auto 0;display:grid;overflow:hidden}.auth-card{padding:44px 42px}.auth-back{cursor:pointer;padding-left:11px;font-weight:550}.auth-back:hover{border-color:var(--accent);color:var(--accent-text)}.auth-brand{color:var(--text);align-items:center;gap:10px;margin-bottom:28px;font-weight:650;text-decoration:none;display:inline-flex}.auth-card h1{letter-spacing:-.025em;margin-bottom:10px;font-size:26px}.auth-lead{color:var(--text-muted);margin:0 0 26px;font-size:14.5px;line-height:1.6}.auth-card .field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.auth-card label{font-size:13px;font-weight:600}.auth-submit{justify-content:center;width:100%;margin-top:4px}.auth-secondary,.auth-local{justify-content:center;width:100%;margin-top:10px}.auth-links{gap:8px;margin-top:12px;display:flex}.auth-divider{color:var(--text-faint);align-items:center;gap:12px;margin:24px 0 4px;font-size:12.5px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-fineprint{color:var(--text-faint);align-items:flex-start;gap:8px;margin:18px 0 0;font-size:12.5px;line-height:1.55;display:flex}.auth-fineprint svg{color:var(--pos);flex:none;margin-top:2px}.auth-aside{background:var(--surface-2);border-left:1px solid var(--border);padding:44px 36px}.auth-aside h2{margin-bottom:22px;font-size:15px}.auth-aside dl{flex-direction:column;gap:18px;margin:0;display:flex}.auth-aside dt{margin-bottom:4px;font-size:13.5px;font-weight:600}.auth-aside dd{color:var(--text-muted);margin:0;font-size:13px;line-height:1.55}.auth-aside-foot{margin:26px 0 0;font-size:13px}.auth-aside-foot a{color:var(--accent-text);font-weight:550;text-decoration:none}.sidebar-site-link{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:8px;font-size:12.5px;text-decoration:none;display:inline-flex}.sidebar-site-link:hover{color:var(--accent-text)}@media (width<=980px){.site-contact-layout{grid-template-columns:minmax(0,1fr);gap:32px}.site-badges{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}.site-stats{grid-template-columns:repeat(2,1fr);gap:24px}.site-footer-inner{grid-template-columns:repeat(2,1fr);gap:32px}.site-alt-row{grid-template-columns:1fr;gap:28px}.site-alternating .site-alt-row:nth-child(2n) .site-alt-text,.site-alt-reverse .site-alt-text{order:0}.site-rules>div{grid-template-columns:1fr;gap:8px}.auth-shell{grid-template-columns:1fr}.auth-aside{border-left:none;border-top:1px solid var(--border)}}@media (width<=820px){.site-section{padding:60px 0}.site-alternating{gap:56px}.hero{padding-top:52px}.site-nav-toggle{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.site-nav{padding:10px var(--site-gutter) 16px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);flex-direction:column;align-items:stretch;gap:2px;display:none;position:absolute;top:64px;left:0;right:0}.site-nav.is-open{display:flex}.site-signin{display:none}.site-header-inner{position:relative}}@media (width<=520px){.site-header-inner{gap:8px}.site-brand>span:not(.site-brand-mark){display:none}.site-header-actions .btn{padding:8px 11px;font-size:12.5px}.site-nav-toggle{padding:8px 10px}}@media (width<=620px){.site-badges{grid-template-columns:minmax(0,1fr)}.site-disclaimer{flex-direction:column;gap:12px}.site-flow{display:none}}@media (width<=560px){.auth-card,.auth-aside{padding:30px 24px}.site-cta-band{padding:60px 0}.site-footer-inner{grid-template-columns:1fr}.hero .site-checks{text-align:left;flex-direction:column;align-items:flex-start}}.seo-fallback{max-width:660px;color:var(--text-muted);margin:0 auto;padding:72px 24px}.seo-fallback h1{letter-spacing:-.03em;color:var(--text);margin:0 0 22px;font-size:clamp(28px,4.4vw,42px);line-height:1.1}.seo-fallback p{margin:0 0 14px;line-height:1.65}.seo-fallback section{border-top:1px solid var(--border);margin:30px 0 0;padding-top:24px}.seo-fallback h2{letter-spacing:-.015em;color:var(--text);margin:0 0 12px;font-size:19px;line-height:1.25}.seo-fallback ul{flex-wrap:wrap;gap:8px 20px;margin:22px 0 0;padding:0;list-style:none;display:flex}.seo-fallback nav{border-top:1px solid var(--border);margin-top:34px;padding-top:24px}.seo-fallback a{color:var(--accent-text)}
