/* Camada visual nova. Carrega depois de styles.css e redefine tokens e componentes centrais. */
:root{
  --bg:#0A0D0C;--surface:#121715;--surface-2:#1A201D;--surface-3:#232A26;
  --border:rgba(255,255,255,.08);--border-strong:rgba(255,255,255,.16);
  --text:#F3F0E9;--muted:#8C9892;
  --accent:#E3B85A;--ok:#4CC38A;--danger:#F0625F;--blue:#6FA8FF;
  --primary:#F3F0E9;--on-primary:#0A0D0C;--ink:#0A0D0C;
  --felt-a:#183A2B;--felt-b:#0F211A;
  --glow:rgba(40,120,84,.16);--shadow:0 1px 0 rgba(255,255,255,.03) inset;
  --display:'Bricolage Grotesque',Inter,system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --champ-bg:#0A0D0C;--champ-surface:#121715;--champ-surface-2:#1A201D;
}
html[data-theme=light]{
  --bg:#F2EFE8;--surface:#FFFFFF;--surface-2:#F0ECE3;--surface-3:#E6E1D6;
  --border:rgba(10,13,12,.09);--border-strong:rgba(10,13,12,.2);
  --text:#121614;--muted:#66716B;
  --accent:#9A6A10;--ok:#167A4B;--danger:#C22F2C;--blue:#2F6BD0;
  --primary:#121614;--on-primary:#FFFFFF;--ink:#FFFFFF;
  --felt-a:#DDEBE2;--felt-b:#F4F8F5;
  --glow:rgba(40,120,84,.10);--shadow:0 1px 2px rgba(10,13,12,.05),0 8px 24px rgba(10,13,12,.04);
}
body{background:radial-gradient(120% 55% at 50% -10%,var(--glow),transparent 70%),var(--bg);font-size:15px;-webkit-font-smoothing:antialiased}
h1,h2,h3,.facts dd,.stats strong,.blind,.addon-info strong{font-family:var(--display)}
h1{font-size:clamp(28px,5vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.08;margin:4px 0 10px}
h2{font-size:18px;font-weight:700;letter-spacing:-.02em;margin:0 0 10px}
h3{font-size:16px;letter-spacing:-.01em}
p{line-height:1.5}
a{color:var(--text);text-underline-offset:3px}
.eyebrow{color:var(--muted);font-size:11.5px;font-weight:600;letter-spacing:.08em;margin:0 0 4px}
.eyebrow::first-letter{text-transform:uppercase}

/* Topo e navegação */
header{position:sticky;top:0;z-index:9;min-height:60px;padding:8px max(16px,calc((100vw - 880px)/2));gap:12px;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
header img{width:128px}
header nav a{padding:8px 10px;font-size:14px;font-weight:500;border-radius:10px}
header nav a:hover{color:var(--text);background:var(--surface-2);text-decoration:none}
#auth{min-height:38px;padding:6px 14px;font-size:13.5px;background:transparent;color:var(--text);border-color:var(--border-strong);border-radius:10px}
.icon-button{flex:0 0 38px;width:38px;min-height:38px;padding:7px;border-radius:10px}
main{max-width:880px;padding:20px 16px 110px}
.bottom-nav{background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:none;padding-top:6px}
.bottom-nav a{color:var(--muted);font-size:10.5px;font-weight:600;gap:3px;border-radius:12px}
.bottom-nav a:hover{text-decoration:none}
.bottom-nav [aria-current]{color:var(--text);background:transparent;position:relative}
.bottom-nav [aria-current]::after{content:'';position:absolute;top:0;width:18px;height:3px;border-radius:3px;background:var(--accent)}

/* Botões */
button,.button{min-height:46px;padding:10px 18px;border-radius:12px;background:var(--primary);color:var(--on-primary);font-size:14.5px;font-weight:650;letter-spacing:-.005em;box-shadow:none}
button:hover,.button:hover{filter:none;opacity:.9;box-shadow:none}
.secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}
.secondary:hover{background:var(--surface-3);opacity:1}
.danger{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}
.compact{min-height:36px;padding:6px 12px;font-size:13px;border-radius:10px}
.actions{gap:8px;margin:12px 0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Formulários */
input,select,textarea{background:var(--surface-2);border-color:var(--border);border-radius:12px;min-height:46px;margin-top:6px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
label{font-size:12.5px;margin-bottom:12px}
legend{color:var(--text);font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:-.01em;text-transform:none;padding:0 6px}

/* Superfícies */
.card,fieldset{background:var(--surface);border-color:var(--border);border-radius:16px;padding:18px;box-shadow:var(--shadow);margin-bottom:12px}
a.card:hover{transform:none;border-color:var(--border-strong)}
.grid{gap:12px}
.table-scroll{border-radius:14px;box-shadow:none}
.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:99px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-size:11.5px;font-weight:600;white-space:nowrap}
.pill.gold{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 28%,transparent)}
.pill.live,.pill.status-em_andamento{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}
.pill.live::before,.pill.status-em_andamento::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ok);animation:pulse 1.6s ease-in-out infinite}
.pill.status-cancelado{color:var(--danger)}
@keyframes pulse{50%{opacity:.3}}
.format-badge{display:none}

