/* Shared menu finishing: measured headers, inset content, and readable controls. */
#shell[data-appearance] .back-button{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:44px;flex-shrink:0}
#shell[data-appearance] .back-button::before,#shell[data-appearance] .back-button::after{display:none!important}
#shell[data-appearance] .back-button .menu-back-icon{display:inline-flex;align-items:center;width:16px;height:20px;flex:none;color:inherit}
#shell[data-appearance] .menu-back-icon svg{display:block;width:100%;height:100%;stroke:currentColor}
#shell[data-appearance] :is(.party-dialog,.rooms-dialog,.career-dialog,.account-dialog,.expansion-dialog,.settings-dialog)>.panel-heading,#shell[data-appearance] :is(.career-dialog,.account-dialog,.settings-dialog)>header{flex-shrink:0;min-height:52px;align-items:center;gap:12px;background:var(--a-panel);z-index:3}
#shell[data-appearance] :is(.panel-heading,.settings-header,.career-dialog>header) h2{margin:0;line-height:1.2}
#shell[data-appearance] :is(.party-dialog,.rooms-dialog) .panel-heading{position:relative!important;top:auto!important;margin:0!important;padding-bottom:12px}
#shell[data-appearance] #party-panel .party-columns{gap:16px;min-width:0;flex-shrink:0}
#shell[data-appearance] #party-panel .party-choice{display:flex;flex-direction:column;gap:12px;min-width:0;margin:0}
#shell[data-appearance] #party-panel .party-choice h3{margin:0;line-height:1.2}
#shell[data-appearance] #party-panel .party-choice>p{margin:0;line-height:1.5}
#shell[data-appearance] #party-panel .party-choice #join-form{display:flex;flex-direction:column;gap:10px;margin-top:auto}
#shell[data-appearance] #party-panel .party-choice #join-form :is(p,small){margin:0}
#shell[data-appearance] #party-panel .party-choice>button{margin-top:auto}
#shell[data-appearance] #party-panel .party-note{padding:4px 0 0;margin:0;font-size:.8rem;line-height:1.4}
#shell[data-appearance] #account-panel .account-form{background:transparent!important;border:0!important;box-shadow:none!important}
#shell[data-appearance] #account-panel .account-input{background:var(--a-raised)!important;border:1px solid var(--a-line)!important;border-radius:12px;overflow:hidden;align-items:stretch}
#shell[data-appearance] #account-panel .account-input input{background:transparent!important;border:0!important;box-shadow:none!important;min-width:0;padding:11px 12px;color:var(--a-ink)!important}
#shell[data-appearance] #account-panel .account-input button{border:0!important;border-left:1px solid var(--a-line)!important;border-radius:0!important;background:var(--a-soft)!important;color:var(--a-ink)!important;min-width:48px}
#shell[data-appearance] #account-panel .account-hero{padding:14px!important;border:1px solid var(--a-line)!important;border-radius:14px;min-height:0}
#shell[data-appearance] #account-panel .account-hero :is(strong,p){margin:0;line-height:1.4}
#shell[data-appearance] #account-panel .account-hero p{margin-top:6px}
#shell[data-appearance] #account-panel :is(.account-status,.account-divider,.guest-divider){color:var(--a-muted)!important}
#shell[data-appearance] #career-panel .journey-overview{padding:16px!important;background:var(--a-raised)!important;border:1px solid var(--a-line)!important;box-shadow:none!important}
#shell[data-appearance] #career-panel .journey-overview .level-summary{background:transparent!important;gap:12px;margin:0 0 10px}
#shell[data-appearance] #career-panel .journey-overview :is(strong,span){color:var(--a-ink)!important}
#shell[data-appearance] :is(#career-panel,#lobby) progress{appearance:none;border:0;border-radius:999px;overflow:hidden;background:var(--a-soft);height:8px}
#shell[data-appearance] :is(#career-panel,#lobby) progress::-webkit-progress-bar{background:var(--a-soft);border-radius:999px}
#shell[data-appearance] :is(#career-panel,#lobby) progress::-webkit-progress-value{background:linear-gradient(90deg,#28a99b,#70d5bd);border-radius:999px}
#shell[data-appearance] :is(#career-panel,#lobby) progress::-moz-progress-bar{background:#28a99b;border-radius:999px}
#shell[data-lobby-tone=dark] #expansion-panel{--g-blue:#518cb1;--g-coral:#ad6887;--g-purple:#9076b7;--g-teal:#4c9d98}
#shell[data-lobby-tone=dark] #expansion-panel .mode-launch{background:linear-gradient(130deg,#243f57,#303753)!important;border-color:#687a9f!important}
#shell[data-lobby-tone=dark] #expansion-panel #mode-practice{background:#294c5a!important;color:#e4f5fc!important;border-color:#7398a7!important}
#shell[data-appearance] #expansion-panel .mode-launch-title{display:block!important}
#shell[data-appearance] #expansion-panel .mode-world-details{display:block}
#shell[data-appearance] #expansion-panel .mode-world-details>summary{display:flex!important}
#shell[data-appearance] #expansion-panel .mode-card[aria-pressed=true]::after{content:'✓';font-family:system-ui,sans-serif;color:var(--a-panel)}
#shell[data-appearance] :is(#settings-panel,#career-panel,#expansion-panel,#account-panel) :is([role=tab],.expansion-tabs button){text-decoration:none!important}
@media(orientation:portrait){
 #shell[data-appearance] #party-panel .party-dialog{display:flex;flex-direction:column;gap:14px;overflow-y:auto;scroll-padding-top:12px}
 #shell[data-appearance] #party-panel .party-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
 #shell[data-appearance] #party-panel .party-choice{padding:18px;gap:14px}
 #shell[data-appearance] #party-panel #party-snake-preview{max-height:120px}
 #shell[data-appearance] #settings-panel .settings-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:5px;flex-shrink:0}
 #shell[data-appearance] #settings-panel .settings-tabs button{min-width:0;min-height:44px;white-space:normal;padding:8px}
 #shell[data-appearance] #account-panel .account-hero{display:none!important}
 #shell[data-appearance] #account-panel .account-note{margin:0;font-size:.85rem;line-height:1.4}
 #shell[data-appearance] #account-panel .account-tabs button{min-height:48px}
 #shell[data-appearance] #career-panel .level-summary{flex-wrap:wrap}
}
@media(orientation:landscape) and (max-height:600px){
 #shell[data-appearance] #party-panel .party-choice{gap:8px;padding:12px}
 #shell[data-appearance] #party-panel #party-snake-preview{max-height:70px}
 #shell[data-appearance] #party-panel .party-choice #join-form{gap:7px}
 #shell[data-appearance] #career-panel .journey-overview{padding:12px!important}
}

