/* Full-body character selection. The image always remains inside its stage. */
.brand .arcade-wordmark{width:186px;height:58px;object-fit:contain;filter:none}
.topnav{gap:18px;padding-block:9px}
.player-chip img,.level-ring>img,.podium-slot>img,.board-list img{object-fit:contain!important}
.character-modal.modal-card{width:min(920px,100%);padding:0;text-align:left;overflow:auto;scrollbar-gutter:auto}
.character-heading{padding:26px 30px 0}
.character-heading h2{font-size:clamp(1.55rem,3vw,2rem);padding:0}
.character-heading>.muted{margin:8px 0 0;font-size:.83rem}
.character-heading .eyebrow{font-size:.62rem;letter-spacing:.18em;margin-bottom:8px}
.character-modal .avatar-picker{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1.18fr);gap:28px;margin:22px 30px 26px;text-align:left}
.avatar-stage{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line);border-radius:20px;padding:15px 15px 18px;background:radial-gradient(ellipse at 50% 35%,rgba(230,43,94,.2),transparent 67%),rgba(255,255,255,.018)}
.avatar-edition{font-size:.55rem;letter-spacing:.25em;color:var(--muted);font-weight:700}
.avatar-display{position:relative;height:260px;isolation:isolate;width:100%;display:grid;place-items:center;padding:10px 20px 12px}
.avatar-display .avatar-fullbody{position:relative;display:block;inset:auto;width:100%;height:100%;max-height:238px;object-fit:contain;object-position:center;transform:none;filter:drop-shadow(0 10px 14px rgba(0,0,0,.18));z-index:2}
.avatar-halo{position:absolute;width:195px;height:195px;max-width:90%;border:1px solid var(--line-2);border-radius:50%;top:35px;background:radial-gradient(circle,rgba(249,162,193,.06),transparent 70%);z-index:0}
.avatar-halo:after{content:'';position:absolute;inset:12px;border:1px dashed var(--line);border-radius:50%}
.avatar-plinth{position:absolute;width:75%;height:26px;bottom:8px;border:1px solid rgba(245,184,61,.4);border-radius:50%;background:radial-gradient(ellipse,rgba(245,184,61,.16),transparent 65%);z-index:1;box-shadow:0 8px 24px rgba(230,43,94,.15)}
.avatar-caption{min-height:94px;width:100%}
.avatar-tag{display:inline-block;font-size:.59rem;font-weight:700;letter-spacing:.08em;color:var(--gold-soft);margin:7px 0 5px;text-transform:uppercase}
.character-modal .avatar-name{font-size:1.25rem;line-height:1.2;margin:0 0 7px}
.avatar-description{font-size:.72rem;line-height:1.6;color:var(--muted);margin:0;max-width:29em}
.avatar-selection{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:0}
.avatar-selection-heading{display:flex;justify-content:space-between;gap:8px;font-size:.59rem;letter-spacing:.11em;font-weight:700;color:var(--muted);margin-bottom:12px}
.avatar-selection-heading span:last-child{color:var(--gold-soft)}
.character-modal .avatar-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.character-modal .avatar-roster button{position:relative;width:100%;height:150px;min-height:44px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid var(--line-2);padding:13px 8px 9px;display:flex;align-items:center;flex-direction:column;transition:border-color .18s,background .18s,box-shadow .18s;transform:none;overflow:hidden}
.character-modal .avatar-roster button:hover{border-color:var(--tulip);background:rgba(230,43,94,.09)}
.character-modal .avatar-roster button[aria-checked=true]{border:2px solid var(--gold);background:linear-gradient(150deg,rgba(245,184,61,.12),rgba(230,43,94,.1));box-shadow:0 0 0 3px rgba(245,184,61,.055);transform:none;padding:12px 7px 8px}
.character-modal .avatar-roster button img{width:100%;height:110px;min-height:0;object-fit:contain;object-position:center;border-radius:0;background:none;filter:drop-shadow(0 4px 5px rgba(0,0,0,.16))}
.avatar-card-name{font-size:.64rem;line-height:1.35;font-weight:700;margin-top:6px}
.avatar-number{position:absolute;top:7px;left:8px;color:var(--faint);font-size:.51rem;font-variant-numeric:tabular-nums}
.avatar-selected{position:absolute;right:6px;top:5px;display:none;align-items:center;justify-content:center;width:17px;height:17px;background:var(--gold);color:#45122b;border-radius:50%;font-size:.63rem}
[aria-checked=true]>.avatar-selected{display:flex}
.avatar-help{font-size:.68rem;color:var(--muted);margin:12px 0 0;line-height:1.5}
.character-footer{display:grid;grid-template-columns:minmax(180px,1fr) auto;column-gap:24px;align-items:end;border-top:1px solid var(--line);padding:20px 30px 24px;background:rgba(0,0,0,.12)}
.character-footer .field{margin:0;min-width:0;justify-content:normal}.character-footer .field input{width:100%}
.character-footer .field>span{font-size:.72rem;margin-bottom:6px}
.character-footer .modal-actions{grid-column:2;grid-row:1;align-items:center;margin:0;gap:10px;flex-wrap:nowrap}
.character-footer .btn{min-height:48px;font-size:.78rem;white-space:nowrap}
.character-footer .form-error{grid-column:1/-1;margin:0;font-size:.72rem}
.character-footer .form-error:not(:empty){margin-top:10px}
.profile-card.character-modal{padding:28px}
.profile-card.character-modal .avatar-picker{margin:20px 0}
.profile-card.character-modal>.field{max-width:420px}
.profile-card .avatar-display{height:240px}
.profile-card .avatar-display .avatar-fullbody{max-height:218px}
@media(max-width:1080px){.brand .arcade-wordmark{width:155px;height:48px}.topnav{gap:10px}.nav-links a{padding-inline:9px}}
@media(max-width:680px){
 .character-heading{padding:20px 18px 0}.character-heading .eyebrow{font-size:.53rem;letter-spacing:.1em}.character-heading>.muted{font-size:.72rem}
 .character-modal .avatar-picker{grid-template-columns:1fr;gap:14px;margin:16px 18px 18px}
 .avatar-stage{display:grid;grid-template-columns:120px minmax(0,1fr);padding:8px 12px;gap:9px;text-align:left;min-height:188px}
 .avatar-edition{position:absolute;top:10px;right:12px;font-size:.44rem;letter-spacing:.1em}
 .avatar-display,.profile-card .avatar-display{height:170px;padding:8px 2px;width:120px}
 .avatar-display .avatar-fullbody,.profile-card .avatar-display .avatar-fullbody{max-height:154px}
 .avatar-halo{width:110px;height:110px;top:27px}.avatar-plinth{height:15px;bottom:1px;width:90%}
 .avatar-caption{min-height:0;padding-top:12px}.character-modal .avatar-name{font-size:1.03rem}.avatar-description{font-size:.65rem;line-height:1.5}.avatar-tag{font-size:.49rem;margin:0 0 6px}
 .avatar-selection-heading{font-size:.54rem;margin-bottom:8px}.character-modal .avatar-roster{gap:8px}.character-modal .avatar-roster button{height:115px;padding:11px 6px 7px}.character-modal .avatar-roster button[aria-checked=true]{padding:10px 5px 6px}.character-modal .avatar-roster button img{height:77px}.avatar-card-name{font-size:.61rem;margin-top:5px}
 .avatar-help{font-size:.6rem;margin-top:9px}
 .character-footer{grid-template-columns:1fr;padding:16px 18px 18px;gap:12px}.character-footer .modal-actions{grid-column:1;grid-row:auto;flex-direction:row}.character-footer .btn{flex:1;min-height:46px;font-size:.73rem}.character-footer .field input{min-height:46px}.character-footer .field>span{font-size:.65rem}
 .profile-card.character-modal{padding:20px 18px}.profile-card.character-modal .avatar-picker{margin:18px 0}.character-modal .close{right:8px;top:8px}
 .brand .arcade-wordmark{width:132px;height:44px}.topnav{gap:8px}.player-chip{margin-left:auto;padding-right:7px;gap:4px}.chip-id b{max-width:70px;font-size:.66rem}.player-chip img{width:30px;height:30px}
}
@media(max-width:360px){.brand .arcade-wordmark{width:108px;height:39px}.topnav{padding-inline:10px;gap:5px}.character-heading{padding:18px 14px 0}.character-modal .avatar-picker{margin-inline:14px}.character-footer{padding-inline:14px}.avatar-stage{grid-template-columns:104px minmax(0,1fr);padding-inline:7px}.avatar-display,.profile-card .avatar-display{width:104px}.avatar-description{font-size:.59rem}.character-modal .avatar-name{font-size:.93rem}.avatar-number{display:none}}
@media(prefers-reduced-motion:reduce){.avatar-roster button{transition:none}}
