:root{--color-ink: #171717;--color-on-ink: #ffffff;--color-ink-hover: #000000;--color-body: #4d4d4d;--color-muted: #737373;--color-hairline: #eaeaea;--color-hairline-strong: #a3a3a3;--color-canvas: #ffffff;--color-canvas-soft: #fafafa;--color-canvas-soft-2: #f5f5f5;--color-blue: #0070f3;--color-blue-deep: #0761d1;--color-success: #0070f3;--color-warning: #ab570a;--color-danger: #ee0000;--color-selection-bg: #171717;--color-selection-text: #f2f2f2;--color-header-bg: rgba(255, 255, 255, .86);--color-header-border: rgba(234, 234, 234, .9);--color-body-gradient-start: rgba(250, 250, 250, .95);--color-body-gradient-end: rgba(255, 255, 255, 0);--color-focus-ring: rgba(0, 112, 243, .12);--color-tap-highlight: rgba(0, 0, 0, .08);--color-progress-low: rgba(238, 0, 0, .07);--color-progress-mid: rgba(171, 87, 10, .1);--color-progress-near: rgba(0, 112, 243, .08);--color-progress-complete: rgba(0, 160, 80, .11);--color-progress-low-accent: #c40000;--color-progress-mid-accent: #ab570a;--color-progress-near-accent: #0070f3;--color-progress-complete-accent: #008a45;--color-status-success-bg: rgba(0, 160, 80, .11);--color-status-success-text: #007a3d;--color-status-success-border: rgba(0, 138, 69, .34);--color-status-warning-bg: rgba(171, 87, 10, .1);--color-status-warning-text: #8a4506;--color-status-warning-border: rgba(171, 87, 10, .34);--color-status-danger-bg: rgba(238, 0, 0, .08);--color-status-danger-text: #c40000;--color-status-danger-border: rgba(196, 0, 0, .28);--shadow-soft: 0 24px 70px rgba(0, 0, 0, .08);--radius-sm: 6px;--radius-md: 8px;--container: 1180px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-ink);background:var(--color-canvas);color-scheme:light}:root[data-theme=dark]{--color-ink: #f4f4f5;--color-on-ink: #111111;--color-ink-hover: #ffffff;--color-body: #c7c7c7;--color-muted: #9a9a9a;--color-hairline: #2e2e2e;--color-hairline-strong: #575757;--color-canvas: #111111;--color-canvas-soft: #181818;--color-canvas-soft-2: #242424;--color-blue: #52a8ff;--color-blue-deep: #8ab4ff;--color-success: #3dd68c;--color-warning: #f5a524;--color-danger: #ff5c5c;--color-selection-bg: #f4f4f5;--color-selection-text: #111111;--color-header-bg: rgba(17, 17, 17, .86);--color-header-border: rgba(64, 64, 64, .78);--color-body-gradient-start: rgba(30, 30, 30, .95);--color-body-gradient-end: rgba(17, 17, 17, 0);--color-focus-ring: rgba(82, 168, 255, .2);--color-tap-highlight: rgba(255, 255, 255, .14);--color-progress-low: rgba(255, 92, 92, .12);--color-progress-mid: rgba(245, 165, 36, .14);--color-progress-near: rgba(82, 168, 255, .13);--color-progress-complete: rgba(61, 214, 140, .14);--color-progress-low-accent: #ff5c5c;--color-progress-mid-accent: #f5a524;--color-progress-near-accent: #52a8ff;--color-progress-complete-accent: #3dd68c;--color-status-success-bg: rgba(61, 214, 140, .14);--color-status-success-text: #8ff0b8;--color-status-success-border: rgba(61, 214, 140, .34);--color-status-warning-bg: rgba(245, 165, 36, .14);--color-status-warning-text: #ffd08a;--color-status-warning-border: rgba(245, 165, 36, .34);--color-status-danger-bg: rgba(255, 92, 92, .13);--color-status-danger-text: #ff9b9b;--color-status-danger-border: rgba(255, 92, 92, .34);--shadow-soft: 0 24px 70px rgba(0, 0, 0, .45);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){--color-ink: #f4f4f5;--color-on-ink: #111111;--color-ink-hover: #ffffff;--color-body: #c7c7c7;--color-muted: #9a9a9a;--color-hairline: #2e2e2e;--color-hairline-strong: #575757;--color-canvas: #111111;--color-canvas-soft: #181818;--color-canvas-soft-2: #242424;--color-blue: #52a8ff;--color-blue-deep: #8ab4ff;--color-success: #3dd68c;--color-warning: #f5a524;--color-danger: #ff5c5c;--color-selection-bg: #f4f4f5;--color-selection-text: #111111;--color-header-bg: rgba(17, 17, 17, .86);--color-header-border: rgba(64, 64, 64, .78);--color-body-gradient-start: rgba(30, 30, 30, .95);--color-body-gradient-end: rgba(17, 17, 17, 0);--color-focus-ring: rgba(82, 168, 255, .2);--color-tap-highlight: rgba(255, 255, 255, .14);--color-progress-low: rgba(255, 92, 92, .12);--color-progress-mid: rgba(245, 165, 36, .14);--color-progress-near: rgba(82, 168, 255, .13);--color-progress-complete: rgba(61, 214, 140, .14);--color-progress-low-accent: #ff5c5c;--color-progress-mid-accent: #f5a524;--color-progress-near-accent: #52a8ff;--color-progress-complete-accent: #3dd68c;--color-status-success-bg: rgba(61, 214, 140, .14);--color-status-success-text: #8ff0b8;--color-status-success-border: rgba(61, 214, 140, .34);--color-status-warning-bg: rgba(245, 165, 36, .14);--color-status-warning-text: #ffd08a;--color-status-warning-border: rgba(245, 165, 36, .34);--color-status-danger-bg: rgba(255, 92, 92, .13);--color-status-danger-text: #ff9b9b;--color-status-danger-border: rgba(255, 92, 92, .34);--shadow-soft: 0 24px 70px rgba(0, 0, 0, .45);color-scheme:dark}}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;overflow-x:hidden;background:linear-gradient(180deg,var(--color-body-gradient-start),var(--color-body-gradient-end) 420px),var(--color-canvas);color:var(--color-body);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:var(--color-tap-highlight)}::selection{background:var(--color-selection-bg);color:var(--color-selection-text)}a{color:inherit;text-decoration:none}button,input,select,summary{font:inherit}button,a,input,select,summary{touch-action:manipulation}button,summary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--color-ink);font-weight:650;letter-spacing:0;text-wrap:balance}h1[id],h2[id],h3[id]{scroll-margin-top:96px}p{text-wrap:pretty}main{min-height:100vh}.skip-link{position:absolute;left:16px;top:12px;z-index:20;transform:translateY(-160%);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);background:var(--color-canvas);color:var(--color-ink);padding:8px 12px;font-size:14px;font-weight:520;transition:transform .16s ease}.skip-link:focus-visible{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:10;padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left);border-bottom:1px solid var(--color-header-border);background:var(--color-header-bg);backdrop-filter:saturate(180%) blur(16px)}.nav-shell{position:relative;display:flex;min-height:64px;max-width:var(--container);margin:0 auto;align-items:center;justify-content:space-between;gap:20px;padding:0 24px}.brand{display:inline-flex;min-width:0;align-items:center;gap:10px;color:var(--color-ink);font-size:15px;font-weight:620}.brand-mark{width:24px;height:24px;flex:0 0 auto;border-radius:5px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{border-radius:999px;color:var(--color-body);padding:7px 10px;font-size:14px;font-weight:450}.nav-links a:hover{background:var(--color-canvas-soft-2);color:var(--color-ink)}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{position:relative;display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--color-hairline);border-radius:999px;background:var(--color-canvas);color:var(--color-ink);transition:border-color .16s ease,background .16s ease,transform .16s ease}.theme-toggle:hover{border-color:var(--color-hairline-strong);background:var(--color-canvas-soft-2);transform:translateY(-1px)}.theme-toggle-sun,.theme-toggle-moon{position:absolute;transition:opacity .16s ease,transform .16s ease}.theme-toggle-sun{width:8px;height:8px;border-radius:999px;background:currentColor;box-shadow:0 -9px 0 -3px currentColor,0 9px 0 -3px currentColor,9px 0 0 -3px currentColor,-9px 0 0 -3px currentColor,6px 6px 0 -3px currentColor,-6px 6px 0 -3px currentColor,6px -6px 0 -3px currentColor,-6px -6px 0 -3px currentColor;opacity:0;transform:rotate(45deg) scale(.72)}.theme-toggle-moon{width:16px;height:16px;border-radius:999px;box-shadow:-5px 0 0 0 currentColor;opacity:1;transform:translate(4px) scale(1)}:root[data-theme=dark] .theme-toggle-sun{opacity:1;transform:rotate(0) scale(1)}:root[data-theme=dark] .theme-toggle-moon{opacity:0;transform:translate(4px) scale(.72)}.page-shell{max-width:var(--container);margin:0 auto;padding:56px 24px 96px}.eyebrow{display:inline-flex;align-items:center;border:1px solid var(--color-hairline);border-radius:999px;background:var(--color-canvas);color:var(--color-muted);padding:5px 10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,ui-monospace,monospace;font-size:12px;line-height:1.35}.hero{display:grid;grid-template-columns:minmax(0,.82fr) minmax(360px,1.18fr);align-items:start;gap:44px}.hero-copy{position:sticky;top:104px;display:grid;gap:22px;min-width:0}.hero-copy h1{max-width:760px;font-size:56px;line-height:1}.hero-copy p{max-width:660px;color:var(--color-body);font-size:18px;line-height:1.6}.hero-actions,.inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border:1px solid var(--color-hairline);border-radius:999px;background:var(--color-canvas);color:var(--color-ink);padding:0 16px;font-size:15px;font-weight:560;transition:transform .16s ease}.button:hover{border-color:var(--color-hairline-strong);transform:translateY(-1px)}.button-primary{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-on-ink)}.button-primary:hover{background:var(--color-ink-hover);color:var(--color-on-ink)}.calculator-card,.content-card,.metric-card,.projection-card{border:1px solid var(--color-hairline);border-radius:var(--radius-md);background:var(--color-canvas);box-shadow:var(--shadow-soft)}.calculator-card{overflow:hidden}.calculator-topline{height:4px;background:linear-gradient(90deg,#007cf0,#00dfd8,#7928ca,#ff0080,#f9cb28)}.calculator-body{display:grid;gap:22px;padding:24px}.calculator-intro{margin-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:7px;min-width:0}.field label{color:var(--color-ink);font-size:13px;font-weight:560}.field span{color:var(--color-muted);font-size:12px;line-height:1.4}.field input,.field select{width:100%;min-height:42px;border:1px solid var(--color-hairline);border-radius:var(--radius-sm);background:var(--color-canvas);color:var(--color-ink);padding:8px 10px;font-variant-numeric:tabular-nums}.field input:hover,.field select:hover{border-color:var(--color-hairline-strong)}.field input:focus-visible,.field select:focus-visible{box-shadow:0 0 0 4px var(--color-focus-ring)}.form-actions{display:flex;flex-wrap:wrap;gap:10px}.calculator-actions{margin-top:16px}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric-card{display:grid;min-width:0;min-height:112px;align-content:start;gap:8px;overflow:hidden;padding:16px;box-shadow:none}.metric-label{color:var(--color-muted);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,ui-monospace,monospace;font-size:12px;line-height:1.35;text-transform:uppercase}.metric-value{min-width:0;color:var(--color-ink);font-size:clamp(20px,4.8vw,24px);font-weight:650;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-note{min-width:0;color:var(--color-muted);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.metric-note-amount,.metric-note-detail{display:block}.metric-note-amount{max-width:100%;color:var(--color-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;word-break:break-word}.projection-card{box-shadow:none;overflow:hidden}.projection-header{display:flex;align-items:center;justify-content:flex-start;gap:16px;list-style:none;padding:14px 16px;transition:background .16s ease}.projection-header::-webkit-details-marker{display:none}.projection-header:hover{background:var(--color-canvas-soft)}.projection-card[open] .projection-header{border-bottom:1px solid var(--color-hairline)}.projection-header:after{width:8px;height:8px;flex:0 0 auto;border-right:2px solid var(--color-muted);border-bottom:2px solid var(--color-muted);content:"";transform:rotate(45deg) translateY(-2px);transition:transform .16s ease}.projection-card[open] .projection-header:after{transform:rotate(225deg) translateY(-2px)}.projection-header h2{font-size:16px;line-height:1.35}.status-pill{margin-left:auto;border:1px solid var(--color-hairline);border-radius:999px;color:var(--color-muted);padding:4px 8px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,ui-monospace,monospace;font-size:12px;white-space:nowrap}.status-pill[data-status=success]{border-color:var(--color-status-success-border);background:var(--color-status-success-bg);color:var(--color-status-success-text)}.status-pill[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg);color:var(--color-status-warning-text)}.status-pill[data-status=danger]{border-color:var(--color-status-danger-border);background:var(--color-status-danger-bg);color:var(--color-status-danger-text)}.projection-table-wrap{max-height:min(560px,70vh);overflow:auto}.projection-table{width:100%;min-width:560px;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.projection-table th,.projection-table td{border-bottom:1px solid var(--color-hairline);padding:10px 12px;text-align:right}.projection-table th:first-child,.projection-table td:first-child{text-align:left}.projection-table th{position:sticky;top:0;z-index:1;background:var(--color-canvas);color:var(--color-muted);font-weight:560}.projection-table tr:last-child td{border-bottom:0}.projection-table tbody tr{position:relative}.projection-table tbody td:first-child{border-left:3px solid transparent}.projection-row-low{background:var(--color-progress-low)}.projection-row-low td:first-child{border-left-color:var(--color-progress-low-accent)}.projection-row-mid{background:var(--color-progress-mid)}.projection-row-mid td:first-child{border-left-color:var(--color-progress-mid-accent)}.projection-row-near{background:var(--color-progress-near)}.projection-row-near td:first-child{border-left-color:var(--color-progress-near-accent)}.projection-row-complete{background:var(--color-progress-complete)}.projection-row-complete td:first-child{border-left-color:var(--color-progress-complete-accent)}.section{padding-top:80px}.section-header{display:grid;max-width:780px;gap:12px;margin-bottom:24px}.section-header h2{font-size:32px;line-height:1.15}.section-header p{color:var(--color-body);font-size:17px}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.content-card{display:grid;gap:12px;min-height:180px;padding:22px;box-shadow:none}.content-card h3{font-size:18px;line-height:1.3}.content-card p,.content-card li{color:var(--color-body);font-size:15px;line-height:1.6}.content-card ul,.article-list{display:grid;gap:10px;margin:0;padding-left:18px}.page-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.page-link-card{display:grid;min-height:150px;align-content:start;gap:12px;border:1px solid var(--color-hairline);border-radius:var(--radius-md);background:var(--color-canvas-soft);padding:20px;color:inherit;text-decoration:none;transition:border-color .2s ease,transform .2s ease}.page-link-card:hover{border-color:var(--color-hairline-strong);transform:translateY(-1px)}.page-link-card span{color:var(--color-ink);font-size:17px;font-weight:650;line-height:1.3}.page-link-card p{color:var(--color-body);font-size:14px;line-height:1.6}.error-page{display:grid;min-height:min(620px,calc(100vh - 220px));align-content:center;max-width:760px;gap:24px}.error-code{color:var(--color-blue);font-size:14px;font-weight:720;letter-spacing:.08em;text-transform:uppercase}.error-page h1{font-size:52px;line-height:1.05}.error-page p{color:var(--color-body);font-size:18px;line-height:1.65}.error-actions{display:flex;flex-wrap:wrap;gap:12px}.seo-section{max-width:860px}.seo-copy{display:grid;gap:18px}.seo-copy p{color:var(--color-body);font-size:17px;line-height:1.75}.faq-section{max-width:860px}.faq-list{display:grid;border-top:1px solid var(--color-hairline)}.faq-item{border-bottom:1px solid var(--color-hairline);padding:18px 0}.faq-item summary{cursor:pointer;color:var(--color-ink);font-size:18px;font-weight:650;line-height:1.35}.faq-item summary::marker{color:var(--color-blue)}.faq-item p{max-width:760px;margin-top:12px;color:var(--color-body);font-size:16px;line-height:1.7}.article{display:grid;max-width:820px;gap:22px}.article h1{font-size:48px;line-height:1.05}.article h2{padding-top:18px;font-size:28px;line-height:1.2}.article p,.article li{color:var(--color-body);font-size:17px;line-height:1.75}.article a{color:var(--color-blue-deep);font-weight:560}.article a:hover{text-decoration:underline}.formula{border:1px solid var(--color-hairline);border-radius:var(--radius-md);background:var(--color-canvas-soft);color:var(--color-ink);padding:18px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,ui-monospace,monospace;font-size:14px;line-height:1.7;overflow-x:auto}.site-footer{border-top:1px solid var(--color-hairline);background:var(--color-canvas-soft)}.footer-shell{display:flex;max-width:var(--container);margin:0 auto;align-items:center;justify-content:space-between;gap:20px;padding:28px 24px;color:var(--color-muted);font-size:13px}.footer-shell nav{display:flex;flex-wrap:wrap;gap:14px}.footer-shell a:hover{color:var(--color-ink)}@media(max-width:1024px){.hero{grid-template-columns:1fr}.hero-copy{position:static}.hero-copy h1{font-size:44px}}@media(max-width:760px){.nav-shell{align-items:flex-start;flex-direction:column;padding:14px 18px}.brand{padding-right:48px}.nav-links{width:100%;overflow-x:auto;padding-bottom:2px}.nav-actions{position:absolute;top:14px;right:18px}.page-shell{padding:36px 18px 72px}.hero-copy h1,.article h1{font-size:36px;line-height:1.08}.hero-copy p,.section-header p,.seo-copy p,.article p,.article li{font-size:16px}.form-grid,.result-grid,.content-grid,.page-link-grid{grid-template-columns:1fr}.calculator-body{padding:18px}.section{padding-top:56px}.section-header h2{font-size:28px}.error-page h1{font-size:36px}.footer-shell{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
