/* === liveasta-global-coherence-=== */
/* v0.19 — Gestione is the visual source of truth for the whole app. */
html[data-live-theme] #screen-room-control#screen-room-control{
  --mg-border:var(--theme-border)!important;
  --mg-muted:var(--theme-muted)!important;
  --mg-accent:var(--theme-primary)!important;
  color:var(--theme-text)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control :is(.control-title,.control-card,.control-section,.control-panel,.settings-card,.team-control-card,.teams-control-wrap){
  background:var(--theme-card)!important;
  border-color:var(--theme-border)!important;
  color:var(--theme-text)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .control-grid > .control-title{background:var(--theme-card)!important;}
html[data-live-theme] #screen-room-control#screen-room-control :is(input,select,textarea,.minimal-input){
  background:var(--theme-input)!important;color:var(--theme-text)!important;border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control :is(.muted,.subtitle,.field-label,small,.control-help,.settings-help){color:var(--theme-muted)!important;}

/* Every ordinary action button follows the management visual language.
   Bid/role/status controls keep their semantic colors. */
html[data-live-theme] button:not(.buzzer-btn):not(.btn-plus-1):not(.btn-plus-2):not(.btn-plus-5):not(.btn-plus-10):not(.btn-plus-20):not(.role-P):not(.role-D):not(.role-C):not(.role-A):not(.player-availability-choice):not(.player-ready-choice-btn):not(.ready-confirm-btn):not(.random-role-btn):not(.theme-option):not(.exact-bid-knob){
  border-radius:10px!important;
  box-shadow:none!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:800!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] :is(.btn,.auction-mode-big,.auction-quick-btn,.auction-quick-rosters,.toolbar-icon-btn,.toolbar-roster-btn,.toolbar-sealed-mode-btn,.audio-toolbar-btn,.hybrid-view-switch,.settings-refresh-btn,.player-listone-nav-btn,.player-clear-priorities-btn,.player-nominate-btn,.player-ready-reopen-btn,.room-roster-player-preview-close,.ready-close-btn,.restore-all-btn,.collapsed-toggle,.purchases-toggle,.self-raise-switch){
  background:var(--theme-primary)!important;
  background-image:none!important;
  color:var(--theme-bg-deep)!important;
  border-color:var(--theme-primary)!important;
}
html[data-live-theme] :is(.btn,.auction-mode-big,.auction-quick-btn,.auction-quick-rosters,.toolbar-icon-btn,.toolbar-roster-btn,.toolbar-sealed-mode-btn,.audio-toolbar-btn,.hybrid-view-switch,.settings-refresh-btn,.player-listone-nav-btn,.player-clear-priorities-btn,.player-nominate-btn,.player-ready-reopen-btn,.room-roster-player-preview-close,.ready-close-btn,.restore-all-btn,.collapsed-toggle,.purchases-toggle,.self-raise-switch):hover:not(:disabled){
  background:var(--theme-primary-hover)!important;
  border-color:var(--theme-primary-hover)!important;
}
html[data-live-theme] :is(.btn-secondary,.session-back,.auction-setup-root-back,.control-action-back,.auction-quick-reset){
  background:var(--theme-hover)!important;
  background-image:none!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] :is(.btn-danger,.control-action-reset){
  background:var(--theme-danger)!important;
  color:#fff!important;
  border-color:var(--theme-danger)!important;
}
html[data-live-theme] :is(.control-action-audio,.control-action-csv,.control-action-import-csv,.btn-green){
  background:var(--theme-primary)!important;
  color:var(--theme-bg-deep)!important;
  border-color:var(--theme-primary)!important;
}
html[data-live-theme] button:disabled:not(.buzzer-btn){
  background:var(--theme-hover)!important;
  background-image:none!important;
  color:var(--theme-soft)!important;
  border-color:var(--theme-border)!important;
  opacity:.72!important;
}

/* Toggle / segmented controls remain clearly selected without introducing a second style family. */
html[data-live-theme] :is(.self-raise-switch,.purchases-toggle,.collapsed-toggle)[aria-pressed="false"],
html[data-live-theme] :is(.self-raise-switch,.purchases-toggle,.collapsed-toggle):not(.active):not(.on){
  background:var(--theme-hover)!important;color:var(--theme-text)!important;border-color:var(--theme-border)!important;
}
html[data-live-theme] :is(.self-raise-switch,.purchases-toggle,.collapsed-toggle)[aria-pressed="true"],
html[data-live-theme] :is(.self-raise-switch,.purchases-toggle,.collapsed-toggle).active,
html[data-live-theme] :is(.self-raise-switch,.purchases-toggle,.collapsed-toggle).on{
  background:var(--theme-primary)!important;color:var(--theme-bg-deep)!important;border-color:var(--theme-primary)!important;
}

/* Ready/Skip are functional states: same geometry/type system, distinct meaning. */
html[data-live-theme] .player-ready-choice-btn{border-radius:10px!important;box-shadow:none!important;font-weight:900!important;}
html[data-live-theme] .player-ready-choice-btn.ready{background:var(--theme-primary)!important;color:var(--theme-bg-deep)!important;border-color:var(--theme-primary)!important;}
html[data-live-theme] .player-ready-choice-btn.skip{background:var(--theme-hover)!important;color:var(--theme-text)!important;border-color:var(--theme-border)!important;}

/* Daily is genuinely light: surfaces, navigation, overlays and text all follow light tokens. */
html[data-live-theme="daily"]{color-scheme:light;}
html[data-live-theme="daily"] body{background:linear-gradient(180deg,#FFFFFF 0%,var(--theme-bg) 48%,var(--theme-bg-deep) 100%)!important;}
html[data-live-theme="daily"] :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="daily"] :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="daily"] :is(.ready-overlay,.nomination-overlay,.manual-assign-overlay,.audio-mixer-overlay,.modal-overlay){background:rgba(228,235,243,.82)!important;}
html[data-live-theme="daily"] .theme-option[data-theme-option="daily"]{background:#fff!important;}
html[data-live-theme="daily"] #screen-player-buzzer .exact-bid-knob{color:#111!important;}

/* Preserve presence semantics explicitly. */
html[data-live-theme] :is(#team-inline-status-dot,.team-inline-status-dot).absent{background:#A874FF!important;box-shadow:0 0 8px #A874FF!important;}
html[data-live-theme] :is(#team-inline-status-dot,.team-inline-status-dot).offline{background:#EF4444!important;box-shadow:0 0 8px #EF4444!important;}
html[data-live-theme] :is(#team-inline-status-dot,.team-inline-status-dot).connecting{background:#F59E0B!important;box-shadow:0 0 8px #F59E0B!important;}
html[data-live-theme] :is(#team-inline-status-dot,.team-inline-status-dot).online{background:#22C55E!important;box-shadow:0 0 8px #22C55E!important;}

/* === liveasta-global-coherence-=== */
/* v0.20 — Daily coherence + compact density pass.
   Visual-only: no auction logic, DOM structure or functional behavior changes. */

/* Management hard-coded dark remnants now inherit the active theme. */
html[data-live-theme] #screen-room-control#screen-room-control,
html[data-live-theme] #screen-room-control#screen-room-control .control-grid,
html[data-live-theme] #screen-room-control#screen-room-control .control-grid > .control-title,
html[data-live-theme] #screen-room-control#screen-room-control .control-card,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-box,
html[data-live-theme] #screen-room-control#screen-room-control .auto-random-role{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .control-card h3,
html[data-live-theme] #screen-room-control#screen-room-control .control-title h1,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-head b,
html[data-live-theme] #screen-room-control#screen-room-control .purchases-toggle,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-name{
  color:var(--theme-text)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .field-label,
html[data-live-theme] #screen-room-control#screen-room-control .auto-random-note,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-control-note,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-head small,
html[data-live-theme] #screen-room-control#screen-room-control .nomination-auto-bid-one-copy small{
  color:var(--theme-muted)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control input:not([type=checkbox]):not([type=range]),
html[data-live-theme] #screen-room-control#screen-room-control select,
html[data-live-theme] #screen-room-control#screen-room-control textarea{
  background:var(--theme-input)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .btn{
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control :is(.btn-green,button[onclick="saveRoomConfig()"],.manual-assign-btn,.control-action-csv){
  background:var(--theme-primary)!important;
  color:var(--theme-bg-deep)!important;
  border-color:var(--theme-primary)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control :is(.btn-danger,.control-action-reset){
  background:color-mix(in srgb,var(--theme-danger) 16%,var(--theme-card))!important;
  color:var(--theme-danger)!important;
  border-color:color-mix(in srgb,var(--theme-danger) 48%,var(--theme-border))!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-row{
  background:var(--theme-input)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-row.current{
  background:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-input))!important;
  border-color:var(--theme-primary)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-pos{
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .nomination-order-move{
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}

/* Switches use the same neutral/active language in light and dark themes. */
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch::before,
html[data-live-theme] #screen-room-control#screen-room-control input[type=checkbox]:not(#self-raise-enabled){
  background:color-mix(in srgb,var(--theme-muted) 58%,var(--theme-hover))!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch::after,
html[data-live-theme] #screen-room-control#screen-room-control input[type=checkbox]:not(#self-raise-enabled)::after{
  background:var(--theme-card)!important;
  box-shadow:0 1px 4px rgba(15,23,42,.22)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch[aria-checked=true]::before,
html[data-live-theme] #screen-room-control#screen-room-control input[type=checkbox]:checked{
  background:var(--theme-primary)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch[aria-checked=true]::after,
html[data-live-theme] #screen-room-control#screen-room-control input[type=checkbox]:checked::after{
  background:var(--theme-bg-deep)!important;
}

/* Help dialog follows the selected theme too. */
html[data-live-theme] #management-help,
html[data-live-theme] #management-help header{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme] #management-help h2{color:var(--theme-text)!important;}
html[data-live-theme] #management-help button{
  background:var(--theme-hover)!important;color:var(--theme-text)!important;border-color:var(--theme-border)!important;
}

/* Daily: eliminate remaining dark islands outside management. */
html[data-live-theme="daily"] :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="daily"] :is(.player-listone-row,.player-room-roster-line,.nomination-order-row):nth-child(even){
  background:var(--theme-panel)!important;
}
html[data-live-theme="daily"] :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="daily"] :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="daily"] #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="daily"] #screen-all-rosters,
html[data-live-theme="daily"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="daily"] #screen-all-rosters .all-rosters-grid{
  background:var(--theme-bg)!important;
  color:var(--theme-text)!important;
}
html[data-live-theme="daily"] .room-roster-player-preview-card::before,
html[data-live-theme="daily"] .room-roster-player-preview-card::after{opacity:.08!important;}

/* Compact density: preserve readability, return vertical space to the lists. */
html[data-live-theme] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.minimal-input){
  min-height:38px!important;
  height:38px!important;
  padding:7px 10px!important;
  line-height:1.2!important;
}
html[data-live-theme] textarea{height:auto!important;min-height:72px!important;}
html[data-live-theme] #screen-room-control#screen-room-control input:not([type=checkbox]):not([type=range]),
html[data-live-theme] #screen-room-control#screen-room-control select{
  min-height:38px!important;
  height:38px!important;
  padding:6px 10px!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .btn{
  min-height:38px!important;
  padding:8px 12px!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .teams-control-table input{
  min-height:36px!important;height:36px!important;padding:6px 9px!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .control-teams-actions .btn{
  min-height:38px!important;padding:7px 10px!important;
}

/* Shared list filters: compact but still thumb-friendly. */
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual){
  gap:6px!important;margin:7px 0!important;
}
body .unified-filter-controls{gap:6px!important;}
body .unified-role-row{gap:5px!important;}
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual) :is(.unified-role,.unified-role-all){
  height:34px!important;min-height:34px!important;padding:0 6px!important;border-radius:8px!important;font-size:13px!important;
}
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual) .unified-sort-row{
  grid-template-columns:auto minmax(0,1fr) 38px!important;gap:6px!important;
}
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual) :is(.unified-sort-row select,.unified-direction,.unified-search){
  height:36px!important;min-height:36px!important;padding-top:0!important;padding-bottom:0!important;
}
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual) .unified-direction{
  font-size:20px!important;padding:0!important;
}
body :is(#list-filters-player,#list-filters-board,#list-filters-nomination,#list-filters-mine,#list-filters-rosters,#list-filters-team,#list-filters-purchases,#list-filters-sealed,#list-filters-manual) .unified-sort-row label{
  font-size:11px!important;
}

