:root{--sign: #fbfbf7;--ink: #141414;--exit: #f6d21c;--east: #1b4f9f;--west: #149a49;--board: #16181b;--amber: #ffb400;--ja: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;--en: "Helvetica Neue", "Arial", "Noto Sans JP", sans-serif;--safe-l: max(14px, env(safe-area-inset-left));--safe-r: max(14px, env(safe-area-inset-right));--safe-t: max(14px, env(safe-area-inset-top));--safe-b: max(14px, env(safe-area-inset-bottom))}html,body{margin:0;height:100%;overflow:hidden;background:var(--board);color:var(--ink);font:15px/1.45 var(--en);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#view{position:fixed;inset:0;width:100%;height:100%;display:block}[hidden]{display:none!important}button{font:inherit;color:inherit;border:0;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid var(--east);outline-offset:3px}.ja{font-family:var(--ja);font-weight:700}.en{font-family:var(--en)}.small{font-size:12.5px;line-height:1.5}.board,.brief,.result,.map-panel{position:fixed;inset:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);box-sizing:border-box}.board{display:flex;flex-direction:column;gap:18px;max-width:620px;background:linear-gradient(90deg,#16181bf0 0,#16181bdb 70%,#16181b00);padding-right:70px}.nameboard{background:var(--sign);padding:16px 20px 14px;border-bottom:10px solid var(--west);box-shadow:inset 0 -4px 0 var(--sign),inset 0 -8px 0 var(--east)}.nameboard .ja{font-size:58px;line-height:1.05;letter-spacing:.12em}.nameboard .en{font-size:22px;font-weight:500;letter-spacing:.02em}.nameboard .lede{margin:10px 0 0;font-size:15px}.strips{display:flex;flex-direction:column;gap:8px}.strip{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:8px 8px 8px 14px;box-sizing:border-box;background:var(--sign);text-align:left;border-left:0 solid var(--ink);transition:border-left-width .12s ease-out}button.strip:hover,button.strip:focus-visible{border-left-width:8px}.arrow{flex:none;width:34px;height:34px}.where{flex:1;min-width:0;display:flex;flex-direction:column}.where .ja{font-size:19px;line-height:1.25}.where .en{font-size:12.5px;line-height:1.35}.exit-block,.zone-block{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:92px;min-height:48px;padding:4px 10px;box-sizing:border-box;border-radius:3px;background:var(--exit);font-weight:700}.exit-block .ja,.zone-block .ja{font-size:18px;line-height:1.2;font-variant-numeric:tabular-nums}.exit-block .en,.zone-block .en{font-size:10.5px;font-weight:500}.zone-block{background:var(--east);color:#fff}.board footer{color:#d9d9d4}.board footer p{margin:0 0 8px;max-width:62ch}.board .credit{opacity:.75;font-size:11px}.brief,.result{display:grid;place-items:center;background:#16181bb8}.notice{width:min(520px,100%);box-sizing:border-box;background:var(--sign);border-top:12px solid #c8202a;padding:18px 22px 20px}.notice.wide{width:min(680px,100%)}.notice h2{margin:0 0 8px;font:700 24px/1.25 var(--ja)}.notice p{margin:0 0 14px;max-width:60ch}.notice .strip.static{border:2px solid var(--ink);margin-bottom:8px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px}button.exit-block{flex-direction:row;min-height:52px;padding:6px 22px;font:700 18px/1 var(--ja)}button.plain{background:none;padding:12px 4px;text-decoration:underline;text-underline-offset:3px}.departures,.clock{background:var(--board);color:var(--amber);font:600 17px/1.3 var(--en);font-variant-numeric:tabular-nums}.departures{padding:10px 14px;margin-bottom:12px}.departures .row{display:grid;grid-template-columns:5.5em 5em 1fr;gap:10px;align-items:baseline;padding:3px 0}.departures .label{color:#d9d9d4;font-weight:500}.departures .note{color:#d9d9d4;font-size:13px;font-weight:400}.plan{display:block;width:100%;height:min(42vh,340px);background:var(--board)}.hud{position:fixed;inset:0;pointer-events:none}.hud .destination{position:absolute;left:var(--safe-l);top:var(--safe-t);width:auto;max-width:min(60vw,420px);min-height:52px;padding-right:16px;box-shadow:0 2px #00000059}.hud .destination .where .ja{font-size:17px}.clock{position:absolute;right:var(--safe-r);top:var(--safe-t);padding:9px 13px;font-size:19px}.clock.late{color:#ff5a3c}.hud-buttons{position:absolute;right:var(--safe-r);top:calc(var(--safe-t) + 54px);display:flex;gap:8px;pointer-events:auto}.round{min-width:52px;min-height:44px;padding:0 10px;background:var(--sign);font:700 14px/1 var(--ja);border-radius:3px;box-shadow:0 2px #00000059}.round.armed{background:var(--exit)}.map-panel{display:flex;flex-direction:column;gap:10px;background:var(--board);z-index:2}.map-panel .plan{flex:1;height:auto;min-height:0}.map-panel .legend{margin:0;color:#d9d9d4;font-size:12.5px}.map-panel button{align-self:flex-start}#stick{position:fixed;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;border:2px solid rgb(255 255 255 / .5);pointer-events:none}#stick i{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:#ffffffa6}.capture .ui,.capture #stick{display:none}@media(max-width:560px){.board{padding-right:var(--safe-r);background:#16181be6}.nameboard .ja{font-size:44px}.where .ja{font-size:17px}.exit-block,.zone-block{min-width:78px}.departures .row{grid-template-columns:4.5em 4.2em 1fr}}@media(prefers-reduced-motion:reduce){.strip{transition:none}}.cannot-start{position:fixed;inset:0;display:grid;place-items:center;margin:0;padding:24px;color:#fff;text-align:center}
