/* Selected title-screen study 02. Scoped to the launcher, not gameplay menus. */
.command-menu .menu-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}
#loading.command-menu .shade{background:linear-gradient(90deg,#020b17e6 0,#020b17c9 24%,#020b1750 47%,#020b1700 73%),linear-gradient(0deg,#010714d9,transparent 28%,#02081220)}
.command-menu .menu-content{position:absolute;inset:0;top:0;left:0;width:100%;height:100%;transform:none;display:block;text-align:left;padding:0;z-index:1;pointer-events:none}
.command-menu .menu-content>*{pointer-events:auto}
.command-menu .menu-identity{position:absolute;left:4.5vw;top:12.3vh;width:39vw}
.command-menu .menu-identity h1{width:100%;margin:0}
.command-menu .tagline{margin:-2.5vw 0 0 4.1vw;max-width:none;color:#c6d8e8;font:400 15px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.035em;white-space:nowrap}
.command-menu .menu-actions{position:absolute;left:8.6vw;top:49vh;width:385px;max-width:40vw}
.command-menu .menu-section-label{margin:0;padding:0 0 24px;display:flex;align-items:center;gap:11px;color:#9aadc0;font:400 9px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.24em;text-transform:none}
.command-menu .menu-section-label>span{width:19px;height:1px;background:#9cceef}
.command-menu .launch-actions{display:flex;flex-direction:column;gap:5px;border-left:1px solid #81afce44}
.command-menu #enter,.command-menu #continue-game{position:relative;display:block;width:100%;min-height:82px;margin:0;padding:18px 48px 18px 29px;border:0;border-radius:0;background:none;color:#8da7bf;text-align:left;font:400 21px/1.15 Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase;text-shadow:none;transform:none;cursor:pointer;transition:color .18s,background .18s;outline-offset:4px}
.command-menu #enter small,.command-menu #continue-game small{display:block;margin-top:9px;color:#9db3c6;font:400 11px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.04em;text-transform:none}
.command-menu #enter:before,.command-menu #enter:after{display:none}
.command-menu #continue-game,.command-menu .launch-actions:not(:has(#continue-game:not([hidden]))) #enter{color:#e6f4ff;background:linear-gradient(90deg,#8ed0ff2b,#6da9ce12 65%,transparent);text-shadow:0 0 12px #8ad3ff50}
.command-menu #continue-game:before,.command-menu .launch-actions:not(:has(#continue-game:not([hidden]))) #enter:before{content:'';display:block;position:absolute;inset:0 auto 0 -1px;width:3px;height:auto;background:#c9e9ff;opacity:1;box-shadow:0 0 17px #6bb7ff88}
.command-menu #enter:hover,.command-menu #continue-game:hover{color:#fff;background:linear-gradient(90deg,#8ed0ff2b,#6da9ce12 65%,transparent);transform:none;text-shadow:0 0 12px #8ad3ff50}
.command-menu #enter:focus-visible,.command-menu #continue-game:focus-visible{outline:1px solid #cbeaff;outline-offset:4px}
.command-menu #enter:disabled,.command-menu #continue-game:disabled{cursor:default;opacity:.5}
.command-menu .menu-return{position:absolute;right:30px;top:22px;font-size:17px;color:#bddcf0;letter-spacing:0}
.command-menu .launch-actions:has(#continue-game:not([hidden])) #enter .menu-return{display:none}
.command-menu #status{margin:18px 0 0 29px;min-height:0;font:12px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.04em}
.command-menu #status:empty{display:none}
.command-menu #load-retry,.command-menu #resume-new-game{display:block;margin:12px 0 0 29px;min-height:44px;padding:10px 16px;border:1px solid #718b9c;background:#102536;color:#e5f1f8;font:14px Arial,Helvetica,sans-serif;cursor:pointer}
.command-menu #load-retry:focus-visible,.command-menu #resume-new-game:focus-visible{outline:2px solid #d2edff;outline-offset:3px}
.command-menu .swear-setting{position:absolute;left:8.6vw;bottom:4.4vh;margin:0;padding:0;border:0;border-radius:0;background:none;gap:10px;color:#aabed0;font:12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.04em;text-shadow:0 1px 6px #000}
.command-menu .swear-setting input{width:14px;height:14px;accent-color:#bddfff}
.command-menu .swear-setting small{font-size:10px;letter-spacing:0;color:#839bae;margin-top:4px}
.command-menu .swear-setting:focus-within{outline:1px solid #cbeaff;outline-offset:7px}
.command-menu #debug-checkpoints{position:absolute;right:8.6vw;top:13.5vh;width:340px;max-width:31vw;margin:0;padding:20px;background:#04101bc4;border:1px solid #91b4ce26;color:#9bb1c4;text-align:left;font:10px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.1em}
.command-menu #debug-checkpoints p{margin:0 0 15px;color:#bbd0e0;font-size:9px;letter-spacing:.2em}
.command-menu #debug-checkpoints p span{display:block;margin-top:5px;color:#7f98ad;font-size:10px;letter-spacing:.03em;text-transform:none}
.command-menu .debug-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.command-menu .debug-buttons button{padding:9px 7px;border:1px solid #7892a62e;border-radius:0;background:#07121d80;color:#aebfce;font:11px/1.3 Arial,Helvetica,sans-serif;text-align:left;cursor:pointer}
.command-menu .debug-buttons button:hover,.command-menu .debug-buttons button:focus-visible{color:#eff8ff;border-color:#a9cee8;background:#20394e}
.command-menu .debug-buttons button:disabled{opacity:.4;cursor:default}
.command-menu .menu-frame{position:absolute;inset:5vh 3vw;pointer-events:none}
.command-menu .menu-frame i{position:absolute;width:20px;height:20px;border:solid #aac9df40}
.command-menu .menu-frame i:nth-child(1){left:0;top:0;border-width:1px 0 0 1px}
.command-menu .menu-frame i:nth-child(2){right:0;top:0;border-width:1px 1px 0 0}
.command-menu .menu-frame i:nth-child(3){left:0;bottom:0;border-width:0 0 1px 1px}
.command-menu .menu-frame i:nth-child(4){right:0;bottom:0;border-width:0 1px 1px 0}
/* The left column is reserved for launch controls; both existing cameos use
   the clear lower-right region. Their clips, audio, cadence and fades are intact. */
.command-menu #menu-cameo,.command-menu #menu-cameo[data-side="left"]{left:auto;right:8.6vw;bottom:9vh;width:24vw;max-height:35vh}
body:has(#loading.command-menu:not([hidden])) #fullscreen-control{right:8.6vw;bottom:4.4vh}
body:has(#loading.command-menu:not([hidden])) #fullscreen-control button{padding:2px 0;border:0;border-radius:0;background:none;color:#aabed0;font:12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.04em;text-shadow:0 1px 6px #000}
body:has(#loading.command-menu:not([hidden])) #fullscreen-control small{font-size:10px;opacity:.65}
@media(max-height:740px) and (min-width:851px){
 .command-menu .menu-identity{top:8vh;width:37vw}
 .command-menu .menu-actions{top:47vh}
 .command-menu #debug-checkpoints{top:9vh;padding:16px}
 .command-menu .debug-buttons button{padding:7px}
}
/* Recovery messages need normal flow: long errors and both actions must never
   overlap the fixed launch/settings columns or fall outside a short window. */
#loading.command-menu.load-failed{overflow-y:auto}
.command-menu.load-failed .menu-content{position:relative;inset:auto;min-height:100%;height:auto;padding:32px 8.6vw 80px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.command-menu.load-failed .menu-identity{position:relative;left:auto;top:auto;width:min(300px,75vw);margin:0}
.command-menu.load-failed .tagline{margin:-12px 0 0 30px;font-size:12px;white-space:normal;max-width:270px}
.command-menu.load-failed .menu-actions{position:relative;left:auto;top:auto;width:min(480px,80vw);max-width:none;margin:28px 0 0}
.command-menu.load-failed .launch-actions,.command-menu.load-failed .menu-section-label,.command-menu.load-failed .swear-setting,.command-menu.load-failed #debug-checkpoints{display:none}
.command-menu.load-failed #status{margin:0;font-size:14px;line-height:1.6}
.command-menu.load-failed #load-retry,.command-menu.load-failed #resume-new-game{margin-left:0}
@media(max-height:560px) and (min-width:851px){
 .command-menu .menu-identity{top:4vh;width:30vw;left:5.5vw}
 .command-menu .tagline{margin-top:-2vw;margin-left:3.1vw;font-size:12px}
 .command-menu .menu-actions{top:42vh}
 .command-menu .menu-section-label{padding-bottom:10px;font-size:8px}
 .command-menu #enter,.command-menu #continue-game{min-height:62px;padding:12px 42px 12px 22px;font-size:17px}
 .command-menu #enter small,.command-menu #continue-game small{font-size:10px;margin-top:5px}
 .command-menu #debug-checkpoints{top:7vh}
 .command-menu #menu-cameo,.command-menu #menu-cameo[data-side="left"]{width:15vw;max-height:20vh;bottom:7vh}
}
@media(max-width:850px){
 #loading.command-menu{overflow-y:auto;overflow-x:hidden}
 .command-menu .menu-content{position:relative;height:auto;min-height:100%;padding:8vh 0 100px}
 .command-menu .menu-identity{position:relative;left:0;top:0;width:91vw;margin-left:1vw}
 .command-menu .tagline{margin:-5vw 0 0 9vw;font-size:12px;white-space:normal;max-width:79vw}
 .command-menu .menu-actions{position:relative;left:0;top:0;width:80vw;max-width:none;margin:7vh 10vw 0}
 .command-menu .menu-section-label{padding-bottom:18px;font-size:8px}
 .command-menu #enter,.command-menu #continue-game{min-height:72px;padding:15px 40px 15px 22px;font-size:19px}
 .command-menu #debug-checkpoints{position:relative;right:auto;top:auto;width:80vw;max-width:none;margin:36px 10vw 0;padding:16px}
 .command-menu .swear-setting{position:relative;left:auto;bottom:auto;margin:35px 10vw 0;width:max-content;max-width:80vw}
 .command-menu .menu-frame{position:fixed}
 .command-menu #menu-cameo,.command-menu #menu-cameo[data-side="left"]{position:fixed;right:5vw;width:22vw;bottom:10vh}
 body:has(#loading.command-menu:not([hidden])) #fullscreen-control{right:10vw;bottom:20px}
 body:has(#loading.command-menu:not([hidden])) #fullscreen-control button{padding:8px 12px;background:#04101be0}
 body:has(#loading.command-menu:not([hidden])) #fullscreen-control small{display:none}
}
