:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#eef5e8;background:#061722;font-synthesis:none;--text-scale: 1;--gold: #f3c96d;--cyan: #7ee5df}*{box-sizing:border-box}body{margin:0;font-size:calc(16px * var(--text-scale));overflow:hidden}button,input,select,textarea{font:inherit}button{min-height:44px;cursor:pointer;border:1px solid #789c9d70;border-radius:8px;background:#153440de;color:inherit;padding:11px 18px;transition:background .15s,border-color .15s}button:hover{background:#24505c;border-color:#f3c96d}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{cursor:default;opacity:.5}.primary{background:var(--gold);color:#10232c;font-weight:800;border-color:var(--gold)}.primary:hover{background:#ffe1a1}button.selected{border:2px solid var(--gold);background:#2e493f}.fine,small{font-size:.76em;color:#a3bdc4}.lead{font-size:1.14em;color:#c6dadc;max-width:30em;line-height:1.6}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.3rem,4.2vw,4.5rem);line-height:1.08;letter-spacing:-.04em;margin:14px 0 20px}h2{font-size:1em;letter-spacing:.05em}p{line-height:1.65;color:#b9cfd2}main{height:100dvh;position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 15%,#254e51 0,transparent 65%),#061722}#scene{position:absolute;left:50%;top:50%;width:min(75dvh,100vw);height:min(100dvh,133.333vw);transform:translate(-50%,-50%);touch-action:none}#scene canvas{display:block;width:100%;height:100%}main:has(.title:not([hidden])) #scene{left:27%;opacity:.92}header{height:85px;position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:linear-gradient(#061722e0,transparent);z-index:2}.brand{text-decoration:none;color:#edf5e5;font-weight:800;font-size:24px;letter-spacing:.15em}.brand b{color:var(--gold)}.brand small{display:block;font-size:9px;letter-spacing:.3em;margin-top:7px}.top-actions{display:flex;align-items:center;gap:14px}.top-actions span{font-size:10px;letter-spacing:.1em;color:#8fb1b9}.top-actions button{padding:8px 12px;font-size:.8em}#panel{position:absolute;z-index:4;top:50%;left:50%;transform:translate(-50%,-50%);width:min(650px,calc(100% - 32px));max-height:calc(100dvh - 160px);overflow:auto;padding:30px;border:1px solid #86b2b645;border-radius:18px;background:#09232aef;box-shadow:0 25px 100px #0008;scrollbar-color:#507875 #102a32}#panel.title{left:auto;right:5%;transform:translateY(-50%);width:min(580px,46vw);background:linear-gradient(130deg,#102f37ed,#09232aef)}#panel[hidden],[hidden]{display:none!important}.eyebrow{font-size:.65em;font-weight:700;letter-spacing:.22em;color:var(--gold)}.primary-actions{display:flex;gap:12px;margin:20px 0}.primary-actions>button{flex:1;display:flex;justify-content:space-between;align-items:center}.aircraft-choice{display:flex;gap:10px;margin:24px 0}.aircraft-choice button{flex:1;text-align:left;padding:14px}.aircraft-choice strong,.aircraft-choice small{display:block}.aircraft-choice strong{font-size:1.1em;margin-bottom:6px}.menu-links{display:flex;flex-wrap:wrap;gap:3px}.menu-links button{background:transparent;border:0;font-size:.8em;padding:8px 11px}.board{border-top:1px solid #8bb2b335;margin-top:24px;padding-top:12px}.board-heading{display:flex;align-items:center;justify-content:space-between}.board-heading button{font-size:.7em;padding:5px 10px;min-height:44px}.board-heading button[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}.board-row{display:grid;grid-template-columns:25px 1fr 1fr 85px;align-items:center;font-size:.8em;gap:8px;padding:8px 0;border-bottom:1px solid #9eb6b41a}.board-row strong{text-align:right;color:var(--gold)}.board-row small{text-align:right}.board p{font-size:.8em}label{display:flex;flex-direction:column;gap:8px;margin:14px 0;color:#bdd0d3;font-size:.85em}input,select,textarea{width:100%;min-height:44px;padding:10px;background:#061a24;color:#edf6e9;border:1px solid #698d9570;border-radius:6px}.check{flex-direction:row;align-items:center}.check input{width:20px;min-height:20px;flex-shrink:0}.options-grid,.key-grid,.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 22px}.help-grid p{font-size:.9em}.key-grid input{text-transform:uppercase}.code{color:var(--gold);font-family:monospace;letter-spacing:.08em}.crew-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #72959c40}.crew-row span{color:var(--gold)}.upgrade-grid{display:flex;gap:10px}.upgrade-grid button{flex:1}.upgrade-grid small{display:block;margin-top:8px}.result-score{color:var(--gold);font-size:3.4em;letter-spacing:-.04em;font-weight:800}#nameForm{display:flex;align-items:end;gap:12px}#nameForm label{flex:1;margin-bottom:0}#initials{text-transform:uppercase;font-size:1.5em;letter-spacing:.3em;max-width:200px}#scoreStatus{font-size:.85em;color:var(--cyan);margin:14px 0}.result-credit{font-size:.65em;line-height:1.8;color:#6d979e;border-top:1px solid #47727b55;margin-top:24px;padding-top:18px}#hud{position:absolute;z-index:2;left:calc(50% + min(37.5dvh,50vw) + 16px);right:20px;top:110px;display:flex;flex-direction:column;gap:25px;pointer-events:none;text-shadow:0 2px 5px #000}#hud button{pointer-events:auto}.hud-score small,.hud-score strong,.hud-score span{display:block}.hud-score strong{font-size:2em;color:var(--gold)}.hud-score span{font-size:.75em;color:var(--cyan);margin-top:8px}.hud-stage b,.hud-stage small{display:block}.hud-stage b{font-size:.9em}.hud-stage small{margin-top:7px}.hud-resources{display:flex;flex-direction:column;gap:10px;font-size:.75em}.hud-guns{display:flex;flex-direction:column;gap:8px}.hud-guns button{padding:9px;text-align:left;font-size:.65em}.hud-guns small{display:block}.boss-bar{height:7px;background:#223b3c;border:1px solid #e8b760;border-radius:4px;overflow:hidden}.boss-bar i{height:100%;display:block;background:var(--gold)}#stats{position:absolute;left:20px;bottom:60px;z-index:3;font:11px monospace;color:#cce7df;padding:8px;background:#061722c0;border-radius:5px;pointer-events:none}#notice{position:absolute;z-index:8;bottom:22px;left:50%;transform:translate(-50%);width:max-content;max-width:90%;background:#21434fee;border:1px solid #77b5bd80;border-radius:8px;padding:12px 18px;font-size:.8em;pointer-events:none}#notice:empty{display:none}footer{position:absolute;z-index:2;bottom:20px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;color:#7da4ac}#touch{position:absolute;bottom:5px;left:50%;transform:translate(-50%);z-index:3;display:flex;gap:4px;width:min(95%,500px)}#touch button{flex:1;padding:8px;font-size:12px;touch-action:none;background:#092532b0}#joinForm{display:flex;gap:12px;align-items:end}#joinForm label{flex:1;margin-bottom:0}@media(max-width:1100px){#hud{left:12px;right:auto;width:155px;font-size:.8em;top:110px}#stats{left:12px;bottom:18px}header{padding:14px 18px}.top-actions span{display:none}#panel.title{right:3%;width:48vw;padding:24px}.title h1{font-size:2.8em}}@media(max-width:800px){main:has(.title:not([hidden])) #scene{left:50%;opacity:.5}#panel.title{left:50%;right:auto;transform:translate(-50%,-50%);width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 125px);padding:22px}.brand{font-size:19px}header{height:70px}#panel{max-height:calc(100dvh - 125px);padding:20px}footer{left:18px;bottom:10px;font-size:7px}footer span{display:none}#hud{left:8px;right:8px;top:70px;width:auto;flex-direction:row;gap:8px;align-items:start;justify-content:space-between;font-size:10px;background:#061722aa;padding:7px;border-radius:8px}.hud-score strong{font-size:1.4em}.hud-score span{font-size:.8em;margin-top:2px}.hud-stage{max-width:100px}.hud-resources{gap:3px;font-size:.8em}.hud-guns{flex-direction:row;gap:3px}.hud-guns button{padding:4px;font-size:8px;min-height:36px}.boss-bar{position:absolute;bottom:-10px;left:0;right:0}#stats{font-size:9px;bottom:55px;left:8px}.options-grid,.key-grid{gap:4px 12px}}@media(max-width:420px){.title h1{font-size:2.4em}.primary-actions{flex-direction:column;gap:8px}.aircraft-choice button{padding:10px;font-size:.85em}.menu-links button{font-size:.7em;padding:7px}.board{margin-top:12px}.board-row{grid-template-columns:20px 1fr 1fr 60px;font-size:.7em}.help-grid{grid-template-columns:1fr}.upgrade-grid{flex-direction:column}.hud-stage{display:none}.hud-guns button,.brand small{font-size:7px}.top-actions{gap:4px}.top-actions button{font-size:11px;padding:6px 9px}.options-grid{grid-template-columns:1fr}#panel{max-height:calc(100dvh - 110px)}}@media(max-height:500px){header{height:55px}.brand small{display:none}#panel,#panel.title{max-height:calc(100dvh - 80px)}#hud{top:60px;width:125px;right:auto;flex-direction:column;font-size:10px}.hud-guns{flex-direction:column}#stats{bottom:8px}footer{display:none}.title h1{font-size:2em}}@media(max-width:800px)and (min-height:501px){#scene{width:min(calc((100dvh - 210px)*.75),100vw);height:min(calc(100dvh - 210px),133.333vw);top:calc(50% + 40px)}main:has(.title:not([hidden])) #scene{width:min(75dvh,100vw);height:min(100dvh,133.333vw);top:50%}}@media(max-height:500px){#scene{width:calc((100dvh - 70px)*.75);height:calc(100dvh - 70px);top:calc(50% + 25px)}}.hud-guns button{min-width:44px;min-height:44px}