/* Início */
.hero{border:1px solid var(--border);border-radius:22px;padding:22px;margin:4px 0 14px;background:linear-gradient(160deg,var(--felt-a),var(--felt-b) 60%,var(--surface));box-shadow:var(--shadow)}
.hero::after{content:none}
.hero-top,.head-pills{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.hero h1{font-size:clamp(30px,7vw,44px);margin:0 0 6px}
.hero-meta{color:var(--muted);margin:0;font-size:14.5px}
.hero-meta::first-letter{text-transform:uppercase}
.facts{display:flex;margin:18px 0 4px;padding:14px 0 0;border-top:1px solid var(--border)}
.facts div{flex:1;min-width:0}
.facts dt{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:3px 0 0;font-size:20px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hero .actions{margin:18px 0 0}
.hero .actions .button{flex:1}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 10px}
.section-head h2{margin:0}
.section-head small{font-size:12px;text-align:right}
.list{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border);color:var(--text)}
.row:last-child{border-bottom:0}
.row:hover{background:var(--surface-2);text-decoration:none}
.row-main{flex:1;min-width:0}
.row-main strong{display:block;font-size:15px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row-main small{display:block;font-size:12.5px;margin-top:2px}
.row-main small::first-letter{text-transform:uppercase}
.empty{border-radius:16px}

/* Painel do torneio */
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.page-head h1{margin-bottom:8px}
.head-pills{margin:0}
.quick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;background:none;border:0;border-radius:0;overflow:visible;margin:14px 0;max-width:none}
.stats>div{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:11px 12px;min-width:0}
.stats small{font-size:10px;font-weight:600;letter-spacing:.07em}
.stats strong{margin-top:4px;font-size:clamp(15px,4.4vw,20px);color:var(--text);letter-spacing:-.02em;white-space:nowrap}
.stats.sticky>div:nth-child(2) strong{color:var(--accent)}
.tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:14px;margin:16px 0}
.tabs button{min-height:38px;padding:0 4px;border-radius:10px;font-size:12.5px;background:var(--surface-3);color:var(--text);border-color:transparent}
.tabs button.secondary{background:transparent;color:var(--muted)}
.player{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px 14px;margin:0 0 8px;box-shadow:var(--shadow)}
.player.out{opacity:.55}
.player-top{display:flex;align-items:center;gap:12px}
.player-id{flex:1;min-width:0}
.player-id strong{display:block;font-size:15.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-id small{font-size:12.5px}
.owes{color:var(--danger);font-weight:600}
.player-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}
.chips,.player-add{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.player-add{margin-left:auto}
.avatar{width:40px;height:40px;font-size:14px;border-width:1px;box-shadow:none}
.chip{flex:0 0 36px;width:36px;height:36px;min-height:36px;border-width:2px;box-shadow:none;background:transparent;font-size:13px;font-weight:700;--chip-color:var(--accent)}
.chip.rebuy{--chip-color:var(--danger)}.chip.addon{--chip-color:var(--blue)}
.chip.paid{background:var(--chip-color);color:var(--bg);border-style:solid}
.chip.paid::after{width:14px;height:14px;font-size:9px;right:-4px;bottom:-4px;color:#06140D;line-height:10px}
.payment-informed{color:var(--accent)}

/* Relógio */
body:not(.tv) .clock{background:linear-gradient(180deg,var(--felt-a),var(--felt-b));border:1px solid var(--border);border-radius:22px;padding:20px 14px 16px;text-align:center;box-shadow:var(--shadow)}
.intervalo .clock,body.intervalo{--felt-a:color-mix(in srgb,var(--blue) 26%,var(--bg));--felt-b:color-mix(in srgb,var(--blue) 10%,var(--bg))}
#clock-state{color:var(--muted)}
#clock-label{font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:6px 0 0}
.timer{font-family:var(--mono);font-weight:700;color:var(--text);letter-spacing:-.05em}
body:not(.tv) .timer{font-size:clamp(76px,25vw,150px);line-height:1.05}
.timer.urgent{color:var(--danger)}
.blind{color:var(--accent);font-weight:800;letter-spacing:-.03em}
body:not(.tv) .blind{font-size:clamp(30px,9.5vw,54px)}
.clock p{margin:6px 0;color:var(--muted);font-size:13.5px}
#next{color:var(--text);font-weight:600}
.addon-info{display:inline-grid;gap:2px;margin:12px auto 4px;padding:12px 22px;border-radius:16px;background:color-mix(in srgb,var(--accent) 13%,transparent);border:1px solid color-mix(in srgb,var(--accent) 38%,transparent)}
.addon-info small{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.addon-info strong{font-size:clamp(30px,8vw,54px);line-height:1.05;color:var(--text)}
.addon-info span{font-size:13px;color:var(--muted)}
.tv .addon-info strong{font-size:clamp(40px,9vh,110px)}
#clock-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0 6px}
#clock-stats>div{background:color-mix(in srgb,var(--bg) 35%,transparent);text-align:left}
.banner{border-radius:14px;margin-bottom:12px}
.clock-controls{display:grid;grid-template-columns:60px 1fr 60px;gap:10px;margin:14px 0 8px}
.clock-controls button{min-height:60px;border-radius:16px;padding:0}
.clock-controls .play{font-size:18px;font-weight:700}
.clock-hands{justify-content:center}
.clock-hands button{flex:1;min-height:52px}
.clock-more{justify-content:center;gap:6px}
#addon-panel{margin-top:12px}
.addon-panel{padding:14px 16px;margin:0}
.addon-panel summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}
.addon-panel summary::-webkit-details-marker{display:none}
.addon-panel summary small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.addon-panel summary strong{display:block;font-family:var(--display);font-size:16px;margin-top:2px}
.addon-count{font-size:12px;color:var(--muted);text-align:right}
.addon-list{list-style:none;padding:0;margin:12px 0 0}
.addon-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--border)}
.addon-list .avatar{width:34px;height:34px;font-size:12px}
.addon-name{flex:1;min-width:0;font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.addon-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.addon-actions button{min-height:36px;padding:6px 11px;font-size:13px;border-radius:10px}
.pay-toggle{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}
.pay-toggle.paid{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}

/* Diálogos */
dialog{border-radius:20px;padding:22px;background:var(--surface);border-color:var(--border-strong)}
.menu{display:grid;gap:8px}
.menu .button,.menu button{width:100%}
#notice{border-radius:12px;font-weight:600}

@media(max-width:767px){
  header nav a{display:none}
  dialog.sheet{margin:auto auto 0;width:100%;max-width:100%;border-radius:22px 22px 0 0;border-bottom:0;padding-bottom:calc(22px + env(safe-area-inset-bottom))}
  #clock-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:768px){
  main{padding-top:32px}
  .stats{grid-template-columns:repeat(6,minmax(0,1fr))}
  #clock-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .quick{display:flex}
}

/* Ajustes de densidade */
.presence-card .section-head{margin:0 0 12px}
.presence-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.attendee-avatars{gap:12px;margin:0}
.attendee-avatars span{display:grid;justify-items:center;gap:4px}
.attendee-avatars small{font-size:11px}
.panel-title{margin:20px 0 10px}
.entry-bar{display:grid;grid-template-columns:1fr auto auto;gap:8px}
.entry-bar button{padding:10px 14px}
.hint{font-size:12px;color:var(--muted);margin:10px 0 14px}
.player{display:block}
.player-top,.player-bottom{width:100%}
.player h3{margin:0}
.entry-bar button{white-space:nowrap;font-size:14px}
.entry-bar .secondary{padding:10px 12px;font-size:13.5px}
.addon-count{line-height:1.5;white-space:nowrap}
.addon-count b{color:var(--text)}
.clock p:empty{display:none}
.chips .chip{position:relative;top:auto;width:36px;height:36px;min-height:36px;max-height:36px;line-height:1;animation:none;opacity:1;transform:none}
#panel.intervalo{background:none}
#addon-panel{margin-top:16px}
:root{--break:#0D1A2C}html[data-theme=light]{--break:#DCE8F5}
#addon-panel{margin:12px 0}
#addon-panel:empty{display:none}
.clock-more{margin-top:14px}
.clock-more button{min-height:36px}
#activate-sound{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}

/* Telão */
.tv main{max-width:none;padding-top:10px}
.tv header{position:static;background:transparent;border-bottom:0;backdrop-filter:none}
.tv #clock-label{font-size:clamp(14px,2.8vh,28px)}
.tv #next{font-size:clamp(18px,3.4vh,36px)}
.tv .clock p{font-size:clamp(13px,2.2vh,22px)}
.tv #clock-stats{max-width:1100px;margin:14px auto 6px}
.tv #clock-stats strong{font-size:clamp(18px,3.2vh,34px)}
.tv .clock-controls,.tv .clock-hands,.tv #addon-panel{max-width:720px;margin-left:auto;margin-right:auto}
[hidden],.addon-info[hidden]{display:none!important}

/* Editor de blinds compacto */
#levels th,#levels td{padding:6px 6px;vertical-align:middle}
#levels td:first-child{padding-left:12px;font-size:12px;color:var(--muted);white-space:nowrap}
#levels input{min-height:38px;padding:6px 8px;margin:0;width:66px;font-size:15px}
#levels input[data-key=rotulo]{width:150px}
#levels input[data-key=duracao_seg]{width:54px}
#levels .actions{flex-wrap:nowrap;margin:0;gap:4px}
#levels .actions button{min-height:36px;min-width:36px;padding:4px 9px;font-size:12.5px}
#levels tr.late td:first-child{color:var(--danger)}
.denomination{min-width:60px;min-height:60px;font-size:12.5px;border-width:2px}
.format-options .card{margin:0}

/* ===== Estilos selecionáveis (html[data-style]) ===== */
:root{--body:Inter,system-ui,sans-serif;--r-card:16px;--r-hero:22px;--r-btn:12px;--r-pill:99px;--avatar-r:50%;--tt:none;--ls-btn:-.005em;
  --hero-bg:linear-gradient(160deg,var(--felt-a),var(--felt-b) 60%,var(--surface));--hero-border:var(--border);--hero-text:var(--text);--hero-muted:var(--muted);
  --clock-bg:linear-gradient(180deg,var(--felt-a),var(--felt-b));--clock-text:var(--text);--clock-muted:var(--muted);--clock-tile:color-mix(in srgb,var(--bg) 35%,transparent);
  --timer-color:var(--clock-text);--timer-glow:none;--tv-timer:var(--text);--display-stretch:100%}
body{font-family:var(--body)}
h1,h2,h3,.facts dd,.stats strong,.blind,.addon-info strong,legend,.addon-panel summary strong{font-stretch:var(--display-stretch)}
.card,fieldset,.player,.list,.stats>div,.tabs,.table-scroll,.empty,.addon-info{border-radius:var(--r-card)}
button,.button,input,select,textarea,.tabs button,#auth,.icon-button,.compact{border-radius:var(--r-btn)}
button,.button{text-transform:var(--tt);letter-spacing:var(--ls-btn)}
.pill{border-radius:var(--r-pill)}
.avatar{border-radius:var(--avatar-r)}
.hero{border-radius:var(--r-hero);background:var(--hero-bg);border-color:var(--hero-border);color:var(--hero-text)}
.hero .hero-meta,.hero .facts dt{color:var(--hero-muted)}
.hero .facts{border-top-color:color-mix(in srgb,var(--hero-text) 16%,transparent)}
body:not(.tv) .clock{border-radius:var(--r-hero);background:var(--clock-bg);border-color:var(--hero-border);color:var(--clock-text)}
body:not(.tv) .timer{color:var(--timer-color);text-shadow:var(--timer-glow)}
.tv .timer{color:var(--tv-timer);text-shadow:var(--timer-glow)}
body:not(.tv) .clock p,body:not(.tv) #clock-label,body:not(.tv) #clock-state{color:var(--clock-muted)}
body:not(.tv) #next,body:not(.tv) .clock .stats strong,body:not(.tv) .clock .addon-info strong{color:var(--clock-text)}
body:not(.tv) #clock-stats>div{background:var(--clock-tile);border-color:color-mix(in srgb,var(--clock-text) 12%,transparent)}
body:not(.tv) #clock-stats small{color:var(--clock-muted)}
.timer.urgent{color:var(--danger)!important}
.intervalo .clock{--clock-bg:linear-gradient(180deg,color-mix(in srgb,var(--blue) 34%,#0E131C),#0E131C);--clock-text:#F4F6FA;--clock-muted:#A6B0C2;--clock-tile:rgba(255,255,255,.06);--timer-color:#F4F6FA}

/* A · Cassino clássico (padrão). Sem serifa: títulos e timer em Bricolage Grotesque. */
html[data-style=cassino]{--bg:#0A2219;--surface:#0F3024;--surface-2:#143C2D;--surface-3:#1A4A38;--border:rgba(217,178,95,.2);--border-strong:rgba(217,178,95,.45);--text:#F6EEDC;--muted:#A6BAAC;--accent:#DDB766;--ok:#6FD3A0;--danger:#F28B7D;--blue:#7FB2F0;
  --primary:linear-gradient(180deg,#E8C678,#C79A3F);--on-primary:#1A1405;--ink:#1A1405;--felt-a:#17513B;--felt-b:#0C3023;--glow:rgba(217,178,95,.07);
  --display:"Bricolage Grotesque",Inter,sans-serif;--mono:"Bricolage Grotesque",Inter,sans-serif;--hero-bg:radial-gradient(130% 130% at 0 0,#19573F,#0C3023);--hero-border:rgba(217,178,95,.5);--clock-bg:radial-gradient(110% 100% at 50% 0,#19573F,#0A261C)}
html[data-style=cassino][data-theme=light]{--bg:#F3EEDF;--surface:#FFFDF6;--surface-2:#EDE5D0;--surface-3:#E0D5B9;--border:rgba(70,52,10,.14);--border-strong:rgba(70,52,10,.32);--text:#13261C;--muted:#5C6C61;--accent:#8B6610;--ok:#167A4B;--danger:#B93A2E;--blue:#2F6BD0;
  --primary:linear-gradient(180deg,#1C5A41,#134030);--on-primary:#F6EEDC;--ink:#F6EEDC;--glow:rgba(23,81,59,.08);
  --hero-text:#F6EEDC;--hero-muted:#B8CBBE;--clock-text:#F6EEDC;--clock-muted:#B8CBBE;--clock-tile:rgba(0,0,0,.2);--tv-timer:#13261C}
html[data-style=cassino] .timer{font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
html[data-style=cassino][data-theme=light] .hero .pill{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:#F6EEDC}
html[data-style=cassino][data-theme=light] .hero .button.secondary{background:rgba(255,255,255,.12);color:#F6EEDC;border-color:rgba(255,255,255,.2)}
html[data-style=cassino][data-theme=light] .hero .button:not(.secondary){background:linear-gradient(180deg,#E8C678,#C79A3F);color:#1A1405}
html[data-style=cassino][data-theme=light] body:not(.tv) .blind{color:#E8C678}

/* B · Esportivo */
html[data-style=esportivo]{--bg:#050607;--surface:#0D0F11;--surface-2:#16191C;--surface-3:#21262B;--border:rgba(255,255,255,.1);--border-strong:rgba(255,255,255,.24);--text:#F5F7F8;--muted:#7F8990;--accent:#B6FF3C;--ok:#B6FF3C;--danger:#FF4D6A;--blue:#4DA3FF;
  --primary:#B6FF3C;--on-primary:#050607;--ink:#050607;--felt-a:#12160B;--felt-b:#0A0C0D;--glow:rgba(182,255,60,.05);
  --display:"Archivo",Inter,sans-serif;--display-stretch:82%;--r-card:6px;--r-hero:6px;--r-btn:4px;--r-pill:2px;--avatar-r:6px;--tt:uppercase;--ls-btn:.05em;
  --hero-bg:linear-gradient(135deg,#131809,#0A0C0D);--hero-border:rgba(182,255,60,.45);--clock-bg:#0A0C0D;--timer-color:#B6FF3C;--timer-glow:0 0 30px rgba(182,255,60,.4);--tv-timer:#B6FF3C}
html[data-style=esportivo][data-theme=light]{--bg:#F1F3F2;--surface:#FFFFFF;--surface-2:#E8EBEA;--surface-3:#DADFDD;--border:rgba(5,6,7,.12);--border-strong:rgba(5,6,7,.3);--text:#0A0C0D;--muted:#5F686E;--accent:#3C8A00;--ok:#2F7D00;--danger:#D4213F;--blue:#1F6FD0;
  --primary:#0A0C0D;--on-primary:#B6FF3C;--ink:#B6FF3C;--glow:rgba(60,138,0,.06);
  --hero-bg:#0A0C0D;--hero-text:#F5F7F8;--hero-muted:#8D979E;--hero-border:#0A0C0D;--clock-bg:#0A0C0D;--clock-text:#F5F7F8;--clock-muted:#8D979E;--clock-tile:rgba(255,255,255,.06);--timer-glow:none;--tv-timer:#0A0C0D}
html[data-style=esportivo] h1,html[data-style=esportivo] h2,html[data-style=esportivo] .blind{text-transform:uppercase;font-weight:900}
html[data-style=esportivo] .tabs button,html[data-style=esportivo] .pill{text-transform:uppercase;letter-spacing:.05em}
html[data-style=esportivo] .timer{font-family:"JetBrains Mono",monospace}
html[data-style=esportivo][data-theme=light] .hero .pill{background:rgba(182,255,60,.14);border-color:rgba(182,255,60,.4);color:#B6FF3C}
html[data-style=esportivo][data-theme=light] .hero .button:not(.secondary){background:#B6FF3C;color:#050607}
html[data-style=esportivo][data-theme=light] .hero .button.secondary{background:rgba(255,255,255,.1);color:#F5F7F8;border-color:rgba(255,255,255,.2)}
html[data-style=esportivo][data-theme=light] body:not(.tv) .blind{color:#B6FF3C}

/* C · App moderno */
html[data-style=moderno]{--bg:#0F0F15;--surface:#191922;--surface-2:#23232F;--surface-3:#2E2E3D;--border:rgba(255,255,255,.08);--border-strong:rgba(255,255,255,.2);--text:#F2F2F8;--muted:#9292AB;--accent:#A99CFF;--ok:#4FD1A1;--danger:#FF6B6E;--blue:#6FA8FF;
  --primary:#6A5BFF;--on-primary:#FFFFFF;--ink:#FFFFFF;--glow:rgba(106,91,255,.12);
  --body:"Plus Jakarta Sans",Inter,sans-serif;--display:"Plus Jakarta Sans",Inter,sans-serif;--mono:"Plus Jakarta Sans",Inter,sans-serif;--r-card:20px;--r-hero:26px;--r-btn:16px;--avatar-r:14px;
  --hero-bg:linear-gradient(140deg,#5B4BFF,#8B5CF6 60%,#C26BFF);--hero-border:transparent;--hero-text:#FFFFFF;--hero-muted:rgba(255,255,255,.78);
  --clock-bg:linear-gradient(180deg,#221F4A,#16152B);--clock-text:#FFFFFF;--clock-muted:#A9A9C6;--clock-tile:rgba(255,255,255,.07)}
html[data-style=moderno][data-theme=light]{--bg:#F4F4F8;--surface:#FFFFFF;--surface-2:#ECECF2;--surface-3:#E0E0EA;--border:rgba(20,20,40,.08);--border-strong:rgba(20,20,40,.2);--text:#16161D;--muted:#70708A;--accent:#5B4BFF;--ok:#12825A;--danger:#D93A3F;--blue:#2F6BD0;
  --primary:#16161D;--on-primary:#FFFFFF;--ink:#FFFFFF;--glow:rgba(91,75,255,.08);--shadow:0 2px 12px rgba(20,20,40,.06);
  --clock-bg:#16161D;--tv-timer:#16161D}
html[data-style=moderno] .hero .pill{background:rgba(255,255,255,.2);border-color:transparent;color:#fff}
html[data-style=moderno] .hero .button:not(.secondary){background:#fff;color:#16161D}
html[data-style=moderno] .hero .button.secondary{background:rgba(255,255,255,.18);color:#fff;border-color:transparent}
html[data-style=moderno] .timer{font-weight:800;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
html[data-style=moderno] body:not(.tv) .blind{color:#C3B9FF}

/* Seletor de estilo */
.style-option{display:flex;align-items:center;gap:14px;text-align:left;justify-content:flex-start;min-height:64px;text-transform:none;letter-spacing:0}
.style-option[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}
.style-option strong{display:block;font-size:15px}.style-option small{display:block;font-size:12.5px;font-weight:500}
.swatch{flex:0 0 40px;height:40px;border-radius:12px;border:1px solid var(--border-strong)}

/* Listas com foto: respiro entre foto, nome e ação */
.row .avatar{flex:none}
.row.inactive{opacity:.55}
.row .row-main{color:var(--text)}
.row .row-main:hover{text-decoration:none}
.row>button,.row>.pill{flex:none}
.chevron{color:var(--muted);font-size:22px;line-height:1}
.pill.presence-vou{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}
.pill.presence-nao_vou{color:var(--danger)}
.form-card{margin-bottom:20px}
.form-card h2{margin-bottom:14px}
.form-card button{margin-top:4px}
/* Rede de segurança: foto nunca colada no texto dentro de cartão */
.card>.avatar{display:flex;margin-bottom:12px}
.card>.avatar+h2,.card>.avatar+h3{margin:0 0 4px}
.card>h2+p,.card>h3+p{margin:0 0 12px}
.card>p:last-child,.card>button:last-child{margin-bottom:0}
.grid>.card{margin:0}
main>h1+.card,main>h1+form{margin-top:14px}
h1+.section-head{margin-top:16px}
input[type=file]{padding:10px 12px;font-size:13.5px;border-style:dashed;cursor:pointer}
input[type=file]::file-selector-button{margin-right:10px;padding:6px 12px;border:1px solid var(--border-strong);border-radius:var(--r-btn);background:var(--surface-3);color:var(--text);font:600 13px var(--body);cursor:pointer}
.profile-head{display:flex;align-items:center;gap:16px;margin:8px 0 16px}
details.card>summary{cursor:pointer;font-weight:650}

/* Seleção de jogadores do dia */
#choices{display:grid;gap:6px;max-height:48dvh;overflow:auto;margin:10px 0 14px}
.choice{display:flex;align-items:center;gap:12px;min-height:56px;margin:0;padding:8px 12px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface-2);color:var(--text);font-size:15px;cursor:pointer}
.choice:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}
.choice input{margin:0;flex:none}
.choice .avatar{width:36px;height:36px;font-size:13px}
.choice strong{display:block;font-weight:650}
.choice small{display:block;font-size:12.5px}
.choice[hidden]{display:none}
#batch .section-head{margin:0 0 6px}
.empty button{margin-top:4px}
.entry-bar{grid-template-columns:1fr 1fr}
.entry-bar #attendees{grid-column:1/-1}
@media(min-width:600px){.entry-bar{grid-template-columns:1fr auto auto}.entry-bar #attendees{grid-column:auto}}

/* Voltar */
#backbar{max-width:880px;margin:0 auto;padding:12px 16px 0}
#backbar+main{padding-top:8px}
.back{display:inline-flex;align-items:center;gap:4px;min-height:40px;padding:0 14px 0 8px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font-size:13.5px;font-weight:600}
.back:hover{background:var(--surface-2);text-decoration:none}
/* Presenças marcadas pelo admin */
.presence-row{flex-wrap:wrap}
.presence-set{display:flex;gap:4px;flex:none}
.presence-set button{min-width:54px;padding:6px 10px}
.presence-set .on{background:var(--surface-3);color:var(--text);border-color:var(--border-strong)}
.presence-set .on-vou{background:color-mix(in srgb,var(--ok) 20%,transparent);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}
.presence-set .on-nao_vou{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}
@media(max-width:420px){.presence-row .row-main{flex-basis:calc(100% - 60px)}.presence-set{margin-left:52px;width:calc(100% - 52px)}.presence-set button{flex:1}}

/* Fora da mesa: um toque coloca o jogador no torneio */
#bench{margin-top:8px;scroll-margin-top:76px}
#bench-search{margin:0 0 8px}
.bench-wide{width:100%;margin:0 0 8px}
#bench-list{margin-bottom:10px}
#bench-list .row{padding:10px 12px 10px 14px}
#bench-list .row button{min-width:76px;min-height:40px}
#bench-list:empty{display:none}
.confirmed{color:var(--ok);font-weight:600}
.entry-bar{grid-template-columns:1fr auto}
.entry-bar #attendees{grid-column:auto}
/* Cartão de presença com os dados do torneio */
.presence-info{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}
.presence-info h3{font-size:20px;margin:10px 0 2px}
.presence-info p{margin:0;color:var(--muted);font-size:14px}
.presence-info p::first-letter{text-transform:uppercase}
.presence-info .facts{margin:12px 0 0;padding-top:12px}
.presence-info .facts dd{font-size:17px}

/* Sorteio de lugares */
.quick{grid-template-columns:repeat(3,1fr)}
.quick .button{padding:10px 8px}
.seat-form{display:grid;gap:10px;max-width:420px}
.seat-form label{margin:0;font-size:13px}
.seat-form .hint{margin:0}
.stepper{display:grid;grid-template-columns:56px 1fr 56px;gap:8px}
.stepper button{font-size:22px;padding:0}
.stepper input{margin:0;text-align:center;font-family:var(--display);font-size:22px;font-weight:700}
.seat-block{margin:26px 0 8px}
.poker-table{position:relative;width:100%;max-width:440px;aspect-ratio:4/5;margin:0 auto}
.felt{position:absolute;inset:15% 21%;border-radius:999px;display:grid;place-content:center;justify-items:center;gap:2px;text-align:center;padding:12px;
  background:radial-gradient(ellipse at 50% 35%,#1F7350,#114631 70%);border:9px solid #5A3A20;box-shadow:inset 0 0 0 2px rgba(227,184,90,.55),inset 0 0 40px rgba(0,0,0,.45),0 14px 34px rgba(0,0,0,.35)}
.felt span{font-family:var(--display);font-weight:800;font-size:18px;color:#F6EEDC;letter-spacing:-.01em}
.felt small{font-size:11.5px;color:rgba(246,238,220,.72)}
.seat{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:3px;width:84px;text-align:center}
.seat .avatar{width:50px;height:50px;font-size:16px;border:2px solid var(--accent);box-shadow:0 4px 12px rgba(0,0,0,.35)}
.seat-empty{width:50px;height:50px;border-radius:var(--avatar-r);border:2px dashed var(--border-strong)}
.seat-name{max-width:84px;font-size:12.5px;font-weight:650;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.seat.free .seat-name{color:var(--muted);font-weight:500}
.seat.out{opacity:.45}
.seat-number{position:absolute;top:-6px;left:10px;z-index:1;min-width:20px;height:20px;padding:0 5px;border-radius:99px;display:grid;place-items:center;font-size:11px;font-weight:800;background:var(--accent);color:#14100A}
.seat.free .seat-number{background:var(--surface-3);color:var(--muted)}
.seat-tag{flex:none;min-width:34px;text-align:center;font-family:var(--display);font-size:15px;color:var(--accent)}
.drawn .seat{animation:seat-in .45s cubic-bezier(.2,.9,.3,1.2) both;animation-delay:calc(var(--i)*110ms)}
@keyframes seat-in{from{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(min-width:700px){.poker-table{max-width:760px;aspect-ratio:16/9}.felt{inset:19% 14%}.seat{width:104px}.seat-name{max-width:104px;font-size:13.5px}.seat .avatar,.seat-empty{width:56px;height:56px}}

/* Menu do torneio: suspenso no computador, folha embaixo no celular */
.page-head{position:relative}
.popmenu{position:absolute;z-index:12;top:calc(100% - 4px);right:0;width:230px;padding:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:0 14px 36px rgba(0,0,0,.4);animation:pop-in .12s ease-out}
.popmenu h2,.popmenu .only-sheet{display:none}
.popmenu .menu{gap:2px}
.popmenu .menu .button,.popmenu .menu button{justify-content:flex-start;min-height:42px;padding:8px 12px;background:transparent;border-color:transparent;font-size:14px;font-weight:600;text-transform:none;letter-spacing:0}
.popmenu .menu .button:hover,.popmenu .menu button:hover{background:var(--surface-2);opacity:1}
.popmenu .menu .danger{color:var(--danger)}
.popmenu .menu .danger:hover{background:color-mix(in srgb,var(--danger) 14%,transparent)}
@keyframes pop-in{from{opacity:0;transform:translateY(-4px)}}
@media(max-width:767px){
  .popmenu{position:fixed;top:auto;right:0;left:0;bottom:0;width:auto;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;border-bottom:0;box-shadow:0 0 0 100vmax var(--overlay);animation:sheet-in .18s ease-out}
  .popmenu h2{display:block;margin:0 0 12px}
  .popmenu .only-sheet{display:inline-flex}
  .popmenu .menu{gap:8px}
  .popmenu .menu .button,.popmenu .menu button{justify-content:center;min-height:48px;background:var(--surface-2);border-color:var(--border)}
  .popmenu .menu .danger{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}
}
@keyframes sheet-in{from{transform:translateY(30%);opacity:0}}

.reorder{display:flex;gap:4px;flex:none}
.reorder button{min-width:38px;padding:4px}

/* App instalado (tela cheia no iPhone) */
header{padding-top:max(8px,env(safe-area-inset-top))}
.install-card{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:22px}
.install-card strong{display:block;font-family:var(--display);font-size:16px}
.install-card p{margin:4px 0 0;font-size:13.5px;color:var(--muted)}
.install-actions{display:flex;gap:8px}
#alerts.on-vou{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 14%,transparent)}

/* Edição de jogador */
.edit-sheet form{display:grid;gap:2px}
.edit-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.edit-head h2{margin:0}
.edit-head .avatar{width:48px;height:48px}
.edit-sheet .check{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text);margin:4px 0 14px}
.edit-sheet .check input{margin:0}
.row .icon-button{flex:none}
.row-main[data-edit-row]{cursor:pointer}
.hero .actions .button{white-space:nowrap;min-width:0;padding-left:10px;padding-right:10px}

.profile-names h1{margin:0}
.profile-names p{margin:2px 0 8px;color:var(--muted)}
.edit-sheet .grid.two{grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:420px){.edit-sheet .grid.two{grid-template-columns:1fr;gap:0}}
.edit-sheet .access{margin:6px 0 14px;padding:14px}
.edit-sheet .access .hint{margin:0 0 10px}
#lockscreen.on-vou{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 14%,transparent)}

/* Editor de blinds no jogo */
.struct-sheet{max-width:620px}
.lvl-list{display:grid;gap:6px;max-height:52dvh;overflow:auto;margin:6px 0 12px;padding-right:2px}
.lvl{display:grid;grid-template-columns:62px 1fr auto;grid-template-areas:"now name ops" "now blinds min";align-items:center;gap:6px 10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface-2)}
.lvl.now{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}
.lvl.intervalo{background:color-mix(in srgb,var(--blue) 10%,var(--surface-2))}
.lvl-now{grid-area:now;min-height:52px;padding:4px;font-size:13px}
.lvl-name{grid-area:name;font-weight:700;font-size:14px}
.lvl-blinds{grid-area:blinds;display:flex;align-items:center;gap:6px}
.lvl-blinds input{width:72px;min-height:38px;margin:0;padding:6px 8px;text-align:center}
.lvl-min{grid-area:min;display:flex;align-items:center;gap:4px}
.lvl-min input{width:52px;min-height:38px;margin:0;padding:6px;text-align:center}
.lvl-ops{grid-area:ops;display:flex;gap:4px}
.lvl-ops button{min-height:32px;min-width:32px;padding:2px 8px;font-size:13px}
.lvl-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.lvl-tools .check{margin:0;font-size:13px;display:flex;gap:8px;align-items:center;color:var(--text)}
.lvl-tools .check input{margin:0}
#edit-blinds{flex:1;min-height:46px}
/* Tela de avisos */
.status-list{display:grid;gap:8px;margin:0 0 6px}
.status-list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}
.status-list dt{font-size:14px}.status-list dd{margin:0}
.steps{list-style:none;padding:0;margin:12px 0;display:grid;gap:8px}
.steps li{display:flex;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
.step-n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#14100A;font-weight:800;font-size:14px}
.steps strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:15px}
.steps p{margin:4px 0 0;font-size:14px;color:var(--muted)}
.steps p b{color:var(--text)}
.ios-ico{width:22px;height:22px;color:#0A84FF;flex:none}
.ios-app{width:28px;height:28px;border-radius:7px;box-shadow:0 1px 3px rgba(0,0,0,.35)}
.account-links{margin:6px 0 16px}
.warning{padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--danger) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);font-size:14px}
.lvl{grid-template-columns:56px minmax(0,1fr) auto;padding:10px}
.lvl-blinds input{width:62px;padding:6px 4px}
.lvl-min input{width:44px;padding:6px 2px}
.lvl-min small{font-size:11px}
.lvl-now{min-height:48px}

/* Relógio: barra enxuta + gaveta de ajustes */
.clock-bar{display:flex;justify-content:center;align-items:center;gap:8px;margin:12px 0 4px;flex-wrap:wrap}
.bar-btn{min-height:44px;padding:8px 14px;font-size:14px}
.bar-btn.icon-only{width:48px;padding:0}
.bar-btn.on{border-color:var(--accent);color:var(--accent)}
#mute.muted{color:var(--danger)}
.sound-on{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);animation:pulse 1.8s ease-in-out infinite}
.clock-tools{margin:10px 0 16px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);display:grid;gap:4px;animation:pop-in .15s ease-out}
.tools-title{margin:8px 8px 2px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.tool-row{display:block;width:100%;min-height:52px;padding:10px 12px;text-align:left;background:transparent;border:1px solid transparent;border-radius:12px;color:var(--text);font-size:15px;font-weight:650;text-transform:none;letter-spacing:0}
.tool-row:hover{background:var(--surface-2);opacity:1;text-decoration:none}
.tool-row b{display:block;font-weight:650}
.tool-row small{display:block;font-size:12.5px;font-weight:500;color:var(--muted);margin-top:1px}
.tool-row.on-vou{color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}
.tv .clock-bar,.tv .clock-tools{max-width:720px;margin-left:auto;margin-right:auto}

/* Sorteio: mesas, divisão e dealer */
.seat-form{max-width:520px}
.seat-config{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seat-config label{display:block;margin:0 0 6px}
.split-title{margin:4px 0 6px;font-size:13px;font-weight:600}
.split-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}
.split-grid label{margin:0;font-size:12.5px}
.split-grid input{margin-top:4px;text-align:center;font-family:var(--display);font-size:18px;font-weight:700}
.split-sum{margin:8px 0 0;font-size:13px;font-weight:600}
.split-sum.ok{color:var(--ok)}.split-sum.bad{color:var(--danger)}
.seat-form .check{display:flex;align-items:center;gap:10px;margin:4px 0;font-size:14px;color:var(--text)}
.seat-form .check input{margin:0}
.seat-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px}
.seat-block-head h2{margin:0}
.dealer-seat .dealer-chip{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#F6EEDC;color:#14100A;font-family:var(--display);font-weight:800;font-size:18px;border:3px dashed #C1121F;box-shadow:0 4px 12px rgba(0,0,0,.35)}
.dealer-seat .seat-name{color:var(--accent)}

/* Animações sem opacidade: se o navegador atrasar a animação, o conteúdo continua visível. */
@keyframes pop-in{from{transform:translateY(-6px)}}
@keyframes sheet-in{from{transform:translateY(24px)}}
#activate-sound{display:none!important}
#mute.sound-on{width:auto;padding:0 14px;gap:6px}
#mute.sound-on::after{content:"Ativar som";font-size:14px;font-weight:650}
.clock-bar{flex-wrap:nowrap}
@media(max-width:400px){.bar-btn{padding:8px 10px;font-size:13.5px}}
.seat-config .stepper{grid-template-columns:42px minmax(36px,1fr) 42px;gap:6px}
.seat-config .stepper input{padding:4px;min-width:0}
.seat-config .stepper button{min-width:0}

/* Dealer: recuo na lateral esquerda (oficial) e botão D na frente do jogador (rodízio) */
.poker-table{--felt-x:21%}
@media(min-width:700px){.poker-table{--felt-x:14%}}
.felt{overflow:visible}
.dealer-notch{position:absolute;left:-9px;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;background:var(--bg);border:9px solid #5A3A20;box-shadow:inset 0 0 0 2px rgba(227,184,90,.55);clip-path:inset(-2px -2px -2px 50%)}
.dealer-spot{position:absolute;left:calc(var(--felt-x) - 2px);top:50%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:3px;z-index:2}
.dealer-spot .seat-name{color:var(--accent);font-size:12px;font-weight:700}
.dealer-button{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#FFFFFF,#E9E3D3);color:#14100A;font-family:var(--display);font-weight:800;font-size:15px;border:2px solid #14100A;box-shadow:0 0 0 2px #F6EEDC,0 4px 10px rgba(0,0,0,.45)}
.dealer-spot .dealer-button{width:40px;height:40px;font-size:19px}
.button-spot{position:absolute;transform:translate(-50%,-50%);z-index:2;transition:left .35s,top .35s}
.seat.is-button .avatar{box-shadow:0 0 0 3px #F6EEDC,0 4px 12px rgba(0,0,0,.35)}
.seat.can-button{cursor:pointer}
.seat.can-button:hover .avatar{filter:brightness(1.12)}
.button-tools{display:flex;align-items:center;justify-content:center;gap:10px;margin:10px 0 2px;font-size:14px}
.button-tools span{text-align:center}
.hint.center{text-align:center;margin-top:2px}
.dealer-choice{margin:4px 0;padding:10px 12px}
.dealer-choice legend{font-size:13px}
.dealer-choice .opt{display:flex;gap:10px;align-items:flex-start;margin:6px 0;padding:10px;border:1px solid var(--border);border-radius:12px;color:var(--text);cursor:pointer}
.dealer-choice .opt:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.dealer-choice input{margin:3px 0 0;flex:none}
.dealer-choice b{display:block;font-size:14.5px}
.dealer-choice small{display:block;font-size:12.5px;margin-top:2px}
.dealer-choice input[type=radio]{width:20px;height:20px;min-height:0;padding:0;margin:2px 0 0;flex:none;accent-color:var(--accent)}
.dealer-choice .opt>span{flex:1;min-width:0}

/* Voltar ao app (página de aprender) */
.voltar-app{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:var(--r-btn,12px);background:var(--primary);color:var(--on-primary)!important;font-weight:700;font-size:14px;text-decoration:none!important;white-space:nowrap}

/* "?" redondo no canto direito */
#help.help-link{flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:16px;line-height:1;color:var(--muted);text-decoration:none!important;margin-left:2px}
#help.help-link:hover{color:var(--text)}

/* Meu bolso (gasto x ganho por semana) */
.fin-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.fin-head h2{margin:0}
.fin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}
.fin-stats>div{min-width:0;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;display:grid;gap:2px}
.fin-stats strong{font-size:clamp(12.5px,3.5vw,20px);white-space:nowrap;font-variant-numeric:tabular-nums}
.fin-v-ganho{color:#3FB27A}.fin-v-gasto{color:#E2555F}
.fin-graf{display:block;width:100%;height:auto;margin:4px 0}
.fin-eixo{stroke:var(--border-strong);stroke-width:1}
.fin-ganho,.fin-gasto{fill:none;stroke-width:4;stroke-linejoin:round;stroke-linecap:round}
.fin-ganho{stroke:#3FB27A}.fin-gasto{stroke:#E2555F;stroke-dasharray:6 5}
.fin-area-ganho{fill:#3FB27A;opacity:.12}
.fin-pt-ganho circle{fill:#3FB27A}.fin-pt-gasto circle{fill:#E2555F}
.fin-rot text{fill:var(--muted);font-size:22px;font-family:var(--display)}
.fin-leg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted)}
.fin-leg i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:3px}
.l-ganho{background:#3FB27A}.l-gasto{background:#E2555F}
.fin-lista{margin-top:10px}.fin-linha{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--border);font-size:14px}
.fin-linha small{display:block;font-size:12px;color:var(--muted)}.fin-linha>span:last-child{font-variant-numeric:tabular-nums;font-weight:700}

/* D · Apple: limpo, fonte do sistema (San Francisco no iPhone/Mac), azul iOS, cartões brancos sem borda */
html[data-style=apple]{--bg:#000000;--surface:#1C1C1E;--surface-2:#2C2C2E;--surface-3:#3A3A3C;--border:rgba(255,255,255,.08);--border-strong:rgba(255,255,255,.16);--text:#FFFFFF;--muted:#8E8E93;--accent:#0A84FF;--ok:#30D158;--danger:#FF453A;--blue:#0A84FF;
  --primary:#0A84FF;--on-primary:#FFFFFF;--ink:#FFFFFF;--felt-a:#1C1C1E;--felt-b:#1C1C1E;--glow:transparent;--shadow:none;
  --body:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",Inter,system-ui,sans-serif;--display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI Variable Display","Segoe UI",Inter,system-ui,sans-serif;--mono:var(--display);
  --r-card:14px;--r-hero:20px;--r-btn:12px;--r-pill:99px;--avatar-r:50%;--ls-btn:-.01em;
  --hero-bg:#1C1C1E;--hero-border:transparent;--hero-text:#FFFFFF;--hero-muted:#8E8E93;
  --clock-bg:#1C1C1E;--clock-text:#FFFFFF;--clock-muted:#8E8E93;--clock-tile:#2C2C2E;--timer-color:#FFFFFF;--timer-glow:none;--tv-timer:#FFFFFF}
html[data-style=apple][data-theme=light]{--bg:#F2F2F7;--surface:#FFFFFF;--surface-2:#F2F2F7;--surface-3:#E5E5EA;--border:rgba(60,60,67,.12);--border-strong:rgba(60,60,67,.24);--text:#000000;--muted:#6C6C70;--accent:#007AFF;--ok:#248A3D;--danger:#D70015;--blue:#007AFF;
  --primary:#007AFF;--on-primary:#FFFFFF;--ink:#FFFFFF;--glow:transparent;--shadow:0 1px 2px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.04);
  --hero-bg:#FFFFFF;--hero-text:#000000;--hero-muted:#6C6C70;--clock-bg:#FFFFFF;--clock-text:#000000;--clock-muted:#6C6C70;--clock-tile:#F2F2F7;--timer-color:#000000;--tv-timer:#000000}
html[data-style=apple] body{background:var(--bg);-webkit-font-smoothing:antialiased}
html[data-style=apple] h1,html[data-style=apple] h2,html[data-style=apple] h3{font-family:var(--display);font-weight:700;letter-spacing:-.022em}
html[data-style=apple] h1{font-size:clamp(30px,6vw,40px)}
html[data-style=apple] .eyebrow{color:var(--muted);letter-spacing:.02em;text-transform:none;font-size:13px;font-weight:600}
html[data-style=apple] .card,html[data-style=apple] fieldset,html[data-style=apple] .list,html[data-style=apple] .player,html[data-style=apple] .stats>div,html[data-style=apple] .table-scroll{border-color:transparent}
html[data-style=apple] .hero,html[data-style=apple] body:not(.tv) .clock{border:0;box-shadow:var(--shadow)}
html[data-style=apple] .hero:after{display:none}
html[data-style=apple] button,html[data-style=apple] .button{font-weight:600;box-shadow:none}
html[data-style=apple] .secondary{background:var(--surface-3);color:var(--accent);border-color:transparent}
html[data-style=apple][data-theme=light] .secondary{background:rgba(0,122,255,.1)}
html[data-style=apple] .icon-button.secondary{color:var(--text)}
html[data-style=apple] .timer{font-family:var(--display);font-weight:200;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
html[data-style=apple] body:not(.tv) .blind{color:var(--text);font-weight:600}
html[data-style=apple] .pill{background:var(--surface-3);border-color:transparent;color:var(--text);font-weight:600}
html[data-style=apple] header{background:color-mix(in srgb,var(--bg) 72%,transparent);border-bottom:.5px solid var(--border)}
html[data-style=apple] .bottom-nav{background:color-mix(in srgb,var(--surface) 78%,transparent);border-top:.5px solid var(--border)}
html[data-style=apple] .bottom-nav [aria-current=page]{color:var(--accent)}
html[data-style=apple] input,html[data-style=apple] select,html[data-style=apple] textarea{background:var(--surface-2);border-color:transparent;border-radius:10px}
html[data-style=apple] input:focus,html[data-style=apple] select:focus,html[data-style=apple] textarea:focus{border-color:var(--accent)}
html[data-style=apple] dialog{border:0}
html[data-style=apple] .chip{--chip-color:var(--accent)}
html[data-style=apple] .col-abas button.ativo,html[data-style=apple] .col-pos button.ativo{color:#fff}
@media(max-width:420px){.voltar-app .vt{display:none}.voltar-app{padding:8px 12px}}
html[data-style=apple] #auth{background:var(--surface-3);color:var(--accent);border-color:transparent}
html[data-style=apple][data-theme=light] #auth{background:rgba(0,122,255,.1)}

/* E · Vidro (Liquid Glass, estilo iOS novo): fundo colorido desfocado, tudo em vidro translúcido */
html[data-style=vidro]{--bg:#0B1020;--surface:rgba(255,255,255,.08);--surface-2:rgba(255,255,255,.10);--surface-3:rgba(255,255,255,.16);--border:rgba(255,255,255,.16);--border-strong:rgba(255,255,255,.30);--text:#FFFFFF;--muted:rgba(235,240,255,.66);--accent:#7CC4FF;--ok:#5FE3A1;--danger:#FF7A85;--blue:#7CC4FF;
  --primary:rgba(255,255,255,.92);--on-primary:#0B1020;--ink:#0B1020;--felt-a:transparent;--felt-b:transparent;--glow:transparent;
  --glass-blur:blur(26px) saturate(180%);--glass-edge:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(255,255,255,.06);--shadow:0 10px 30px rgba(0,0,0,.25);
  --body:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",Inter,system-ui,sans-serif;--display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI Variable Display","Segoe UI",Inter,system-ui,sans-serif;--mono:var(--display);
  --r-card:26px;--r-hero:30px;--r-btn:99px;--r-pill:99px;--avatar-r:50%;--ls-btn:-.01em;
  --hero-bg:rgba(255,255,255,.10);--hero-border:rgba(255,255,255,.22);--hero-text:#FFFFFF;--hero-muted:rgba(235,240,255,.7);
  --clock-bg:rgba(255,255,255,.08);--clock-text:#FFFFFF;--clock-muted:rgba(235,240,255,.7);--clock-tile:rgba(255,255,255,.08);--timer-color:#FFFFFF;--timer-glow:0 2px 30px rgba(124,196,255,.35);--tv-timer:#FFFFFF;
  --wall:radial-gradient(60% 50% at 12% 8%,#3B5BFF 0,transparent 70%),radial-gradient(55% 45% at 92% 18%,#C04BFF 0,transparent 70%),radial-gradient(60% 55% at 70% 92%,#00B3A4 0,transparent 70%),radial-gradient(50% 45% at 8% 85%,#FF6A3D 0,transparent 70%),#0B1020}
html[data-style=vidro][data-theme=light]{--bg:#EEF1FA;--surface:rgba(255,255,255,.55);--surface-2:rgba(255,255,255,.55);--surface-3:rgba(255,255,255,.75);--border:rgba(255,255,255,.75);--border-strong:rgba(20,30,60,.16);--text:#0B1020;--muted:rgba(20,28,50,.6);--accent:#0A63E0;--ok:#138A52;--danger:#D2283B;--blue:#0A63E0;
  --primary:rgba(11,16,32,.88);--on-primary:#FFFFFF;--ink:#FFFFFF;
  --glass-edge:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(255,255,255,.35);--shadow:0 10px 30px rgba(40,50,90,.12);
  --hero-bg:rgba(255,255,255,.5);--hero-border:rgba(255,255,255,.8);--hero-text:#0B1020;--hero-muted:rgba(20,28,50,.6);
  --clock-bg:rgba(255,255,255,.5);--clock-text:#0B1020;--clock-muted:rgba(20,28,50,.6);--clock-tile:rgba(255,255,255,.55);--timer-color:#0B1020;--timer-glow:none;--tv-timer:#0B1020;
  --wall:radial-gradient(60% 50% at 12% 8%,#9DB4FF 0,transparent 70%),radial-gradient(55% 45% at 92% 18%,#F0B8FF 0,transparent 70%),radial-gradient(60% 55% at 70% 92%,#9FF0E2 0,transparent 70%),radial-gradient(50% 45% at 8% 85%,#FFD0B5 0,transparent 70%),#EEF1FA}
html[data-style=vidro] body{background:transparent;-webkit-font-smoothing:antialiased}
html[data-style=vidro] body::before{content:'';position:fixed;inset:0;z-index:-1;background:var(--wall);pointer-events:none}
html[data-style=vidro] .card,html[data-style=vidro] fieldset,html[data-style=vidro] .hero,html[data-style=vidro] body:not(.tv) .clock,html[data-style=vidro] .list,html[data-style=vidro] .player,html[data-style=vidro] .table-scroll,html[data-style=vidro] .stats>div,html[data-style=vidro] .empty,html[data-style=vidro] dialog,html[data-style=vidro] .popmenu,html[data-style=vidro] .col-maos li,html[data-style=vidro] .col-video,html[data-style=vidro] .fin-stats>div{
  background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge),var(--shadow)}
html[data-style=vidro] .hero{background:var(--hero-bg);border-color:var(--hero-border)}
html[data-style=vidro] .hero:after{display:none}
html[data-style=vidro] dialog{background:color-mix(in srgb,var(--bg) 55%,transparent)}
html[data-style=vidro] dialog::backdrop{background:rgba(5,8,20,.35);backdrop-filter:blur(6px)}
html[data-style=vidro] header{background:transparent;border-bottom:0}
html[data-style=vidro] header>*:not(a:first-child){-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
html[data-style=vidro] .bottom-nav{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));width:auto;border-radius:99px;background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge),var(--shadow);padding-bottom:6px}
html[data-style=vidro] .bottom-nav [aria-current=page]{color:var(--accent)}
html[data-style=vidro] button,html[data-style=vidro] .button{font-weight:600;box-shadow:var(--glass-edge)}
html[data-style=vidro] .secondary,html[data-style=vidro] #auth,html[data-style=vidro] .icon-button{background:var(--surface-3);color:var(--text);border:1px solid var(--border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge)}
html[data-style=vidro] .pill{background:var(--surface-3);border:1px solid var(--border);color:var(--text)}
html[data-style=vidro] input,html[data-style=vidro] select,html[data-style=vidro] textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;color:var(--text)}
html[data-style=vidro] h1,html[data-style=vidro] h2,html[data-style=vidro] h3{font-family:var(--display);font-weight:700;letter-spacing:-.022em}
html[data-style=vidro] .eyebrow{color:var(--muted);letter-spacing:.02em;text-transform:none;font-size:13px;font-weight:600}
html[data-style=vidro] .timer{font-family:var(--display);font-weight:200;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
html[data-style=vidro] body:not(.tv) .blind{color:var(--text);font-weight:600}
html[data-style=vidro] th{background:transparent}
html[data-style=vidro] .col-abas button.ativo,html[data-style=vidro] .col-pos button.ativo{color:var(--on-primary)}
@media (prefers-reduced-transparency:reduce){html[data-style=vidro]{--surface:rgba(30,36,60,.92);--surface-2:rgba(40,46,72,.95);--surface-3:rgba(55,62,90,.95)}html[data-style=vidro][data-theme=light]{--surface:rgba(255,255,255,.94);--surface-2:rgba(245,247,252,.96);--surface-3:#fff}}

/* menu de baixo: as colunas seguem só os itens visíveis (o "Mais" some para quem não é admin) */
.bottom-nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
html[data-style=vidro] main{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
html[data-style=vidro] .bottom-nav{background:rgba(16,20,36,.58)}
html[data-style=vidro][data-theme=light] .bottom-nav{background:rgba(255,255,255,.72)}
html[data-style=vidro] .bottom-nav a{color:rgba(240,244,255,.78)}
html[data-style=vidro][data-theme=light] .bottom-nav a{color:rgba(20,28,50,.62)}

/* Vidro em cima do feltro do cassino (sem as bolas coloridas) */
html[data-style=vidro]{--bg:#0A2219;--accent:#E8C678;--blue:#E8C678;--primary:linear-gradient(180deg,#E8C678,#C79A3F);--on-primary:#1A1405;--ink:#1A1405;--timer-glow:0 2px 30px rgba(232,198,120,.3);
  --wall:radial-gradient(120% 80% at 50% 0,#1D6447 0,#123F2E 45%,#0A2219 80%),#0A2219}
html[data-style=vidro][data-theme=light]{--bg:#F3EEDF;--accent:#8B6610;--blue:#8B6610;--primary:linear-gradient(180deg,#1C5A41,#134030);--on-primary:#F6EEDC;--ink:#F6EEDC;
  --wall:radial-gradient(120% 80% at 50% 0,#FFFDF6 0,#F3EEDF 50%,#E6DCC2 100%),#F3EEDF}
html[data-style=vidro] .bottom-nav{background:rgba(8,28,20,.6)}
html[data-style=vidro][data-theme=light] .bottom-nav{background:rgba(255,253,246,.75)}
/* sem caixa de vidro atrás do menu do topo no computador: só os botões são de vidro */
html[data-style=vidro] header>*:not(a:first-child){-webkit-backdrop-filter:none;backdrop-filter:none}
html[data-style=vidro] header .icon-button,html[data-style=vidro] header #auth{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
/* item de lista dentro de lista de vidro não ganha outra caixa */
html[data-style=vidro] .list .player,html[data-style=vidro] .list .row{background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
html[data-style=vidro] header{background:color-mix(in srgb,var(--bg) 55%,transparent);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border)}

/* Ícones e respiro padronizado: botões, abas e quadros de números */
.ico{flex:none;display:inline-block;vertical-align:-3px}
.button .ico,button .ico{margin-right:2px;opacity:.9}
.stats{gap:10px;margin:16px 0}
.stats>div{display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-height:74px;padding:12px 14px}
.stats small{display:flex;align-items:center;gap:6px;line-height:1.2;text-transform:uppercase}
.stats small .ico{opacity:.75;vertical-align:0}
.stats strong{margin:0;letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.1}
.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px}
.tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:9px 6px;font-size:13.5px}
.tabs button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tabs button .ico{margin:0}
@media(max-width:480px){.tabs button{flex-direction:column;gap:3px;padding:8px 4px;font-size:11.5px;min-height:56px}}
.page-head .actions{gap:8px}
.hero .actions{gap:8px}
html[data-style=vidro] .stats>div{border-radius:20px}
html[data-style=vidro] .tabs{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge)}
.stats small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:480px){.stats{gap:8px}.stats>div{padding:11px 10px;min-height:70px}.stats small{font-size:9.5px;letter-spacing:.04em;gap:5px}.stats small .ico{width:13px;height:13px}
 .tabs{gap:4px;padding:5px}.tabs button{font-size:11px;padding:8px 2px;letter-spacing:-.01em}}

/* Ícones nas outras telas: itens de menu (estilo Ajustes do iPhone), títulos e botões */
.row .row-ico{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--c);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.row .row-ico .ico{vertical-align:0}
a.row:has(.row-ico){gap:14px}
h2>.ico,summary>.ico{margin-right:8px;color:var(--accent);vertical-align:-3px}
h2:has(>.ico){display:flex;align-items:center}
summary>.ico{vertical-align:-3px}
.fin-stats small{display:flex;align-items:center;gap:5px}
.fin-stats>div{display:flex;flex-direction:column;justify-content:space-between;gap:6px;min-height:64px}
.actions .button,.actions button{gap:6px}

.perfil-topo{display:flex;align-items:center;gap:16px;margin:0 0 16px}
.perfil-topo .avatar.large{width:72px;height:72px;font-size:26px;flex:none}
.perfil-topo h2{margin:0 0 2px}
.perfil-topo small{color:var(--muted);font-size:13px}
.hero .actions .button,.presence-options button,.page-head .actions .button{white-space:nowrap;gap:6px}
@media(max-width:480px){
 .hero .actions .button,.presence-options button,.page-head .actions .button{padding:10px 8px;font-size:13.5px;gap:5px;min-width:0}
 .hero .actions .button .ico,.presence-options button .ico,.page-head .actions .button .ico{width:15px;height:15px}
}
@media(max-width:360px){.hero .actions .button .ico,.presence-options button .ico{display:none}}
@media(max-width:480px){html[data-style=esportivo] button,html[data-style=esportivo] .button{letter-spacing:.01em;padding-left:6px;padding-right:6px}
 html[data-style=esportivo] .tabs button{font-size:10px}html[data-style=esportivo] .hero .actions .button{font-size:12.5px}}
@media(max-width:480px){html[data-style=esportivo] .hero .actions .button .ico{display:none}}

.foto-zona{display:grid;gap:8px;padding:14px;border:1.5px dashed var(--border-strong);border-radius:16px;background:var(--surface-2);transition:border-color .15s,background .15s}
.foto-zona.arrastando{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}
.foto-zona-txt{display:grid;gap:2px}.foto-zona-txt strong{color:var(--text);font-size:14px}
.foto-zona input{margin-top:0}

/* Foto do campeão (opcional) */
.foto-noite{margin:18px 0}
.foto-noite-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.foto-noite-head h2{margin:0}
.foto-noite img{display:block;width:100%;max-height:70vh;object-fit:cover;border-radius:16px;margin:0 0 12px}
.foto-noite .actions{margin:0;flex-wrap:wrap}.foto-noite label.button{cursor:pointer}
.foto-noite.enviando{opacity:.6;pointer-events:none}
.row-campeao{flex:none;width:44px;height:44px;border-radius:12px;object-fit:cover;border:1px solid var(--border)}
.foto-camera{margin-top:10px;cursor:pointer}
@media (hover:hover) and (pointer:fine){.foto-camera{display:none!important}}
.foto-noite .actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
.foto-noite .actions>*{white-space:nowrap;padding-left:8px;padding-right:8px;font-size:13.5px;gap:6px}

.edit-foto{margin:4px 0 14px}.edit-foto .foto-zona{padding:12px}
