:root{--navy:#0c2340;--paper:#f4f0e6;--outline:#cdbfa8;--bolt:#4cc9f0;--bolt-dark:#1e8fd5;--alert:#8f1c14;--alert-deep:#5c100c;--amber:#ffb300;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--navy);color:var(--paper);flex-direction:column;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}.mode-normal .topbar,.mode-normal .stage,.mode-normal .fineprint{text-shadow:0 .04em .3em #040b1a99}body.mode-alert{background:radial-gradient(circle at 50% 40%, var(--alert), var(--alert-deep))}button,select,input{font:inherit}button{cursor:pointer}.topbar{z-index:12;align-items:center;gap:1.5vw;padding:1.5vh 3vw;display:flex;position:relative}.topbar-mark{height:6vh}.topbar-name{font-size:3.2vh;font-weight:700}.status{color:var(--bolt);flex:1;margin:0;font-size:2.6vh}.mode-alert .status{color:var(--paper)}.status a{color:inherit}.topbar-actions{align-items:center;gap:1vw;font-size:max(13px,1.8vh);display:flex}.topbar-actions a,.topbar-actions button{color:var(--paper);border:1px solid var(--outline);background:#0c23408c;border-radius:.4em;padding:.3em .8em;text-decoration:none}.sim-flag{box-sizing:border-box;border:1px solid var(--amber);background:var(--amber);height:calc(2.2em + 2px);color:var(--navy);letter-spacing:.08em;white-space:nowrap;border-radius:.4em;align-items:center;padding:0 .7em;font-size:max(13px,1.8vh);font-weight:800;display:inline-flex}.sim-flag[hidden]{display:none}.topbar-actions .test-button{border-color:var(--amber);color:var(--amber)}.topbar-actions .icon-button{align-items:center;padding:.3em .45em;display:inline-flex}.topbar-actions [hidden]{display:none}.button-label{margin-left:.4em}.icons-only .button-label{display:none}.icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.6em;height:1.6em}:root:fullscreen .topbar-actions{display:none}@media (display-mode:fullscreen){.topbar-actions{display:none}}.stage{text-align:center;flex:1;grid-template-rows:minmax(0,1fr) auto;place-items:center;min-height:0;padding:1vh 4vw;display:grid}.alarm{flex-direction:column;align-items:center;gap:1vh;display:flex}.alarm [hidden]{display:none}.headline{margin:0;font-size:min(9vh,9vw);font-weight:700;line-height:1}.mode-alert .headline{color:var(--amber)}.countdown{font-variant-numeric:tabular-nums;margin:0;font-size:min(25vh,26vw);font-weight:800;line-height:.95}.detail{margin:0;font-size:4.5vh}.weather:empty{display:none}.stale{z-index:10;background:#0c2340eb;flex-direction:column;justify-content:center;align-items:center;gap:2vh;display:flex;position:fixed;inset:0}.stale[hidden]{display:none}.loading{z-index:10;background:#0c2340eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading[hidden]{display:none}.spinner{border:1.2vh solid #4cc9f02e;border-top-color:var(--bolt);border-radius:50%;width:14vh;height:14vh;animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.stale-title{color:var(--amber);text-align:center;margin:0;font-size:12vh;font-weight:800}.stale-detail{text-align:center;max-width:80vw;margin:0;font-size:3.5vh}.start{background:var(--navy);z-index:20;flex-direction:column;justify-content:center;align-items:center;gap:3vh;display:flex;position:fixed;inset:0}.start[hidden]{display:none}.start-main{flex-direction:column;align-items:center;gap:3vh;display:flex}.start-mark{height:20vh}.start-name{letter-spacing:.02em;margin:-1vh 0 0;font-size:6vh;font-weight:700}.start-button{background:var(--bolt);color:var(--navy);border:0;border-radius:.4em;padding:.5em 1.4em;font-size:6vh;font-weight:700}.start-button:focus-visible{outline:4px solid var(--paper);outline-offset:4px}.start-message{min-height:1.4em;color:var(--outline);text-align:center;margin:0;font-size:2.4vh}.start-credit{color:var(--outline);text-align:center;margin:0;font-size:max(11px,1.8vh);position:absolute;bottom:2vh;left:0;right:0}.sound-banner{background:var(--amber);color:var(--navy);z-index:15;border:0;border-radius:.4em;padding:.6em 1.2em;font-size:2.8vh;font-weight:700;position:fixed;bottom:9vh;left:50%;transform:translate(-50%)}.sound-banner[hidden]{display:none}.settings{border:1px solid var(--outline);background:var(--navy);color:var(--paper);border-radius:.6em;max-width:min(32em,92vw);padding:1.5em 2em}.settings::backdrop{background:#0009}.settings-form{flex-direction:column;gap:1em;display:flex}.settings-form h2{margin:0}.settings-form label{flex-direction:column;gap:.3em;display:flex}.settings-warning{color:var(--amber);margin:0}.settings-warning[hidden]{display:none}.settings-form label.checkbox{flex-direction:row;align-items:center;gap:.6em}.settings-tests{flex-wrap:wrap;gap:.6em;display:flex}.settings-units{flex-wrap:wrap;gap:1em;display:flex}.settings-units label{flex:1;min-width:8em}.settings-tests button,.settings-reset,.settings-close{border:1px solid var(--outline);color:var(--paper);background:0 0;border-radius:.4em;padding:.4em .9em}.settings-footer{justify-content:space-between;align-items:center;gap:1em;display:flex}.settings-reset{margin-left:auto}.settings-close{background:var(--bolt);color:var(--navy);border:0;font-weight:700}.settings-note{color:var(--outline);margin:0;font-size:.85em}.fineprint{color:var(--outline);text-align:center;padding:1.5vh 4vw 2vh;font-size:max(11px,min(1.8vh,.68vw))}.mode-alert .fineprint{color:var(--paper)}.fineprint p{margin:.3em 0}.site-credit a{color:inherit;white-space:nowrap}@media (width<=720px){html,body{height:auto;min-height:100%}.topbar{flex-wrap:wrap;gap:8px;padding:10px 16px}.topbar-mark{height:30px}.topbar-name{font-size:18px}.topbar-actions{gap:6px;margin-left:auto;font-size:13px}.topbar-actions .icon-button{padding:.25em .3em}.button-label{display:none}.icon-button svg{width:1.5em;height:1.5em}.sim-flag{order:3;height:auto;padding:.3em .6em;font-size:12px}.status{flex:12em;order:4;font-size:13px}.stage{flex-direction:column;flex:none;align-items:center;gap:24px;min-height:auto;padding:16px 16px 8px;display:flex}.stage>.weather{width:100%}.alarm{gap:8px}.headline{font-size:9vw}.countdown{font-size:26vw}.detail{font-size:5vw}.stale-title{font-size:11vw}.stale-detail{font-size:4.5vw}.sound-banner{width:max-content;max-width:calc(100vw - 32px);font-size:15px}.fineprint{padding:12px 16px 16px;font-size:11px}}
