:root{--slate:#17334a;--blue:#205e91;--ice:#edf4fa;--line:#bccedc;--amber:#ba620a;--ok:#2d6a4f;--warn:#9a4a07;color:var(--slate);background:var(--ice);font-family:Optima,Candara,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0}
main,nav,footer{max-width:1080px;margin:auto;padding:28px}
nav{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
a{color:inherit}
h1{font-size:clamp(40px,7vw,86px);line-height:1.04;max-width:780px;font-weight:500;letter-spacing:-.02em;margin:.4em 0 .3em}
h2{font-weight:500;font-size:clamp(24px,3vw,32px);line-height:1.2}
p,li{max-width:65ch;line-height:1.65}
section{padding:35px 0;border-top:2px solid var(--line)}
.hero{padding-bottom:40px}
.scan{margin-top:32px;max-width:760px}
.scan label{display:block;font-size:18px;margin-bottom:8px}
.scan-row{display:flex;gap:0;border:2px solid var(--slate);background:#fff}
.scan-row input{flex:1;min-width:0;font:inherit;font-size:18px;padding:14px 16px;border:0;background:transparent;color:var(--slate)}
.scan-row input:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
button,.button{display:inline-block;font:inherit;font-size:17px;padding:14px 22px;background:var(--blue);color:#fff;border:0;cursor:pointer;text-decoration:none}
button[disabled]{background:#5f7d96;cursor:progress}
button:focus-visible,a:focus-visible,.results:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
.fine{font-size:15px;color:#3d566b}
.error{color:var(--warn);font-size:17px}
.results-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap}
.results-head h2{margin:0;overflow-wrap:anywhere}
.sheet{list-style:none;margin:20px 0 0;padding:0;background:#fff;border:1px solid var(--line)}
.sheet li{display:grid;grid-template-columns:128px minmax(0,1fr) minmax(0,1.3fr);gap:6px 24px;padding:16px 20px;border-top:1px solid var(--line);max-width:none;border-left:6px solid var(--line)}
.sheet li:first-child{border-top:0}
.sheet .status{font-size:15px}
.sheet .attention{border-left-color:var(--amber)}
.sheet .attention .status{color:var(--warn)}
.sheet .ok{border-left-color:#7fb69a}
.sheet .ok .status{color:var(--ok)}
.sheet h3{margin:0;font-size:18px;font-weight:600}
.sheet .observed{margin:4px 0 0;font-size:14px;color:#3d566b;overflow-wrap:anywhere;font-family:inherit}
.sheet .meaning{margin:0}
.offer{display:grid;grid-template-columns:1fr 2fr;gap:40px}
.price{font-size:64px;color:var(--blue);margin:0;line-height:1.1}
.book{margin-top:28px;padding:24px;background:#fff;border:1px solid var(--line)}
.book .fine{margin-bottom:0}
footer{font-size:14px;padding-bottom:90px}
@media(max-width:760px){.sheet li{grid-template-columns:1fr}.offer{grid-template-columns:1fr;gap:0}}
@media(max-width:480px){.scan-row{flex-direction:column}.scan-row button{width:100%}main,nav,footer{padding:20px}}
