@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.contents{display:contents}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#173e3c;--ink-strong:#0b5350;--teal:#2f766e;--teal-soft:#e0efec;--muted:#718180;--paper:#f4f6f6;--card:#fff;--card-warm:#eef4f2;--line:#e0e9e7;--line-dark:#c4d5d2;--gold:#2f766e;--gold-soft:#e0efec;--green:#2f766e;--green-soft:#e0efec;--violet:#587c78;--violet-soft:#edf3f2;--red:#b66f60;--red-soft:#f8ece8;--orange:#b66f60;--orange-soft:#f8ece8;--shadow:0 14px 34px #17464312;--shadow-soft:0 5px 16px #1746430e;--radius:18px}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth;min-width:320px}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Avenir Next,Hiragino Sans,Yu Gothic,sans-serif}body,.simulator-shell{overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,svg:focus-visible{outline-offset:3px;outline:3px solid #0f625d47}h1,h2,h3,p{margin-top:0}.simulator-shell{background:radial-gradient(circle at 91% -8%, #afdad257, transparent 34rem), var(--paper);min-height:100vh}.app-header,.main-shell,.app-footer{width:min(1280px,100% - 48px);margin:0 auto}.app-header{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f4f6f6e6;justify-content:space-between;align-items:center;gap:28px;min-height:64px;padding:10px 0;display:flex;position:sticky;top:0}.brand-block{align-items:center;gap:10px;min-width:0;display:flex}.brand-glyph{background:var(--ink-strong);border-radius:7px;flex:none;grid-template-columns:repeat(2,4px);justify-content:center;align-items:end;gap:3px;width:25px;height:25px;display:grid}.brand-glyph i{background:#d8eeea;border-radius:3px 3px 1px 1px;width:4px;display:block}.brand-glyph i:first-child{height:10px}.brand-glyph i:last-child{height:15px}.eyebrow{color:var(--green);letter-spacing:.13em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.66rem;font-weight:700;line-height:1.4;display:block}.brand-block h1{color:var(--ink-strong);letter-spacing:-.035em;margin:0;font-family:inherit;font-size:.9rem;font-weight:750;line-height:1}.brand-context{border-left:1px solid var(--line-dark);color:var(--muted);white-space:nowrap;padding-left:10px;font-size:.64rem}.header-actions,.scenario-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex;position:relative}.header-actions .button{min-height:34px;padding:0 10px;font-size:.68rem}.menu-toggle{border:1px solid var(--line-dark);width:36px;height:36px;color:var(--ink-strong);background:var(--card);border-radius:10px;align-content:center;justify-items:center;gap:4px;padding:0;display:grid}.menu-toggle:hover{border-color:var(--teal);background:var(--teal-soft)}.menu-toggle span{background:currentColor;border-radius:2px;width:15px;height:1.5px;display:block}.header-menu{border:1px solid var(--line);background:var(--card);width:min(248px,100vw - 24px);box-shadow:var(--shadow);border-radius:14px;padding:13px;display:none;position:absolute;top:calc(100% + 10px);right:0}.header-menu.is-open{display:block}.header-menu-nav,.header-menu-actions{gap:3px;display:grid}.menu-label{color:var(--muted);letter-spacing:.1em;margin:2px 7px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.61rem;font-weight:700}.header-menu a,.menu-action{min-height:35px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;padding:0 9px;font-size:.74rem;font-weight:700;text-decoration:none;display:flex}.header-menu a:hover,.menu-action:hover,.header-menu a.is-active{color:var(--ink-strong);background:var(--teal-soft)}.header-menu-divider{background:var(--line);height:1px;margin:10px 0}.button{border:1px solid var(--line-dark);min-height:40px;color:var(--ink);letter-spacing:.02em;background:0 0;border-radius:999px;padding:0 15px;font-size:.76rem;font-weight:700;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s}.button:hover{border-color:var(--green);background:var(--green-soft);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.button--primary{border-color:var(--teal-deep,var(--ink-strong));color:var(--card);background:var(--ink-strong)}.button--primary:hover{border-color:var(--ink-strong);background:var(--green)}.button--quiet{color:var(--muted);border-color:#0000}.button--small{min-height:34px;padding:0 12px;font-size:.72rem}.main-shell{padding:18px 0 72px}.assumption-status-row{border:1px solid var(--line);background:var(--card-warm);border-radius:11px;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;padding:11px 13px;display:flex}.assumption-status-copy{gap:2px;min-width:0;display:grid}.assumption-status-copy strong{color:var(--ink-strong);font-size:.78rem}.assumption-status-copy>span:last-child{color:var(--muted);font-size:.65rem;line-height:1.45}.assumption-status-controls{justify-items:end;gap:8px;display:grid}.scenario-controls,.status-pills{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.scenario-controls select,.scenario-name{border:1px solid var(--line-dark);min-height:32px;color:var(--ink);background:var(--card);border-radius:8px;padding:0 9px;font-size:.75rem;font-weight:700}.scenario-name{width:150px;font-weight:500}.status-pill,.review-badge,.compare-badge{min-height:26px;color:var(--muted);background:var(--card-warm);white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;font-size:.67rem;font-weight:700;display:inline-flex}.status-pill--warning,.review-badge{color:var(--orange);background:var(--orange-soft)}.status-pill--confirmed,.status-pill--current{color:var(--teal);background:var(--teal-soft)}.compare-badge{color:var(--green);background:var(--green-soft)}.compare-badge--quiet{color:var(--muted);background:var(--card-warm)}.hero-grid{grid-template-columns:minmax(280px,.76fr) minmax(0,1.7fr);gap:14px;display:grid}.hero-result,.chart-card,.year-card,.table-card,.editor-card,.side-note-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff2}.hero-result{min-height:360px;color:var(--card);background:linear-gradient(160deg,#0a4e4b 0%,#116b65 100%);flex-direction:column;justify-content:flex-end;padding:28px;display:flex;position:relative;overflow:hidden}.hero-result:after{content:"";border:1px solid #d6eee761;border-radius:50%;width:260px;height:260px;position:absolute;top:-90px;right:-90px;box-shadow:0 0 0 24px #d6eee714,0 0 0 48px #d6eee70b}.hero-result .eyebrow{color:#cde9df}.hero-result h2{z-index:1;letter-spacing:-.04em;margin:10px 0 24px;font-family:inherit;font-size:1.65rem;font-weight:650;position:relative}.metric-switch,.chart-toggle{background:#ffffff14;border:1px solid #ffffff3d;border-radius:999px;align-self:flex-start;padding:3px;display:inline-flex}.metric-switch button,.chart-toggle button{color:#fffdf8b8;background:0 0;border:0;border-radius:999px;padding:7px 10px;font-size:.7rem}.metric-switch button.is-active,.chart-toggle button.is-selected{color:var(--ink-strong);background:var(--card);box-shadow:0 2px 8px #04312f24}.hero-number{z-index:1;letter-spacing:-.07em;margin:22px 0 4px;font-family:inherit;font-size:clamp(2.6rem,5vw,4.7rem);font-weight:700;line-height:1;display:block;position:relative}.hero-result>p{z-index:1;color:#fffdf8ad;margin-bottom:22px;font-size:.72rem;position:relative}.delta-callout{z-index:1;color:#c1efcd;background:#3c765b47;border:1px solid #a1dbb166;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;margin-top:2px;padding:12px 14px;display:grid;position:relative}.delta-callout.is-negative{color:#ffc9c1;background:#a34c4240;border-color:#f5b0a773}.delta-callout span,.delta-callout small{font-size:.68rem}.delta-callout strong{grid-row:span 2;font-size:1.35rem;font-weight:600}.delta-callout small{opacity:.72}.hero-foot{z-index:1;color:#eefaf6ad;border-top:1px solid #ffffff2e;justify-content:space-between;gap:10px;margin-top:24px;padding-top:14px;font-family:ui-monospace,monospace;font-size:.62rem;display:flex;position:relative}.chart-card{min-width:0;padding:26px 26px 18px}.chart-head,.section-heading-row,.editor-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.chart-head h2,.section-heading-row h2{letter-spacing:-.04em;margin:8px 0 0;font-family:inherit;font-size:1.65rem;font-weight:650}.chart-toggle{border-color:var(--line);background:var(--card-warm)}.chart-toggle button{color:var(--muted)}.chart-toggle button.is-selected{color:var(--ink);background:var(--card);box-shadow:0 2px 7px #17464317}.chart-context{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:13px;font-size:.69rem;display:flex}.chart-stage{margin:18px -5px 0}.chart-stage svg{width:100%;height:auto;display:block;overflow:visible}.chart-grid-line{stroke:var(--line);stroke-dasharray:2 8}.chart-zero-line{stroke:var(--line-dark)}.chart-axis-label,.chart-year-label{fill:var(--muted);font-family:ui-monospace,monospace;font-size:11px}.chart-year-label{font-size:10px}.chart-bar{opacity:.84;transition:opacity .2s,filter .2s}.chart-bar:hover{opacity:1;filter:brightness(1.06)}.chart-bar--financial{fill:var(--teal)}.chart-bar--property{fill:#8fb0aa}.chart-bar--mortgage{fill:#c9d8d5}.chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.chart-line--netWorth{stroke:var(--ink-strong)}.chart-line--financial{stroke:var(--teal)}.chart-line--base{stroke:#9aafac;stroke-dasharray:7 7;stroke-width:2.5px;opacity:.75}.chart-hit-area{fill:#0000;cursor:crosshair}.chart-selected-line{stroke:#0f625d73;stroke-dasharray:3 5}.chart-selected-dot{stroke:var(--card);stroke-width:3px}.chart-selected-dot--netWorth{fill:var(--ink-strong)}.chart-selected-dot--financial{fill:var(--teal)}.chart-float-label rect{fill:var(--ink-strong);filter:drop-shadow(0 8px 14px #1746432e)}.chart-float-label text{fill:var(--card);font-size:11px}.chart-float-label text+text{fill:#f3d56e;font-weight:700}.chart-float-label text:last-child{fill:#b9e4c4;font-size:10px;font-weight:400}.chart-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:17px;margin-top:2px;font-size:.68rem;display:flex}.chart-legend span{align-items:center;gap:7px;display:inline-flex}.legend-dot{background:var(--teal);border-radius:3px;width:10px;height:10px;display:inline-block}.legend-dot--financial{background:var(--teal)}.legend-dot--property{background:#8fb0aa}.legend-dot--mortgage{background:#c9d8d5}.legend-dot--base{background:#9aafac}.legend-line{background:var(--teal);border-radius:3px;width:20px;height:3px;display:inline-block}.legend-line--netWorth{background:var(--ink-strong)}.legend-line--financial{background:var(--teal)}.legend-line--base{background:#9aafac linear-gradient(90deg,#9aafac 55%,#0000 55%) 0 0/7px 3px}.chart-hint{opacity:.72;margin-left:auto}.assumption-summary{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff2;margin-top:14px;padding:20px 22px 16px}.assumption-summary-head{justify-content:space-between;align-items:end;gap:20px;display:flex}.assumption-summary-head h2{letter-spacing:-.04em;margin:8px 0 0;font-size:1.45rem;font-weight:750}.assumption-summary-head p{max-width:470px;color:var(--muted);text-align:right;margin:0;font-size:.72rem;line-height:1.65}.assumption-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.assumption-card{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--card);text-align:left;border-radius:11px;gap:5px;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:grid}.assumption-card:hover{border-color:var(--line-dark);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.assumption-card.is-selected{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 2px #2f766e14}.assumption-card span{color:var(--muted);font-size:.68rem;font-weight:700}.assumption-card strong{letter-spacing:-.04em;font-size:1.25rem;font-weight:750}.assumption-card small{min-height:2.2em;color:var(--muted);font-size:.62rem;line-height:1.45}.assumption-formula{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 9px;margin-top:10px;font-size:.64rem;display:flex}.assumption-formula>span:first-child{color:var(--ink);margin-right:5px;font-weight:700}.assumption-formula strong{color:var(--ink-strong);font-size:.68rem}.assumption-editor-panel{border-top:1px solid var(--line);min-width:0;margin-top:15px;padding-top:15px}.assumption-editor-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.assumption-editor-head>div{gap:5px;display:grid}.assumption-editor-head h3{color:var(--ink-strong);letter-spacing:-.035em;margin:0;font-size:1.08rem;font-weight:750}.assumption-editor-panel .editor-stack{margin-top:10px}.assumption-projection{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.projection-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.projection-head h3{color:var(--ink-strong);letter-spacing:-.03em;margin:4px 0 0;font-size:.98rem;font-weight:750}.projection-head p{color:var(--muted);margin:4px 0 0;font-size:.66rem;line-height:1.45}.projection-table-wrap{border:1px solid var(--line);border-radius:10px;margin-top:10px;overflow-x:auto}.projection-table{border-collapse:collapse;width:100%;min-width:570px;font-size:.67rem}.projection-table th,.projection-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:7px 9px}.projection-table thead th{color:var(--muted);background:var(--card-warm);font-size:.61rem;font-weight:700}.projection-table th:first-child{text-align:left}.projection-table tbody tr{cursor:pointer;transition:background .12s}.projection-table tbody tr:hover,.projection-table tbody tr.is-selected{background:var(--teal-soft)}.projection-table tbody tr.is-selected th{color:var(--teal)}.projection-table tbody tr:last-child th,.projection-table tbody tr:last-child td{border-bottom:0}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px;display:grid}.stat-card{border:1px solid var(--line);border-top:3px solid var(--line-dark);background:var(--card);min-height:145px;box-shadow:var(--shadow);border-radius:16px;padding:20px}.stat-card--green,.stat-card--violet,.stat-card--red,.stat-card--danger,.stat-card--gold{border-top-color:var(--teal);background:var(--card)}.stat-card span,.cashflow-grid span,.asset-strip span,.breakdown-list span{color:var(--muted);font-size:.68rem;display:block}.stat-card strong{letter-spacing:-.05em;margin:16px 0 6px;font-family:inherit;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:700;display:block}.stat-card small{color:var(--muted);font-size:.65rem}.year-card,.table-card{margin-top:14px;padding:25px 26px}.section-heading-row{align-items:center}.editor-caption{color:var(--muted);font-size:.68rem}.current-note{color:var(--muted);background:var(--green-soft);border-radius:12px;margin:20px 0 0;padding:15px;font-size:.76rem;line-height:1.7}.cashflow-grid{border:1px solid var(--line);background:var(--line);border-radius:13px;grid-template-columns:repeat(6,1fr);gap:1px;margin-top:23px;display:grid;overflow:hidden}.cashflow-grid>div{background:var(--card);min-width:0;padding:15px 12px}.cashflow-grid strong{letter-spacing:-.04em;margin:9px 0 4px;font-size:1.04rem;font-weight:700;display:block}.cashflow-grid small,.breakdown-list small{color:var(--muted);font-size:.63rem;line-height:1.4;display:block}.cashflow-grid .is-negative strong{color:var(--orange)}.breakdown-columns{grid-template-columns:repeat(2,1fr);gap:32px;margin-top:24px;display:grid}.breakdown-columns h3{margin-bottom:10px;font-size:.76rem}.breakdown-list{gap:8px;display:grid}.breakdown-list>div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:5px 12px;padding-bottom:8px;display:grid}.breakdown-list strong{grid-row:span 2;font-size:.9rem}.asset-strip{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px;padding-top:17px;display:grid}.asset-strip>div{gap:5px;display:grid}.asset-strip strong{letter-spacing:-.04em;font-size:1rem}.negative-number{color:var(--orange)!important}.positive-number{color:var(--teal)!important}.workspace-grid{grid-template-columns:minmax(0,1.65fr) minmax(240px,.65fr);gap:14px;margin-top:34px;display:grid}.editor-zone>.section-heading-row{margin:0 0 14px}.editor-tabs{border:1px solid var(--line);background:var(--card-warm);scrollbar-width:thin;border-radius:12px;gap:3px;margin-bottom:12px;padding:4px;display:flex;overflow-x:auto}.editor-tabs button{min-width:max-content;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;padding:10px 12px;font-size:.72rem;font-weight:700}.editor-tabs button.is-active{color:var(--ink);background:var(--card);box-shadow:0 2px 8px #17464314}.editor-stack{gap:8px;min-width:0;display:grid}.editor-card{min-width:0;box-shadow:none;padding:16px}.editor-card h3{letter-spacing:-.035em;margin:5px 0 0;font-family:inherit;font-size:1.08rem;font-weight:700}.editor-help,.notice-box p{color:var(--muted);margin:8px 0 12px;font-size:.71rem;line-height:1.55}.field-grid{gap:8px;margin-top:12px;display:grid}.field-grid--two{grid-template-columns:repeat(2,1fr)}.field-grid--three{grid-template-columns:repeat(3,1fr)}.field-grid--four{grid-template-columns:repeat(4,1fr)}.field-grid label,.rate-field{color:var(--muted);gap:5px;font-size:.66rem;font-weight:700;display:grid}.field-grid input,.field-grid select,.rate-field input,.category-row input,.special-row input,.special-row select,.child-name-input{border:1px solid var(--line-dark);width:100%;min-height:34px;color:var(--ink);background:var(--card);border-radius:8px;padding:0 9px;font-size:.76rem;font-weight:500}.field-grid input:focus,.field-grid select:focus,.category-row input:focus,.special-row input:focus,.special-row select:focus{border-color:var(--green);box-shadow:0 0 0 3px #2d7b691a}.button+.button{margin-left:3px}.text-button{color:var(--green);background:0 0;border:0;padding:0;font-size:.7rem;font-weight:700}.text-button:hover{text-decoration:underline}.text-button--danger{color:var(--orange)}.text-button.is-confirmed{color:var(--teal)}.notice-box{background:#eff8ef;border:1px solid #d4e6d8;border-radius:10px;padding:12px}.notice-box strong{font-size:.78rem}.notice-box p{margin-bottom:5px}.notice-box small{color:var(--muted);font-size:.65rem;display:block}.notice-box .text-button{margin-top:12px;display:block}.notice-box--warm{border-color:var(--line);background:var(--card-warm)}.children-editor{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px;display:grid}.child-editor-card{border:1px solid var(--line);background:var(--card-warm);border-radius:11px;padding:12px}.child-editor-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.child-editor-head>div{gap:4px;display:grid}.child-editor-head span{color:var(--muted);font-size:.64rem}.child-name-input{border:0;border-bottom:1px solid var(--line-dark);background:0 0;border-radius:0;width:90px;min-height:30px;padding:0 5px;font-family:inherit;font-size:1.15rem;font-weight:700}.child-index{font-family:ui-monospace,monospace;color:var(--teal)!important;font-size:.72rem!important}.child-editor-card .field-grid{margin-top:10px}.route-preview{color:var(--muted);margin:9px 0 0;font-size:.62rem;line-height:1.45}.income-card .editor-card-head{align-items:end}.rate-field{align-items:center;gap:8px;display:flex}.rate-field input{width:70px}.income-table-wrap,.annual-table-wrap,.projection-table-wrap{border:1px solid var(--line);border-radius:10px;min-width:0;margin-top:12px;overflow-x:auto}.income-table,.annual-table{border-collapse:collapse;width:100%;min-width:620px;font-size:.7rem}.income-table th,.income-table td,.annual-table th,.annual-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:7px 9px}.income-table thead th,.annual-table thead th{color:var(--muted);background:var(--card-warm);font-size:.64rem;font-weight:700}.income-table th:first-child,.annual-table th:first-child,.annual-table td:nth-child(2){text-align:left}.income-table tbody tr:last-child td,.income-table tbody tr:last-child th,.annual-table tbody tr:last-child td,.annual-table tbody tr:last-child th{border-bottom:0}.income-table input{border:1px solid var(--line);background:var(--card);text-align:right;border-radius:6px;width:130px;min-height:31px;padding:0 7px;font-size:.7rem}.copy-button{color:var(--teal);background:0 0;border:0;padding:0;font-size:.62rem;font-weight:700}.table-muted{color:var(--muted);font-size:.62rem}.source-row{border-left:3px solid var(--green);background:var(--card-warm);gap:3px;margin-top:12px;padding:10px;display:grid}.source-row span,.source-row small{color:var(--muted);font-size:.66rem}.source-row strong{font-size:.77rem}.category-list,.special-list{gap:6px;margin-top:12px;display:grid}.category-row{grid-template-columns:1fr 180px 30px;gap:7px;display:grid}.special-row{grid-template-columns:1fr 110px 180px 30px;gap:7px;display:grid}.icon-button{border:1px solid var(--line);width:30px;min-height:36px;color:var(--orange);background:var(--card);border-radius:7px;font-size:1.1rem}.category-total{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:12px 0 10px;font-size:.66rem;display:flex}.category-total strong{color:var(--teal);font-size:.72rem}.empty-state{border:1px dashed var(--line-dark);color:var(--muted);border-radius:10px;padding:15px;font-size:.7rem}.side-note{align-content:start;gap:12px;display:grid}.side-note-card{box-shadow:none;padding:23px}.side-note-card h3{letter-spacing:-.035em;margin:10px 0 11px;font-family:inherit;font-size:1.35rem;font-weight:700;line-height:1.3}.side-note-card p,.side-note-card li{color:var(--muted);font-size:.72rem;line-height:1.75}.side-note-card ol{margin:15px 0 0;padding-left:18px}.side-note-card--source{background:var(--green-soft)}.side-note-card--source>strong{color:var(--ink-strong);letter-spacing:-.06em;margin:16px 0 10px;font-family:inherit;font-size:2rem;font-weight:700;display:block}.side-note-card--source p{margin-bottom:0}.annual-table tbody tr{cursor:pointer;transition:background .12s}.annual-table tbody tr:hover,.annual-table tbody tr.is-selected{background:var(--teal-soft)}.annual-table tbody tr.is-selected th{color:var(--teal)}.toast{z-index:5;color:#0000;pointer-events:none;background:0 0;border-radius:999px;min-height:0;padding:0;font-size:.72rem;transition:all .2s;position:fixed;bottom:24px;right:24px}.toast:not(:empty){min-height:40px;color:var(--card);background:var(--ink);box-shadow:var(--shadow);align-items:center;padding:0 16px;display:flex}.app-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;padding:20px 0 34px;font-family:ui-monospace,monospace;font-size:.61rem;display:flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-result{min-height:360px}.cashflow-grid{grid-template-columns:repeat(3,1fr)}.workspace-grid{grid-template-columns:1fr}.side-note{grid-template-columns:repeat(2,1fr)}.assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.app-header,.main-shell,.app-footer{width:min(100% - 24px,1280px)}.app-header{gap:14px;padding:10px 0}.brand-context{display:none}.header-actions{flex-wrap:nowrap}.header-actions .button{padding:0 8px}.header-actions .button--primary{flex:none}.chart-head,.section-heading-row,.editor-card-head{display:block}.assumption-status-row{flex-direction:column;align-items:stretch;gap:10px}.assumption-status-controls{justify-items:stretch}.scenario-controls,.status-pills{justify-content:flex-start}.scenario-controls select,.scenario-name{flex:120px;min-width:0}.chart-toggle{margin-top:14px}.chart-context{flex-direction:column;align-items:flex-start;gap:8px}.chart-hint{flex-basis:100%;margin-left:0}.chart-card,.year-card,.table-card,.editor-card,.side-note-card,.assumption-summary{padding:16px}.assumption-summary-head{display:block}.assumption-summary-head p{text-align:left;margin-top:10px}.assumption-editor-head{display:block}.assumption-editor-head .editor-caption{margin-top:8px;display:block}.projection-head{display:block}.projection-head .editor-caption{margin-top:6px;display:block}.chart-head h2,.section-heading-row h2{font-size:1.4rem}.hero-result{justify-content:flex-start;min-height:0;padding:13px 16px 14px}.hero-result h2{margin:4px 0 8px;font-size:1.3rem}.metric-switch button{padding:5px 9px}.hero-number{margin:10px 0 2px;font-size:clamp(2.25rem,13vw,3rem)}.hero-result>p{margin-bottom:8px;font-size:.62rem}.delta-callout{padding:6px 9px}.delta-callout span,.delta-callout small{font-size:.61rem}.delta-callout strong{font-size:1rem}.hero-foot{display:none}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat-card{min-height:120px;padding:14px}.stat-card strong{margin-top:11px;font-size:clamp(1.15rem,6vw,1.45rem)}.stat-card span{min-height:2.4em;line-height:1.25}.cashflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cashflow-grid>div{padding:13px 10px}.breakdown-columns,.children-editor,.side-note{grid-template-columns:1fr}.asset-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.field-grid--three,.field-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-caption{margin-top:8px;display:block}.editor-tabs button{min-height:40px}.category-row{grid-template-columns:1fr 130px 30px}.special-row{grid-template-columns:1fr 90px 130px 30px}.income-table-wrap,.annual-table-wrap{margin-left:-2px;margin-right:-2px}.app-footer{line-height:1.8;display:block}.app-footer span{display:block}}@media (max-width:430px){.field-grid--two,.field-grid--three,.field-grid--four{grid-template-columns:1fr}.cashflow-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cashflow-grid strong{font-size:.9rem}.category-row,.special-row{grid-template-columns:1fr 30px}.category-row input:nth-child(2),.special-row select,.special-row input:nth-child(3){grid-column:1}.category-row .icon-button,.special-row .icon-button{grid-area:1/2/span 2}.income-table{table-layout:fixed;min-width:0}.income-table th,.income-table td{padding:6px 3px}.income-table thead th:first-child{width:32px}.income-table thead th:nth-child(2){width:96px}.income-table thead th:nth-child(3){width:66px}.income-table thead th:nth-child(4){width:58px}.income-table input{width:100%;min-width:0;padding:0 4px;font-size:.62rem}.income-table .copy-button{white-space:nowrap;font-size:.56rem}.year-card,.table-card{border-radius:15px}.chart-stage{margin-left:0;margin-right:0;overflow:hidden}.chart-stage svg{min-width:0}.chart-legend{gap:8px 12px;font-size:.62rem}.hero-foot{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.sign-in-shell,.sign-in-unavailable{background:var(--garden-paper,#f7f8f4);place-items:center;min-height:100svh;padding:24px;display:grid}.sign-in-unavailable{color:var(--garden-ink,#26332b);text-align:center;align-content:center;gap:12px}.sign-in-unavailable h1,.sign-in-unavailable p{margin:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
