:root{color:#263e35;font-synthesis:none;background:#f2f0e5;font-family:Yu Gothic UI,Meiryo,sans-serif;font-weight:500;line-height:1.65}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline-offset:4px;outline:3px solid #b76720}button:disabled{cursor:default;opacity:.5}[hidden]{display:none!important}.shell{max-width:1200px;margin:auto;padding:24px 32px 12px}.heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.eyebrow{letter-spacing:.16em;color:#63766a;margin:0;font-size:10px;font-weight:800}h1{letter-spacing:.04em;margin:3px 0;font-size:32px;line-height:1.4}h2{margin:0}.subtitle{color:#778478;margin:2px 0 0;font-size:13px}.tools{gap:8px;display:flex}.quiet{color:#3d5748;background:#faf9f2;border:1px solid #bcc9bb;border-radius:9px;min-height:44px;padding:8px 15px;font-size:13px;font-weight:700}.quiet:hover:not(:disabled){background:#e4ebdf}.dispatch{grid-template-columns:minmax(0,760px) minmax(245px,290px);align-items:start;gap:22px;display:grid}.railway{min-width:0}.scoreboard{background:#fafaf3;border:1px solid #d3daca;border-radius:14px 14px 0 0;align-items:center;gap:26px;padding:12px 22px;display:flex}.scoreboard>div{white-space:nowrap;flex-direction:column;display:flex}.scoreboard span{letter-spacing:.03em;color:#64725f;font-size:10px}.scoreboard strong{font-variant-numeric:tabular-nums;font-size:21px;font-weight:700;line-height:1.45}.scoreboard b{font-weight:inherit}.scoreboard small{margin-left:4px;font-size:11px;font-weight:500}.scoreboard .score-main{margin-right:auto;display:block}.score-main span{display:block}.score-main strong{font-size:32px}.board{isolation:isolate;background:#dbe2c8;border:1px solid #b9c9af;border-top:0;border-radius:0 0 15px 15px;position:relative}canvas{border-radius:0 0 15px 15px;width:100%;height:auto;display:block}.signal{left:var(--x);top:clamp(27px,var(--y),calc(100% - 27px));color:#3b453a;z-index:2;background:#fbf9ef;border:2px solid #ac5c4c;border-radius:9px;grid-template-columns:14px 1fr;align-items:center;gap:0 4px;min-width:56px;height:49px;padding:3px 6px;font-size:12px;font-weight:800;line-height:1.1;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px #9caa8b,0 5px 12px #304c3022}.signal .bulb{background:#c34a39;border:2px solid #8b342a;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 3px #f0d5c8}.signal .command{letter-spacing:.04em;grid-column:2;font-size:10px;font-weight:500}.signal .shortcut{background:#fdfbf0;border:1px solid #a8b5a0;border-radius:50%;width:17px;height:17px;font-size:9px;line-height:15px;position:absolute;top:-7px;left:-6px}.signal.open{border-color:#428e70}.signal.open .bulb{background:#469c72;border-color:#28614b;box-shadow:0 0 0 3px #d5e7c8}.signal:active:not(:disabled){margin-top:2px;box-shadow:0 1px #9caa8b}.signal:disabled{opacity:.8}.signal.warn{outline-offset:3px;outline:3px solid #d89939}.track-key{color:#6b7e68;justify-content:center;align-items:center;gap:17px;margin-top:9px;font-size:10px;display:flex}.track-key span{align-items:center;gap:5px;display:flex}.a-dot,.b-dot{background:#bd593b;border-radius:50%;width:8px;height:8px;display:inline-block}.b-dot{background:#387c8b}.sidebar{gap:13px;display:grid}.station-card,.action-card,.guide-card{background:#fbfaf3;border:1px solid #d7ddce;border-radius:13px;padding:19px}.card-top{justify-content:space-between;align-items:center;gap:7px;display:flex}.card-top .eyebrow{letter-spacing:.1em;font-size:9px}.tag{white-space:nowrap;color:#537047;background:#e7eddf;border-radius:4px;padding:2px 7px;font-size:10px}#notice{min-height:43px;margin:12px 0 0;font-size:13px;line-height:1.8}.action-card{color:#f3f2dc;background:#214339;border-color:#214339}.action-card .eyebrow{color:#c4cdad;font-size:10px}.action-card h2{margin:8px 0;font-size:23px;line-height:1.6}.action-card p:not(.eyebrow){color:#e1e5d0;margin:8px 0 16px;font-size:12px}.action-card.result{background:#684837;border-color:#684837}.primary{color:#3e4937;background:#ead4a1;border:0;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 14px;font-size:14px;font-weight:800;display:flex}.primary:hover{background:#f9e4b4}.guide-card{background:#e9ede0;padding:17px 19px}.guide-card h2{margin-bottom:13px;font-size:13px}.guide-card>p{grid-template-columns:12px 1fr;align-items:center;gap:1px 8px;margin:11px 0;font-size:12px;display:grid}.guide-card>p>span{color:#65745f;grid-column:2;font-size:10px}.light{border-radius:50%;width:10px;height:10px;display:inline-block}.red{background:#bd593b}.green{background:#438567}.note{color:#697760;border-top:1px solid #cbd3bf;margin-top:14px;padding-top:12px;font-size:11px}.keyboard-hint{color:#73836b;margin-top:13px;font-size:9px;line-height:2}kbd{background:#f4f5ec;border:1px solid #bdc9b0;border-radius:3px;padding:1px 3px;font-family:inherit}.wildlife{color:#654e2c;background:#f3dfb1;border:1px solid #d4bb81;border-radius:8px;align-items:center;gap:10px;margin-top:12px;padding:10px;display:flex}.wildlife>span{font-size:28px}.wildlife strong{font-size:12px}.wildlife p{margin:2px 0;font-size:10px}footer{color:#8b9582;justify-content:space-between;margin-top:18px;font-size:10px;display:flex}dialog{color:#324733;background:#faf9ef;border:1px solid #a8b69e;border-radius:16px;width:min(480px,100% - 32px);max-height:85dvh;padding:25px;overflow:auto;box-shadow:0 20px 80px #14241c55}dialog::backdrop{background:#18382888}dialog h2{font-size:25px}dialog p{font-size:13px;line-height:1.85}dialog .small{color:#6e7e65;font-size:11px}@media (min-width:1000px) and (max-height:780px){.shell{max-width:1100px;padding-top:16px}.heading{margin-bottom:12px}h1{font-size:28px}.dispatch{grid-template-columns:minmax(0,700px) 268px;gap:20px}.scoreboard{padding:8px 18px}.station-card,.action-card,.guide-card{padding:15px}.guide-card .keyboard-hint{margin-top:9px}footer{margin-top:12px}}@media (max-width:800px){.shell{max-width:660px;padding:18px 16px 12px}.heading{gap:10px;margin-bottom:15px}h1{font-size:27px}.heading .eyebrow{letter-spacing:.09em;font-size:8px}.subtitle{font-size:11px}.tools{gap:5px}.quiet{padding:7px 10px;font-size:11px}.dispatch{grid-template-columns:1fr;gap:14px}.sidebar{grid-template-columns:1fr 1fr;gap:10px}.action-card{grid-area:1/2/span 2}.guide-card{grid-column:1}.keyboard-hint{display:none}.scoreboard{gap:24px}.track-key{font-size:10px}}@media (max-width:480px){.shell{padding:14px 10px 10px}.heading{flex-wrap:wrap;gap:9px}h1{font-size:25px}.subtitle{display:none}.tools{margin-left:auto}.quiet{padding:7px 9px}.scoreboard{gap:16px;padding:8px 12px}.scoreboard span{font-size:9px}.scoreboard strong{font-size:17px}.score-main strong{font-size:27px}.scoreboard small{font-size:9px}.signal{min-width:51px;height:46px;font-size:11px}.signal .bulb{width:11px;height:11px}.signal .shortcut{display:none}.signal .command{font-size:9px}.track-key{gap:10px;font-size:9px}.station-card,.guide-card,.action-card{padding:14px}.sidebar{flex-direction:column;display:flex}.action-card{order:0}.station-card{order:1}.guide-card{order:2}.action-card h2{margin:4px 0;font-size:20px}.action-card h2 br{display:none}.action-card p:not(.eyebrow){margin:5px 0 12px}.guide-card>p{vertical-align:top;width:49%;display:inline-grid}.guide-card h2{margin-bottom:4px}.note{margin-top:5px;padding-top:9px}#notice{min-height:0;margin-top:6px}footer{font-size:9px}footer>span{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.progress-strip{color:#5a7056;font-variant-numeric:tabular-nums;background:#e9eddd;border:1px solid #c4d0b6;border-top:0;justify-content:space-between;align-items:center;gap:8px;padding:7px 15px;font-size:11px;display:flex}.progress-strip strong{color:#2c5642;white-space:nowrap}.progress-strip span{white-space:nowrap}.arrival-note{background:#f1e5c2;border-left:3px solid #bb9146;border-radius:3px;margin:12px 0 0;padding:8px 10px;font-size:12px}@media (max-width:480px){.progress-strip{gap:5px;padding:6px 9px;font-size:10px}}
