/* Game defaults exclude SDK-owned Privy portals; :where preserves selector specificity. */
@font-face{font-family:'Fredoka';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/fredoka-medium.ttf')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/dm-sans.ttf')}
:root{--ink:#201139;--paper:#fffcef;--muted:#705d82;--line:#ded2e8;--coral:#ff570b;--green:#3d2068}*:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',sans-serif}button:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),input:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),textarea:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font:inherit}button:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),a:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){-webkit-tap-highlight-color:transparent}button:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){cursor:pointer}button:focus-visible:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),a:focus-visible:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),input:focus-visible:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),textarea:focus-visible:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){outline:3px solid #ff570b;outline-offset:4px}header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){height:96px;max-width:1480px;margin:auto;display:flex;align-items:center;padding:0 54px;gap:36px;border-bottom:1px solid var(--line)}.wordmark{font:600 40px 'Fredoka','Trebuchet MS',sans-serif;letter-spacing:-1.5px;color:var(--ink);text-decoration:none;white-space:nowrap}.asterisk{color:#d87750;display:inline-block;font-size:41px;margin-left:8px;vertical-align:middle}.header-note{color:#705d82;font-size:13px}.primary{border:1px solid var(--green);background:var(--green);color:#fffcef;border-radius:9px;padding:13px 19px;font-weight:700}.primary:hover{background:#563087}header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){margin-left:auto}.primary span{margin-left:20px}main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){max-width:1480px;margin:auto;padding:36px 54px 0}.room-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700}h1:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font:500 37px 'Fredoka','Trebuchet MS',sans-serif;margin:7px 0 0;letter-spacing:-.6px}.room-number{font:500 12px 'DM Sans',sans-serif;vertical-align:middle;border:1px solid #bca8cd;border-radius:6px;padding:4px 6px;margin-left:5px;color:#705d82}.connection{display:flex;gap:7px;align-items:center;font-size:12px}.connection i{height:7px;width:7px;border-radius:50%;background:#bc8c53}.connection i.live{background:#559675;box-shadow:0 0 0 4px #55967514}.layout{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:24px;align-items:start}.world-panel{min-width:0}.world{position:relative;aspect-ratio:3/2;border:3px solid #355d51;border-radius:16px;overflow:hidden;background:#d4a576;isolation:isolate}.room-art{width:100%;height:100%;object-fit:cover;display:block}.world-tag{position:absolute;top:17px;left:17px;padding:8px 12px;border-radius:6px;background:#fffcefed;color:#705d82;font-size:11px;box-shadow:0 2px 0 #5246351c}.sun{font-size:18px;vertical-align:-2px;margin-right:3px}.view-label{position:absolute;bottom:15px;left:17px;color:#fef8df;font-size:11px;letter-spacing:1.5px;background:#514b35d9;padding:5px 7px;border-radius:4px}.table-hotspot{position:absolute;right:16px;bottom:16px;border:2px solid #345e50;background:#f9eed0;padding:11px 15px;box-shadow:0 3px 0 #345e50;border-radius:9px;font:500 16px 'Fredoka',sans-serif;color:var(--ink)}.table-hotspot span{display:block;font:11px 'DM Sans',sans-serif;margin-top:3px}.room-footer{display:flex;justify-content:space-between;padding:20px 1px 23px;gap:10px}.room-description{display:flex;flex-direction:column;gap:5px;font-size:12px}.room-description b{font-size:14px}.room-description span{color:var(--muted)}.occupancy{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted)}.occupancy b{font-size:22px;font-family:'Fredoka',sans-serif;color:var(--ink)}.conversation{border-top:1px solid var(--line);padding-top:19px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-heading h2{margin:0;font-size:14px}.section-heading>span:not(.pill):not(.eyebrow){font-size:11px;letter-spacing:1px;color:var(--muted)}#messages{height:180px;overflow:auto;scrollbar-width:thin;padding:15px 0}.message{display:flex;gap:10px;padding:7px 0;align-items:baseline;font-size:12px;line-height:1.5}.message time{font-size:11px;color:#705d82;flex-shrink:0}.message .message-copy{overflow-wrap:anywhere}.message b{margin-right:7px}.message.event{color:#705d82;font-style:italic;font-size:11px}.spectator-note{font-size:11px;padding:13px 0;color:#705d82;border-top:1px dashed var(--line)}.spectator-note span{margin-right:7px}.game-panel{background:#f1e8f7;border:1px solid #ded2e8;border-radius:13px;padding:21px 19px}.pill{font-size:11px;border:1px solid #bca8cd;border-radius:20px;padding:4px 8px;text-transform:uppercase;letter-spacing:.8px}.game-panel>h2{font:500 27px 'Fredoka','Trebuchet MS',sans-serif;margin:17px 0 3px}.game-panel>p{font-size:12px;color:#705d82;margin:0}.players{display:flex;justify-content:space-between;gap:10px;margin:22px 0 15px;font-size:12px;font-weight:700}.player{display:flex;align-items:center;gap:7px}.piece-key{width:12px;height:12px;background:#e69173;border:1px solid #92553e;border-radius:50%}.player:last-child .piece-key{background:#ead17b;border-color:#9f8538}.player.inactive{opacity:.45}.board{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;background:#366457;border:2px solid #224c40;border-radius:9px;padding:11px;box-shadow:0 5px 0 #244b40}.cell{aspect-ratio:1;border-radius:50%;background:#f1e8f7;box-shadow:inset 0 2px 2px #213e4640}.cell.one{background:#f1a384;box-shadow:inset 0 -3px 0 #cd7958}.cell.two{background:#f1d579;box-shadow:inset 0 -3px 0 #c6ab55}.game-panel .turn-label{color:#563087;text-align:center;font-weight:700;margin:20px 0 17px;font-size:12px}.game-tip{border-top:1px solid #ded2e8;padding-top:15px;font-size:11px;line-height:1.7;color:#705d82;text-align:center}.residents-panel{margin-top:27px}.resident-row{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.resident-chip{width:32px;height:34px;border-radius:45% 45% 35% 35%;border:1.5px solid #3e5043;display:grid;place-items:center;color:#3e5043;font-family:'Fredoka',sans-serif}.resident-detail{display:flex;flex-direction:column;gap:3px;flex:1;font-size:12px}.resident-detail small{font-size:11px;color:#705d82}.demo-tag{font-size:11px;letter-spacing:.7px;padding:3px 5px;border:1px solid #ded2e8;border-radius:4px;color:#705d82}.prototype-note{display:flex;gap:10px;margin:24px 0 10px;color:#705d82;font-size:11px;line-height:1.65}.small-star{font-size:26px;color:#bd9064}.prototype-note b{color:#563087}.prototype-note p{margin:5px 0 9px}.prototype-note a{color:#563087;font-weight:600;text-underline-offset:4px}footer:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:23px 0;margin-top:34px;font-size:11px;color:#705d82}footer>span:first-child:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){letter-spacing:1px}.footer-flower{margin:0 5px;color:#cd936f}.avatar{position:absolute;transform:translate(-50%,-100%);transition:left 1.6s ease,top 1.6s ease;display:flex;align-items:center;flex-direction:column;min-width:90px;filter:drop-shadow(0 3px 0 #54432920)}.avatar-name{margin-top:5px;background:#fff9eae8;border:1px solid #6c786653;border-radius:5px;padding:3px 7px;font-size:11px;font-weight:700;white-space:nowrap}.bubble{position:absolute;bottom:86px;width:160px;border:1.5px solid #9074a6;border-radius:10px;padding:9px 11px;background:#fffcf0;color:#563087;font-size:11px;line-height:1.4;text-align:center;overflow-wrap:anywhere;box-shadow:0 3px 0 #43381c18}.bubble:after{content:'';position:absolute;bottom:-6px;left:72px;width:9px;height:9px;background:#fffcf0;border-bottom:1px solid #9074a6;border-right:1px solid #9074a6;transform:rotate(45deg)}dialog:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){width:min(480px,calc(100% - 32px));border:1px solid #9ba98d;border-radius:15px;background:var(--paper);color:var(--ink);padding:32px;box-shadow:0 8px 0 #183b3c22}dialog:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *))::backdrop{background:#153e3a88;backdrop-filter:blur(4px)}dialog h2:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font:500 32px 'Fredoka',sans-serif;margin:10px 0}dialog p:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font-size:13px;line-height:1.65;color:#705d82}dialog label:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){display:block;font-size:12px;font-weight:bold;margin:22px 0 8px}dialog input:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),dialog textarea:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){width:100%;padding:12px;border:1px solid #bca8cd;background:#fffcef;border-radius:7px;color:var(--ink)}dialog textarea:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){height:200px;font:11px/1.6 monospace;margin:10px 0 15px}dialog .form-note:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font-size:11px;color:#705d82}dialog .close:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){position:absolute;right:14px;top:10px;font-size:25px;border:0;background:none;color:var(--ink)}.secondary{padding:12px 18px;border:1px solid #aeb7a5;border-radius:8px;background:none;color:var(--ink);margin-left:8px}#form-error{color:#a34436;font-size:12px}.empty{color:#705d82;font-size:12px;padding:20px 0}.flash{animation:highlight 1.2s ease}@keyframes highlight{50%{box-shadow:0 0 0 5px #dcad6470}}@media(min-width:1500px){.world{max-height:670px}}@media(max-width:1050px){header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:0 25px;gap:20px}main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:28px 25px 0}.layout{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.header-note{display:none}.game-panel{padding:18px 14px}.board{gap:5px;padding:9px}.world-tag{font-size:11px;top:10px;left:10px}.room-description span{max-width:240px;line-height:1.6}}@media(max-width:760px){header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){height:78px;padding:0 18px}.wordmark{font-size:31px}.asterisk{font-size:29px;margin-left:4px}header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font-size:11px;padding:11px 12px}header .primary span:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){margin-left:8px}main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:25px 16px 0}.layout{display:flex;flex-direction:column;gap:20px}.world-panel,aside{width:100%}.room-heading{margin-bottom:20px}h1:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font-size:30px}.eyebrow{font-size:11px}.connection{font-size:11px}.world{border-width:2px;border-radius:12px}.world-tag{font-size:11px;padding:4px 7px}.sun{font-size:14px}.avatar-name{font-size:11px}.bubble{font-size:11px;width:122px;bottom:70px;padding:6px}.bubble:after{left:54px}.table-hotspot{right:10px;bottom:10px;padding:7px 10px;font-size:12px}.table-hotspot span{font-size:11px}.view-label{left:10px;bottom:10px;font-size:11px}.room-footer{padding:17px 0}.room-description b{font-size:12px}.room-description span{font-size:11px;max-width:none}.occupancy{font-size:11px}.conversation{padding-top:16px}#messages{height:160px}.game-panel{max-width:400px;margin:auto;padding:23px}.board{gap:8px;padding:14px}.residents-panel{margin-top:24px}footer:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){flex-wrap:wrap;line-height:1.6}footer>span:nth-child(2):not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){order:3;width:100%}.room-heading .room-number{display:none}}@media(prefers-reduced-motion:reduce){*:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),*:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)):before,*:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)):after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.avatar[data-seat="1"] .avatar-name{transform:translateX(-12px)}.avatar[data-seat="2"] .avatar-name{transform:translateX(12px)}.avatar-name{max-width:115px;white-space:normal;overflow-wrap:anywhere;text-align:center}}

/* Rigged Muse characters share one transparent WebGL layer. */
.character-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}#avatars{position:absolute;inset:0;pointer-events:none;z-index:2}.avatar{transform:translate(-50%,0);transition:none;filter:none;min-width:0}.avatar-name{margin-top:4px}.avatar .bubble{bottom:auto;top:calc(-1 * var(--muse-height) - 12px);transform:translateY(-100%)}.world-tag,.table-hotspot,.view-label{z-index:3}.character-status{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);width:min(80%,320px);margin:0;padding:12px 16px;border-radius:9px;background:#fffcef;color:#201139;text-align:center;font-size:12px;z-index:4}.character-status[hidden]{display:none}dialog select:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){width:100%;padding:12px;border:1px solid #bca8cd;background:#fffcef;border-radius:7px;color:var(--ink);font:inherit}select:focus-visible:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){outline:3px solid #ff570b;outline-offset:4px}

