:root{--blue:#0038A8;--red:#CE1126;--gold:#FCD116;--ink:#14213d;--mut:#5b6478;--line:#d9deea;--bg:#f5f7fc}
*{box-sizing:border-box}
html,body{margin:0}
body{font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
.disclaimer{position:sticky;top:0;z-index:10;background:var(--red);color:#fff;font-size:13px;padding:8px 14px calc(8px) ;text-align:center;border-bottom:3px solid var(--gold);padding-top:max(8px,env(safe-area-inset-top))}
.ack{min-height:calc(100vh - 60px);display:flex;align-items:flex-start;justify-content:center;padding:20px 16px 32px;background:linear-gradient(180deg,#fff 0%,#eef2fb 100%)}
.ack-card{max-width:440px;width:100%;text-align:center}
.ack-logo{width:120px;height:auto;margin:6px auto 2px;display:block}
.ack h1{margin:4px 0 0;color:var(--blue);font-size:26px;letter-spacing:.2px}
.sub{margin:2px 0 16px;color:var(--red);font-weight:600}
.ack-box{background:#fff;border:2px solid var(--blue);border-radius:14px;padding:14px 16px;text-align:left;box-shadow:0 2px 10px rgba(0,56,168,.08)}
.ack-head{margin:0 0 6px;font-weight:700;color:var(--blue);font-size:15px;text-transform:uppercase;letter-spacing:.6px}
.ack-box p{margin:0 0 8px;font-weight:600}
.ack-box ul{margin:0;padding-left:20px;color:var(--mut);font-size:14.5px}
.ack-box li{margin:4px 0}
.btn{appearance:none;border:0;border-radius:12px;font:inherit;font-weight:700;padding:13px 18px;cursor:pointer}
.btn.primary{background:var(--blue);color:#fff;box-shadow:0 2px 0 #00267a}
.btn.primary:active{transform:translateY(1px)}
.btn.ghost{background:#fff;color:var(--blue);border:2px solid var(--line)}
.btn.big{width:100%;margin-top:18px;font-size:18px;padding:15px}
.top{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid var(--line)}
.top-logo{width:46px;height:auto}
.brand{font-weight:800;color:var(--blue);font-size:19px;line-height:1.1}
.tag{color:var(--red);font-size:13.5px;font-weight:600}
.tabs{display:flex;background:#fff;border-bottom:1px solid var(--line);padding:0 12px}
.tab{flex:1;appearance:none;background:none;border:0;font:inherit;font-weight:700;color:var(--mut);padding:12px 6px;border-bottom:3px solid transparent;cursor:pointer}
.tab.on{color:var(--blue);border-bottom-color:var(--gold)}
main{max-width:520px;margin:0 auto;padding:14px 16px 8px}
.hint{margin:0 0 12px;color:var(--mut);font-size:14.5px}
.f{display:block;margin:0 0 12px}
.f>span{display:block;font-weight:700;font-size:14px;margin:0 0 5px}
.row{display:flex;gap:8px;align-items:center}
input,select{font:inherit;font-size:17px;min-height:46px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:9px 11px;width:100%;min-width:0}
select{flex:0 0 auto;width:auto;max-width:62%}
.f>select{width:100%;max-width:none}
input:focus,select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,56,168,.15)}
.unit{flex:0 0 auto;font-weight:700;color:var(--mut);min-width:44px}
.conc{display:flex;flex-direction:column;gap:6px}
.over{font-size:13px;color:var(--mut);padding-left:4px}
.btns{display:flex;gap:10px;margin:6px 0 14px}
.btns .primary{flex:1}
.note{background:#fff8d6;border:1.5px solid var(--gold);border-left:6px solid var(--gold);border-radius:10px;padding:10px 12px;font-size:14.5px;margin:0 0 12px}
.err{background:#fdecee;border:1.5px solid var(--red);border-radius:10px;padding:10px 12px;font-size:14.5px;color:#7d0a17;margin:0 0 12px}
.err ul{margin:4px 0 0;padding-left:18px}
.result{background:var(--blue);color:#fff;border-radius:14px;padding:14px 16px;margin:0 0 12px;border-bottom:4px solid var(--gold)}
.drug{font-size:13.5px;opacity:.9}
.ans{font-size:20px;font-weight:700}
.ans span{font-size:38px;font-weight:800;color:#fff}
.small{font-size:12.5px;opacity:.85}
.center{text-align:center;color:var(--mut);margin:6px 0 10px}
.verdict{border-radius:12px;padding:12px 14px;font-weight:700;margin:0 0 12px}
.verdict.yes{background:#e7f6ec;border:2px solid #1d7a3e;color:#135a2c}
.verdict.no{background:#fdecee;border:2px solid var(--red);color:#7d0a17}
.steps{list-style:none;margin:0 0 10px;padding:0;counter-reset:s}
.steps li{background:#fff;border:1px solid var(--line);border-left:5px solid var(--red);border-radius:10px;padding:9px 12px;margin:0 0 8px}
.st{font-weight:700;font-size:13.5px;color:var(--blue)}
.sw{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14.5px;word-break:break-word}
.formula{font-size:13px;color:var(--mut);background:#fff;border:1px dashed var(--line);border-radius:10px;padding:8px 10px}
.foot{text-align:center;font-size:12px;color:var(--mut);padding:10px 16px 28px}
.ans{overflow-wrap:anywhere}
.steps li.lb{border-left-color:var(--gold);background:#fffbe6}
.wu{min-width:72px}
.tab{font-size:15px}
