:root {
  --canvas: #f4f7f5; --surface: #ffffff; --surface-2: #e8eeeb; --border: #d3ddd8; --border-strong: #aabbb2;
  --ink: #14201b; --muted: #5d6d65; --accent: #087f5b; --accent-hover: #066b4d; --accent-ink: #ffffff;
  --accent-text: #06714f; --accent-soft: #dff4eb; --accent-strong: #075b42; --accent-border: #a7dfcb;
  --success: #16855b; --success-ink: #ffffff; --success-soft: #e0f4eb; --success-strong: #0f6b49;
  --warning: #a76408; --warning-ink: #ffffff; --warning-soft: #fff0d9; --warning-strong: #865207;
  --danger: #b33a3a; --danger-ink: #ffffff; --danger-soft: #f9e4e4; --danger-strong: #963131;
  --chart-1: #087f5b; --chart-2: #3b82a0; --chart-3: #a76408; --chart-4: #6b5ca5; --chart-5: #b45d7b; --chart-6: #55725f;
  --font-display: "Manrope", ui-sans-serif, system-ui, sans-serif; --font-body: "Manrope", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Manrope", ui-sans-serif, system-ui, sans-serif; --font-mono: "DM Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --display-weight: 800; --display-tracking: -0.035em; --eyebrow-tracking: 0.08em;
  --radius-btn: 0.75rem; --radius-card: 1.25rem; --radius-input: 0.75rem; --border-w: 1px; --border-strong-w: 1px;
  --shadow-card: 0 12px 35px color-mix(in srgb, var(--ink) 8%, transparent); --shadow-raised: 0 18px 50px color-mix(in srgb, var(--ink) 14%, transparent);
  --shadow-btn: 0 5px 14px color-mix(in srgb, var(--accent) 20%, transparent); --card-pad: 1.5rem;
  --caps: none; --caps-tracking: 0; --btn-weight: 700; --measure: 68ch;
  --ring: 0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent); --ring-danger: 0 0 0 3px color-mix(in srgb, var(--danger) 20%, transparent);
  --ease: cubic-bezier(.2,.8,.2,1); --ease-out: cubic-bezier(.16,1,.3,1); --z-toast: 80; --z-menu: 70; --z-tooltip: 90;
}
html[data-theme="dark"] {
  --canvas: #0e1713; --surface: #15211b; --surface-2: #1d2c24; --border: #2b3d33; --border-strong: #496256;
  --ink: #edf6f1; --muted: #a9bbb2; --accent: #35c895; --accent-hover: #55d6a6; --accent-ink: #082017;
  --accent-text: #58d8aa; --accent-soft: #17392d; --accent-strong: #82e5c1; --accent-border: #2b6752;
  --success: #35b984; --success-ink: #082017; --success-soft: #16362a; --success-strong: #72ddb4;
  --warning: #e0a04b; --warning-ink: #241706; --warning-soft: #3b2b18; --warning-strong: #f0bd71;
  --danger: #e87878; --danger-ink: #260d0d; --danger-soft: #3d2020; --danger-strong: #f39a9a;
  --chart-1: #35c895; --chart-2: #67b4d1; --chart-3: #e0a04b; --chart-4: #9b8dd1; --chart-5: #d27f9e; --chart-6: #86ad93;
}
.calc-shell{background:radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 26rem),var(--canvas)}
.calc-top{min-height:7.5rem}
.calc-top h1{max-width:24ch}
.calc-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(20rem,.88fr);gap:1rem;align-items:start}
.calc-results{position:sticky;top:.75rem}
.result-number{font-variant-numeric:tabular-nums;letter-spacing:-.045em}
.metric-row{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:baseline}
.metric-row+.metric-row{margin-top:.65rem;padding-top:.65rem;border-top:var(--border-w) solid var(--border)}
.bar-track{height:.55rem;overflow:hidden;border-radius:999px;background:var(--surface-2)}
.bar-fill{height:100%;border-radius:inherit;background:var(--accent);transition:width 220ms var(--ease-out)}
.compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.25rem}
.compact-form>.field:first-child{grid-column:1/-1}
.compact-slider{min-width:0}
.slider-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.35rem}
.slider-head .label{font-size:.84rem;line-height:1.15}
.slider-number{width:7.25rem;height:2.25rem;border:1px solid var(--border-strong);border-radius:.65rem;background:var(--surface);color:var(--ink);padding:.4rem .65rem;text-align:right;font-family:var(--font-mono);font-weight:600;font-size:.85rem;outline:none}
.slider-number:focus{box-shadow:var(--ring);border-color:var(--accent)}
.range{width:100%;height:1rem;margin:0;appearance:none;background:transparent;cursor:pointer}
.range::-webkit-slider-runnable-track{height:.24rem;border-radius:999px;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--range-progress,0%),var(--border-strong) var(--range-progress,0%),var(--border-strong) 100%)}
.range::-moz-range-track{height:.24rem;border-radius:999px;background:var(--border-strong)}
.range::-moz-range-progress{height:.24rem;border-radius:999px;background:var(--accent)}
.range::-webkit-slider-thumb{appearance:none;width:.95rem;height:.95rem;margin-top:-.355rem;border-radius:999px;background:var(--surface);border:2px solid var(--accent)}
.range::-moz-range-thumb{width:.8rem;height:.8rem;border-radius:999px;background:var(--surface);border:2px solid var(--accent)}
.range:focus{outline:none}
.range:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring)}
.range-scale{display:flex;justify-content:space-between;margin-top:0;color:var(--muted);font-size:.62rem;font-weight:600}
.compact-form .hint,.compact-form .form-actions{display:none}
#calculator .card{padding:1.15rem}
#calculator .card-head{padding-bottom:.85rem;margin-bottom:.9rem}
#calculator .card-title{font-size:1.05rem}
#calculator .card-sub{font-size:.78rem}
#calculator .field .label{font-size:.8rem}
#calculator .select{height:2.45rem}
#method{margin-top:2.75rem;padding-top:2rem}
#method .card{transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
#method .card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}
@media(max-width:64rem){.calc-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.82fr)}.compact-form{gap:.75rem 1rem}}
@media(max-width:52rem){.calc-grid{grid-template-columns:1fr}.calc-results{position:static}.compact-form{grid-template-columns:1fr}.compact-form>.field:first-child{grid-column:auto}}
@media(max-width:40rem){.calc-top{min-height:auto}.calc-top h1{font-size:1.7rem}.compact-form{gap:.85rem}.slider-number{width:6.5rem}}