/* === liveasta-refinement === */
/* v0.25 — targeted coherence and density fixes */

/* One active green across the whole app. Disabled states remain intentionally muted. */
html[data-live-theme] :is(.btn-green,.btn-success,.settings-refresh-btn,[class*="primary-action"]):not(:disabled),
html[data-live-theme] button.btn.btn-green:not(:disabled),
html[data-live-theme] #screen-room-control :is(.btn-green,.management-primary):not(:disabled){
  background:var(--theme-primary)!important;
  background-image:none!important;
  border-color:var(--theme-primary)!important;
  color:#fff!important;
  box-shadow:none!important;
}
html[data-live-theme="daily"] :is(.btn-green,.btn-success):not(:disabled):hover{
  background:var(--theme-primary-hover)!important;
  border-color:var(--theme-primary-hover)!important;
}

/* Budget manager: input height matches the compact application standard. */
html[data-live-theme] body #player-budget-overlay #player-budget-rows .budget-role-card input,
html[data-live-theme] body #player-budget-overlay .budget-transfer-amounts input,
html[data-live-theme] body #player-budget-overlay .budget-percent-input input,
html[data-live-theme] body #player-budget-overlay .player-budget-row > input{
  height:36px!important;
  min-height:36px!important;
  padding:0 8px!important;
  border-radius:9px!important;
  font-size:16px!important;
}
html[data-live-theme] body #player-budget-overlay .budget-role-card output{
  height:36px!important;
  min-height:36px!important;
  font-size:18px!important;
}
html[data-live-theme] body #player-budget-overlay #player-budget-rows .budget-role-card{
  padding:10px!important;
  row-gap:7px!important;
}

/* Auctioned list: when expanded it must be a useful list, not a small slit. */
html[data-live-theme] #screen-auctioneer-board #auctioned-list:not(.collapsed){
  min-height:220px!important;
  max-height:42dvh!important;
  height:auto!important;
}
html[data-live-theme] #screen-auctioneer-board #auctioned-list .auctioned-row{
  min-height:48px!important;
  padding:7px 10px!important;
}
@media(max-width:760px){
  html[data-live-theme] #screen-auctioneer-board #auctioned-list:not(.collapsed){
    min-height:240px!important;
    max-height:46dvh!important;
  }
}

/* Team colours must remain visible and saturated: remove visual veil on team cards/previews. */
html[data-live-theme] #screen-auctioneer-board .col-player,
html[data-live-theme] #screen-player-buzzer .player-card-side,
html[data-live-theme] .room-roster-player-preview-card{
  filter:saturate(1.12) contrast(1.03)!important;
}
html[data-live-theme] .room-roster-player-preview-card::after{
  background:transparent!important;
  opacity:0!important;
}
html[data-live-theme] #screen-auctioneer-board .col-player::before,
html[data-live-theme] #screen-auctioneer-board .col-player::after,
html[data-live-theme] #screen-player-buzzer .player-card-side::before,
html[data-live-theme] #screen-player-buzzer .player-card-side::after{
  display:none!important;
  content:none!important;
}

/* Preparation countdown: visible in light theme. */
html[data-live-theme="daily"] #screen-auctioneer-board #countdown-display.prep-countdown,
html[data-live-theme="daily"] #screen-auctioneer-board #countdown-display.prep-countdown.liveasta-last3,
html[data-live-theme="daily"] #screen-auctioneer-board #countdown-display.prep-countdown.danger,
html[data-live-theme="daily"] #screen-player-buzzer #player-countdown.prep-countdown{
  color:var(--theme-number)!important;
  text-shadow:none!important;
}
html[data-live-theme="daily"] #screen-auctioneer-board .timer-ring small,
html[data-live-theme="daily"] #screen-auctioneer-board .auction-timer-label,
html[data-live-theme="daily"] #screen-auctioneer-board .timer-title{
  color:var(--theme-muted)!important;
}

/* Purchases/Rosters: one-row records on phones to maximise list visibility. */
@media(max-width:720px){
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td{
    align-items:center!important;
  }
}

/* Access lock needs immediate visual priority. */
html[data-live-theme] #auction-room-error.liveasta-access-retry:not(.liveasta-access-free),
html[data-live-theme] #auction-room-error:not(:empty):not(.liveasta-access-free){
  color:#C6283E!important;
  background:rgba(220,53,69,.08)!important;
  border:1px solid rgba(220,53,69,.38)!important;
  border-radius:10px!important;
  padding:9px 10px!important;
  font-weight:850!important;
  line-height:1.3!important;
}
html[data-live-theme="daily"] #auction-room-error.liveasta-access-retry:not(.liveasta-access-free),
html[data-live-theme="daily"] #auction-room-error:not(:empty):not(.liveasta-access-free){
  color:#B42332!important;
  background:#FFF0F2!important;
  border-color:#E7A4AD!important;
}


