:root{--red:#a52332;--dark:#801b27;--pale:#fff1f2;--ink:#1f2937;--border:#cbd5e1}*{box-sizing:border-box}body{margin:0;font:1rem/1.55 Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}main{max-width:1000px;margin:auto;padding:24px 18px}header{border-top:6px solid var(--red);background:var(--pale);padding:22px}h1{margin:0;color:var(--dark);font-size:clamp(1.8rem,5vw,2.5rem)}h2{color:var(--dark);margin-top:0}p{margin:10px 0}.eyebrow{font-size:.85rem;font-weight:bold;letter-spacing:.04em}.nav{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}button{font:inherit;padding:10px 16px;cursor:pointer;border:1px solid var(--red);background:white;color:var(--dark);font-weight:bold;min-height:44px}button[aria-pressed=true],.primary{background:var(--red);color:white}.layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card{border:1px solid var(--border);padding:20px;min-width:0}.result{background:var(--pale);border:2px solid var(--red)}label{display:block;font-weight:bold;margin-top:16px}input,select,textarea{font:inherit;padding:9px;border:1px solid #64748b;max-width:100%;background:white;color:var(--ink)}input[type=number]{width:110px}input[type=range]{width:100%;accent-color:var(--red);min-height:44px;padding:0}.pair{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px;align-items:center}.big{font-size:2.1rem;font-weight:bold;color:var(--dark)}table{width:100%;border-collapse:collapse;margin:14px 0}th,td{text-align:left;padding:9px 6px;border-bottom:1px solid var(--border)}caption{text-align:left;font-weight:bold}textarea{width:100%;min-height:100px}summary{cursor:pointer;font-weight:bold;padding:10px 0}a{color:var(--dark)}:focus-visible{outline:3px solid #a65300;outline-offset:3px}.muted{font-size:.9rem;color:#475569}.bar{height:22px;background:#e2e8f0;overflow:hidden}.bar span{display:block;height:100%;background:var(--red)}[hidden]{display:none!important}.skip{position:absolute;top:-100px;background:white;padding:10px}.skip:focus{top:0}.drink{padding:12px;border:1px solid var(--border);margin-bottom:12px}.drink h3{margin:0}.error{color:#801b27;font-weight:bold}@media(max-width:700px){.layout{grid-template-columns:1fr}main{padding:16px 12px}header,.card{padding:16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}