.character-scene{display:grid;grid-template-columns:1fr;gap:22px;max-width:1380px;margin:0 auto 24px}.character-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.character-heading h2{font:italic 800 clamp(30px,3.8vw,50px)/1 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.8px;margin:8px 0;color:#f1d19d}.character-heading p{font-size:13px;color:#b5c8bd;margin:8px 0 0}.character-back{flex-shrink:0;background:none;color:#d9bd8c;font:700 12px 'Barlow Condensed';letter-spacing:1px;border:1px solid #64726c;padding:12px 16px;min-height:44px;cursor:pointer}.character-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.character-card{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;overflow:hidden;border:1px solid #536865;background:radial-gradient(ellipse at 50% 44%,#3d5050 0,#233638 50%,#15282d 85%);color:#eaddbe;cursor:pointer;text-align:left;box-shadow:0 8px 18px #0003;transition:border-color .15s,background .15s,transform .15s}.character-card:nth-child(2){background:radial-gradient(ellipse at 50% 44%,#554636,#302f2a 50%,#1b282a 85%)}.character-card:nth-child(3){background:radial-gradient(ellipse at 50% 44%,#503b57,#2f2e40 50%,#1b2930 85%)}.character-card[aria-pressed=true]{border-color:var(--character-color);box-shadow:inset 0 0 0 2px var(--character-color),0 8px 20px #0005}.character-card:hover{transform:translateY(-2px)}.character-card:focus-visible,.character-back:focus-visible,.garage-player-badge:focus-visible{outline:3px solid #ffda92;outline-offset:3px}.character-number{display:block;position:relative;z-index:1;margin:17px 19px 0;font:700 10px 'Barlow Condensed';letter-spacing:1.5px;color:var(--character-color)}.character-portrait{display:flex;justify-content:center;align-items:flex-end;height:clamp(230px,35vw,370px);padding:14px 22px 4px;overflow:hidden}.character-portrait img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 5px #0005);transition:transform .2s}.character-card:hover img{transform:scale(1.025)}.character-card-copy{display:grid;gap:7px;padding:16px 22px 18px;background:linear-gradient(transparent,#101e24b3);flex:1}.character-card-copy strong{font:italic 800 34px/1 'Barlow Condensed';text-transform:uppercase;color:#f5dfb7}.character-card-copy>span{font:12px/1.55 'DM Sans',sans-serif;color:#c3cbbd;max-width:300px}.character-pick{display:block;text-align:center;background:#1a2e31;color:#b4c6b9;border-top:1px solid #526762;padding:11px;font:800 12px 'Barlow Condensed';letter-spacing:2px}.character-card[aria-pressed=true] .character-pick{background:var(--character-color);color:#15272d}.character-name-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(200px,1.3fr) auto;gap:14px 28px;align-items:center;padding:22px 26px;background:#23383b;border:1px solid #546763}.character-selected strong{display:block;font:italic 700 28px 'Barlow Condensed';color:#efd0a1;margin:4px 0}.character-selected p{color:#a8bdb3;font:12px/1.5 'DM Sans';margin:3px 0;max-width:275px}.character-name-field label{display:block;font:700 11px 'Barlow Condensed';letter-spacing:1.5px;color:#d5b382;margin:0 0 8px}.character-name-field input{display:block;width:100%;min-height:48px!important;padding:10px 13px;font:18px 'DM Sans'!important;border:1px solid #92a493!important;border-radius:3px}.character-name-field input:focus{outline:2px solid #ecc58c;outline-offset:2px}.character-name-help{display:flex;justify-content:space-between;gap:12px;color:#a5b8ad;font:10px/1.5 'DM Sans';margin-top:6px}.character-name-help output{flex:none}.character-save{min-height:49px;padding:14px 25px;white-space:nowrap;cursor:pointer}.character-save-note{grid-column:1/-1;text-align:right;color:#99aea3;font-size:10px}.garage-player-badge{position:absolute;z-index:4;right:14px;bottom:calc(var(--garage-dock) + 12px);display:flex;align-items:center;gap:9px;max-width:235px;padding:5px 10px 5px 6px;background:#172b2de8;color:#f4d8a5;border:1px solid #b29669;border-radius:5px;text-align:left;cursor:pointer;min-height:54px;box-shadow:0 3px 10px #0015}.garage-player-badge img{width:34px;height:44px;object-fit:contain}.garage-player-badge>span:nth-last-child(2){min-width:0}.garage-player-badge strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:italic 700 18px 'Barlow Condensed'}.garage-player-badge small{display:block;font:600 9px 'Barlow Condensed';letter-spacing:.7px;margin-top:3px;color:#acbdb0}.garage-player-badge>span:last-child{color:#f0c384;font-size:16px}.player-plus{font-size:25px;padding:5px}.garage-player-badge:hover{background:#304d47}.desktop-ui #modes button[data-mode=character]{color:#d6b0e5}.desktop-ui #modes button[data-mode=character].active{color:#243333}
@media(max-width:900px){.character-name-form{grid-template-columns:1fr 1.4fr}.character-save{grid-column:2;grid-row:2}.character-save-note{grid-column:1;grid-row:2;text-align:left}.character-card-copy{padding:12px}.character-card-copy strong{font-size:28px}.character-number{margin:13px 12px 0;font-size:9px;letter-spacing:.7px}.character-portrait{padding:10px 12px 0}}
@media(max-width:550px){.character-scene{gap:14px}.character-heading{align-items:flex-start}.character-heading h2{font-size:30px;max-width:250px}.character-heading p{font-size:12px}.character-back{font-size:10px;padding:10px 8px}.character-roster{gap:7px}.character-number{font-size:8px;letter-spacing:.2px;margin:10px 8px 0;min-height:24px}.character-portrait{height:clamp(145px,40vw,215px);padding:7px 4px 0}.character-card-copy{padding:10px 8px;gap:7px}.character-card-copy strong{font-size:23px}.character-card-copy>span{font-size:10px;line-height:1.4}.character-pick{font-size:10px;padding:11px 5px;letter-spacing:1px}.character-name-form{padding:16px;grid-template-columns:1fr;gap:16px}.character-selected p{max-width:none}.character-name-field{grid-row:auto}.character-save{grid-column:1;grid-row:auto;width:100%}.character-save-note{grid-column:1;grid-row:auto;text-align:center;margin-top:-5px}.character-selected{display:none}.character-heading .micro{font-size:8px;letter-spacing:1px}}
.mobile-ui .garage-player-badge{right:8px;bottom:calc(var(--garage-dock) + 7px);max-width:190px;min-height:44px;padding:3px 7px;gap:7px}.mobile-ui .garage-player-badge img{width:25px;height:34px}.mobile-ui .garage-player-badge strong{font-size:16px}.mobile-ui .garage-player-badge small{font-size:8px}.mobile-ui .character-scene{margin:0;min-height:100%;gap:12px}.mobile-ui .character-card{min-height:0}.mobile-ui .character-heading{gap:12px}.mobile-ui .character-heading h2{font-size:32px}.mobile-ui .character-name-field input{font-size:16px!important}.mobile-ui .character-pick{min-height:34px;display:grid;place-items:center}.mobile-ui .character-save{min-height:48px}
@media(orientation:landscape){.mobile-ui[data-game-mode=character] #view{overflow:hidden}.mobile-ui .character-scene{height:100%;min-height:0;grid-template-columns:minmax(0,1fr) clamp(200px,28vw,295px);grid-template-rows:auto minmax(0,1fr);gap:9px 12px}.mobile-ui .character-heading{grid-column:1/-1}.mobile-ui .character-heading h2{font-size:27px;margin:3px 0}.mobile-ui .character-heading p,.mobile-ui .character-heading .micro{display:none}.mobile-ui .character-heading .character-back{font-size:11px;padding:7px 10px;min-height:38px}.mobile-ui .character-roster{min-height:0;gap:8px}.mobile-ui .character-card-copy{padding:8px 9px;flex:none}.mobile-ui .character-card-copy strong{font-size:24px}.mobile-ui .character-card-copy>span{display:none}.mobile-ui .character-number{font-size:8px;margin:8px 9px 0;min-height:0;letter-spacing:.5px}.mobile-ui .character-portrait{height:auto;min-height:0;flex:1;padding:5px 9px 0}.mobile-ui .character-pick{min-height:30px;padding:6px;font-size:10px}.mobile-ui .character-name-form{display:flex;flex-direction:column;align-items:stretch;justify-content:center;overflow:auto;gap:12px;padding:12px;min-height:0}.mobile-ui .character-selected{display:block}.mobile-ui .character-selected strong{font-size:25px;margin:2px 0}.mobile-ui .character-selected p{display:none}.mobile-ui .character-name-help{font-size:9px}.mobile-ui .character-name-field label{font-size:10px;margin-bottom:6px}.mobile-ui .character-save{padding:10px;min-height:44px}.mobile-ui .character-save-note{text-align:center;font-size:9px;margin:0}}
@media(prefers-reduced-motion:reduce){.character-card,.character-portrait img{transition:none}.character-card:hover,.character-card:hover img{transform:none}}
@media(orientation:landscape){.mobile-ui .character-name-form{justify-content:safe center}.mobile-ui .character-name-form>*{flex-shrink:0}}
@media(orientation:landscape) and (max-height:350px){.mobile-ui .character-selected,.mobile-ui .character-save-note{display:none}.mobile-ui .character-name-form{gap:10px}.mobile-ui .character-card-copy strong{font-size:21px}}