/* v0.25 — Acquisti/Rose mobile: one stable row per purchase */
@media (max-width:720px){
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table{
    width:100%!important;
    table-layout:fixed!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table thead{
    display:none!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    width:100%!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody tr{
    display:grid!important;
    grid-template-columns:34px minmax(0,1.25fr) minmax(62px,.9fr) 36px 88px!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    min-height:48px!important;
    padding:6px 7px!important;
    box-sizing:border-box!important;
    border:1px solid var(--theme-border)!important;
    border-radius:10px!important;
    background:var(--theme-card)!important;
    color:var(--theme-text)!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    color:var(--theme-text)!important;
    font-size:12.5px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    text-align:left!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td::before{
    display:none!important;
    content:none!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(1){
    grid-column:2!important;
    grid-row:1!important;
    font-weight:850!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(2){
    grid-column:1!important;
    grid-row:1!important;
    overflow:visible!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(3){
    grid-column:3!important;
    grid-row:1!important;
    color:var(--theme-muted)!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(4){
    grid-column:4!important;
    grid-row:1!important;
    text-align:center!important;
    font-weight:850!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(5){
    grid-column:5!important;
    grid-row:1!important;
    overflow:visible!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .role-badge{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    padding:0!important;
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    font-size:12px!important;
    line-height:1!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .restore-btn{
    width:88px!important;
    min-width:88px!important;
    max-width:88px!important;
    height:32px!important;
    min-height:32px!important;
    padding:0 7px!important;
    margin:0!important;
    border-radius:8px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
}
@media (max-width:390px){
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody tr{
    grid-template-columns:30px minmax(0,1fr) minmax(54px,.72fr) 30px 78px!important;
    gap:4px!important;
    padding:5px 6px!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td{
    font-size:11.5px!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .role-badge{
    width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .restore-btn{
    width:78px!important;min-width:78px!important;max-width:78px!important;
    font-size:10.5px!important;
  }
}


/* v0.93 — AUCTIONEER PRESENTATION ISOLATION
   IMPORTANT ARCHITECTURE RULE:
   - realtime / auction logic remains shared;
   - desktop presentation lives ONLY under .auctioneer-ui-desktop;
   - smartphone presentation lives ONLY under .auctioneer-ui-mobile;
   - the two blocks intentionally duplicate the current visual values.
   Future graphic work must edit only the desired block. */
#screen-auctioneer-board.auctioneer-ui-root{
  --auctioneer-control-radius:12px;
  --auctioneer-panel-radius:16px;
}

/* ========================================================================
   BANDITORE SMARTPHONE — GRAPHICS OWNED BY THIS BLOCK ONLY
   ======================================================================== */
#screen-auctioneer-board.auctioneer-ui-mobile{
  --auctioneer-ui-density:compact;
  --auctioneer-toolbar-gap:6px;
  --auctioneer-control-height:42px;
  --auctioneer-panel-gap:8px;
  background:radial-gradient(circle at 50% -12%,rgba(61,220,151,.055),transparent 30%),#0D1117!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile > .session-nav,
#screen-auctioneer-board.auctioneer-ui-mobile > .auctioneer-session-nav{
  width:100%!important;
  max-width:none!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .session-title,
#screen-auctioneer-board.auctioneer-ui-mobile .auctioneer-session-center{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard{
  width:100%!important;
  max-width:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard .dashboard{
  background:#0D1117!important;
  border-color:#334155!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #view-auction .auction-col{
  border:1px solid #334155!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #view-auction .auction-col.col-player,
#screen-auctioneer-board.auctioneer-ui-mobile .col-player{
  background:var(--team-card-bg,linear-gradient(180deg,#171E28,#111821))!important;
  background-image:var(--team-card-bg,linear-gradient(180deg,#171E28,#111821))!important;
  background-color:#171E28!important;
  background-size:100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .col-player:before,
#screen-auctioneer-board.auctioneer-ui-mobile .col-player:after{
  display:none!important;
  content:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .col-timer,
#screen-auctioneer-board.auctioneer-ui-mobile .col-info{
  background:#151D27!important;
  border-color:#334155!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .timer-ring{
  background:transparent!important;
  border-color:#3B4A5F!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .bid-box{
  background:#111821!important;
  border-color:#334155!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #countdown-display,
#screen-auctioneer-board.auctioneer-ui-mobile #current-value-display{
  background:transparent!important;
  color:#FF8A3D!important;
  border:none!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #countdown-display.liveasta-last3{
  color:#FF334F!important;
  background:transparent!important;
  box-shadow:none!important;
  text-shadow:0 0 22px rgba(255,51,79,.30)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .arrow-btn{
  background:#FF8A3D!important;
  color:#160B04!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-player-name-top,
#screen-auctioneer-board.auctioneer-ui-mobile .auction-player-meta,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-player-club{
  color:#FFFFFF!important;
  -webkit-text-stroke:.8px rgba(0,0,0,.86)!important;
  paint-order:stroke fill!important;
  text-shadow:0 2px 3px rgba(0,0,0,.95),0 0 4px rgba(0,0,0,.90),1px 0 1px rgba(0,0,0,.80),-1px 0 1px rgba(0,0,0,.80)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .auction-list-toolbar,
#screen-auctioneer-board.auctioneer-ui-mobile .unified-list-filters{
  gap:var(--auctioneer-toolbar-gap)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile .auction-list-toolbar > :is(button,input),
#screen-auctioneer-board.auctioneer-ui-mobile .unified-list-filters :is(button,input,select){
  min-height:var(--auctioneer-control-height)!important;
}

/* ========================================================================
   BANDITORE DESKTOP — GRAPHICS OWNED BY THIS BLOCK ONLY
   ======================================================================== */
#screen-auctioneer-board.auctioneer-ui-desktop{
  --auctioneer-ui-density:information-rich;
  --auctioneer-toolbar-gap:10px;
  --auctioneer-control-height:44px;
  --auctioneer-panel-gap:12px;
  background:radial-gradient(circle at 50% -12%,rgba(61,220,151,.055),transparent 30%),#0D1117!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop > .session-nav,
#screen-auctioneer-board.auctioneer-ui-desktop > .auctioneer-session-nav{
  width:min(1480px,calc(100% - 24px))!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .session-title,
#screen-auctioneer-board.auctioneer-ui-desktop .auctioneer-session-center{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard{
  width:100%!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard .dashboard{
  background:#0D1117!important;
  border-color:#334155!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #view-auction .auction-col{
  border:1px solid #334155!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #view-auction .auction-col.col-player,
#screen-auctioneer-board.auctioneer-ui-desktop .col-player{
  background:var(--team-card-bg,linear-gradient(180deg,#171E28,#111821))!important;
  background-image:var(--team-card-bg,linear-gradient(180deg,#171E28,#111821))!important;
  background-color:#171E28!important;
  background-size:100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .col-player:before,
#screen-auctioneer-board.auctioneer-ui-desktop .col-player:after{
  display:none!important;
  content:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .col-timer,
#screen-auctioneer-board.auctioneer-ui-desktop .col-info{
  background:#151D27!important;
  border-color:#334155!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .timer-ring{
  background:transparent!important;
  border-color:#3B4A5F!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .bid-box{
  background:#111821!important;
  border-color:#334155!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #countdown-display,
#screen-auctioneer-board.auctioneer-ui-desktop #current-value-display{
  background:transparent!important;
  color:#FF8A3D!important;
  border:none!important;
  box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #countdown-display.liveasta-last3{
  color:#FF334F!important;
  background:transparent!important;
  box-shadow:none!important;
  text-shadow:0 0 22px rgba(255,51,79,.30)!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .arrow-btn{
  background:#FF8A3D!important;
  color:#160B04!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop #auction-player-name-top,
#screen-auctioneer-board.auctioneer-ui-desktop .auction-player-meta,
#screen-auctioneer-board.auctioneer-ui-desktop #auction-player-club{
  color:#FFFFFF!important;
  -webkit-text-stroke:.8px rgba(0,0,0,.86)!important;
  paint-order:stroke fill!important;
  text-shadow:0 2px 3px rgba(0,0,0,.95),0 0 4px rgba(0,0,0,.90),1px 0 1px rgba(0,0,0,.80),-1px 0 1px rgba(0,0,0,.80)!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .auction-list-toolbar,
#screen-auctioneer-board.auctioneer-ui-desktop .unified-list-filters{
  gap:var(--auctioneer-toolbar-gap)!important;
}
#screen-auctioneer-board.auctioneer-ui-desktop .auction-list-toolbar > :is(button,input),
#screen-auctioneer-board.auctioneer-ui-desktop .unified-list-filters :is(button,input,select){
  min-height:var(--auctioneer-control-height)!important;
}

/* Explicit choice wins over physical viewport size. */
html[data-auctioneer-ui="mobile"] #screen-auctioneer-board{--auctioneer-explicit-mode:mobile;}
html[data-auctioneer-ui="desktop"] #screen-auctioneer-board{--auctioneer-explicit-mode:desktop;}

/* ==========================================================================
   v0.93 — PLANCIA BANDITORE SMARTPHONE
   SOLO layout plancia: 60% giocatore / 40% timer+offerta.
   Nessuna modifica alla modalità desktop o ai pulsanti.
   ========================================================================== */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:minmax(0,3fr) minmax(0,2fr)!important;
    gap:8px!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    align-items:stretch!important;
}

/* 60% superiore: giocatore */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-player{
    grid-column:1 / 3!important;
    grid-row:1!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:8px 10px!important;
    display:grid!important;
    grid-template-rows:38px minmax(0,1fr) 32px!important;
    align-items:center!important;
    justify-items:center!important;
    gap:3px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-name-top{
    position:static!important;
    width:100%!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-card{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-card img{
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile .auction-player-meta{
    width:100%!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}

/* 40% inferiore, metà sinistra: timer */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer{
    grid-column:1!important;
    grid-row:2!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:8px!important;
    box-sizing:border-box!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
}

/* 40% inferiore, metà destra: offerta */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:8px!important;
    box-sizing:border-box!important;
    text-align:center!important;
}

/* In questa prima impostazione mobile la metà destra è dedicata all'offerta.
   Gli elementi informativi aggiuntivi restano nel DOM e nella logica,
   ma non occupano spazio nella plancia smartphone. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info > #sealed-delivery-panel,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info > #auction-title-display,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info > #winner-display,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info > #sealed-ranking-auctioneer,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info > #auctioneer-turn-ranking-empty{
    display:none!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
    max-width:100%!important;
}

/* Schermi bassi: conserva la proporzione 60/40 riducendo solo le intestazioni. */
@media (max-height:760px){
    #screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-player{
        grid-template-rows:34px minmax(0,1fr) 28px!important;
        padding:6px 8px!important;
        gap:2px!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-name-top{
        height:34px!important;
        min-height:34px!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile .auction-player-meta{
        height:28px!important;
        min-height:28px!important;
    }
}


/* ==========================================================================
   v0.93 — CONTENUTI PLANCIA BANDITORE SMARTPHONE
   Il desktop resta escluso da tutte le regole seguenti.
   ========================================================================== */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction{
    --mobile-board-gap:8px;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .timer-caption,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .timer-ring small,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .bid-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .credit-label{
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .timer-ring{
    width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
    border:0!important;background:transparent!important;box-shadow:none!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #countdown-display{
    font-size:clamp(62px,19vw,126px)!important;line-height:.9!important;font-weight:950!important;
    margin:0!important;text-align:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .bid-box{
    width:100%!important;height:auto!important;min-height:0!important;padding:0!important;
    border:0!important;background:transparent!important;box-shadow:none!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #current-value-display{
    font-size:clamp(58px,18vw,120px)!important;line-height:.9!important;font-weight:950!important;
    text-align:center!important;margin:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-title-display{
    order:2!important;font-size:clamp(11px,3.3vw,18px)!important;line-height:1.05!important;
    margin:8px 0 0!important;text-align:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #winner-display{
    order:3!important;font-size:clamp(16px,5vw,28px)!important;line-height:1.05!important;
    margin:5px 0 0!important;text-align:center!important;max-width:100%!important;
    white-space:nowrap!important;overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info{
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{order:1!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #btn-next{display:none!important;}

/* Nome e metadati: una riga, riduzione dinamica affidata anche a fitAuctionNames(). */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-name-top,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-club{
    white-space:nowrap!important;overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-role{
    width:28px!important;height:28px!important;min-width:28px!important;border-radius:50%!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    font-weight:950!important;color:#071018!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-role.mobile-role-P{background:#ffd43b!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-role.mobile-role-D{background:#42d66b!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-role.mobile-role-C{background:#4c8dff!important;color:white!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #auction-player-role.mobile-role-A{background:#ff4d55!important;color:white!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile .auction-player-meta .meta-dot{display:none!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile .auction-player-meta{gap:8px!important;}

/* READY: FVM | READY x/x */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .timer-caption,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #auction-title-display{top:12px!important;left:8px!important;right:8px!important;letter-spacing:.08em!important;
}

/* BUSTE: niente lista consegne su smartphone. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-panel{
    display:flex!important;order:1!important;
    align-items:center!important;justify-content:center!important;flex-direction:column!important;
    background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-panel h3{
    display:block!important;margin:0 0 8px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-count{line-height:.95!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-names,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-panel small{
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-opening #sealed-delivery-panel h3::after{content:"";}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-opening #sealed-delivery-panel h3{font-size:0!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-opening #sealed-delivery-panel h3::before{
    content:"CONSEGNATE";font-size:clamp(11px,3.2vw,17px)!important;
}

/* Esito buste: importo a sinistra, classifica completa a destra. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .col-timer #countdown-display{
    font-size:clamp(58px,18vw,120px)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .col-info > :not(#sealed-ranking-auctioneer):not(.liveasta-mobile-surface){
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result #sealed-ranking-auctioneer{
    display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:2px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .sealed-ranking-title{
    font-size:clamp(10px,2.8vw,14px)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .sealed-ranking-row{
    min-height:28px!important;padding:3px 5px!important;font-size:clamp(10px,2.8vw,14px)!important;
}

/* Banditura a turni: turno a sinistra, stato/classifica desktop adattata a destra. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #auctioneer-turn-center{
    display:flex!important;position:static!important;width:100%!important;
    flex-direction:column!important;align-items:center!important;justify-content:center!important;
    padding:4px!important;text-align:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #auctioneer-turn-center .auctioneer-turn-kicker,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #auctioneer-turn-role{display:none!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .auctioneer-turn-title{margin:0 0 6px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .timer-ring{display:none!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .col-info > :not(#sealed-ranking-auctioneer):not(#auctioneer-turn-ranking-empty):not(.liveasta-mobile-surface){display:none!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #sealed-ranking-auctioneer{margin:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .sealed-ranking-title{font-size:11px!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .sealed-ranking-row{font-size:clamp(9px,2.6vw,13px)!important;
}

/* INVENDUTO: 0 | INVENDUTO, entrambi molto grandi. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-unsold #auction-title-display{display:none!important;}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-unsold #winner-display{
    display:block!important;font-size:clamp(34px,10vw,64px)!important;font-weight:950!important;white-space:normal!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-unsold .bid-box{display:none!important;}

/* 0 resta rosso dopo l'esito fino alla selezione successiva. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ended #countdown-display{
    color:#ff3b3b!important;
}


/* ==========================================================================
   v0.93 — FIX MIRATI PLANCIA BANDITORE SMARTPHONE
   1) Il pannello "Banditura a turni / È il turno di" esiste SOLO nello stato mobile-turn.
   2) Il nome del miglior offerente usa un colore ad alto contrasto sul pannello chiaro.
   ========================================================================== */
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-auction:not(.mobile-turn)
#auctioneer-turn-center{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
}

#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-auction.mobile-turn
#auctioneer-turn-center{
    visibility:visible!important;
}

/* Nome offerente: non eredita il bianco previsto da altri temi/stati. */
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-auction:not(.mobile-unsold):not(.mobile-sealed-result)
#winner-display{
    color:var(--text, #17212b)!important;
    opacity:1!important;
    text-shadow:none!important;
}

/* Fallback per temi che definiscono --text troppo chiaro sul pannello offerta. */
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
.col-info #winner-display{
    -webkit-text-fill-color:currentColor!important;
    filter:none!important;
}


/* ==========================================================================
   v0.93 — CENTRATURA CONTENUTI MOBILE + LEGGIBILITA' LISTONE TURNI
   ========================================================================== */

/* I due riquadri inferiori trattano sempre le informazioni come un unico blocco centrato. */

/* TIMER normale: numero più grande e perfettamente centrato. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn) .col-timer .timer-ring{
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn) #countdown-display{
    font-size:clamp(82px,24vw,150px)!important;
    line-height:.86!important;
}

/* OFFERTA: importo + nome sono un blocco unico centrale, senza spinta verso alto/basso. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result) .col-info .bid-box{
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result) #current-value-display{
    font-size:clamp(82px,24vw,150px)!important;
    line-height:.86!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result) #winner-display{
    flex:0 0 auto!important;
    position:static!important;
    width:100%!important;
    margin:16px 0 0!important;
    padding:0 6px!important;
    font-size:clamp(24px,7vw,42px)!important;
    line-height:1!important;
    font-weight:950!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
}

/* Nessuna etichetta nella fase offerte: solo valore e miglior offerente. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn) #auction-title-display{
    display:none!important;
}

/* READY: etichetta + valore compongono un unico blocco centrale in entrambi i riquadri. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .col-timer{
    gap:18px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .timer-caption{
    display:block!important;
    position:static!important;
    inset:auto!important;
    width:auto!important;
    margin:0!important;
    font-size:clamp(22px,6vw,34px)!important;
    line-height:1!important;
    font-weight:950!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .timer-ring{
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #countdown-display{
    font-size:clamp(74px,22vw,132px)!important;
    line-height:.86!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .col-info{
    gap:18px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #auction-title-display{
    display:block!important;
    position:static!important;
    inset:auto!important;
    order:1!important;
    width:auto!important;
    margin:0!important;
    font-size:clamp(22px,6vw,34px)!important;
    line-height:1!important;
    font-weight:950!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .bid-box{
    order:2!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #current-value-display{
    font-size:clamp(70px,21vw,126px)!important;
    line-height:.86!important;
}

/* Turni: contenuto del turno centrato come blocco; lista usa tutta l'altezza disponibile e scorre. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #auctioneer-turn-center{
    flex:0 1 auto!important;
    height:auto!important;
    max-height:100%!important;
    gap:10px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .auctioneer-turn-title{
    font-size:clamp(20px,5.8vw,32px)!important;
    line-height:1.05!important;
    font-weight:900!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .auctioneer-turn-team{
    font-size:clamp(34px,10vw,62px)!important;
    line-height:.95!important;
    font-weight:950!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #sealed-ranking-auctioneer{
    width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn #sealed-ranking-auctioneer .sealed-ranking-list{
    flex:1 1 auto!important;
    width:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .sealed-ranking-row{
    min-height:42px!important;
    padding:6px 8px!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .sealed-ranking-team{
    font-size:clamp(14px,4vw,20px)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .sealed-ranking-value{
    font-size:clamp(15px,4.3vw,22px)!important;
}

/* Buste/esiti: stesso criterio, blocchi centrati; le classifiche non superano mai il riquadro. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-panel{
    flex:0 1 auto!important;
    width:100%!important;
    height:auto!important;
    max-height:100%!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-panel h3{
    font-size:clamp(20px,5.5vw,30px)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting #sealed-delivery-count{
    font-size:clamp(68px,20vw,120px)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result #sealed-ranking-auctioneer{
    max-height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .sealed-ranking-list{
    max-height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
}

/* LISTONE BANDITURA A TURNI:
   elimina il testo bianco hard-coded che spariva nei temi chiari. */
#nomination-picker-overlay .nomination-player-row{
    color:var(--theme-text,#17212b)!important;
    background:var(--theme-input,#f4f7fb)!important;
    border-color:var(--theme-border,#cbd5e1)!important;
}
#nomination-picker-overlay .nomination-player-main b{
    color:var(--theme-text,#17212b)!important;
    opacity:1!important;
    -webkit-text-fill-color:currentColor!important;
    text-shadow:none!important;
    font-size:clamp(15px,4.1vw,20px)!important;
    font-weight:950!important;
}
#nomination-picker-overlay .nomination-player-main small{
    color:var(--theme-text-muted,#64748b)!important;
    opacity:1!important;
    -webkit-text-fill-color:currentColor!important;
    font-size:clamp(13px,3.6vw,17px)!important;
    font-weight:800!important;
}
#nomination-picker-overlay .nomination-player-fvm{
    color:var(--theme-number,var(--theme-accent,#df6b14))!important;
    font-size:clamp(18px,4.8vw,24px)!important;
    font-weight:950!important;
}
#nomination-picker-overlay .nomination-candidates{
    min-height:0!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}


/* ==========================================================================
   v0.93 — LABEL QUADRANTI MOBILE + CENTRATURA DEFINITIVA
   PREPARAZIONE / TIMER / OFFERTA
   ========================================================================== */

/* Struttura comune: label sopra + contenuto centrato come unico blocco */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info{
    position:relative!important;
}

/* Label comune sopra ai quadranti */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .mobile-quad-label{
    top:14px!important;
    left:8px!important;
    right:8px!important;
    text-transform:uppercase!important;
    pointer-events:none!important;
}

/* TIMER / PREPARAZIONE: il numero è centrato realmente nel riquadro */

/* OFFERTA: prezzo + nome come blocco centrato verticalmente */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display{
    margin:0!important;
    padding:0!important;
    font-size:clamp(82px,24vw,150px)!important;
    line-height:.86!important;
    text-align:center!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info #winner-display{
    position:static!important;
    flex:0 0 auto!important;
    width:100%!important;
    margin:0!important;
    padding:0 8px!important;
    box-sizing:border-box!important;
    font-size:clamp(26px,7vw,42px)!important;
    line-height:1!important;
    font-weight:950!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
}/* READY mantiene FVM / READY e non usa TIMER/OFFERTA */


/* Turni e buste hanno proprie etichette/stati */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-unsold .mobile-quad-label{
    display:none!important;
}


/* ==========================================================================
   v0.93 — PLANCIA MOBILE: BLOCCHI DI FASE UNICI, CENTRATI, NON SOVRAPPOSTI
   ========================================================================== */

/* Ogni quadrante inferiore è un contenitore centrato. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:22px!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:16px 10px!important;
    box-sizing:border-box!important;
}

/* Le etichette fanno parte del blocco: niente absolute, niente sovrapposizioni. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .mobile-quad-label{
    position:static!important;
    inset:auto!important;
    flex:0 0 auto!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    font-size:clamp(17px,4.8vw,26px)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.035em!important;
    color:var(--theme-muted,var(--text-muted,#64748b))!important;
}

/* PREPARAZIONE è più lunga: dimensione dedicata per non toccare mai i bordi. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-preparing #mobile-left-label{
    font-size:clamp(14px,3.9vw,20px)!important;
    letter-spacing:.015em!important;
}

/* Timer/preparazione: label + numero sono un unico blocco centrale. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer .timer-caption,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring small{
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring{
    position:static!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-timer #countdown-display{
    margin:0!important;
    padding:0!important;
    font-size:clamp(78px,23vw,142px)!important;
    line-height:.86!important;
    text-align:center!important;
}

/* Offerta: soltanto OFFERTA + importo + stato/offerente. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .col-info .mobile-offer-block{
    flex:0 1 auto!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:18px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result):not(.mobile-unsold) #auction-title-display{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result):not(.mobile-unsold) .col-info .bid-box{
    order:1!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result):not(.mobile-unsold) #current-value-display{
    font-size:clamp(76px,22vw,136px)!important;
    line-height:.86!important;
    margin:0!important;
    padding:0!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready):not(.mobile-turn):not(.mobile-sealed-result):not(.mobile-unsold) #winner-display{
    order:2!important;
    position:static!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 6px!important;
    box-sizing:border-box!important;
    font-size:clamp(22px,6.2vw,36px)!important;
    line-height:1!important;
    font-weight:950!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    color:var(--theme-text,#17212b)!important;
    opacity:1!important;
    text-shadow:none!important;
}

/* READY usa esclusivamente FVM e READY. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready{
    --mobile-ready-gap:20px;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .mobile-quad-label{
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .col-timer,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .col-info{
    gap:var(--mobile-ready-gap)!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready .timer-caption,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #auction-title-display{
    position:static!important;
    inset:auto!important;
    display:block!important;
    visibility:visible!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
    font-size:clamp(22px,6vw,34px)!important;
    line-height:1!important;
    font-weight:950!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #winner-display{
    display:none!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #countdown-display,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-ready #current-value-display{
    font-size:clamp(72px,21vw,126px)!important;
    line-height:.86!important;
}

/* Stati speciali nascondono le label normali e usano solo il loro contenuto. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-turn .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.sealed-collecting .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-opening .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-sealed-result .mobile-quad-label,
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction.mobile-unsold .mobile-quad-label{
    display:none!important;
}

/* Classifiche/liste: mai oltre l'altezza del quadrante; scroll interno. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction :is(
    #sealed-ranking-auctioneer,
    .sealed-ranking-list
){
    min-height:0!important;
    max-height:100%!important;
}
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction .sealed-ranking-list{
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}

/* L'etichetta nascosta del desktop non deve mai tornare sopra OFFERTA su mobile. */
#screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile #view-auction:not(.mobile-ready) #auction-title-display{
    pointer-events:none!important;
}

/* Daily Light rimosso: se un vecchio salvataggio lo lascia nel DOM, non mostrarlo. */



/* v0.93 light compatibility */

html[data-live-theme="light-neutral"],
html[data-live-theme="light-blue"],
html[data-live-theme="light-sand"]{
  --theme-bg:#F4F7FB;
  --theme-bg-deep:#EAF0F6;
  --theme-card:#FFFFFF;
  --theme-panel:#F8FAFD;
  --theme-hover:#E9EFF6;
  --theme-input:#FFFFFF;
  --theme-border:#C9D4E2;
  --theme-text:#17212B;
  --theme-muted:#607084;
  --theme-soft:#7B8A9B;
  --theme-primary:#20A76B;
  --theme-primary-hover:#168A58;
  --theme-accent:#E9782D;
  --theme-number:#D9681F;
  --theme-danger:#D9475A;
  --theme-success:#20A76B;
  --theme-top-glow:rgba(32,167,107,.08);
}


/* Daily is genuinely light: surfaces, navigation, overlays and text all follow light tokens. */
html[data-live-theme="light-neutral"],

/* Daily is genuinely light: surfaces, navigation, overlays and text all follow light tokens. */
html[data-live-theme="light-blue"],

/* Daily is genuinely light: surfaces, navigation, overlays and text all follow light tokens. */
html[data-live-theme="light-sand"]{color-scheme:light;}

html[data-live-theme="light-neutral"] body,
html[data-live-theme="light-blue"] body,
html[data-live-theme="light-sand"] body{background:linear-gradient(180deg,#FFFFFF 0%,var(--theme-bg) 48%,var(--theme-bg-deep) 100%)!important;}

html[data-live-theme="light-neutral"] :is(.session-nav,.topbar,.navbar,.player-session-nav),
html[data-live-theme="light-blue"] :is(.session-nav,.topbar,.navbar,.player-session-nav),
html[data-live-theme="light-sand"] :is(.session-nav,.topbar,.navbar,.player-session-nav){background:rgba(255,255,255,.96)!important;border-color:var(--theme-border)!important;color:var(--theme-text)!important;}

html[data-live-theme="light-neutral"] :is(.setup-card,.control-card,.roster-card,.roster-team-card,.modal-content,.modal-card,.manual-assign-card,.audio-mixer-card,.theme-settings-card,.ready-card,.nomination-card,.random-role-card),
html[data-live-theme="light-blue"] :is(.setup-card,.control-card,.roster-card,.roster-team-card,.modal-content,.modal-card,.manual-assign-card,.audio-mixer-card,.theme-settings-card,.ready-card,.nomination-card,.random-role-card),
html[data-live-theme="light-sand"] :is(.setup-card,.control-card,.roster-card,.roster-team-card,.modal-content,.modal-card,.manual-assign-card,.audio-mixer-card,.theme-settings-card,.ready-card,.nomination-card,.random-role-card){box-shadow:0 8px 24px rgba(32,52,72,.08)!important;}

html[data-live-theme="light-neutral"] :is(.ready-overlay,.nomination-overlay,.manual-assign-overlay,.audio-mixer-overlay,.modal-overlay),
html[data-live-theme="light-blue"] :is(.ready-overlay,.nomination-overlay,.manual-assign-overlay,.audio-mixer-overlay,.modal-overlay),
html[data-live-theme="light-sand"] :is(.ready-overlay,.nomination-overlay,.manual-assign-overlay,.audio-mixer-overlay,.modal-overlay){background:rgba(228,235,243,.82)!important;}

html[data-live-theme="light-neutral"] .theme-option[data-theme-option="daily"],
html[data-live-theme="light-blue"] .theme-option[data-theme-option="daily"],
html[data-live-theme="light-sand"] .theme-option[data-theme-option="daily"]{background:#fff!important;}

html[data-live-theme="light-neutral"] #screen-player-buzzer .exact-bid-knob,
html[data-live-theme="light-blue"] #screen-player-buzzer .exact-bid-knob,
html[data-live-theme="light-sand"] #screen-player-buzzer .exact-bid-knob{color:#111!important;}


/* Daily: eliminate remaining dark islands outside management. */
html[data-live-theme="light-neutral"] :is(
  .nomination-order-box,.nomination-order-row,.player-listone-card,.player-listone-row,
  .roster-card,.roster-team-card,.player-room-roster-line,.room-roster-player-preview-card,
  .sealed-bid-controls,.sealed-listone-banner,.auctioned-container,.table-container,.control-table-wrap,
  .player-auction-info,.mini-stat,.ready-control-status,.nomination-control-status
),

/* Daily: eliminate remaining dark islands outside management. */
html[data-live-theme="light-blue"] :is(
  .nomination-order-box,.nomination-order-row,.player-listone-card,.player-listone-row,
  .roster-card,.roster-team-card,.player-room-roster-line,.room-roster-player-preview-card,
  .sealed-bid-controls,.sealed-listone-banner,.auctioned-container,.table-container,.control-table-wrap,
  .player-auction-info,.mini-stat,.ready-control-status,.nomination-control-status
),

/* Daily: eliminate remaining dark islands outside management. */
html[data-live-theme="light-sand"] :is(
  .nomination-order-box,.nomination-order-row,.player-listone-card,.player-listone-row,
  .roster-card,.roster-team-card,.player-room-roster-line,.room-roster-player-preview-card,
  .sealed-bid-controls,.sealed-listone-banner,.auctioned-container,.table-container,.control-table-wrap,
  .player-auction-info,.mini-stat,.ready-control-status,.nomination-control-status
){
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] :is(.player-listone-row,.player-room-roster-line,.nomination-order-row):nth-child(even),
html[data-live-theme="light-blue"] :is(.player-listone-row,.player-room-roster-line,.nomination-order-row):nth-child(even),
html[data-live-theme="light-sand"] :is(.player-listone-row,.player-room-roster-line,.nomination-order-row):nth-child(even){
  background:var(--theme-panel)!important;
}

html[data-live-theme="light-neutral"] :is(.player-session-nav,.roster-session-nav,.auction-list-toolbar,.all-rosters-page,.player-listone-head,.player-listone-tools,.rosters-summary),
html[data-live-theme="light-blue"] :is(.player-session-nav,.roster-session-nav,.auction-list-toolbar,.all-rosters-page,.player-listone-head,.player-listone-tools,.rosters-summary),
html[data-live-theme="light-sand"] :is(.player-session-nav,.roster-session-nav,.auction-list-toolbar,.all-rosters-page,.player-listone-head,.player-listone-tools,.rosters-summary){
  background:transparent!important;
  color:var(--theme-text)!important;
}

html[data-live-theme="light-neutral"] :is(.auction-room-pill,.auction-team-pill,.auction-credit-pill,.auction-slot-pill,.player-auction-info,.mini-stat),
html[data-live-theme="light-blue"] :is(.auction-room-pill,.auction-team-pill,.auction-credit-pill,.auction-slot-pill,.player-auction-info,.mini-stat),
html[data-live-theme="light-sand"] :is(.auction-room-pill,.auction-team-pill,.auction-credit-pill,.auction-slot-pill,.player-auction-info,.mini-stat){
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer :is(.player-live-side,.player-live-main,.player-bid-area),
html[data-live-theme="light-blue"] #screen-player-buzzer :is(.player-live-side,.player-live-main,.player-bid-area),
html[data-live-theme="light-sand"] #screen-player-buzzer :is(.player-live-side,.player-live-main,.player-bid-area){
  background:var(--theme-bg)!important;
  color:var(--theme-text)!important;
}

html[data-live-theme="light-neutral"] #screen-all-rosters,
html[data-live-theme="light-neutral"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-neutral"] #screen-all-rosters .all-rosters-grid,
html[data-live-theme="light-blue"] #screen-all-rosters,
html[data-live-theme="light-blue"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-blue"] #screen-all-rosters .all-rosters-grid,
html[data-live-theme="light-sand"] #screen-all-rosters,
html[data-live-theme="light-sand"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-sand"] #screen-all-rosters .all-rosters-grid{
  background:var(--theme-bg)!important;
  color:var(--theme-text)!important;
}

html[data-live-theme="light-neutral"] .room-roster-player-preview-card::before,
html[data-live-theme="light-neutral"] .room-roster-player-preview-card::after,
html[data-live-theme="light-blue"] .room-roster-player-preview-card::before,
html[data-live-theme="light-blue"] .room-roster-player-preview-card::after,
html[data-live-theme="light-sand"] .room-roster-player-preview-card::before,
html[data-live-theme="light-sand"] .room-roster-player-preview-card::after{opacity:.08!important;}

/* === liveasta-visual-fixes-=== */
/* v0.21 — targeted visual fixes from Daily-theme mobile screenshots.
   CSS-only: no auction logic or DOM behavior changes. */

/* Daily must be light end-to-end, including screen areas exposed below fixed-height content. */
html[data-live-theme="light-neutral"],
html[data-live-theme="light-neutral"] body,
html[data-live-theme="light-neutral"] .screen,
html[data-live-theme="light-neutral"] #screen-all-rosters,
html[data-live-theme="light-neutral"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-neutral"] #screen-all-rosters .all-rosters-grid,

/* === liveasta-visual-fixes-v021 === */
/* v0.21 — targeted visual fixes from Daily-theme mobile screenshots.
   CSS-only: no auction logic or DOM behavior changes. */

/* Daily must be light end-to-end, including screen areas exposed below fixed-height content. */
html[data-live-theme="light-blue"],
html[data-live-theme="light-blue"] body,
html[data-live-theme="light-blue"] .screen,
html[data-live-theme="light-blue"] #screen-all-rosters,
html[data-live-theme="light-blue"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-blue"] #screen-all-rosters .all-rosters-grid,

/* === liveasta-visual-fixes-v021 === */
/* v0.21 — targeted visual fixes from Daily-theme mobile screenshots.
   CSS-only: no auction logic or DOM behavior changes. */

/* Daily must be light end-to-end, including screen areas exposed below fixed-height content. */
html[data-live-theme="light-sand"],
html[data-live-theme="light-sand"] body,
html[data-live-theme="light-sand"] .screen,
html[data-live-theme="light-sand"] #screen-all-rosters,
html[data-live-theme="light-sand"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="light-sand"] #screen-all-rosters .all-rosters-grid{
  background:var(--theme-bg)!important;
  color:var(--theme-text)!important;
}


/* Player header: use the same light cards as Gestione instead of dark legacy pills. */
html[data-live-theme="light-neutral"] #screen-player-buzzer .identity-pill,
html[data-live-theme="light-neutral"] #screen-player-buzzer .mini-stat,

/* Player header: use the same light cards as Gestione instead of dark legacy pills. */
html[data-live-theme="light-blue"] #screen-player-buzzer .identity-pill,
html[data-live-theme="light-blue"] #screen-player-buzzer .mini-stat,

/* Player header: use the same light cards as Gestione instead of dark legacy pills. */
html[data-live-theme="light-sand"] #screen-player-buzzer .identity-pill,
html[data-live-theme="light-sand"] #screen-player-buzzer .mini-stat{
  background:var(--theme-card)!important;
  background-image:none!important;
  color:var(--theme-text)!important;
  border:1px solid var(--theme-border)!important;
  box-shadow:none!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer .identity-pill span,
html[data-live-theme="light-neutral"] #screen-player-buzzer .mini-stat small,
html[data-live-theme="light-blue"] #screen-player-buzzer .identity-pill span,
html[data-live-theme="light-blue"] #screen-player-buzzer .mini-stat small,
html[data-live-theme="light-sand"] #screen-player-buzzer .identity-pill span,
html[data-live-theme="light-sand"] #screen-player-buzzer .mini-stat small{
  color:var(--theme-muted)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer .identity-pill b,
html[data-live-theme="light-neutral"] #screen-player-buzzer .mini-stat strong,
html[data-live-theme="light-blue"] #screen-player-buzzer .identity-pill b,
html[data-live-theme="light-blue"] #screen-player-buzzer .mini-stat strong,
html[data-live-theme="light-sand"] #screen-player-buzzer .identity-pill b,
html[data-live-theme="light-sand"] #screen-player-buzzer .mini-stat strong{
  color:var(--theme-text)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer .identity-pill.team b,
html[data-live-theme="light-blue"] #screen-player-buzzer .identity-pill.team b,
html[data-live-theme="light-sand"] #screen-player-buzzer .identity-pill.team b{
  color:var(--theme-text)!important;
}


/* Live player card: the information side follows Daily; team/player artwork remains semantic. */
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-live-side,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-auction-info,

/* Live player card: the information side follows Daily; team/player artwork remains semantic. */
html[data-live-theme="light-blue"] #screen-player-buzzer .player-live-side,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-auction-info,

/* Live player card: the information side follows Daily; team/player artwork remains semantic. */
html[data-live-theme="light-sand"] #screen-player-buzzer .player-live-side,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-auction-info{
  background:var(--theme-card)!important;
  background-image:none!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer .player-timer-box span,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-timer-box small,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-current-winner,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-timer-box span,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-timer-box small,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-current-winner,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-timer-box span,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-timer-box small,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-current-winner{
  color:var(--theme-muted)!important;
  text-shadow:none!important;
}


/* Random role selectors: Daily uses light cards; role colors are the only strong colors. */
html[data-live-theme="light-neutral"] #screen-room-control#screen-room-control .auto-random-role,

/* Random role selectors: Daily uses light cards; role colors are the only strong colors. */
html[data-live-theme="light-blue"] #screen-room-control#screen-room-control .auto-random-role,

/* Random role selectors: Daily uses light cards; role colors are the only strong colors. */
html[data-live-theme="light-sand"] #screen-room-control#screen-room-control .auto-random-role{
  background:var(--theme-card)!important;
  border-color:var(--theme-border)!important;
  filter:none!important;
}

html[data-live-theme="light-neutral"] #screen-room-control#screen-room-control .auto-random-role:not(:has(input:checked)),
html[data-live-theme="light-blue"] #screen-room-control#screen-room-control .auto-random-role:not(:has(input:checked)),
html[data-live-theme="light-sand"] #screen-room-control#screen-room-control .auto-random-role:not(:has(input:checked)){
  background:var(--theme-panel)!important;
  opacity:.62!important;
  filter:none!important;
}


/* Daily rosters: all team surfaces use the same white-card vocabulary. */
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-team-card,
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-team-head,
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-player-line,

/* Daily rosters: all team surfaces use the same white-card vocabulary. */
html[data-live-theme="light-blue"] #screen-all-rosters .roster-team-card,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-team-head,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-player-line,

/* Daily rosters: all team surfaces use the same white-card vocabulary. */
html[data-live-theme="light-sand"] #screen-all-rosters .roster-team-card,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-team-head,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-player-line{
  background:var(--theme-card)!important;
  background-image:none!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
  box-shadow:none!important;
}

html[data-live-theme="light-neutral"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-player-main small,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-player-main small,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-slots,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-player-main small{
  color:var(--theme-muted)!important;
}

html[data-live-theme="light-neutral"] #screen-all-rosters .roster-slots b,
html[data-live-theme="light-neutral"] #screen-all-rosters .roster-team-name,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-slots b,
html[data-live-theme="light-blue"] #screen-all-rosters .roster-team-name,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-slots b,
html[data-live-theme="light-sand"] #screen-all-rosters .roster-team-name{
  color:var(--theme-text)!important;
}

/* === liveasta-visual-fixes-=== */
/* v0.25 — screenshot-driven Daily coherence pass. CSS only. */

/* DAILY: readable values in player top strip (legacy rules forced white). */
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-credits,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-slots,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-slots .slot-free-total,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-slots .slot-budget-state:not(.budget-slot-ok):not(.budget-slot-over),

/* === liveasta-visual-fixes-v022 === */
/* v0.25 — screenshot-driven Daily coherence pass. CSS only. */

/* DAILY: readable values in player top strip (legacy rules forced white). */
html[data-live-theme="light-blue"] #screen-player-buzzer #player-credits,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-slots,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-slots .slot-free-total,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-slots .slot-budget-state:not(.budget-slot-ok):not(.budget-slot-over),

/* === liveasta-visual-fixes-v022 === */
/* v0.25 — screenshot-driven Daily coherence pass. CSS only. */

/* DAILY: readable values in player top strip (legacy rules forced white). */
html[data-live-theme="light-sand"] #screen-player-buzzer #player-credits,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-slots,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-slots .slot-free-total,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-slots .slot-budget-state:not(.budget-slot-ok):not(.budget-slot-over){
  color:var(--theme-text)!important;
  text-shadow:none!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer #player-credits.budget-health-green,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-ok,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-credits.budget-health-green,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-ok,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-credits.budget-health-green,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-ok{color:var(--theme-primary)!important;}

html[data-live-theme="light-neutral"] #screen-player-buzzer #player-credits.budget-health-orange,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-credits.budget-health-orange,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-credits.budget-health-orange{color:var(--theme-accent)!important;}

html[data-live-theme="light-neutral"] #screen-player-buzzer #player-credits.budget-health-red,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-over,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-credits.budget-health-red,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-over,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-credits.budget-health-red,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-over{color:var(--theme-danger)!important;}


/* DAILY: Setup Asta must use the same card/button vocabulary as Gestione. */
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .setup-card,

/* DAILY: Setup Asta must use the same card/button vocabulary as Gestione. */
html[data-live-theme="light-blue"] #screen-auctioneer-setup .setup-card,

/* DAILY: Setup Asta must use the same card/button vocabulary as Gestione. */
html[data-live-theme="light-sand"] #screen-auctioneer-setup .setup-card{
  background:var(--theme-card)!important;
  border:1px solid var(--theme-border)!important;
  box-shadow:0 10px 28px rgba(22,34,46,.07)!important;
}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big{
  border:1px solid var(--theme-border)!important;
  box-shadow:none!important;
}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big:hover,
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big:active,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big:hover,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big:active,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big:hover,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big:active{
  background:var(--theme-hover)!important;
  border-color:color-mix(in srgb,var(--theme-primary) 55%,var(--theme-border))!important;
  box-shadow:none!important;
  transform:none!important;
}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-icon,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-icon,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-icon{
  background:color-mix(in srgb,var(--theme-accent) 16%,var(--theme-card))!important;
  color:var(--theme-accent)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 36%,var(--theme-border))!important;
}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big strong,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big strong,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big strong{color:var(--theme-text)!important;}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup #auction-mode-selected-label,
html[data-live-theme="light-blue"] #screen-auctioneer-setup #auction-mode-selected-label,
html[data-live-theme="light-sand"] #screen-auctioneer-setup #auction-mode-selected-label{color:var(--theme-primary)!important;}

html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-selected,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-selected,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-selected{border-color:var(--theme-border)!important;}


/* DAILY: Audio mixer — remove the isolated grey design language. */
html[data-live-theme="light-neutral"] .audio-mixer-overlay,

/* DAILY: Audio mixer — remove the isolated grey design language. */
html[data-live-theme="light-blue"] .audio-mixer-overlay,

/* DAILY: Audio mixer — remove the isolated grey design language. */
html[data-live-theme="light-sand"] .audio-mixer-overlay{background:rgba(40,55,70,.24)!important;}

html[data-live-theme="light-neutral"] .audio-mixer-overlay .audio-mixer-card,
html[data-live-theme="light-neutral"] .audio-mixer-card,
html[data-live-theme="light-blue"] .audio-mixer-overlay .audio-mixer-card,
html[data-live-theme="light-blue"] .audio-mixer-card,
html[data-live-theme="light-sand"] .audio-mixer-overlay .audio-mixer-card,
html[data-live-theme="light-sand"] .audio-mixer-card{
  background:var(--theme-card)!important;
  background-image:none!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] .audio-channel,
html[data-live-theme="light-blue"] .audio-channel,
html[data-live-theme="light-sand"] .audio-channel{
  background:var(--theme-panel)!important;
  border:1px solid var(--theme-border)!important;
  color:var(--theme-text)!important;
  box-shadow:none!important;
}

html[data-live-theme="light-neutral"] .audio-channel-head,
html[data-live-theme="light-neutral"] .audio-channel-head b,
html[data-live-theme="light-neutral"] .audio-routing-device b,
html[data-live-theme="light-blue"] .audio-channel-head,
html[data-live-theme="light-blue"] .audio-channel-head b,
html[data-live-theme="light-blue"] .audio-routing-device b,
html[data-live-theme="light-sand"] .audio-channel-head,
html[data-live-theme="light-sand"] .audio-channel-head b,
html[data-live-theme="light-sand"] .audio-routing-device b{color:var(--theme-text)!important;}

html[data-live-theme="light-neutral"] .audio-percent,
html[data-live-theme="light-neutral"] .audio-mixer-subtitle,
html[data-live-theme="light-neutral"] .audio-routing-subtitle,
html[data-live-theme="light-neutral"] .audio-routing-help,
html[data-live-theme="light-neutral"] .audio-routing-device small,
html[data-live-theme="light-blue"] .audio-percent,
html[data-live-theme="light-blue"] .audio-mixer-subtitle,
html[data-live-theme="light-blue"] .audio-routing-subtitle,
html[data-live-theme="light-blue"] .audio-routing-help,
html[data-live-theme="light-blue"] .audio-routing-device small,
html[data-live-theme="light-sand"] .audio-percent,
html[data-live-theme="light-sand"] .audio-mixer-subtitle,
html[data-live-theme="light-sand"] .audio-routing-subtitle,
html[data-live-theme="light-sand"] .audio-routing-help,
html[data-live-theme="light-sand"] .audio-routing-device small{color:var(--theme-muted)!important;}

html[data-live-theme="light-neutral"] .audio-channel-head button,
html[data-live-theme="light-blue"] .audio-channel-head button,
html[data-live-theme="light-sand"] .audio-channel-head button{
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border:1px solid var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] .audio-routing-row,
html[data-live-theme="light-blue"] .audio-routing-row,
html[data-live-theme="light-sand"] .audio-routing-row{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] .audio-routing-row.muted,
html[data-live-theme="light-blue"] .audio-routing-row.muted,
html[data-live-theme="light-sand"] .audio-routing-row.muted{
  background:color-mix(in srgb,var(--theme-danger) 7%,var(--theme-card))!important;
  border-color:color-mix(in srgb,var(--theme-danger) 42%,var(--theme-border))!important;
}

html[data-live-theme="light-neutral"] .audio-close-btn,
html[data-live-theme="light-neutral"] .audio-toolbar-btn,
html[data-live-theme="light-blue"] .audio-close-btn,
html[data-live-theme="light-blue"] .audio-toolbar-btn,
html[data-live-theme="light-sand"] .audio-close-btn,
html[data-live-theme="light-sand"] .audio-toolbar-btn{
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}


/* DAILY: player preview is an artwork viewer, but chrome must remain coherent/readable. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-overlay,

/* DAILY: player preview is an artwork viewer, but chrome must remain coherent/readable. */
html[data-live-theme="light-blue"] .room-roster-player-preview-overlay,

/* DAILY: player preview is an artwork viewer, but chrome must remain coherent/readable. */
html[data-live-theme="light-sand"] .room-roster-player-preview-overlay{background:var(--theme-bg)!important;}

html[data-live-theme="light-neutral"] .room-roster-player-preview-card,
html[data-live-theme="light-blue"] .room-roster-player-preview-card,
html[data-live-theme="light-sand"] .room-roster-player-preview-card{
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] .room-roster-player-preview-close,
html[data-live-theme="light-blue"] .room-roster-player-preview-close,
html[data-live-theme="light-sand"] .room-roster-player-preview-close{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border:1px solid var(--theme-border)!important;
  box-shadow:0 4px 16px rgba(22,34,46,.08)!important;
  backdrop-filter:none!important;
}

/* Keep player/club labels readable over club artwork, but avoid heavy legacy glow. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-name,
html[data-live-theme="light-neutral"] .room-roster-player-preview-meta,
/* Keep player/club labels readable over club artwork, but avoid heavy legacy glow. */
html[data-live-theme="light-blue"] .room-roster-player-preview-name,
html[data-live-theme="light-blue"] .room-roster-player-preview-meta,
/* Keep player/club labels readable over club artwork, but avoid heavy legacy glow. */
html[data-live-theme="light-sand"] .room-roster-player-preview-name,
html[data-live-theme="light-sand"] .room-roster-player-preview-meta{
  text-shadow:0 2px 5px rgba(0,0,0,.45)!important;
}


/* DAILY: auction card right side and header surfaces use one visual family. */
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-card,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-card-side,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-auction-info,

/* DAILY: auction card right side and header surfaces use one visual family. */
html[data-live-theme="light-blue"] #screen-player-buzzer .player-card,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-card-side,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-auction-info,

/* DAILY: auction card right side and header surfaces use one visual family. */
html[data-live-theme="light-sand"] #screen-player-buzzer .player-card,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-card-side,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-auction-info{
  border-color:var(--theme-border)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-auction-info,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-auction-info,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-auction-info{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
}

html[data-live-theme="light-neutral"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-current-winner,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-current-winner,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-current-winner{color:var(--theme-muted)!important;}


/* DAILY: home/version chrome follows theme instead of historical dark chip. */
html[data-live-theme="light-neutral"] #screen-role .home-version-badge,

/* DAILY: home/version chrome follows theme instead of historical dark chip. */
html[data-live-theme="light-blue"] #screen-role .home-version-badge,

/* DAILY: home/version chrome follows theme instead of historical dark chip. */
html[data-live-theme="light-sand"] #screen-role .home-version-badge{
  background:var(--theme-card)!important;
  color:var(--theme-muted)!important;
  border-color:var(--theme-border)!important;
  box-shadow:none!important;
}


/* DAILY: purchases / rosters actions stay consistent with danger secondary language. */
html[data-live-theme="light-neutral"] #screen-room-control #control-purchases-content .restore-btn,
html[data-live-theme="light-neutral"] #screen-room-control .restore-all-btn,

/* DAILY: purchases / rosters actions stay consistent with danger secondary language. */
html[data-live-theme="light-blue"] #screen-room-control #control-purchases-content .restore-btn,
html[data-live-theme="light-blue"] #screen-room-control .restore-all-btn,

/* DAILY: purchases / rosters actions stay consistent with danger secondary language. */
html[data-live-theme="light-sand"] #screen-room-control #control-purchases-content .restore-btn,
html[data-live-theme="light-sand"] #screen-room-control .restore-all-btn{
  background:color-mix(in srgb,var(--theme-danger) 8%,var(--theme-card))!important;
  color:var(--theme-danger)!important;
  border-color:color-mix(in srgb,var(--theme-danger) 42%,var(--theme-border))!important;
}

html[data-live-theme="light-neutral"] :is(.btn-green,.btn-success):not(:disabled):hover,
html[data-live-theme="light-blue"] :is(.btn-green,.btn-success):not(:disabled):hover,
html[data-live-theme="light-sand"] :is(.btn-green,.btn-success):not(:disabled):hover{
  background:var(--theme-primary-hover)!important;
  border-color:var(--theme-primary-hover)!important;
}


/* Preparation countdown: visible in light theme. */
html[data-live-theme="light-neutral"] #screen-auctioneer-board #countdown-display.prep-countdown,
html[data-live-theme="light-neutral"] #screen-auctioneer-board #countdown-display.prep-countdown.liveasta-last3,
html[data-live-theme="light-neutral"] #screen-auctioneer-board #countdown-display.prep-countdown.danger,
html[data-live-theme="light-neutral"] #screen-player-buzzer #player-countdown.prep-countdown,

/* Preparation countdown: visible in light theme. */
html[data-live-theme="light-blue"] #screen-auctioneer-board #countdown-display.prep-countdown,
html[data-live-theme="light-blue"] #screen-auctioneer-board #countdown-display.prep-countdown.liveasta-last3,
html[data-live-theme="light-blue"] #screen-auctioneer-board #countdown-display.prep-countdown.danger,
html[data-live-theme="light-blue"] #screen-player-buzzer #player-countdown.prep-countdown,

/* Preparation countdown: visible in light theme. */
html[data-live-theme="light-sand"] #screen-auctioneer-board #countdown-display.prep-countdown,
html[data-live-theme="light-sand"] #screen-auctioneer-board #countdown-display.prep-countdown.liveasta-last3,
html[data-live-theme="light-sand"] #screen-auctioneer-board #countdown-display.prep-countdown.danger,
html[data-live-theme="light-sand"] #screen-player-buzzer #player-countdown.prep-countdown{
  color:var(--theme-number)!important;
  text-shadow:none!important;
}

html[data-live-theme="light-neutral"] #screen-auctioneer-board .timer-ring small,
html[data-live-theme="light-neutral"] #screen-auctioneer-board .auction-timer-label,
html[data-live-theme="light-neutral"] #screen-auctioneer-board .timer-title,
html[data-live-theme="light-blue"] #screen-auctioneer-board .timer-ring small,
html[data-live-theme="light-blue"] #screen-auctioneer-board .auction-timer-label,
html[data-live-theme="light-blue"] #screen-auctioneer-board .timer-title,
html[data-live-theme="light-sand"] #screen-auctioneer-board .timer-ring small,
html[data-live-theme="light-sand"] #screen-auctioneer-board .auction-timer-label,
html[data-live-theme="light-sand"] #screen-auctioneer-board .timer-title{
  color:var(--theme-muted)!important;
}

html[data-live-theme="light-neutral"] #auction-room-error.liveasta-access-retry:not(.liveasta-access-free),
html[data-live-theme="light-neutral"] #auction-room-error:not(:empty):not(.liveasta-access-free),
html[data-live-theme="light-blue"] #auction-room-error.liveasta-access-retry:not(.liveasta-access-free),
html[data-live-theme="light-blue"] #auction-room-error:not(:empty):not(.liveasta-access-free),
html[data-live-theme="light-sand"] #auction-room-error.liveasta-access-retry:not(.liveasta-access-free),
html[data-live-theme="light-sand"] #auction-room-error:not(:empty):not(.liveasta-access-free){
  color:#B42332!important;
  background:#FFF0F2!important;
  border-color:#E7A4AD!important;
}
.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(1){background:#F4F6F8!important}.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(2){background:#1769AA!important}.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(3){background:#D96B1B!important}
.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(1){background:#EEF5FB!important}.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(2){background:#0B6FA4!important}.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(3){background:#D76B24!important}
.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(1){background:#F8F4EC!important}.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(2){background:#356F63!important}.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(3){background:#C96622!important}


/* v0.93 — Impostazioni separate dall'accesso Superuser */
#screen-admin-login .settings-superuser-btn{
    width:100%!important;
    margin-top:18px!important;
}
#screen-superuser-login .superuser-login-card{
    max-width:520px!important;
}
#screen-superuser-login .liveasta-secret-input{
    width:100%!important;
    margin-top:18px!important;
}
#screen-superuser-login .btn{
    width:100%!important;
}


/* ==========================================================================
   v0.93 — SUPERUSER RESPONSIVE
   Desktop: tabella piena e leggibile.
   Mobile: ogni stanza diventa una card verticale, senza scroll orizzontale.
   ========================================================================== */
#screen-admin{
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow-y:auto!important;
    padding:18px 0 34px!important;
    box-sizing:border-box!important;
}
#screen-admin > .setup-card{
    flex:0 0 auto!important;
    width:min(1180px,96vw)!important;
    max-width:1180px!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:22px!important;
    box-sizing:border-box!important;
}
#screen-admin .admin-version-badge{
    margin-bottom:6px!important;
}
#screen-admin h1{
    margin:0 0 4px!important;
}
#screen-admin .subtitle{
    margin:0 0 16px!important;
}
#screen-admin .admin-global-setting{
    width:100%!important;
    box-sizing:border-box!important;
}
#screen-admin .admin-listone-box{
    width:100%!important;
    box-sizing:border-box!important;
}
#screen-admin .admin-listone-head{
    align-items:center!important;
}
#screen-admin .admin-listone-head b{
    font-size:1rem!important;
}
#screen-admin #admin-listone-count{
    white-space:nowrap!important;
}
#screen-admin .admin-listone-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
}
#screen-admin .admin-listone-actions .btn{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    line-height:1.1!important;
}
#screen-admin #central-listone-status,
#screen-admin #admin-miniature-check-status{
    overflow-wrap:anywhere!important;
}
#screen-admin .admin-scroll{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    box-sizing:border-box!important;
    border-radius:14px!important;
}
#screen-admin .admin-table{
    width:100%!important;
    min-width:900px!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
}
#screen-admin .admin-table th,
#screen-admin .admin-table td{
    vertical-align:middle!important;
    padding:10px!important;
    box-sizing:border-box!important;
}
#screen-admin .admin-table th:nth-child(1){width:16%!important;}
#screen-admin .admin-table th:nth-child(2){width:16%!important;}
#screen-admin .admin-table th:nth-child(3){width:24%!important;}
#screen-admin .admin-table th:nth-child(4){width:16%!important;}
#screen-admin .admin-table th:nth-child(5){width:28%!important;}
#screen-admin .admin-table td .minimal-input{
    width:100%!important;
    min-width:0!important;
    height:40px!important;
    margin:0!important;
    padding:0 10px!important;
    font-size:.84rem!important;
    text-align:left!important;
    box-sizing:border-box!important;
}
#screen-admin .admin-room-config{
    color:var(--theme-muted)!important;
    line-height:1.3!important;
}
#screen-admin .room-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
}
#screen-admin .room-actions .btn{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:8px 6px!important;
    white-space:normal!important;
    line-height:1.05!important;
}

/* Tablet */
@media (max-width:900px){
    #screen-admin > .setup-card{
        width:96vw!important;
        padding:16px!important;
    }
    #screen-admin .admin-listone-actions{
        grid-template-columns:1fr!important;
    }
}

/* Smartphone: niente tabella compressa, una card per stanza. */
@media (max-width:700px){
    #screen-admin{
        padding:8px 0 24px!important;
        align-items:flex-start!important;
    }
    #screen-admin > .setup-card{
        width:calc(100vw - 16px)!important;
        max-width:none!important;
        padding:14px!important;
        border-radius:18px!important;
    }
    #screen-admin h1{
        font-size:clamp(1.55rem,7vw,2.05rem)!important;
        text-align:center!important;
    }
    #screen-admin .subtitle{
        text-align:center!important;
        font-size:.82rem!important;
    }
    #screen-admin .admin-global-setting{
        padding:12px!important;
        gap:10px!important;
    }
    #screen-admin .admin-global-setting-help{
        font-size:.72rem!important;
        line-height:1.35!important;
    }
    #screen-admin #admin-show-rooms-toggle{
        min-height:42px!important;
        white-space:normal!important;
    }
    #screen-admin .admin-listone-box{
        margin:12px 0!important;
        padding:12px!important;
        border-radius:14px!important;
    }
    #screen-admin .admin-listone-head{
        gap:8px!important;
    }
    #screen-admin .admin-listone-head b{
        font-size:1rem!important;
    }
    #screen-admin .admin-listone-actions{
        grid-template-columns:1fr!important;
        gap:7px!important;
    }
    #screen-admin .admin-listone-actions .btn{
        min-height:42px!important;
        font-size:.78rem!important;
        padding:8px 10px!important;
    }
    #screen-admin #central-listone-status,
    #screen-admin #admin-miniature-check-status{
        font-size:.72rem!important;
        line-height:1.35!important;
        text-align:center!important;
    }

    #screen-admin .admin-scroll{
        overflow:visible!important;
        background:transparent!important;
        border:0!important;
        padding:0!important;
        box-shadow:none!important;
    }
    #screen-admin .admin-table{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        table-layout:auto!important;
    }
    #screen-admin .admin-table thead{
        display:none!important;
    }
    #screen-admin .admin-table tbody{
        display:flex!important;
        flex-direction:column!important;
        gap:12px!important;
        width:100%!important;
    }
    #screen-admin .admin-table tr{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:10px!important;
        width:100%!important;
        min-width:0!important;
        padding:12px!important;
        box-sizing:border-box!important;
        border:1px solid var(--theme-border)!important;
        border-radius:14px!important;
        background:var(--theme-card)!important;
        box-shadow:0 8px 20px color-mix(in srgb,var(--theme-bg-deep) 18%,transparent)!important;
    }
    #screen-admin .admin-table td{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:6px!important;
        width:100%!important;
        min-width:0!important;
        padding:0!important;
        border:0!important;
        text-align:left!important;
    }
    #screen-admin .admin-table td::before{
        content:attr(data-label)!important;
        display:block!important;
        color:var(--theme-muted)!important;
        font-size:.63rem!important;
        font-weight:900!important;
        letter-spacing:.06em!important;
        text-transform:uppercase!important;
    }
    #screen-admin .admin-table td:nth-child(3),
    #screen-admin .admin-table td:nth-child(4),
    #screen-admin .admin-table td:nth-child(5){
        grid-column:1 / -1!important;
    }
    #screen-admin .admin-table td .minimal-input{
        height:44px!important;
        font-size:.9rem!important;
    }
    #screen-admin .admin-room-config{
        padding:10px!important;
        border-radius:10px!important;
        background:var(--theme-panel)!important;
        color:var(--theme-text)!important;
        font-size:.8rem!important;
    }
    #screen-admin .admin-approval-flag{
        width:100%!important;
        min-height:42px!important;
        justify-content:center!important;
        box-sizing:border-box!important;
    }
    #screen-admin .room-actions{
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
    }
    #screen-admin .room-actions .btn{
        min-height:42px!important;
        font-size:.72rem!important;
        padding:8px!important;
        white-space:normal!important;
    }
}

