/* Palette per gioco, coerente con Live Games Hub */
.game-theme{--game-accent:#e1bd76;--game-dark:#222c43;background:radial-gradient(circle at 85% 3%,var(--game-dark),transparent 33%),linear-gradient(135deg,#0b111e,#111a29)}
.game-theme .button.primary{background:var(--game-accent);color:#121821}.game-theme .eyebrow,.game-theme .block-label,.game-theme .timer{color:var(--game-accent)}
.game-theme .panel{border-color:color-mix(in srgb,var(--game-accent) 24%,#334257)}
.game-theme .tag{border-color:var(--game-accent)}
.tabu-theme{--game-accent:#e8ac70;--game-dark:#51332e}
.mystery-theme{--game-accent:#d9a36d;--game-dark:#253848}
.game-header{position:relative;min-height:255px;display:flex;align-items:center;overflow:hidden;border:1px solid #6f563e;border-radius:19px;background:linear-gradient(90deg,#0e1727 0%,#101b2de8 42%,#17233515 100%),var(--game-picture,radial-gradient(circle at 85% 40%,#665037,#111a2b));background-size:cover;background-position:center;}
.game-header:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101828e9 0%,#0d1524ab 45%,transparent 90%);pointer-events:none}
.game-header-text{position:relative;z-index:1;padding:35px;max-width:670px}
.game-header h1{font-size:clamp(2.4rem,6vw,4.8rem);letter-spacing:-.055em;line-height:1;margin:10px 0}
.game-header h1 em{font-style:normal;color:var(--game-accent)}
.game-header p:not(.eyebrow){color:#d8d9dc;max-width:550px}
.game-mystery{--game-picture:url("assets/games/mystery.webp")}
.live-team{border:1px solid #4f6072;border-radius:12px;padding:11px 12px;margin-top:12px;background:#1a293d}
.live-team.active{border-color:var(--game-accent);box-shadow:inset 3px 0 var(--game-accent)}
.live-team-header{display:flex;justify-content:space-between;gap:15px;padding:4px 2px 10px;color:#ffdaaa}
.live-member{padding:9px 1px;border-top:1px solid #455267;display:flex;align-items:center;justify-content:space-between;gap:10px}
.live-member>span{overflow-wrap:anywhere}.live-member-controls{display:flex;align-items:center;gap:7px}
.live-member .mini-btn{background:#334257;border-color:#8093ab;width:37px;height:37px;font-size:1.3rem}
.live-member .score-num{font-size:1.2rem;min-width:26px}
.share-grid{display:flex;flex-wrap:wrap;gap:13px}.share-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px;background:#263449;border:1px solid #4a586c;border-radius:9px;flex:1;min-width:225px}
.offline{border-left-color:#ee7575!important;color:#ffe2dc}
#live-errors{color:#f7a5a5}
.setup-team{min-width:0;border:1px solid #536074;border-radius:9px;margin:13px 0;padding:12px}
.setup-team legend{font-weight:850;color:#efc985;padding:0 5px}
.setup-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}
.setup-team input{width:100%}
#tabu-teamnames{display:block}
#tabu-play{display:none!important}
.mystery-output{display:grid;gap:17px;padding-top:30px;scroll-margin-top:100px}
.mystery-output[hidden]{display:none}
.mystery-output .panel{margin:0}.m-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.m-role{background:#202c3e;padding:18px}.m-role h3{font-size:1rem;margin:0 0 10px}.m-role textarea{min-height:165px;font-size:.85rem;line-height:1.5}.m-role button{margin-top:9px}
.m-clues details{padding:13px 10px;border-bottom:1px solid #465367}.m-clues details[open]{background:#243046}
.m-clues summary{font-weight:800;color:#e2c28c;cursor:pointer}.m-clues p{padding:9px;color:#e1e4e9}
.mystery-output details summary{cursor:pointer;color:#efc886;font-weight:800}
.display-mode{background:transparent!important}
.display-mode .overlay-root{max-width:740px}
.game-tile{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--game-accent,#eecb7e) 32%,#334257)!important;isolation:isolate}
.game-tile .tile-head,.game-tile h3,.game-tile p,.game-tile .tile-meta,.game-tile .tile-actions{position:relative;z-index:1}
.game-tile:before{content:"";position:absolute;inset:0 0 auto;height:154px;background-image:linear-gradient(180deg,#11192b15,#151f31),var(--game-picture,none);background-size:cover;background-position:center;opacity:.76;z-index:0}
.game-tile:after{content:"";position:absolute;inset:90px 0 0;background:linear-gradient(180deg,transparent,#172134 85%);pointer-events:none}
.game-tile h3{margin-top:70px}
.game-tile[data-game="mystery"]{--game-accent:#d7b078;--game-picture:url("assets/games/mystery.webp")}
.game-tile[data-game="tabu"]{--game-accent:#ecb887;--game-picture:url("assets/games/tabu.webp")}
.game-tile[data-game="sabotatore"]{--game-accent:#7cceaf;--game-picture:url("assets/games/sabotatore.webp")}
.game-tile[data-game="processo"]{--game-accent:#f2bf7b;--game-picture:url("assets/games/processo.webp")}
.game-tile[data-game="spia"]{--game-accent:#83b1d8;--game-picture:url("assets/games/spia.webp")}
.game-tile[data-game="menzogna"]{--game-accent:#f08d88;--game-picture:url("assets/games/menzogna.webp")}
.game-tile[data-game="bunker"]{--game-accent:#c4a56d;--game-picture:url("assets/games/bunker.webp")}
.game-tile[data-game="colpo"]{--game-accent:#e3b57a;--game-picture:url("assets/games/colpo.webp")}
.game-tile[data-game="asta"]{--game-accent:#e5bd81;--game-picture:url("assets/games/asta.webp")}
.game-tile[data-game="domino"]{--game-accent:#aeb1f0;--game-picture:url("assets/games/domino.webp")}
.game-tile[data-game="countdown"]{--game-accent:#e78c66;--game-picture:url("assets/games/countdown.webp")}
body[data-game="mystery"]{--game-accent:#d7b078;--game-dark:#253848}
body[data-game="tabu"]{--game-accent:#ecb887;--game-dark:#503327}
body[data-game="sabotatore"]{--game-accent:#7cceaf;--game-dark:#1a4340}
body[data-game="processo"]{--game-accent:#f2bf7b;--game-dark:#53402b}
body[data-game="spia"]{--game-accent:#83b1d8;--game-dark:#1d3a52}
body[data-game="menzogna"]{--game-accent:#f08d88;--game-dark:#502c42}
body[data-game="bunker"]{--game-accent:#c4a56d;--game-dark:#48402d}
body[data-game="colpo"]{--game-accent:#e3b57a;--game-dark:#543628}
body[data-game="asta"]{--game-accent:#e5bd81;--game-dark:#4d3e22}
body[data-game="domino"]{--game-accent:#aeb1f0;--game-dark:#313057}
body[data-game="countdown"]{--game-accent:#e78c66;--game-dark:#4e2d32}
@media(max-width:650px){.setup-players,.m-roles{grid-template-columns:1fr}.share-link{min-width:0}.game-header-text{padding:23px}.game-header{min-height:190px}}
@media print{.site-header,.footer,.button,.m-roles button,.two-col:first-of-type{display:none!important}body{background:#fff;color:#111}.panel{break-inside:avoid;border:1px solid #999}.m-role textarea{color:#111;background:white}}

/* Le immagini appartengono al gioco, non solo alle schede della homepage */
.hero-art{background:linear-gradient(90deg,#0c1424aa,#0f1d3288),url("assets/games/mystery.webp") center/cover,radial-gradient(circle at 75% 32%,#4e3725,#0d1625)}
.hero-art .art-orbit{opacity:.38}
.hero-art .art-keyhole{font-size:7rem;text-shadow:0 0 20px #101826}
body[data-page="host"] .host-heading,.tabu-theme .host-heading{border:1px solid #42536c;border-radius:15px;padding:25px;background-image:linear-gradient(90deg,#0d1727f5,#131e31c9,#131d2988),var(--game-picture,none);background-size:cover;background-position:center}
body[data-game="mystery"]{--game-picture:url("assets/games/mystery.webp")}
body[data-game="tabu"],.tabu-theme{--game-picture:url("assets/games/tabu.webp")}
body[data-game="sabotatore"]{--game-picture:url("assets/games/sabotatore.webp")}
body[data-game="processo"]{--game-picture:url("assets/games/processo.webp")}
body[data-game="spia"]{--game-picture:url("assets/games/spia.webp")}
body[data-game="menzogna"]{--game-picture:url("assets/games/menzogna.webp")}
body[data-game="bunker"]{--game-picture:url("assets/games/bunker.webp")}
body[data-game="colpo"]{--game-picture:url("assets/games/colpo.webp")}
body[data-game="asta"]{--game-picture:url("assets/games/asta.webp")}
body[data-game="domino"]{--game-picture:url("assets/games/domino.webp")}
body[data-game="countdown"]{--game-picture:url("assets/games/countdown.webp")}

/* Tabù setup: optional timer without visual clutter */
.timer-choice{display:flex!important;align-items:center;gap:12px;margin:16px 0 4px;padding:12px 14px;border:1px solid #5b6a7d;border-radius:10px;background:#172338;cursor:pointer}
.timer-choice input[type="checkbox"]{width:19px;height:19px;flex-shrink:0;accent-color:#e8ac70;margin:0}
.timer-choice span{font-size:.94rem;font-weight:760;color:#e8e9ee}
.timer-choice+.hint{margin:5px 0 14px}
