.launch-shell { max-width:1000px; }
.launch-topbar { justify-content:space-between; gap:16px; min-height:88px; }
.launch-topbar .btn-quiet { color:var(--gold); }
.launch-main { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; padding:64px 0; min-height:calc(100svh - 170px); }
.launch-intro h1 { font-size:clamp(40px,5vw,58px); }
.launch-intro p { color:var(--muted); max-width:340px; margin-top:22px; font-size:15px; }
.club-seal { width:100px; height:100px; margin-bottom:28px; }
.launch-meta { display:block; color:var(--gold); margin-top:30px; font-size:12px; }
.launch-panel { min-width:0; padding:30px; border:1px solid var(--line); border-radius:var(--radius); background:var(--panel); }
.launch-panel h2 { font-size:26px; }
.launch-panel>p { color:var(--muted); margin-top:8px; }
.launch-panel .btn-primary { width:100%; margin-top:22px; font-size:15px; }
.launch-panel input { font-size:18px; letter-spacing:4px; text-transform:uppercase; }
.launch-panel label { font-size:13px; }
.launch-host { display:flex; flex-direction:column; gap:5px; padding:22px 0 0; margin-top:24px; border-top:1px solid var(--line); text-decoration:none; }
.launch-host strong { color:var(--gold); font-size:16px; font-weight:500; }
.launch-host span { font-size:12px; color:var(--muted); }
.resume-games { display:grid; gap:10px; margin-bottom:22px; }
.resume-games a { padding:13px 16px; background:#35463e; color:#d1e6da; border:1px solid #5d7d6e; border-radius:8px; text-decoration:none; font-size:14px; }
.launch-help { font-size:12px; color:var(--muted); margin-top:22px; }
.launch-help summary { cursor:pointer; min-height:44px; display:flex; align-items:center; text-decoration:underline; text-underline-offset:4px; }
.launch-help p { margin-top:8px; }
.install-dialog { color:var(--text); background:var(--panel); border:1px solid var(--line); border-radius:18px; padding:28px; width:min(440px,calc(100% - 32px)); max-height:85svh; }
.install-dialog::backdrop { background:#120b11cc; }
.install-dialog h2 { font-size:26px; padding-right:24px; }
.install-dialog p { color:var(--muted); margin:12px 0; }
.install-dialog details { margin-top:12px; border-top:1px solid var(--line); padding-top:8px; }
.install-dialog summary { padding:8px 0; cursor:pointer; font-size:16px; }
.install-dialog ol { padding-left:22px; margin:8px 0 16px; }
.install-dialog li { margin:8px 0; }
.install-close { position:absolute; top:12px; right:12px; width:44px; height:44px; background:transparent; border:0; color:var(--muted); font-size:28px; }
.install-dialog .btn-primary { width:100%; margin-top:20px; }
.install-launch { padding:0; border:0; background:none; color:var(--gold); text-decoration:underline; text-underline-offset:4px; min-height:44px; }
.offline-main { min-height:100svh; display:grid; place-content:center; max-width:460px; margin:auto; padding:32px; text-align:center; }
.offline-main img { margin:0 auto 28px; }
.offline-main h1 { font-size:34px; letter-spacing:-1px; }
.offline-main p { color:var(--muted); margin:22px 0; }
.offline-main a { text-decoration:none; }
@media (max-width:700px) {
    .launch-main { grid-template-columns:minmax(0,1fr); gap:28px; padding:30px 0; align-content:start; }
    .launch-intro { position:relative; padding-right:72px; }
    .launch-intro h1 { font-size:38px; letter-spacing:-1.5px; }
    .launch-intro p { font-size:13px; margin-top:14px; }
    .club-seal { position:absolute; right:0; top:4px; width:60px; height:60px; }
    .launch-meta { margin-top:16px; }
    .launch-panel { padding:24px; }
    .launch-shell footer { margin-top:0; }
    .launch-topbar { min-height:76px; flex-wrap:nowrap; }
    .launch-topbar .btn-quiet { font-size:11px; padding:8px 10px; }
}
@media (max-width:370px) {
    .launch-intro h1 { font-size:33px; }
    .launch-panel { padding:22px 18px; }
    .launch-topbar .brand small { display:none; }
}
