:root{
  --bg:#0b0f10;
  --card:#12181a;
  --fg:#e8f1f2;
  --muted:#9fb3b6;
  --accent:#0e7c86;
  --accent-2:#f5a524;
  --danger:#e23d3d;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;}
body{display:flex;flex-direction:column;}
header,footer{padding:12px 16px;background:var(--card);position:sticky;z-index:2}
header{top:0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1f272a}
footer{bottom:0;border-top:1px solid #1f272a}
h1{font-size:1.2rem;margin:0}
main{flex:1;display:flex;flex-direction:column;gap:16px;padding:16px;}
section.status{background:var(--card);padding:12px 16px;border-radius:12px;border:1px solid #1f272a}
.status .bac{display:flex;align-items:end;gap:12px}
.status .label{color:var(--muted)}
.status .value{font-size:2rem;font-weight:700}
.status .hint{color:var(--muted)}
.status .meta{margin-top:6px;color:var(--muted);display:flex;gap:6px;align-items:center}
.bigbtn{display:flex;flex-direction:column;align-items:center;gap:10px}
button{appearance:none;border:none;border-radius:12px;padding:14px 18px;font-size:1.05rem;background:var(--accent);color:white;cursor:pointer}
button.primary{width:100%;max-width:520px}
button.secondary{background:#2b3a3e}
button.ghost{background:transparent;border:1px solid #2a3538;color:var(--fg);padding:8px 10px;border-radius:10px;font-size:0.95rem}
button:disabled{opacity:.6;cursor:not-allowed}
.settings details{background:var(--card);border:1px solid #1f272a;border-radius:12px}
.settings summary{padding:12px 16px;cursor:pointer}
.settings form{padding:8px 16px 16px}
.row{display:flex;flex-direction:column;gap:8px;margin:10px 0}
.inputs-inline{display:flex;gap:8px;align-items:center}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
label{color:var(--muted)}
input,select{width:100%;padding:12px 10px;border-radius:10px;border:1px solid #2a3538;background:#0c1214;color:var(--fg)}
.drink-controls{width:100%;max-width:520px;background:var(--card);border:1px solid #1f272a;border-radius:12px;padding:12px}
.chips{display:flex;gap:8px;align-items:center;margin-top:8px}
.chip{font-size:.9rem;padding:6px 10px;border-radius:999px}
.chips .spacer{flex:1}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.log{background:var(--card);padding:12px 16px;border-radius:12px;border:1px solid #1f272a}
.log h2{margin-top:0;font-size:1.05rem;color:var(--muted)}
#logList{margin:0;padding-left:20px}
.tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.8rem}
.tag.ok{background:#0e7c8622;color:#7dd6dd}
.tag.warn{background:#f5a52422;color:#ffd288}
.tag.danger{background:#e23d3d22;color:#ffb4b4}
.notice{font-size:.9rem;color:var(--muted)}
