.finance-lab { --paper:#f6f5ee; --ink:#203a2f; --muted:#647469; --line:#d9ded1; --lime:#d8f37a; --green:#2b6650; --blue:#347a9b; --gold:#a57834; box-sizing:border-box; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; min-height:100vh; padding:0 max(24px,calc((100% - 1280px)/2)); font-size:15px; line-height:1.55; }
.finance-lab *, .finance-lab *::before, .finance-lab *::after { box-sizing:border-box; }
.finance-lab button,.finance-lab input { font:inherit; }
.finance-lab button,.finance-lab summary { cursor:pointer; }
.finance-lab button { color:inherit; }
.finance-lab button:focus-visible,.finance-lab a:focus-visible,.finance-lab summary:focus-visible,.finance-lab input:focus-visible,.finance-lab [tabindex]:focus-visible { outline:3px solid #347a9b; outline-offset:5px; }
.finance-lab .skip-link { position:absolute;top:-80px;background:var(--ink);color:white;padding:12px;z-index:5; }
.finance-lab .skip-link:focus { top:10px; }
.finance-lab .masthead { display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line); }
.finance-lab .wordmark { display:flex;gap:16px;align-items:center;text-decoration:none;color:var(--ink);font-size:11px;letter-spacing:.12em;line-height:1.6;font-weight:700; }
.finance-lab .wordmark small { font-size:8px;color:var(--muted); }
.finance-lab .monogram { font-family:Georgia,serif;font-size:32px;letter-spacing:-3px; }.finance-lab .monogram span {color:#92ad45;}
.finance-lab .preview-label { font-size:9px;letter-spacing:.12em;border:1px solid var(--line);padding:8px 12px;display:flex;align-items:center;gap:9px; }
.finance-lab i { display:inline-block;width:6px;height:6px;border-radius:50%;background:#6b9154; }
.finance-lab .intro { padding:52px 0 39px;display:flex;justify-content:space-between;align-items:flex-end;gap:30px; }
.finance-lab .eyebrow { font-size:9px;letter-spacing:.15em;font-weight:700;margin:0 0 15px; }
.finance-lab h1 { font-family:Georgia,'Times New Roman',serif;font-size:clamp(37px,4.3vw,59px);font-weight:400;letter-spacing:-2px;line-height:1.12;margin:0; }
.finance-lab h1 em { color:#6b7f57;font-weight:400; }
.finance-lab .intro-copy { max-width:310px;color:var(--muted);font-size:13px;padding-bottom:4px; }.finance-lab .intro-copy p {margin:0 0 14px;}.finance-lab .intro-copy span {font-size:10px;}
.finance-lab .model-tabs { display:flex;border-bottom:1px solid var(--line);gap:32px;margin-bottom:22px; }
.finance-lab .model-tabs button { display:flex;align-items:center;gap:12px;padding:17px 3px;border:0;border-bottom:3px solid transparent;background:none;font-size:13px;color:var(--muted); }
.finance-lab .model-tabs button[aria-selected=true] { border-bottom-color:var(--ink);color:var(--ink);font-weight:700; }
.finance-lab .model-tabs button>span:first-child {font:10px Consolas,monospace;color:var(--muted);}.finance-lab .tab-arrow {margin-left:14px;font-size:17px;}
.finance-lab .workbench { display:grid;grid-template-columns:300px minmax(0,1fr);border:1px solid var(--line);border-radius:3px;overflow:hidden;background:#fffef8; }
.finance-lab .assumptions { background:#203a2f;color:#f4f5ea;padding:27px 25px; }
.finance-lab .panel-kicker { display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:.1em;color:#b1c2ad; }.finance-lab .live-label {display:flex;align-items:center;gap:5px;}.finance-lab .live-label i {background:var(--lime);width:4px;height:4px;}
.finance-lab h2 { font:400 30px/1.15 Georgia,serif;letter-spacing:-.6px;margin:26px 0 13px; }
.finance-lab .assumptions>p {font-size:11px;line-height:1.7;color:#bdcbbd;margin-bottom:27px;}
.finance-lab .control { margin-bottom:26px; }.finance-lab .control-top {display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:8px;margin-bottom:13px;}.finance-lab output {font-family:Consolas,monospace;color:var(--lime);font-size:13px;white-space:nowrap;}
.finance-lab input[type=range] {width:100%;height:4px;accent-color:var(--lime);cursor:pointer;margin:0;display:block;}
.finance-lab .range-ends {display:flex;justify-content:space-between;font-size:9px;color:#a1b4a4;margin-top:10px;}
.finance-lab .actions {display:flex;gap:8px;border-top:1px solid #4a5f4b;padding-top:20px;margin-top:27px;}
.finance-lab .actions button {font-size:10px;padding:9px 12px;background:none;border:1px solid #708267;border-radius:2px;color:#f0f3e7;}.finance-lab .actions button:last-child {background:var(--lime);color:#203a2f;border-color:var(--lime);flex:1;}.finance-lab .actions button:hover {filter:brightness(1.13);}
.finance-lab .assumptions .assumption-note {font-size:9px;margin:18px 0 0;color:#b2c3b2;}
.finance-lab .results {padding:25px 29px 23px;min-width:0;}
.finance-lab .result-heading {display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:8px;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:16px;}
.finance-lab .metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;padding:24px 0 27px;border-bottom:1px solid var(--line);}
.finance-lab .metric-label {display:block;font-size:8px;font-weight:700;letter-spacing:.07em;color:var(--muted);}.finance-lab .metric strong {display:block;font:400 clamp(26px,2.6vw,37px)/1.25 Georgia,serif;margin:8px 0 4px;letter-spacing:-1px;}.finance-lab .metric small {font-size:9px;color:var(--muted);display:block;}.finance-lab .caution {color:#a66830;}
.finance-lab .chart-heading {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 0 0;}.finance-lab .chart-heading .eyebrow {font-size:8px;margin-bottom:5px;}.finance-lab h3 {font:400 24px Georgia,serif;margin:0;letter-spacing:-.6px;}
.finance-lab .legend {display:flex;gap:15px;font-size:9px;color:var(--muted);}.finance-lab .legend span {display:flex;align-items:center;gap:5px;}.finance-lab .legend b {width:13px;height:2px;background:var(--green);}.finance-lab .legend .baseline {background:var(--blue);}.finance-lab .legend .floor {background:var(--gold);}
.finance-lab #sim-lab-chart {display:block;width:100%;height:auto;margin-top:11px;overflow:visible;}.finance-lab #sim-lab-chart text {font:10px Consolas,monospace;fill:#66766d;}.finance-lab #sim-lab-chart .chart-caption {font:9px Arial,sans-serif;letter-spacing:.12em;}.finance-lab #sim-lab-chart .grid {stroke:#d9ded1;stroke-width:.8;}
.finance-lab .readout {display:flex;gap:14px;background:#edf0e4;padding:15px 17px;border-left:2px solid #89a358;}.finance-lab .readout>span {font-size:22px;line-height:1.1;}.finance-lab .readout strong {font-size:8px;letter-spacing:.12em;}.finance-lab .readout p {font-size:11px;line-height:1.6;margin:5px 0 0;color:#536455;}
.finance-lab .support {display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0 40px;align-items:start;}
.finance-lab details {border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 0 16px;min-width:0;}.finance-lab summary {list-style:none;font-size:12px;font-weight:700;padding:17px 0 0;display:flex;justify-content:space-between;align-items:center;}.finance-lab summary::-webkit-details-marker {display:none;}.finance-lab summary span {font-size:19px;font-weight:400;}.finance-lab details[open] summary span {transform:rotate(45deg);}
.finance-lab #method-content {font-size:11px;color:var(--muted);}.finance-lab #method-content p {margin:12px 0 0;}.finance-lab .formula {font:10px/1.7 Consolas,monospace;color:var(--ink);background:#e9eddf;padding:12px;overflow-wrap:anywhere;}
.finance-lab .table-scroll {overflow:auto;max-height:280px;margin-top:16px;}.finance-lab table {width:100%;border-collapse:collapse;font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums;}.finance-lab th {font-size:9px;text-align:right;background:#e9eddf;position:sticky;top:0;}.finance-lab th,.finance-lab td {padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;}.finance-lab th:first-child,.finance-lab td:first-child {text-align:left;}.finance-lab caption {text-align:left;color:var(--muted);font-size:10px;padding:0 0 12px;}
.finance-lab footer {display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:23px 0 29px;font-size:9px;color:var(--muted);}.finance-lab footer p {margin:0;line-height:1.9;}.finance-lab footer strong {font-size:8px;font-weight:400;letter-spacing:.12em;}.finance-lab footer>span {font-size:8px;letter-spacing:.1em;}
.finance-lab .status {position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 20px;font-size:12px;border-radius:3px;opacity:0;pointer-events:none;}.finance-lab .status.visible {opacity:1;}
.finance-lab .noscript {padding:20px;background:#f4dfb9;}
@media(max-width:950px) { .finance-lab .intro-copy {max-width:240px;}.finance-lab .workbench {grid-template-columns:260px minmax(0,1fr);}.finance-lab .assumptions {padding:23px 20px;}.finance-lab .results {padding:24px 20px;}.finance-lab .legend {gap:8px;flex-wrap:wrap;}.finance-lab .metrics {gap:10px;}.finance-lab .metric strong {font-size:28px;}.finance-lab .chart-heading {align-items:flex-start;}.finance-lab h3 {font-size:21px;} }
@media(max-width:720px) { .finance-lab {padding:0 19px;}.finance-lab .masthead {padding:19px 0;}.finance-lab .preview-label {font-size:7px;padding:6px 8px;}.finance-lab .wordmark {gap:11px;font-size:9px;}.finance-lab .intro {display:block;padding:32px 0 22px;}.finance-lab h1 {font-size:39px;letter-spacing:-1.5px;}.finance-lab .intro-copy {max-width:450px;margin-top:20px;font-size:12px;}.finance-lab .intro-copy p {margin-bottom:8px;}.finance-lab .model-tabs {gap:14px;margin-bottom:17px;}.finance-lab .model-tabs button {font-size:11px;gap:7px;padding:13px 0;}.finance-lab .tab-arrow {display:none;}.finance-lab .workbench {grid-template-columns:1fr;}.finance-lab .assumptions {padding:24px;}.finance-lab h2 {margin-top:20px;font-size:29px;}.finance-lab #controls {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}.finance-lab .control {margin-bottom:4px;}.finance-lab .control-top {flex-direction:column;align-items:flex-start;gap:6px;font-size:10px;min-height:45px;}.finance-lab .actions {margin-top:20px;}.finance-lab .actions button {flex:1;}.finance-lab .results {padding:23px 18px;}.finance-lab .metrics {gap:10px;padding:20px 0;}.finance-lab .metric strong {font-size:28px;}.finance-lab .metric-label {font-size:7px;}.finance-lab .metric small {font-size:8px;}.finance-lab .chart-heading {display:block;}.finance-lab .legend {margin-top:12px;}.finance-lab .support {grid-template-columns:1fr;gap:20px;}.finance-lab footer {align-items:flex-start;}.finance-lab footer>span {display:none;} }
@media(max-width:390px) { .finance-lab h1 {font-size:34px;}.finance-lab .preview-label {letter-spacing:0;}.finance-lab .metric strong {font-size:24px;}.finance-lab .assumptions {padding:21px 18px;}.finance-lab #controls {gap:13px;} }