@media(max-width:760px){.table-hotspot span{display:none}.table-hotspot{padding:8px 10px}}

@media(max-width:760px){.world-tag{display:none}}
/* The room is now geometry; the interface belongs to spectators. */
header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){height:80px}main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){max-width:1700px;padding:24px 32px 0}.layout{grid-template-columns:minmax(0,1fr) 280px}.world{aspect-ratio:auto;height:650px;max-height:none;background:#dfdfc9;border:0}.character-canvas{pointer-events:auto;touch-action:none}.station-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.station-nav button{background:transparent;color:var(--ink);border:1px solid #bca8cd;border-radius:8px;padding:10px 13px}.station-nav button:hover{background:#f1e8f7}.station-nav button[aria-pressed=true]{background:var(--green);color:var(--paper)}.board.noughts{grid-template-columns:repeat(3,1fr)}.noughts .cell{border-radius:6px;display:grid;place-items:center;font:32px 'Fredoka';color:#201139}.board.stones{grid-template-columns:repeat(5,1fr);min-height:150px;align-content:start}.view-label{pointer-events:none;letter-spacing:0;background:#fffcef;color:var(--ink);font-size:12px}.avatar-name{font-size:11px}#roster{max-height:360px;overflow:auto}:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *))::selection{background:#ffb07c;color:#201139}*:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){scrollbar-color:#9074a6 #f1e8f7}input:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),textarea:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){caret-color:#3d2068}
@media(max-width:1050px){main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:22px 20px 0}.world{height:540px}.layout{grid-template-columns:minmax(0,1fr) 250px}}
@media(max-width:760px){main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:20px 12px 0}.world{height:470px}.station-nav{gap:6px}.station-nav button{padding:9px 10px;font-size:12px}.game-panel{max-width:none}.room-heading{gap:10px}.connection{max-width:110px}.avatar-name{max-width:88px;font-size:10px}#avatars .bubble{width:130px}.view-label{font-size:11px}.layout{display:flex}}
@media(max-width:760px){header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){gap:10px}.layout{min-width:0}aside,.world-panel{min-width:0}.world{width:100%}.room-footer{flex-wrap:wrap}.section-heading>span{letter-spacing:0!important}}
.player.inactive{opacity:1;font-weight:400}.player.inactive .piece-key{opacity:.65}
@media(max-width:760px){main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){width:100%;max-width:100%;padding-inline:12px}.layout,.world-panel,aside,.game-panel,.conversation,.residents-panel,.room-footer,footer:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){width:100%;max-width:100%;min-width:0}.resident-detail{min-width:0}.resident-detail b{overflow-wrap:anywhere}.demo-tag{flex-shrink:0;font-size:10px}.section-heading{flex-wrap:wrap}.room-description{min-width:0;flex:1}.occupancy{flex-shrink:0}footer>span:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){max-width:100%;overflow-wrap:anywhere}}
html{scrollbar-gutter:stable}
/* Stadium broadcast surface. */
.world{background:#201139}.view-label{background:#2b1749;color:#fffcef}.station-nav button[aria-pressed=true]{background:#243f50}.game-panel{background:#f1e8f7}
.battle-board{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0}.combatant{display:flex;align-items:center;flex-direction:column;min-width:0;text-align:center;font-size:12px}.pokemon{width:120px;max-width:100%;height:115px;object-fit:contain;image-rendering:pixelated}.combatant b{font-size:14px}.health{width:100%;height:10px;accent-color:#694095;margin-top:10px}.hp-label{margin-top:5px;font-size:11px}.team-preview{display:flex;margin-top:10px}.team-preview img{width:33px;height:40px;object-fit:contain;image-rendering:pixelated}.team-preview .fainted{opacity:.35;filter:grayscale(1)}.battle-log{max-height:180px;overflow:auto;border-top:1px solid var(--line);padding:10px 0;margin-bottom:12px;font-size:12px;line-height:1.5}.battle-log p{margin:5px 0}.combatant>p{min-height:100px;display:grid;place-items:center;color:var(--muted)}
.view-label{max-width:calc(100% - 32px);line-height:1.45}
@media(max-width:760px){.world-panel>.game-panel{margin:0 0 24px}.world-panel>.conversation{margin-bottom:8px}}
.avatar[hidden]{display:none}

/* Full-window stadium: the arena is the surface; spectator tools float above it. */
html:has(.arena-shell){overflow:hidden;scrollbar-gutter:auto;background:#201139}
.arena-shell{height:100dvh;overflow:hidden;background:#201139;color:#fffcef}
.arena-shell header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){position:fixed;inset:0 0 auto;z-index:8;height:68px;max-width:none;padding:0 24px;background:#2b1749;border-bottom:1px solid #64477e;gap:24px}
.arena-shell .wordmark{color:#fffcef;font-size:32px}.arena-shell .header-note{color:#e3d3f1}.arena-shell header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){margin-left:auto;background:#ff570b;color:#2b1749;border:0}
.arena-shell main:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:0;max-width:none;margin:0}.arena-shell .layout{display:block;margin:0}.arena-shell .room-heading,.arena-shell .room-footer,.arena-shell footer:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){display:none}
.arena-shell .world-panel{border:0;background:none;overflow:visible}.arena-shell .world{position:fixed;inset:68px 0 0;width:100%;height:calc(100dvh - 68px);min-height:0;border:0;border-radius:0;background:#201139}
.arena-shell .station-nav{position:fixed;top:84px;left:24px;z-index:7;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0;background:none;border:0;max-width:calc(100% - 48px)}
.arena-shell .station-nav button,.arena-shell .pit-picker,.arena-shell .bottom-controls button,.arena-shell .bottom-controls label{min-height:40px;padding:10px 14px;border:1px solid #816497;border-radius:8px;background:#3d2068;color:#fffcef;font-weight:600;font-size:12px}
.arena-shell .station-nav button:hover,.arena-shell .bottom-controls button:hover{background:#583484}.arena-shell .station-nav button[aria-pressed=true]{background:#fffcef;color:#2b1749;border-color:#fffcef}
.arena-shell select:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font:inherit;background:#3d2068;color:#fffcef;border:0;cursor:pointer;max-width:230px}.arena-shell .pit-picker{display:flex;gap:10px;align-items:center}
.arena-shell #inspector{position:fixed;right:24px;top:144px;bottom:94px;width:300px;overflow:auto;z-index:5;color:#201139;background:#fffcef;border-radius:14px;padding:22px;scrollbar-width:thin;scrollbar-color:#816497 #fffcef}
.arena-shell #inspector[hidden],.arena-shell [hidden]{display:none!important}
.arena-shell .game-panel{padding:0;border:0;background:none;border-radius:0}.arena-shell .creature-panel h2{font:500 28px 'Fredoka',sans-serif;margin:20px 0 12px;line-height:1.1}.arena-shell .creature-panel p{font-size:13px;line-height:1.55;color:#705d82}
.concept-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.concept-pair a{color:#201139;font-size:12px;text-decoration:none}.concept-pair img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:8px;display:block;margin-bottom:8px}.concept-pair a:hover{text-decoration:underline}.art-note{border-top:1px solid #ded2e8;padding-top:16px}.creature-panel .primary{width:100%;margin-top:12px}
.arena-shell .pokemon.concept{image-rendering:auto;border-radius:8px}.rules-species{font-size:11px;color:#705d82}.arena-shell .team-preview img{image-rendering:auto}
.arena-bottom{position:fixed;bottom:0;left:0;right:0;z-index:7;min-height:76px;padding:16px 24px;background:#2b1749;display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #64477e}.arena-bottom>div:first-child{display:flex;flex-direction:column;gap:5px}.arena-bottom b{font:500 19px 'Fredoka',sans-serif}.arena-bottom span{font-size:12px;color:#e3d3f1}.bottom-controls{display:flex;gap:8px;align-items:center}.bottom-controls label{display:flex;gap:12px;align-items:center}
.arena-shell .view-label{bottom:94px;left:24px;color:#fffcef;background:#3d2068;padding:8px 12px;border-radius:6px;font-size:11px}.arena-shell .character-status{z-index:4;color:#fffcef;background:#3d2068}
.community{position:fixed;inset:140px auto 94px 24px;z-index:9;width:min(420px,calc(100vw - 48px));overflow:auto;background:#fffcef;color:#201139;padding:20px;border-radius:14px;box-shadow:0 12px 40px #0006}.community>button{float:right;background:#3d2068;color:#fffcef;border:0;border-radius:6px;padding:8px 12px}.community .conversation{border:0;padding:14px 0}.community .local-disclosure{font-size:12px;line-height:1.6;max-width:28ch}.community #messages{height:230px}.community .prototype-note{margin-bottom:0}
.display-status:empty{display:none}.display-status{position:fixed;bottom:80px;left:24px;z-index:12;background:#fffcef;color:#201139;padding:12px;border-radius:8px}
.arena-shell :focus-visible{outline:3px solid #ff9b63;outline-offset:3px}.arena-shell :not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *))::selection{background:#ff570b;color:#2b1749}.arena-shell{scrollbar-color:#816497 #3d2068}
@media(min-width:1100px){.arena-shell #inspector{bottom:auto;max-height:calc(100dvh - 240px)}}
@media(max-width:760px){
.arena-shell header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){height:58px;padding:0 14px}.arena-shell .wordmark{font-size:26px}.arena-shell .asterisk{font-size:26px}.arena-shell .header-note{display:none}.arena-shell header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:10px;font-size:12px}
.arena-shell .world{top:58px;height:calc(100dvh - 58px)}.arena-shell .station-nav{top:70px;left:12px;max-width:calc(100% - 24px);gap:6px}.arena-shell .station-nav button,.arena-shell .pit-picker{padding:8px 10px;min-height:36px;font-size:11px}.arena-shell .pit-picker select{max-width:178px}
.arena-shell #inspector{top:auto;bottom:108px;right:12px;left:12px;width:auto;max-height:29dvh;padding:16px}.arena-shell .creature-panel h2{font-size:21px;margin:10px 0}.arena-shell .creature-panel>p:first-of-type{display:none}.concept-pair{margin:12px 0;gap:12px}.concept-pair a{display:flex;align-items:center;gap:8px}.concept-pair img{width:58px;margin:0}.arena-shell .creature-panel .art-note{margin-bottom:0;font-size:11px;padding-top:10px}.creature-panel .primary{margin-top:10px;padding:9px}.arena-shell .game-panel>h2{font-size:22px;margin-top:10px}.arena-shell .pokemon{height:78px}.arena-shell .players{margin:12px 0}
.arena-bottom{min-height:96px;padding:10px 12px;align-items:flex-start;flex-wrap:wrap;gap:8px}.arena-bottom b{font-size:15px}.arena-bottom span{font-size:11px}.arena-shell .bottom-controls label,.arena-shell .bottom-controls button{padding:7px 9px;min-height:32px;font-size:11px}.arena-shell .view-label{bottom:calc(29dvh + 120px);left:12px;font-size:11px;padding:5px 8px}.community{inset:154px 12px 108px;width:auto}.display-status{left:12px;bottom:100px;max-width:calc(100vw - 24px)}
}

.arena-shell .avatar{color:#201139}
@media(max-width:760px){.arena-shell:has(#inspector[hidden]) .view-label{bottom:108px}}

.arena-bottom .connection{color:#e3d3f1;font-size:11px;gap:6px}.arena-bottom .connection span{font-size:11px}.arena-bottom .connection i{width:6px;height:6px}.arena-bottom .connection i.live{background:#ffb07c}

.arena-bottom .connection{max-width:none;white-space:nowrap}
@media(max-width:760px){.arena-bottom{min-height:120px}.arena-shell:has(#inspector[hidden]) .view-label{bottom:132px}.arena-shell #inspector{bottom:132px}.community{bottom:132px}.arena-shell .view-label{bottom:calc(29dvh + 144px)}}
/* Creature collection: art selection and faithful Generation 1 data. */
.creature-library{position:fixed;z-index:15;inset:80px 24px 24px;background:#fffcef;color:#201139;border-radius:14px;display:flex;flex-direction:column;padding:24px;box-shadow:0 16px 48px #0006}
.library-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.library-heading h2{font:500 30px 'Fredoka',sans-serif;margin:0}.library-heading p{margin:6px 0 18px;color:#705d82;font-size:12px}.library-heading button{border:1px solid #bca8cd;background:#fffcef;border-radius:8px;padding:10px 16px;color:#201139;min-height:40px}
.library-controls{display:flex;gap:16px;padding-bottom:18px;border-bottom:1px solid #ded2e8}.library-controls label{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600}.library-controls input{width:250px;margin:0;padding:10px 12px;border:1px solid #bca8cd;border-radius:8px;background:white;color:#201139}.arena-shell .library-controls select{background:#f1e8f7;color:#201139;border-radius:8px;padding:10px 12px;min-width:120px}
.library-content{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;min-height:0;flex:1;padding-top:18px}.creature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:10px;overflow:auto;align-content:start;padding:3px 8px 3px 3px;scrollbar-color:#9074a6 #f1e8f7}.creature-tile{display:flex;flex-direction:column;align-items:center;padding:10px 8px;border:1px solid transparent;border-radius:10px;background:#f1e8f7;color:#201139;gap:5px;min-width:0}.creature-tile:hover{background:#e8daf3}.creature-tile[aria-pressed=true]{background:#e4d2f1;border-color:#3d2068}.creature-tile img{width:100%;height:130px;object-fit:contain}.creature-tile b{font-size:13px}.creature-tile small{font-size:12px;color:#705d82}
.creature-detail{overflow:auto;border-left:1px solid #ded2e8;padding-left:24px;scrollbar-width:thin;scrollbar-color:#9074a6 #fffcef}.character-model-stage{position:relative;width:100%;height:230px;overflow:hidden;border-radius:13px;background:#201139}.character-model-stage:after{content:'DRAG TO ROTATE';position:absolute;right:10px;bottom:9px;color:#fffcef;font-size:9px;letter-spacing:.08em;opacity:.76;pointer-events:none}.character-model-stage.art-fallback{background:#f1e8f7}.character-model-stage.art-fallback:after{content:none}.creature-card-canvas{display:block;width:100%;height:100%;touch-action:none}.model-loading{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:#fffcef;font-size:12px}.detail-art{width:100%;height:220px;object-fit:contain}.character-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:12px}.creature-detail h3{font:500 28px 'Fredoka',sans-serif;margin:0 0 6px}.model-badge,.art-badge{flex:none;border-radius:4px;padding:5px 7px;background:#e4d2f1;color:#201139;font-size:9px;font-weight:700;letter-spacing:.06em}.art-badge{background:#f1e8f7}.creature-types{font-weight:700;font-size:13px;margin:0}.mapped-species{font-size:12px;color:#705d82;margin:7px 0 18px}.creature-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:0 0 22px}.creature-stats div{display:flex;flex-direction:column;gap:6px}.creature-stats dt{font-size:12px;color:#705d82}.creature-stats dd{margin:0;font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}.creature-detail h4{font-size:14px;margin:0 0 8px}.creature-moves{list-style:none;padding:0;margin:0 0 20px;counter-reset:moves}.creature-moves li{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid #ded2e8;counter-increment:moves}.move-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.creature-moves b{font-size:13px}.move-heading>span{padding:3px 6px;border-radius:4px;background:#f1e8f7;color:#201139;font-weight:700}.creature-moves span,.creature-moves small,.library-note{font-size:12px;line-height:1.5;color:#705d82}.creature-moves .move-metrics{font-variant-numeric:tabular-nums}.creature-detail .primary{width:100%}.library-note{margin-top:14px}.creature-panel .secondary{margin-top:8px;width:100%;padding:10px}
.detail-back{display:none}.model-fullscreen{position:absolute;z-index:2;top:10px;right:10px;border:1px solid #816497;border-radius:8px;background:#3d2068;color:#fffcef;padding:8px 10px;font-size:11px}.model-fullscreen:hover{background:#583484}.character-model-stage:fullscreen{width:100vw;height:100vh;border-radius:0}.character-model-stage:fullscreen .model-fullscreen{top:20px;right:20px}.character-model-stage:fullscreen:after{right:22px;bottom:20px}
@media(max-width:760px){.creature-library{inset:64px 8px 8px;padding:14px}.library-heading h2{font-size:24px}.library-heading p{font-size:12px;margin-bottom:12px}.library-controls{gap:8px;padding-bottom:12px}.library-controls label{flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:5px;font-size:12px}.library-controls input{width:100%;font-size:12px;padding:9px}.arena-shell .library-controls select{width:100%;min-width:0;font-size:12px;padding:9px}.library-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding-top:12px}.creature-grid{grid-template-columns:1fr;gap:8px;padding-right:4px}.creature-tile img{height:110px}.creature-tile b{font-size:12px}.creature-detail{padding-left:12px}.character-model-stage,.detail-art{height:150px}.character-card-heading{display:block}.model-badge,.art-badge{display:inline-block;margin-top:7px}.creature-detail h3{font-size:21px;overflow-wrap:anywhere}.creature-stats{grid-template-columns:repeat(3,1fr);row-gap:12px}.creature-detail .primary{padding:10px;font-size:12px}.creature-types{font-size:12px}.mapped-species{font-size:12px}}

.creature-tile .pending-art{height:130px;display:grid;place-items:center;font-size:12px;color:#705d82}.creature-detail>.pending-art{min-height:150px;display:grid;place-items:center;background:#f1e8f7}.creature-detail button:disabled{opacity:.65;cursor:default}@media(max-width:760px){.creature-tile .pending-art{height:110px}}
@media(max-width:760px){.library-content{display:block}.creature-grid{grid-template-columns:repeat(2,minmax(0,1fr));height:100%}.creature-detail{display:none;height:100%;padding-left:0;border-left:0}.detail-open .library-controls,.detail-open .creature-grid{display:none}.detail-open .creature-detail{display:block}.detail-back{display:inline-flex;margin:0 0 10px;padding:8px 11px;border:1px solid #bca8cd;border-radius:8px;background:#fffcef;color:#201139;font:inherit}.character-model-stage,.detail-art{height:220px}.creature-stats{grid-template-columns:repeat(5,1fr)}}

/* Match selection overlays one shared stadium environment. */
.match-browser{position:fixed;z-index:12;top:144px;left:24px;bottom:104px;width:min(620px,calc(100vw - 48px));padding:24px;background:#fffcef;color:#201139;border-radius:14px;overflow:auto;box-shadow:0 16px 48px #0005}
.match-browser[hidden]{display:none}.match-heading{display:flex;justify-content:space-between;align-items:start;gap:16px}.match-heading h2{font:500 30px 'Fredoka',sans-serif;margin:0 0 6px}.match-heading p,.match-intro{font-size:13px;color:#705d82}.match-heading button{padding:10px 16px;background:#3d2068;color:#fffcef;border:0;border-radius:8px}.match-intro{margin:18px 0}
.match-list{display:flex;flex-direction:column}.match-row{display:flex;width:100%;align-items:center;gap:16px;text-align:left;background:none;border:0;border-top:1px solid #ded2e8;border-radius:0;padding:14px 10px;color:#201139}.match-row:hover{background:#f1e8f7}.match-row[aria-pressed=true]{background:#e4d2f1}.match-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px}.match-copy b{font-size:16px}.match-copy>span{font-size:12px;overflow-wrap:anywhere}.match-status{font-size:12px;max-width:110px}.match-status.live{color:#3d2068;font-weight:700}.match-creatures{display:flex;gap:4px}.match-creatures img{width:42px;height:42px;object-fit:contain}.arena-shell .bottom-controls .auto-follow{display:flex;gap:8px}.auto-follow input{width:16px;height:16px;margin:0;accent-color:#ffb07c}.stadium-status{position:absolute;left:24px;bottom:115px;padding:10px 14px;background:#3d2068;color:#fffcef;font-size:12px;border-radius:8px}
@media(max-width:760px){.match-browser{inset:170px 12px 144px;width:auto;padding:18px}.match-row{gap:8px;padding:12px 4px}.match-creatures img{width:30px;height:30px}.match-status{max-width:85px;font-size:11px}.arena-shell .station-nav{max-width:calc(100% - 24px);gap:4px}.arena-shell .station-nav button,.arena-shell .pit-picker{padding:7px 9px;min-height:32px;font-size:11px}.arena-shell .bottom-controls{flex-wrap:wrap;gap:5px}.stadium-status{bottom:150px}}
.arena-shell .avatar-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}
@media(max-width:760px){.arena-shell .avatar-name{width:108px;max-width:108px;font-size:10px}}

/* Creature Club: the approved logo owns the court, its emblem anchors the broadcast. */
:root{--club-orange:#ff570b;--club-purple:#3d2068;--club-ink:#201139;--club-ivory:#fffcef}
.arena-shell header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){background:var(--club-purple);border-bottom-color:#765295;gap:24px}
.arena-shell .wordmark{display:flex;align-items:center;gap:10px;letter-spacing:-.02em;white-space:normal;flex-shrink:0}
.wordmark>img{width:54px;height:54px;object-fit:cover;border-radius:12px}
.brand-name{display:block;color:var(--club-ivory);font:500 24px/1.02 'Fredoka','Trebuchet MS',sans-serif}
.brand-name>span:first-child{color:#ffad77}
.brand-name .brand-arena{display:block;color:#ffad77;font:500 14px/1.3 'Fredoka','Trebuchet MS',sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-top:3px}
.arena-shell header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){color:var(--club-ink);background:var(--club-orange);border:1px solid var(--club-orange);border-radius:12px}
.arena-shell header .primary:hover:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){background:#ff8951;border-color:#ff8951}
.arena-shell .station-nav button,.arena-shell .pit-picker,.arena-shell .bottom-controls button,.arena-shell .bottom-controls label{border-radius:12px}
.arena-shell .station-nav button[aria-expanded=true]{background:var(--club-ivory);color:var(--club-purple);border-color:var(--club-ivory)}
.arena-bottom{background:#2b1749}.arena-bottom b{color:#ffad77}
.arena-shell .primary:disabled{opacity:.55;cursor:wait}
.arena-shell input:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)),.arena-shell textarea:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){caret-color:var(--club-purple)}
.arena-shell input[type=checkbox]:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){accent-color:var(--club-orange)}
.arena-shell .avatar-name{background:var(--club-ivory);color:var(--club-purple);border-color:#bca8cd}
.arena-shell .health{accent-color:#694095}
@media(max-width:760px){
 .arena-shell header:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){gap:8px;padding-inline:10px}
 .arena-shell .wordmark{gap:6px;flex:1;min-width:0}
 .wordmark>img{width:40px;height:40px;border-radius:9px}
 .brand-name{font-size:17px;max-width:180px}
 .brand-name .brand-arena{font-size:11px;margin-top:2px}
 .arena-shell header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){font-size:11px;padding:10px 9px;flex-shrink:0}
 .arena-shell header .primary span:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){display:none}
}
@media(max-width:370px){.brand-name{font-size:15px}.wordmark>img{width:34px;height:34px}.arena-shell header .primary:not(:where(#privy-dialog, #privy-dialog *, #privy-modal-content, #privy-modal-content *)){padding:9px 7px;font-size:11px}}

/* Keep the orbit hint above the measured spectator footer. */
.arena-shell .view-label{bottom:calc(var(--arena-footer-height,96px) + 16px);letter-spacing:0}
@media(max-width:760px){.arena-shell:has(#inspector[hidden]) .view-label{bottom:calc(var(--arena-footer-height,120px) + 12px)}}
