:root{--smirk-ink: #171a1f;--smirk-ink-deep: #111318;--smirk-ivory: #f4e2bf;--smirk-cream: #fff0d2;--smirk-teal: #2f7775;--smirk-amber: #dfa431;--smirk-sand: #cdb890;color-scheme:dark;--font-sans: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--bg: var(--smirk-ink);--bg-accent: var(--smirk-ink-deep);--surface: #1e2229;--surface-raised: #252a33;--border: color-mix(in srgb, var(--smirk-sand) 35%, transparent);--border-subtle: color-mix(in srgb, var(--smirk-sand) 20%, transparent);--text: var(--smirk-cream);--text-muted: var(--smirk-ivory);--text-faint: var(--smirk-sand);--accent: var(--smirk-teal);--accent-hover: color-mix(in srgb, var(--smirk-teal) 75%, var(--smirk-cream));--accent-soft: color-mix(in srgb, var(--smirk-teal) 16%, transparent);--accent-text: var(--smirk-cream);--highlight: var(--smirk-amber);--shadow-sm: 0 1px 2px rgb(0 0 0 / .35);--shadow-md: 0 12px 32px rgb(0 0 0 / .45);--radius-sm: .5rem;--radius-md: .875rem;--radius-lg: 1.25rem;--page-width: 44rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);line-height:1.55;-webkit-font-smoothing:antialiased}body{margin:0;min-height:100dvh;color:var(--text);background:radial-gradient(ellipse 70% 45% at 15% -5%,color-mix(in srgb,var(--smirk-teal) 22%,transparent),transparent 55%),radial-gradient(ellipse 50% 35% at 90% 0%,color-mix(in srgb,var(--smirk-amber) 12%,transparent),transparent 50%),linear-gradient(180deg,var(--bg-accent) 0%,var(--bg) 32%)}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.15em}a:hover{color:var(--accent-hover)}.page{width:min(100% - 2rem,var(--page-width));margin:0 auto;padding:var(--space-6) 0 var(--space-8)}.site-header{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-8);padding-top:var(--space-8)}.site-header .breadcrumb{position:absolute;top:var(--space-8);right:0;font-size:.875rem;color:var(--text-muted)}.site-header .breadcrumb a{text-decoration:none}.site-header .breadcrumb a:hover{text-decoration:underline}.brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.brand-mark{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0}.brand-mark img{width:100%;height:100%;object-fit:contain}.brand-text{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.brand-title{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.brand-subtitle{margin:0;font-size:.9375rem;color:var(--text-muted)}.hero{margin-bottom:var(--space-6)}.hero h1{margin:0 0 var(--space-3);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.15}.hero p{margin:0;max-width:75%;font-size:1.0625rem;color:var(--text-muted)}.section-label{margin:0 0 var(--space-4);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.section-label--spaced{margin-top:var(--space-8)}.app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin:0;padding:0;list-style:none}.app-grid>li{min-width:0}.app-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:var(--space-2);aspect-ratio:1;height:100%;padding:var(--space-4);padding-top:14%;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);text-align:center;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.app-card:is(a,:has(a)){text-decoration:none;color:inherit}a.app-card:hover,.app-card:has(a:hover){border-color:color-mix(in srgb,var(--smirk-teal) 45%,var(--border));box-shadow:var(--shadow-md);transform:translateY(-1px)}.app-card h2{margin:0;font-size:clamp(1.25rem,3.8vw,1.75rem);font-weight:600;letter-spacing:-.02em;line-height:1.2}.app-card__tag{margin:0;max-width:92%;font-family:var(--font-mono);font-size:clamp(.75rem,1.8vw,.875rem);font-weight:500;color:var(--highlight);line-height:1.3}.app-card p{margin:0;flex:0;max-width:90%;font-size:clamp(.875rem,2vw,1rem);color:var(--text-muted);line-height:1.45}.app-card p.app-card__tag{color:var(--highlight)}.app-card--placeholder{border-style:dashed;background:color-mix(in srgb,var(--surface) 72%,transparent);box-shadow:none}.app-card--placeholder p{font-style:italic}.app-card--wip{border-style:dashed}.app-card__badge{display:inline-block;padding:.2em .55em;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 88%,var(--bg))}.site-footer{margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border-subtle);font-size:.875rem;color:var(--text-faint)}.site-footer p{margin:0}.page--wide{--page-width: 52rem}.card{margin-top:var(--space-5);padding:var(--space-5);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.card-heading{margin:0 0 var(--space-3);font-size:1.0625rem;font-weight:600;letter-spacing:-.02em}.card-meta,.footnote{margin:0;font-size:.8125rem;color:var(--text-faint);line-height:1.45}.footnote{margin-top:var(--space-3)}.legend{display:flex;gap:1.25rem;margin:var(--space-3) 0 var(--space-4);padding:0;list-style:none;font-size:.875rem;color:var(--text-muted)}.legend li{display:flex;align-items:center;gap:.45rem}.swatch{width:.75rem;height:.75rem;border-radius:999px}.swatch--result{background:var(--accent)}.swatch--curve{background:var(--highlight)}.bill-chart{display:block;max-width:100%}.chart-plot-bg{fill:var(--bg-accent);stroke:var(--border-subtle)}.chart-grid{stroke:var(--border-subtle);stroke-opacity:.7}.chart-tick,.chart-axis-label{fill:var(--text-faint);font-size:11px;font-family:var(--font-sans)}.chart-axis-label{font-size:12px}.chart-line{stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-line--result{stroke:var(--accent)}.chart-line--curve{stroke:var(--highlight)}.chart-dot{stroke:var(--bg);stroke-width:1.5;cursor:pointer}.chart-dot--result{fill:var(--accent)}.chart-dot--curve{fill:var(--highlight)}.chart-frame{position:relative}.chart-tip{position:absolute;z-index:2;min-width:11.5rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:var(--shadow-md);pointer-events:none}.chart-tip p{margin:0;font-family:var(--font-mono);font-size:.75rem;line-height:1.45;color:var(--text-muted)}.chart-tip-title{font-family:var(--font-sans);font-size:.8125rem;font-weight:600;color:var(--text)}.loading,.error{padding:24px;text-align:center}.error{color:var(--highlight)}.table-wrap{overflow-x:auto;margin-top:var(--space-4)}.projection-table{width:100%;border-collapse:collapse;font-size:.9375rem;font-variant-numeric:tabular-nums}.projection-table th,.projection-table td{padding:.7rem 1rem;border:1px solid var(--border-subtle);text-align:left;white-space:nowrap}.projection-table td.num,.projection-table th.num{text-align:right}.projection-table td.num{font-family:var(--font-mono);font-size:.9rem}.projection-table thead th{background:var(--bg-accent);color:var(--text-faint);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.02em}.projection-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--surface) 70%,var(--bg))}