/* Telefoni stretti */
@media (max-width:420px){
    #screen-admin > .setup-card{
        width:calc(100vw - 10px)!important;
        padding:10px!important;
    }
    #screen-admin .admin-table tr{
        grid-template-columns:1fr!important;
    }
    #screen-admin .admin-table td:nth-child(n){
        grid-column:1!important;
    }
    #screen-admin .room-actions{
        grid-template-columns:1fr!important;
    }
}


/* ==========================================================================
   v0.93 — ACCESSO GIOCATORE
   I CTA seguono il colore primario del tema; fix clipping del select squadra.
   ========================================================================== */
html[data-live-theme] #screen-player-setup #player-wizard-next,
html[data-live-theme] #screen-player-setup #player-enter-btn{
    background:var(--theme-primary)!important;
    background-image:none!important;
    color:var(--theme-bg-deep)!important;
    border:1px solid var(--theme-primary)!important;
    box-shadow:none!important;
}
html[data-live-theme] #screen-player-setup #player-wizard-next:hover,
html[data-live-theme] #screen-player-setup #player-enter-btn:hover{
    background:var(--theme-primary-hover,var(--theme-primary))!important;
    border-color:var(--theme-primary-hover,var(--theme-primary))!important;
}
html[data-live-theme] #screen-player-setup .access-wizard-progress i.done,
html[data-live-theme] #screen-player-setup .access-wizard-progress i.active{
    background:var(--theme-primary)!important;
    box-shadow:0 0 10px color-mix(in srgb,var(--theme-primary) 24%,transparent)!important;
}

