/* The landing page shares the in-game header and keeps one main play action. */
#title{
  background:linear-gradient(180deg,#15394f16 0%,#18374700 45%,#1232467a 100%),url('crystal-title.png') center/cover no-repeat,#3189b7;
  display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
  padding:0;overflow:auto;overscroll-behavior:contain;font-family:'Courier New',monospace;isolation:isolate;
}
#title.hidden{display:none}
/* A title-screen résumé keeps the scenic backdrop, before a game canvas exists. */
#title.resume-backdrop>*{visibility:hidden}
#simple.from-title{inset:0;z-index:56;padding:clamp(12px,3vw,36px);background:#102838b3}
.title-topbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex:none;
  padding:12px 20px;background:#202c2bea;border-bottom:3px solid #3b4b43;
  box-shadow:0 2px 0 #132c39;position:relative;z-index:1;
}
.title-profile{display:flex;align-items:center;gap:11px;min-width:0;text-align:left}
.title-profile img{width:36px;height:36px;object-fit:cover;border:3px solid #eee5ce;outline:2px solid #b44739;flex:none}
.title-profile strong{display:block;color:#ffe16b;font-size:13px;letter-spacing:1px;line-height:1.5}
.title-profile span{display:block;color:#83dce4;font-size:10px;font-weight:700;letter-spacing:1px;line-height:1.5}
.title-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
#title .title-nav button,#title .title-nav a{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;
  padding:7px 11px;margin:0;border:2px solid #495152;border-radius:2px;
  background:#faf5e5;color:#26323a;box-shadow:0 3px 0 #121e24;
  font:700 12px/1.3 'Courier New',monospace;text-decoration:none;white-space:nowrap;cursor:pointer;
}
#title .title-nav button:hover,#title .title-nav a:hover{background:#ffe8ad;color:#873b29}
.title-nav svg{width:12px;height:12px;flex:none}
.title-stage{display:grid;place-items:center;flex:1 0 auto;padding:clamp(28px,7vh,90px) 24px;min-height:min-content}
#title .tcard{width:min(850px,100%);padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;color:#263e50}
#title .title-brand{padding:0 0 30px;text-align:center}
#title h1{
  font-family:'Press Start 2P','Courier New',monospace;font-size:clamp(28px,5.4vw,62px);
  font-weight:900;line-height:1.45;letter-spacing:-2px;margin:0 0 14px;color:#ffe571;
  text-shadow:0 -3px 0 #fff7b3,3px 0 0 #224e81,-3px 0 0 #224e81,0 4px 0 #224e81,4px 4px 0 #224e81,-4px 4px 0 #224e81,0 8px 0 #15375a;
  animation:none;
}
#title .sub2{margin:0 0 12px;font-size:14px;line-height:1.5;letter-spacing:4px;text-shadow:none}
#title .dxspan.cryst{
  display:inline-block;background:#193e59;color:#d5f7f5;border:0;border-radius:2px;
  padding:5px 12px 5px 16px;box-shadow:none;animation:none;
}
#title .sub{display:block;background:none;color:#fffcef;border:0;padding:0;margin:0;font-size:15px;font-weight:700;line-height:1.5;text-shadow:0 1px 2px #17364f,0 2px 6px #17364f}
.title-console{width:min(380px,100%);margin:0 auto;padding:12px;border:2px solid #28435c;border-radius:5px;background:#f5f8ed;box-shadow:0 4px 0 #15344c;text-align:center}
.title-menu{display:block;padding:0}
#titleStart{
  display:block;width:100%;min-height:56px;margin:0;padding:13px 17px;border:2px solid #a9563c;border-radius:3px;
  background:#ffdf9b;box-shadow:inset 0 2px 0 #fff3c5,0 3px 0 #b98450;
  color:#273f51;font:700 18px/1.5 'Courier New',monospace;animation:none;transition:none;cursor:pointer;
}
.title-start-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
#titleStartLabel{font-size:17px;letter-spacing:1px}
.title-key{font-size:11px;font-weight:700;border:1px solid #9f775a;border-radius:2px;line-height:1.5;padding:2px 5px;color:#765337;background:#fff3d6}
#titleStart:hover{background:#ffe9b4;border-color:#a9563c}
#title .title-links{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:10px}
#title .title-links>button,#titleOptions>button,#titleNewBtn{
  display:block;min-height:40px;width:auto;margin:0;padding:9px 10px;border:0;border-radius:3px;background:transparent;box-shadow:none;
  color:#35576c;font:700 13px/1.5 'Courier New',monospace;text-align:center;cursor:pointer;
}
#title .title-links>button:hover,#titleOptions>button:hover,#titleNewBtn:hover{background:#e0e9e3;color:#243e50}
#titleOptionsBtn[aria-expanded=true]{background:#dce8e2}
#titleOptions{display:flex;align-items:flex-start;justify-content:center;flex-wrap:wrap;gap:4px;padding-top:8px;margin-top:4px;border-top:1px solid #bccdce}
#titleOptions[hidden]{display:none}
#title .tnew{margin:0;max-width:100%;display:flex;flex-direction:column;align-items:center}
#title .tnew.hidden{display:none}
#titleNewHint{font-size:12px;line-height:1.5;color:#963d32;padding:4px 8px 8px}
#titleNewHint:empty{display:none}
#titleNewBtn.armed{background:#b64239;color:#fffdf0;padding:9px 12px}
#title button:focus-visible,#title a:focus-visible{outline:3px solid #b34e2d;outline-offset:3px}
#title .title-nav button:focus-visible,#title .title-nav a:focus-visible{outline-color:#ffe571}
@media(max-width:760px){
  .title-topbar{padding:11px 14px;gap:12px;flex-wrap:wrap}
  .title-profile{flex:1 0 100%}.title-profile img{width:30px;height:30px}
  .title-nav{width:100%;justify-content:flex-start;gap:6px}
  #title .title-nav button,#title .title-nav a{min-height:40px;padding:7px 9px}
}
@media(max-width:600px){
  .title-topbar{padding:10px;gap:10px}
  .title-profile strong{font-size:12px}.title-profile span{font-size:9px}
  .title-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
  #title .title-nav button,#title .title-nav a{font-size:10px;padding:7px 3px;min-height:44px;gap:0}
  .title-nav svg,.title-nav>button>span,.title-nav>a>span{display:none}
  .title-stage{padding:38px 16px}
  #title .title-brand{padding:0 0 24px}
  #title h1{font-size:clamp(23px,6.3vw,36px);letter-spacing:-1px;margin-bottom:12px}
  #title .sub2{font-size:12px;letter-spacing:3px;margin-bottom:10px}
  #title .sub{font-size:14px}
  #titleStartLabel{font-size:15px}
  #titleStart{padding:12px;min-height:52px}
  #title .title-links>button,#titleOptions>button,#titleNewBtn{min-height:44px}
}
@media(max-height:600px) and (min-width:601px){
  .title-stage{padding:24px}
  #title .title-brand{padding-bottom:18px}
  #title h1{font-size:36px;margin-bottom:8px}
  #title .sub2{margin-bottom:8px;font-size:12px}
  #title .sub{font-size:13px}
}
@media(pointer:coarse){.title-key{display:none}.title-start-heading{justify-content:center}}
@media(prefers-reduced-motion:reduce){#title *,#title *::before,#title *::after{animation:none;transition:none}}
