:root{--ink:#17243a;--muted:#65748b;--line:#e1e7ef;--surface:#fff;--page:#f4f7fb;--primary:#3159d9;--primary-dark:#2445b3;--accent:#e8edff;--success-bg:#e7f8ef;--error-bg:#fff0f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);background:var(--page)}a{color:var(--primary)}h1,h2,p{margin-top:0}h1{margin-bottom:.65rem;font-size:clamp(1.8rem,4vw,2.55rem);letter-spacing:-.04em}h2{margin-bottom:.45rem;font-size:1.2rem;letter-spacing:-.02em}p{line-height:1.6}.muted{color:var(--muted)}.small-text{font-size:.85rem}.eyebrow{margin-bottom:.6rem;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.16em}
.auth-page{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,#e7edff 0,transparent 38%),var(--page)}.auth-card{width:min(100%,430px);padding:clamp(26px,5vw,42px);background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 65px #192c5514}.brand-mark{display:grid;width:48px;height:48px;place-items:center;margin-bottom:20px;border-radius:15px;background:var(--primary);color:#fff;font-size:1.4rem;font-weight:800;box-shadow:0 8px 18px #3159d933}.brand-mark.small{width:32px;height:32px;margin:0;border-radius:10px;font-size:.62rem;letter-spacing:-.04em}
label{display:block;margin:18px 0 8px;font-size:.9rem;font-weight:700}input{display:block;width:100%;padding:13px 14px;border:1px solid #ccd5e3;border-radius:10px;background:#fff;color:var(--ink);font:inherit}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #8ca5ff;outline-offset:3px}input::placeholder{color:#9aa6b7}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 17px;border:0;border-radius:10px;font:inherit;font-weight:750;text-decoration:none;cursor:pointer;transition:background .15s ease,transform .15s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-dark)}.button-full{width:100%;margin-top:24px}.button-quiet{padding:9px 14px;border:1px solid var(--line);background:transparent;color:var(--primary)}.footnote{margin:22px 0 0;color:var(--muted);font-size:.78rem}
.topbar{display:flex;min-height:74px;align-items:center;justify-content:space-between;gap:20px;padding:14px max(24px,calc((100vw - 1060px)/2));border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none}.user-actions{display:flex;align-items:center;gap:16px}.user-actions form{margin:0}.user-label{color:var(--muted);font-size:.9rem}.container{width:min(100% - 40px,900px);margin:0 auto;padding:44px 0 28px}.intro{margin-bottom:28px}.intro .muted{margin-bottom:0}.calculator-card,.reference-card{margin-bottom:22px;padding:clamp(22px,4vw,32px);border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 35px #192c5509}.calculator-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.calculator-heading .muted{margin-bottom:0;font-size:.9rem}.icon-circle{display:grid;flex:0 0 42px;height:42px;place-items:center;border-radius:50%;background:var(--accent);color:var(--primary);font-size:1.25rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.calculator-form .button{min-width:170px;margin-top:24px}.result-panel{margin-top:28px;padding:24px;border:1px solid #dce5ff;border-radius:14px;background:#f4f7ff}.result-panel h2{margin:0;font-size:2.7rem;letter-spacing:-.05em}.result-label{margin:2px 0 8px;font-size:1.1rem;font-weight:800}.text-link{font-weight:750;text-decoration:none}.text-link:hover,.source-note a:hover{text-decoration:underline}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.92rem}th,td{padding:13px 10px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}tbody tr:last-child td{border-bottom:0}.source-note{margin:18px 0 0;font-size:.82rem}footer{padding:12px 0 20px;color:var(--muted);text-align:center;font-size:.8rem}.alert{margin:18px 0;padding:12px 14px;border-radius:10px;font-size:.9rem}.alert-error{background:var(--error-bg);color:#9e2626}.alert-success{background:var(--success-bg);color:#17643d}
@media(max-width:560px){.topbar{padding:13px 18px}.user-label{display:none}.container{width:min(100% - 28px,900px);padding-top:30px}.form-grid{grid-template-columns:1fr;gap:0}.calculator-form .button{width:100%}}

.auth-switch{margin:22px 0 0;text-align:center;font-size:.9rem}.auth-switch a{font-weight:750;text-decoration:none}.auth-switch a:hover{text-decoration:underline}

.password-help{margin:-2px 0 10px;font-size:.8rem;line-height:1.5}