/* Player listone uses the same compact rhythm. */
.player-listone-tools{gap:6px!important;}
.player-listone-filter-row{gap:6px!important;grid-template-columns:minmax(0,1fr) 132px!important;}
.player-listone-role-filters{gap:5px!important;}
.player-role-filter{height:34px!important;min-height:34px!important;border-radius:8px!important;font-size:.70rem!important;}
.player-listone-filter-row #player-listone-sort,
.player-listone-tools #player-listone-search{height:36px!important;min-height:36px!important;padding:0 9px!important;}

/* Purchases search and common management utility fields. */
#screen-room-control #control-purchases-search{height:36px!important;min-height:36px!important;padding:0 10px!important;}

@media(max-width:700px){
  html[data-live-theme] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,.minimal-input){font-size:16px!important;}
  #screen-room-control#screen-room-control .control-card{padding:12px!important;}
  #screen-room-control#screen-room-control .room-rules-card .setup-grid,
  #screen-room-control#screen-room-control .setup-grid-4{gap:10px!important;margin:11px 0!important;}
  #screen-room-control#screen-room-control .teams-control-table tbody{gap:10px!important;}
  #screen-room-control#screen-room-control .teams-control-table tbody tr{gap:9px 8px!important;padding:10px!important;}
  .player-listone-filter-row{grid-template-columns:minmax(0,1fr) 128px!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="daily"],
html[data-live-theme="daily"] body,
html[data-live-theme="daily"] .screen,
html[data-live-theme="daily"] #screen-all-rosters,
html[data-live-theme="daily"] #screen-all-rosters .all-rosters-page,
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer .identity-pill,
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer .identity-pill span,
html[data-live-theme="daily"] #screen-player-buzzer .mini-stat small{
  color:var(--theme-muted)!important;
}
html[data-live-theme="daily"] #screen-player-buzzer .identity-pill b,
html[data-live-theme="daily"] #screen-player-buzzer .mini-stat strong{
  color:var(--theme-text)!important;
}
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer .player-live-side,
html[data-live-theme="daily"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer .player-timer-box span,
html[data-live-theme="daily"] #screen-player-buzzer .player-timer-box small,
html[data-live-theme="daily"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="daily"] #screen-player-buzzer #player-current-winner{
  color:var(--theme-muted)!important;
  text-shadow:none!important;
}