/* Il testo selezionato non deve essere tagliato inferiormente sui browser Android. */
#screen-player-setup #player-team-select{
    min-height:48px!important;
    height:48px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    padding-left:12px!important;
    padding-right:40px!important;
    line-height:46px!important;
    font-size:1rem!important;
    box-sizing:border-box!important;
    vertical-align:middle!important;
}
#screen-player-setup #player-team-select option{
    line-height:normal!important;
}

/* Stessa metrica per i campi dello step stanza/PIN: il wizard non cambia altezza
   visivamente passando da uno step all'altro. */
#screen-player-setup #player-room-select,
#screen-player-setup #player-room-name-input,
#screen-player-setup #player-room-password,
#screen-player-setup #player-pin,
#screen-player-setup #player-pin-confirm{
    min-height:48px!important;
    box-sizing:border-box!important;
}

/* Modern Daily: verde coerente col tema sabbia, meno acceso del verde generico. */
html[data-live-theme="light-sand"]{
    --theme-primary:#347F70;
    --theme-primary-hover:#28685C;
    --theme-success:#347F70;
    --theme-top-glow:rgba(52,127,112,.08);
}


/* ==========================================================================
   v0.93 — TASTI SECONDARI UNIFORMI
   ESCI / INDIETRO non cambiano più colore tra normale, hover e pressione.
   ========================================================================== */
html[data-live-theme] :is(
    .btn-secondary,
    .session-back,
    .auction-setup-root-back,
    .control-action-back,
    #player-wizard-back,
    #auction-wizard-back
){
    background:var(--theme-hover)!important;
    background-image:none!important;
    color:var(--theme-text)!important;
    border:1px solid var(--theme-border)!important;
    box-shadow:none!important;
    text-shadow:none!important;
}

/* Nessun cambio cromatico al passaggio del mouse, focus o tap. */
html[data-live-theme] :is(
    .btn-secondary,
    .session-back,
    .auction-setup-root-back,
    .control-action-back,
    #player-wizard-back,
    #auction-wizard-back
):is(:hover,:focus,:focus-visible,:active){
    background:var(--theme-hover)!important;
    background-image:none!important;
    color:var(--theme-text)!important;
    border-color:var(--theme-border)!important;
    box-shadow:none!important;
    outline:none!important;
}

/* Mantiene soltanto un feedback fisico leggero alla pressione. */
html[data-live-theme] :is(
    .btn-secondary,
    .session-back,
    .auction-setup-root-back,
    .control-action-back,
    #player-wizard-back,
    #auction-wizard-back
):active:not(:disabled){
    transform:scale(.98)!important;
}

/* Al rilascio torna esattamente allo stesso aspetto. */
html[data-live-theme] :is(
    .btn-secondary,
    .session-back,
    .auction-setup-root-back,
    .control-action-back,
    #player-wizard-back,
    #auction-wizard-back
):not(:active){
    transform:none!important;
}


/* ==========================================================================
   v0.93 — BANDITORE: CTA COERENTI COL TEMA + NIENTE TAP HIGHLIGHT AZZURRO
   ========================================================================== */

/* Elimina l'overlay azzurro nativo Android/Chrome sui controlli toccabili. */
button,
.btn,
[role="button"],
a,
select,
input[type="button"],
input[type="submit"],
input[type="reset"]{
    -webkit-tap-highlight-color:transparent!important;
    -webkit-touch-callout:none;
}
button,
.btn,
[role="button"]{
    touch-action:manipulation;
}

/* Banditore: AVANTI / ENTRA / AVVIA SESSIONE usano esclusivamente il tema attivo. */
html[data-live-theme] #screen-auctioneer-setup #auction-wizard-next,
html[data-live-theme] #screen-auctioneer-setup #btn-apri-plancia{
    background:var(--theme-primary)!important;
    background-image:none!important;
    color:var(--theme-bg-deep)!important;
    border:1px solid var(--theme-primary)!important;
    box-shadow:none!important;
    text-shadow:none!important;
}
html[data-live-theme] #screen-auctioneer-setup #auction-wizard-next:hover,
html[data-live-theme] #screen-auctioneer-setup #auction-wizard-next:focus,
html[data-live-theme] #screen-auctioneer-setup #auction-wizard-next:focus-visible,
html[data-live-theme] #screen-auctioneer-setup #btn-apri-plancia:hover,
html[data-live-theme] #screen-auctioneer-setup #btn-apri-plancia:focus,
html[data-live-theme] #screen-auctioneer-setup #btn-apri-plancia:focus-visible{
    background:var(--theme-primary)!important;
    background-image:none!important;
    color:var(--theme-bg-deep)!important;
    border-color:var(--theme-primary)!important;
    box-shadow:none!important;
    outline:none!important;
}
html[data-live-theme] #screen-auctioneer-setup #auction-wizard-next:active,
html[data-live-theme] #screen-auctioneer-setup #btn-apri-plancia:active{
    background:var(--theme-primary)!important;
    background-image:none!important;
    color:var(--theme-bg-deep)!important;
    border-color:var(--theme-primary)!important;
    box-shadow:none!important;
    transform:scale(.98)!important;
}

/* Barra di avanzamento del wizard banditore nello stesso colore del tema. */
html[data-live-theme] #screen-auctioneer-setup .access-wizard-progress i.done,
html[data-live-theme] #screen-auctioneer-setup .access-wizard-progress i.active{
    background:var(--theme-primary)!important;
    box-shadow:0 0 10px color-mix(in srgb,var(--theme-primary) 24%,transparent)!important;
}

/* I pulsanti INDIETRO/ESCI del banditore mantengono esattamente il colore secondario
   anche durante tap/focus, come già impostato nel flusso giocatore. */
html[data-live-theme] #screen-auctioneer-setup :is(
    #auction-wizard-back,
    .auction-setup-root-back,
    .btn-secondary
):is(:hover,:focus,:focus-visible,:active){
    background:var(--theme-hover)!important;
    background-image:none!important;
    color:var(--theme-text)!important;
    border-color:var(--theme-border)!important;
    box-shadow:none!important;
    outline:none!important;
}


/* ==========================================================================
   v0.93 — CONTRASTO TESTI GARANTITO NEI TEMI
   ========================================================================== */

/* Regola generale per i pulsanti primari: testo sempre ad alto contrasto
   rispetto al colore primario del tema. */
html[data-live-theme] .btn:not(.btn-secondary):not(.btn-danger):not(.btn-green):not(.buzzer-btn){
    color:var(--theme-bg-deep)!important;
    text-shadow:none!important;
}

/* Card scelta modalità banditore — temi scuri:
   sfondo acceso, testo scuro ad alto contrasto. */
