/* The game owns the viewport; only long menus may scroll. */
html, body { width:100%; height:100%; min-width:0; min-height:0; margin:0; overflow:hidden; overscroll-behavior:none; }
#graylineApp { position:fixed; inset:0; width:100%; height:100%; min-height:0; overflow:hidden; }
#titleScreen { overflow:hidden; padding:clamp(12px,2vh,24px); align-items:center; box-sizing:border-box; }
#titleScreen .title-backdrop { transform:none; }
#titleScreen .title-content { box-sizing:border-box; width:min(1460px,100%); min-height:0; max-height:100%; overflow:auto; margin:0 auto; padding:clamp(16px,2.5vh,36px) 24px; scrollbar-width:thin; }
#titleScreen .title-actions { flex-wrap:wrap; }
#exitGameDialog { margin:auto; width:min(480px,calc(100vw - 40px)); padding:28px; border:1px solid #777; background:#080808; color:#eee; }
#exitGameDialog::backdrop { background:#000c; }
#exitGameDialog h2 { font-weight:400; letter-spacing:.08em; }
#exitGameDialog p { line-height:1.5; }
#exitGameDialog .overlay-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
@media (min-width:1000px) and (max-height:850px) {
  #titleScreen .title-content { padding:16px 24px; }
  #titleScreen h1 { font-size:clamp(48px,7vh,76px); }
  #titleScreen .title-tagline { margin-top:12px; }
  #titleScreen .title-description { margin-block:8px; }
  #titleScreen .skirmish-setup { margin-block:12px; }
  #titleScreen .title-foot { margin-top:12px; }
}
