:root{color-scheme:dark;--cyan:#8bf7ed;--muted:#85919f;--line:#ffffff20}*{box-sizing:border-box}body{margin:0;background:#070911;color:#edf5f5;font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}button:disabled{opacity:.3;cursor:default}button[hidden],[hidden]{display:none!important}canvas{position:fixed;inset:0;width:100%;height:100%;display:block}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#070911dd,transparent 72%),linear-gradient(0deg,#070911 0%,transparent 23%,transparent 80%,#070911 100%)}body.playing .vignette{background:linear-gradient(0deg,#070911bb,transparent 20%,transparent 80%,#070911bb)}header{position:relative;height:100px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);z-index:3}.brand{text-decoration:none;font-size:20px;font-weight:900;letter-spacing:-.7px;display:flex;align-items:center;gap:5px}.brand>span:last-child{font-weight:400;color:#92a3ad}.mark{color:var(--cyan);font-size:34px;margin-right:10px}.edition,.actions button,.eyebrow,.label,.record,.features,footer,.flight-info,.secondary{font-family:monospace}.edition{font-size:11px;letter-spacing:2px;color:#8799a5}.dot{display:inline-block;width:5px;height:5px;background:var(--cyan);border-radius:50%;margin-right:10px;box-shadow:0 0 12px var(--cyan)}.actions{display:flex;gap:12px}.actions button{background:#0a101666;border:1px solid #ffffff25;color:#aebec7;padding:10px 12px;font-size:10px;letter-spacing:1px;border-radius:3px}main{position:relative;height:calc(100dvh - 170px);min-height:300px}.panel{position:absolute;left:9%;top:50%;transform:translateY(-50%);max-width:670px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--cyan);display:flex;align-items:center;gap:12px}.eyebrow>span{width:22px;height:1px;background:var(--cyan)}h1{font-size:clamp(68px,8.6vw,132px);line-height:.88;letter-spacing:-7px;margin:30px 0;font-weight:900}h1 em{color:var(--cyan);font-style:normal}.intro{font-size:16px;line-height:1.8;color:#a7b7c3;margin-bottom:28px}.primary{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:19px 24px;background:var(--cyan);border:0;font-size:12px;letter-spacing:1px;font-weight:800;min-width:240px;color:#09151a;border-radius:3px;box-shadow:0 0 45px #8bf7ed18}.primary:hover{background:#b3fff7}.primary>span{font-size:23px;line-height:16px}.record{font-size:10px;color:#80939f;letter-spacing:1px;margin-top:20px;display:flex;gap:22px}.record b{color:#c3d3db}.features{display:flex;gap:22px;margin-top:42px;font-size:9px;letter-spacing:1px;color:#677d8d}.features span:before{content:'+';color:var(--cyan);margin-right:6px}footer{position:relative;margin:0 5%;height:70px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:9px;letter-spacing:1px;color:#93a5b1;gap:20px}footer>div{display:flex;align-items:center;gap:9px}footer>div>span{color:#5d7487;letter-spacing:0}kbd{font:9px monospace;border:1px solid #ffffff25;border-bottom:2px solid #ffffff30;padding:5px 7px;border-radius:3px;color:#c9d7df}footer i{width:1px;height:14px;background:#ffffff20;margin:0 10px}.mission{color:#6b8997}.touch-hint{display:none}#hud{position:absolute;top:25px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.label{display:block;color:#95aab6;font-size:9px;letter-spacing:2px;margin-bottom:10px}#hud strong{font:26px monospace;letter-spacing:2px}.center-hud{text-align:center;width:25%}.progress,.boost-track{height:3px;background:#ffffff20;width:100%}.progress i,.boost-track i{display:block;height:100%;background:var(--cyan);width:0%;box-shadow:0 0 14px #8bf7ed80}.right-hud{text-align:right}#shield{color:var(--cyan)}.flight-info{position:absolute;left:5%;right:5%;bottom:24px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:2px;color:#8db1c0}.flight-info b{font-size:28px;font-weight:400;color:#dbe9ef}.flight-info>div{width:150px}.flight-info .label{font-size:8px}.modal{position:absolute;inset:0;display:grid;place-items:center;background:#07091190;backdrop-filter:blur(12px);z-index:5}.modal-card{width:min(460px,90%);padding:36px;background:#0c151dec;border:1px solid #8bf7ed30;border-radius:8px}.modal h2{font-size:52px;letter-spacing:-3px;margin:20px 0}.modal p{color:#9fb2c0;font-size:14px;line-height:1.7}.modal .primary{width:100%;margin-top:28px}.secondary{display:block;margin:15px auto 0;background:none;border:0;color:#9eb2bf;font-size:10px;padding:12px}.stats{display:flex;gap:40px;margin:30px 0}.stats strong{font:28px monospace}.stats .label{font-size:9px}#announcement{position:absolute;top:22%;left:0;right:0;text-align:center;pointer-events:none;color:var(--cyan);font:14px monospace;letter-spacing:4px;text-shadow:0 0 20px var(--cyan)}.touch{position:absolute;bottom:10px;left:5%;right:5%;display:none;justify-content:space-between;align-items:center;pointer-events:none}#joystick{width:105px;height:105px;border:1px solid #8bf7ed50;border-radius:50%;background:#0e263955;display:grid;place-items:center;pointer-events:auto;touch-action:none}#joystick i{width:42px;height:42px;border-radius:50%;background:#8bf7ed30;border:1px solid #8bf7ed70;pointer-events:none}#touch-boost{width:75px;height:75px;border:1px solid #8bf7ed80;border-radius:50%;color:var(--cyan);background:#0e263988;font:11px monospace;pointer-events:auto;touch-action:none}@media(pointer:coarse){.touch{display:flex}footer>div,.mission{display:none}.touch-hint{display:block}.flight-info{bottom:140px}}@media(max-width:700px){header{height:75px}.edition{display:none}.brand{font-size:15px}.mark{font-size:27px}.actions button{padding:9px;font-size:9px}main{height:calc(100dvh - 130px)}footer{height:55px}.panel{left:7%;right:7%}h1{font-size:clamp(65px,15vw,100px);letter-spacing:-4px}.eyebrow{font-size:8px;letter-spacing:1.5px}.features{gap:12px;font-size:7px;margin-top:30px}.intro{font-size:14px}.mission{display:none}footer>div{gap:5px;font-size:8px}footer i{margin:0 3px}kbd{font-size:8px;padding:4px}.center-hud{width:30%}#hud strong{font-size:20px}#shield{font-size:16px!important}}@media(max-height:650px){h1{font-size:70px;margin:20px 0}.features{display:none}.intro{margin-bottom:18px}.panel .eyebrow{font-size:8px}header{height:65px}main{height:calc(100dvh - 115px)}footer{height:50px}.record{margin-top:12px}}
.actions select{background:#0a1016;color:#c1d5df;border:1px solid #ffffff25;border-radius:3px;font:11px monospace;padding:8px}.save-row{display:flex;gap:8px;margin-top:8px}.save-row input{width:100%;min-width:0;background:#060e16;border:1px solid #496071;padding:12px;color:#ecf6fc;border-radius:3px}.save-row button{border:1px solid #8bf7ed70;background:#173a40;color:var(--cyan);padding:10px;font:10px monospace;min-width:110px}.privacy-note{font-size:10px!important;line-height:1.5!important;color:#778f9e!important}#save-form label{font:11px monospace;color:#9fb8c8}#save-note{font-size:12px;line-height:1.5;color:var(--cyan)}dialog{background:#0d1823;color:#eaf5fa;border:1px solid #395867;border-radius:8px;width:min(650px,92vw);padding:26px;max-height:80dvh}dialog::backdrop{background:#040a10c9;backdrop-filter:blur(9px)}.board-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.board-header h2{font:700 24px monospace;margin:0}.board-header button{background:none;border:1px solid #8bf7ed40;color:var(--cyan);font:10px monospace;padding:10px}.board-info,#board-note{color:#8ca7b8;font:11px monospace;line-height:1.6}#board-rows{padding:0;margin:20px 0;list-style:none}#board-rows li{display:grid;grid-template-columns:30px 1fr 90px 80px;gap:12px;padding:14px 0;border-bottom:1px solid #ffffff15;font:12px monospace}#board-rows li span:first-child{color:#668597}#board-rows li span:nth-child(3){color:var(--cyan);text-align:right}#board-rows li span:last-child{text-align:right;color:#8ca7b8}.modal-card{max-height:calc(100dvh - 170px);overflow:auto}.modal h2{font-size:clamp(25px,4vw,48px)}html[lang=ja] .eyebrow,html[lang=ja] footer{letter-spacing:0}html[lang=ja] .modal h2{letter-spacing:0}@media(max-width:700px){header{margin:0 4%;gap:8px}.edition{display:none}.brand{font-size:13px}.brand .mark{margin-right:2px}.actions{gap:5px}.actions button{padding:8px 5px;font-size:8px;letter-spacing:0}.actions select{font-size:10px;padding:6px 3px}footer{font-size:8px;letter-spacing:0}.modal-card{max-height:calc(100dvh - 145px);padding:22px}.board-header h2{font-size:19px}#board-rows li{grid-template-columns:22px 1fr 60px 60px;gap:5px;font-size:11px}}

.intro{max-width:410px}.actions button[disabled]{opacity:.4}.save-row button:disabled{opacity:.5;cursor:wait}
.share-button,.board-challenge{background:#173a40;border:1px solid #8bf7ed60;border-radius:3px;padding:12px;color:var(--cyan);font:11px monospace;cursor:pointer}.share-button:hover,.board-challenge:hover{background:#24525a}.share-actions,#result-share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}#result-share-actions>p{flex-basis:100%;margin:0;font-size:11px;color:#90a9b8}#challenge-result{color:var(--cyan)}#challenge-banner{max-width:410px;padding:10px 14px;border-left:2px solid var(--cyan);background:#0c202be6;margin:0 0 18px}#challenge-description{font-size:13px;color:var(--cyan);line-height:1.5;margin:0}#challenge-clear{margin:4px 0 0;padding:6px 0;text-align:left}#challenge-hud{position:absolute;top:100px;left:5%;right:5%;text-align:center;font:12px monospace;color:var(--cyan);pointer-events:none}#sharing{width:min(520px,92vw)}#sharing p,#sharing label{font-size:13px;line-height:1.6;color:#a0b6c5}#share-text{display:block;width:100%;margin:10px 0;background:#06121c;border:1px solid #496071;color:#ecf6fc;padding:12px;border-radius:3px;font:13px monospace;resize:vertical}#sharing #share-local{color:#e9c487;font-size:12px}#share-status{color:var(--cyan)!important}#board-rows li{grid-template-columns:30px 1fr 90px 80px}#board-rows li .board-challenge{grid-column:2/-1;justify-self:end;font-size:10px;padding:8px}#board-rows li span:nth-child(4){text-align:right;color:#8ca7b8}.panel{max-height:100%;overflow:auto;padding:15px 0}.actions{flex-wrap:wrap;justify-content:flex-end}.modal-card{scrollbar-width:thin}button:disabled{cursor:default}@media(max-width:700px){#board-rows li{grid-template-columns:22px 1fr 60px 60px}.actions{gap:4px}.brand{flex-shrink:0}header{height:90px}main{height:calc(100dvh - 145px)}#challenge-banner{margin-bottom:12px}#challenge-description{font-size:12px}#result-share-actions .share-button{flex:1}#challenge-hud{top:90px;font-size:10px}.modal-card{max-height:calc(100dvh - 155px)}}
body:not(.playing) #challenge-hud{display:none}
body{overflow-x:hidden;overflow-y:auto}.game-guide{position:relative;z-index:1;max-width:960px;margin:60px auto;padding:36px;background:#0c151df5;border:1px solid #8bf7ed30;border-radius:8px;line-height:1.8;color:#b4c9d5}.game-guide h2{font-size:clamp(24px,4vw,38px);color:#edf5f5;line-height:1.2}.game-guide h3{margin-top:30px;font-size:20px;color:var(--cyan)}.game-guide summary{cursor:pointer;font-weight:bold;padding:12px 0;color:#e1eeee}.game-guide details{border-bottom:1px solid #ffffff20}.game-guide nav{display:flex;flex-wrap:wrap;gap:18px;padding:28px 0}.game-guide a{color:var(--cyan)}.game-guide nav a[aria-current]{text-decoration-thickness:3px}.back-to-game{font:12px monospace}body.playing{overflow:hidden}body.playing .game-guide{display:none}@media(max-width:700px){.game-guide{margin:30px 5%;padding:22px}}
.guide-link{color:var(--cyan);white-space:nowrap;text-decoration:none}body.playing .guide-link{display:none}html{scroll-behavior:smooth}#about-game{scroll-margin-top:20px}
.game-guide{width:90%}