html[data-live-theme="broadcast"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="stadium"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="carbon"] #screen-auctioneer-setup .auction-mode-big{
    background:var(--theme-primary)!important;
    background-image:none!important;
    border-color:color-mix(in srgb,var(--theme-primary) 72%,white 28%)!important;
    color:var(--theme-bg-deep)!important;
}
html[data-live-theme="broadcast"] #screen-auctioneer-setup .auction-mode-big *,
html[data-live-theme="stadium"] #screen-auctioneer-setup .auction-mode-big *,
html[data-live-theme="carbon"] #screen-auctioneer-setup .auction-mode-big *{
    color:var(--theme-bg-deep)!important;
    text-shadow:none!important;
    opacity:1!important;
}
html[data-live-theme="broadcast"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon,
html[data-live-theme="stadium"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon,
html[data-live-theme="carbon"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon{
    background:color-mix(in srgb,white 30%,var(--theme-primary))!important;
    border-color:color-mix(in srgb,var(--theme-bg-deep) 20%,transparent)!important;
    color:var(--theme-bg-deep)!important;
}

/* Temi chiari: card chiare, testo scuro, accento solo su icona. */
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big{
    background:var(--theme-panel)!important;
    background-image:none!important;
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
}
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big *,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big *,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big *{
    color:var(--theme-text)!important;
    text-shadow:none!important;
    opacity:1!important;
}
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big .auction-mode-icon{
    background:color-mix(in srgb,var(--theme-accent) 14%,white)!important;
    border-color:color-mix(in srgb,var(--theme-accent) 38%,var(--theme-border))!important;
    color:var(--theme-accent)!important;
}

/* Testi descrittivi: mai usare colori accent troppo chiari. */
#screen-auctioneer-setup .auction-mode-big strong{
    font-weight:950!important;
}
html[data-live-theme="broadcast"] #screen-auctioneer-setup .auction-mode-big small,
html[data-live-theme="stadium"] #screen-auctioneer-setup .auction-mode-big small,
html[data-live-theme="carbon"] #screen-auctioneer-setup .auction-mode-big small{
    color:color-mix(in srgb,var(--theme-bg-deep) 78%,var(--theme-text) 22%)!important;
}
html[data-live-theme="light-neutral"] #screen-auctioneer-setup .auction-mode-big small,
html[data-live-theme="light-blue"] #screen-auctioneer-setup .auction-mode-big small,
html[data-live-theme="light-sand"] #screen-auctioneer-setup .auction-mode-big small{
    color:var(--theme-muted)!important;
}

/* Stati hover/focus/tap: il contrasto non cambia. */
html[data-live-theme] #screen-auctioneer-setup .auction-mode-big:is(:hover,:focus,:focus-visible,:active){
    color:inherit!important;
    filter:none!important;
    box-shadow:none!important;
    outline:none!important;
}


/* ==========================================================================
   v0.93 — PLAYER INFO CARDS FOLLOW THE ACTIVE THEME
   STANZA / SQUADRA / CREDITI / SLOT-BUDGET
   ========================================================================== */

/* Shared surface */
html[data-live-theme] #screen-player-buzzer .player-identity-row .identity-pill,
html[data-live-theme] #screen-player-buzzer .player-budget-strip .mini-stat{
    background:var(--theme-panel)!important;
    background-image:none!important;
    border:1px solid var(--theme-border)!important;
    color:var(--theme-text)!important;
    box-shadow:none!important;
}

/* Labels */
html[data-live-theme] #screen-player-buzzer .player-identity-row .identity-pill > span,
html[data-live-theme] #screen-player-buzzer .player-budget-strip .mini-stat > small{
    color:var(--theme-muted)!important;
    opacity:1!important;
    text-shadow:none!important;
}

/* Main values */
html[data-live-theme] #screen-player-buzzer #player-room-inline,
html[data-live-theme] #screen-player-buzzer #display-team-name,
html[data-live-theme] #screen-player-buzzer #player-credits,
html[data-live-theme] #screen-player-buzzer #player-slots{
    color:var(--theme-text)!important;
    text-shadow:none!important;
}

/* Non-functional accent values should follow the theme, not old hard-coded orange. */
html[data-live-theme] #screen-player-buzzer #player-room-inline,
html[data-live-theme] #screen-player-buzzer #player-credits{
    color:var(--theme-accent)!important;
}

/* Team name stays primary text; status dot keeps its functional colour. */
html[data-live-theme] #screen-player-buzzer #display-team-name{
    color:var(--theme-text)!important;
}

/* SLOT / BUDGET container text follows theme, but semantic states keep their own colours. */
html[data-live-theme] #screen-player-buzzer #player-slots .slot-budget-state:not(.budget-slot-ok):not(.budget-slot-over){
    color:var(--theme-text)!important;
}

/* Keep functional colours untouched. */
html[data-live-theme] #screen-player-buzzer #player-slots .role-P,
html[data-live-theme] #screen-player-buzzer #player-slots .role-D,
html[data-live-theme] #screen-player-buzzer #player-slots .role-C,
html[data-live-theme] #screen-player-buzzer #player-slots .role-A{
    color:inherit!important;
}
html[data-live-theme] #screen-player-buzzer #player-slots .budget-slot-ok{
    color:#42e287!important;
}
html[data-live-theme] #screen-player-buzzer #player-slots .budget-slot-over{
    color:#ff5b68!important;
}

/* Light themes need a slightly stronger separation from the page background. */
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-identity-row .identity-pill,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-identity-row .identity-pill,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-identity-row .identity-pill,
html[data-live-theme="light-neutral"] #screen-player-buzzer .player-budget-strip .mini-stat,
html[data-live-theme="light-blue"] #screen-player-buzzer .player-budget-strip .mini-stat,
html[data-live-theme="light-sand"] #screen-player-buzzer .player-budget-strip .mini-stat{
    background:var(--theme-card)!important;
    border-color:var(--theme-border)!important;
}


/* ==========================================================================
   v0.93 — PLAYER STANZA / ROSA: FULL HEIGHT MOBILE
   Corregge il vecchio override 88dvh che troncava le pagine prima del fondo.
   ========================================================================== */
@media (max-width:700px){

    body #player-room-overview-overlay,
    body #player-room-team-roster-overlay,
    body #player-roster-overlay{
        inset:0!important;
        width:100vw!important;
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
        padding:0!important;
        margin:0!important;
        align-items:stretch!important;
        justify-content:stretch!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }

    body #player-room-overview-overlay > .player-room-overview-card,
    body #player-room-team-roster-overlay > .player-room-team-roster-card,
    body #player-roster-overlay > .roster-card{
        width:100vw!important;
        max-width:100vw!important;
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
        margin:0!important;
        border:0!important;
        border-radius:0!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
        display:flex!important;
        flex-direction:column!important;
        padding:
            max(10px,env(safe-area-inset-top))
            8px
            max(12px,env(safe-area-inset-bottom))!important;
    }

    /* Header fisso, lista usa tutto lo spazio rimasto fino al fondo. */
    body #player-room-overview-overlay .player-room-overview-head,
    body #player-room-team-roster-overlay .player-room-overview-head,
    body #player-roster-overlay .roster-head{
        flex:0 0 auto!important;
    }

    body #player-room-overview-list,
    body #player-room-team-roster-list,
    body #player-roster-list{
        flex:1 1 0!important;
        min-height:0!important;
        height:auto!important;
        max-height:none!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
        -webkit-overflow-scrolling:touch!important;
        overscroll-behavior-y:contain!important;
        padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
        scroll-padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
        box-sizing:border-box!important;
    }

    /* Nessun contenitore interno deve reintrodurre un limite verticale. */
    body #player-room-overview-overlay > .player-room-overview-card > *,
    body #player-room-team-roster-overlay > .player-room-team-roster-card > *,
    body #player-roster-overlay > .roster-card > *{
        min-width:0!important;
    }
}

/* Fallback per browser che non gestiscono bene dvh. */
@supports not (height:100dvh){
    @media (max-width:700px){
        body #player-room-overview-overlay,
        body #player-room-team-roster-overlay,
        body #player-roster-overlay,
        body #player-room-overview-overlay > .player-room-overview-card,
        body #player-room-team-roster-overlay > .player-room-team-roster-card,
        body #player-roster-overlay > .roster-card{
            height:100vh!important;
            min-height:100vh!important;
            max-height:100vh!important;
        }
    }
}


/* ==========================================================================
   v0.93 — LISTE GIOCATORE UNIFICATE
   Listone / La mia rosa / Rosa squadra
   ========================================================================== */

/* ---------- LISTONE ---------- */
#player-listone-list .player-listone-row{
    display:grid!important;
    grid-template-columns:42px 50px minmax(0,1fr) minmax(58px,auto) 56px!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    min-height:66px!important;
    padding:8px 14px 8px 10px!important;
    box-sizing:border-box!important;
    border:1px solid var(--theme-border)!important;
    border-radius:12px!important;
    background:var(--theme-input)!important;
    color:var(--theme-text)!important;
    opacity:1!important;
}
#player-listone-list .player-listone-priority{
    width:42px!important;
    min-width:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}
#player-listone-list .role-badge{
    width:50px!important;
    min-width:50px!important;
    margin:0!important;
    justify-self:center!important;
}
#player-listone-list .player-listone-main{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
    text-align:left!important;
}
#player-listone-list .player-listone-main b{
    width:100%!important;
    color:var(--theme-text)!important;
    font-size:clamp(.88rem,3.7vw,1.02rem)!important;
    line-height:1.05!important;
    font-weight:950!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    opacity:1!important;
}
#player-listone-list .player-listone-main small{
    width:100%!important;
    color:var(--theme-muted)!important;
    font-size:clamp(.66rem,2.8vw,.78rem)!important;
    line-height:1.05!important;
    font-weight:800!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    opacity:1!important;
}
#player-listone-list .player-listone-owner{
    min-width:0!important;
    max-width:96px!important;
    color:var(--theme-muted)!important;
    font-size:clamp(.62rem,2.6vw,.74rem)!important;
    line-height:1.05!important;
    font-weight:950!important;
    text-align:right!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
#player-listone-list .player-listone-value{
    width:56px!important;
    min-width:56px!important;
    padding-right:4px!important;
    box-sizing:border-box!important;
    color:var(--theme-accent)!important;
    font-size:clamp(.88rem,3.7vw,1.02rem)!important;
    font-weight:950!important;
    text-align:right!important;
    font-variant-numeric:tabular-nums!important;
}

/* Acquisto mio = verde, acquisto altro = rosso. */
#player-listone-list .player-listone-row.status-mine{
    background:color-mix(in srgb,#1fa85b 24%,var(--theme-input))!important;
    border-color:color-mix(in srgb,#1fa85b 74%,var(--theme-border))!important;
}
#player-listone-list .player-listone-row.status-mine .player-listone-owner,
#player-listone-list .player-listone-row.status-mine .player-listone-value{
    color:color-mix(in srgb,#20a85b 82%,var(--theme-text) 18%)!important;
}
#player-listone-list .player-listone-row.status-other,
#player-listone-list .player-listone-row.status-unsold{
    background:color-mix(in srgb,#d94343 22%,var(--theme-input))!important;
    border-color:color-mix(in srgb,#d94343 72%,var(--theme-border))!important;
}
#player-listone-list .player-listone-row.status-other .player-listone-owner,
#player-listone-list .player-listone-row.status-other .player-listone-value,
#player-listone-list .player-listone-row.status-unsold .player-listone-owner,
#player-listone-list .player-listone-row.status-unsold .player-listone-value{
    color:color-mix(in srgb,#d94343 78%,var(--theme-text) 22%)!important;
}

/* Non attenuare mai il testo dei giocatori già acquistati. */
#player-listone-list .player-listone-row.auctioned,
#player-listone-list .player-listone-row:disabled{
    opacity:1!important;
    filter:none!important;
}
#player-listone-list .player-listone-row:disabled .player-listone-main b{
    color:var(--theme-text)!important;
    opacity:1!important;
}

/* ---------- LA MIA ROSA ---------- */
#player-roster-list .roster-row{
    display:grid!important;
    gap:12px!important;
    align-items:center!important;
    width:100%!important;
    min-height:66px!important;
    padding:8px 12px 8px 0!important;
    box-sizing:border-box!important;
    border-bottom:1px solid var(--theme-border)!important;
}
#player-roster-list .roster-row .role-badge{
}
#player-roster-list .player-roster-main{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:2px!important;
}
#player-roster-list .player-roster-main b{
    color:var(--theme-text)!important;
    font-size:clamp(.98rem,4vw,1.12rem)!important;
    line-height:1.05!important;
    font-weight:950!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
#player-roster-list .player-roster-main small{
    color:var(--theme-muted)!important;
    font-size:clamp(.72rem,3vw,.84rem)!important;
    line-height:1.05!important;
    font-weight:700!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
#player-roster-list .player-roster-price{
    width:58px!important;
    min-width:58px!important;
    box-sizing:border-box!important;
    color:var(--theme-accent)!important;
    font-size:clamp(.96rem,4vw,1.12rem)!important;
    font-weight:950!important;
    text-align:right!important;
    font-variant-numeric:tabular-nums!important;
}

/* ---------- ROSA APERTA DALLA STANZA ---------- */
#player-room-team-roster-list .player-room-roster-line{
    display:grid!important;
    gap:12px!important;
    align-items:center!important;
    width:100%!important;
    min-height:66px!important;
    padding:8px 12px 8px 10px!important;
    box-sizing:border-box!important;
    border:1px solid var(--theme-border)!important;
    border-radius:12px!important;
    background:var(--theme-input)!important;
}
#player-room-team-roster-list .player-room-roster-line .role-badge{
}
#player-room-team-roster-list .player-room-roster-main b{
    color:var(--theme-text)!important;
    font-size:clamp(.98rem,4vw,1.12rem)!important;
    line-height:1.05!important;
    font-weight:950!important;
}
#player-room-team-roster-list .player-room-roster-main small{
    color:var(--theme-muted)!important;
    font-size:clamp(.72rem,3vw,.84rem)!important;
    line-height:1.05!important;
    font-weight:700!important;
}
#player-room-team-roster-list .player-room-roster-price{
    width:58px!important;
    min-width:58px!important;
    box-sizing:border-box!important;
    color:var(--theme-accent)!important;
    font-size:clamp(.96rem,4vw,1.12rem)!important;
    font-weight:950!important;
    text-align:right!important;
    font-variant-numeric:tabular-nums!important;
}

/* Telefoni stretti: preserva tutte le colonne riducendo solo i gap. */
@media(max-width:420px){
    #player-listone-list .player-listone-row{
        grid-template-columns:36px 44px minmax(0,1fr) minmax(48px,72px) 50px!important;
        gap:6px!important;
        padding-left:7px!important;
        padding-right:10px!important;
    }
    #player-listone-list .player-listone-priority{width:36px!important;min-width:36px!important;}
    #player-listone-list .role-badge{width:44px!important;min-width:44px!important;}
    #player-listone-list .player-listone-value{width:50px!important;min-width:50px!important;}
    #player-roster-list .roster-row,
    #player-room-team-roster-list .player-room-roster-line{
        grid-template-columns:56px minmax(0,1fr) 52px!important;
        gap:8px!important;
    }
}


/* ==========================================================================
   v0.93 — SPAZIATURA RUOLO / NOME NELLE ROSE
   Solo "La mia rosa" e rose aperte dalla Stanza.
   ========================================================================== */

/* LA MIA ROSA */
#player-roster-list .roster-row{
    grid-template-columns:76px minmax(0,1fr) 58px!important;
    column-gap:14px!important;
    padding-left:10px!important;
    padding-right:14px!important;
}
#player-roster-list .roster-row .role-badge{
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
    justify-self:start!important;
}
#player-roster-list .player-roster-main{
    padding-left:0!important;
    margin-left:0!important;
}
#player-roster-list .player-roster-price{
    padding-right:6px!important;
}

/* ROSA DI UNA SQUADRA APERTA DALLA STANZA */
#player-room-team-roster-list .player-room-roster-line{
    grid-template-columns:76px minmax(0,1fr) 58px!important;
    column-gap:14px!important;
    padding-left:10px!important;
    padding-right:14px!important;
}
#player-room-team-roster-list .player-room-roster-line .role-badge{
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
    justify-self:start!important;
}
#player-room-team-roster-list .player-room-roster-main{
    padding-left:0!important;
    margin-left:0!important;
}
#player-room-team-roster-list .player-room-roster-price{
    padding-right:6px!important;
}

/* Telefoni molto stretti: mantieni comunque un distacco visibile. */
@media(max-width:390px){
    #player-roster-list .roster-row,
    #player-room-team-roster-list .player-room-roster-line{
        grid-template-columns:68px minmax(0,1fr) 52px!important;
        column-gap:10px!important;
        padding-left:8px!important;
        padding-right:10px!important;
    }
    #player-roster-list .roster-row .role-badge,
    #player-room-team-roster-list .player-room-roster-line .role-badge{
        width:58px!important;
        min-width:58px!important;
        max-width:58px!important;
    }
}


/* ==========================================================================
   v0.93 — PREVIEW MINIATURA: COLORI SOCIALI PULITI NEI TEMI CHIARI
   ========================================================================== */

/* Il popup deve mostrare direttamente --roster-preview-team-bg.
   Nei temi chiari nessun pannello/velo del tema deve coprire i colori sociali. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-card,
html[data-live-theme="light-blue"] .room-roster-player-preview-card,
html[data-live-theme="light-sand"] .room-roster-player-preview-card{
    background:var(--roster-preview-team-bg)!important;
    background-image:var(--roster-preview-team-bg)!important;
    background-color:transparent!important;
}

/* Rimuove eventuali vecchi layer chiari ereditati dal tema. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-card::before,
html[data-live-theme="light-blue"] .room-roster-player-preview-card::before,
html[data-live-theme="light-sand"] .room-roster-player-preview-card::before{
    background:var(--roster-preview-team-bg)!important;
    background-image:var(--roster-preview-team-bg)!important;
    opacity:1!important;
    mix-blend-mode:normal!important;
    filter:none!important;
}

/* Mantiene solo una leggerissima ombra verticale per la leggibilità dei testi,
   senza alterare i colori sociali. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-card::after,
html[data-live-theme="light-blue"] .room-roster-player-preview-card::after,
html[data-live-theme="light-sand"] .room-roster-player-preview-card::after{
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.10) 0%,
            rgba(0,0,0,0) 18%,
            rgba(0,0,0,0) 82%,
            rgba(0,0,0,.12) 100%
        )!important;
    opacity:1!important;
    mix-blend-mode:normal!important;
    filter:none!important;
}

/* Anche l'overlay esterno non deve introdurre un velo sopra la card. */
html[data-live-theme="light-neutral"] .room-roster-player-preview-overlay,
html[data-live-theme="light-blue"] .room-roster-player-preview-overlay,
html[data-live-theme="light-sand"] .room-roster-player-preview-overlay{
    background:rgba(0,0,0,.78)!important;
    backdrop-filter:blur(4px)!important;
}

/* Evita che token generici del tema sovrascrivano il fondo sociale. */
html[data-live-theme] .room-roster-player-preview-card{
    --preview-surface:transparent;
}


/* ==========================================================================
   v0.93 — SLOT · BUDGET
   Budget attivo: verde = dentro budget, rosso = fuori budget.
   Budget disattivo: i ruoli seguono il tema.
   ========================================================================== */

/* Nessuna gestione budget: P/D/C/A diventano testo neutro del tema. */
html[data-live-theme] #screen-player-buzzer #player-slots.budget-management-inactive .slot-budget-state{
    color:var(--theme-text)!important;
    text-shadow:none!important;
}

/* Gestione budget attiva: colori SEMANTICI fissi, indipendenti dal tema. */
html[data-live-theme] #screen-player-buzzer #player-slots.budget-management-active .slot-budget-state.budget-slot-ok{
    color:#22B866!important;
    text-shadow:none!important;
}
html[data-live-theme] #screen-player-buzzer #player-slots.budget-management-active .slot-budget-state.budget-slot-over{
    color:#E4474F!important;
    text-shadow:none!important;
}

