/* Theme-safe shared surfaces; do not override the card artwork's own ink. */
html[data-fc-theme] body.approved-site #podiumScreen :is(.tm-billboard,.tm-pedestal,.tm-team-box){background:var(--hub-panel)!important;color:var(--hub-text)!important;border-color:var(--hub-line)!important}
html[data-fc-theme] body.approved-site #podiumScreen :is(.tm-driver-name,.tm-wins-badge,.tm-rank-pill,.tm-billboard>div,.tm-pedestal-number){color:var(--hub-text)!important;text-shadow:none!important}
html[data-fc-theme] body.approved-site #podiumScreen :is(.tm-wins-badge,.tm-rank-pill){background:var(--hub-surface)!important}
html[data-fc-theme] body.approved-site :is(.draft-presence-panel,.draft-presence-head,.draft-presence-row){background:var(--hub-panel)!important;color:var(--hub-text)!important;border-color:var(--hub-line)!important}
html[data-fc-theme] body.approved-site .draft-presence-panel :is(.draft-presence-name,.name-text,.draft-presence-head strong){color:var(--hub-text)!important}
html[data-fc-theme] body.approved-site .draft-presence-panel :is(.draft-presence-status,.draft-presence-note,.draft-presence-head-actions span){color:var(--hub-muted)!important}
html[data-fc-theme] body.approved-site #podiumScreen .tm-extra-item{background:var(--hub-panel)!important;color:var(--hub-text)!important}
html[data-fc-theme] body.approved-site #podiumScreen .tm-extra-item>div>div{color:var(--hub-text)!important;text-shadow:none!important}
html[data-fc-theme] body.approved-site #gameBoard :is(.player-card,.auction-live-stat){background:var(--hub-panel)!important;color:var(--hub-text)!important}
html[data-fc-theme] body.approved-site #gameBoard :is(.player-card h3,.player-card .money,.player-card .inventory,.inv-item,#highestBidderName,.auction-live-value){color:var(--hub-text)!important;text-shadow:none!important}
html[data-fc-theme] body.approved-site :is(.hub-page-source,.hub-dialog-card,.chat-widget,.activity-widget,.active-users-widget,.account-panel) :is(.act-text,.active-user-name,.chat-msg>span:not(.chat-msg-time),.profile-row-value,.db-item){color:var(--hub-text)!important;text-shadow:none!important}
html body.approved-site .approved-header .online-dot{background:#22c55e!important;box-shadow:0 0 0 3px #22c55e18!important}
html body.approved-site .approved-header #hubTheme .switch{position:relative!important;display:inline-block!important;width:46px!important;height:26px!important;background:#dae1e8!important;border:1px solid #9baaba!important;border-radius:99px!important;box-shadow:none!important;flex:none!important}
html body.approved-site .approved-header #hubTheme .switch::before,
html body.approved-site .approved-header #hubTheme .switch::after{display:none!important}
html body.approved-site .approved-header #hubTheme .switch i{position:absolute!important;left:3px!important;top:3px!important;width:18px!important;height:18px!important;background:#fff!important;border-radius:50%!important;box-shadow:0 1px 4px #0003!important;transform:translateX(0)!important;transition:transform .42s cubic-bezier(.22,.61,.36,1)!important}
html[data-fc-theme=dark] body.approved-site .approved-header #hubTheme .switch{background:#253345!important;border-color:#64748b!important}
html[data-fc-theme=dark] body.approved-site .approved-header #hubTheme .switch i{transform:translateX(20px)!important;background:#dbeafe!important}
html[data-fc-theme=light] body.approved-site #hubTheme>svg:first-child,
html[data-fc-theme=dark] body.approved-site #hubTheme>svg:last-child{color:var(--hub-text)!important;opacity:1!important}
html[data-fc-theme=light] body.approved-site #hubTheme>svg:last-child,
html[data-fc-theme=dark] body.approved-site #hubTheme>svg:first-child{opacity:.35!important}
.mobile-chat-dock{display:none}
@media(max-width:800px), (max-width:1000px) and (max-height:500px){
 html body.approved-site :is(.bottom-radio,.radio-widget,#mainRadioWidget){display:none!important}
 html body.approved-site .approved-footer{height:48px!important;min-height:48px!important;padding:2px 6px calc(2px + env(safe-area-inset-bottom))!important;display:flex!important;gap:6px!important;background:var(--hub-surface)!important}
 html body.approved-site .hub-footer-left{flex:0 0 auto!important;padding:0!important}
 html body.approved-site .hub-footer-left .visitors{display:flex!important;align-items:center!important;gap:3px!important;padding:3px!important;font-size:10px!important}
 html body.approved-site .hub-footer-left .visitors span{display:none!important}
 html body.approved-site .hub-footer-left .visitors::before{content:'24h';font-size:9px;color:#cbd5e1}
 html body.approved-site .hub-footer-left .hub-chat-open{font-size:0!important;width:42px!important;min-height:40px!important;padding:8px!important}
 html body.approved-site .hub-footer-left .hub-chat-open span{display:none!important}
 html body.approved-site .hub-footer-left .hub-chat-open svg{width:20px!important;height:20px!important}
 html body.approved-site .mobile-chat-dock{display:flex;align-items:center;gap:6px;flex:1;min-width:0;height:40px;color:var(--hub-text);pointer-events:auto!important;position:relative;z-index:2}
 .mobile-chat-preview{min-width:0;flex:1;border:0;background:none;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;font-size:12px;padding:8px 0}
 .mobile-chat-write,.mobile-chat-compose button{flex:none;min-width:40px;min-height:40px;background:var(--hub-panel);color:var(--hub-text);border:1px solid var(--hub-line);border-radius:8px;font-size:15px}
 .mobile-chat-compose{display:flex;flex:1;gap:4px;min-width:0}
 .mobile-chat-compose[hidden],.mobile-chat-preview[hidden],.mobile-chat-write[hidden]{display:none!important}
 .mobile-chat-compose input{flex:1;min-width:0;font-size:16px;height:40px;box-sizing:border-box;border:1px solid var(--hub-line);border-radius:8px;padding:6px;background:var(--hub-panel);color:var(--hub-text)}
 html body.approved-site #chatWidget:not(.minimized){height:210px!important;max-height:calc(100dvh - 180px)!important;width:calc(100vw - 16px)!important;left:8px!important;bottom:52px!important;resize:none!important}
 html body.approved-site:not(.arena-3d-open) #draftOptionsModal .draft-modal-content{padding:10px 2px!important;width:100%!important}
 html body.approved-site:not(.arena-3d-open) #draftOptionsModal #draftOptionsContainer{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;gap:0!important;padding:8px 0!important;overflow:visible!important;scroll-snap-type:none!important}
 html body.approved-site:not(.arena-3d-open) #draftOptionsModal .draft-modal-content #draftOptionsContainer .pack-card-container{width:min(100%,calc((100dvh - 170px)*.75))!important;justify-self:center!important;min-width:0!important;max-width:none!important;flex:none!important;height:auto!important;aspect-ratio:3/4!important}
 html body.approved-site #draftOptionsModal .draft-mobile-hint{font-size:12px!important}
 /* Current duel uses the screen, not the 144px mobile navigation shell. */
 html body.approved-site[data-hub-stage=voting]{padding-top:6px!important;padding-bottom:54px!important}
 html body.approved-site[data-hub-stage=voting] .approved-header{display:none!important}
 html body.approved-site[data-hub-stage=voting] .draft-presence-panel{display:none!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0 2px!important;min-height:0!important}
 html body.approved-site[data-hub-stage=voting] #votingMainArea{display:block!important;flex:none!important;height:auto!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-matchups-grid{flex:none!important;height:auto!important;grid-template-rows:none!important;grid-auto-rows:auto!important}
 html body.approved-site[data-hub-stage=voting] #votersContainer{position:static!important;flex:none!important;max-height:none!important;overflow:visible!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen :is(#votingTitle,#votingSubtitle,.one-v-one-arena-heading){display:none!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-matchup-panel{padding:2px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-matchup-panel{gap:2px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side{padding:2px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side h2{font-size:13px!important;line-height:18px!important;margin:0!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-inner-wrap{gap:3px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-card-row{gap:1px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side .vs-card-wrap{width:min(100%,calc((100dvh - 250px)*.375))!important;max-width:none!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vote-btn{margin:2px 0 0!important;padding:6px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-mid-wrap{gap:6px!important;flex-direction:row!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-mid-wrap .tie-btn{width:auto!important;flex:none!important;min-width:72px!important;max-width:160px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-matchup-panel>div:first-child{font-size:14px!important;line-height:18px!important;margin-bottom:2px!important}
}
@media(max-width:1000px) and (max-height:500px){
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side{display:grid!important;grid-template-columns:minmax(0,1fr) 96px!important;column-gap:5px!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side>.inventory{grid-column:1!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side>.vote-btn{grid-column:2!important;grid-row:1 / span 2!important;align-self:center!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-side .vs-card-wrap{width:min(100%,calc((100dvh - 202px)*.375))!important}
 html body.approved-site[data-hub-stage=voting] #votingScreen .vs-card-row{max-width:calc((100dvh - 202px)*1.125)!important;margin:0 auto!important}
}
@media(prefers-reduced-motion:reduce){html body.approved-site .approved-header #hubTheme .switch i{transition:none!important}}
