  :root {
    --bg: #ffffff;
    --bg-2: #f4f5f7;
    --ink: #0b0d12;
    --ink-soft: #5a6072;
    --accent: #1ec8ff;
    --accent-2: #b794f4;
    --accent-3: #6ee7a8;
    --line: rgba(11,13,18,0.10);
    --card: #ffffff;
  }
  * { box-sizing: border-box; }
  html, body { margin:0; padding:0; background:var(--bg); color:var(--ink); font-family:"Inter Tight","Inter",sans-serif; -webkit-font-smoothing:antialiased; }
  body { overflow-x:hidden; }
  main { position:relative; z-index:2; }

  .calc-wrap { max-width: 980px; margin: 0 auto; padding: 140px 5vw 80px; }
  .calc-eyebrow { display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);background:rgba(30,200,255,.08);padding:6px 14px;border-radius:999px;margin-bottom:24px }
  .calc-eyebrow .dot { width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent) }
  .calc-h1 { font-size:clamp(32px,5.5vw,52px);font-weight:900;letter-spacing:-.03em;line-height:1.05;margin:0 0 22px }
  .calc-h1 em { font-family:"Playfair Display",Georgia,serif;font-style:italic;font-weight:500;color:var(--accent) }
  .calc-lede { font-size:clamp(16px,2vw,19px);color:var(--ink-soft);line-height:1.6;max-width:680px;margin:0 0 12px }
  .calc-source { font-size:13px;color:var(--ink-soft);line-height:1.55;max-width:680px;font-style:italic;margin:6px 0 0 }

  .calc-card { background:var(--card);border:1px solid var(--line);border-radius:20px;padding:36px clamp(20px,4vw,44px);box-shadow:0 12px 40px rgba(11,13,18,.06),0 2px 6px rgba(11,13,18,.04);margin-top:48px }
  .calc-grid { display:grid;grid-template-columns:1fr 1fr;gap:28px clamp(20px,4vw,48px) }
  @media (max-width:760px){ .calc-grid{grid-template-columns:1fr} }

  .calc-field label { display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em }
  .calc-field .hint { font-size:13px;color:var(--ink-soft);margin:6px 0 10px;font-weight:400;text-transform:none;letter-spacing:0 }
  .calc-input-row { display:flex;align-items:center;gap:10px }
  .calc-input { flex:1;font-family:inherit;font-size:20px;font-weight:700;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg-2);color:var(--ink);outline:none;transition:border-color .15s,background .15s }
  .calc-input:focus { border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px rgba(30,200,255,.12) }
  .calc-suffix { font-size:14px;color:var(--ink-soft);font-weight:500;min-width:60px }

  .calc-slider-wrap { margin-top:6px }
  .calc-slider { width:100%;-webkit-appearance:none;appearance:none;height:6px;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px;outline:none }
  .calc-slider::-webkit-slider-thumb { -webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 4px 14px rgba(30,200,255,.35);cursor:pointer }
  .calc-slider::-moz-range-thumb { width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 4px 14px rgba(30,200,255,.35);cursor:pointer }
  .calc-slider-labels { display:flex;justify-content:space-between;font-size:12px;color:var(--ink-soft);margin-top:8px }

  .calc-result { background:linear-gradient(160deg,rgba(30,200,255,.08),rgba(110,231,168,.06));border:1px solid rgba(30,200,255,.18);border-radius:20px;padding:36px clamp(20px,4vw,44px);margin-top:32px }
  .calc-result h2 { font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 24px;font-weight:700 }
  .calc-result-grid { display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px clamp(16px,3vw,40px) }
  @media (max-width:720px){ .calc-result-grid{grid-template-columns:1fr 1fr} .calc-result-grid > .calc-result-cell:last-child{grid-column:1/-1} }
  @media (max-width:480px){ .calc-result-grid{grid-template-columns:1fr} }
  .calc-result-cell .label { font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:8px }
  .calc-result-cell .number { font-size:clamp(28px,5vw,42px);font-weight:900;letter-spacing:-.02em;color:var(--ink);line-height:1.05 }
  .calc-result-cell .unit { font-size:14px;color:var(--ink-soft);font-weight:500;margin-top:4px }
  .calc-result-cell .highlight { color:var(--accent) }

  .calc-callout { background:#0b0d12;color:#fff;border-radius:20px;padding:36px clamp(20px,4vw,44px);margin-top:32px }
  .calc-callout h2 { font-size:clamp(22px,3.5vw,32px);font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0 0 16px }
  .calc-callout p { color:rgba(255,255,255,.78);line-height:1.65;font-size:16px;margin:0 0 22px;max-width:680px }
  .calc-callout .calc-btn { display:inline-block;background:var(--accent);color:#0b0d12;font-weight:700;padding:14px 26px;border-radius:999px;text-decoration:none;font-size:15px;transition:transform .15s }
  .calc-callout .calc-btn:hover { transform:translateY(-1px) }
  .calc-callout .calc-btn-ghost { display:inline-block;border:1.5px solid rgba(255,255,255,.25);color:#fff;font-weight:600;padding:13px 24px;border-radius:999px;text-decoration:none;font-size:15px;margin-left:10px }

  .calc-explain { margin-top:60px;padding:32px clamp(20px,4vw,40px);border-left:3px solid var(--accent);background:var(--bg-2);border-radius:0 14px 14px 0 }
  .calc-explain h3 { font-size:18px;font-weight:800;margin:0 0 14px }
  .calc-explain p { font-size:15px;line-height:1.65;color:var(--ink);margin:0 0 12px }
  .calc-explain a { color:var(--accent);text-decoration:underline;text-underline-offset:3px }

  .calc-mini-faq { margin-top:48px }
  .calc-mini-faq details { border-bottom:1px solid var(--line);padding:18px 0 }
  .calc-mini-faq summary { cursor:pointer;font-weight:700;font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--ink) }
  .calc-mini-faq summary::after { content:"+";font-size:22px;color:var(--ink-soft) }
  .calc-mini-faq details[open] summary::after { content:"−" }
  .calc-mini-faq details p { margin:14px 0 0;color:var(--ink-soft);line-height:1.65;font-size:15px }

  .calc-disclaimer { margin-top:48px;padding-top:28px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-soft);line-height:1.6 }