/* Il totale slot liberi non è uno stato budget: resta sempre coerente col tema. */
html[data-live-theme] #screen-player-buzzer #player-slots .slot-free-total{
    color:var(--theme-text)!important;
    text-shadow:none!important;
}


/* ==========================================================================
   v0.93 — PALETTE TEMI
   Solo colori: Classic / Glow Electric / Modern, chiaro + scuro.
   ========================================================================== */
html[data-live-theme="broadcast"]{
  --theme-bg:#11151B;--theme-bg-deep:#0B0E12;--theme-card:#1A2028;--theme-panel:#151A21;
  --theme-hover:#242C36;--theme-input:#171D24;--theme-border:#3A4654;--theme-text:#F6F2E8;
  --theme-muted:#B8B1A3;--theme-soft:#8E887E;--theme-primary:#C9A84E;--theme-primary-hover:#B5933E;
  --theme-accent:#D5B45A;--theme-number:#D5B45A;--theme-danger:#D84A55;--theme-success:#2DA66F;
  --theme-top-glow:rgba(201,168,78,.08);
}
html[data-live-theme="stadium"]{
  --theme-bg:#120018;--theme-bg-deep:#08000D;--theme-card:#21002B;--theme-panel:#180020;
  --theme-hover:#350044;--theme-input:#1B0024;--theme-border:#B535FF;--theme-text:#FFFFFF;
  --theme-muted:#58F2E1;--theme-soft:#C99BE8;--theme-primary:#B535FF;--theme-primary-hover:#9B1CFF;
  --theme-accent:#50EAD8;--theme-number:#FF338B;--theme-danger:#FF338B;--theme-success:#9AFF20;
  --theme-top-glow:rgba(181,53,255,.20);
}
html[data-live-theme="carbon"]{
  --theme-bg:#101214;--theme-bg-deep:#090B0C;--theme-card:#191C1F;--theme-panel:#14171A;
  --theme-hover:#252A2E;--theme-input:#171A1D;--theme-border:#3A4248;--theme-text:#F4F6F7;
  --theme-muted:#AEB6BC;--theme-soft:#7F898F;--theme-primary:#46B7A8;--theme-primary-hover:#369A8E;
  --theme-accent:#E18A4A;--theme-number:#E18A4A;--theme-danger:#E2535F;--theme-success:#46B77B;
  --theme-top-glow:rgba(70,183,168,.08);
}
html[data-live-theme="light-neutral"]{
  --theme-bg:#F6F1E7;--theme-bg-deep:#E9E0D1;--theme-card:#FFFDF9;--theme-panel:#F9F5ED;
  --theme-hover:#ECE5D9;--theme-input:#FFFFFF;--theme-border:#CFC3B2;--theme-text:#25231F;
  --theme-muted:#6B655D;--theme-soft:#8B8379;--theme-primary:#3B6F73;--theme-primary-hover:#315D60;
  --theme-accent:#B17A2B;--theme-number:#A96F20;--theme-danger:#B94750;--theme-success:#2D8E63;
  --theme-top-glow:rgba(59,111,115,.07);
}
html[data-live-theme="light-blue"]{
  --theme-bg:#F7F2FA;--theme-bg-deep:#EEE3F3;--theme-card:#FFFFFF;--theme-panel:#FCF8FE;
  --theme-hover:#F0E4F5;--theme-input:#FFFFFF;--theme-border:#CFA7DF;--theme-text:#25002F;
  --theme-muted:#674B70;--theme-soft:#846B8C;--theme-primary:#9D22E8;--theme-primary-hover:#8512D0;
  --theme-accent:#00AFA0;--theme-number:#E60068;--theme-danger:#E60068;--theme-success:#61A900;
  --theme-top-glow:rgba(181,53,255,.11);
}
html[data-live-theme="light-sand"]{
  --theme-bg:#F3F5F6;--theme-bg-deep:#E4E8EA;--theme-card:#FFFFFF;--theme-panel:#F8F9FA;
  --theme-hover:#E8ECEE;--theme-input:#FFFFFF;--theme-border:#C3CCD1;--theme-text:#1D2529;
  --theme-muted:#657178;--theme-soft:#849097;--theme-primary:#267E76;--theme-primary-hover:#1F6962;
  --theme-accent:#C86D32;--theme-number:#B85F28;--theme-danger:#BF4653;--theme-success:#267E76;
  --theme-top-glow:rgba(38,126,118,.07);
}