/* Management switches: never inherit the green rectangular button body. */
html[data-live-theme] #screen-room-control#screen-room-control button.mg-switch,
html[data-live-theme] #screen-room-control#screen-room-control #auctioneer-player-toggle-btn.mg-switch,
html[data-live-theme] #screen-room-control#screen-room-control #ready-toggle-btn.mg-switch{
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  overflow:hidden!important;
}
html[data-live-theme] #screen-room-control#screen-room-control button.mg-switch:hover,
html[data-live-theme] #screen-room-control#screen-room-control button.mg-switch:active,
html[data-live-theme] #screen-room-control#screen-room-control button.mg-switch:focus{
  background:transparent!important;
  background-image:none!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch::before{
  background:color-mix(in srgb,var(--theme-muted) 55%,var(--theme-hover))!important;
  border:1px solid var(--theme-border)!important;
  box-sizing:border-box!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch[aria-checked="true"]::before{
  background:var(--theme-primary)!important;
  border-color:var(--theme-primary)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch::after{
  background:var(--theme-card)!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .mg-switch[aria-checked="true"]::after{
  background:var(--theme-card)!important;
}

/* Random role selectors: Daily uses light cards; role colors are the only strong colors. */
html[data-live-theme="daily"] #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="daily"] #screen-room-control#screen-room-control .auto-random-role:not(:has(input:checked)){
  background:var(--theme-panel)!important;
  opacity:.62!important;
  filter:none!important;
}

/* Purchases/Rosters: compact white records instead of large grey legacy cards. */
@media(max-width:720px){
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody{
    gap:8px!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody tr{
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) 44px minmax(0,.8fr) 58px!important;
    gap:6px 8px!important;
    padding:9px 10px!important;
    border:1px solid var(--theme-border)!important;
    border-radius:10px!important;
    background:var(--theme-card)!important;
    color:var(--theme-text)!important;
    box-shadow:none!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td{
    min-height:0!important;
    font-size:14px!important;
    line-height:1.2!important;
    color:var(--theme-text)!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td::before{
    margin-bottom:2px!important;
    color:var(--theme-muted)!important;
    font-size:9px!important;
    letter-spacing:.07em!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(1)::before{content:"Giocatore";}
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(2)::before{display:none!important;}
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(3)::before{content:"Squadra";}
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(4)::before{content:"Prezzo";}
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(5){grid-column:1/-1!important;}
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .control-table tbody td:nth-child(5)::before{display:none!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;
    align-self:flex-start!important;
  }
  html[data-live-theme] #screen-room-control#screen-room-control #control-purchases-content .restore-btn{
    width:100%!important;
    min-height:34px!important;
    height:34px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    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) 48%,var(--theme-border))!important;
    font-size:12px!important;
  }
}

/* Filters: save vertical space without reducing touch clarity. */
html[data-live-theme] #screen-room-control#screen-room-control .purchases-collapsible-head{
  gap:8px!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .purchases-toggle{
  min-height:38px!important;
  height:38px!important;
  padding:0 4px!important;
}
html[data-live-theme] #screen-room-control#screen-room-control .purchases-collapsible-head .control-title-actions .btn{
  min-height:36px!important;
  height:36px!important;
  padding:0 10px!important;
}

/* Budget manager: remove unnecessary vertical bulk while retaining readable controls. */
body #player-budget-overlay #player-budget-rows{gap:9px!important;}
body #player-budget-overlay #player-budget-rows .budget-role-card{
  gap:7px!important;
  padding:10px!important;
}
body #player-budget-overlay #player-budget-rows .budget-role-card input{
  height:40px!important;
  min-height:40px!important;
  padding:5px 8px!important;
}
body #player-budget-overlay .budget-rebalance-section{margin-top:10px!important;}
body #player-budget-overlay .budget-rebalance-section summary{
  min-height:44px!important;
  padding:8px 12px!important;
  background:var(--theme-hover)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
body #player-budget-overlay .budget-rebalance-section[open] summary{
  background:var(--theme-primary)!important;
  color:var(--theme-bg-deep)!important;
  border-color:var(--theme-primary)!important;
}
body #player-budget-overlay .budget-rebalance-card{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
}

/* Daily rosters: all team surfaces use the same white-card vocabulary. */
html[data-live-theme="daily"] #screen-all-rosters .roster-team-card,
html[data-live-theme="daily"] #screen-all-rosters .roster-team-head,
html[data-live-theme="daily"] #screen-all-rosters .roster-slots,
html[data-live-theme="daily"] #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="daily"] #screen-all-rosters .roster-slots,
html[data-live-theme="daily"] #screen-all-rosters .roster-player-main small{
  color:var(--theme-muted)!important;
}
html[data-live-theme="daily"] #screen-all-rosters .roster-slots b,
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer #player-credits,
html[data-live-theme="daily"] #screen-player-buzzer #player-slots,
html[data-live-theme="daily"] #screen-player-buzzer #player-slots .slot-free-total,
html[data-live-theme="daily"] #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="daily"] #screen-player-buzzer #player-credits.budget-health-green,
html[data-live-theme="daily"] #screen-player-buzzer #player-slots .slot-budget-state.budget-slot-ok{color:var(--theme-primary)!important;}
html[data-live-theme="daily"] #screen-player-buzzer #player-credits.budget-health-orange{color:var(--theme-accent)!important;}
html[data-live-theme="daily"] #screen-player-buzzer #player-credits.budget-health-red,
html[data-live-theme="daily"] #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="daily"] #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="daily"] #screen-auctioneer-setup .auction-mode-big{
  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;
}
html[data-live-theme="daily"] #screen-auctioneer-setup .auction-mode-big:hover,
html[data-live-theme="daily"] #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="daily"] #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="daily"] #screen-auctioneer-setup .auction-mode-big strong{color:var(--theme-text)!important;}
html[data-live-theme="daily"] #screen-auctioneer-setup .auction-mode-big small{color:var(--theme-muted)!important;}
html[data-live-theme="daily"] #screen-auctioneer-setup #auction-mode-selected-label{color:var(--theme-primary)!important;}
html[data-live-theme="daily"] #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="daily"] .audio-mixer-overlay{background:rgba(40,55,70,.24)!important;}
html[data-live-theme="daily"] .audio-mixer-overlay .audio-mixer-card,
html[data-live-theme="daily"] .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="daily"] .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="daily"] .audio-channel-head,
html[data-live-theme="daily"] .audio-channel-head b,
html[data-live-theme="daily"] .audio-routing-device b{color:var(--theme-text)!important;}
html[data-live-theme="daily"] .audio-percent,
html[data-live-theme="daily"] .audio-mixer-subtitle,
html[data-live-theme="daily"] .audio-routing-subtitle,
html[data-live-theme="daily"] .audio-routing-help,
html[data-live-theme="daily"] .audio-routing-device small{color:var(--theme-muted)!important;}
html[data-live-theme="daily"] .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="daily"] .audio-routing-row{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
  border-color:var(--theme-border)!important;
}
html[data-live-theme="daily"] .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="daily"] .audio-close-btn,
html[data-live-theme="daily"] .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="daily"] .room-roster-player-preview-overlay{background:var(--theme-bg)!important;}
html[data-live-theme="daily"] .room-roster-player-preview-card{
  border-color:var(--theme-border)!important;
}
html[data-live-theme="daily"] .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="daily"] .room-roster-player-preview-name,
html[data-live-theme="daily"] .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="daily"] #screen-player-buzzer .player-card,
html[data-live-theme="daily"] #screen-player-buzzer .player-card-side,
html[data-live-theme="daily"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="daily"] #screen-player-buzzer .player-auction-info{
  border-color:var(--theme-border)!important;
}
html[data-live-theme="daily"] #screen-player-buzzer .player-timer-box,
html[data-live-theme="daily"] #screen-player-buzzer .player-auction-info{
  background:var(--theme-card)!important;
  color:var(--theme-text)!important;
}
html[data-live-theme="daily"] #screen-player-buzzer #player-auction-title,
html[data-live-theme="daily"] #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="daily"] #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="daily"] #screen-room-control #control-purchases-content .restore-btn,
html[data-live-theme="daily"] #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;
}

/* Role semantics — enforce final standard everywhere touched by preview/list overlays. */
html[data-live-theme] #room-roster-player-preview-role.role-P{background:#EAB308!important;color:#17120A!important;}
html[data-live-theme] #room-roster-player-preview-role.role-D{background:#22C55E!important;color:#07140C!important;}
html[data-live-theme] #room-roster-player-preview-role.role-C{background:#3B82F6!important;color:#fff!important;}
html[data-live-theme] #room-roster-player-preview-role.role-A{background:#EF4444!important;color:#fff!important;}

/* Small mobile density refinement for setup/audio without touching auction controls. */
@media(max-width:700px){
  #screen-auctioneer-setup .auction-mode-choice{gap:8px!important;margin:8px 0!important;}
  #screen-auctioneer-setup .auction-mode-big{min-height:96px!important;padding:10px 12px!important;gap:5px!important;border-radius:12px!important;}
  #screen-auctioneer-setup .auction-mode-icon{width:40px!important;height:40px!important;font-size:1.45rem!important;}
  .audio-mixer-grid{gap:8px!important;}
  .audio-channel{padding:10px!important;border-radius:10px!important;}
  .audio-routing-targets{gap:7px!important;}
  .audio-routing-row{padding:9px 10px!important;border-radius:10px!important;}
}

/* === liveasta-room-select-fix === */
/* LIVEASTA v0.93 — FIX SELECT STANZA BANDITORE */
#screen-auctioneer-setup #auction-room-select{
  display:block!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  max-height:none!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  line-height:normal!important;
  text-align:center!important;
  text-align-last:center!important;
  vertical-align:middle!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
