:root{color-scheme:light;--bg:#f5f6f2;--surface:#ffffff;--surface-strong:#eef2ef;--border:#d6dcd5;--text:#1f2933;--muted:#667085;--accent:#0f766e;--accent-strong:#0b5e57;--danger:#a33a3a;--ink:#1f2933;--ink-soft:#344054;--shadow:0 10px 28px rgba(31,41,51,0.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;letter-spacing:0}.site-brand-mark{display:inline-flex;flex-shrink:0;gap:3px;align-items:flex-end;width:31px;height:31px;transform:skewY(-12deg)}.site-brand-mark>span{display:block;width:7px;height:16px;background:#237760;border-radius:2px}.site-brand-mark>span:nth-child(2){height:24px;background:#579d73}.site-brand-mark>span:nth-child(3){height:31px;background:#b2be86}.skip-to-content{position:fixed;top:max(12px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));z-index:1000;max-width:calc(100vw - 32px);min-height:44px;padding:12px 18px;border:2px solid var(--accent);border-radius:8px;background:var(--surface);color:var(--accent-strong);font-weight:700;text-decoration:none;transform:translateY(calc(-100% - 24px - env(safe-area-inset-top)))}.skip-to-content:focus{transform:translateY(0);outline:3px solid #b77b2e;outline-offset:3px}#main-content{scroll-margin-top:24px}.main#main-content{scroll-margin-top:128px}#main-content:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;background:rgba(245,246,242,.96);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-inner{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:18px;align-items:center;max-width:1480px;margin:0 auto;padding:16px 24px}.brand{min-width:0}.brand h1{margin:0;font-size:22px;line-height:1.2;font-weight:720}.brand p{margin:5px 0 0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.user-pill{max-width:220px;font-weight:680;overflow:hidden;text-overflow:ellipsis}.plan-pill,.user-pill{display:inline-flex;min-height:34px;align-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-soft);padding:7px 10px;font-size:12px;white-space:nowrap}.plan-pill{gap:6px;font-weight:720}.plan-pill.premium{border-color:rgba(15,118,110,.34);background:#e6f1ee;color:var(--accent)}.billing-button{min-height:34px;padding-top:7px;padding-bottom:7px;font-size:12px}.input,.select,.textarea{width:100%;min-width:0;max-width:100%;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);padding:10px 11px;outline:none}.input:not([type=file]),.select{height:42px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.14)}.textarea{min-height:74px;resize:vertical}.button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:9px 14px;background:var(--accent);color:#fff;font-weight:650;white-space:nowrap;text-decoration:none}.button:hover{background:var(--accent-strong)}.button.secondary{background:#e7ece8;color:var(--ink-soft)}.button.secondary:hover{background:#dce4df}.button.premium-restricted-button,.button.premium-restricted-button:hover{background:#e7ece8;color:var(--muted);opacity:.72}.button.text{min-height:32px;padding:6px 9px;background:transparent;color:var(--accent)}.button.text:hover{background:rgba(15,118,110,.08)}.button.text.danger-text{color:var(--danger)}.main{max-width:1480px;margin:0 auto;padding:24px}.free-user-advertisement{position:static;width:min(100% - 32px,1100px);box-sizing:border-box;margin:24px auto;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.advertisement-label{display:block;margin-bottom:8px;color:var(--muted);font-size:11px}.advertisement-creative{display:flex;align-items:center;gap:16px;color:var(--ink);text-decoration:none}.advertisement-creative:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.advertisement-image{display:block;max-width:50%;height:auto;max-height:120px;object-fit:contain}.advertisement-copy{display:grid;min-width:0;gap:6px;overflow-wrap:anywhere}.advertisement-copy strong{font-size:15px}.advertisement-copy>span{font-size:13px;color:var(--muted);line-height:1.6}.advertisement-copy .advertisement-visit{color:var(--accent);font-size:12px}@media (max-width:600px){.advertisement-creative{flex-direction:column;align-items:stretch;gap:10px}.advertisement-image{max-width:100%;width:100%}}.notice{display:none;margin-bottom:16px;border:1px solid #ebc680;border-radius:8px;background:#fff8e6;color:#704411;padding:12px 14px}.notice.visible{display:block}.inline-notice{margin:0 0 14px}.scenario-name-dialog{position:fixed;inset:auto;box-sizing:border-box;width:min(440px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:0;padding:24px;overflow:auto;overscroll-behavior:contain;border:1px solid #d6e2dc;border-radius:20px;color:#273e35;background:#fbfdfb;box-shadow:0 20px 70px rgb(24 48 37/22%)}.scenario-name-dialog::backdrop{background:rgb(24 40 32/42%)}.scenario-name-dialog form{min-width:0}.scenario-name-dialog h2{margin:0;font-size:23px;line-height:1.35}.scenario-name-description,.scenario-name-error,.scenario-name-help,.scenario-name-pending{overflow-wrap:anywhere;line-height:1.65}.scenario-name-description{margin:12px 0 20px;color:#52665b}.scenario-name-dialog .field{display:grid;gap:8px;min-width:0}.scenario-name-dialog .input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font-size:16px}.scenario-name-help{margin:8px 0 0;color:#52665b;font-size:13px}.scenario-name-error,.scenario-name-pending{margin:16px 0 0;padding:10px 12px;border-radius:10px;background:#edf4ee}.scenario-name-error{color:#8d362b;background:#fff0e9}.scenario-name-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px}.scenario-name-actions .button{flex:1 1 100px;justify-content:center;min-height:44px;white-space:normal}.read-status{display:flex;align-items:center;gap:16px;min-width:0;padding:16px 18px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;background:var(--surface-strong);color:var(--ink-soft)}.read-status-copy{flex:1 1;min-width:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.read-status-copy p{margin:0}.read-status-copy p+p{margin-top:6px}.read-status-title{color:var(--ink);font-weight:650}.read-status>.button.read-status-action{flex-shrink:0;min-height:44px;max-width:100%;padding:10px 14px;line-height:1.4;white-space:normal}.empty-state.scenario-transition-card{display:block;width:100%;max-width:720px;min-height:0;margin-inline:auto;padding:20px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:14px;background:var(--surface-strong);color:var(--ink-soft);font-size:14px;line-height:1.6;overflow-wrap:anywhere}.scenario-transition-content>p{margin:0}.scenario-transition-content>p+p{margin-top:8px}.scenario-transition-content>.scenario-transition-action{min-height:44px;max-width:100%;margin-top:16px;white-space:normal}@media (max-width:600px){.read-status{flex-direction:column;align-items:stretch;gap:12px;padding:14px}.empty-state.scenario-transition-card{padding:16px}.read-status>.button.read-status-action,.scenario-transition-content>.scenario-transition-action{width:100%;min-width:0}}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px}.metric{min-height:108px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:15px;box-shadow:var(--shadow)}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}.metric-label{color:var(--muted);font-size:13px}.metric-value{margin-top:10px;font-size:24px;line-height:1.15;font-weight:760;overflow-wrap:anywhere}.metric-caption{margin-top:8px;color:var(--muted);font-size:12px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.9fr);gap:18px;margin-top:18px;align-items:start}.panel{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.onboarding-guide{margin-bottom:18px;border-color:rgba(15,118,110,.34);box-shadow:0 8px 22px rgba(31,41,51,.06)}.onboarding-footer,.onboarding-header,.onboarding-progress,.onboarding-task,.onboarding-task-action,.onboarding-title{display:flex;align-items:center}.onboarding-header{justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid var(--border)}.onboarding-title{gap:10px}.onboarding-icon{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:8px;background:#e6f1ee;color:var(--accent)}.onboarding-progress{gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}.onboarding-progress strong{color:var(--accent);font-size:17px}.onboarding-task-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 16px}.onboarding-task{min-width:0;gap:9px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink-soft);padding:11px;text-align:left}.onboarding-task:hover{border-color:rgba(15,118,110,.55);background:#f7fbfa}.onboarding-task-state{display:grid;flex:0 0 18px;place-items:center;color:var(--muted)}.onboarding-task.completed .onboarding-task-state{color:var(--accent)}.onboarding-task-copy{min-width:0;flex:1 1 auto}.onboarding-task-copy small,.onboarding-task-copy strong{display:block}.onboarding-task-copy strong{font-size:13px}.onboarding-task-copy small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}.onboarding-task-action{flex:0 0 auto;gap:2px;color:var(--accent);font-size:11px;font-weight:720}.onboarding-footer{justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:8px 16px;color:var(--muted);font-size:12px}#basic-data,#retirement-goal{scroll-margin-top:96px}.nested-panel{box-shadow:none}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:16px;border-bottom:1px solid var(--border)}.panel-header>*{min-width:0}.panel-title{margin:0;font-size:16px;font-weight:720}.panel-subtitle{margin:4px 0 0;color:var(--muted);font-size:12px}.panel-body{padding:16px}.chart-wrap{min-height:320px}.forecast-loading-card{min-height:320px;border:1px dashed var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--ink-soft);background:rgba(255,255,255,.58)}.forecast-loading-card svg{color:var(--brand);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.asset-forecast-panel.expanded-asset-panel{grid-column:1/-1}.asset-projection-detail{display:grid;gap:12px;margin-top:16px;border-top:1px solid var(--border);padding-top:14px}.asset-projection-chart{min-height:360px}.insight-list{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.insight-list li{border-left:3px solid var(--accent);background:var(--surface-strong);border-radius:6px;padding:9px 10px;font-size:13px;color:var(--ink-soft)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:6px;min-width:0;align-content:start}.field-warning{color:var(--danger);font-weight:650}.field.full{grid-column:1/-1}.field span{color:var(--ink-soft);font-size:12px;font-weight:680}.field small{color:var(--muted);font-size:11px;line-height:1.35}.field:has(>input[type=checkbox]){grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:38px}.field:has(>input[type=checkbox]) small{grid-column:1/-1}.field>input[type=checkbox]{justify-self:end;width:16px;height:16px;accent-color:var(--accent)}.required-label:after{content:" *";color:var(--danger)}.disabled-field{opacity:.72}.disabled-field .input,.disabled-field .select,.disabled-field .textarea,.input:disabled,.select:disabled,.textarea:disabled{background:#edf1ee;color:#8a948f;cursor:not-allowed}.context-help-trigger{display:inline-grid;position:relative;isolation:isolate;width:28px;height:28px;min-width:28px;min-height:28px;padding:0;margin-left:5px;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--accent);font-size:11px;font-weight:800;line-height:1;vertical-align:middle}.context-help-trigger:before{content:"";position:absolute;inset:4px;z-index:-1;border:1px solid #99aaa4;border-radius:50%;background:#fff}.context-help-trigger:focus-visible:before,.context-help-trigger:hover:before{border-color:var(--accent);background:#e6f1ee}.context-help-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.context-help-popover{position:fixed;z-index:1000;width:min(320px,calc(100vw - 20px));max-height:calc(100dvh - 20px);overflow:auto;overscroll-behavior:contain;overflow-wrap:anywhere;border:1px solid rgba(15,118,110,.38);border-radius:8px;background:#fff;color:var(--ink-soft);padding:12px;box-shadow:0 14px 32px rgba(31,41,51,.18)}.context-help-popover strong{color:var(--ink);font-size:13px}.context-help-popover p{margin:7px 0 10px;color:var(--ink-soft);font-size:12px;line-height:1.55}.context-help-close{background:transparent;color:var(--accent);min-height:36px;min-width:64px;padding:8px 12px;font-size:12px;font-weight:720}@media (max-width:760px),(pointer:coarse){.context-help-trigger{width:44px;height:44px;min-width:44px;min-height:44px}.context-help-trigger:before{inset:12px}.context-help-close{min-height:44px;min-width:80px}}.muted-callout{border:1px dashed var(--border);border-radius:8px;background:#f4f7f5;color:var(--muted);padding:10px 12px;font-size:12px}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.tabs{display:flex;gap:8px;min-width:0;max-width:100%;overflow-x:auto;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.tab-button{flex:0 0 auto;min-width:86px;min-height:36px;padding:8px 12px;background:transparent;color:var(--ink-soft);font-weight:650;white-space:nowrap}.tab-button.active{background:var(--surface);color:var(--accent);box-shadow:0 1px 4px rgba(31,41,51,.08)}.cashflow-table-module{display:grid;gap:12px}.filter-row,.filter-stack{display:grid;gap:10px}.filter-row{grid-template-columns:54px minmax(0,1fr);align-items:center}.filter-label{color:var(--muted);font-size:12px;font-weight:720}.filter-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.filter-button{display:inline-flex;min-height:34px;align-items:center;gap:7px;flex:0 0 auto;border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);padding:7px 10px;font-size:12px;font-weight:680}.filter-button span{color:var(--muted);font-size:11px}.filter-button.active{border-color:rgba(15,118,110,.45);background:#e6f1ee;color:var(--accent)}.strategy-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.strategy-option{display:grid;min-height:78px;gap:5px;align-content:start;border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);padding:12px;text-align:left}.strategy-option strong{color:var(--ink);font-size:14px}.strategy-option span{color:var(--muted);font-size:12px;line-height:1.35}.strategy-option.active{border-color:rgba(15,118,110,.5);background:#e6f1ee;box-shadow:0 0 0 3px rgba(15,118,110,.1)}.comparison-allocation,.comparison-strategy,.investment-plan-fields{margin-bottom:14px}.comparison-section-title{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.allocation-editor{display:grid;gap:8px}.allocation-row{display:grid;grid-template-columns:minmax(120px,.8fr) 74px minmax(130px,1fr) minmax(170px,.9fr);gap:10px;align-items:center;min-width:0;border:1px solid var(--border);border-radius:8px;background:#fbfcfa;padding:10px}.allocation-name{color:var(--ink-soft);font-size:13px;font-weight:720}.allocation-share{color:var(--accent);font-size:13px;font-weight:760;text-align:right}.allocation-meter{display:block;height:8px;overflow:hidden;border-radius:999px;background:#dce4df}.allocation-meter span{display:block;height:100%;min-width:0;background:var(--accent)}.allocation-return-field{display:grid;grid-template-columns:minmax(82px,auto) minmax(80px,1fr);gap:8px;align-items:center}.allocation-return-field span{color:var(--muted);font-size:12px;font-weight:680}.property-filter-tabs{max-width:100%}.table-toolbar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:12px}.table-toolbar strong{color:var(--ink-soft)}.sort-header{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;justify-content:flex-start;background:transparent;color:inherit;padding:0;font:inherit;text-align:left;white-space:nowrap}.sort-indicator{color:var(--accent);font-size:12px}.data-section{margin-top:18px}.planner-tools-grid{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;margin-top:18px;align-items:start}.planner-tools-grid .data-section{margin-top:0}.module-panel{overflow:hidden}.module-panel.expanded-module{grid-column:1/-1}.module-header{min-height:66px}.module-toggle{flex:0 0 auto}.planner-tools-grid .collapsed-module{min-width:0;box-shadow:0 4px 14px rgba(31,41,51,.06)}.planner-tools-grid .collapsed-module .module-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:0;padding:12px;border-bottom:0}.planner-tools-grid .collapsed-module .panel-title{font-size:14px;line-height:1.2}.planner-tools-grid .collapsed-module .panel-subtitle{display:-webkit-box;margin-top:4px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.3}.planner-tools-grid .collapsed-module .module-toggle{min-width:38px;width:38px;min-height:38px;padding:8px;gap:0;font-size:0}.planner-tools-grid .collapsed-module .module-toggle svg{flex:0 0 auto}.scenario-panel{margin-bottom:18px}.premium-lock-panel{margin-top:18px;border-style:dashed;box-shadow:none}.premium-lock-content{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px}.premium-lock-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;background:#edf3f0;color:var(--accent)}.compact-premium-lock{min-width:0;margin-top:0}.compact-premium-lock .premium-lock-content{min-height:66px;grid-template-columns:auto minmax(0,1fr);padding:11px}.compact-premium-lock .premium-lock-content .button{grid-column:1/-1;min-height:34px;padding:7px 10px;font-size:12px}.household-stack{display:grid;gap:14px}.household-editor{display:grid;gap:12px}.household-editor>.field{max-width:360px}.household-member-list{display:grid;gap:8px}.household-member-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(140px,.8fr) minmax(120px,.5fr);gap:9px;align-items:center;border:1px solid var(--border);border-radius:8px;background:#fbfcfa;padding:9px}.household-inline-field{display:grid;gap:4px;min-width:0}.household-inline-field>span{color:var(--muted);font-size:11px;font-weight:680}.household-summary{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px}.household-summary>div{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px}.household-summary span,.household-summary strong{display:block}.household-summary span{color:var(--muted);font-size:12px}.household-summary strong{margin-top:5px;color:var(--ink);font-size:17px;overflow-wrap:anywhere}.retirement-detail-stack{display:grid;gap:16px}.detail-grid{align-items:start}.detail-grid,.retirement-table-stack{display:grid;grid-template-columns:1fr;gap:16px}.compact-chart{min-height:280px}.retirement-cashflow-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}.cashflow-monitor{display:grid;gap:12px;min-width:0}.cashflow-stat-strip{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px}.cashflow-stat{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px 12px}.cashflow-stat span{display:block;color:var(--muted);font-size:12px;font-weight:680}.cashflow-stat strong{display:block;margin-top:5px;color:var(--ink);font-size:17px;line-height:1.2;overflow-wrap:anywhere}.cashflow-stat.warning{border-color:#e9c579;background:#fff8e6}.cashflow-stat.warning strong{color:#7a2828}.cashflow-chart-card{display:grid;gap:10px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.chart-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}.chart-card-header p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.35}.cashflow-chart{min-height:300px}.cashflow-no-shortfall{min-height:300px;display:grid;place-items:center;border:1px dashed var(--border);border-radius:8px;background:#f8fbfa;color:var(--muted);padding:18px;text-align:center;font-size:13px}.import-export-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px}.tool-block{display:grid;gap:14px;min-width:0;border:1px solid var(--border);border-radius:8px;padding:14px;background:#fbfcfa}.tool-block.full-span{grid-column:1/-1}.tool-block-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:var(--ink-soft)}.compact-title{font-size:14px}.compact-title,.mini-title{margin:0;color:var(--ink);font-weight:720}.mini-title{font-size:13px}.liability-workflow{margin-top:16px}.housing-stack{display:grid;gap:16px}.housing-stack .liability-workflow{margin-top:0}.housing-block{background:#fbfcfa}.housing-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;align-items:start}.housing-editor,.housing-list{min-width:0}.housing-editor{border-left:1px solid var(--border);padding-left:16px}.housing-editor-header{margin-bottom:12px}.loan-tools-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.loan-tool{display:grid;gap:12px;min-width:0}.loan-tools-grid>.loan-tool:first-child{padding-right:0}.loan-tools-grid>.loan-tool+.loan-tool{border-top:1px solid var(--border);padding-left:0;padding-top:14px}.cashflow-growth-panel{margin-top:16px}.growth-selector{max-width:620px}.growth-editor-fields{border:0;padding:0;margin:0;min-width:0}.growth-layout{display:grid;grid-template-columns:minmax(320px,.86fr) minmax(360px,1.14fr);gap:16px;align-items:start}.growth-card{border:1px solid var(--border);border-radius:8px;padding:12px}.growth-card .tool-block-header{border-bottom:1px solid var(--border);padding-bottom:10px}.growth-preview-card,.growth-rule-card{background:#f8fbfa}.growth-preview-card .data-table th{background:#eef2ef}.check-field{display:flex;align-items:center;gap:9px;min-height:34px;color:var(--ink-soft);font-size:13px;font-weight:680}.check-field input{width:16px;height:16px;accent-color:var(--accent)}.growth-steps-section{border-top:2px solid var(--accent);background:#f8fbfa;margin-top:2px;padding:14px;border-radius:8px}.growth-steps-section>.tool-block-header{border-bottom:1px solid var(--border);padding-bottom:10px}.step-list{display:grid;gap:12px}.step-subsection{display:grid;gap:10px;min-width:0;border-radius:8px;padding:12px}.step-create-section{border:1px dashed var(--accent);background:#fbfdfc}.step-recovery-facts{margin-top:12px}.step-recovery-facts dl{display:grid;grid-template-columns:minmax(72px,auto) minmax(0,1fr);gap:6px 12px;margin:0}.step-recovery-facts dt{color:var(--muted)}.step-recovery-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.step-existing-section{border:1px solid var(--border);background:#f5f8f6}.step-card{display:grid;gap:10px;min-width:0;border:1px solid var(--border);border-radius:8px;padding:12px}.new-step-card,.step-card{background:var(--surface)}.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.schedule-footer{display:flex;justify-content:center;padding-top:2px}.readonly-value{min-height:42px;display:flex;align-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);padding:10px 11px;overflow-wrap:anywhere}.preview-stack{display:grid;gap:12px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px}.summary-item{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px}.summary-item span{display:block;color:var(--muted);font-size:12px}.summary-item strong{display:block;margin-top:5px;font-size:15px;overflow-wrap:anywhere}.export-grid{display:grid;gap:10px}.export-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px}.export-title{font-weight:720}.compact-empty{min-height:92px}.table-wrap{--table-max-visible-height:2143px;width:100%;max-width:100%;max-height:min(72vh,var(--table-max-visible-height));overflow:auto;overscroll-behavior:contain;border-bottom:1px solid var(--border)}.table-wrap .data-table th{position:sticky;top:0;z-index:1}.data-table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:auto}.data-table td,.data-table th{border-bottom:1px solid var(--border);padding:11px 10px;text-align:left;vertical-align:middle;font-size:13px;white-space:nowrap;overflow-wrap:normal;word-break:keep-all}.data-table th{color:var(--muted);font-weight:720;background:#fafbf8}.data-table .actions-column{width:1%;min-width:132px;white-space:nowrap;position:sticky;right:0;z-index:2;background:var(--surface);box-shadow:-10px 0 14px rgba(31,41,51,.06)}.table-wrap .data-table th.actions-column{z-index:4;background:#fafbf8}.row-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;align-items:start}.split>*{min-width:0;max-width:100%}.empty-state{min-height:160px;display:grid;place-items:center;color:var(--muted);border:1px dashed var(--border);border-radius:8px;background:#fbfcfa}.checks{display:grid;gap:8px}.check{border-radius:8px;padding:10px;background:#eef6f5;color:var(--ink-soft);border:1px solid #c7e1de}.check.warning{background:#fff8e6;border-color:#e9c579;color:#6d4918}.check.error{background:#fff0f0;border-color:#e7b5b5;color:#7a2828}.check-title{display:flex;align-items:center;gap:7px;font-weight:720;margin-bottom:4px}.auth-page,.landing-page{min-height:100vh;background:var(--bg)}.auth-page a,.landing-page a{color:inherit;text-decoration:none}.landing-hero{min-height:74vh;background:#f5f6f2}.landing-hero:after{content:"";position:absolute;inset:0;background:rgba(245,246,242,.62);pointer-events:none}.landing-hero-visual{position:absolute;inset:86px 4vw 32px 42%;z-index:0;display:grid;align-items:center}.preview-window{min-height:430px;border:1px solid rgba(15,118,110,.22);border-radius:8px;background:rgba(255,255,255,.9);box-shadow:0 24px 60px rgba(31,41,51,.14);overflow:hidden}.preview-window-top{display:flex;gap:7px;align-items:center;height:42px;border-bottom:1px solid var(--border);background:#eef2ef;padding:0 14px}.preview-window-top span{width:9px;height:9px;border-radius:999px;background:#9ca3af}.preview-window-top span:nth-child(2){background:#a16207}.preview-window-top span:nth-child(3){background:var(--accent)}.preview-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;padding:18px}.preview-chart,.preview-kpi,.preview-list{border:1px solid var(--border);border-radius:8px;background:#fbfcfa;padding:14px}.preview-kpi.wide{grid-column:span 2}.preview-kpi small{display:block;color:var(--muted);font-size:12px}.preview-kpi strong{display:block;margin-top:7px;color:var(--accent);font-size:24px}.preview-chart{grid-column:1/-1;min-height:190px;display:flex;align-items:end;gap:12px}.preview-chart i{flex:1 1;min-width:28px;border-radius:6px 6px 0 0;background:var(--accent)}.preview-chart i:nth-child(2n){background:#2563eb}.preview-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.preview-list span{border-left:3px solid var(--accent);background:#eef2ef;border-radius:6px;padding:9px 10px;color:var(--ink-soft);font-size:12px;font-weight:680}.auth-nav,.landing-nav{position:relative;z-index:2;max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px}.auth-nav,.landing-nav>div{flex-wrap:wrap}.landing-nav>div{display:flex;gap:18px;align-items:center}.auth-nav a:first-child,.landing-brand{color:var(--ink);font-size:15px;font-weight:760}.auth-nav a,.landing-nav a{color:var(--ink-soft);font-size:13px;font-weight:680}.landing-nav .nav-login-link{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,118,110,.24);border-radius:8px;background:rgba(255,255,255,.86);color:var(--accent);padding:0 13px;font-weight:760}.landing-hero-content{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:70px 24px 84px}.eyebrow{margin:0 0 11px;color:var(--accent);font-size:13px;font-weight:760}.landing-hero-content h1{max-width:620px;margin:0;color:var(--ink);font-size:54px;line-height:1.05;font-weight:790}.landing-hero-content>p:not(.eyebrow){max-width:600px;margin:18px 0 0;color:var(--ink-soft);font-size:18px;line-height:1.65}.landing-actions{display:flex;flex-wrap:wrap;gap:12px}.landing-section{max-width:1180px;margin:0 auto;padding:54px 24px}.landing-section-header{max-width:720px;margin-bottom:22px}.auth-intro h1,.landing-band h2,.landing-section-header h2{margin:0;color:var(--ink);font-size:28px;line-height:1.25}.feature-grid,.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.auth-card,.feature-card,.pricing-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.feature-card{min-height:190px;padding:18px}.auth-card-header svg,.auth-intro svg,.feature-card svg,.landing-band svg,.pricing-title-row svg{color:var(--accent)}.feature-card h3,.pricing-card h3{margin:14px 0 8px;color:var(--ink);font-size:17px}.auth-intro p,.feature-card p,.landing-band p,.pricing-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.pricing-card{padding:18px}.pricing-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.pricing-card strong{display:block;margin:10px 0 8px;color:var(--ink);font-size:30px;line-height:1.1}.auth-intro ul,.pricing-card ul{display:grid;gap:9px;margin:16px 0 0;padding:0;list-style:none}.auth-intro li,.pricing-card li{display:flex;gap:8px;align-items:flex-start;color:var(--ink-soft);font-size:13px}.auth-intro li svg,.pricing-card li svg{flex:0 0 auto;color:#2563eb;margin-top:1px}.landing-band{max-width:1180px;margin:8px auto 56px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;border:1px solid var(--border);border-radius:8px;background:#eef2ef;padding:22px 24px}.landing-band h2{margin-top:8px;font-size:22px}.landing-band p{max-width:760px;margin-top:8px}.auth-page{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}.auth-nav{width:min(1180px,calc(100% - 32px));padding-left:0;padding-right:0}.auth-shell{width:min(460px,calc(100% - 32px));margin:0 auto;display:flex;align-items:center;justify-content:center;padding:56px 0 80px}.auth-intro{min-width:0}.auth-intro h1{margin-top:14px;font-size:42px}.auth-intro p{max-width:560px;margin-top:16px;font-size:16px}.auth-card{width:100%;display:grid;gap:14px;padding:18px}.auth-card>h1{margin:0;font-size:clamp(1.375rem,4vw,1.625rem);line-height:1.35;text-wrap:balance}.auth-checking{min-height:86px;place-items:center;color:var(--muted);font-size:13px;font-weight:680}.auth-mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);padding:4px}.auth-mode-tabs button{min-width:0;min-height:36px;overflow:hidden;background:transparent;color:var(--ink-soft);font-size:13px;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.auth-mode-tabs button.active{background:var(--surface);color:var(--accent);box-shadow:0 1px 4px rgba(31,41,51,.08)}.auth-card-header{display:flex;gap:12px;align-items:flex-start;padding:8px 0 2px}.auth-card-header h2{margin:0;color:var(--ink);font-size:22px}.auth-card-header p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.input-with-icon{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:center;height:42px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 10px}.field .input-with-icon{color:var(--muted);font-size:13px;font-weight:400}.input-with-icon:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.14)}.input-with-icon input{width:100%;min-width:0;border:0;outline:none;color:var(--text)}.auth-message{border:1px solid #ebc680;border-radius:8px;background:#fff8e6;color:#704411;padding:10px 12px;font-size:13px;line-height:1.45}.auth-result-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#e6f1ee;color:var(--accent)}.activation-panel,.captcha-box{display:grid;gap:10px;border:1px solid var(--border);border-radius:8px;background:#f8fbfa;padding:12px}.activation-panel strong{color:var(--ink);font-size:14px}.activation-panel p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.activation-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.activation-actions .button{min-width:0}.auth-submit{width:100%}.cookie-consent{position:fixed;left:50%;bottom:16px;z-index:60;width:min(680px,calc(100vw - 28px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--border);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 16px 46px rgba(31,41,51,.18);padding:14px;transform:translateX(-50%)}.cookie-consent strong{color:var(--ink);font-size:14px}.cookie-consent p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.cookie-actions{display:flex;gap:8px;align-items:center}body:has(.compare-page) .cookie-consent,body:has(.landing-page) .cookie-consent{display:none}.landing-page{background:#f5f6f2;color:var(--ink);overflow-x:hidden}.landing-hero{position:relative;min-height:88svh;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(245,246,242,.72) 44%,#eef2ef),radial-gradient(circle at 50% 82%,rgba(37,99,235,.16),transparent 36%),#f5f6f2}.landing-hero:after{display:none}.landing-nav{max-width:1220px;padding:20px 24px}.landing-nav a{transition:color .15s ease}.landing-nav a:hover{color:var(--accent)}.landing-hero-copy{position:relative;z-index:2;width:min(920px,calc(100vw - 32px));margin:0 auto;padding:44px 0 18px;text-align:center}.landing-hero-copy h1{margin:0;color:var(--ink);font-size:clamp(42px,7vw,86px);line-height:.98;font-weight:820}.landing-hero-copy>p:not(.eyebrow){max-width:760px;margin:20px auto 0;color:var(--ink-soft);font-size:clamp(17px,2vw,24px);line-height:1.48}.landing-hero-copy .eyebrow{margin-bottom:14px;color:#2563eb}.landing-actions{justify-content:center;margin-top:28px}.product-stage{position:relative;z-index:1;width:min(1080px,calc(100vw - 32px));margin:18px auto 34px;perspective:1400px}.hero-dashboard{width:100%;min-height:clamp(300px,38vw,470px);overflow:hidden;border:1px solid rgba(31,41,51,.14);border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 30px 80px rgba(31,41,51,.18);transform:rotateX(6deg);transform-origin:top center}.dashboard-bar{height:46px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--border);background:#fbfcfa;padding:0 18px;color:var(--ink-soft);font-size:13px}.dashboard-bar span{width:11px;height:11px;border-radius:999px;background:#2563eb;box-shadow:18px 0 0 var(--accent),36px 0 0 #a16207}.dashboard-bar strong{margin-left:42px;color:var(--ink);font-weight:760}.dashboard-bar em{color:var(--muted);font-style:normal}.dashboard-content{display:grid;grid-template-rows:auto minmax(180px,1fr) auto;gap:16px;padding:18px}.dashboard-metrics{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.dashboard-bottom span,.dashboard-metrics span{min-width:0;border:1px solid var(--border);border-radius:8px;background:#f8fbfa;padding:12px}.dashboard-metrics small{display:block;color:var(--muted);font-size:12px}.dashboard-metrics strong{display:block;margin-top:8px;color:var(--ink);font-size:clamp(20px,2.8vw,34px);line-height:1;overflow-wrap:anywhere}.dashboard-metrics span:first-child strong{color:var(--accent)}.dashboard-curve{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:linear-gradient(90deg,rgba(102,112,133,.08) 1px,transparent 0),linear-gradient(180deg,rgba(102,112,133,.1) 1px,transparent 0),#ffffff;background-size:12.5% 100%,100% 25%}.dashboard-curve:before{content:"";position:absolute;inset:22% 7% 17%;border-bottom:8px solid rgba(15,118,110,.16);border-radius:0 0 54% 44%;transform:skewY(-9deg)}.dashboard-curve .line{position:absolute;left:7%;right:7%;height:4px;border-radius:999px}.line-main{bottom:29%;background:linear-gradient(90deg,var(--accent),#2563eb);transform:rotate(-10deg);transform-origin:left center}.line-soft{bottom:49%;background:#a16207;opacity:.72;transform:rotate(3deg);transform-origin:left center}.dashboard-curve .point{position:absolute;width:13px;height:13px;border:3px solid #fff;border-radius:999px;background:#2563eb;box-shadow:0 3px 10px rgba(31,41,51,.18)}.point-a{left:22%;bottom:37%}.point-b{right:16%;top:26%}.dashboard-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-bottom span{color:var(--ink-soft);font-size:13px;font-weight:720;text-align:center}.landing-statement{max-width:960px;margin:0 auto;padding:76px 24px 48px;text-align:center}.landing-statement h2,.pricing-section .landing-section-header h2,.product-proof-section h2{margin:0;color:var(--ink);font-size:clamp(32px,5vw,58px);line-height:1.08;font-weight:800}.landing-statement>p:not(.eyebrow),.pricing-section .landing-section-header p,.product-proof-section p{max-width:760px;margin:18px auto 0;color:var(--ink-soft);font-size:18px;line-height:1.62}.product-story-grid{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:24px 24px 72px}.product-story{min-height:280px;display:grid;align-content:end;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.46),rgba(255,255,255,.94)),#ffffff;box-shadow:var(--shadow);padding:20px}.product-story:nth-child(2){background:linear-gradient(180deg,rgba(238,242,239,.25),rgba(255,255,255,.94)),#ffffff}.product-story span{color:#2563eb;font-size:12px;font-weight:780}.product-story h3{margin:12px 0 10px;color:var(--ink);font-size:24px;line-height:1.18}.product-story p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.product-proof-section{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.62fr);gap:36px;align-items:center;border-top:1px solid var(--border);padding:72px 24px}.product-proof-section p{margin-left:0}.proof-list{display:grid;gap:10px}.proof-list span{display:flex;min-height:48px;align-items:center;gap:10px;border:1px solid var(--border);border-radius:8px;background:#ffffff;color:var(--ink-soft);padding:12px 14px;font-size:14px;font-weight:700}.proof-list svg{flex:0 0 auto;color:var(--accent)}.pricing-section{max-width:1220px;margin:0 auto;border-top:1px solid var(--border);padding:72px 24px}.pricing-section .landing-section-header{max-width:760px;margin-bottom:24px}@media (max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.onboarding-task-list{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-tools-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.dashboard-grid,.detail-grid,.growth-layout,.housing-split,.import-export-grid,.landing-band,.loan-tools-grid,.retirement-cashflow-charts,.split{grid-template-columns:minmax(0,1fr)}.landing-hero-visual{inset:92px 24px 24px 36%;opacity:.42}.preview-window{min-height:360px}.housing-editor{border-left:0;border-top:1px solid var(--border);padding-left:0;padding-top:14px}.cashflow-stat-strip{grid-template-columns:repeat(2,minmax(150px,1fr))}.feature-grid,.pricing-grid,.product-proof-section,.product-story-grid{grid-template-columns:1fr}.product-stage{width:min(940px,calc(100vw - 32px))}.product-story{min-height:220px}}@media (max-width:760px){.topbar{position:static}.panel-header .row-actions{flex-wrap:wrap;max-width:100%;min-width:0}.cookie-consent{bottom:10px;width:min(680px,calc(100vw - 20px));grid-template-columns:1fr;gap:10px;align-items:stretch;padding:12px}.cookie-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.activation-actions{display:grid;grid-template-columns:1fr}.topbar-inner{grid-template-columns:1fr;padding:14px}.onboarding-footer,.onboarding-header{align-items:flex-start;flex-direction:column}.onboarding-task-list{grid-template-columns:1fr;padding:12px}.onboarding-task{padding:10px}.topbar-actions{justify-content:stretch}.topbar-actions .button,.topbar-actions .select,.user-pill{flex:1 1 160px}.main{padding:14px}.kpi-grid,.planner-tools-grid{grid-template-columns:1fr}.planner-tools-grid .collapsed-module .module-header{padding:11px 12px}.allocation-row,.form-grid,.step-grid,.strategy-segment{grid-template-columns:1fr}.allocation-share{text-align:left}.allocation-return-field,.cashflow-stat-strip,.summary-grid{grid-template-columns:1fr}.export-item{align-items:flex-start;flex-direction:column}.metric-value{font-size:21px}.panel-header{align-items:flex-start;flex-direction:column}.panel-body{padding:12px}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow:visible;scrollbar-width:thin}.tab-button{width:100%;min-width:0}.filter-row{grid-template-columns:1fr;gap:6px}.filter-tabs{width:100%;scrollbar-width:thin}.filter-button{white-space:nowrap}.table-toolbar{align-items:flex-start;flex-direction:column}.table-wrap{border:1px solid var(--border);border-radius:8px;max-height:min(62vh,var(--table-max-visible-height));-webkit-overflow-scrolling:touch}.data-table{width:max-content;min-width:100%;table-layout:auto}.data-table td,.data-table th{min-width:96px;padding:10px 12px}.data-table .actions-column,.data-table th:empty{min-width:118px}.row-actions .button.text{padding:6px 8px}.auth-nav,.landing-nav{padding:16px 14px}.landing-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.landing-nav>div{min-width:0;justify-content:flex-end;gap:12px}.landing-hero{min-height:88svh}.landing-hero-copy{width:min(100%,calc(100vw - 28px));padding-top:28px}.landing-hero-copy h1{font-size:42px}.landing-hero-copy>p:not(.eyebrow){font-size:16px}.product-stage{width:calc(100vw - 28px);margin-top:8px;margin-bottom:28px}.hero-dashboard{min-height:370px;transform:none}.dashboard-content{grid-template-rows:auto minmax(150px,1fr) auto;gap:10px;padding:10px}.dashboard-bottom,.dashboard-metrics{grid-template-columns:1fr;gap:8px}.dashboard-bottom span{text-align:left}.auth-shell,.landing-section{padding:38px 14px}.auth-nav{width:calc(100% - 28px);max-width:330px;display:grid;grid-template-columns:1fr;justify-items:center;gap:8px;margin-left:max(14px,min(30px,calc((100% - 330px) / 2)));margin-right:0;padding-left:0;padding-right:0}.auth-nav>a:last-child{justify-self:center}.auth-shell{position:static;left:auto;width:calc(100% - 28px);max-width:330px;margin-left:max(14px,min(30px,calc((100% - 330px) / 2)));margin-right:0;padding-left:0;padding-right:0;transform:none}.auth-card{width:100%;max-width:none;min-width:0}.landing-statement,.pricing-section,.product-proof-section,.product-story-grid{padding-left:14px;padding-right:14px}.landing-statement{padding-top:52px}.landing-statement h2,.pricing-section .landing-section-header h2,.product-proof-section h2{font-size:34px}.landing-statement>p:not(.eyebrow),.pricing-section .landing-section-header p,.product-proof-section p{font-size:15px}.pricing-section,.product-proof-section{padding-top:48px;padding-bottom:48px}.landing-band{margin:4px 14px 42px;padding:18px}.landing-band .button{width:100%}.auth-intro h1{font-size:32px}.auth-intro p{font-size:14px}.auth-card{padding:14px}.auth-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-mode-tabs button{padding-left:6px;padding-right:6px;font-size:12px}}.landing-single-screen{height:100svh;min-height:660px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.landing-single-screen .landing-nav{width:min(1180px,calc(100vw - 32px));flex-direction:row;align-items:center;min-width:0;padding:18px 0 12px}.single-hero{width:min(1180px,calc(100vw - 32px));min-width:0;margin:0 auto;display:grid;grid-template-columns:1fr;gap:clamp(14px,2.4vh,22px);align-content:center;justify-items:center}.single-hero-copy{min-width:0;width:100%;text-align:center}.single-hero-copy h1{margin:0;color:var(--ink);font-size:clamp(20px,6.2vw,72px);line-height:1.02;font-weight:820;white-space:nowrap;max-width:100%}.single-hero-copy h1 span{display:inline-block}.single-hero-copy h1 span+span{margin-left:-.1em}.single-hero-copy>p:not(.eyebrow){max-width:560px;margin:18px 0 0;color:var(--ink-soft);font-size:clamp(16px,1.7vw,21px);line-height:1.55}.single-proof{display:flex;flex-wrap:wrap;justify-content:center;max-width:100%;gap:9px;margin-top:18px}.single-proof span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.8);color:var(--ink-soft);padding:7px 10px;font-size:13px;font-weight:720}.single-proof svg{color:var(--accent)}.single-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px}.single-product-shot{width:min(100%,820px);min-width:0;justify-self:center;overflow:hidden;border:1px solid rgba(31,41,51,.14);border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 28px 70px rgba(31,41,51,.16)}.shot-header{height:42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:#fbfcfa;padding:0 16px}.shot-header span{width:10px;height:10px;border-radius:999px;background:#2563eb;box-shadow:17px 0 0 var(--accent),34px 0 0 #a16207}.shot-header em,.shot-header strong{color:var(--muted);font-size:12px}.shot-header em{font-style:normal}.shot-metrics{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:10px;padding:14px}.shot-metrics span{min-width:0;border:1px solid var(--border);border-radius:8px;background:#f8fbfa;padding:11px}.shot-metrics small{display:block;color:var(--muted);font-size:11px}.shot-metrics strong{display:block;margin-top:7px;color:var(--ink);font-size:clamp(18px,2.2vw,28px);line-height:1;overflow-wrap:anywhere}.shot-metrics span:first-child strong{color:var(--accent)}.shot-chart{position:relative;height:clamp(210px,24vw,300px);margin:0 14px 14px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:linear-gradient(90deg,rgba(102,112,133,.08) 1px,transparent 0),linear-gradient(180deg,rgba(102,112,133,.1) 1px,transparent 0),#ffffff;background-size:12.5% 100%,100% 25%}.shot-chart:before{display:none}.shot-chart svg{display:block;width:100%;height:100%}.shot-area{fill:url(#assetArea)}.shot-asset-path,.shot-cash-path,.shot-debt-path{fill:none;stroke-linecap:round;stroke-linejoin:round}.shot-asset-path{stroke:var(--accent);stroke-width:5}.shot-cash-path{stroke:#2563eb;stroke-width:4}.shot-debt-path{stroke:#a16207;stroke-width:3;opacity:.78}.shot-dot{fill:#fff;stroke-width:4}.asset-dot{stroke:var(--accent)}.cash-dot{stroke:#2563eb}.single-price{width:min(1180px,calc(100vw - 32px));min-width:0;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 0 18px}.single-price>div{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:baseline;border:1px solid var(--border);border-radius:8px;background:rgba(255,255,255,.82);padding:12px}.single-price span{color:var(--muted);font-size:13px;font-weight:760}.single-price strong{color:var(--ink);font-size:20px;line-height:1}.premium-price{display:inline-flex;align-items:baseline;gap:7px;white-space:nowrap}.premium-price del{color:var(--muted);font-size:13px;font-weight:650;text-decoration-thickness:1px}.single-price small{min-width:0;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:980px){.landing-single-screen{height:auto;min-height:100svh;overflow-x:hidden;overflow-y:auto}.single-hero{gap:20px;padding-top:14px}.single-hero-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}.single-product-shot{width:min(720px,100%);justify-self:center}.single-price{grid-template-columns:repeat(2,minmax(0,1fr))}.single-price>div{grid-template-columns:auto auto}.single-price small{grid-column:1/-1}.single-price .button{grid-column:1/-1;justify-self:center;width:min(100%,260px)}}@media (max-width:640px){.landing-single-screen .landing-nav{width:calc(100vw - 28px);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:start;gap:12px;padding-top:14px}.landing-single-screen .landing-nav>div{min-width:0;gap:10px;justify-content:flex-end}.landing-single-screen .landing-nav a{font-size:12px}.single-hero{position:relative;left:50vw;width:calc(100vw - 28px);margin-left:0;margin-right:0;transform:translateX(-50%)}.single-hero-copy h1{font-size:24px;line-height:1.12;white-space:nowrap}.single-hero-copy h1 span{display:block;margin-left:0}.single-hero-copy>p:not(.eyebrow){font-size:15px}.single-proof{display:grid;grid-template-columns:repeat(2,max-content);justify-content:center;gap:6px}.single-proof span{padding:6px 8px;font-size:12px}.single-actions .button{min-width:0;width:100%;padding-left:10px;padding-right:10px}.single-actions{width:min(100%,240px);max-width:240px;margin:20px auto 0;display:grid;gap:10px}.shot-metrics,.single-actions{grid-template-columns:1fr}.shot-chart{height:170px}}.compare-page{min-height:100vh;overflow-x:hidden;background:var(--bg);color:var(--ink)}.compare-page a{color:inherit;text-decoration:none}.compare-nav{max-width:1180px}.compare-nav .landing-brand{display:inline-flex;align-items:center;min-height:44px;gap:10px;color:#173e35;font-size:15px;font-weight:750;white-space:nowrap}.compare-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:36px 0 64px}.compare-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:18px}.compare-header>a:first-child{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;font-weight:720}.compare-header h1{margin:0;color:var(--ink);font-size:clamp(28px,4vw,46px);text-align:center}.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.compare-grid article{display:flex;flex-direction:column;min-height:420px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:18px}.compare-grid article.featured{border-color:rgba(15,118,110,.5)}.compare-grid h2{margin:0 0 14px;color:var(--ink);font-size:22px}.compare-plan-header{display:flex;min-height:76px;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding-bottom:14px}.compare-plan-header h2{display:flex;align-items:center;gap:7px;margin-bottom:6px}.compare-plan-header p{margin:0;color:var(--muted);font-size:13px}.compare-plan-header .premium-price strong,.compare-plan-header>strong{color:var(--accent);font-size:24px}.compare-feature-list{display:grid;gap:11px;margin:18px 0 0;padding:0;list-style:none}.compare-feature-list li{display:flex;gap:8px;align-items:flex-start;color:var(--ink-soft);font-size:14px;line-height:1.45}.compare-feature-list svg{flex:0 0 auto;margin-top:2px;color:var(--accent)}.compare-plan-action{display:grid;gap:10px;margin-top:auto;padding-top:24px}.compare-plan-action .button{width:100%;min-height:44px}.compare-plan-action .button:not(.secondary){color:#fff}.compare-plan-action p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}@media (max-width:760px){.compare-grid,.compare-header{grid-template-columns:1fr}.compare-shell{width:calc(100% - 32px);padding-top:24px}.compare-header{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.compare-header h1{font-size:26px;text-align:center}.compare-header .button{min-width:0;width:auto;min-height:34px;padding:0 10px;font-size:12px}.compare-grid article{min-height:320px;min-width:0}.compare-plan-header{display:grid;grid-template-columns:1fr}.compare-plan-header .premium-price{justify-content:flex-start}.household-member-row,.household-summary{grid-template-columns:1fr}}.billing-page,.support-page{min-height:100vh;background:var(--bg);color:var(--ink)}.billing-page a,.support-page a{color:inherit;text-decoration:none}.billing-nav{width:min(960px,calc(100% - 32px));display:flex;justify-content:space-between;gap:12px;margin:0 auto;padding:22px 0}.billing-nav a{display:inline-flex;min-height:36px;align-items:center;gap:7px;color:var(--ink-soft);font-size:13px;font-weight:720}.billing-shell,.support-shell{width:min(760px,calc(100% - 32px));display:grid;gap:16px;margin:32px auto 80px}.support-shell{width:min(680px,calc(100% - 32px))}.billing-header{display:flex;align-items:center;gap:12px}.billing-header h1{margin:0;color:var(--ink);font-size:clamp(30px,4vw,44px);line-height:1.1}.billing-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:8px;background:#e6f1ee;color:var(--accent)}.billing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.billing-plan,.payment-panel,.support-form{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.billing-plan{display:flex;justify-content:space-between;gap:12px;min-height:142px;padding:16px;height:100%;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.billing-plan-option{position:relative;min-width:0}.billing-plan-radio{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.billing-plan-radio:disabled{cursor:default}.billing-plan-radio:checked+.billing-plan{border-color:var(--accent);background:#edf8f3;box-shadow:0 0 0 2px var(--accent),0 8px 20px #0f766e12}.billing-plan-radio:focus-visible+.billing-plan{outline:3px solid var(--accent);outline-offset:5px}.billing-plan .billing-plan-title{display:inline-flex;align-items:center;gap:7px;color:var(--ink)}.billing-plan .billing-plan-indicator{display:inline-grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border:1.5px solid #a1ada6;border-radius:50%;transition:background-color .18s ease,border-color .18s ease}.billing-plan-radio:checked+.billing-plan .billing-plan-indicator{background:var(--accent);border-color:var(--accent)}.billing-plan .billing-plan-indicator svg{display:block;color:#fff;animation:billing-check-in .18s ease-out}.billing-free-choice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:13px;padding:12px 0}.payment-spinner{animation:billing-spin .8s linear infinite}.billing-shell .payment-grid{animation:billing-panel-in .18s ease-out}@media (hover:hover){.billing-plan-radio:not(:disabled):hover+.billing-plan{transform:translateY(-2px);border-color:var(--accent)}}.billing-plan-radio:not(:disabled):active+.billing-plan{transform:scale(.98)}@keyframes billing-check-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes billing-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes billing-spin{to{transform:rotate(1turn)}}@keyframes billing-selection-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.billing-plan{transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.billing-plan .billing-plan-indicator{transition:background-color .16s ease,border-color .16s ease}.billing-plan-option .billing-plan-radio:not(:disabled)+.billing-plan{transform:none}.billing-plan .billing-plan-indicator svg,.billing-shell .payment-grid,.billing-shell .payment-panel{animation:billing-selection-fade .16s ease-out}.payment-spinner{animation:none}}.billing-plan.featured{border-color:rgba(15,118,110,.38);background:#f4fbf8}.billing-plan.current{border-color:var(--accent)}.billing-plan-content{width:100%;min-width:0}.billing-plan-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.billing-plan span,.payment-panel-header span{color:var(--muted);font-size:13px;font-weight:760}.billing-plan .billing-current-plan{border-radius:4px;background:#e6f1ee;padding:3px 6px;color:var(--accent);font-size:11px;white-space:nowrap}.billing-plan strong{display:block;margin-top:10px;color:var(--ink);font-size:30px;line-height:1}.billing-premium-price{margin-top:10px;flex-wrap:wrap;white-space:normal}.billing-premium-price strong{margin-top:0}.billing-premium-price del{font-size:16px}.billing-plan .billing-plan-description{display:block;margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.45;font-weight:400}.billing-plan svg{flex:0 0 auto;color:var(--accent)}.payment-panel{display:grid;gap:12px;padding:16px;animation:billing-panel-in .18s ease-out}.payment-panel-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.payment-panel h2{margin:0;color:var(--ink);font-size:18px}.subscription-management{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(15,118,110,.24);border-radius:6px;background:#f4fbf8;padding:12px}.subscription-management strong{color:var(--ink);font-size:14px}.subscription-management p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.subscription-cancel-button{min-height:38px;display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;border:1px solid #d49a93;background:#fff;color:#a64035;padding:0 12px;font-size:13px;font-weight:760}.subscription-cancel-button:hover:not(:disabled){border-color:#b55348;background:#fff8f7}.subscription-actions{display:flex;flex-wrap:wrap;gap:8px}.subscription-secondary-button{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:#fff;color:var(--ink-soft);padding:0 12px;font-size:13px;font-weight:760}.subscription-secondary-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.payment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.payment-method{min-width:0;min-height:92px;display:grid;justify-items:center;gap:6px;align-content:center;border:1px solid var(--border);background:#fbfcfa;color:var(--ink-soft);padding:12px;text-align:center}.payment-method svg{color:var(--accent)}.payment-method span{font-size:14px;font-weight:760}.payment-method small{color:var(--muted);font-size:11px}.support-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px}.support-textarea{min-height:180px}.account-page,.admin-page,.legal-page{min-height:100vh;background:var(--bg);color:var(--ink)}.legal-page{overflow-x:hidden}.account-page a,.admin-page a,.legal-page a{color:inherit;text-decoration:none}.account-shell,.admin-shell,.legal-shell{width:min(960px,calc(100% - 32px));display:grid;gap:16px;margin:22px auto 80px}.account-shell{width:min(780px,calc(100% - 32px))}.account-panel,.account-summary,.admin-metrics article,.admin-panel,.legal-shell{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.account-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px}.account-panel,.account-summary div{min-width:0}.account-summary small,.account-summary span{display:block;color:var(--muted);font-size:12px}.account-summary strong{display:block;margin-top:4px;overflow:hidden;color:var(--ink);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.account-panel{display:grid;gap:12px;padding:16px}.account-panel h2,.admin-panel h2{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:17px}.account-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.account-danger{border-color:#e2b8b3}.account-danger-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:8px}.account-danger-fields .subscription-cancel-button,.admin-refund-form>.button{align-self:end}.landing-legal-links,.legal-links{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:12px}.legal-links{gap:4px 12px;padding-top:8px;border-top:1px solid var(--border)}.legal-links a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;max-width:100%;padding:6px 4px;border-radius:4px;overflow-wrap:anywhere}.landing-legal-links{width:min(1180px,calc(100vw - 32px));justify-content:flex-end;margin:8px auto 0}.admin-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.admin-actions,.admin-row-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-metrics article{display:grid;grid-template-columns:auto 1fr;gap:6px 8px;align-items:center;padding:14px}.admin-metrics svg{color:var(--accent)}.admin-metrics span{color:var(--muted);font-size:12px}.admin-metrics strong{grid-column:1/-1;color:var(--ink);font-size:24px}.admin-panel{display:grid;gap:12px;padding:14px}.compact-table-wrap{overflow-x:auto}.compact-table{width:max-content;min-width:100%;border-collapse:collapse;color:var(--ink-soft);font-size:12px}.compact-table td,.compact-table th{border-bottom:1px solid var(--border);padding:9px 10px;text-align:left;white-space:nowrap}.compact-table th{background:var(--surface-strong);color:var(--ink);font-weight:760}.admin-row-actions button{border:1px solid var(--border);background:#fff;color:var(--ink-soft);padding:5px 8px;font-size:12px}.admin-mfa-shell{width:min(560px,calc(100vw - 32px));margin-top:96px}.promotion-created{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;margin:12px 0;background:var(--surface-soft,#edf7f2);border-radius:12px}.promotion-created code,.promotion-list code{font-size:15px;font-weight:700;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.promotion-list{list-style:none;padding:0;margin:16px 0}.promotion-list li{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 0;border-bottom:1px solid #dce6e1}.promotion-list li>div:first-child{flex:1 1 200px;min-width:0}.promotion-list small{display:block;margin-top:5px;color:#586d63}.promotion-actions{display:flex;flex-wrap:wrap;gap:8px}.promotion-status{font-size:13px;color:#586d63}.promotion-status-active{color:#007a52}.promotion-status-pending,.promotion-status-unknown{color:#946200}.billing-promotion-hint{margin:12px 0;padding:12px 14px;border-radius:10px;background:#edf7f2;color:#285643;font-size:13px;line-height:1.7}.admin-panel-copy{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.admin-ticket-content{max-width:420px;white-space:normal!important}.admin-ticket-content small,.admin-ticket-content strong{display:block}.admin-ticket-content small{margin-top:4px;color:var(--muted);line-height:1.45}.admin-refund-form{display:grid;grid-template-columns:130px minmax(220px,1fr) minmax(180px,.7fr) 90px auto;gap:8px;align-items:center}.legal-shell{gap:10px;min-width:0;padding:22px}.legal-shell>*{min-width:0}.legal-shell h1{margin:0;color:var(--ink);font-size:34px}.legal-shell h2{margin:14px 0 0;color:var(--ink);font-size:17px}.legal-shell p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.7;overflow-wrap:anywhere}.legal-updated{color:var(--muted)!important;font-size:12px!important}.legal-warning{border:1px solid #e8bd70;border-radius:6px;background:#fff8e8;color:#805000;padding:10px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.cookie-preferences{display:grid;gap:10px;margin-top:8px}.cookie-preferences>div{border:1px solid var(--border);border-radius:6px;background:#fbfcfa;padding:12px}.cookie-preferences h2{margin-top:0}.cookie-preferences strong{display:block;margin-top:8px;color:var(--ink);font-size:13px}.auth-referral-note{border-left:3px solid var(--accent);background:#f4fbf8;color:var(--ink-soft);padding:9px 10px;font-size:12px;line-height:1.5}.friends-page{min-height:100vh;background:var(--bg);color:var(--ink)}.friends-page a{color:inherit;text-decoration:none}.friends-shell{width:min(1120px,calc(100% - 32px));display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:22px auto 80px;overflow-wrap:anywhere}.friend-card header,.friend-card-actions,.friend-request-row,.friends-header,.friends-reward-note,.referral-copy-row,.section-heading{display:flex;align-items:center}.friends-header{gap:12px}.friend-card header>div,.friends-header>div,.section-heading>div{min-width:0}.friends-header h1,.section-heading h2{margin:0;color:var(--ink)}.friends-header h1{font-size:clamp(28px,4vw,40px)}.friends-header p,.section-heading p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.friends-header .button,.section-heading .button{margin-left:auto}.comparison-columns,.friends-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.comparison-columns article,.friend-card,.friends-comparison,.friends-panel{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:12px;padding:16px}.comparison-columns h3,.friend-detail-table h3,.friends-comparison h2,.friends-panel h2{display:flex;align-items:center;gap:7px;margin:0;color:var(--ink);font-size:17px}.friend-invite-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.outgoing-list,.permission-fieldset,.premium-inline-lock,.referral-box{border-top:1px solid var(--border);padding-top:12px}.outgoing-list,.referral-box{display:grid;gap:8px}.empty-state,.friend-card small,.outgoing-list small,.referral-box small{color:var(--muted);font-size:12px;line-height:1.45}.friend-card small,.referral-box small{display:block}.referral-copy-row{gap:6px}.friend-preview-grid,.friend-summary-grid,.referral-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.friend-preview-grid span,.friend-summary-grid span,.referral-stats span{min-width:0;border:1px solid var(--border);border-radius:6px;background:#fbfcfa;padding:8px}.friend-preview-grid small,.friend-summary-grid small,.referral-stats small{display:block;color:var(--muted);font-size:11px}.friend-preview-grid strong,.friend-summary-grid strong,.referral-stats strong{display:block;margin-top:4px;color:var(--ink);font-size:13px;line-height:1.25}.referral-box p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.friends-reward-note,.premium-inline-lock{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px}.premium-inline-lock .button{margin-left:auto}.friend-request-row{justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);padding-bottom:9px}.friend-request-row small,.friend-request-row span{display:block}.friend-request-row>span{flex:1 1;min-width:0}.friend-request-row>div{display:flex;flex:0 0 auto;gap:6px}.friends-list-section{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:10px}.friends-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}.friend-card header{justify-content:space-between;gap:8px}.friend-card header>.button,.friends-comparison .section-heading>.button{flex-shrink:0}.friends-comparison .section-heading{align-items:flex-start;gap:12px}.friend-card-actions,.friend-mix{display:flex;flex-wrap:wrap;gap:6px}.friend-mix span{border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--ink-soft);padding:4px 7px;font-size:11px}.permission-fieldset{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0;border-right:0;border-bottom:0;border-left:0;padding-right:0;padding-bottom:0;padding-left:0}.permission-fieldset legend{color:var(--muted);padding:0 0 7px;font-size:12px;font-weight:720}.permission-fieldset label{display:inline-flex;gap:6px;align-items:center;color:var(--ink-soft);font-size:12px}.permission-fieldset input{accent-color:var(--accent)}.friends-comparison{gap:14px}.friend-detail-table{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:0}.friend-detail-table h3{margin-bottom:4px}.friend-detail-table p{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,auto);gap:10px;margin:0;border-bottom:1px solid var(--border);padding:8px 0;color:var(--ink-soft);font-size:12px}.friend-detail-table p>*{min-width:0}.friends-reward-note{border-top:1px solid var(--border);padding-top:12px}@media (max-width:760px){.support-form{grid-template-columns:1fr}.billing-nav{width:calc(100% - 32px);align-items:center;padding:12px 0 4px}.billing-nav a{min-height:44px;font-size:12px}.billing-shell{width:calc(100% - 32px);gap:12px;margin:18px auto 96px}.billing-header{gap:10px}.billing-header h1{font-size:30px}.billing-mark{width:38px;height:38px}.billing-plans{grid-template-columns:minmax(0,1fr);gap:8px}.billing-plan{min-height:148px;gap:6px;padding:12px}.billing-plan strong{margin-top:8px;font-size:27px}.billing-premium-price{gap:5px;margin-top:8px}.billing-premium-price del{font-size:14px}.billing-plan .billing-plan-description{margin-top:10px;font-size:12px}.billing-plan svg{display:none}.payment-panel{gap:10px;padding:12px}.payment-panel-header{gap:8px}.payment-panel-header span{font-size:12px}.payment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.payment-method{min-height:76px;gap:4px;padding:9px}.subscription-management{display:grid;gap:10px}.subscription-cancel-button{justify-content:center}.subscription-actions,.subscription-secondary-button{width:100%}.subscription-secondary-button{justify-content:center}.support-shell{margin-top:18px}.account-shell,.admin-shell,.legal-shell{width:calc(100% - 32px);margin-top:18px}.account-danger-fields,.account-grid,.account-summary,.admin-metrics{grid-template-columns:1fr}.admin-heading{display:grid}.admin-actions .button{flex:1 1 auto}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-refund-form{grid-template-columns:1fr}.legal-shell{padding:16px}.friends-shell{width:calc(100% - 32px);margin-top:18px}.friends-header{align-items:flex-start;flex-wrap:wrap}.friends-header .button{margin-left:0}.comparison-columns,.friend-invite-form,.friends-grid{grid-template-columns:minmax(0,1fr)}.friend-detail-table p{grid-template-columns:repeat(2,minmax(0,1fr))}.friend-detail-table p>strong{grid-column:1/-1}.friend-invite-form .button{justify-content:center}.friend-preview-grid,.friend-summary-grid,.referral-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-inline-lock{align-items:flex-start;flex-wrap:wrap}.premium-inline-lock .button{margin-left:0}}.contract-links{display:flex;flex-wrap:wrap;width:min(1180px,calc(100% - 32px));margin:0 auto;gap:4px 16px;padding:16px 0 calc(20px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--border);font-size:13px;line-height:1.6;background:var(--bg)}.contract-links,.contract-links a{justify-content:center;align-items:center}.contract-links a{display:inline-flex;min-width:44px;min-height:44px;max-width:100%;padding:6px 8px;border-radius:6px;overflow-wrap:anywhere;color:var(--ink-soft);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:4px}.contract-links a:hover,.legal-links a:hover{color:var(--accent);text-decoration-color:currentColor}.contract-links a:focus-visible,.legal-links a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html:has(.planner-navigation){--planner-navigation-clearance:calc(112px + env(safe-area-inset-bottom, 0px));scroll-padding-bottom:var(--planner-navigation-clearance)}body:has(.planner-navigation) .contract-links{padding-bottom:var(--planner-navigation-clearance)}.contract-shell{max-width:760px}.contract-form{display:grid;gap:20px;margin-top:24px}.contract-form label{display:grid;gap:8px;font-size:14px;font-weight:600}.contract-form input,.contract-form select,.contract-form textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #ccd6df;border-radius:10px;padding:12px;background:#fff;color:#152d3d;font:inherit;font-size:16px}.contract-form textarea{min-height:110px;resize:vertical}.contract-form input:read-only,.contract-form textarea:read-only{background:#f4f7fa}.contract-receipt{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:14px;line-height:1.7;border:1px solid #d9e1e8;border-radius:12px;padding:20px}.billing-disclosure{font-size:13px;line-height:1.7;color:#566573;margin:16px 0}.billing-contract-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7}.billing-contract-consent input{flex:0 0 auto;width:18px;height:18px;margin:3px 0;accent-color:var(--accent)}.billing-contract-consent span{min-width:0}.partner-reward-panel{padding:20px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink)}.partner-reward-panel li,.partner-reward-panel p{font-size:13px;line-height:1.75;overflow-wrap:anywhere}.partner-reward-panel ol{padding-left:22px}.partner-reward-panel a{color:var(--accent)}.partner-reward-panel a svg{vertical-align:middle}.partner-reward-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.partner-reward-heading h2{font-size:18px;margin:0}.partner-reward-quota{font-weight:650}.partner-risk-warning{border-left:3px solid #c49338;padding:8px 12px;background:#fff8e6;color:#704411}.partner-claim-form{display:grid;gap:12px;padding-top:12px}.partner-claim-form .button{justify-self:start}@media (max-width:600px){.contract-form .form-actions{display:grid;gap:12px}}.admin-filters,.admin-pagination{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:14px 0}.admin-filters .field{flex:1 1 180px;min-width:0}.admin-pagination{align-items:center}.admin-pagination span{flex:1 1 180px;color:var(--muted);font-size:13px}@media (max-width:760px){.admin-panel{min-width:0}.admin-panel .compact-table-wrap{overflow:visible}.admin-panel .compact-table,.admin-panel .compact-table tbody{display:block;width:100%;min-width:0}.admin-panel .compact-table thead{display:none}.admin-panel .compact-table tr{display:block;border:1px solid #d8e4df;border-radius:12px;padding:10px;margin:12px 0}.admin-panel .compact-table td{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;width:auto;min-width:0;padding:7px 0;white-space:normal;overflow-wrap:anywhere;text-align:left;border:0}.admin-panel .compact-table td:before{content:attr(data-label);color:#61766d;font-size:12px}.admin-panel .compact-table td.admin-row-actions{display:flex;flex-wrap:wrap}.admin-panel .compact-table td.admin-row-actions:before{flex:0 0 70px}.admin-panel .compact-table td.admin-ticket-content{display:block}.admin-panel .compact-table td.admin-ticket-content:before{display:block;margin-bottom:6px}.admin-filters .button{flex:1 1 100%}}