#shell[data-appearance] #party-panel .party-dialog{max-height:calc(100dvh - 32px)!important;min-height:0!important;box-sizing:border-box;justify-content:flex-start}
#shell[data-appearance] #party-panel .panel-heading{margin-bottom:4px!important}
#shell[data-appearance] #collection-panel.catalog-remake #collection-cards[data-catalog=accessories] .catalog-card-shell>.collection-card,#shell[data-appearance] #collection-panel.catalog-remake #store-cards[data-catalog=accessories] .catalog-card-shell>.store-card{height:100%!important;max-height:none!important;min-height:160px!important;padding:48px 8px 48px!important;justify-content:center}
#shell[data-appearance] #collection-book :is(.snake-home,.book-section,.book-section>summary){background:var(--a-raised)!important;color:var(--a-ink)!important;border:1px solid var(--a-line)!important;border-radius:12px}
#shell[data-appearance] #collection-book :is(.snake-home>summary,.book-section>summary){padding:12px 14px;min-height:44px;line-height:1.35}
#shell[data-appearance] #collection-book .snake-home-room{background:var(--a-soft)!important;color:var(--a-ink)!important;border-color:var(--a-line)!important;box-shadow:none!important}
#shell[data-appearance] #collection-book :is(h3,h4,strong,summary){color:var(--a-ink)!important}
#shell[data-appearance] #collection-book :is(p,.book-section-count){color:var(--a-muted)!important}
#shell[data-appearance] #account-panel .account-tabs button{text-decoration:none!important}
#shell[data-appearance] #collection-panel .section-switch button{text-decoration:none!important}
#shell[data-appearance] #account-panel #account-form{background:transparent!important}
#shell[data-appearance] #account-panel .account-input>span[aria-hidden=true]{display:none}
#shell[data-appearance] #account-panel #account-email,#shell[data-appearance] #account-panel #account-password{background:transparent!important;flex:1;min-width:0}
#shell[data-appearance] #collection-panel.catalog-remake :is(.collection-card,.store-card)::after{z-index:1;inset:auto auto 11px 9px;width:20px;height:20px;line-height:20px;background:none!important;filter:none!important;transform:none!important;border-radius:0;box-shadow:none!important;font-family:system-ui,sans-serif;font-size:16px;opacity:1;color:var(--a-muted)}
#shell[data-appearance] #collection-panel.catalog-remake :is(.collection-card,.store-card)[data-ownership=equipped]::after{color:var(--a-ink)}
#shell[data-appearance] #collection-panel.catalog-remake :is(.collection-card,.store-card)[data-ownership=owned]::after{color:var(--a-ink)}
#shell[data-appearance] #collection-panel :is(.collection-actions,.store-actions) button{font-family:system-ui,sans-serif;font-weight:750}
#shell[data-appearance] #expansion-panel .mode-card[aria-pressed=true]::after{font-family:system-ui,sans-serif;line-height:20px;font-size:14px}
#shell[data-appearance] #expansion-panel #mode-cards .mode-card[aria-pressed=true]::after{content:'✓'!important;font-family:system-ui,sans-serif!important;font-size:14px!important;color:var(--a-panel)!important}
#shell[data-lobby-tone=dark] #expansion-panel .mode-launch #mode-practice{background:#294c5a!important;color:#e4f5fc!important;border-color:#7398a7!important}
