/* One full-screen portrait scene owns the image. No duplicate backdrop or cards. */
.game-lobby[data-step=character]{background:#17100b;display:block;padding:28px 4vw;isolation:isolate;min-height:0;text-shadow:0 2px 8px #000}
.game-lobby[data-step=character] .character-heading{position:relative;z-index:2;display:flex;align-items:center;gap:24px;background:none;border:0}
.game-lobby[data-step=character] .character-heading>span{display:none}
.game-lobby[data-step=character] .character-heading h2{margin-left:auto;font-size:22px}
.game-lobby[data-step=character] .boarding-salon{position:static;display:block;min-height:0;width:auto}
.game-lobby[data-step=character] .boarding-portrait,.game-lobby[data-step=character]:not(.online) .boarding-portrait{position:absolute;inset:0;width:100%;height:100%;min-height:0;border:0;background:none;box-shadow:none;z-index:-1}
.game-lobby[data-step=character] .boarding-portrait .portrait-stage{inset:0;height:100%;mask-image:none;-webkit-mask-image:none}
.game-lobby[data-step=character] .boarding-character{bottom:132px;padding:0;background:none;pointer-events:none}
.game-lobby[data-step=character] .boarding-character :is(small,h3){display:none}
.game-lobby[data-step=character] #lobby-change-character{background:none;border:0;padding:8px;color:#e8d1ab;font:12px Georgia,serif;text-shadow:0 2px 8px #000;text-decoration:underline;text-underline-offset:4px}
.game-lobby[data-step=character] .lobby-controls{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);width:min(430px,calc(100% - 40px));display:flex;flex-direction:column;gap:12px;align-items:center;padding:0;margin:0;border:0;background:none}
.game-lobby[data-step=character] .embark-row{display:grid;grid-template-columns:minmax(0,1fr) 140px;width:100%;gap:12px}
.game-lobby[data-step=character] :is(#player-name,#play){height:46px;min-height:46px}
.game-lobby[data-step=character] #player-name{background:#160f0bba;border-color:#b69a6d;color:#fff0d1;text-align:center}
.game-lobby[data-step=character] #mode-description{display:none}
.game-lobby[data-step=character] .lobby-mode{background:none;border:0;box-shadow:none;display:flex;gap:18px}
.game-lobby[data-step=character] .lobby-mode button{background:none;border:0;border-bottom:1px solid transparent;border-radius:0;padding:4px 8px;min-height:28px;color:#cdb99a;text-shadow:0 2px 8px #000}
.game-lobby[data-step=character] .lobby-mode button.active{background:none;color:#fff0ce;border-bottom-color:#d9b779}
.game-lobby[data-step=character] #menu-status{margin:0;max-width:100%;text-align:center;color:#f2d6a3}
.game-lobby[data-step=character] #menu-status:empty{display:none}
.game-lobby[data-step=character] .lobby-invite-panel{position:absolute;right:4vw;top:27%;width:210px;padding:0;background:none;border:0;box-shadow:none;z-index:1}
.game-lobby[data-step=character] .lobby-invite-panel :is(.liner-eyebrow,p){display:none}
.game-lobby[data-step=character] .lobby-invite-panel h3{font-size:20px}
.game-lobby[data-step=character] .lobby-invite-panel ul{margin:14px 0;max-height:min(32vh,220px);overflow:auto;scrollbar-color:#a98b58 transparent}
.game-lobby[data-step=character] .lobby-invite-panel li{border:0;min-height:42px;color:#f1dec0}
.game-lobby[data-step=character] .lobby-invite-panel>button{background:none;border:0;text-align:left;padding:8px 0;text-decoration:underline;text-underline-offset:4px;color:#e4c99e}
.game-lobby[data-step=character] .lobby-team-slots{position:absolute;left:4vw;bottom:24px;display:flex;flex-direction:column;gap:8px;max-width:190px;max-height:160px;overflow:auto;scrollbar-color:#a98b58 transparent}
.game-lobby[data-step=character] .lobby-team-slots li{display:grid;grid-template-columns:22px 1fr;gap:0 8px;min-height:0;padding:0;background:none;border:0;box-shadow:none}
.game-lobby[data-step=character] .lobby-team-slots li>span{align-self:center;color:#d8b87e}
.game-lobby[data-step=character] .lobby-team-slots strong{margin:2px 0;color:#efdbb8}.game-lobby[data-step=character] .lobby-team-slots small{display:none}
@media(max-width:900px){.game-lobby[data-step=character] .lobby-invite-panel{width:160px;right:20px;top:22%}.game-lobby[data-step=character] .lobby-team-slots{left:20px;bottom:160px;max-width:150px}}
@media(max-width:580px){.game-lobby[data-step=character]{min-height:0;padding:18px}.game-lobby[data-step=character] .character-heading{gap:12px}.game-lobby[data-step=character] .character-heading h2{font-size:18px}.game-lobby[data-step=character] .lobby-invite-panel{top:auto;bottom:172px;right:18px;width:138px}.game-lobby[data-step=character] .lobby-invite-panel h3{font-size:16px}.game-lobby[data-step=character] .lobby-invite-panel ul{margin:4px 0}.game-lobby[data-step=character] .lobby-invite-panel li{min-height:32px;font-size:11px}.game-lobby[data-step=character] .lobby-invite-panel li small{display:none}.game-lobby[data-step=character] .lobby-team-slots{bottom:185px;left:18px;max-width:130px}.game-lobby[data-step=character] .lobby-team-slots strong{font-size:11px}.game-lobby[data-step=character] .embark-row{grid-template-columns:minmax(0,1fr) 120px}}
/* Disabled purchases retain an opaque, high-contrast price. */
dialog.shop-dialog{width:min(800px,calc(100vw - 32px));padding:26px;background:linear-gradient(125deg,#38271b,#1c140e)}
dialog.shop-dialog:not(#profile-dialog) header{padding-bottom:18px}dialog.shop-dialog:not(#profile-dialog) h2{font-size:34px}
dialog.shop-dialog:not(#profile-dialog) .shop-items{gap:12px}dialog.shop-dialog:not(#profile-dialog) .shop-item{grid-template-columns:28px minmax(0,1fr) auto;padding:14px 12px;gap:10px;min-height:92px;background:#ead6b0;color:#342312}
dialog.shop-dialog:not(#profile-dialog) .shop-item strong{font-size:16px;line-height:1.2}
dialog.shop-dialog:not(#profile-dialog) .shop-item small{color:#624b32;font-size:11px}
dialog.shop-dialog:not(#profile-dialog) .shop-item>b,dialog.shop-dialog:not(#profile-dialog) .shop-revive>b{padding:8px 9px;background:#352414;color:#ffe0a0;border:1px solid #78582f;border-radius:2px;font:bold 14px Georgia,serif;opacity:1;font-variant-numeric:tabular-nums;white-space:nowrap}
dialog.shop-dialog:not(#profile-dialog) .shop-item:disabled{opacity:1;background:#cdbd9e;color:#483a29;border-color:#9e8864;cursor:default}
dialog.shop-dialog:not(#profile-dialog) .shop-item:disabled>b{background:#352414;color:#ffe0a0;opacity:1}
dialog.shop-dialog:not(#profile-dialog) .shop-revive:disabled{opacity:1;background:#30251a;color:#cfbc9a}
dialog.shop-dialog:not(#profile-dialog) [data-status]:empty{min-height:0;margin:0}
@media(max-width:700px){dialog.shop-dialog:not(#profile-dialog) .shop-items{grid-template-columns:1fr}dialog.shop-dialog:not(#profile-dialog) .shop-item{min-height:70px}dialog.shop-dialog{padding:18px}dialog.shop-dialog:not(#profile-dialog) h2{font-size:29px}}

dialog.shop-dialog:not(#profile-dialog) .shop-item:enabled:hover{background:#f5e0ba;color:#2e1e0e;border-color:#e0ba77}dialog.shop-dialog:not(#profile-dialog) .shop-revive:enabled:hover{background:#70512a;color:#fff0ce}
