/* LAST RUN1 candidate only. Existing animal artwork, launch owner and account gates remain. */
.modern-lobby{--ui-surface:#10232c;--ui-line:#5d7882;--ui-muted:#c0d1d6;--ui-accent:#f1cc77}
.modern-lobby .topbar{height:auto;min-height:86px;padding-block:16px;gap:18px;flex-wrap:wrap;background:#08171eef}
.modern-lobby .brand{font-size:28px;letter-spacing:-1px}
.modern-lobby .brand span{letter-spacing:1px}
.modern-lobby .topbar nav{min-height:44px;align-self:center}
.modern-lobby .topbar .quiet-button{position:static;min-height:44px}
.modern-lobby .content{max-width:1480px;grid-template-columns:minmax(240px,1fr) minmax(380px,520px);align-items:center;gap:clamp(24px,5vw,72px);padding-block:36px}
.modern-lobby .scene-shade{background:linear-gradient(90deg,#07151c0d 12%,#07151c44 44%,#07151ce8 78%),linear-gradient(0deg,#07151cdd,transparent 65%)}
.modern-lobby .hero-caption{align-self:end;padding:28px 24px;border-left:3px solid var(--ui-accent);background:linear-gradient(90deg,#07151ce8,#07151c00);max-width:540px}
.modern-lobby .hero-caption h1{font-size:clamp(44px,6vw,86px);letter-spacing:-2px}
.modern-lobby .hero-caption p{font-size:18px;line-height:1.6;color:#edf3ed}
.modern-lobby .eyebrow{font-size:11px;letter-spacing:1.5px}
.modern-lobby .menu-panel{padding:26px;border-radius:18px;background:#10232cf5;backdrop-filter:none;border-color:var(--ui-line);box-shadow:0 20px 60px #0005}
.modern-lobby h2{font-size:27px;line-height:1.35}
.modern-lobby .intro{font-size:14px;color:var(--ui-muted);margin-bottom:20px}
.modern-lobby #account-bar{font-size:13px;border-bottom:1px solid var(--ui-line);padding-block:12px;gap:10px;flex-wrap:wrap}
.modern-lobby .roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.modern-lobby .character-card{height:106px;border-radius:9px}
.modern-lobby .character-card.selected{border:2px solid var(--ui-accent);box-shadow:0 0 0 2px #10232c,0 0 0 3px var(--ui-accent)}
.modern-lobby .character-card.selected:after{content:"선택";position:absolute;right:5px;top:5px;background:#f1cc77;color:#15232b;font-size:11px;font-weight:800;padding:2px 5px;border-radius:3px}
.modern-lobby .character-card>span{font-size:15px;padding-inline:8px}
.modern-lobby .character-card small{font-size:11px;color:#d4dfe0}
.modern-lobby .character-details{padding:16px;border:1px solid var(--ui-line);border-radius:10px;background:#091a22}
.modern-lobby .detail-heading{flex-wrap:wrap}
.modern-lobby .detail-heading>span,.modern-lobby .stats span{font-size:12px;color:var(--ui-muted)}
.modern-lobby .character-details>p{font-size:14px;color:#d9e5e6;min-height:0}
.modern-lobby .stats strong{font-size:16px;font-variant-numeric:tabular-nums}
.modern-lobby .stats i{height:5px;overflow:hidden}
.modern-lobby .skill-tags{margin-bottom:0}
.modern-lobby .skill-tags span{font-size:12px;color:#e3eeee;border-color:#6b8792}
.modern-lobby .destination{margin-top:20px;padding-top:18px}
.modern-lobby .destination strong{font-size:16px}
.modern-lobby .destination span{font-size:12px;line-height:1.6;color:var(--ui-muted)}
.modern-lobby .settings-row{margin:12px 0;flex-wrap:wrap}
.modern-lobby .stage-picker button{min-height:44px;font-size:13px}
.modern-launch{margin-top:20px;padding-top:18px;border-top:1px solid var(--ui-line)}
#modern-launch-summary{font-size:16px;font-weight:750;margin:0 0 8px}
#modern-launch-reason,#modern-save-state,#modern-mode-reason{font-size:13px;line-height:1.65;margin:8px 0;color:#d4e1e4}
#modern-launch-reason[data-blocked="true"]{border-left:3px solid #f1cc77;padding-left:10px;color:#ffe3a0}
#modern-save-state[data-pending="true"]{color:#ffe3a0}
#modern-mode-reason{font-size:12px;color:#b9ced4}
.modern-lobby #start{min-height:58px;border-radius:9px;font-size:20px}
.modern-lobby button:disabled{cursor:not-allowed;opacity:.72;filter:none;transform:none}
.modern-lobby .secondary-actions{gap:12px;flex-wrap:wrap}
.modern-lobby .secondary-actions button{min-height:44px;font-size:13px}
.modern-lobby button:focus-visible,.modern-lobby a:focus-visible,.modern-lobby select:focus-visible,.modern-lobby input:focus-visible,#loading button:focus-visible,#load-title:focus-visible{outline:3px solid #ffe5a2;outline-offset:4px}
#loading .dialog{border-radius:18px;background:#10232c;border-color:#718d97}
#loading progress{height:12px}
#loading #load-back{min-height:48px;font-size:15px}
.modern-lobby footer{gap:14px;flex-wrap:wrap;color:#c0d1d6;font-size:12px}
@media(max-width:900px){
 .modern-lobby .content{grid-template-columns:minmax(0,1fr);max-width:620px;padding:18px}
 .modern-lobby .hero-caption{height:auto;min-height:190px;width:100%;padding:24px 18px}
 .modern-lobby .scene>img{object-position:30% 30%}
 .modern-lobby .scene-shade{background:linear-gradient(0deg,#07151cf5 35%,#07151c22 100%)}
 .modern-lobby .menu-panel{width:100%;min-width:0;padding:22px}
 .modern-lobby .topbar nav{order:5;width:100%;margin-left:0;justify-content:space-between}
}
@media(max-width:480px){
 .modern-lobby .topbar{padding:14px 16px;gap:10px}
 .modern-lobby .brand{width:100%}
 .modern-lobby .topbar>.quiet-button{font-size:12px}
 .modern-lobby .content{padding:12px}
 .modern-lobby .menu-panel{padding:16px}
 .modern-lobby .roster{grid-template-columns:repeat(3,minmax(0,1fr))}
 .modern-lobby .character-card{height:98px}
 .modern-lobby .hero-caption h1{font-size:48px}
 .modern-lobby .hero-caption p{font-size:15px}
 .modern-lobby .stats{gap:10px}
 .modern-lobby .settings-row select{max-width:100%;width:160px}
}
@media(prefers-reduced-motion:reduce){
 .modern-lobby *,.modern-lobby *:before,.modern-lobby *:after,#loading *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){
 .modern-lobby .menu-panel,.modern-lobby .character-details,.modern-lobby .character-card{border:1px solid CanvasText}
 .modern-lobby .character-card.selected{outline:3px solid Highlight}
}
