*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100vh;padding:16px;background:radial-gradient(ellipse at 85% 75%,rgba(82,42,139,.2),transparent 38%),#0b0f19;color:#fff;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}
.calculator-shell{width:min(100%,620px);margin:0 auto}
.top-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}
.back-link{color:#a9c4dd;text-decoration:none;font-size:13px;font-weight:600}
.back-link:hover{color:#67e8f9}
.lang-btn{flex:0 0 auto;background:linear-gradient(90deg,#06b6d4,#8b5cf6);border:0;color:#fff;padding:8px 15px;border-radius:18px;font-weight:700;font-size:12px;cursor:pointer}
.card{background:linear-gradient(145deg,#131a2c,#1a2238);border:1px solid #2a3655;border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 4px 20px rgba(0,210,255,.1)}
h1{margin:0;color:#38bdf8;font-size:clamp(19px,5vw,23px);line-height:1.35}
.sub{font-size:13px;color:#94a3b8;margin:7px 0 12px;line-height:1.55}
label{display:block;margin:14px 0 6px;font-size:13.5px;color:#cbd5e1;line-height:1.45}
select,input{display:block;width:100%;min-height:45px;padding:11px;border-radius:10px;border:1px solid #334155;background:#0f172a;color:#fff;font-size:15px}
select:focus,input:focus,button:focus-visible,a:focus-visible{outline:2px solid #38bdf8;outline-offset:2px}
.calc-btn{width:100%;margin-top:19px;min-height:47px;padding:13px;border:0;border-radius:12px;background:linear-gradient(90deg,#06b6d4,#6366f1);color:white;font-size:15px;font-weight:700;cursor:pointer}
.calc-btn:active{transform:translateY(1px)}
.result-box{margin-top:17px;padding:15px;background:#0f172a;border-left:4px solid #06b6d4;border-radius:8px;display:none}
.res-label{font-size:13px;color:#94a3b8}
.result-val{font-size:27px;font-weight:800;color:#38bdf8;margin-top:4px}
.status-line{margin:8px 0}
.extra-details{font-size:13px;color:#e2e8f0;margin-top:8px;line-height:1.7;overflow-wrap:anywhere}
.badge-ok,.badge-warn{padding:5px 9px;border-radius:6px;font-size:12px;font-weight:700;display:inline-block}
.badge-ok{background:rgba(16,185,129,.2);color:#34d399}
.badge-warn{background:rgba(239,68,68,.2);color:#f87171}
.info-box{font-size:13px;color:#aebed0;line-height:1.7}
.info-box strong{color:#38bdf8}
.disclaimer{margin:5px 3px 18px;color:#8194aa;font-size:11.5px;line-height:1.6}
@media(max-width:420px){body{padding:12px}.card{padding:15px;border-radius:14px}.top-bar{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.calc-btn{transition:none}}