:root{color-scheme:dark;background:#050505;color:#aaa;font:17px/1.45 system-ui,sans-serif;font-variant-numeric:tabular-nums}
*{box-sizing:border-box}
body{margin:0}
.shell{max-width:620px;margin:auto;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
header{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid #252525}
nav,.actions{display:flex;gap:8px;flex-wrap:wrap}
button,input,textarea{font:inherit;color:inherit;background:#191919;border:1px solid #3c3c3c;border-radius:10px;min-height:48px;padding:8px 12px}
button{cursor:pointer;touch-action:manipulation}
button:disabled{opacity:.43;cursor:default}
button[aria-pressed=true],button[aria-current=page]{background:#30312e;border-color:#777b70;color:#ccc}
button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #919689;outline-offset:2px}
.primary{width:100%;min-height:68px;background:#262724;border-color:#62655c;color:#c4c8bf;font-weight:650;font-size:1.13rem}
.secondary{width:100%;margin-top:10px}
h1,h2,p{margin:0 0 12px}h1{font-size:1.75rem;color:#bcbcbc}h2{font-size:1.1rem;color:#b7b7b7}
.muted,small{color:#858585}.timer{font-size:3rem;line-height:1.2;margin-bottom:16px;color:#b9bdb3}
#notice{color:#b5aa93;margin:10px 0;overflow-wrap:anywhere}#notice:empty{margin:0}
main{padding-top:18px}
dl,.card,fieldset{background:#101010;border:1px solid #292929;border-radius:12px;padding:14px;margin:0 0 14px;min-width:0}
dl div{display:flex;gap:12px;justify-content:space-between;padding:6px 0}
dd{margin:0;text-align:right;color:#b6b6b6}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:8px}.reasons{grid-template-columns:repeat(2,minmax(0,1fr))}
fieldset legend{padding:0 5px}fieldset .actions{margin-bottom:10px}
label{display:block;margin:8px 0}
input,textarea{width:100%;min-width:0}
pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.94rem}
dialog{max-width:min(420px,calc(100% - 32px));background:#141414;border:1px solid #555;border-radius:12px;color:#bcbcbc;padding:20px}
dialog::backdrop{background:#000b}.history{width:100%;text-align:left;margin-bottom:10px}.history small{display:block}
.night-timeline{margin-top:22px}
.night-timeline ol{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.interval{display:grid;grid-template-columns:5.2em minmax(0,1fr) auto;align-items:center;gap:6px;padding:10px 8px;border:1px solid #303731;border-radius:8px;background:#131814;color:#bac0b8;font-size:clamp(11px,3.55vw,15px)}
.interval.out{background:#211b17;border-color:#41342b;color:#c7b6a7}
.interval time{text-align:right}