#screen-auctioneer-setup #auction-room-select option{
  line-height:normal!important;
}
@media (max-height:720px){
  #screen-auctioneer-setup #auction-room-select{
    height:44px!important;
    min-height:44px!important;
    padding:0 12px!important;
  }
}

/* === liveasta-desktop-board === */

/* LIVEASTA v0.93 — BANDITORE DESKTOP TOOLBAR + GIÀ BANDITI */
@media (min-width:761px){
  /* ONLINE x/x sempre visibile nella testata desktop */
  #screen-auctioneer-board > .session-nav .auction-session-center{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-width:0!important;
    overflow:visible!important;
  }
  #screen-auctioneer-board > .session-nav .auction-online-pill{
    display:inline-flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    height:28px!important;
    min-height:28px!important;
    padding:0 10px!important;
    gap:6px!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }
  #screen-auctioneer-board > .session-nav #auction-online-count{
    display:inline!important;
    visibility:visible!important;
    opacity:1!important;
    width:auto!important;
    max-width:none!important;
    overflow:visible!important;
    color:#35d96f!important;
    font-weight:950!important;
    white-space:nowrap!important;
  }

  /* Unica riga desktop: Cerca | random | buste | ruoli | ordinamento */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .dashboard-left{
    display:grid!important;
    grid-template-columns:minmax(220px,1fr) 50px minmax(118px,150px) minmax(290px,360px) minmax(280px,350px)!important;
    grid-template-rows:50px auto minmax(0,1fr) auto auto!important;
    column-gap:7px!important;
    row-gap:6px!important;
    align-items:stretch!important;
    min-height:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-filter-controls{
    display:contents!important;
    margin:0!important;
    padding:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar .toolbar-roster-btn{
    display:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar #player-search,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar .toolbar-icon-btn,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar .toolbar-sealed-mode-btn{
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar .toolbar-icon-btn{
    width:50px!important;
    min-width:50px!important;
    padding:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auction-list-toolbar .toolbar-sealed-mode-btn{
    width:100%!important;
    min-width:0!important;
    padding:0 12px!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-role-row{
    height:50px!important;
    min-height:50px!important;
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(48px,1fr)!important;
    gap:6px!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-role-row > button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 7px!important;
    border-radius:9px!important;
    box-sizing:border-box!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-sort-row{
    height:50px!important;
    min-height:50px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) 50px!important;
    gap:6px!important;
    align-items:stretch!important;
    margin:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-sort-row label{
    display:flex!important;
    align-items:center!important;
    height:50px!important;
    margin:0!important;
    white-space:nowrap!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-sort-row select,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-direction{
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #list-filters-board .unified-direction{
    width:50px!important;
    min-width:50px!important;
    padding:0!important;
  }

  /* Le sezioni della tabella continuano a occupare tutta la larghezza */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .list-section-title:not(.auctioned-section-head){
    grid-column:1 / -1!important;
    grid-row:2!important;
    margin:0 2px!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .table-container{
    grid-column:1 / -1!important;
    grid-row:3!important;
    min-height:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auctioned-section-head{
    grid-column:1 / -1!important;
    grid-row:4!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:7px!important;
    margin:0!important;
    align-items:stretch!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auctioned-section-head .collapsed-toggle,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auctioned-section-head .restore-all-btn{
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auctioned-section-head .restore-all-btn,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list .auctioned-section-head .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;
  }

  /* GIÀ BANDITI desktop: tabella compatta e allineata */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list{
    grid-column:1 / -1!important;
    grid-row:5!important;
    width:100%!important;
    min-height:0!important;
    box-sizing:border-box!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list.collapsed{
    display:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list:not(.collapsed){
    display:block!important;
    height:auto!important;
    max-height:220px!important;
    overflow-y:auto!important;
    padding:0!important;
    border:1px solid var(--theme-border)!important;
    border-radius:8px!important;
    background:var(--theme-input)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-row{
    display:grid!important;
    grid-template-columns:62px minmax(0,1.3fr) minmax(0,1fr) 100px!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    height:42px!important;
    margin:0!important;
    padding:4px 10px!important;
    box-sizing:border-box!important;
    border-bottom:1px solid var(--theme-border)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-row:last-child{
    border-bottom:0!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-row .role-badge{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    margin:0!important;
    padding:3px 5px!important;
    justify-self:start!important;
    border-radius:999px!important;
    font-size:.72rem!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-name,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-team{
    min-width:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:.88rem!important;
    line-height:1!important;
    text-align:left!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-name{
    font-weight:850!important;
    color:var(--theme-text)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .auctioned-team{
    color:var(--theme-muted)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list .restore-btn{
    width:96px!important;
    min-width:96px!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0 8px!important;
    justify-self:end!important;
    font-size:.72rem!important;
  }
}


/* === auctioneer-desktop-theme-.css === */
/* LIVEASTA v0.81 — Plancia banditore desktop coerente con tutti i temi */
@media (min-width:761px){
  /* Le etichette "mobile" non devono comparire nella plancia desktop. */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .mobile-quad-label{
    display:none!important;
  }

  /* Pannelli principali: niente più navy/bordi hardcoded. */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .col-timer,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .col-info,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-fvm,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-wait{
    background:var(--theme-card)!important;
    background-image:none!important;
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
    box-shadow:0 12px 30px color-mix(in srgb,var(--theme-text) 8%,transparent)!important;
  }

  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .auction-col,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-col{
    border-color:var(--theme-border)!important;
  }

  /* TIMER */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .timer-caption,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .timer-ring small{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .timer-ring{
    border-color:color-mix(in srgb,var(--theme-text) 30%,var(--theme-border))!important;
    background:color-mix(in srgb,var(--theme-panel) 82%,transparent)!important;
    box-shadow:
      inset 0 0 0 2px color-mix(in srgb,var(--theme-primary) 8%,transparent),
      0 0 32px color-mix(in srgb,var(--theme-primary) 8%,transparent)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction #countdown-display{
    color:var(--theme-number)!important;
    -webkit-text-fill-color:var(--theme-number)!important;
    text-shadow:none!important;
  }

  /* ESITO / OFFERTA */
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction #auction-title-display,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .bid-label,
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .credit-label{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction #winner-display{
    color:var(--theme-text)!important;
    -webkit-text-fill-color:var(--theme-text)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .bid-box{
    background:var(--theme-input)!important;
    background-image:none!important;
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
    box-shadow:inset 0 1px 0 color-mix(in srgb,var(--theme-text) 5%,transparent)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction #current-value-display{
    color:var(--theme-number)!important;
    -webkit-text-fill-color:var(--theme-number)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .arrow-btn{
    background:var(--theme-primary)!important;
    border-color:var(--theme-primary)!important;
    color:var(--theme-bg-deep)!important;
    box-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #view-auction .arrow-btn svg{
    stroke:currentColor!important;
  }

  /* READY desktop */
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-fvm-label,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-fvm-sub,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-wait-title,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-empty{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop #auctioneer-ready-fvm-value{
    color:var(--theme-number)!important;
    -webkit-text-fill-color:var(--theme-number)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop #auctioneer-ready-count{
    color:var(--theme-text)!important;
    -webkit-text-fill-color:var(--theme-text)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-row{
    background:var(--theme-input)!important;
    background-image:none!important;
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-row.nominator{
    background:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-input))!important;
    border-color:var(--theme-primary)!important;
    box-shadow:inset 3px 0 0 var(--theme-primary)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-name,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-name small,
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-status{
    color:var(--theme-text)!important;
    -webkit-text-fill-color:var(--theme-text)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-dot{
    background:var(--theme-muted)!important;
    box-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-row.ready{
    background:color-mix(in srgb,var(--theme-success,var(--theme-primary)) 12%,var(--theme-input))!important;
    border-color:var(--theme-success,var(--theme-primary))!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #auctioneer-ready-desktop .ard-team-row.ready .ard-team-dot{
    background:var(--theme-success,var(--theme-primary))!important;
    box-shadow:0 0 9px color-mix(in srgb,var(--theme-success,var(--theme-primary)) 48%,transparent)!important;
  }

  /* BANDITURA A TURNI */
  #screen-auctioneer-board #auction-dashboard.mode-pc .auctioneer-turn-kicker,
  #screen-auctioneer-board #auction-dashboard.mode-pc .auctioneer-turn-role,
  #screen-auctioneer-board #auction-dashboard.mode-pc .auctioneer-turn-ranking-empty{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
    text-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .auctioneer-turn-title,
  #screen-auctioneer-board #auction-dashboard.mode-pc .auctioneer-turn-team{
    color:var(--theme-text)!important;
    -webkit-text-fill-color:var(--theme-text)!important;
    text-shadow:none!important;
  }

  /* BUSTE / CLASSIFICA */
  #screen-auctioneer-board #auction-dashboard.mode-pc #sealed-delivery-panel,
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer{
    color:var(--theme-text)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #sealed-delivery-panel h3,
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-title{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #sealed-delivery-count{
    color:var(--theme-number)!important;
    -webkit-text-fill-color:var(--theme-number)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc #sealed-delivery-names,
  #screen-auctioneer-board #auction-dashboard.mode-pc #sealed-delivery-panel small{
    color:var(--theme-muted)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-delivery-row{
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-row{
    background:var(--theme-input)!important;
    background-image:none!important;
    border-color:var(--theme-border)!important;
    color:var(--theme-text)!important;
    box-shadow:none!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-row.winner{
    background:color-mix(in srgb,var(--theme-success,var(--theme-primary)) 12%,var(--theme-input))!important;
    border-color:var(--theme-success,var(--theme-primary))!important;
    box-shadow:inset 3px 0 0 var(--theme-success,var(--theme-primary))!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-pos{
    background:var(--theme-hover)!important;
    color:var(--theme-text)!important;
    border:1px solid var(--theme-border)!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-row.winner .sealed-ranking-pos{
    background:var(--theme-card)!important;
    color:var(--theme-text)!important;
    border-color:var(--theme-success,var(--theme-primary))!important;
  }
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-team,
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-value,
  #screen-auctioneer-board #auction-dashboard.mode-pc .sealed-ranking-auctioneer .sealed-ranking-row.winner .sealed-ranking-value{
    color:var(--theme-text)!important;
    -webkit-text-fill-color:var(--theme-text)!important;
    text-shadow:none!important;
  }
}

/* === player-light-states-.css === */
/* LIVEASTA v0.82 — stati giocatore visibili nei temi chiari */
:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area.player-winning .player-live-side{
  background:linear-gradient(180deg,#237a57 0%,#17543f 100%)!important;
  background-image:linear-gradient(180deg,#237a57 0%,#17543f 100%)!important;
  border-left-color:#126644!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 0 22px rgba(31,122,85,.24)!important;
  color:#fff!important;
}

:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area.player-losing .player-live-side{
  background:linear-gradient(180deg,#ad4053 0%,#7d2a3a 100%)!important;
  background-image:linear-gradient(180deg,#ad4053 0%,#7d2a3a 100%)!important;
  border-left-color:#8c3042!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 0 22px rgba(173,64,83,.22)!important;
  color:#fff!important;
}

/* I due pannelli interni prima restavano bianchi e coprivano il verde/rosso del contenitore. */
:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area:is(.player-winning,.player-losing) :is(.player-timer-box,.player-auction-info){
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border-color:rgba(255,255,255,.24)!important;
}

:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area:is(.player-winning,.player-losing) .player-live-side::before{
  content:""!important;
  opacity:1!important;
  background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.16) 0%,rgba(255,255,255,.05) 48%,transparent 78%)!important;
  pointer-events:none!important;
}

/* Contrasto stabile sul verde e sul rosso, indipendente dal tema chiaro selezionato. */
:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area:is(.player-winning,.player-losing) :is(
  .player-timer-box span,
  .player-timer-box small,
  #player-auction-title,
  #player-current-winner,
  #player-countdown,
  #player-current-value,
  .bid-label,
  .credit-label
){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 3px rgba(0,0,0,.42)!important;
  opacity:1!important;
}

:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area.player-winning{
  border-color:#1b8d60!important;
  box-shadow:0 0 0 2px rgba(27,141,96,.16),0 12px 30px rgba(0,0,0,.12)!important;
}

:is(
  html[data-live-theme^="light-"],
  html[data-live-theme$="-daily"],
  html[data-live-theme="daily"]
) #screen-player-buzzer .phone-top-area.player-losing{
  border-color:#c1465b!important;
  box-shadow:0 0 0 2px rgba(193,70,91,.14),0 12px 30px rgba(0,0,0,.12)!important;
}

/* === sealed-desktop-.css === */
/* LIVEASTA v0.83 — BUSTE desktop: consegna/apertura */
@media (min-width:761px){
  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting .col-info > .mobile-offer-block{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting .mobile-offer-block > :not(#sealed-delivery-panel){
    display:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-panel{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    padding:24px!important;
    margin:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:var(--theme-card)!important;
    border:0!important;
    color:var(--theme-text)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-panel h3{
    margin:0 0 8px!important;
    color:var(--theme-muted)!important;
    font-size:clamp(18px,1.45vw,28px)!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-align:center!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-count{
    display:block!important;
    margin:2px 0 14px!important;
    color:var(--theme-number)!important;
    -webkit-text-fill-color:var(--theme-number)!important;
    font-size:clamp(52px,5vw,88px)!important;
    line-height:1!important;
    font-weight:950!important;
    text-align:center!important;
    text-shadow:none!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-names{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    padding:2px 4px!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting .sealed-delivery-row{
    display:grid!important;
    grid-template-columns:12px minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
    min-height:44px!important;
    padding:8px 10px!important;
    border:1px solid var(--theme-border)!important;
    border-radius:10px!important;
    background:var(--theme-input)!important;
    color:var(--theme-text)!important;
    box-sizing:border-box!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting .sealed-delivery-row strong{
    color:var(--theme-text)!important;
    font-size:clamp(15px,1.15vw,21px)!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting .sealed-delivery-dot{
    width:10px!important;
    height:10px!important;
    border-radius:50%!important;
    background:var(--theme-success,#22B866)!important;
    box-shadow:0 0 8px color-mix(in srgb,var(--theme-success,#22B866) 48%,transparent)!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-panel small,
  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-collecting #sealed-delivery-names p{
    color:var(--theme-muted)!important;
    -webkit-text-fill-color:var(--theme-muted)!important;
    text-align:center!important;
  }

  html body #screen-auctioneer-board.auctioneer-ui-desktop #auction-dashboard.mode-pc #view-auction.sealed-opening .timer-caption{
    color:var(--theme-muted)!important;
  }
}

/* === mobile-auctioneer-.css === */
/* LIVEASTA v0.84 — coerenza banditore smartphone */
@media (max-width:760px){
  /* Il ruolo nella lista deve essere un badge circolare compatto, mai una pillola allungata. */
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .role-badge,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .role-circle,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) [class*="role-badge"],
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) [class*="role-circle"]{
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    aspect-ratio:1/1!important;
    padding:0!important;
    margin:0 7px 0 0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 28px!important;
    line-height:1!important;
    border-radius:50%!important;
    box-sizing:border-box!important;
    vertical-align:middle!important;
    overflow:hidden!important;
  }

  /* Miniatura della plancia: stessa geometria circolare usata nel resto dell'app. */
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .auction-player-card img,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .player-thumbnail,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .player-thumb,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) #auction-player-image,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) #auction-player-img,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .auction-player-image img,
  #screen-auctioneer-board:not(.auctioneer-ui-desktop) .auction-player-thumb img{
    border-radius:50%!important;
    aspect-ratio:1/1!important;
    object-fit:cover!important;
    object-position:center!important;
    overflow:hidden!important;
  }
}

/* === role-badges-.css === */
/* LIVEASTA v0.86 — badge ruolo circolari coerenti */

/* Base comune: 28x28, cerchio perfetto, lettera centrata. */
html body #screen-auctioneer-board #view-list #players-table#players-table .role-badge,
html body #screen-auctioneer-board #auctioned-list#auctioned-list .auctioned-row .role-badge,
html body #screen-all-rosters#screen-all-rosters #all-rosters-grid .roster-player-line .role-badge,
html body #player-roster-list#player-roster-list .roster-row .role-badge,
html body #player-room-team-roster-list#player-room-team-roster-list .player-room-roster-line .role-badge,
html body #player-roster-overlay#player-roster-overlay .role-badge,
html body #player-listone-overlay#player-listone-overlay #player-listone-list#player-listone-list .player-listone-row .role-badge,
html body #screen-room-control#screen-room-control #control-purchases-content#control-purchases-content .control-table .role-badge,
html[data-live-theme] body #screen-room-control#screen-room-control #control-purchases-content#control-purchases-content .control-table .role-badge,
html body #screen-auctioneer-board #auction-dashboard.mode-pc #view-list #auctioned-list#auctioned-list .auctioned-row .role-badge,
html body #screen-auctioneer-board.auctioneer-ui-mobile #auctioned-list#auctioned-list .auctioned-row .role-badge,
html body #screen-auctioneer-board.auctioneer-ui-desktop #auctioned-list#auctioned-list .auctioned-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;
  aspect-ratio:1/1!important;
  padding:0!important;
  margin:0!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:center!important;
  align-self:center!important;
  flex:0 0 28px!important;
  line-height:28px!important;
  text-align:center!important;
  text-indent:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  vertical-align:middle!important;
  font-weight:900!important;
  font-size:12px!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

/* Matrice colori ruoli. */
html body :is(
  #screen-auctioneer-board #players-table,
  #screen-auctioneer-board #auctioned-list,
  #screen-all-rosters #all-rosters-grid,
  #player-roster-list,
  #player-room-team-roster-list,
  #player-roster-overlay,
  #player-listone-list,
  #screen-room-control #control-purchases-content
) .role-badge.role-P {
  background:#F2B800!important;
  background-color:#F2B800!important;
  color:#000!important;
  -webkit-text-fill-color:#000!important;
}
html body :is(
  #screen-auctioneer-board #players-table,
  #screen-auctioneer-board #auctioned-list,
  #screen-all-rosters #all-rosters-grid,
  #player-roster-list,
  #player-room-team-roster-list,
  #player-roster-overlay,
  #player-listone-list,
  #screen-room-control #control-purchases-content
) .role-badge.role-D {
  background:#22C55E!important;
  background-color:#22C55E!important;
  color:#000!important;
  -webkit-text-fill-color:#000!important;
}
html body :is(
  #screen-auctioneer-board #players-table,
  #screen-auctioneer-board #auctioned-list,
  #screen-all-rosters #all-rosters-grid,
  #player-roster-list,
  #player-room-team-roster-list,
  #player-roster-overlay,
  #player-listone-list,
  #screen-room-control #control-purchases-content
) .role-badge.role-C {
  background:#3B82F6!important;
  background-color:#3B82F6!important;
  color:#FFF!important;
  -webkit-text-fill-color:#FFF!important;
}
html body :is(
  #screen-auctioneer-board #players-table,
  #screen-auctioneer-board #auctioned-list,
  #screen-all-rosters #all-rosters-grid,
  #player-roster-list,
  #player-room-team-roster-list,
  #player-roster-overlay,
  #player-listone-list,
  #screen-room-control #control-purchases-content
) .role-badge.role-A {
  background:#EF4444!important;
  background-color:#EF4444!important;
  color:#FFF!important;
  -webkit-text-fill-color:#FFF!important;
}

/* === auction-complete-theme-.css === */
/* LIVEASTA v0.91 — ASTA COMPLETATA coerente con il tema attivo */
html[data-live-theme] #screen-auctioneer-board .nomination-stage.auction-completed-fullscreen{
  background:
    radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--theme-primary,#3DDC97) 18%,transparent),transparent 38%),
    linear-gradient(145deg,var(--theme-bg-deep,var(--theme-bg,#0D1117)) 0%,var(--theme-bg,var(--bg-main,#0D1117)) 58%,var(--theme-card,var(--bg-card,#17212e)) 100%)!important;
  color:var(--theme-text,var(--text-main,#F8FAFC))!important;
  border-color:var(--theme-border,var(--border-color,#334155))!important;
}
html[data-live-theme] #screen-auctioneer-board .nomination-stage.auction-completed-fullscreen .nomination-stage-inner{
  background:transparent!important;
  border-color:transparent!important;
  color:var(--theme-text,var(--text-main,#F8FAFC))!important;
}
html[data-live-theme] #screen-auctioneer-board .nomination-stage.auction-completed-fullscreen .nomination-stage-title{
  color:var(--theme-primary,var(--accent-blue,#3DDC97))!important;
  -webkit-text-fill-color:var(--theme-primary,var(--accent-blue,#3DDC97))!important;
  text-shadow:none!important;
  filter:none!important;
}
html[data-live-theme] #screen-auctioneer-board .nomination-stage.auction-completed-fullscreen::before,
html[data-live-theme] #screen-auctioneer-board .nomination-stage.auction-completed-fullscreen::after{
  border-color:color-mix(in srgb,var(--theme-primary,#3DDC97) 24%,transparent)!important;
  background:transparent!important;
}

/* === management-.css === */
/* LIVEASTA v0.93 — Gestione ordinata, senza minimizzazioni */

/* Neutralizza completamente i vecchi sistemi di compressione. */
html body #screen-room-control :is(.v087-collapse-btn,.v091-collapse-btn,.v092-collapse-btn){display:none!important;}
html body #screen-room-control .control-card.v090-collapsed > *{display:revert!important;}
html body #screen-room-control .control-card.v090-collapsed{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;}
html body #screen-room-control .control-card.v090-collapsed .control-title{margin-bottom:10px!important;}

/* Base comune */
html body #screen-room-control{
  align-items:stretch!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
  padding:0!important;
}
html body #screen-room-control .control-grid{
  width:min(1220px,calc(100vw - 24px))!important;
  max-width:1220px!important;
  margin:0 auto!important;
  padding:12px!important;
  box-sizing:border-box!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  align-content:start!important;
  scrollbar-gutter:stable!important;
}
html body #screen-room-control .control-card{
  position:relative!important;
  min-width:0!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:14px!important;
  margin:0!important;
  border:1px solid var(--theme-border,var(--border-color,#475569))!important;
  border-radius:14px!important;
  background:var(--theme-card,var(--bg-card,#17212e))!important;
  color:var(--theme-text,var(--text-main,#f8fafc))!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
}
html body #screen-room-control .control-card .control-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 10px!important;
  padding:0!important;
  cursor:default!important;
}
html body #screen-room-control .control-card h3{
  margin:0!important;
  color:var(--theme-text,var(--text-main,#f8fafc))!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html body #screen-room-control .control-card :is(.self-raise-control-note,.online-players-note,.auctioneer-player-note,.ready-control-note,.auto-random-note,.nomination-control-note,.nomination-auto-bid-one-copy small,.nomination-order-head small){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:var(--theme-muted,var(--text-muted,#aab4c3))!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  line-height:1.4!important;
}
html body #screen-room-control :is(input,select,.minimal-input){
  max-width:100%!important;
  box-sizing:border-box!important;
}
html body #screen-room-control .btn{
  white-space:normal!important;
  line-height:1.15!important;
  box-sizing:border-box!important;
}

/* Toggle coerenti: bottoni custom già usati dall'app. */
html body #screen-room-control button.mg-switch,
html body #screen-room-control .self-raise-switch{
  flex:0 0 auto!important;
}
html body #screen-room-control button.mg-switch[aria-checked="true"]::before,
html body #screen-room-control button.mg-switch.active::before,
html body #screen-room-control .self-raise-switch[aria-checked="true"] .self-raise-switch-track{
  background:var(--theme-primary,#3DDC97)!important;
  border-color:var(--theme-primary,#3DDC97)!important;
}
html body #screen-room-control button.mg-switch[aria-checked="true"]::after,
html body #screen-room-control button.mg-switch.active::after{
  transform:translateX(22px)!important;
}
html body #screen-room-control .self-raise-switch[aria-checked="true"] .self-raise-switch-thumb{
  transform:translateX(21px)!important;
}

/* Toggle checkbox: Random automatico, ruoli e Offerta 1 banditore. */
html body #screen-room-control :is(#auto-random-enabled,#auto-random-role-P,#auto-random-role-D,#auto-random-role-C,#auto-random-role-A,#nomination-auto-bid-one){
  -webkit-appearance:none!important;
  appearance:none!important;
  position:relative!important;
  display:inline-block!important;
  flex:0 0 48px!important;
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  height:27px!important;
  min-height:27px!important;
  max-height:27px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--theme-border,#64748b)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--theme-muted,#94a3b8) 60%,var(--theme-panel,#1f2937))!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}
html body #screen-room-control :is(#auto-random-enabled,#auto-random-role-P,#auto-random-role-D,#auto-random-role-C,#auto-random-role-A,#nomination-auto-bid-one)::after{
  content:''!important;
  position:absolute!important;
  top:2px!important;
  left:2px!important;
  width:21px!important;
  height:21px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 1px 4px rgba(0,0,0,.28)!important;
  transform:none!important;
  transition:transform .16s ease!important;
}
html body #screen-room-control :is(#auto-random-enabled,#nomination-auto-bid-one):checked{background:var(--theme-primary,#3DDC97)!important;border-color:var(--theme-primary,#3DDC97)!important;}
html body #screen-room-control #auto-random-role-P:checked{background:#F2B800!important;border-color:#F2B800!important;}
html body #screen-room-control #auto-random-role-D:checked{background:#35B86B!important;border-color:#35B86B!important;}
html body #screen-room-control #auto-random-role-C:checked{background:#3F82E8!important;border-color:#3F82E8!important;}
html body #screen-room-control #auto-random-role-A:checked{background:#EF454A!important;border-color:#EF454A!important;}
html body #screen-room-control :is(#auto-random-enabled,#auto-random-role-P,#auto-random-role-D,#auto-random-role-C,#auto-random-role-A,#nomination-auto-bid-one):checked::after{transform:translateX(21px)!important;}

html body #screen-room-control .auto-random-role-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin:10px 0!important;
}
html body #screen-room-control .auto-random-role{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-width:0!important;
  min-height:50px!important;
  padding:9px 11px!important;
  border:1px solid var(--theme-border,#475569)!important;
  border-radius:11px!important;
  background:var(--theme-panel,var(--theme-input,#111821))!important;
  box-sizing:border-box!important;
}
html body #screen-room-control .auto-random-role span{order:-1!important;font-weight:900!important;}
html body #screen-room-control .nomination-auto-bid-one-option{
  display:flex!important;
  flex-direction:row-reverse!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  padding:11px 12px!important;
  margin:10px 0!important;
  border:1px solid var(--theme-border,#475569)!important;
  border-radius:11px!important;
  background:var(--theme-panel,var(--theme-input,#111821))!important;
  box-sizing:border-box!important;
}

/* Liste: niente elementi che escono dalle card. */
html body #screen-room-control .online-player-list,
html body #screen-room-control .nomination-order-list,
html body #screen-room-control .control-table-wrap{
  max-width:100%!important;
  overflow-x:hidden!important;
}
html body #screen-room-control .nomination-order-list{max-height:360px!important;overflow-y:auto!important;}
html body #screen-room-control .control-teams-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr) minmax(0,.8fr)!important;
  gap:7px!important;
  width:100%!important;
}
html body #screen-room-control .control-teams-actions .btn{width:100%!important;min-width:0!important;margin:0!important;}

/* DESKTOP */
@media (min-width:900px){
  html body #screen-room-control .control-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:14px!important;
    height:100dvh!important;
    max-height:100dvh!important;
  }
  html body #screen-room-control .control-grid > .control-title{grid-column:1/-1!important;}
  html body #screen-room-control .room-rules-card{grid-column:1/-1!important;}
  html body #screen-room-control .self-raise-control-card{grid-column:1!important;}
  html body #screen-room-control .ready-control-card{grid-column:2!important;}
  html body #screen-room-control .online-players-card{grid-column:1!important;}
  html body #screen-room-control .auctioneer-player-control-card{grid-column:2!important;}
  html body #screen-room-control .auto-random-control-card,
  html body #screen-room-control .nomination-control-card,
  html body #screen-room-control .teams-card,
  html body #screen-room-control .purchases-card{grid-column:1/-1!important;}

  html body #screen-room-control .room-rules-card .setup-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px 12px!important;
  }
  html body #screen-room-control .room-rules-card .setup-grid-4{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
  }
  html body #screen-room-control .nomination-control-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
  html body #screen-room-control .nomination-turn-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  html body #screen-room-control .team-create-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:end!important;}
}

/* SMARTPHONE */
@media (max-width:899px){
  html body #screen-room-control .control-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:8px 10px calc(24px + env(safe-area-inset-bottom))!important;
  }
  html body #screen-room-control .control-grid > .control-title{order:0!important;position:sticky!important;top:0!important;z-index:40!important;}
  html body #screen-room-control .room-rules-card{order:1!important;}
  html body #screen-room-control .self-raise-control-card{order:2!important;}
  html body #screen-room-control .online-players-card{order:3!important;}
  html body #screen-room-control .auctioneer-player-control-card{order:4!important;}
  html body #screen-room-control .ready-control-card{order:5!important;}
  html body #screen-room-control .auto-random-control-card{order:6!important;}
  html body #screen-room-control .nomination-control-card{order:7!important;}
  html body #screen-room-control .teams-card{order:8!important;}
  html body #screen-room-control .purchases-card{order:9!important;}

  html body #screen-room-control .control-card{padding:12px!important;border-radius:13px!important;}
  html body #screen-room-control .control-card h3{font-size:16px!important;}
  html body #screen-room-control .room-rules-card .setup-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
  html body #screen-room-control .room-rules-card .setup-grid-4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  html body #screen-room-control .self-raise-control-row,
  html body #screen-room-control .auctioneer-player-control-row{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  html body #screen-room-control .auto-random-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body #screen-room-control .nomination-control-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;}
  html body #screen-room-control .nomination-turn-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;}
  html body #screen-room-control .nomination-order-box{padding:10px!important;overflow:hidden!important;}
  html body #screen-room-control .team-create-row{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}

  /* Squadre come schede, senza sovrapposizioni. */
  html body #screen-room-control .teams-control-table{display:block!important;width:100%!important;table-layout:auto!important;}
  html body #screen-room-control .teams-control-table thead{display:none!important;}
  html body #screen-room-control .teams-control-table tbody{display:flex!important;flex-direction:column!important;gap:9px!important;}
  html body #screen-room-control .teams-control-table tbody tr{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    padding:10px!important;
    border:1px solid var(--theme-border,#475569)!important;
    border-radius:12px!important;
    background:var(--theme-panel,var(--theme-input,#111821))!important;
    box-sizing:border-box!important;
  }
  html body #screen-room-control .teams-control-table tbody td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  html body #screen-room-control .teams-control-table tbody td::before{
    content:attr(data-label)!important;
    display:block!important;
    margin-bottom:3px!important;
    color:var(--theme-muted,#94a3b8)!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
  }
  html body #screen-room-control .teams-control-table tbody td[data-label="Squadra"],
  html body #screen-room-control .teams-control-table tbody td[data-label="Azioni"]{grid-column:1/-1!important;}
  html body #screen-room-control .teams-control-table tbody input{width:100%!important;margin:0!important;}
  html body #screen-room-control .control-teams-actions{grid-template-columns:1fr 1fr!important;}
  html body #screen-room-control .control-teams-actions .manual-assign-btn{grid-column:1/-1!important;}
  html body #screen-room-control .control-table-wrap{max-height:none!important;overflow:visible!important;}
}

/* Dialog autenticazione Banditore giocatore: PIN personale della squadra, non password stanza. */
html body .v093-player-pin-dialog{
  width:min(92vw,430px)!important;
  max-width:430px!important;
  padding:0!important;
  border:1px solid var(--theme-border,#475569)!important;
  border-radius:16px!important;
  background:var(--theme-card,#17212e)!important;
  color:var(--theme-text,#f8fafc)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.38)!important;
}
html body .v093-player-pin-dialog::backdrop{background:rgba(5,9,14,.72)!important;backdrop-filter:blur(4px)!important;}
html body .v093-player-pin-card{display:flex!important;flex-direction:column!important;gap:11px!important;padding:18px!important;margin:0!important;}
html body .v093-player-pin-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;}
html body .v093-player-pin-head h3{margin:0!important;}
html body .v093-player-pin-close{border:0!important;background:transparent!important;color:inherit!important;font-size:28px!important;cursor:pointer!important;}
html body .v093-player-pin-card p{margin:0!important;color:var(--theme-muted,#aab4c3)!important;line-height:1.4!important;}
html body .v093-player-pin-card input{width:100%!important;margin:0!important;box-sizing:border-box!important;}
html body .v093-player-pin-error{min-height:18px!important;color:var(--theme-danger,#ef454a)!important;font-size:12px!important;font-weight:700!important;}
html body .v093-player-pin-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
html body .v093-player-pin-actions .btn{width:100%!important;min-width:0!important;margin:0!important;padding:12px 10px!important;font-size:clamp(.78rem,3.6vw,.98rem)!important;line-height:1.1!important;letter-spacing:.02em!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;}


/* === v0.99 MGMT-05 — canonical access/manual assignment details === */
#screen-auctioneer-setup #auction-join-box :is(#auction-room-select,#auction-room-name-input,#auction-room-password){
  width:100%!important;height:52px!important;min-height:52px!important;max-height:52px!important;
  margin:0 0 10px!important;padding:0 14px!important;box-sizing:border-box!important;
  border:1px solid var(--theme-border)!important;border-radius:10px!important;
  background:var(--theme-input)!important;color:var(--theme-text)!important;
  font:500 1rem/1.2 Inter,system-ui,sans-serif!important;text-align:center!important;
}
#screen-auctioneer-setup #auction-room-password{letter-spacing:.02em!important;}

html body .v093-player-pin-actions .btn{min-height:48px!important;}
@media(max-width:340px){
  html body .v093-player-pin-actions{grid-template-columns:1fr!important;}
}

html body .manual-player-list{
  width:100%;max-height:min(36dvh,330px);overflow-y:auto;overscroll-behavior:contain;
  display:flex;flex-direction:column;gap:6px;padding:6px;box-sizing:border-box;
  border:1px solid var(--theme-border);border-radius:12px;background:var(--theme-input);
}
html body .manual-player-option{
  width:100%;min-width:0;min-height:54px;margin:0;padding:7px 10px!important;
  display:grid;grid-template-columns:38px minmax(0,1fr) 28px;align-items:center;gap:9px;
  border:1px solid var(--theme-border)!important;border-radius:10px!important;
  background:var(--theme-card)!important;color:var(--theme-text)!important;
  text-align:left!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;
}
html body .manual-player-option.selected{
  border-color:var(--theme-primary)!important;
  background:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-card))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme-primary) 45%,transparent)!important;
}
html body .manual-player-role{
  width:34px;height:34px;display:grid;place-items:center;border-radius:50%;
  font-size:13px;font-weight:900;line-height:1;text-align:center;background:var(--theme-hover);color:var(--theme-text);
}
html body .manual-player-role.role-P{background:#ffda32;color:#101820;}
html body .manual-player-role.role-D{background:#24c968;color:#101820;}
html body .manual-player-role.role-C{background:#387ef5;color:#fff;}
html body .manual-player-role.role-A{background:#ed3e46;color:#fff;}
html body .manual-player-copy{min-width:0;display:flex;flex-direction:column;gap:2px;}
html body .manual-player-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;color:var(--theme-text);}
html body .manual-player-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;color:var(--theme-muted);}
html body .manual-player-chevron{display:grid;place-items:center;color:var(--theme-muted);font-size:22px;font-weight:900;}
html body #manual-player-select[hidden]{display:none!important;}
html body .manual-player-empty{padding:16px 10px;text-align:center;color:var(--theme-muted);font-size:13px;}

/* Auction outcome colors are semantic and theme-aware, especially on light themes. */
html[data-live-theme] #screen-player-buzzer .phone-top-area.player-winning #player-current-winner{color:var(--theme-success)!important;}
html[data-live-theme] #screen-player-buzzer .phone-top-area.player-losing #player-current-winner{color:var(--theme-danger)!important;}


/* MGMT-06 — manual assignment price step */
html body .manual-price-dialog{width:min(92vw,440px)!important;max-width:440px!important;padding:0!important;border:1px solid var(--theme-border,#475569)!important;border-radius:16px!important;background:var(--theme-card,#17212e)!important;color:var(--theme-text,#f8fafc)!important;box-shadow:0 24px 70px rgba(0,0,0,.38)!important;}
html body .manual-price-dialog::backdrop{background:rgba(5,9,14,.66)!important;backdrop-filter:blur(4px)!important;}
html body .manual-price-card{display:flex!important;flex-direction:column!important;gap:12px!important;padding:18px!important;margin:0!important;}
html body .manual-price-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;}
html body .manual-price-head h3{margin:0!important;color:var(--theme-text,#f8fafc)!important;font-size:1.15rem!important;}
html body .manual-price-close{width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:var(--theme-text,#f8fafc)!important;font-size:28px!important;}
html body .manual-price-copy{display:flex!important;flex-direction:column!important;gap:4px!important;padding:12px!important;border:1px solid var(--theme-border,#475569)!important;border-radius:12px!important;background:var(--theme-panel,#111821)!important;color:var(--theme-muted,#aab4c3)!important;text-align:left!important;}
html body .manual-price-copy strong{color:var(--theme-text,#f8fafc)!important;font-size:1.1rem!important;}
html body .manual-price-card #manual-price-input{width:100%!important;min-height:52px!important;height:52px!important;margin:0!important;text-align:center!important;font-size:1.35rem!important;font-weight:800!important;background:var(--theme-input,#111821)!important;color:var(--theme-text,#f8fafc)!important;border:1px solid var(--theme-border,#475569)!important;border-radius:12px!important;}
html body .manual-price-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
html body .manual-price-actions .btn{width:100%!important;min-width:0!important;margin:0!important;}
html body .manual-player-hint{margin:8px 0 0!important;color:var(--theme-muted,#aab4c3)!important;font-size:.9rem!important;line-height:1.4!important;text-align:center!important;}


/* v1.0.115 — nomination picker mobile close control */
html[data-live-theme] #nomination-picker-overlay .nomination-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:10px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
html[data-live-theme] #nomination-picker-overlay .nomination-head > div:first-child{
  min-width:0!important;
}
html[data-live-theme] #nomination-picker-overlay .nomination-close-btn{
  width:auto!important;
  min-width:76px!important;
  max-width:none!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 12px!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:visible!important;
  flex:none!important;
  font-size:12px!important;
  line-height:1!important;
}
@media(max-width:420px){
  html[data-live-theme] #nomination-picker-overlay .nomination-head{
    gap:7px!important;
  }
  html[data-live-theme] #nomination-picker-overlay .nomination-close-btn{
    min-width:68px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 8px!important;
    font-size:11px!important;
  }
}


/* v1.0.116 — READY player names always fully visible */
#screen-player-buzzer .player-ready-team-copy{
  min-width:0!important;
  overflow:visible!important;
}
#screen-player-buzzer .player-ready-team-copy strong{
  font-size:var(--ready-team-name-size,.80rem)!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.04!important;
  max-width:100%!important;
}


/* v1.0.117 — player desktop nomination reminder + single-line name fit */
#screen-player-buzzer #phone-player-name{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
}
#screen-player-buzzer #phone-player-name-text{
  font-size:var(--player-main-name-size,1.05rem)!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.05!important;
  flex:0 1 auto!important;
  min-width:0!important;
}

@media (min-width:761px){
  #screen-player-buzzer #player-nominate-btn.nomination-turn-active{
    width:min(420px,calc(100% - 32px))!important;
    max-width:420px!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:7px auto 8px!important;
    padding:8px 12px!important;
    overflow:hidden!important;
  }
  #screen-player-buzzer #player-nominate-btn.nomination-turn-active :is(.nominate-small,strong,#player-nominate-role){
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    text-align:center!important;
  }
}

/* Home actions must stay fully readable on narrow screens and with larger text. */
#screen-role .home-entry-action{
  white-space:normal!important;
  text-overflow:clip!important;
  overflow-wrap:break-word;
  height:auto!important;
  max-height:none!important;
  min-height:48px;
  line-height:1.3!important;
}
@media(max-width:600px){
  #screen-role .home-entry-action{
    font-size:clamp(14px,4vw,18px)!important;
    letter-spacing:.02em!important;
    padding:14px 10px!important;
  }
}
