/* font Archivo servito dal sito */
@font-face{font-family:"Archivo";font-style:normal;font-weight:400 900;font-stretch:62% 125%;font-display:swap;src:url(/assets/fonts/archivo-latin-wdth-var.4c98b9d490.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* src/styles.css */
/* Gran Premio del Pranzo: stili comuni (pagina, tabellone a palette, palco, comandi, programma locale).
   Linguaggio visivo: una sala d'attesa di stazione (fascia blu notte in testa col tabellone a palette),
   segnaletica milanese (etichette strette in maiuscolo, righe nette, numeri grandi) e grafica sportiva
   televisiva sul palco. Colori portanti: blu notte e cobalto. Verde solo per ciò che è vivo o tocca a te
   (gara in corso, spinta, "tu", via). Azzurro e viola per dettagli rari. Angoli quasi vivi, righe al posto delle ombre.
   Font: Archivo, con l'asse della larghezza (62-125%) per passare dalle etichette strette ai titoli larghi. */
:root{
  box-sizing:border-box;
  /* colori fissi: sala, tabellone e palco sono scuri in entrambi i temi */
  --navy:#0B1F3A;--navy-2:#032D42;--navy-3:#07162B;--navy-4:#12294A;
  --cobalt:#00338D;--azure:#0091DA;--violet:#483698;
  --live:#62D84E;--live-hover:#79E466;--live-ink:#0B1F3A;--live-edge:#2F8A22;
  --flap-ink:#F4F7FB;--flap-ink-2:#8CCBF0;
  --hud:rgba(7,22,43,.86);--hud-solid:#0B1F3A;--hud-soft:#A9B8CC;--hud-line:rgba(255,255,255,.12);
  --on-dark:#EAF0F7;--on-dark-soft:#A9B8CC;
  --focus-dark:#62D84E;
  --danger:#C8102E;
  /* superfici e testo: tema chiaro */
  --paper:#F2F4F7;--panel:#FFFFFF;--sunk:#E6EAF0;--ink:#0B1F3A;--ink-soft:#4A5B73;
  --line:#D3DAE4;--line-ui:#7B8BA3;--rule:#0B1F3A;--field:#FFFFFF;
  --accent:#00338D;--btn:#00338D;--btn-hover:#00277A;--btn-ink:#FFFFFF;
  --live-text:#1E7B1A;--focus:#00338D;--danger-ink:#B00E28;--win:#00338D;
  --sel:#0B1F3A;--sel-ink:#FFFFFF;
  --font:"Archivo","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --gut:clamp(16px,3vw,32px);--maxw:1240px;
  color-scheme:light;
}
/* tema scuro: non un'inversione, una sala di sera. Fondo più profondo della fascia, testi azzurrati */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){--paper:#061527;--panel:#0B1F3A;--sunk:#081A31;--ink:#EAF0F7;--ink-soft:#9DB0C8;--line:#1C3556;--line-ui:#6E86A8;--rule:#C9D6E6;--field:#081A31;--accent:#8FB8FF;--btn:#2F5FC4;--btn-hover:#3A6FD8;--live-text:#62D84E;--focus:#62D84E;--danger-ink:#FF8A8F;--win:#62D84E;--sel:#EAF0F7;--sel-ink:#0B1F3A;color-scheme:dark;}
}
:root[data-theme="dark"]{--paper:#061527;--panel:#0B1F3A;--sunk:#081A31;--ink:#EAF0F7;--ink-soft:#9DB0C8;--line:#1C3556;--line-ui:#6E86A8;--rule:#C9D6E6;--field:#081A31;--accent:#8FB8FF;--btn:#2F5FC4;--btn-hover:#3A6FD8;--live-text:#62D84E;--focus:#62D84E;--danger-ink:#FF8A8F;--win:#62D84E;--sel:#EAF0F7;--sel-ink:#0B1F3A;color-scheme:dark;}
html{scroll-padding-top:env(safe-area-inset-top,0px);background:var(--paper);}
*,*::before,*::after{box-sizing:border-box;}
[hidden]{display:none !important;}
body{margin:0;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
button,input,select{font:inherit;color:inherit;}
button{-webkit-tap-highlight-color:transparent;}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
/* sulle superfici scure (sala, palco, tabellone, schede) il contorno è verde */
.hall :focus-visible,.stage :focus-visible,.caller :focus-visible,.arena.fs :focus-visible{outline-color:var(--focus-dark);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut) 72px;}

/* ---------- Sala: testata e tabellone ---------- */
.hall{background:var(--navy);color:var(--on-dark);padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid rgba(255,255,255,.06);}
.hall-in{max-width:var(--maxw);margin:0 auto;padding:clamp(18px,3vw,36px) var(--gut) clamp(18px,3vw,32px);}
.masthead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 40px;margin-bottom:clamp(16px,2.4vw,26px);}
.masthead h1{margin:0;font-weight:900;font-stretch:122%;font-size:clamp(34px,6.4vw,80px);line-height:.86;letter-spacing:-.03em;color:#fff;}
.masthead .meta{max-width:36ch;margin:0;padding-top:10px;border-top:2px solid rgba(255,255,255,.22);color:var(--on-dark-soft);font-size:14.5px;line-height:1.45;}
.masthead .meta strong{display:block;margin-bottom:3px;color:#fff;font-weight:700;font-stretch:87.5%;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;}
.masthead .meta strong:first-letter{text-transform:uppercase;}
.masthead .meta a{color:#fff;font-weight:700;text-underline-offset:3px;text-decoration-color:var(--live);text-decoration-thickness:2px;}

/* tabellone a palette: pannello appeso nella sala, palette blu con le lettere bianche; la seconda riga in azzurro */
.board{position:relative;background:var(--navy-3);border-radius:3px;padding:clamp(10px,1.6vw,18px) clamp(10px,1.6vw,18px) clamp(12px,1.8vw,20px);color:var(--flap-ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),0 1px 0 rgba(255,255,255,.05);}
.board-head{display:flex;align-items:center;gap:14px;margin:0 1px 12px;font-stretch:87.5%;font-size:clamp(12px,1.25vw,14px);letter-spacing:.09em;text-transform:uppercase;line-height:1.2;}
.board-title{color:#fff;font-weight:800;white-space:nowrap;}
.board-status{position:relative;color:var(--on-dark-soft);font-weight:600;flex:1 1 0;width:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.board-clock{padding:3px 7px 2px;border-radius:2px;background:#fff;color:var(--navy);font-weight:800;font-stretch:100%;letter-spacing:.02em;font-variant-numeric:tabular-nums;}
.board-clock:empty{display:none;}
/* con una gara in arrivo o in corso lo stato ha la spia verde */
body.lv-coming .board-status,body.lv-race .board-status{padding-left:16px;color:#fff;}
body.lv-coming .board-status::before,body.lv-race .board-status::before{content:"";position:absolute;left:0;top:50%;width:9px;height:9px;margin-top:-5px;border-radius:50%;background:var(--live);box-shadow:0 0 0 3px rgba(98,216,78,.22);}
body.lv-race .board-status::before{animation:spia 1.6s ease-in-out infinite;}
@keyframes spia{50%{box-shadow:0 0 0 6px rgba(98,216,78,0)}}
.flaps{display:grid;gap:clamp(2px,.36vw,5px);}
.flaps + .flaps{margin-top:clamp(5px,.7vw,9px);}
.flap{position:relative;aspect-ratio:5/7;container-type:inline-size;perspective:320px;border-radius:2px;background:#132846;box-shadow:0 1px 0 rgba(0,0,0,.55),0 0 0 1px rgba(0,0,0,.25);}
.flaps.small .flap{aspect-ratio:5/6.2;}
.flap .h{position:absolute;left:0;right:0;height:50%;overflow:hidden;}
.flap .top{top:0;border-radius:2px 2px 0 0;transform-origin:50% 100%;background:linear-gradient(#1B3459,#162D50);}
.flap .bot{bottom:0;border-radius:0 0 2px 2px;transform-origin:50% 0;background:linear-gradient(#12284A,#183156);}
.flap .h span{position:absolute;left:0;right:0;height:200%;display:flex;align-items:center;justify-content:center;font-size:clamp(10px,3vw,40px);font-size:100cqw;font-weight:700;font-stretch:75%;line-height:1;color:var(--flap-ink);}
.flaps.small .flap .h span{color:var(--flap-ink-2);font-size:90cqw;font-weight:650;}
.flap .top span{top:0;}
.flap .bot span{bottom:0;}
.flap .leaf{visibility:hidden;z-index:2;backface-visibility:hidden;}
/* fessura tra le due palette e i perni ai lati */
.flap::after{content:"";position:absolute;left:0;right:0;top:calc(50% - .5px);height:1px;background:rgba(3,10,22,.9);z-index:3;}
.flaps.big .flap::before{content:"";position:absolute;left:-1px;right:-1px;top:calc(50% - 2px);height:4px;z-index:4;background:linear-gradient(90deg,#030A16 2px,transparent 2px calc(100% - 2px),#030A16 0);pointer-events:none;}
@media (max-width:640px){.flaps.big .flap::before{display:none;}}

/* ---------- Palco ---------- */
.stage{position:relative;margin-top:clamp(16px,2.2vw,24px);border-radius:3px 3px 0 0;overflow:hidden;background:linear-gradient(#8fb3d9,#cfe0ee 55%,#3f7d3a 56%);aspect-ratio:16/9;min-height:280px;isolation:isolate;}
@media (max-width:640px){.stage{aspect-ratio:4/5;}}
#gl{position:absolute;inset:0;width:100%;height:100%;display:block;transition:filter .25s ease;}
.stage.photo #gl{filter:grayscale(1) contrast(1.25) brightness(1.05);}
.labels{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2;}
.hlabel{position:absolute;left:0;top:0;display:flex;align-items:center;gap:5px;padding:2px 8px 2px 2px;border-radius:3px;background:rgba(7,22,43,.8);color:#fff;font-size:12px;font-weight:650;font-stretch:87.5%;line-height:1.2;white-space:nowrap;will-change:transform;transition:opacity .2s,background .2s;}
.hlabel.lead{background:#fff;color:var(--navy);}
.hlabel.lead .lw{opacity:.66;}
.hlabel.boost{box-shadow:0 0 0 2px #ffb020;}
.hlabel.slow{box-shadow:0 0 0 2px #e0503a;}
.hlabel .lw{font-weight:500;opacity:.72;}
.hlabel .lw:empty{display:none;}
.hlabel img{width:22px;height:22px;margin:-4px -4px -4px 0;object-fit:contain;}
.cloth{flex:none;display:inline-grid;place-items:center;min-width:26px;height:22px;padding:0 4px;border-radius:2px;background:var(--c-bg);color:var(--c-fg);font-weight:800;font-stretch:100%;font-size:13px;line-height:1;box-shadow:inset 0 0 0 1px rgba(0,0,0,.22);font-variant-numeric:tabular-nums;}
.hlabel .cloth{min-width:20px;height:18px;font-size:11px;}
/* ---------- Palco: elementi comuni sopra la scena ----------
   Come una grafica televisiva: pannelli blu notte quasi opachi, angoli vivi, cifre tabellari.
   Desktop: comandi in alto a sinistra, distanza in alto a destra, classifica sotto i comandi,
   didascalia della telecamera in alto al centro.
   Schermi stretti: la didascalia passa sotto la classifica (.hudcol), così non si sovrappongono;
   sul telefono tutto si fa più compatto per lasciare libera la scena. */
.hud{position:absolute;z-index:3;background:var(--hud);color:#fff;border-radius:3px;}
.hudcol{display:contents;}
.standings{left:10px;top:58px;margin:0;padding:6px 10px 6px 0;list-style:none;font-size:13px;width:min(42%,300px);border-left:3px solid var(--live);}
.standings li{display:grid;grid-template-columns:2.1em auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:2px 0;}
.standings .p{font-weight:800;font-stretch:87.5%;font-variant-numeric:tabular-nums;color:#fff;text-align:right;}
.standings li:first-child .p{color:var(--live);}
.standings .n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650;}
.standings .w{color:var(--hud-soft);font-weight:500;}
.standings img{width:20px;height:20px;object-fit:contain;}
.stage.racing .standings li:nth-child(n+6){display:none;}
.stage.done .standings,.stage.done .dist{display:none;}
.dist{right:10px;top:10px;padding:6px 11px 6px 12px;font-weight:750;font-stretch:87.5%;font-variant-numeric:tabular-nums;font-size:14px;letter-spacing:.02em;text-align:right;line-height:1.25;}
.dist small{display:block;font-weight:650;font-size:12px;color:var(--hud-soft);}
.stage.racing .dist{box-shadow:inset 0 -3px 0 var(--live);}
.countdown{position:absolute;inset:0;z-index:5;display:grid;place-items:center;pointer-events:none;color:#fff;font-weight:900;font-stretch:125%;font-size:clamp(64px,14vw,170px);line-height:1;text-shadow:0 4px 0 rgba(3,10,22,.35),0 0 40px rgba(3,10,22,.45);-webkit-text-stroke:2px rgba(7,22,43,.55);opacity:0;}
.countdown.pop{animation:cd .7s ease-out forwards;}
@keyframes cd{0%{opacity:0;transform:scale(1.5)}18%{opacity:1;transform:scale(1)}78%{opacity:1}100%{opacity:0;transform:scale(.92)}}
.flash{position:absolute;inset:0;z-index:6;background:#fff;opacity:0;pointer-events:none;}
.flash.on{animation:fl .45s ease-out;}
@keyframes fl{0%{opacity:.9}100%{opacity:0}}
/* scheda del vincitore: una grafica da diretta in alto sopra la scena (tribuna e cielo), la scena del vincitore resta libera.
   Fascia cobalto con l'etichetta, nome grande, riga di chi prenota, pulsante per l'esportazione */
.wcard{position:absolute;z-index:4;left:50%;top:clamp(10px,2.4vw,20px);transform:translateX(-50%);min-width:min(86%,440px);max-width:92%;padding:0 0 16px;text-align:left;background:rgba(7,22,43,.95);color:#fff;border-radius:3px;overflow:hidden;box-shadow:0 18px 40px rgba(3,10,22,.4);border-bottom:4px solid var(--live);}
.wcard.show{animation:wc .45s cubic-bezier(.2,1.2,.4,1) both;}
@keyframes wc{from{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%,0)}}
.wcard .k{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:7px 18px 6px;background:var(--cobalt);color:#fff;font-weight:800;font-stretch:87.5%;font-size:13px;letter-spacing:.12em;text-transform:uppercase;}
.wcard .k::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.35);}
.wcard strong{display:block;padding:0 20px;font-weight:900;font-stretch:118%;font-size:clamp(26px,4.4vw,48px);line-height:1;letter-spacing:-.015em;margin:0 0 10px;overflow-wrap:anywhere;}
.wcard .who{display:inline-flex;align-items:center;gap:9px;padding:0 20px;font-weight:650;font-size:17px;color:var(--on-dark);}
.nogl{position:absolute;inset:0;z-index:1;display:grid;place-items:center;padding:24px;text-align:center;color:#fff;background:var(--navy-2);font-weight:600;}

/* telecronaca: la striscia sotto il palco, come il sottopancia di una diretta */
.caller{display:flex;gap:14px;align-items:flex-start;padding:12px 16px 14px;background:var(--navy);color:var(--on-dark);border-radius:0 0 3px 3px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.caller .mic{flex:none;display:block;margin-top:2px;}
.caller .mic-l{display:block;padding:3px 7px 2px;border:1px solid rgba(255,255,255,.35);border-radius:2px;color:var(--on-dark-soft);font-weight:700;font-stretch:87.5%;font-size:11px;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;}
body.lv-race .caller .mic-l,.stage.racing + .caller .mic-l{border-color:var(--live);color:var(--live);}
.caller-body{min-width:0;flex:1;}
#call{margin:0;font-weight:600;font-size:clamp(15px,1.7vw,18px);line-height:1.4;min-height:1.4em;color:#fff;}
#call.in{animation:callin .3s ease-out;}
@keyframes callin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.order{list-style:none;margin:10px 0 0;padding:10px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px;border-top:1px solid rgba(255,255,255,.12);}
.order li{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--on-dark-soft);}
.order li:first-child{color:#fff;font-weight:700;}
.order .pos{font-weight:800;font-stretch:87.5%;font-variant-numeric:tabular-nums;}
.order li:first-child .pos{color:var(--live);}
.order .cloth{min-width:20px;height:18px;font-size:11px;}

/* ---------- Comandi sotto il palco ---------- */
.controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:18px;}
/* via: verde come il semaforo */
.go{display:inline-flex;align-items:center;gap:14px;min-height:56px;border:0;border-radius:3px;padding:0 22px 0 24px;background:var(--live);color:var(--live-ink);font-weight:850;font-stretch:112%;font-size:clamp(18px,2.1vw,21px);letter-spacing:-.005em;cursor:pointer;box-shadow:inset 0 -4px 0 var(--live-edge);transition:background .15s;}
.go:hover{background:var(--live-hover);}
.go:active{transform:translateY(1px);box-shadow:inset 0 -2px 0 var(--live-edge);}
.go:disabled{background:var(--sunk);color:var(--ink-soft);box-shadow:inset 0 0 0 1px var(--line);cursor:default;transform:none;}
.go kbd{font:inherit;font-size:11px;font-weight:750;font-stretch:87.5%;letter-spacing:.08em;text-transform:uppercase;padding:3px 6px 2px;border-radius:2px;box-shadow:inset 0 0 0 1.5px currentColor;opacity:.75;}
@media (hover:none){.go kbd{display:none;}}
.pulegend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;flex:1;min-width:0;}
.pulegend li{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.3;color:var(--ink-soft);}
.pulegend b{color:var(--ink);font-weight:700;}
.pulegend img{width:36px;height:36px;object-fit:contain;}
.seg{display:inline-flex;border:1px solid var(--line-ui);border-radius:3px;padding:2px;background:var(--panel);}
.seg input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}
.seg label{display:inline-flex;align-items:baseline;min-height:40px;align-items:center;padding:0 13px;border-radius:2px;cursor:pointer;font-weight:700;font-size:14.5px;color:var(--ink-soft);white-space:nowrap;}
.seg label small{font-weight:600;font-stretch:87.5%;opacity:.85;margin-left:6px;font-size:12px;letter-spacing:.02em;}
.seg input:checked + label{background:var(--sel);color:var(--sel-ink);}
.seg input:focus-visible + label{outline:3px solid var(--focus);outline-offset:1px;}
.seg input:disabled + label{cursor:default;opacity:.6;}
.ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line-ui);background:transparent;border-radius:3px;padding:0 14px;cursor:pointer;font-size:14.5px;font-weight:650;color:var(--ink);}
.ghost:hover{border-color:var(--ink);background:var(--panel);}
.ghost svg{width:18px;height:18px;flex:none;}
.ghost:disabled{opacity:.5;cursor:default;}
/* pulsanti secondari e livello della grafica, a destra dei comandi */
.tools2{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-left:auto;}
.gfx{display:inline-flex;align-items:center;gap:10px;}
.gfx-l{font-weight:700;font-stretch:87.5%;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}
.segb button{min-height:38px;padding:0 12px;border:0;border-radius:2px;background:transparent;cursor:pointer;font-weight:650;font-size:14px;color:var(--ink-soft);}
.segb button:hover{color:var(--ink);}
.segb button[aria-pressed="true"]{background:var(--sel);color:var(--sel-ink);}
.gfx-note{flex:1 1 100%;margin:-6px 0 0;text-align:right;font-size:13px;color:var(--ink-soft);}
.gfx-note:empty{display:none;}
@media (max-width:640px){
  .controls{gap:12px;}
  .pulegend{flex:1 1 100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
  .pulegend li{flex-direction:column;align-items:flex-start;gap:2px;font-size:12.5px;}
  .pulegend li span{display:block;}
  .pulegend b{display:block;font-size:13.5px;}
  .pulegend img{width:30px;height:30px;}
  .tools2{margin-left:0;width:100%;display:grid;grid-template-columns:1fr 1fr;}
  .tools2 .ghost{min-height:44px;}
  .gfx{grid-column:1 / -1;justify-content:space-between;}
  .gfx .seg{flex:1;max-width:280px;}
  .gfx .segb button{flex:1;min-height:40px;}
  .gfx-note{text-align:left;margin-top:-4px;}
}
.fairbox{margin-top:16px;max-width:78ch;}
.fairbox summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-size:14.5px;font-weight:700;color:var(--ink);list-style:none;}
.fairbox summary::-webkit-details-marker{display:none;}
.fairbox summary::before{content:"";width:8px;height:8px;margin:0 2px 3px 1px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg);transition:transform .15s;}
.fairbox[open] summary::before{transform:rotate(45deg);margin-bottom:6px;}
.fair{margin:0 0 0 20px;padding-left:14px;border-left:2px solid var(--line);font-size:14px;color:var(--ink-soft);}

/* ---------- Programma locale e albo d'oro ---------- */
.panels{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:36px 48px;margin-top:40px;}
@media (max-width:820px){.panels{grid-template-columns:1fr;}}
.card{border-top:3px solid var(--rule);padding-top:14px;}
.card h2{margin:0 0 4px;font-size:clamp(22px,2.4vw,28px);font-weight:850;font-stretch:112%;letter-spacing:-.01em;line-height:1.1;}
.card h3{margin:22px 0 8px;font-size:12.5px;font-weight:750;font-stretch:87.5%;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);}
.hint{margin:0 0 10px;color:var(--ink-soft);font-size:14.5px;max-width:62ch;}
fieldset.editor{border:0;margin:0;padding:0;min-width:0;}
.colhead{display:grid;grid-template-columns:30px minmax(0,1.25fr) minmax(0,1fr) 84px 34px;gap:10px;font-size:11.5px;font-weight:700;font-stretch:87.5%;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);padding:6px 0 6px;border-bottom:2px solid var(--rule);}
.entries{list-style:none;margin:0;padding:0;}
.entry{display:grid;grid-template-columns:30px minmax(0,1.25fr) minmax(0,1fr) 84px 34px;align-items:center;gap:6px 10px;padding:7px 0;border-bottom:1px solid var(--line);}
.entry .cloth{min-width:28px;height:24px;font-size:14px;}
.fld{width:100%;min-width:0;border:0;border-bottom:2px solid transparent;background:transparent;padding:6px 2px;font-size:16px;border-radius:0;}
.fld.rest{font-weight:700;}
.fld.who{color:var(--ink-soft);font-weight:550;}
.fld:hover{border-bottom-color:var(--line-ui);}
.fld:focus{outline:none;border-bottom-color:var(--focus);color:var(--ink);}
.entry.off .fld,.entry.off .cloth{opacity:.42;}
@media (max-width:560px){
  .colhead{display:none;}
  .entry{grid-template-columns:30px minmax(0,1fr) auto 34px;}
  .entry .rest{grid-column:2;grid-row:1;}
  .entry .who{grid-column:2;grid-row:2;padding-top:0;}
  .entry .switch{grid-column:3;grid-row:1 / span 2;}
  .entry .remove{grid-column:4;grid-row:1 / span 2;}
  .entry .cloth{grid-row:1 / span 2;}
}
.switch{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--ink-soft);position:relative;}
.switch input{position:absolute;opacity:0;width:1px;height:1px;}
.switch .knob{position:relative;width:38px;height:22px;border-radius:2px;background:var(--sunk);box-shadow:inset 0 0 0 1px var(--line-ui);transition:background .15s;flex:none;}
.switch .knob::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:1px;background:var(--line-ui);transition:transform .15s,background .15s;}
.switch input:checked + .knob{background:var(--live);box-shadow:none;}
.switch input:checked + .knob::after{transform:translateX(16px);background:var(--live-ink);}
.switch input:focus-visible + .knob{outline:3px solid var(--focus);outline-offset:2px;}
@media (max-width:560px){.switch .lab{display:none;}}
.remove{width:34px;height:34px;border:0;border-radius:2px;background:transparent;cursor:pointer;color:var(--ink-soft);font-size:15px;padding:0;}
.remove:hover{background:rgba(200,16,46,.1);color:var(--danger-ink);}
.add{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;gap:8px;margin-top:14px;}
@media (max-width:560px){.add{grid-template-columns:1fr 1fr;}.add button{grid-column:1 / -1;}}
.add input{min-width:0;min-height:44px;border:1px solid var(--line-ui);border-radius:3px;background:var(--field);padding:9px 12px;font-size:16px;}
.add input:focus{outline:3px solid var(--focus);outline-offset:1px;border-color:transparent;}
.add button{min-height:44px;border:0;border-radius:3px;background:var(--btn);color:var(--btn-ink);padding:0 18px;font-weight:750;cursor:pointer;}
.add button:hover{background:var(--btn-hover);}
.rowlinks{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;}
.linkbtn{border:0;background:none;padding:0;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:13px;}
.linkbtn.armed{color:var(--danger-ink);font-weight:700;}
.empty{color:var(--ink-soft);font-size:14.5px;margin:6px 0 0;}
.tally{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:10px;}
.tally li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;}
.t-name{font-weight:650;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bar{height:6px;margin-top:4px;border-radius:0;background:var(--accent);}
.bar.b2{background:var(--live);}
.t-n{font-weight:850;font-stretch:87.5%;font-variant-numeric:tabular-nums;font-size:20px;}
.recent{list-style:none;margin:0;padding:0;font-size:14.5px;}
.recent li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);}
.recent .r-who{color:var(--ink-soft);}
.recent time{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;}
#confetti{position:fixed;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:100;}

/* comandi sul palco (telecamera, schermo intero) */
.tools{left:10px;top:10px;display:flex;align-items:center;gap:6px;padding:4px;}
.tbtn{display:inline-grid;place-items:center;min-width:34px;height:32px;padding:0 10px;border:0;border-radius:2px;background:rgba(255,255,255,.12);color:#fff;font-weight:700;font-size:14px;cursor:pointer;}
.tbtn:hover{background:rgba(255,255,255,.24);}
.tbtn svg{width:18px;height:18px;display:block;}
.tbtn:disabled{opacity:.45;cursor:default;}
.camsel select{height:32px;max-width:min(38vw,250px);border:0;border-radius:2px;background:rgba(255,255,255,.12);color:#fff;font:inherit;font-weight:600;font-size:13px;padding:0 8px;cursor:pointer;}
.camsel select option{color:#0B1F3A;background:#fff;}
.fsgo{display:none;background:var(--live);color:var(--live-ink);}
.fsgo:hover{background:var(--live-hover);}
/* didascalia della telecamera ("Sorpasso di...", "Telecamera su..."): striscia blu notte con il bordo azzurro */
.camtag{position:absolute;z-index:3;left:50%;top:12px;transform:translateX(-50%);max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;padding:6px 14px 6px 13px;border-radius:2px;background:rgba(7,22,43,.9);box-shadow:inset 3px 0 0 var(--azure);color:#fff;font-weight:700;font-size:14px;line-height:1.3;white-space:nowrap;pointer-events:none;}
.camtag.show{animation:tagin .35s ease-out both;}
@keyframes tagin{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes tagin2{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.stage.done .camtag,.stage.done .tools .camsel{display:none;}

/* schermi stretti: classifica e didascalia in colonna, a sinistra sotto i comandi */
@media (max-width:960px){
  .hudcol{display:flex;flex-direction:column;align-items:flex-start;gap:6px;position:absolute;z-index:3;left:10px;top:58px;max-width:min(62%,320px);pointer-events:none;}
  .hudcol > .standings{position:static;width:auto;min-width:min(100%,220px);max-width:100%;}
  .hudcol > .camtag{position:static;transform:none;max-width:100%;white-space:normal;}
  .camtag.show{animation-name:tagin2;}
}
/* telefono: comandi da 40 px, classifica corta (primi tre più la propria) senza i nomi di chi propone */
@media (max-width:640px){
  .tools{left:8px;top:8px;padding:0;gap:6px;background:none;}
  .tbtn{min-width:40px;height:40px;background:var(--hud);}
  .tbtn:hover{background:rgba(18,41,74,.95);}
  .camsel select{height:40px;max-width:min(40vw,180px);padding:0 10px;background-color:var(--hud);font-size:14px;}
  .dist{right:8px;top:8px;min-height:40px;padding:4px 10px;font-size:13px;line-height:1.2;}
  .dist small{font-size:11.5px;}
  .hudcol{left:8px;top:56px;gap:5px;max-width:calc(58% - 8px);}
  .hudcol > .standings{min-width:0;padding:4px 8px 4px 0;font-size:12px;}
  .standings li{grid-template-columns:1.9em auto minmax(0,1fr) auto;gap:5px;padding:1px 0;}
  .standings .w{display:none;}
  .standings .cloth{min-width:20px;height:18px;padding:0 3px;font-size:11px;}
  .standings img{width:16px;height:16px;}
  .stage:not(.racing) .standings{display:none;}
  .stage.racing .standings li:nth-child(n+4){display:none;}
  /* prima del via (classifica senza posizioni) la scena resta libera */
  .standings:has(> li:first-child > .p:empty){display:none;}
  .hudcol > .camtag{padding:5px 10px 5px 11px;font-size:12.5px;}
  /* spinte rimaste: sul telefono solo nella propria riga (le proprie si vedono anche sul pulsante) */
  .standings li:not(.mine) .cheers{display:none;}
  /* la scheda del vincitore occupa la parte alta (tribuna e cielo), a tutta larghezza: i cavalli restano visibili */
  .stage.done .tools{display:none;}
  .wcard{left:8px;right:8px;top:8px;transform:none;min-width:0;max-width:none;padding-bottom:12px;}
  .wcard.show{animation-name:wc2;}
  .wcard .k{margin-bottom:8px;padding:6px 14px 5px;font-size:12px;}
  .wcard strong{font-size:clamp(24px,7.4vw,32px);padding:0 14px;margin-bottom:8px;}
  .wcard .who{font-size:15px;padding:0 14px;}
  .wcard .wbtn{min-height:44px;margin:12px 14px 0;}
}
@keyframes wc2{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
body.fs-lock{overflow:hidden;}
.arena.fs{position:fixed;inset:0;z-index:1000;margin:0;display:flex;flex-direction:column;background:var(--navy-3);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);}
.arena.fs .stage{flex:1;aspect-ratio:auto;min-height:0;margin:0;border-radius:0;}
.arena.fs .caller{position:absolute;left:50%;bottom:clamp(10px,2vw,22px);transform:translateX(-50%);width:min(900px,calc(100% - 24px));z-index:6;background:rgba(7,22,43,.9);border-radius:3px;}
.arena.fs .fsgo{display:inline-grid;}
.arena.fs .camtag{top:14px;}
@media (max-width:640px){.arena.fs .stage.done .tools{display:flex;}.arena.fs .wcard{top:56px;}}
.wcard .wbtn{display:inline-flex;align-items:center;min-height:40px;margin:14px 20px 0;border:0;border-radius:2px;padding:0 16px;background:#fff;color:var(--navy);font:inherit;font-weight:750;font-size:15px;cursor:pointer;}
.wcard .wbtn:hover{background:var(--live);}

/* finestra dell'esportazione */
.modal{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:16px;background:rgba(3,10,22,.78);}
.mbox{width:min(920px,100%);max-height:100%;overflow:auto;background:var(--panel);color:var(--ink);border-radius:3px;padding:0 0 14px;box-shadow:0 24px 60px rgba(0,0,0,.45);border-top:4px solid var(--cobalt);}
.mbox h2{margin:0;padding:14px 18px 12px;font-size:clamp(18px,2vw,22px);font-weight:850;font-stretch:112%;}
.mbox img{display:block;width:100%;height:auto;background:var(--navy);}
.mrow{display:flex;flex-wrap:wrap;gap:8px;margin:14px 18px 0;}
.mrow button{min-height:44px;border:0;border-radius:3px;padding:0 18px;font:inherit;font-weight:750;font-size:15px;cursor:pointer;background:var(--btn);color:var(--btn-ink);}
.mrow button:hover{background:var(--btn-hover);}
.mrow .sec{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-ui);}
.mrow .sec:hover{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink);}
.mnote{margin:10px 18px 0;font-size:13.5px;color:var(--ink-soft);min-height:1.2em;}

/* schede dei giochi (versione locale): una barra di tre linee, come le linee della metropolitana */
.gametabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:clamp(16px,2.2vw,24px);border:1px solid var(--line-ui);border-radius:3px;background:var(--panel);overflow:hidden;}
.gtab{display:flex;align-items:center;gap:12px;min-height:60px;text-align:left;padding:10px 14px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);cursor:pointer;font:inherit;}
.gtab:first-child{border-left:0;}
.gtab .gi{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:2px;background:var(--sunk);color:var(--ink);}
.gtab .gi svg{width:24px;height:24px;display:block;}
.gi-hole{fill:var(--sunk);}
.gtab b{display:block;font-weight:800;font-stretch:106%;font-size:15px;line-height:1.2;}
.gtab small{display:block;color:var(--ink-soft);font-size:12.5px;line-height:1.3;}
.gtab:hover{background:var(--sunk);}
.gtab.on{background:var(--sel);color:var(--sel-ink);box-shadow:inset 0 -4px 0 var(--live);}
.gtab.on .gi{background:var(--live);color:var(--live-ink);}
.gtab.on .gi-hole{fill:var(--live);}
.gtab.on small{color:inherit;opacity:.78;}
.gtab:disabled{opacity:.5;cursor:default;}
@media (max-width:640px){.gametabs{grid-template-columns:1fr;}.gtab{border-left:0;border-top:1px solid var(--line);min-height:52px;padding:8px 12px;}.gtab:first-child{border-top:0;}.gtab .gi{width:34px;height:34px;}.gtab .gi svg{width:22px;height:22px;}}
.hlabel.out .t{text-decoration:line-through;}

/* telefono: margini di 16 px, testata compatta */
@media (max-width:640px){
  .hall-in{padding:18px 16px 16px;}
  .wrap{padding:0 16px 56px;}
  .masthead{gap:10px;margin-bottom:14px;}
  .masthead .meta{padding-top:8px;font-size:14px;}
  .board{padding:10px 10px 11px;}
  .board-head{gap:10px;margin-bottom:9px;font-size:11.5px;}
}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;}
  /* il numero del conto alla rovescia compare fermo e sparisce da solo (anche se il "Via!" arriva in ritardo) */
  .countdown.pop{animation:cdrm .9s linear forwards !important;}
  /* entrate senza animazione: commento, didascalie e scheda del vincitore compaiono subito */
  #call.in,.camtag.show,.wcard.show{animation:none !important;}
  body.lv-race .board-status::before{animation:none !important;}
}
@keyframes cdrm{0%,75%{opacity:1}100%{opacity:0}}

/* avviso "connessione lenta" della sessione, sul palco in alto al centro */
.stallnote{left:50%;top:10px;transform:translateX(-50%);padding:5px 12px;font-size:13px;line-height:1.3;pointer-events:none;z-index:4;max-width:calc(100% - 24px);text-align:center;}

/* Temi a contrasto elevato di Windows (forced-colors): colori di sfondo e ombre spariscono, quindi i pulsanti
   senza bordo restavano solo testo. Qui hanno un bordo vero; lo stato scelto e quello disattivato si vedono dal contorno. */
@media (forced-colors: active){
  button,.ad-btn,.ad-chip,.cheer,.go,.wbtn{border:1px solid ButtonText !important;}
  button[aria-pressed="true"],.ad-chip[aria-pressed="true"]{outline:3px solid Highlight;outline-offset:1px;}
  button:disabled{border-color:GrayText !important;color:GrayText;}
  input,select,textarea{border:1px solid CanvasText !important;}
}

/* src/pausa/pausa.css */
/* Giochi della pausa: pagina /giochi. Stesso linguaggio del Gran Premio (styles.css: sala blu notte, etichette
   strette in maiuscolo, righe nette), con un palco scuro da sala giochi. I colori dei giocatori sono sempre
   accompagnati dal numero del posto e dal nome. */
.pz-body{--pz-c0:#FF5A5F;--pz-c1:#3DA5FF;--pz-c2:#62D84E;--pz-c3:#FFC93C;--pz-c4:#B07CFF;--pz-c5:#FF8A3D;--pz-c6:#3DE0D0;--pz-c7:#FF6FC8;}
.c0{--c:var(--pz-c0);}.c1{--c:var(--pz-c1);}.c2{--c:var(--pz-c2);}.c3{--c:var(--pz-c3);}
.c4{--c:var(--pz-c4);}.c5{--c:var(--pz-c5);}.c6{--c:var(--pz-c6);}.c7{--c:var(--pz-c7);}

.pz-mast h1{font-size:clamp(34px,6vw,72px);}
.pz-kicker{margin:0 0 10px;font-stretch:87.5%;font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--on-dark-soft);}
.pz-kicker a{color:#fff;text-decoration-color:var(--live);text-decoration-thickness:2px;text-underline-offset:3px;}
.pz{padding-top:clamp(18px,3vw,32px);}
.pz-h{margin:0 0 10px;font-stretch:87.5%;font-size:13px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}
.pz-h span{font-weight:600;}

/* pulsanti */
.pz-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:2px solid var(--btn);border-radius:3px;background:var(--panel);color:var(--btn);font-weight:800;font-stretch:95%;letter-spacing:.01em;cursor:pointer;}
.pz-btn:hover{background:var(--sunk);}
.pz-btn:disabled{opacity:.45;cursor:not-allowed;}
.pz-go{background:var(--live);border-color:var(--live-edge);color:var(--live-ink);}
.pz-go:hover{background:var(--live-hover);}
.pz-ghost{border-color:var(--line-ui);color:var(--ink);background:transparent;}
.pz-big{min-height:54px;padding:0 34px;font-size:20px;font-stretch:110%;}
.pz-sq{min-width:44px;padding:0;font-size:20px;}
.pz-link{border:0;background:none;padding:0;color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}

/* stato della connessione */
.pz-net{margin:0 0 16px;padding:10px 14px;border-left:4px solid var(--azure);background:var(--sunk);font-weight:600;}
.pz-net.bad{border-left-color:var(--danger);}

/* ---------- Ingresso ---------- */
.pz-entry{display:grid;grid-template-columns:minmax(200px,1.2fr) auto minmax(200px,1fr);gap:16px 22px;align-items:end;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:3px;margin-bottom:28px;}
.pz-field label{display:block;margin-bottom:6px;font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}
.pz-field input{width:100%;min-height:44px;padding:0 12px;border:2px solid var(--line-ui);border-radius:3px;background:var(--field);font-size:17px;font-weight:600;}
.pz-field input:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 2px var(--focus);}
.pz-inline{display:flex;gap:8px;}
.pz-codef input{text-transform:uppercase;letter-spacing:.2em;font-weight:800;}
.pz-cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.pz-rooms,.pz-games{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.pz-rooms li.empty{padding:16px;border:1px dashed var(--line-ui);border-radius:3px;color:var(--ink-soft);}
.pz-roomrow{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:3px;}
.pz-roomrow .rn{flex:1;min-width:0;}
.pz-roomrow b{display:block;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pz-roomrow small{color:var(--ink-soft);font-size:14px;}
.pz-roomrow .rc{font-weight:800;letter-spacing:.15em;color:var(--ink-soft);font-size:13px;}
.pz-tag{display:inline-block;padding:2px 7px 1px;border-radius:2px;background:var(--sunk);font-stretch:87.5%;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);}
.pz-tag.live{background:var(--live);color:var(--live-ink);}
.pz-gamecard{display:flex;gap:14px;align-items:flex-start;padding:14px;background:var(--navy);color:var(--on-dark);border-radius:3px;}
.pz-gamecard .gi{flex:none;width:52px;height:52px;border-radius:3px;background:var(--navy-4);display:grid;place-items:center;}
.pz-gamecard .gi svg{width:36px;height:36px;}
.pz-gamecard b{display:block;font-size:18px;font-stretch:110%;color:#fff;}
.pz-gamecard p{margin:2px 0 6px;color:var(--on-dark-soft);font-size:14.5px;line-height:1.4;}
.pz-gamecard .k{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--flap-ink-2);}
.pz-gamecard.soon{opacity:.6;}
.pz-gamecard .gt{flex:1;min-width:0;}
.pz-gamecard .pz-btn{align-self:center;flex:none;}

/* ---------- Stanza ---------- */
.pz-roomhead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:14px;}
.pz-roomhead h2{margin:0;font-size:clamp(24px,3.4vw,36px);font-weight:900;font-stretch:115%;line-height:1;letter-spacing:-.01em;}
.pz-invite{margin:8px 0 0;color:var(--ink-soft);}
.pz-invite b{color:var(--ink);letter-spacing:.18em;margin-right:10px;}
.pz-copied{margin-left:10px;color:var(--live-text);font-weight:700;}
.pz-main{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start;}

.pz-stage{position:relative;aspect-ratio:16/9;background:#050E1C;border-radius:3px;overflow:hidden;color:var(--on-dark);isolation:isolate;}
.pz-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;}
.pz-stage:fullscreen{aspect-ratio:auto;border-radius:0;}
.pz-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.pz-lab{position:absolute;left:0;top:0;padding:2px 7px 1px;border-radius:2px;background:rgba(7,22,43,.82);border-left:3px solid var(--c,#fff);color:#fff;font-size:12.5px;font-weight:800;font-stretch:90%;white-space:nowrap;will-change:transform;}
.pz-lab.me{background:#fff;color:var(--navy);}
.pz-lab.out{opacity:.45;text-decoration:line-through;}

.pz-hud{position:absolute;left:12px;top:12px;right:12px;display:flex;justify-content:space-between;gap:12px;pointer-events:none;font-stretch:90%;font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;}
.pz-hud span{padding:4px 9px 3px;border-radius:2px;background:var(--hud);}
.pz-hud span:empty{display:none;}
.pz-count{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(60px,14vw,170px);font-weight:900;font-stretch:120%;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.6);}
.pz-count.pop{animation:pzpop .9s ease-out;}
@keyframes pzpop{from{transform:scale(1.5);opacity:0;}20%{opacity:1;}to{transform:scale(1);opacity:.85;}}
.pz-banner{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:6px 14px;border-radius:2px;background:var(--hud);font-weight:700;font-size:14px;white-space:nowrap;}

/* pannello tra un turno e l'altro */
.pz-panel{position:absolute;inset:0;display:grid;place-items:center;padding:16px;background:linear-gradient(rgba(5,14,28,.25),rgba(5,14,28,.6));}
.pz-panel[hidden]{display:none;}
.pz-panel-in{width:min(640px,100%);padding:clamp(14px,2.4vw,24px);background:rgba(7,22,43,.88);border:1px solid var(--hud-line);border-radius:3px;backdrop-filter:blur(3px);}
.pz-panel-k{margin:0 0 10px;font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--on-dark-soft);}
.pz-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;}
.pz-pick button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:2px solid var(--hud-line);border-radius:3px;background:var(--navy-4);color:var(--on-dark);text-align:left;cursor:pointer;}
.pz-pick button b{font-size:16.5px;font-stretch:105%;}
.pz-pick button small{color:var(--on-dark-soft);font-size:12.5px;}
.pz-var{margin-top:8px;}
.pz-var button{padding:7px 12px;}
.pz-var button b{font-size:14.5px;}
.pz-pick button[aria-checked="true"]{border-color:var(--live);background:#0F3350;}
.pz-pick button:disabled{cursor:default;}
.pz-pick button:disabled:not([aria-checked="true"]){opacity:.55;}
.pz-howto{margin:12px 0 0;color:var(--on-dark);font-size:15px;line-height:1.45;}
.pz-startrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:16px;}
.pz-wait{margin:0;color:var(--on-dark-soft);font-weight:600;}
.pz-stage .pz-go:focus-visible{outline-color:#fff;}

/* risultati del turno */
.pz-results{position:absolute;inset:0;display:grid;place-items:center;padding:16px;background:rgba(5,14,28,.45);animation:pzfade .35s ease-out;}
@keyframes pzfade{from{opacity:0;}to{opacity:1;}}
.pz-results-in{width:min(460px,100%);padding:20px 22px;background:rgba(7,22,43,.92);border:1px solid var(--hud-line);border-radius:3px;}
.pz-res-k{margin:0;font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--on-dark-soft);}
.pz-res-w{margin:4px 0 12px;font-size:clamp(26px,3.6vw,38px);font-weight:900;font-stretch:115%;line-height:1.05;color:#fff;}
.pz-res-l{margin:0;padding:0;list-style:none;display:grid;gap:4px;}
.pz-res-l li{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:5px 8px;border-left:4px solid var(--c,#fff);background:rgba(255,255,255,.05);font-weight:700;}
.pz-res-l li.me{background:rgba(98,216,78,.16);}
.pz-res-l .pos{color:var(--on-dark-soft);font-variant-numeric:tabular-nums;}
.pz-res-l .pt{color:var(--live);font-variant-numeric:tabular-nums;}

.pz-tools{position:absolute;right:10px;bottom:10px;display:flex;gap:6px;}
.pz-tbtn{min-height:34px;padding:0 10px;border:1px solid var(--hud-line);border-radius:3px;background:var(--hud);color:var(--on-dark);font-size:13px;font-weight:700;cursor:pointer;}
.pz-tbtn[aria-pressed="false"]{color:var(--on-dark-soft);text-decoration:line-through;}
.pz-touch{position:absolute;left:0;right:0;bottom:12px;z-index:4;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:0 12px;pointer-events:none;}
.pz-touch[hidden]{display:none;}
.pz-touch > *,.pz-tgrp > *{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
.pz-tgrp{display:flex;gap:10px;align-items:flex-end;}
.pz-tb{min-width:68px;height:74px;padding:0 10px;border-radius:20px;border:2px solid rgba(255,255,255,.4);background:rgba(7,22,43,.55);color:#fff;font-size:24px;font-weight:900;backdrop-filter:blur(2px);}
.pz-tb.txt{font-size:15px;}
.pz-tb.big{min-width:88px;height:88px;font-size:17px;background:rgba(98,216,78,.35);border-color:rgba(98,216,78,.8);}
.pz-touch.drive .pz-tgrp{gap:8px;}
/* kart: «Oggetto» sopra il freno, nella colonna di destra (sta in 390 px con ◀ ▶ e il gas) */
.pz-tcol{display:flex;flex-direction:column;gap:8px;}
.pz-tcol > *{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
.pz-tb.obj{height:54px;font-size:14px;background:rgba(255,201,60,.3);border-color:rgba(255,201,60,.85);}
.pz-tb.obj.on{background:rgba(255,201,60,.65);}
/* kart: «Dietro» sopra ◀ ▶ (largo quanto i due), «Derapata» sopra il gas */
.pz-tb.back{height:48px;font-size:14px;}
.pz-tb.drift{height:54px;font-size:13px;padding:0 4px;background:rgba(61,165,255,.3);border-color:rgba(61,165,255,.85);}
.pz-tb.drift.on{background:rgba(61,165,255,.65);}
.pz-tb.wide{flex:0 1 42%;height:110px;font-size:34px;}
.pz-tb.on{background:rgba(255,255,255,.35);transform:scale(.96);}
.pz-tb.big.on{background:rgba(98,216,78,.65);}
.pz-stick{position:relative;width:132px;height:132px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:radial-gradient(circle,rgba(255,255,255,.12),rgba(7,22,43,.55));}
.pz-stick .knob{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(255,255,255,.85);box-shadow:0 4px 12px rgba(0,0,0,.35);transition:transform .05s;}
.pz-stick.on .knob{background:#fff;}
.pz-stage{touch-action:manipulation;}

/* colonna dei giocatori */
.pz-side{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:3px;}
.pz-players{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:6px;}
.pz-players li{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;min-height:40px;padding:4px 8px 4px 0;border-bottom:1px solid var(--line);}
.pz-players .num{display:grid;place-items:center;width:30px;height:30px;border-radius:2px;background:var(--c);color:#0B1F3A;font-weight:900;}
.pz-players .nm{min-width:0;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pz-players .nm small{margin-left:6px;font-weight:600;color:var(--ink-soft);font-size:13px;}
.pz-players .sc{font-weight:900;font-size:18px;font-variant-numeric:tabular-nums;}
.pz-players .sc small{font-weight:600;font-size:12px;color:var(--ink-soft);margin-left:3px;}
.pz-players li.off .nm{color:var(--ink-soft);}
.pz-players li.me .nm{color:var(--live-text);}
.pz-players li.free{grid-template-columns:30px 1fr;color:var(--ink-soft);}
.pz-players li.free .num{background:var(--sunk);color:var(--ink-soft);}
.pz-bots{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-weight:700;}
.pz-step{display:flex;align-items:center;gap:8px;}
.pz-step b{min-width:22px;text-align:center;font-size:18px;}
.pz-reset{font-size:14px;}
.pz-keys{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:14.5px;line-height:1.5;color:var(--ink-soft);}
.pz-howto kbd{display:inline-block;min-width:24px;padding:0 6px;margin:0 2px;border:1px solid rgba(255,255,255,.4);border-bottom-width:3px;border-radius:3px;font:inherit;font-weight:800;text-align:center;}
.pz-keys kbd{display:inline-block;min-width:26px;padding:1px 6px;margin:0 2px;border:1px solid var(--line-ui);border-bottom-width:3px;border-radius:3px;background:var(--panel);color:var(--ink);font:inherit;font-weight:800;text-align:center;}
.pz-keys p{margin:0 0 6px;}
.pz-foot{display:block;}

@media (max-width:960px){
  .pz-main{grid-template-columns:1fr;}
  .pz-cols{grid-template-columns:1fr;}
  .pz-entry{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion: reduce){
  .pz-count.pop,.pz-results{animation:none;}
}
@media (forced-colors: active){
  .pz-lab,.pz-panel-in,.pz-results-in,.pz-hud span{border:1px solid CanvasText;}
  .pz-players .num{border:1px solid CanvasText;}
}

/* ---------- Sfide a turni ---------- */
.pz-turni{margin-bottom:34px;padding:18px;background:var(--panel);border:1px solid var(--line);border-left:5px solid var(--live);border-radius:3px;}
.pz-turni-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:16px;}
.pz-turni-head p{margin:0;max-width:62ch;color:var(--ink-soft);}
.pz-h4{margin:0 0 8px;font-size:15px;font-weight:800;}
.pz-sec{margin:0 0 14px;font-size:clamp(22px,2.6vw,28px);font-weight:900;font-stretch:112%;letter-spacing:-.01em;}
.pz-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:10px;background:var(--live);color:var(--live-ink);font-weight:900;letter-spacing:0;}
.pz-tag.me{background:var(--live);color:var(--live-ink);}
.pz-tag.win{background:var(--cobalt);color:#fff;}
.pz-sfstage{aspect-ratio:16/10;}
.pz-cols-btn{position:absolute;inset:0;z-index:2;}
.pz-q-cols{position:absolute;inset:0;}
.pz-cols-btn{pointer-events:none;}
.pz-cols-btn > *{pointer-events:auto;}
.pz-q-cols{pointer-events:none;}
.pz-q-cols button{pointer-events:auto;}
.pz-q-cols button{position:absolute;top:0;height:100%;border:0;background:transparent;cursor:pointer;padding:0;}
.pz-q-cols button:disabled{cursor:default;}
.pz-q-cols button:focus-visible{outline:3px solid #fff;outline-offset:-3px;}
.pz-sfstate{position:absolute;left:50%;top:12px;transform:translateX(-50%);margin:0;padding:6px 14px 5px;border-radius:2px;background:var(--hud);color:#fff;font-weight:800;font-stretch:95%;font-size:clamp(14px,1.6vw,18px);white-space:nowrap;z-index:3;pointer-events:none;}
.pz-sfstate.me{background:var(--live);color:var(--live-ink);}
.pz-sfnote{margin:0 0 14px;color:var(--ink-soft);font-size:14.5px;}
.pz-sfact{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.pz-players .disc{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--c);color:#0B1F3A;font-weight:900;}
.pz-sfida .pz-players .nm{white-space:normal;}
.pz-sfida .pz-players .nm small{display:block;margin-left:0;}
.pz-ping{margin:12px 0 0;font-size:12.5px;color:var(--ink-soft);}
.pz-sfnew{display:flex;flex-wrap:wrap;gap:10px;}
.pz-orb-ctl{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;padding:8px 14px;border-radius:3px;background:var(--hud);color:#fff;font-weight:700;font-size:14px;}
.pz-orb-ctl[hidden]{display:none;}
.pz-orb-ctl label{display:flex;align-items:center;gap:8px;}
.pz-orb-ctl input[type=range]{width:min(180px,26vw);accent-color:var(--live);}
.pz-orb-ctl .pz-btn{min-height:38px;}

/* ---------- Telefono ---------- */
@media (pointer:coarse){ .pz-tools{top:50px;bottom:auto;} .pz-lab{font-size:11.5px;} .pz-tbtn{min-height:30px;font-size:12px;} }
@media (max-width:760px){
  /* durante una partita la testata della pagina lascia spazio al gioco */
  body:has(#pzRoom:not([hidden])) .hall,body:has(#pzSfida:not([hidden])) .hall,body:has(#pzQuiz:not([hidden])) .hall{display:none;}
  body:has(#pzRoom:not([hidden])) .pz,body:has(#pzSfida:not([hidden])) .pz,body:has(#pzQuiz:not([hidden])) .pz{padding-top:10px;}
  .pz-stage{aspect-ratio:auto;height:min(74svh,128vw);border-radius:12px;}
  .pz-sfstage{aspect-ratio:3/4;height:auto;max-height:76svh;}
  .pz-roomhead{margin-bottom:10px;}
  .pz-roomhead h2{font-size:22px;}
  .pz-invite{font-size:14px;}
  .pz-panel{padding:10px;}
  .pz-panel-in{padding:14px;}
  .pz-pick{grid-template-columns:1fr 1fr 1fr;}
  .pz-pick button{padding:8px;}
  .pz-pick button small{display:none;}
  .pz-howto{font-size:14px;}
  .pz-hud{font-size:12px;left:8px;right:8px;top:8px;}
  .pz-results-in{padding:14px;}
  .pz-orb-ctl{left:8px;right:8px;transform:none;gap:6px 12px;padding:6px 10px;}
  .pz-orb-ctl input[type=range]{width:min(150px,30vw);}
  .pz-sfstate{font-size:13px;max-width:92%;white-space:normal;text-align:center;}
  .pz-turni-head .pz-sfnew{width:100%;}
}
/* telefono in orizzontale: il campo occupa tutta l'altezza */
@media (max-height:520px) and (orientation:landscape){
  body:has(#pzRoom:not([hidden])) .hall,body:has(#pzSfida:not([hidden])) .hall{display:none;}
  .pz-main{grid-template-columns:1fr;}
  .pz-stage{aspect-ratio:auto;height:calc(100svh - 20px);}
  .pz-roomhead{display:none;}
  .pz-tb{min-width:66px;height:66px;}
  .pz-tb.big{min-width:82px;height:82px;}
  .pz-stick{width:112px;height:112px;}
}
.pz-orb-pad{position:absolute;inset:0;touch-action:none;cursor:crosshair;}
.pz-orb-tip{flex-basis:100%;text-align:center;color:var(--on-dark-soft);font-weight:600;font-size:12px;}
@media (max-width:760px){ .pz-sfstage .pz-tools{top:10px;bottom:auto;left:10px;right:auto;} }

/* guida sul telefono: fascia di sterzo a sinistra, comandi del pollice destro a destra (più piccoli e trasparenti) */
.pz-touch.drive{align-items:flex-end;gap:10px;}
.pz-steer{flex:0 1 46%;max-width:240px;height:96px;display:flex;border-radius:22px;border:2px solid rgba(255,255,255,.35);background:rgba(7,22,43,.32);overflow:hidden;}
.pz-steer span{flex:1;display:grid;place-items:center;color:rgba(255,255,255,.85);font-size:28px;font-weight:900;}
.pz-steer span+span{border-left:1px solid rgba(255,255,255,.2);}
.pz-steer.l span:first-child,.pz-steer.r span:last-child{background:rgba(255,255,255,.3);}
.pz-tright{display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.pz-trow{display:flex;gap:8px;align-items:flex-end;}
.pz-trow > *{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
.pz-touch.drive .pz-tb{background:rgba(7,22,43,.32);}
.pz-touch.drive .pz-tb.sm{min-width:58px;height:40px;padding:0 8px;font-size:13px;border-radius:14px;}
.pz-touch.drive .pz-tb.obj{min-width:70px;height:70px;}
.pz-touch.drive .pz-tb.drift{min-width:92px;height:92px;font-size:15px;background:rgba(61,165,255,.3);}
.pz-touch.drive .pz-tb.big:not(.drift){min-width:92px;height:92px;}
.pz-tnote{color:rgba(255,255,255,.8);font-size:11px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.6);}
@media (max-height:520px) and (orientation:landscape){ .pz-steer{height:80px;max-width:280px;} }

/* ---------- Avvisi (93-avvisi.js) ----------
   Sempre uguali per farsi riconoscere: riquadro blu notte, campanella su un disco corallo (lo stesso corallo del
   pallino sull'icona della scheda), titolo in grassetto e un'azione verde. Non coprono il campo: in basso a destra. */
.pz-avvisi{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px));pointer-events:none;}
.pz-av{position:relative;display:grid;grid-template-columns:40px 1fr;gap:4px 12px;align-items:start;padding:14px 14px 12px;border-radius:3px;background:var(--navy);color:var(--on-dark);border:1px solid rgba(255,255,255,.28);box-shadow:0 10px 30px rgba(5,14,28,.4);pointer-events:auto;overflow:hidden;animation:pzavin .28s cubic-bezier(.2,.8,.3,1);}
.pz-av.out{opacity:0;transform:translateX(24px);transition:opacity .2s,transform .2s;}
@keyframes pzavin{from{opacity:0;transform:translateX(40px);}to{opacity:1;transform:none;}}
.pz-av-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#FF5A5F;}
.pz-av-ic svg{width:22px;height:22px;fill:#fff;}
.pz-av.k-over .pz-av-ic,.pz-av.k-no .pz-av-ic{background:var(--navy-4);}
.pz-av-tx{min-width:0;padding-right:22px;}
.pz-av-tx b{display:block;font-size:16.5px;font-weight:900;font-stretch:105%;line-height:1.2;color:#fff;}
.pz-av-tx span{display:block;margin-top:2px;font-size:14.5px;line-height:1.35;color:var(--on-dark-soft);}
.pz-av-act{grid-column:2;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.pz-av-act:not(:has(.pz-btn)){margin:0;}
.pz-av .pz-btn{min-height:36px;padding:0 14px;font-size:15px;}
.pz-av .pz-btn:not(.pz-go){background:transparent;border-color:var(--hud-line);color:var(--on-dark);}
.pz-av .pz-btn:not(.pz-go):hover{background:var(--navy-4);}
.pz-av-x{position:absolute;top:6px;right:6px;width:30px;height:30px;border:0;border-radius:3px;background:transparent;color:var(--on-dark-soft);font-size:22px;line-height:1;cursor:pointer;}
.pz-av-x:hover{background:var(--navy-4);color:#fff;}
.pz-av .pz-btn:focus-visible,.pz-av-x:focus-visible{outline:3px solid #fff;outline-offset:2px;}
.pz-av-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--live);transform-origin:left;}
.pz-av-bar.run{animation:pzavbar var(--life,120s) linear forwards;}
@keyframes pzavbar{from{transform:scaleX(1);}to{transform:scaleX(0);}}

/* riquadro «Avvisi» nell'ingresso */
.pz-avset{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:-12px 0 28px;padding:12px 16px;background:var(--panel);border:1px solid var(--line);border-left:5px solid var(--line-ui);border-radius:3px;}
.pz-avset:empty{display:none;}
.pz-avset.on{border-left-color:var(--live);}
.pz-avset .pz-av-ic{flex:none;width:34px;height:34px;}
.pz-avset .pz-av-ic svg{width:19px;height:19px;}
.pz-avset.on .pz-av-ic{background:var(--live-edge);}
.pz-avset p{flex:1 1 320px;margin:0;font-weight:600;}
.pz-avset-b{display:flex;flex-wrap:wrap;gap:8px;}
.pz-avset-m{flex-basis:100%;color:var(--live-text);font-weight:700;}
.pz-avset-m:empty{display:none;}
.pz-avoffer{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:14.5px;color:var(--ink-soft);}
.pz-avoffer .pz-av-ic{flex:none;width:28px;height:28px;}
.pz-avoffer .pz-av-ic svg{width:16px;height:16px;}
.pz-avoffer .pz-link{margin-left:2px;}

/* conoscenti da invitare */
.pz-invita{margin:6px 0 16px;}
.pz-invita[hidden]{display:none;}
.pz-people{list-style:none;margin:0;padding:0;display:grid;gap:4px;}
.pz-people li{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;min-height:44px;padding:4px 0;border-bottom:1px solid var(--line);}
.pz-people li.empty{display:block;min-height:0;padding:10px 12px;border:1px dashed var(--line-ui);border-radius:3px;color:var(--ink-soft);font-size:14px;}
.pz-people .nm{min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-people .nm small{display:block;font-weight:600;font-size:13px;color:var(--ink-soft);white-space:normal;}
.pz-people li.off .nm{color:var(--ink-soft);}
.pz-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--line-ui);}
.pz-people .st-qui .pz-dot{background:var(--live);border-color:var(--live-edge);}
.pz-people .st-stanza .pz-dot,.pz-people .st-gioca .pz-dot{background:#FFC93C;border-color:#B88A12;}
.pz-btn.pz-sm{min-height:36px;padding:0 12px;font-size:14px;}
.pz-invnote{margin:8px 0 0;color:var(--live-text);font-size:14px;font-weight:700;}
.pz-invnote:empty{display:none;}
.pz-roomrow.inv{border-left:5px solid var(--live);}
.pzq-avv{margin-top:14px;}
.pzq-avv .pz-invita{margin:0 0 10px;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;}

@media (max-width:760px){
  /* sul telefono gli avvisi stanno in alto, sotto la barra del browser */
  .pz-avvisi{top:calc(env(safe-area-inset-top,0px) + 10px);bottom:auto;left:10px;right:10px;width:auto;}
  .pz-avset{margin-top:-8px;flex-wrap:nowrap;align-items:flex-start;}
  .pz-avset p{flex:1 1 auto;font-size:15px;}
  .pz-avset.has-b{flex-wrap:wrap;}
}
@media (prefers-reduced-motion: reduce){
  .pz-av{animation:none;}
  .pz-av.out{transition:none;}
}
@media (forced-colors: active){
  .pz-av,.pz-avset{border:1px solid CanvasText;}
  .pz-dot{forced-color-adjust:none;}
}

/* src/pausa/quiz.css */
/* Giochi della pausa: «Botta e risposta» (quiz a duello). Pensato prima per il telefono: una colonna, pulsanti grandi,
   testo leggibile; sul PC la stessa colonna centrata e un po' più larga. Le risposte giuste e sbagliate hanno sempre
   anche il simbolo (✓ ✗), non solo il colore. */
.pzq{--q-bg:#0B1F3A;--q-bg2:#13305A;--q-ink:#F4F7FB;--q-soft:#A9B8CC;--q-ok:#2FB65A;--q-ko:#D9364B;--q-line:rgba(255,255,255,.12);
  max-width:760px;margin:0 auto;}
.pzq[hidden]{display:none;}
.pzq-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:12px;}
.pzq-back,.pzq-snd{min-height:42px;padding:0 14px;border:1px solid var(--line-ui);border-radius:22px;background:var(--panel);color:var(--ink);font-weight:800;cursor:pointer;}
.pzq-snd[aria-pressed="false"]{color:var(--ink-soft);text-decoration:line-through;}
.pzq-title{margin:0;text-align:center;font-size:clamp(20px,3.2vw,28px);font-weight:900;font-stretch:112%;letter-spacing:-.01em;line-height:1.05;}
.pzq-title small{display:block;font-size:12px;font-weight:800;font-stretch:87.5%;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}

/* punteggio */
.pzq-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,#0B1F3A,#1B3C6E);color:var(--q-ink);box-shadow:0 10px 30px rgba(11,31,58,.25);}
.pzq-team{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:0;}
.pzq-team.t1{grid-template-columns:1fr auto;text-align:right;}
.pzq-team.t1 .pzq-avs{grid-column:2;grid-row:1 / span 2;justify-content:flex-end;}
.pzq-team.t1 .pzq-names,.pzq-team.t1 .pzq-pts{grid-column:1;}
.pzq-avs{grid-row:1 / span 2;display:flex;}
.pzq-avs .pzq-av+.pzq-av{margin-left:-10px;}
.pzq-names{font-size:13.5px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--q-soft);}
.pzq-names b{color:#fff;}
.pzq-names i{font-style:normal;opacity:.7;}
.pzq-pts{font-size:clamp(30px,6vw,42px);font-weight:900;font-stretch:115%;line-height:1;font-variant-numeric:tabular-nums;}
.pzq-team.mine .pzq-pts{color:var(--live);}
.pzq-vs{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);font-weight:900;font-size:13px;letter-spacing:.06em;color:var(--q-soft);}
.pzq-av{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:2px solid #0B1F3A;background:#FF5A5F;color:#0B1F3A;font-weight:900;font-size:15px;flex:none;}
.pzq-team.t1 .pzq-av,.pzq-av.t1{background:#3DA5FF;}
.pzq-av.t0{background:#FF5A5F;}
.pzq-av.me{box-shadow:0 0 0 3px var(--live);}
.pzq-av.sm{width:26px;height:26px;font-size:11px;border-width:1.5px;}

/* scheda centrale */
.pzq-card{position:relative;margin-top:14px;min-height:340px;padding:clamp(16px,3.5vw,28px);border-radius:22px;background:#0B1F3A;background:radial-gradient(120% 90% at 20% 0%,color-mix(in srgb,var(--cc,#2F5FC4) 45%,#0B1F3A) 0%,#0B1F3A 55%,#071427 100%);color:var(--q-ink);overflow:hidden;box-shadow:0 14px 40px rgba(7,20,39,.35);}
.pzq-k{margin:0 0 6px;font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--q-soft);}
.pzq-h{margin:0 0 14px;font-size:clamp(24px,5vw,34px);font-weight:900;font-stretch:110%;line-height:1.05;letter-spacing:-.01em;}
.pzq-h.big{font-size:clamp(32px,7vw,48px);}
.pzq-note{margin:14px 0 0;color:var(--q-soft);font-size:14px;}
.pzq-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.pzq-cat{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:18px;min-height:150px;padding:16px;border:0;border-radius:18px;background:var(--cc);background:linear-gradient(160deg,color-mix(in srgb,var(--cc) 85%,#fff 15%),var(--cc));color:#fff;text-align:left;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .15s ease,box-shadow .15s ease;}
.pzq-cat:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.3);}
.pzq-cat:active{transform:scale(.98);}
.pzq-cat svg{width:42px;height:42px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.pzq-cat b{font-size:17px;font-weight:900;font-stretch:105%;line-height:1.1;}
.pzq-intro{text-align:center;padding:10px 0;}
.pzq-intro > svg{width:64px;height:64px;padding:12px;border-radius:20px;background:var(--cc);fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;box-shadow:0 10px 26px rgba(0,0,0,.3);}
.pzq-intro .pzq-k{margin-top:14px;}
.pzq-dots{display:flex;justify-content:center;gap:10px;margin:4px 0 22px;}
.pzq-dots span{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.18);}
.pzq-dots span.done{background:var(--q-soft);}
.pzq-dots span.now{background:var(--live);box-shadow:0 0 0 4px rgba(98,216,78,.25);}
.pzq-go{min-height:56px;padding:0 30px;border:0;border-radius:28px;background:var(--live);color:var(--live-ink);font-size:19px;font-weight:900;font-stretch:108%;cursor:pointer;box-shadow:0 8px 20px rgba(98,216,78,.3);transition:transform .12s ease;}
.pzq-go:hover{background:var(--live-hover);}
.pzq-go:active{transform:scale(.97);}
.pzq-go:disabled{opacity:.6;}
.pzq-joins{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.pzq-wait{text-align:center;padding:30px 4px;}
.pzq-wait p{max-width:46ch;margin:0 auto;color:var(--q-soft);}
.pzq-spin{width:44px;height:44px;margin:0 auto 16px;border-radius:50%;border:4px solid rgba(255,255,255,.15);border-top-color:var(--live);animation:pzqspin 1s linear infinite;}
@keyframes pzqspin{to{transform:rotate(360deg);}}

/* domanda */
.pzq-qhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;}
.pzq-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 12px 5px 6px;border-radius:16px;background:var(--cc,#2F5FC4);color:#fff;font-weight:800;font-size:13px;white-space:nowrap;}
.pzq-chip svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.pzq-chip.sm{padding:3px 9px 3px 4px;font-size:12px;}
.pzq-chip.sm svg{width:16px;height:16px;}
.pzq-chip.empty{background:rgba(127,140,160,.25);color:var(--ink-soft);padding:3px 10px;}
.pzq-n{font-size:12.5px;font-weight:700;color:var(--q-soft);}
.pzq-timer{position:relative;height:10px;border-radius:6px;background:rgba(255,255,255,.12);overflow:visible;margin:0 46px 16px 0;}
.pzq-timer span{position:absolute;inset:0;border-radius:6px;background:var(--live);transform-origin:left center;transition:background .3s;}
.pzq-timer span.warm{background:#FFC93C;}
.pzq-timer span.hot{background:#FF5A5F;}
.pzq-timer b{position:absolute;right:-46px;top:50%;transform:translateY(-50%);width:36px;text-align:right;font-size:18px;font-weight:900;font-variant-numeric:tabular-nums;}
.pzq-timer.off{visibility:hidden;}
.pzq-text{margin:0 0 18px;font-size:clamp(20px,4.4vw,27px);font-weight:800;line-height:1.25;}
.pzq-answers{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.pzq-ans{position:relative;display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 14px;border:2px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.06);color:#fff;text-align:left;font-size:16.5px;font-weight:700;line-height:1.2;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;}
.pzq-ans:hover:not(:disabled){background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35);}
.pzq-ans:active:not(:disabled){transform:scale(.98);}
.pzq-ans:disabled{cursor:default;}
.pzq-l{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:10px;background:rgba(255,255,255,.14);font-weight:900;}
.pzq-t{flex:1;}
.pzq-ans.picked{border-color:#fff;background:rgba(255,255,255,.18);}
.pzq-ans.ok{background:var(--q-ok);border-color:#7FE09A;}
.pzq-ans.ko{background:var(--q-ko);border-color:#FF9AA8;}
.pzq-ans.dim{opacity:.45;}
.pzq-mark{position:absolute;right:10px;top:-10px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#0B1F3A;font-weight:900;font-size:17px;box-shadow:0 4px 10px rgba(0,0,0,.25);}
.pzq-ans.ok .pzq-mark{color:var(--q-ok);}
.pzq-ans.ko .pzq-mark{color:var(--q-ko);}
.pzq-who{display:flex;margin-left:auto;}
.pzq-who .pzq-av+.pzq-av{margin-left:-8px;}
.pzq-verdict{margin:16px 0 0;text-align:center;font-size:22px;font-weight:900;animation:pzqpop .35s ease-out;}
.pzq-verdict.ok{color:#7FE09A;}
.pzq-verdict.ko{color:#FF9AA8;}
@keyframes pzqpop{from{transform:scale(.8);opacity:0;}to{transform:scale(1);opacity:1;}}

/* fine partita */
.pzq-done{text-align:center;padding:16px 0;}
.pzq-final{margin:0 0 16px;font-size:clamp(44px,10vw,64px);font-weight:900;font-stretch:115%;font-variant-numeric:tabular-nums;}
.pzq-final span{font-size:.4em;color:var(--q-soft);}
.pzq-rank{list-style:none;margin:0 auto;padding:0;max-width:360px;display:grid;gap:6px;text-align:left;}
.pzq-rank li{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.07);font-weight:700;}
.pzq-rank li b{margin-left:auto;}
.pzq-rank li.t1 .pzq-av{background:#3DA5FF;}
.pzq-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.pzq-confetti i{position:absolute;top:-20px;left:calc(var(--x) * 1%);width:8px;height:14px;border-radius:2px;background:var(--c);animation:pzqfall 2.6s calc(var(--d) * .12s) ease-in forwards;}
@keyframes pzqfall{to{transform:translateY(520px) rotate(540deg);opacity:.2;}}

/* tabellone dei round */
.pzq-board{margin-top:14px;}
.pzq-tab{width:100%;border-collapse:separate;border-spacing:0 6px;}
.pzq-tab th{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding:0 6px;}
.pzq-tab th:first-child{text-align:left;}
.pzq-tab th:last-child{text-align:right;}
.pzq-tab td{padding:6px;background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.pzq-tab td.l{border-left:1px solid var(--line);border-radius:12px 0 0 12px;}
.pzq-tab td.r{border-right:1px solid var(--line);border-radius:0 12px 12px 0;text-align:right;}
.pzq-tab td.c{text-align:center;}
.pzq-row{display:flex;gap:5px;}
.pzq-tab td.r .pzq-row{justify-content:flex-end;}
.pzq-row+.pzq-row{margin-top:4px;}
.pzq-d{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--sunk);color:var(--ink-soft);font-size:13px;font-weight:900;}
.pzq-d.ok{background:var(--q-ok);color:#fff;}
.pzq-d.ko{background:var(--q-ko);color:#fff;}
.pzq-d.played{background:#C9D3E0;color:#4A5B73;}
.pzq-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;}
.pz-sfq{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 6px 6px 12px;border-radius:24px;background:var(--sunk);}
.pz-sfq .pz-btn{border-radius:20px;}

@media (max-width:620px){
  .pzq-cats{grid-template-columns:1fr;}
  .pzq-cat{flex-direction:row;align-items:center;justify-content:flex-start;gap:16px;min-height:72px;}
  .pzq-answers{grid-template-columns:1fr;}
  .pzq-ans{min-height:58px;}
  .pzq-card{min-height:0;border-radius:18px;}
  .pzq-names{font-size:12px;}
  .pzq-av{width:34px;height:34px;font-size:13px;}
  .pzq-vs{width:32px;height:32px;font-size:11px;}
}
@media (prefers-reduced-motion: reduce){
  .pzq-cat,.pzq-ans,.pzq-go{transition:none;}
  .pzq-spin{animation-duration:3s;}
  .pzq-verdict{animation:none;}
}
@media (forced-colors: active){
  .pzq-ans,.pzq-cat,.pzq-card{border:2px solid CanvasText;}
}

/* src/pausa/corsa.css */
/* Giochi della pausa: «Fuga a Gioia» (72-corsa.js). Si appoggia alle classi comuni di pausa.css (pz-panel, pz-tools…). */

/* ---------- Scheda nell'ingresso ---------- */
.cr-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.9fr);gap:0;margin-bottom:34px;background:var(--navy);color:var(--on-dark);border-radius:3px;overflow:hidden;}
.cr-card-art{position:relative;min-height:200px;background:#0d2a4a;}
.cr-card-art svg{position:absolute;inset:0;width:100%;height:100%;display:block;}
.cr-card-txt{position:absolute;left:18px;right:18px;bottom:16px;}
.cr-card-txt h3{margin:0 0 4px;font-size:clamp(26px,3.2vw,36px);font-weight:900;font-stretch:115%;letter-spacing:-.01em;line-height:1;text-shadow:0 2px 12px rgba(5,14,28,.55);}
.cr-card-txt p{margin:0;max-width:46ch;font-size:15px;line-height:1.4;color:#fff;text-shadow:0 1px 8px rgba(5,14,28,.9);}
.cr-card-side{display:flex;flex-direction:column;gap:10px;padding:16px 18px;}
.cr-card-side .pz-h{color:var(--on-dark-soft);margin:0;}
.cr-mini{list-style:none;margin:0;padding:0;font-variant-numeric:tabular-nums;}
.cr-mini li{display:grid;grid-template-columns:22px 1fr auto;gap:8px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.1);font-weight:700;font-size:15px;}
.cr-mini li .r{color:var(--on-dark-soft);}
.cr-mini li .p{color:var(--live);}
.cr-mini li.me .n{color:var(--live);}
.cr-mini li.empty{display:block;color:var(--on-dark-soft);font-weight:600;border:0;}
.cr-card-me{margin:0;color:var(--on-dark-soft);font-size:14px;}
.cr-card-me b{color:#fff;}
.cr-card-side .pz-go{margin-top:auto;align-self:flex-start;min-width:150px;}

/* ---------- Schermata della corsa ---------- */
.cr-stage{touch-action:none;user-select:none;-webkit-user-select:none;}
.cr-stage canvas{cursor:default;}
.cr-hud{position:absolute;left:12px;top:12px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;pointer-events:none;z-index:2;}
.cr-pts{padding:4px 10px 2px;border-radius:2px;background:var(--hud);font-size:clamp(26px,3.6vw,40px);font-weight:900;font-stretch:110%;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.01em;}
.cr-sub{padding:3px 9px 2px;border-radius:2px;background:var(--hud);font-size:14px;font-weight:800;font-stretch:92%;letter-spacing:.03em;font-variant-numeric:tabular-nums;}
.cr-sub i{font-style:normal;color:var(--pz-c3);}
.cr-next{padding:3px 9px 2px;border-radius:2px;background:rgba(7,22,43,.6);font-size:13px;font-weight:700;color:var(--on-dark-soft);}
.cr-next:empty{display:none;}
.cr-hud[hidden],.cr-time[hidden]{display:none;}
.cr-fade{position:absolute;inset:0;background:#0b1f3a;opacity:0;pointer-events:none;z-index:4;}
.cr-fade.on{animation:crfade .6s ease-out;}
@keyframes crfade{from{opacity:1;}to{opacity:0;}}
/* orologio della pausa, moltiplicatore della serie di soffi e prossima tappa (in alto a destra) */
.cr-time{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;align-items:flex-end;gap:5px;pointer-events:none;z-index:2;}
.cr-clock{position:relative;display:flex;align-items:baseline;gap:8px;padding:4px 12px 5px;border-radius:2px;background:var(--hud);overflow:hidden;}
.cr-clock small{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-soft);}
.cr-clock b{font-size:clamp(26px,3.6vw,40px);font-weight:900;font-stretch:110%;line-height:1;font-variant-numeric:tabular-nums;}
.cr-clock i{position:absolute;left:0;bottom:0;height:4px;background:var(--live);transition:width .2s linear;}
.cr-clock.low{background:#8c1f2c;}
.cr-clock.low small{color:#ffd9dd;}
.cr-clock.low i{background:#fff;}
.cr-clock.low b{animation:crbeat 1s ease-out infinite;}
@keyframes crbeat{0%{transform:scale(1.12);}35%{transform:scale(1);}}
.cr-delta{position:absolute;right:100%;top:6px;margin-right:8px;padding:3px 9px 2px;border-radius:2px;font-size:clamp(17px,2vw,22px);font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;}
.cr-delta.up{background:var(--live);color:var(--live-ink);}
.cr-delta.down{background:#ffd23f;color:#14213d;}
.cr-delta.on{animation:crdelta 1.4s ease-out forwards;}
@keyframes crdelta{0%{opacity:0;transform:translateY(8px);}12%{opacity:1;transform:none;}75%{opacity:1;}100%{opacity:0;transform:translateY(-10px);}}
.cr-mult{display:flex;align-items:baseline;gap:7px;padding:3px 10px 2px;border-radius:2px;background:var(--hud);font-weight:800;font-variant-numeric:tabular-nums;}
.cr-mult b{font-size:20px;font-weight:900;}
.cr-mult span{font-size:13px;letter-spacing:.12em;color:var(--on-dark-soft);}
.cr-mult.hot b{color:var(--pz-c3);}
.cr-mult.pop{animation:pzpop .6s ease-out;}
.cr-tnext{max-width:min(60vw,320px);padding:3px 9px 2px;border-radius:2px;background:rgba(7,22,43,.6);font-size:13px;font-weight:700;color:var(--on-dark-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;}
.cr-tnext:empty{display:none;}
/* potenziamenti in corso: nome e secondi che restano (non solo il colore), con la barra che si svuota */
.cr-pows{display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
.cr-pows:empty{display:none;}
.cr-pow{position:relative;display:flex;align-items:baseline;gap:6px;padding:3px 10px 5px 9px;border-radius:2px;border-left:4px solid var(--pw);background:var(--hud);font-size:13px;font-weight:700;color:var(--on-dark-soft);font-variant-numeric:tabular-nums;overflow:hidden;}
.cr-pow b{color:#fff;font-size:15px;font-weight:900;}
.cr-pow i{position:absolute;left:0;bottom:0;height:3px;background:var(--pw);}
.cr-pow.espresso{--pw:#ff6a3d;}
.cr-pow.fischietto{--pw:#7fd8ff;}
.cr-pow.riunione{--pw:#c39bff;}
/* riunione spostata: l'orologio della pausa è fermo (la scritta diventa «Ferma») */
.cr-clock.frz{background:#3d2a7a;}
.cr-clock.frz small{color:#e6dcff;}
.cr-clock.frz i{background:#c39bff;}
.cr-clock.frz b{animation:none;}
/* linee di velocità ai bordi durante lo scatto: l'opacità la decide 72-corsa.js, il centro resta libero */
.cr-speed{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;opacity:0;-webkit-mask-image:radial-gradient(ellipse 72% 64% at 50% 46%,transparent 50%,#000 100%);mask-image:radial-gradient(ellipse 72% 64% at 50% 46%,transparent 50%,#000 100%);}
.cr-speed::before{content:'';position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(255,255,255,0) 0deg 4.4deg,rgba(255,255,255,.85) 4.4deg 5.4deg);animation:crspeed .16s steps(2) infinite;}
.cr-speed::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 75% at 50% 46%,transparent 40%,rgba(5,14,28,.45) 100%);}
@keyframes crspeed{from{transform:rotate(0deg);}to{transform:rotate(3deg);}}
/* «di un soffio»: piccolo, sotto chi corre */
.cr-pop{position:absolute;left:50%;top:36%;transform:translateX(-50%);padding:4px 12px 3px;border-radius:2px;background:rgba(255,255,255,.92);color:#14213d;font-weight:900;font-stretch:95%;font-size:clamp(14px,1.6vw,17px);white-space:nowrap;pointer-events:none;z-index:2;opacity:0;}
.cr-pop.on{animation:crpop .9s ease-out forwards;}
@keyframes crpop{0%{opacity:0;transform:translate(-50%,6px);}15%{opacity:1;transform:translate(-50%,0);}70%{opacity:1;}100%{opacity:0;transform:translate(-50%,-14px);}}
.cr-warn{position:absolute;left:50%;top:12px;transform:translateX(-50%);padding:6px 14px 5px;border-radius:2px;background:#8c1f2c;color:#fff;font-weight:800;font-size:clamp(13px,1.5vw,16px);white-space:nowrap;pointer-events:none;z-index:2;}
.cr-warn[hidden]{display:none;}
.cr-warn i{position:absolute;left:0;bottom:0;height:3px;background:#fff;}
.cr-warn .sm{display:none;}
.cr-cap{position:absolute;left:clamp(14px,3vw,34px);bottom:clamp(54px,9%,90px);pointer-events:none;z-index:2;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s;}
.cr-cap.on{opacity:1;transform:none;}
.cr-cap small{display:inline-block;margin-bottom:4px;padding:3px 8px 2px;border-radius:2px;background:rgba(7,22,43,.8);font-stretch:92%;font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--live);}
.cr-cap b{display:block;font-size:clamp(24px,3.4vw,40px);font-weight:900;font-stretch:112%;line-height:1.05;color:#fff;text-shadow:0 1px 3px rgba(5,14,28,.7),0 2px 16px rgba(5,14,28,.8);}
.cr-toast{position:absolute;left:50%;top:22%;transform:translate(-50%,0);padding:7px 16px 6px;border-radius:2px;background:var(--live);color:var(--live-ink);font-weight:900;font-stretch:95%;font-size:clamp(15px,1.8vw,19px);white-space:nowrap;pointer-events:none;z-index:3;opacity:0;transition:opacity .25s;}
.cr-toast.on{opacity:1;}
.cr-toast.bad{background:#ffd23f;color:#14213d;}
.cr-count{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:3;font-size:clamp(60px,12vw,150px);font-weight:900;font-stretch:120%;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.6);}
.cr-count.pop{animation:pzpop .8s ease-out;}
.cr-swipe{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);padding:6px 12px;border-radius:2px;background:var(--hud);font-size:13.5px;font-weight:700;white-space:nowrap;pointer-events:none;z-index:2;}
.cr-swipe[hidden]{display:none;}
.cr-stage .pz-tools{z-index:4;}
.cr-stage .pz-panel{z-index:5;}
.cr-stage .pz-banner{z-index:6;}

/* pannelli: partenza (a sinistra, chi corre si vede a destra), pausa, fine corsa */
.cr-stage #crStart,.cr-stage #crOver{place-items:center start;background:linear-gradient(90deg,rgba(5,14,28,.6),rgba(5,14,28,.25) 55%,transparent 75%);}
.cr-stage #crStart .pz-panel-in{width:min(560px,62%);max-height:100%;overflow:auto;}
.cr-stage #crOver .pz-panel-in{width:min(520px,58%);max-height:100%;overflow:auto;}
.cr-title{margin:0 0 2px;font-size:clamp(26px,3.4vw,38px);font-weight:900;font-stretch:115%;line-height:1;}
.cr-lead{margin:6px 0 14px;color:var(--on-dark-soft);font-size:15px;line-height:1.45;}
.cr-powlist{list-style:none;margin:-4px 0 12px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;color:var(--on-dark-soft);font-size:12.5px;line-height:1.3;}
.cr-powlist li{padding-left:8px;border-left:3px solid var(--pw);}
.cr-powlist li:nth-child(1){--pw:#ff6a3d;}
.cr-powlist li:nth-child(2){--pw:#7fd8ff;}
.cr-powlist li:nth-child(3){--pw:#c39bff;}
.cr-powlist b{display:block;color:#fff;font-size:13.5px;font-weight:800;}
.cr-stage.short #crStart .cr-lead,.cr-stage.short #crStart .cr-powlist{display:none;}
.cr-looks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px;}
.cr-looks button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 6px 7px;border:2px solid var(--hud-line);border-radius:3px;background:var(--navy-4);color:var(--on-dark);font-weight:700;font-size:13px;line-height:1.2;cursor:pointer;text-align:center;}
.cr-looks button:hover{border-color:var(--on-dark-soft);}
.cr-looks button[aria-checked="true"]{border-color:var(--live);background:#0F3350;}
.cr-looks button:focus-visible{outline:3px solid #fff;outline-offset:2px;}
.cr-looks svg{width:38px;height:45px;}
.cr-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;}
.cr-row .pz-field{flex:1 1 180px;}
.cr-row .pz-field label{color:var(--on-dark-soft);}
.cr-row .pz-field input{background:#0a1c33;color:#fff;border-color:var(--hud-line);}
.cr-note{margin:12px 0 0;color:var(--on-dark-soft);font-size:13.5px;line-height:1.45;}
.cr-note kbd{display:inline-block;min-width:22px;padding:0 5px;margin:0 1px;border:1px solid var(--hud-line);border-bottom-width:3px;border-radius:3px;background:var(--navy-4);color:#fff;font:inherit;font-weight:800;text-align:center;}
.cr-over-why{margin:0 0 8px;color:var(--on-dark-soft);font-weight:700;}
.cr-big{display:flex;align-items:baseline;gap:10px;margin:0 0 4px;}
.cr-big b{font-size:clamp(40px,6vw,64px);font-weight:900;font-stretch:115%;line-height:1;font-variant-numeric:tabular-nums;color:#fff;}
.cr-big span{color:var(--on-dark-soft);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px;}
.cr-stats{margin:0 0 12px;color:var(--on-dark);font-weight:700;font-variant-numeric:tabular-nums;}
.cr-rec{margin:0 0 6px;padding:7px 12px 6px;border-left:4px solid var(--live);background:rgba(98,216,78,.12);font-weight:800;}
.cr-rec.off{border-left-color:var(--pz-c3);background:rgba(255,201,60,.1);font-weight:700;}
.cr-rec:empty{display:none;}
.cr-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.cr-btns .pz-ghost{color:#fff;border-color:var(--hud-line);}
.cr-btns .pz-ghost:hover{background:rgba(255,255,255,.08);}

/* classifica di lato */
.cr-tabs{display:flex;gap:4px;margin:0 0 10px;}
.cr-tabs button{flex:1;min-height:36px;border:2px solid var(--line-ui);border-radius:3px;background:var(--panel);color:var(--ink-soft);font-weight:800;font-size:13.5px;cursor:pointer;}
.cr-tabs button[aria-selected="true"]{border-color:var(--btn);color:var(--btn);background:var(--sunk);}
.cr-board{list-style:none;margin:0;padding:0;font-variant-numeric:tabular-nums;}
.cr-board li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:baseline;padding:7px 4px;border-bottom:1px solid var(--line);}
.cr-board li .r{color:var(--ink-soft);font-weight:800;}
.cr-board li .n{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cr-board li .n small{display:block;font-weight:600;color:var(--ink-soft);font-size:12.5px;}
.cr-board li .p{font-weight:900;}
.cr-board li.me{background:var(--sunk);box-shadow:inset 4px 0 0 var(--live);padding-left:10px;}
.cr-board li.empty{display:block;color:var(--ink-soft);border:1px dashed var(--line-ui);padding:12px;}
.cr-mine{margin:10px 0 0;color:var(--ink-soft);font-size:14px;}
.cr-mine b{color:var(--ink);}

@media (max-width:960px){
  .cr-card{grid-template-columns:1fr;}
  .cr-card-art{min-height:180px;}
}
@media (max-width:700px){
  /* sul telefono il palco è in verticale: la strada si vede meglio */
  .cr-stage{aspect-ratio:auto;height:min(74svh,720px);}
  .cr-looks{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;}
  .cr-looks button{padding:6px 2px;font-size:11.5px;}
  .cr-looks svg{width:32px;height:38px;}
  .cr-stage #crStart,.cr-stage #crOver{place-items:end center;padding:10px;background:linear-gradient(transparent 30%,rgba(5,14,28,.6));}
  .cr-stage #crStart .pz-panel-in,.cr-stage #crOver .pz-panel-in{width:100%;padding:12px;}
  .cr-stage #crStart .cr-lead,.cr-stage #crStart .cr-powlist{display:none;}
  .cr-stage .pz-panel-in .cr-title{font-size:24px;margin-bottom:8px;}
  .cr-stage #crStart .pz-panel-k,.cr-stage #crStart .cr-note{display:none;}
  .cr-stage #crStart .cr-row{flex-wrap:nowrap;gap:8px;}
  .cr-stage #crStart .cr-row .pz-field{flex:1 1 auto;min-width:0;}
  .cr-stage #crStart .cr-row .pz-field label{display:none;}
  .cr-stage #crStart .pz-big{padding:0 18px;}
  .cr-warn{top:auto;bottom:58px;}
  .cr-warn .lg{display:none;}
  .cr-warn .sm{display:inline;}
  .cr-cap{bottom:64px;}
}
@media (pointer:coarse){
  /* sul telefono i pulsanti stanno in alto a destra (il pollice resta libero per scorrere) */
  .cr-stage .pz-tools{top:10px;right:10px;bottom:auto;}
  .cr-stage #crFull{display:none;}
  .cr-time{top:52px;}
}
@media (prefers-reduced-motion: reduce){
  .cr-count.pop{animation:none;}
  .cr-cap,.cr-toast{transition:none;}
  .cr-clock.low b,.cr-mult.pop{animation:none;}
  .cr-delta.on,.cr-pop.on{animation-name:crfadeout;}
  @keyframes crfadeout{0%,75%{opacity:1;}100%{opacity:0;}}
  .cr-fade.on{animation-duration:.2s;}
  .cr-speed{display:none;}
}
@media (forced-colors: active){
  .cr-pts,.cr-sub,.cr-clock,.cr-mult,.cr-pow,.cr-delta,.cr-pop,.cr-warn,.cr-toast,.cr-cap b{border:1px solid CanvasText;}
  .cr-speed{display:none;}
}

/* src/pausa/varco.css */
/* Giochi della pausa: «Varco» (94-varco.js). Scheda nell'ingresso e schermata #pzVarco: ingresso con i tre modi,
   poi plancia, schede dei giocatori e colonna con azioni e diario. La plancia resta scura in entrambi i temi, come il
   palco degli altri giochi; i colori delle pedine (ambra e azzurro) sono sempre accompagnati da un segno di forma
   (anello per Ambra, punto per Azzurro) e dal nome del colore. */
.pz-body{--vr-am:#ffb547;--vr-az:#52c4ff;--vr-bad:#ff6f91;--vr-am-t:#8a5200;--vr-az-t:#0a5f94;--vr-bad-t:#b00e28;--vr-cur:var(--vr-am);}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .pz-body{--vr-am-t:#ffc673;--vr-az-t:#7fd3ff;--vr-bad-t:#ff8a8f;}
}
:root[data-theme="dark"] .pz-body{--vr-am-t:#ffc673;--vr-az-t:#7fd3ff;--vr-bad-t:#ff8a8f;}

/* ---------- Scheda nell'ingresso ---------- */
.vr-lcard{display:grid;grid-template-columns:minmax(170px,300px) minmax(0,1fr);gap:8px 28px;align-items:center;margin-bottom:34px;padding:16px 22px;background:var(--navy);color:var(--on-dark);border-radius:3px;}
.vr-lart{display:block;width:100%;height:auto;aspect-ratio:328/288;}
.vr-acell{fill:rgba(140,160,210,.09);stroke:rgba(140,160,210,.28);stroke-width:1;}
.vr-acell.g0{fill:rgba(255,181,71,.16);}
.vr-acell.g1{fill:rgba(82,196,255,.14);}
.vr-ltxt h3{margin:0 0 6px;font-size:clamp(26px,3.2vw,36px);font-weight:900;font-stretch:115%;letter-spacing:-.01em;line-height:1;}
.vr-ltxt p{margin:0 0 14px;max-width:58ch;font-size:15px;line-height:1.45;color:var(--on-dark);}

/* ---------- Ingresso di Varco ---------- */
.vr-resume{margin-bottom:16px;}
.vr-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;align-items:start;}
.vr-mode{display:flex;flex-direction:column;gap:10px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:3px;min-width:0;}
.vr-mode:first-child{border-left:5px solid var(--live);}
.vr-mt{margin:0;font-size:21px;font-weight:900;font-stretch:110%;line-height:1.1;}
.vr-md{margin:0;color:var(--ink-soft);font-size:14.5px;}
.vr-lbl{margin:4px 0 -2px;font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}
.vr-seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:2px solid var(--line-ui);border-radius:3px;overflow:hidden;}
.vr-seg button{min-height:46px;padding:6px 4px;border:0;border-left:1px solid var(--line);background:var(--field);font-weight:800;font-size:14.5px;line-height:1.2;cursor:pointer;}
.vr-seg button:first-child{border-left:0;}
.vr-seg button small{display:block;font-weight:500;font-size:12px;color:var(--ink-soft);}
.vr-seg button[aria-checked="true"]{background:var(--sel);color:var(--sel-ink);}
.vr-seg button[aria-checked="true"] small{color:inherit;opacity:.85;}
.vr-seg button:focus-visible{outline-offset:-4px;}
.vr-dot{display:inline-block;width:11px;height:11px;margin-right:5px;border-radius:50%;vertical-align:-1px;border:1px solid rgba(10,14,24,.5);}
.vr-dot.c0{background:var(--vr-am);}
.vr-dot.c1{background:var(--vr-az);}
.vr-check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;cursor:pointer;}
.vr-check input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--btn);}
.vr-mode > .pz-go{align-self:flex-start;margin-top:2px;}
.vr-openh{margin:12px 0 0;}
.vr-mode .pz-roomrow{padding:10px 12px;gap:10px;}
.vr-mode .pz-roomrow b{font-size:16px;}
.vr-below{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;}
.vr-rules{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:3px;font-size:15px;}
.vr-rules ol,.vr-rules ul{margin:0 0 16px;padding-left:20px;}
.vr-rules li{margin-bottom:6px;}
.vr-legend{list-style:none;padding-left:0 !important;}
.vr-legend li{display:flex;gap:10px;align-items:center;}
.vr-legend .vr-runner{animation:none;}
.vr-legend svg{flex:none;width:26px;height:26px;padding:2px;border-radius:50%;background:#10203d;overflow:visible;}

/* ---------- Partita ---------- */
.vr-play{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"board cards" "board side";grid-template-rows:auto 1fr;gap:14px 20px;align-items:start;}
.vr-board{grid-area:board;position:sticky;top:12px;padding:6px;border-radius:3px;background:radial-gradient(120% 90% at 50% 8%,#17345f 0%,#0d2140 50%,#081528 100%);}
.vr-board svg{display:block;width:100%;height:auto;max-height:calc(100svh - 40px);touch-action:manipulation;-webkit-user-select:none;user-select:none;forced-color-adjust:none;}
.vr-board svg:focus{outline:none;}
.vr-board svg:focus-visible{outline:3px solid var(--focus-dark);outline-offset:-3px;}
.vr-board .pz-tools{top:8px;right:8px;bottom:auto;}

.vr-cell{fill:rgba(140,160,210,.08);stroke:rgba(140,160,210,.26);stroke-width:1.2;transition:fill .2s;}
.vr-cell.goal.c0{fill:rgba(255,181,71,.14);}
.vr-cell.goal.c1{fill:rgba(82,196,255,.13);}
.vr-cell.can{cursor:pointer;}
.vr-cell.dest{cursor:pointer;fill:rgba(140,160,210,.2);}
@media (hover:hover){ .vr-cell.dest:hover{fill:rgba(140,160,210,.34);} }
.vr-rowlbl{fill:#8e9ab8;font-size:11px;text-anchor:middle;dominant-baseline:middle;}
.vr-goallbl{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-anchor:middle;text-transform:uppercase;}
.vr-goallbl.c0{fill:#ffb547;}
.vr-goallbl.c1{fill:#52c4ff;}
#vrLabels,#vrUnder,#vrMarks{pointer-events:none;}
#vrUnder ellipse{fill:rgba(0,0,0,.36);}
.vr-piece{cursor:pointer;}
.vr-piece.idle{cursor:default;pointer-events:none;}
.vr-piece .vr-body{stroke:rgba(10,14,24,.7);stroke-width:2;}
.vr-piece.c0 .vr-body{fill:url(#vrG0);}
.vr-piece.c1 .vr-body{fill:url(#vrG1);}
.vr-mk0{fill:none;stroke:rgba(10,14,24,.5);stroke-width:2.2;pointer-events:none;}
.vr-mk1{fill:rgba(10,14,24,.55);pointer-events:none;}
.vr-piece.moved,#vrUnder .moved{animation:vrslide .28s ease-out;}
@keyframes vrslide{from{transform:translate(var(--dx),var(--dy));}to{transform:none;}}
.vr-ghost{pointer-events:none;transform-box:fill-box;transform-origin:center;animation:vrfade .7s ease-out forwards;}
.vr-ghost.c0{fill:#ffb547;}
.vr-ghost.c1{fill:#52c4ff;}
@keyframes vrfade{from{opacity:.9;}to{opacity:0;transform:scale(.4);}}
.vr .vr-halo{fill:none;stroke:#e9edf6;stroke-width:2.5;animation:vrhalo 1.4s ease-in-out infinite;}
@keyframes vrhalo{50%{stroke-opacity:.35;}}
.vr .vr-destdot{fill:var(--vr-cur);opacity:.85;}
.vr .vr-capring{fill:none;stroke:var(--vr-bad);stroke-width:3;}
.vr .vr-danger{fill:none;stroke:var(--vr-bad);stroke-width:2.4;stroke-dasharray:4 3;}
.vr .vr-target{fill:none;stroke:#e9edf6;stroke-width:2;stroke-dasharray:2 3;}
.vr .vr-runner{fill:none;stroke:#62D84E;stroke-width:3;animation:vrhalo 1s ease-in-out infinite;}
.vr .vr-runner.bad{stroke:var(--vr-bad);}
.vr .vr-warn{fill:var(--vr-bad);}
.vr .vr-warn-t{fill:#0a0e18;font-size:11px;font-weight:800;text-anchor:middle;dominant-baseline:central;}
.vr .vr-lastfrom{fill:none;stroke:rgba(233,237,246,.42);stroke-width:1.6;stroke-dasharray:2 3;}
.vr .vr-lastto{fill:none;stroke:rgba(233,237,246,.6);stroke-width:2;}
.vr .vr-key{fill:none;stroke:var(--vr-bad);stroke-width:3;}
.vr .vr-coachhl{fill:none;stroke:#e9edf6;stroke-width:2.2;stroke-dasharray:5 4;opacity:.85;}
.vr .vr-coachhl.bad{stroke:var(--vr-bad);opacity:1;}
.vr .vr-cursor{fill:none;stroke:#62D84E;stroke-width:3;}

/* schede dei giocatori */
.vr-cards{grid-area:cards;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;}
.vr-card{position:relative;min-width:0;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:3px;--pc:var(--vr-am);--pt:var(--vr-am-t);}
.vr-card[data-c="1"]{--pc:var(--vr-az);--pt:var(--vr-az-t);}
.vr-card.turn{border-color:var(--pt);box-shadow:inset 0 5px 0 var(--pc);}
.vr-cn{display:flex;align-items:center;gap:6px;min-width:0;font-weight:800;}
.vr-cn .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vr-sw{flex:none;width:18px;height:18px;}
.vr-sw circle{fill:var(--pc);stroke:rgba(10,14,24,.5);stroke-width:1;}
.vr-sw .m{fill:none;stroke:rgba(10,14,24,.6);stroke-width:2;}
.vr-card[data-c="1"] .vr-sw .m{fill:rgba(10,14,24,.6);stroke:none;}
.vr-card .goal{margin-top:1px;color:var(--ink-soft);font-size:12.5px;}
.vr-card .goal b{color:var(--pt);font-weight:800;}
.vr-card .steps{display:flex;align-items:baseline;gap:8px;margin-top:4px;}
.vr-card .steps b{font-size:40px;font-weight:900;font-stretch:115%;line-height:1;color:var(--pt);font-variant-numeric:tabular-nums;}
.vr-card .steps span{color:var(--ink-soft);font-size:12.5px;line-height:1.2;}
.vr-card .meta{margin-top:4px;color:var(--ink-soft);font-size:12.5px;font-variant-numeric:tabular-nums;}
.vr-card .clock{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:2px;background:var(--sunk);font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;}
.vr-card .clock.run{background:var(--sel);color:var(--sel-ink);}
.vr-card .clock.low{background:var(--danger);color:#fff;}

/* colonna: azioni e diario */
.vr-side{grid-area:side;min-width:0;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:3px;}
.vr-box{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.vr-box p{margin:0;}
.vr-box b{color:var(--ink);}
.vr-k{font-stretch:87.5%;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);}
.vr-hint{font-size:17px;font-weight:700;line-height:1.35;}
.vr-first{padding:8px 10px;border-left:4px solid var(--danger);background:var(--sunk);font-size:14.5px;}
.vr-result{color:var(--ink-soft);font-size:14.5px;}
.vr-coach{padding:10px 12px;border-left:4px solid var(--vr-cur);background:var(--sunk);font-size:14.5px;}
.vr-coach.bad{border-left-color:var(--vr-bad);}
.vr-coach.bad::before{content:"!";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:50%;background:var(--vr-bad);color:#0a0e18;font-size:12px;font-weight:900;vertical-align:1px;}
.vr-btns{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;}
.vr-code b{letter-spacing:.15em;}
.vr-note{color:var(--ink-soft);font-size:14.5px;}
.vr-gsteps{display:flex;gap:6px;}
.vr-gsteps i{width:24px;height:4px;border-radius:2px;background:var(--line);}
.vr-gsteps i.on{background:var(--ink);}
.vr-gt{margin:0;font-size:21px;font-weight:900;font-stretch:110%;}
.vr-endt{font-size:30px;font-weight:900;font-stretch:112%;line-height:1.05;}
.vr-endt.c0{color:var(--vr-am-t);}
.vr-endt.c1{color:var(--vr-az-t);}
.vr-endsub{font-size:15.5px;}
.vr-why p{margin:0 0 8px;color:var(--ink-soft);font-size:14.5px;}
.vr-keytxt{color:var(--vr-bad-t) !important;}
.vr-copytxt{width:100%;height:78px;padding:8px;resize:none;border:1px solid var(--line-ui);border-radius:3px;background:var(--field);color:var(--ink);font:12px/1.4 ui-monospace,Menlo,Consolas,monospace;}
.vr-play b.c0,.vr-play span.c0{color:var(--vr-am-t);}
.vr-play b.c1,.vr-play span.c1{color:var(--vr-az-t);}
.vr-logh{margin-top:4px;}
.vr-log{list-style:none;max-height:230px;margin:0;padding:0;overflow:auto;border-top:1px solid var(--line);font-size:14px;font-variant-numeric:tabular-nums;}
.vr-log li{display:flex;gap:10px;padding:4px 2px;border-bottom:1px solid var(--line);}
.vr-log li.empty{display:block;color:var(--ink-soft);}
.vr-log .t{min-width:22px;color:var(--ink-soft);text-align:right;}
.vr-log .cap{color:var(--vr-bad-t);font-weight:700;}

@media (max-width:960px){
  .vr-lcard{grid-template-columns:minmax(140px,220px) minmax(0,1fr);}
  .vr-modes{grid-template-columns:1fr;}
  .vr-below{grid-template-columns:1fr;}
  /* una colonna: prima le schede, poi la plancia, poi azioni e diario */
  .vr-play{grid-template-columns:minmax(0,1fr);grid-template-areas:"cards" "board" "side";grid-template-rows:auto;}
  .vr-board{position:relative;top:auto;}
  .vr-board svg{max-height:none;}
}
@media (max-width:760px){
  body:has(#pzVarco:not([hidden]) #vrPlay:not([hidden])) .hall{display:none;}
  body:has(#pzVarco:not([hidden]) #vrPlay:not([hidden])) .pz{padding-top:10px;}
  .vr-lcard{grid-template-columns:1fr;padding:14px 16px;}
  .vr-lart{max-width:240px;margin:0 auto;}
  .vr-play{gap:10px;}
  .vr-board{padding:2px;margin:0 calc(var(--gut) * -1 + 4px);border-radius:0;}
  .vr-cards{gap:8px;}
  .vr-card{padding:8px 10px;}
  .vr-card .goal .dir{display:none;}
  .vr-card .steps b{font-size:30px;}
  .vr-card .steps span{font-size:11.5px;}
  .vr-card .meta{font-size:12px;}
  .vr-card .clock{font-size:18px;}
  .vr-rowlbl{font-size:15px;}
  .vr-goallbl{font-size:16px;}
  .vr-side{padding:12px;}
  .vr-hint{font-size:16px;}
}
@media (prefers-reduced-motion: reduce){
  .vr-piece.moved,#vrUnder .moved,.vr-ghost{animation:none;}
  .vr-ghost{display:none;}
  .vr .vr-halo,.vr .vr-runner{animation:none;}
  .vr-cell{transition:none;}
}
@media (forced-colors: active){
  .vr-card,.vr-mode,.vr-side,.vr-rules{border:1px solid CanvasText;}
  .vr-card.turn{border-width:3px;}
  .vr-seg button[aria-checked="true"]{outline:3px solid Highlight;outline-offset:-3px;}
  .vr-lart,.vr-legend svg{forced-color-adjust:none;}
}
