.km-page{padding:56px 0 100px;display:flex;flex-direction:column;align-items:center}
.km-intro{text-align:center;max-width:46ch;margin-bottom:20px}
.km-intro .hero__eyebrow{margin-bottom:18px}
.km-intro h1{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.4rem);letter-spacing:-0.02em;margin:0 0 10px}
.km-intro p{color:var(--ink-soft);margin:0;line-height:1.6}
.km-tabs{display:flex;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px;max-width:fit-content;margin:0 auto 20px}
.km-tab{border:none;background:transparent;padding:9px 18px;border-radius:999px;font-weight:600;font-size:.84rem;color:var(--ink-soft);cursor:pointer;transition:all var(--dur-fast) var(--ease);white-space:nowrap}
.km-tab:hover{color:var(--ink)}.km-tab.is-active{background:var(--ink);color:#fff}
.km-content{width:100%;max-width:440px}
.km-panel{display:none}.km-panel.is-active{display:block}
.km-calculator{background:var(--ink);border-radius:var(--radius-lg);padding:28px 24px 20px;box-shadow:0 30px 60px -25px rgba(27,31,59,.45);display:flex;flex-direction:column;gap:14px}
.km-input-group{display:flex;flex-direction:column;gap:4px;flex:1}
.km-input-group label{font-size:.74rem;font-weight:600;color:rgba(255,255,255,.5)}
.km-input{border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:12px 14px;font-family:var(--font-mono);font-size:1rem;font-weight:600;background:rgba(255,255,255,.06);color:#fff;text-align:center;transition:border-color var(--dur-fast) var(--ease)}
.km-input:focus{outline:none;border-color:var(--accent)}
.km-input-row{display:flex;gap:8px}
.km-result{background:rgba(255,255,255,.06);border-radius:12px;padding:16px;text-align:center}
.km-result-label{font-size:.66rem;font-weight:600;color:rgba(255,255,255,.4);display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}
.km-result-value{font-family:var(--font-mono);font-size:1.3rem;font-weight:700;color:var(--highlight)}