/* Swatch dei sei temi: solo colori, nessuna modifica strutturale. */
.theme-option[data-theme-option="broadcast"] .theme-swatches i:nth-child(1){background:#11151B!important}
.theme-option[data-theme-option="broadcast"] .theme-swatches i:nth-child(2){background:#C9A84E!important}
.theme-option[data-theme-option="broadcast"] .theme-swatches i:nth-child(3){background:#F6F2E8!important}
.theme-option[data-theme-option="stadium"] .theme-swatches i:nth-child(1){background:#B535FF!important}
.theme-option[data-theme-option="stadium"] .theme-swatches i:nth-child(2){background:#50EAD8!important}
.theme-option[data-theme-option="stadium"] .theme-swatches i:nth-child(3){background:#FF338B!important}
.theme-option[data-theme-option="carbon"] .theme-swatches i:nth-child(1){background:#101214!important}
.theme-option[data-theme-option="carbon"] .theme-swatches i:nth-child(2){background:#46B7A8!important}
.theme-option[data-theme-option="carbon"] .theme-swatches i:nth-child(3){background:#E18A4A!important}
.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(1){background:#F6F1E7!important}
.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(2){background:#3B6F73!important}
.theme-option[data-theme-option="light-neutral"] .theme-swatches i:nth-child(3){background:#B17A2B!important}
.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(1){background:#B535FF!important}
.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(2){background:#50EAD8!important}
.theme-option[data-theme-option="light-blue"] .theme-swatches i:nth-child(3){background:#9AFF20!important}
.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(1){background:#F3F5F6!important}
.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(2){background:#267E76!important}
.theme-option[data-theme-option="light-sand"] .theme-swatches i:nth-child(3){background:#C86D32!important}


/* ==========================================================================
   v0.93 — 12 TEMI: DAILY A SINISTRA / DARK A DESTRA
   ========================================================================== */
.theme-picker.theme-picker-12{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:stretch!important;
}
.theme-picker.theme-picker-12 .theme-column-title{
    color:var(--theme-muted)!important;
    font-size:.72rem!important;
    font-weight:950!important;
    letter-spacing:.12em!important;
    text-align:center!important;
    padding:2px 4px 5px!important;
}
.theme-picker.theme-picker-12 .theme-option{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
}
.theme-picker.theme-picker-12 .theme-option strong{
    white-space:normal!important;
    line-height:1.05!important;
}

/* Ocean */
.theme-option[data-theme-option="ocean-daily"] .theme-swatches i:nth-child(1){background:#ECF8F8!important}
.theme-option[data-theme-option="ocean-daily"] .theme-swatches i:nth-child(2){background:#087F82!important}
.theme-option[data-theme-option="ocean-daily"] .theme-swatches i:nth-child(3){background:#E28B3E!important}
.theme-option[data-theme-option="ocean-dark"] .theme-swatches i:nth-child(1){background:#061819!important}
.theme-option[data-theme-option="ocean-dark"] .theme-swatches i:nth-child(2){background:#20C7C9!important}
.theme-option[data-theme-option="ocean-dark"] .theme-swatches i:nth-child(3){background:#FF9A4A!important}

/* Sunset */
.theme-option[data-theme-option="sunset-daily"] .theme-swatches i:nth-child(1){background:#FFF3EC!important}
.theme-option[data-theme-option="sunset-daily"] .theme-swatches i:nth-child(2){background:#C9572F!important}
.theme-option[data-theme-option="sunset-daily"] .theme-swatches i:nth-child(3){background:#A84A7C!important}
.theme-option[data-theme-option="sunset-dark"] .theme-swatches i:nth-child(1){background:#1B0D10!important}
.theme-option[data-theme-option="sunset-dark"] .theme-swatches i:nth-child(2){background:#FF7048!important}
.theme-option[data-theme-option="sunset-dark"] .theme-swatches i:nth-child(3){background:#FFB347!important}

/* Royal */
.theme-option[data-theme-option="royal-daily"] .theme-swatches i:nth-child(1){background:#F6F2FC!important}
.theme-option[data-theme-option="royal-daily"] .theme-swatches i:nth-child(2){background:#6D47A8!important}
.theme-option[data-theme-option="royal-daily"] .theme-swatches i:nth-child(3){background:#C4932F!important}
.theme-option[data-theme-option="royal-dark"] .theme-swatches i:nth-child(1){background:#110B1D!important}
.theme-option[data-theme-option="royal-dark"] .theme-swatches i:nth-child(2){background:#9B70E5!important}
.theme-option[data-theme-option="royal-dark"] .theme-swatches i:nth-child(3){background:#E1B857!important}

@media(max-width:420px){
    .theme-picker.theme-picker-12{
        gap:7px!important;
    }
    .theme-picker.theme-picker-12 .theme-option{
        padding-left:8px!important;
        padding-right:8px!important;
    }
    .theme-picker.theme-picker-12 .theme-option strong{
        font-size:.70rem!important;
    }
}


/* ==========================================================================
   v0.93 — CONTRASTO MESSAGGI DISPONIBILITÀ / POSTO OCCUPATO
   Mantiene il significato semantico indipendente dal tema.
   ========================================================================== */
#player-room-error.liveasta-access-retry,
#auction-room-error.liveasta-access-retry{
    color:#7A3D00!important;
    background:#FFF0D8!important;
    border-color:#D77A00!important;
    font-weight:850!important;
    text-shadow:none!important;
}

#player-room-error.liveasta-access-retry.liveasta-access-free,
#auction-room-error.liveasta-access-retry.liveasta-access-free{
    color:#075C38!important;
    background:#DDF8EA!important;
    border-color:#16895A!important;
    font-weight:850!important;
    text-shadow:none!important;
}

/* Nei temi scuri usa fondi scuri saturi e testo molto chiaro. */
html[data-live-theme="broadcast"] #player-room-error.liveasta-access-retry,
html[data-live-theme="broadcast"] #auction-room-error.liveasta-access-retry,
html[data-live-theme="stadium"] #player-room-error.liveasta-access-retry,
html[data-live-theme="stadium"] #auction-room-error.liveasta-access-retry,
html[data-live-theme="carbon"] #player-room-error.liveasta-access-retry,
html[data-live-theme="carbon"] #auction-room-error.liveasta-access-retry{
    color:#FFE7BE!important;
    background:#4A2A00!important;
    border-color:#F2A33A!important;
}

html[data-live-theme="broadcast"] #player-room-error.liveasta-access-retry.liveasta-access-free,
html[data-live-theme="broadcast"] #auction-room-error.liveasta-access-retry.liveasta-access-free,
html[data-live-theme="stadium"] #player-room-error.liveasta-access-retry.liveasta-access-free,
html[data-live-theme="stadium"] #auction-room-error.liveasta-access-retry.liveasta-access-free,
html[data-live-theme="carbon"] #player-room-error.liveasta-access-retry.liveasta-access-free,
html[data-live-theme="carbon"] #auction-room-error.liveasta-access-retry.liveasta-access-free{
    color:#D8FFEC!important;
    background:#073E29!important;
    border-color:#39D98A!important;
}


/* ==========================================================================
   v0.93 — LISTONE GIOCATORE
   "LEVA PREFERENZE" è sempre un'azione distruttiva: rosso fisso, fuori tema.
   ========================================================================== */
#player-listone-overlay .player-listone-clear,
#player-listone-overlay [onclick*="clearPlayer"],
#player-listone-overlay [onclick*="clearShortlist"],
#player-listone-overlay [onclick*="resetPlayerShortlist"]{
    background:#D9434E!important;
    background-image:none!important;
    color:#FFFFFF!important;
    border:1px solid #B9323C!important;
    box-shadow:none!important;
    text-shadow:none!important;
    -webkit-tap-highlight-color:transparent!important;
}
#player-listone-overlay .player-listone-clear:is(:hover,:focus,:focus-visible,:active),
#player-listone-overlay [onclick*="clearPlayer"]:is(:hover,:focus,:focus-visible,:active),
#player-listone-overlay [onclick*="clearShortlist"]:is(:hover,:focus,:focus-visible,:active),
#player-listone-overlay [onclick*="resetPlayerShortlist"]:is(:hover,:focus,:focus-visible,:active){
    background:#D9434E!important;
    background-image:none!important;
    color:#FFFFFF!important;
    border-color:#B9323C!important;
    box-shadow:none!important;
    outline:none!important;
}


/* ==========================================================================
   v0.93 — SETUP ASTA / MODALITÀ SU SMARTPHONE
   Classic e Mantra restano entrambe visibili: niente scorrimento orizzontale.
   ========================================================================== */
@media (max-width: 767px){
  #setup-screen .mode-options,
  #setup-screen .fantasy-mode-options,
  #setup-screen .setup-mode-options,
  #setup-screen [class*="mode"][class*="options"]{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    scroll-snap-type:none!important;
    padding-left:0!important;
    padding-right:0!important;
    transform:none!important;
  }

  #setup-screen .mode-options > *,
  #setup-screen .fantasy-mode-options > *,
  #setup-screen .setup-mode-options > *,
  #setup-screen [class*="mode"][class*="options"] > *{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    scroll-snap-align:none!important;
    transform:none!important;
  }
}


/* ==========================================================================
   v0.93 — FIX REALE STEP 2 MODALITÀ BANDITORE SMARTPHONE
   Nessun overflow orizzontale: Classic e Mantra restano interamente nel card.
   ========================================================================== */
@media (max-width:760px){

    #screen-auctioneer-setup #auction-mode-fields,
    #screen-auctioneer-setup #auction-create-box,
    #screen-auctioneer-setup #auction-create-step-2{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
        overflow-x:hidden!important;
    }

    #screen-auctioneer-setup #auction-create-step-2{
        padding-left:0!important;
        padding-right:0!important;
        margin-left:0!important;
        margin-right:0!important;
    }

    #screen-auctioneer-setup #auction-create-step-2 .room-mode-picker{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin:12px 0!important;
        padding:0!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
    }

    #screen-auctioneer-setup #auction-create-step-2 .room-mode-grid{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
        gap:8px!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:0 2px!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }

    #screen-auctioneer-setup #auction-create-step-2 .room-mode-card{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        box-sizing:border-box!important;
    }

    #screen-auctioneer-setup #auction-create-step-2 .room-mode-card > span{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:78px!important;
        padding:10px!important;
        box-sizing:border-box!important;
        overflow:hidden!important;
    }

    #screen-auctioneer-setup #auction-create-step-2 .room-mode-card b,
    #screen-auctioneer-setup #auction-create-step-2 .room-mode-card small{
        max-width:100%!important;
        white-space:normal!important;
        overflow-wrap:anywhere!important;
    }

    /* Il contenuto descrittivo sotto non può allargare lo step. */
    #screen-auctioneer-setup #auction-create-step-2 > *,
    #screen-auctioneer-setup #auction-create-step-2 .room-mode-picker ~ *{
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }

    /* Rimuove definitivamente la barra orizzontale visibile nello screenshot. */
    #screen-auctioneer-setup #auction-create-step-2::-webkit-scrollbar:horizontal{
        height:0!important;
        display:none!important;
    }
}


/* ========================================================================== 
   v0.93 — SOLO BANDITORE SMARTPHONE: HEADER PLANCIA RESPONSIVE
   GESTIONE e RESET restano sempre dentro il viewport.
   ========================================================================== */
@media (max-width:760px){
  #screen-auctioneer-board.auctioneer-ui-mobile > .session-nav{
    position:absolute!important;
    top:max(6px,env(safe-area-inset-top))!important;
    left:8px!important;
    right:auto!important;
    transform:none!important;
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
    min-width:0!important;
    box-sizing:border-box!important;
    padding:0!important;

    display:grid!important;
    grid-template-columns:minmax(72px,.9fr) minmax(0,2.15fr) minmax(82px,1fr)!important;
    grid-template-rows:38px 28px!important;
    grid-template-areas:
      "back center manage"
      "rose room reset"!important;
    column-gap:7px!important;
    row-gap:4px!important;
    align-items:center!important;
    overflow:visible!important;
  }

  /* Tutti i figli della griglia possono restringersi davvero. */
  #screen-auctioneer-board.auctioneer-ui-mobile > .session-nav > *,
  #screen-auctioneer-board.auctioneer-ui-mobile .auction-quick-actions,
  #screen-auctioneer-board.auctioneer-ui-mobile .auction-session-center,
  #screen-auctioneer-board.auctioneer-ui-mobile .auction-nav-room-pill{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile > .session-nav > .session-back:first-child{
    grid-area:back!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:36px!important;
    padding:0 5px!important;
    margin:0!important;
    font-size:clamp(.60rem,2.7vw,.68rem)!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile > .session-nav > .session-back:last-child{
    grid-area:manage!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:36px!important;
    padding:0 4px!important;
    margin:0!important;
    font-size:clamp(.58rem,2.6vw,.66rem)!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile .auction-quick-actions{
    display:contents!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile .auction-quick-rosters{
    grid-area:rose!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    justify-self:stretch!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile .auction-quick-reset{
    grid-area:reset!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:0 3px!important;
    justify-self:stretch!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:clamp(.52rem,2.4vw,.58rem)!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile .auction-nav-room-pill{
    grid-area:room!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    justify-self:stretch!important;
    overflow:hidden!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile .auction-session-center{
    grid-area:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Quando il listone è aperto, la plancia deve essere completamente nascosta.
   ========================================================================== */
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-auction.auction-view-hidden{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
}

/* Il listone usa da solo tutta l'area disponibile della dashboard. */
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-list[style*="display: flex"],
#screen-auctioneer-board.auctioneer-ui-mobile
#auction-dashboard.mode-mobile
#view-list[style*="display:flex"]{
    display:flex!important;
    flex:1 1 auto!important;
    width:100%!important;
    min-height:0!important;
    height:100%!important;
}

/* Quando torna la fase d'asta, showAuctionPanels rimuove auction-view-hidden
   e la plancia riprende il normale layout mobile. */


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Quadranti inferiori + tasto AVANTI a fine banditura.
   ========================================================================== */
@media (max-width:760px){

    /* I due quadranti sono riferimenti posizionali indipendenti. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info{
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        box-sizing:border-box!important;
    }

    /* TIMER / OFFERTA sempre in alto, più grandi e centrati. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .mobile-quad-label{
        width:auto!important;
        height:auto!important;
        display:block!important;
        overflow:visible!important;
    }

    /* Timer: massimo 3 cifre, sempre centrato. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer #countdown-display{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        font-size:clamp(102px,30vw,174px)!important;
        line-height:.82!important;
        font-weight:950!important;
        text-align:center!important;
        font-variant-numeric:tabular-nums!important;
        letter-spacing:-.055em!important;
    }

    /* Offerta: spazio sufficiente fino a 4 cifre senza uscire dal quadrante. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        font-size:clamp(94px,27vw,158px)!important;
        line-height:.82!important;
        font-weight:950!important;
        text-align:center!important;
        font-variant-numeric:tabular-nums!important;
        letter-spacing:-.06em!important;
        white-space:nowrap!important;
    }

    /* Nessun testo "NESSUNA OFFERTA" nel quadrante mobile. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info #winner-display:empty{
        display:none!important;
    }

    /* La dicitura esito resta sotto il valore quando serve (nome vincitore / INVENDUTO). */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info #winner-display:not(:empty){
        box-sizing:border-box!important;
    }

    /* AVANTI: vero pulsante mobile a fine asta.
       endAuction() ne controlla già display:flex / display:none. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer #btn-next{
        position:absolute!important;
        left:14px!important;
        right:14px!important;
        bottom:14px!important;
        z-index:20!important;
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
        height:54px!important;
        min-height:54px!important;
        margin:0!important;
        padding:0 16px!important;
        align-items:center!important;
        justify-content:center!important;
        gap:8px!important;
        border:1px solid var(--theme-primary)!important;
        border-radius:14px!important;
        background:var(--theme-primary)!important;
        background-image:none!important;
        color:var(--theme-bg-deep)!important;
        box-shadow:none!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer #btn-next .mobile-next-label{
        display:block!important;
        color:inherit!important;
        font-size:clamp(18px,5vw,25px)!important;
        line-height:1!important;
        font-weight:950!important;
        letter-spacing:.04em!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer #btn-next svg{
        width:22px!important;
        height:22px!important;
        stroke:currentColor!important;
        flex:0 0 22px!important;
    }

    /* Quando il tasto è visibile, il numero timer sale leggermente e non viene coperto. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer:has(#btn-next[style*="display: flex"]) #countdown-display,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer:has(#btn-next[style*="display:flex"]) #countdown-display{
        transform:translateY(-28px)!important;
    }
}/* Desktop: la label testuale non modifica il vecchio pulsante freccia. */



/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Nessuna offerta rimossa, numeri più grandi/adattivi, freccia nel riquadro giocatore.
   ========================================================================== */
@media (max-width:760px){

  /* Il testo ridondante non deve comparire nella plancia smartphone. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction
  #auctioneer-turn-ranking-empty{
      display:none!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction
  #winner-display:empty{
      display:none!important;
      margin:0!important;
      height:0!important;
  }

  /* Quadranti: contenuto realmente centrato. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer,
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info{
      position:relative!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      padding:48px 8px 12px!important;
      box-sizing:border-box!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .mobile-quad-label{
      position:absolute!important;
      top:14px!important;
      left:6px!important;
      right:6px!important;
      margin:0!important;
      font-size:clamp(24px,6.6vw,34px)!important;
      line-height:1!important;
      font-weight:950!important;
      text-align:center!important;
  }

  /* Timer molto grande; si riduce soltanto a 3 cifre. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #countdown-display{
      width:100%!important;
      margin:0!important;
      padding:0!important;
      font-size:clamp(122px,35vw,188px)!important;
      line-height:.82!important;
      font-weight:950!important;
      letter-spacing:-.06em!important;
      text-align:center!important;
      font-variant-numeric:tabular-nums!important;
      transform:none!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #countdown-display.digits-3{
      font-size:clamp(92px,27vw,148px)!important;
      letter-spacing:-.07em!important;
  }

  /* Offerta molto grande; riduzione automatica per 3 e 4+ cifre. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #current-value-display{
      width:100%!important;
      max-width:100%!important;
      margin:0!important;
      padding:0!important;
      font-size:clamp(122px,35vw,188px)!important;
      line-height:.82!important;
      font-weight:950!important;
      letter-spacing:-.065em!important;
      text-align:center!important;
      white-space:nowrap!important;
      font-variant-numeric:tabular-nums!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #current-value-display.digits-3{
      font-size:clamp(94px,28vw,152px)!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #current-value-display.digits-4{
      font-size:clamp(72px,21vw,116px)!important;
      letter-spacing:-.075em!important;
  }

  /* Il vecchio testo AVANTI sparisce: resta solo la freccia, come desktop. */
  #screen-auctioneer-board.auctioneer-ui-mobile #btn-next .mobile-next-label{
      display:none!important;
  }

  /* Freccia in basso a destra del riquadro giocatore. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player{
      position:relative!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next{
      display:none;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next svg{
      display:block!important;
      flex:0 0 30px!important;
  }
}

/* Desktop invariato: bottone nel suo contenitore originale e senza label mobile. */
@media (min-width:761px){
  #btn-next .mobile-next-label{display:none!important;}
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Centratura geometrica numeri + freccia realmente visibile a fine asta.
   ========================================================================== */
@media (max-width:760px){

  /* I vecchi contenitori non devono più influenzare la posizione dei numeri. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring{
      position:absolute!important;
      left:0!important;
      right:0!important;
      top:52px!important;
      bottom:12px!important;
      width:auto!important;
      height:auto!important;
      margin:0!important;
      padding:0!important;
      display:flex!important;
      flex-direction:column!important;
      align-items:center!important;
      justify-content:center!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      transform:none!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring small,
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer .timer-caption{
      display:none!important;
  }

  /* TIMER: grande e centrato esattamente nel quadrante. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #countdown-display{
      display:block!important;
      width:auto!important;
      max-width:96%!important;
      margin:0!important;
      padding:0!important;
      transform:none!important;
      font-size:clamp(150px,40vw,220px)!important;
      line-height:.80!important;
      font-weight:950!important;
      letter-spacing:-.07em!important;
      text-align:center!important;
      font-variant-numeric:tabular-nums!important;
      white-space:nowrap!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #countdown-display.digits-3{
      font-size:clamp(104px,29vw,160px)!important;
  }

  /* OFFERTA: numero centrato geometricamente; vincitore/esito resta sotto. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .mobile-offer-block{
      position:static!important;
      display:block!important;
      width:100%!important;
      height:100%!important;
      margin:0!important;
      padding:0!important;
      overflow:visible!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
      position:absolute!important;
      left:0!important;
      right:0!important;
      top:52px!important;
      bottom:76px!important;
      width:auto!important;
      height:auto!important;
      margin:0!important;
      padding:0!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-label,
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .credit-label{
      display:none!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #current-value-display{
      display:block!important;
      width:auto!important;
      max-width:96%!important;
      margin:0!important;
      padding:0!important;
      font-size:clamp(150px,40vw,220px)!important;
      line-height:.80!important;
      font-weight:950!important;
      letter-spacing:-.07em!important;
      text-align:center!important;
      font-variant-numeric:tabular-nums!important;
      white-space:nowrap!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #current-value-display.digits-3{
      font-size:clamp(106px,30vw,164px)!important;
  }
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #current-value-display.digits-4{
      font-size:clamp(80px,22vw,122px)!important;
      letter-spacing:-.08em!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #winner-display:not(:empty){
      position:absolute!important;
      left:6px!important;
      right:6px!important;
      bottom:20px!important;
      width:auto!important;
      margin:0!important;
      padding:0!important;
      font-size:clamp(22px,6vw,34px)!important;
      line-height:1!important;
      font-weight:950!important;
      text-align:center!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
  }

  /* Freccia: nascosta normalmente, visibile quando la logica imposta display:flex. */
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next{
      position:absolute!important;
      right:14px!important;
      bottom:14px!important;
      left:auto!important;
      top:auto!important;
      z-index:80!important;
      width:58px!important;
      min-width:58px!important;
      max-width:58px!important;
      height:58px!important;
      min-height:58px!important;
      max-height:58px!important;
      margin:0!important;
      padding:0!important;
      border-radius:50%!important;
      align-items:center!important;
      justify-content:center!important;
      background:var(--theme-primary)!important;
      border:1px solid var(--theme-primary)!important;
      color:var(--theme-bg-deep)!important;
      box-shadow:0 5px 16px rgba(0,0,0,.24)!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next:not([style*="display: flex"]):not([style*="display:flex"]){
      display:none!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next[style*="display: flex"],
  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next[style*="display:flex"]{
      display:flex!important;
  }

  #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-player #btn-next svg{
      width:32px!important;
      height:32px!important;
      stroke:currentColor!important;
  }
}


/* ==========================================================================
   v0.93 — CONFERME INTERNE LIVEASTA
   Sostituisce i popup confirm() nativi del browser in tutta l'app.
   ========================================================================== */
body.liveasta-confirm-open{
    overflow:hidden!important;
}

.liveasta-confirm-overlay{
    position:fixed!important;
    inset:0!important;
    z-index:1000000!important;
    display:none!important;
    align-items:center!important;
    justify-content:center!important;
    padding:20px!important;
    box-sizing:border-box!important;
    background:rgba(0,0,0,.56)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
}

.liveasta-confirm-overlay.open{
    display:flex!important;
}

.liveasta-confirm-card{
    width:min(520px,calc(100vw - 32px))!important;
    max-height:min(78dvh,680px)!important;
    overflow:auto!important;
    box-sizing:border-box!important;
    padding:24px!important;
    border:1px solid var(--theme-border)!important;
    border-radius:20px!important;
    background:var(--theme-card)!important;
    color:var(--theme-text)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}

.liveasta-confirm-title{
    margin:0 0 14px!important;
    color:var(--theme-text)!important;
    font-size:clamp(24px,6vw,32px)!important;
    line-height:1.05!important;
    font-weight:950!important;
    text-align:center!important;
}

.liveasta-confirm-message{
    color:var(--theme-muted)!important;
    font-size:clamp(15px,4vw,18px)!important;
    line-height:1.45!important;
    font-weight:650!important;
    text-align:center!important;
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
}

.liveasta-confirm-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-top:22px!important;
}

.liveasta-confirm-btn{
    min-width:0!important;
    min-height:52px!important;
    padding:10px 14px!important;
    border-radius:14px!important;
    font-size:clamp(15px,4vw,18px)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.025em!important;
    -webkit-tap-highlight-color:transparent!important;
    box-shadow:none!important;
}

.liveasta-confirm-cancel{
    background:var(--theme-hover)!important;
    color:var(--theme-text)!important;
    border:1px solid var(--theme-border)!important;
}

.liveasta-confirm-ok{
    background:var(--theme-primary)!important;
    color:var(--theme-bg-deep)!important;
    border:1px solid var(--theme-primary)!important;
}

/* Operazioni distruttive: CONFERMA è sempre rossa, indipendente dal tema. */
.liveasta-confirm-overlay.danger .liveasta-confirm-ok{
    background:#D9434E!important;
    color:#FFFFFF!important;
    border-color:#B9323C!important;
}

.liveasta-confirm-overlay.danger .liveasta-confirm-title{
    color:#D9434E!important;
}

/* Nessun cambio colore su tap/hover: solo feedback meccanico. */
.liveasta-confirm-btn:is(:hover,:focus,:focus-visible,:active){
    filter:none!important;
    box-shadow:none!important;
    outline:none!important;
}
.liveasta-confirm-btn:active{
    transform:scale(.98)!important;
}

@media(max-width:520px){
    .liveasta-confirm-overlay{
        padding:14px!important;
    }
    .liveasta-confirm-card{
        width:100%!important;
        padding:20px 16px!important;
        border-radius:18px!important;
    }
    .liveasta-confirm-actions{
        gap:8px!important;
    }
}


/* ==========================================================================
   v0.93 — ALERT INTERNI + QUADRANTI BANDITORE SMARTPHONE
   ========================================================================== */

/* ---------- ALERT INTERNO ---------- */
body.liveasta-alert-open{
    overflow:hidden!important;
}

.liveasta-alert-overlay{
    position:fixed!important;
    inset:0!important;
    z-index:1000001!important;
    display:none!important;
    align-items:center!important;
    justify-content:center!important;
    padding:20px!important;
    box-sizing:border-box!important;
    background:rgba(0,0,0,.56)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
}
.liveasta-alert-overlay.open{
    display:flex!important;
}
.liveasta-alert-card{
    width:min(500px,calc(100vw - 32px))!important;
    max-height:min(76dvh,640px)!important;
    overflow:auto!important;
    padding:24px!important;
    box-sizing:border-box!important;
    border-radius:20px!important;
    border:1px solid var(--theme-border)!important;
    background:var(--theme-card)!important;
    color:var(--theme-text)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}
.liveasta-alert-title{
    margin:0 0 14px!important;
    color:var(--theme-text)!important;
    font-size:clamp(24px,6vw,32px)!important;
    line-height:1.05!important;
    font-weight:950!important;
    text-align:center!important;
}
.liveasta-alert-message{
    color:var(--theme-muted)!important;
    font-size:clamp(15px,4vw,18px)!important;
    line-height:1.45!important;
    font-weight:650!important;
    text-align:center!important;
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
}
.liveasta-alert-actions{
    display:flex!important;
    justify-content:center!important;
    margin-top:22px!important;
}
.liveasta-alert-ok{
    min-width:140px!important;
    min-height:52px!important;
    padding:10px 22px!important;
    border-radius:14px!important;
    border:1px solid var(--theme-primary)!important;
    background:var(--theme-primary)!important;
    color:var(--theme-bg-deep)!important;
    font-size:clamp(16px,4vw,19px)!important;
    line-height:1!important;
    font-weight:950!important;
    box-shadow:none!important;
    -webkit-tap-highlight-color:transparent!important;
}
.liveasta-alert-ok:is(:hover,:focus,:focus-visible,:active){
    background:var(--theme-primary)!important;
    color:var(--theme-bg-deep)!important;
    border-color:var(--theme-primary)!important;
    outline:none!important;
    box-shadow:none!important;
}
.liveasta-alert-ok:active{
    transform:scale(.98)!important;
}

/* ---------- SOLO BANDITORE SMARTPHONE ---------- */
@media (max-width:760px){

    /* Ogni quadrante ha:
       - titolo fisso in alto
       - numero centrato geometricamente
       - eventuale esito separato in basso
    */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info{
        position:relative!important;
        display:block!important;
        padding:0!important;
        overflow:hidden!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .mobile-quad-label{
        position:absolute!important;
        top:22px!important;
        left:8px!important;
        right:8px!important;
        z-index:8!important;
        margin:0!important;
        padding:0!important;
        color:var(--theme-muted)!important;
        font-size:clamp(24px,6.4vw,34px)!important;
        line-height:1!important;
        font-weight:950!important;
        letter-spacing:.025em!important;
        text-align:center!important;
        white-space:nowrap!important;
    }

    /* TIMER: contenitore reale centrato nella zona utile del quadrante. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring{
        position:absolute!important;
        inset:66px 4px 10px 4px!important;
        width:auto!important;
        height:auto!important;
        margin:0!important;
        padding:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        border:0!important;
        background:none!important;
        box-shadow:none!important;
        transform:none!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .timer-caption,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .timer-ring small{
        display:none!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #countdown-display{
        position:static!important;
        display:block!important;
        width:auto!important;
        max-width:96%!important;
        margin:0!important;
        padding:0!important;
        transform:none!important;
        color:inherit;
        font-size:clamp(164px,44vw,236px)!important;
        line-height:.78!important;
        font-weight:950!important;
        letter-spacing:-.075em!important;
        text-align:center!important;
        white-space:nowrap!important;
        font-variant-numeric:tabular-nums!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #countdown-display.quad-digits-3{
        font-size:clamp(112px,31vw,170px)!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #countdown-display.quad-digits-4{
        font-size:clamp(86px,24vw,130px)!important;
    }

    /* OFFERTA: il numero è centrato senza essere spinto da nome/esito. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info .mobile-offer-block{
        position:static!important;
        width:100%!important;
        height:100%!important;
        margin:0!important;
        padding:0!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
        position:absolute!important;
        width:auto!important;
        height:auto!important;
        margin:0!important;
        padding:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        border:0!important;
        background:none!important;
        box-shadow:none!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info .bid-label,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info .credit-label,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info #auction-title-display{
        display:none!important;
    }

    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #current-value-display{
        position:static!important;
        display:block!important;
        width:auto!important;
        max-width:96%!important;
        margin:0!important;
        padding:0!important;
        font-size:clamp(164px,44vw,236px)!important;
        line-height:.78!important;
        font-weight:950!important;
        letter-spacing:-.075em!important;
        text-align:center!important;
        white-space:nowrap!important;
        font-variant-numeric:tabular-nums!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #current-value-display.quad-digits-3{
        font-size:clamp(112px,31vw,170px)!important;
    }
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #current-value-display.quad-digits-4{
        font-size:clamp(84px,23vw,126px)!important;
    }

    /* NESSUNO / NESSUNA OFFERTA non devono esistere nel quadrante mobile. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #winner-display:empty{
        display:none!important;
    }

    /* Solo risultato reale: nome vincitore o INVENDUTO, fisso in basso. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction #winner-display:not(:empty){
        position:absolute!important;
        left:8px!important;
        right:8px!important;
        bottom:20px!important;
        z-index:8!important;
        width:auto!important;
        margin:0!important;
        padding:0!important;
        color:var(--theme-text)!important;
        font-size:clamp(22px,6vw,34px)!important;
        line-height:1!important;
        font-weight:950!important;
        text-align:center!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }
}

@media(max-width:520px){
    .liveasta-alert-overlay{
        padding:14px!important;
    }
    .liveasta-alert-card{
        width:100%!important;
        padding:20px 16px!important;
        border-radius:18px!important;
    }
}


/* ==========================================================================\n   v0.93 — SOLO BANDITORE SMARTPHONE\n   Riduzione spazio vuoto sotto la barra superiore in plancia e listone.\n   ========================================================================== */
@media (max-width:760px){
  body #screen-auctioneer-board.auctioneer-ui-mobile #auction-dashboard.mode-mobile{
      padding-top:86px!important;
  }

  body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile .dashboard-layout{
      margin-top:0!important;
      padding-top:0!important;
      row-gap:0!important;
  }

  body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction,
  body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-list{
      margin-top:0!important;
      padding-top:0!important;
  }

  body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-list .dashboard-left{
      margin-top:0!important;
      padding-top:0!important;
  }

  body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction:not(.auction-view-hidden){
      align-self:start!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Ruolo miniatura senza ombra + aggiudicatario sotto il valore offerta
   ========================================================================== */
@media (max-width:760px){

    /* Lettera del ruolo nello slot della miniatura: nessuna ombra/glow. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .role-badge,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .player-role,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction [class*="role-badge"],
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction [class*="role-pill"]{
        text-shadow:none!important;
        filter:none!important;
        box-shadow:none!important;
    }

    /* Anche eventuali elementi interni della pillola non devono ereditare ombre. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .role-badge *,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .player-role *,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction [class*="role-badge"] *,
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction [class*="role-pill"] *{
        text-shadow:none!important;
        filter:none!important;
    }

    /* Il nome dell'aggiudicatario appartiene al quadrante OFFERTA:
       centrato sotto il numero, non sul fondo del riquadro. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info #winner-display:not(:empty){
        position:absolute!important;
        left:10px!important;
        right:10px!important;
        bottom:auto!important;
        top:67%!important;
        transform:translateY(-50%)!important;
        z-index:9!important;
        width:auto!important;
        margin:0!important;
        padding:0!important;
        text-align:center!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
        font-size:clamp(20px,5.7vw,31px)!important;
        line-height:1.05!important;
        font-weight:950!important;
    }

    /* Lascia un po' più di spazio verticale al numero senza farlo collidere
       con l'aggiudicatario sottostante. */
    #screen-auctioneer-board.auctioneer-ui-mobile
    #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
        inset:66px 4px 112px 4px!important;
    }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Fix effettivo ruolo miniatura + quadrante OFFERTA
   ========================================================================== */
@media (max-width:760px){

  /* Il badge usato realmente dalla plancia è #auction-player-role.
     Elimina qualunque ombra dalla pillola E soprattutto dalla lettera. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.role-P,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.role-D,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.role-C,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.role-A,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.mobile-role-P,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.mobile-role-D,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.mobile-role-C,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #auction-player-role.mobile-role-A{
      text-shadow:none!important;
      box-shadow:none!important;
      filter:none!important;
      -webkit-filter:none!important;
  }

  /* Quadrante destro: coordinate indipendenti.
     Titolo in alto, valore al centro, esito/vincitore sotto il valore. */

  /* Ripristina sempre il box del valore anche nello stato INVENDUTO. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-unsold .col-info .bid-box,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
      display:flex!important;
      position:absolute!important;
      top:88px!important;
      left:4px!important;
      right:4px!important;
      bottom:104px!important;
      width:auto!important;
      height:auto!important;
      min-height:0!important;
      margin:0!important;
      padding:0!important;
      align-items:center!important;
      justify-content:center!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      transform:none!important;
  }

  /* Nessun testo può più finire sopra OFFERTA. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #winner-display,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-unsold .col-info #winner-display{
      position:absolute!important;
      top:auto!important;
      left:8px!important;
      right:8px!important;
      bottom:25px!important;
      transform:none!important;
      width:auto!important;
      max-width:none!important;
      height:auto!important;
      margin:0!important;
      padding:0!important;
      z-index:11!important;
      text-align:center!important;
      font-size:clamp(20px,5.8vw,32px)!important;
      line-height:1!important;
      font-weight:950!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
      color:var(--theme-text)!important;
  }

  /* Il vecchio titolo "MIGLIOR OFFERENTE" non partecipa al layout mobile. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #auction-title-display{
      display:none!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Quadrante OFFERTA: una sola geometria definitiva.
   ========================================================================== */
@media (max-width:760px){

  /* Il quadrante destro è un contenitore autonomo. */

  /* Titolo fisso in alto. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-right-label{
      letter-spacing:.025em!important;
  }

  /* Elementi legacy fuori dal layout mobile. */

  /* Il wrapper non partecipa al layout. */

  /* Area del numero: sempre presente, anche se INVENDUTO. */

  /* Numero sempre al centro dell'area utile. */

  /* Stato senza vero offerente: niente testo. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #winner-display:empty{
      display:none!important;
  }

  /* Vincitore / INVENDUTO: fascia separata sotto il numero. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #winner-display:not(:empty),
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-unsold .col-info #winner-display:not(:empty){
      position:absolute!important;
      left:10px!important;
      right:10px!important;
      top:auto!important;
      bottom:24px!important;
      z-index:21!important;
      display:block!important;
      width:auto!important;
      max-width:none!important;
      height:auto!important;
      margin:0!important;
      padding:0!important;
      transform:none!important;
      color:var(--theme-text)!important;
      font-size:clamp(20px,5.7vw,31px)!important;
      line-height:1!important;
      font-weight:950!important;
      text-align:center!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Quadrante OFFERTA separato definitivamente dal winner-display desktop.
   ========================================================================== */
@media (max-width:760px){

  /* Il vecchio winner-display rimane disponibile alla logica e al desktop,
     ma sul banditore smartphone non viene mai renderizzato. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #winner-display{
      display:none!important;
      position:static!important;
      width:0!important;
      height:0!important;
      min-width:0!important;
      min-height:0!important;
      max-width:0!important;
      max-height:0!important;
      margin:0!important;
      padding:0!important;
      overflow:hidden!important;
  }

  /* Quadrante destro completamente autonomo. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info{
      display:block!important;
      padding:0!important;
      overflow:hidden!important;
      box-sizing:border-box!important;
  }

  /* OFFERTA fisso in alto. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-right-label{
      color:var(--theme-muted)!important;
      font-size:clamp(24px,6.4vw,34px)!important;
      line-height:1!important;
      font-weight:950!important;
      white-space:nowrap!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #auction-title-display,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #auctioneer-turn-ranking-empty,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-label,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .credit-label{
      display:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .mobile-offer-block{
      position:absolute!important;
      inset:0!important;
      width:100%!important;
      height:100%!important;
      margin:0!important;
      padding:0!important;
      display:block!important;
      overflow:hidden!important;
  }

  /* Il blocco centrale contiene soltanto NUMERO + NOME.
     In questo modo restano sempre associati e centrati insieme. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-box,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-unsold .col-info .bid-box{
      position:absolute!important;
      top:72px!important;
      left:6px!important;
      right:6px!important;
      bottom:18px!important;
      width:auto!important;
      height:auto!important;
      min-height:0!important;
      margin:0!important;
      padding:0!important;
      display:flex!important;
      flex-direction:column!important;
      align-items:center!important;
      justify-content:center!important;
      gap:10px!important;
      overflow:hidden!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      transform:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display{
      flex:0 0 auto!important;
      font-size:clamp(164px,44vw,236px)!important;
      line-height:.76!important;
      font-weight:950!important;
      letter-spacing:-.075em!important;
      font-variant-numeric:tabular-nums!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display.quad-digits-3{
      font-size:clamp(112px,31vw,170px)!important;
  }
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display.quad-digits-4{
      font-size:clamp(84px,23vw,126px)!important;
  }

  /* Elemento nuovo, esclusivamente mobile: sempre immediatamente sotto il numero. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-winner-display{
      flex:0 0 auto!important;
      min-height:0!important;
      box-sizing:border-box!important;
      color:var(--theme-text)!important;
      font-size:clamp(20px,5.7vw,31px)!important;
      line-height:1!important;
      font-weight:950!important;
  }
}

/* Fuori dal banditore smartphone il nuovo duplicato non deve esistere visivamente. */
@media (min-width:761px){
    #mobile-winner-display{display:none!important;}
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE / ASTA NORMALE
   Nel quadrante OFFERTA devono restare solo:
   OFFERTA -> valore -> nome offerente.
   Tutti gli elementi legacy/ranking vengono esclusi dalla fase normale.
   ========================================================================== */
@media (max-width:760px){

  /* FASE NORMALE: elimina dal quadrante destro tutto ciò che non serve. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #auction-title-display,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #winner-display,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #sealed-delivery-panel,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #sealed-ranking-auctioneer,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #auctioneer-turn-ranking-empty,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info .sealed-ranking,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info .auctioneer-turn-ranking,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info [class*="ranking"]:not(#mobile-winner-display){
      display:none!important;
      visibility:hidden!important;
      width:0!important;
      height:0!important;
      min-width:0!important;
      min-height:0!important;
      max-width:0!important;
      max-height:0!important;
      margin:0!important;
      padding:0!important;
      overflow:hidden!important;
      position:absolute!important;
      pointer-events:none!important;
  }

  /* Anche eventuali titoli generati dinamicamente del ranking non devono comparire. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info .mobile-offer-block > :not(.bid-box){
      display:none!important;
  }

  /* OFFERTA rimane l'unico titolo del quadrante. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #mobile-right-label{
      display:block!important;
      visibility:visible!important;
      position:absolute!important;
      top:22px!important;
      left:8px!important;
      right:8px!important;
      z-index:50!important;
  }

  /* Unico blocco centrale: valore + nome. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info .bid-box{
      display:flex!important;
      visibility:visible!important;
      position:absolute!important;
      top:74px!important;
      left:8px!important;
      right:8px!important;
      bottom:18px!important;
      width:auto!important;
      height:auto!important;
      margin:0!important;
      padding:0!important;
      flex-direction:column!important;
      align-items:center!important;
      justify-content:center!important;
      gap:12px!important;
      overflow:hidden!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      transform:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #current-value-display{
      display:block!important;
      visibility:visible!important;
      position:static!important;
      margin:0!important;
      padding:0!important;
      transform:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #mobile-winner-display{
      display:block!important;
      visibility:visible!important;
      position:static!important;
      margin:0!important;
      padding:0 6px!important;
      transform:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction.mobile-normal
  .col-info #mobile-winner-display:empty{
      display:none!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   FIX REALE QUADRANTE DESTRO: nessuna dipendenza da .mobile-normal
   ========================================================================== */
@media (max-width:760px){

  /* Nasconde SEMPRE nel quadrante destro mobile tutti gli elementi legacy
     che generavano DAVIDE duplicato, CLASSIFICA OFFERTE e ranking. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #auction-title-display,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #winner-display,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #sealed-delivery-panel,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #sealed-ranking-auctioneer,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #auctioneer-turn-ranking-empty,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .sealed-ranking,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .auctioneer-turn-ranking,

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info [class*="ranking"]{
      display:none!important;
      visibility:hidden!important;
      position:absolute!important;
      width:0!important;
      height:0!important;
      min-width:0!important;
      min-height:0!important;
      max-width:0!important;
      max-height:0!important;
      margin:0!important;
      padding:0!important;
      overflow:hidden!important;
      pointer-events:none!important;
  }

  /* Qualunque elemento diretto del blocco OFFERTA che non sia il bid-box
     non deve partecipare al layout mobile. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .mobile-offer-block > :not(.bid-box){
      display:none!important;
      visibility:hidden!important;
  }

  /* Titolo OFFERTA unico e fisso. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-right-label{
      display:block!important;
      visibility:visible!important;
      position:absolute!important;
      top:22px!important;
      left:8px!important;
      right:8px!important;
      bottom:auto!important;
      z-index:100!important;
      margin:0!important;
      padding:0!important;
      transform:none!important;
      text-align:center!important;
  }

  /* Blocco centrale unico. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
      visibility:visible!important;
      top:76px!important;
      left:8px!important;
      right:8px!important;
      bottom:20px!important;
      min-height:0!important;
      flex-direction:column!important;
      align-items:center!important;
      justify-content:center!important;
      gap:12px!important;
      overflow:hidden!important;
      transform:none!important;
  }

  /* Numero dell'offerta. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display{
      display:block!important;
      visibility:visible!important;
      height:auto!important;
      white-space:nowrap!important;
  }

  /* Nome offerente mobile dedicato, e solo lui. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-winner-display{
      display:block!important;
      visibility:visible!important;
      max-width:100%!important;
      height:auto!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-winner-display:empty{
      display:none!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE / BANDITORE-GIOCATORE
   ========================================================================== */
@media (max-width:760px){

  /* TIMER: solo il numero viene centrato geometricamente nel quadrante.
     Il titolo resta nella sua posizione alta. */

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring{
      align-items:center!important;
      justify-content:center!important;
      pointer-events:none!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
  }

  /* OFFERTA: solo il numero è geometricamente centrato nel quadrante.
     Il nome offerente resta sotto e non modifica la posizione del numero. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info{
      position:relative!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info .bid-box{
      position:absolute!important;
      inset:0!important;
      width:100%!important;
      height:100%!important;
      margin:0!important;
      padding:0!important;
      display:block!important;
      pointer-events:none!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #current-value-display{
      position:absolute!important;
      top:50%!important;
      left:50%!important;
      width:auto!important;
      max-width:94%!important;
      margin:0!important;
      padding:0!important;
      transform:translate(-50%,-50%)!important;
      text-align:center!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-info #mobile-winner-display{
      position:absolute!important;
      left:8px!important;
      right:8px!important;
      bottom:26px!important;
      width:auto!important;
      margin:0!important;
      padding:0!important;
      transform:none!important;
      text-align:center!important;
  }

  /* BANDITORE-GIOCATORE / vista giocatore:
     preparazione sempre leggibile anche nei temi chiari. */
  html body #screen-player-buzzer.hybrid-auctioneer-player
  .phone-top-area.player-preparing #player-countdown,
  html body #screen-player-buzzer.hybrid-auctioneer-player
  #player-countdown.prep-countdown{
      display:block!important;
      visibility:visible!important;
      opacity:1!important;
      color:var(--theme-number)!important;
      -webkit-text-fill-color:var(--theme-number)!important;
      text-shadow:none!important;
  }

  /* Quando GIÀ BANDITI è aperto, sostituisce la lista disponibili:
     in questo modo sfrutta tutta l'altezza senza creare una seconda lista sotto. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list.auctioned-open .list-section-title:not(.auctioned-section-head),
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list.auctioned-open .table-container{
      display:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list.auctioned-open .auctioned-section-head{
      margin-top:4px!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list.auctioned-open #auctioned-list:not(.collapsed){
      display:flex!important;
      flex-direction:column!important;
      gap:6px!important;
      width:100%!important;
      min-height:0!important;
      max-height:none!important;
      height:auto!important;
      flex:1 1 auto!important;
      overflow-y:auto!important;
      padding:6px 0 14px!important;
      box-sizing:border-box!important;
  }

  /* Una sola riga: ruolo | nome | squadra | ripristina */

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-name,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-team{
      min-width:0!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
      white-space:nowrap!important;
      color:var(--theme-text)!important;
  }

  /* RIPRISTINA TUTTO = azione distruttiva/rimozione: rosso fisso. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  .restore-all-btn,
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  .restore-all-btn:is(:hover,:focus,:active){
      background:#D9434E!important;
      background-image:none!important;
      border-color:#B9323C!important;
      color:#FFFFFF!important;
      box-shadow:none!important;
  }
}

/* Popup: testo leggibile anche quando contiene più righe. */
.liveasta-confirm-message,
.liveasta-alert-message{
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    line-height:1.45!important;
}
.liveasta-confirm-message:has(br),
.liveasta-alert-message:has(br){
    text-align:left!important;
}


/* ==========================================================================
   v0.93 — correzione centratura numero TIMER banditore smartphone
   ========================================================================== */
@media (max-width:760px){

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer{
      position:relative!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .col-timer .timer-ring{
      position:static!important;
      inset:auto!important;
      width:auto!important;
      height:auto!important;
      display:block!important;
      margin:0!important;
      padding:0!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #countdown-display{
      position:absolute!important;
      left:50%!important;
      top:54%!important;
      width:auto!important;
      max-width:94%!important;
      margin:0!important;
      padding:0!important;
      transform:translate(-50%,-50%)!important;
      transform-origin:center center!important;
      text-align:center!important;
      line-height:1!important;
      font-size:clamp(184px,49vw,260px)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction #countdown-display.quad-digits-3{
      font-size:clamp(118px,33vw,180px)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auction-dashboard.mode-mobile #view-auction .timer-ring > small{
      display:none!important;
  }
}


/* ==========================================================================
   v0.93 — SOLO BANDITORE SMARTPHONE
   Fix pulito liste DISPONIBILI / GIÀ BANDITI
   ========================================================================== */
@media (max-width:760px){

  /* DISPONIBILI:
     la colonna ruolo deve contenere davvero il badge.
     I "puntini" erano l'ellipsis del primo td, non testo reale. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list #players-table tbody tr{
      grid-template-columns:72px minmax(0,1.35fr) minmax(88px,.95fr) 52px!important;
      gap:8px!important;
      align-items:center!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list #players-table tbody td:first-child{
      overflow:visible!important;
      text-overflow:clip!important;
      white-space:nowrap!important;
      min-width:0!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list #players-table tbody td:first-child .role-badge{
      width:58px!important;
      min-width:58px!important;
      max-width:58px!important;
      margin:0!important;
  }

  /* Mantiene il valore leggermente staccato dal bordo destro. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #view-list #players-table tbody td:last-child{
      padding-right:4px!important;
      text-align:right!important;
      overflow:visible!important;
      text-overflow:clip!important;
  }

  /* GIÀ BANDITI:
     stessa densità visiva della tabella disponibili, senza badge giganti. */
  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-row{
      display:grid!important;
      grid-template-columns:72px minmax(0,1.35fr) minmax(88px,.95fr) 92px!important;
      gap:8px!important;
      align-items:center!important;
      width:100%!important;
      min-height:46px!important;
      padding:5px 8px!important;
      box-sizing:border-box!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-row .role-badge{
      width:58px!important;
      min-width:58px!important;
      max-width:58px!important;
      height:30px!important;
      margin:0!important;
      padding:0!important;
      font-size:15px!important;
      line-height:30px!important;
      font-weight:900!important;
      justify-self:start!important;
      text-align:center!important;
      box-sizing:border-box!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-name{
      min-width:0!important;
      margin:0!important;
      font-size:15px!important;
      line-height:1.1!important;
      font-weight:800!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
      color:var(--theme-text)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .auctioned-team{
      min-width:0!important;
      margin:0!important;
      font-size:15px!important;
      line-height:1.1!important;
      font-weight:500!important;
      white-space:nowrap!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
      color:var(--theme-muted)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-mobile
  #auctioned-list .restore-btn{
      width:92px!important;
      min-width:92px!important;
      height:34px!important;
      min-height:34px!important;
      margin:0!important;
      padding:0 6px!important;
      font-size:14px!important;
      line-height:1!important;
      font-weight:800!important;
      justify-self:end!important;
  }
}

/* === PLAYER-02: player theme palette + final countdown 3-0 === */
html[data-live-theme] body #screen-player-buzzer#screen-player-buzzer .player-live-side :is(
  .player-timer-box span,
  .player-timer-box small,
  #player-auction-title,
  .bid-label,
  .credit-label
){
  color:var(--theme-muted)!important;
  -webkit-text-fill-color:var(--theme-muted)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-live-theme] body #screen-player-buzzer#screen-player-buzzer .player-live-side :is(#player-countdown,#player-current-value){
  color:var(--theme-number)!important;
  -webkit-text-fill-color:var(--theme-number)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-live-theme] body #screen-player-buzzer#screen-player-buzzer .player-live-side #player-current-winner{
  color:var(--theme-primary)!important;
  -webkit-text-fill-color:var(--theme-primary)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-live-theme] body #screen-auctioneer-board#screen-auctioneer-board #countdown-display.liveasta-last3,
html[data-live-theme] body #screen-player-buzzer#screen-player-buzzer #player-countdown.liveasta-last3{
  color:#FF334F!important;
  -webkit-text-fill-color:#FF334F!important;
  opacity:1!important;
  text-shadow:0 0 14px rgba(255,51,79,.34)!important;
}
html[data-live-theme] body #screen-auctioneer-board#screen-auctioneer-board #view-auction.mobile-ready #countdown-display.liveasta-last3{
  color:var(--theme-number)!important;
  -webkit-text-fill-color:var(--theme-number)!important;
  text-shadow:none!important;
}

/* Miniatures are transparent cutouts; the drop shadow reads as a dark stain below the base. */
#screen-player-buzzer .phone-card-image,
#screen-auctioneer-board #auction-dashboard #auction-player-card #card-image,
#screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-player-stage img,
.room-roster-player-preview-image{
  filter:none!important;
}
html body #nomination-picker-overlay .nomination-player-row .role-badge{
  width:28px!important;min-width:28px!important;max-width:28px!important;
  height:28px!important;min-height:28px!important;max-height:28px!important;
  padding:0!important;margin:0!important;flex:0 0 28px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:50%!important;line-height:1!important;font-size:12px!important;font-weight:900!important;
}
