/* Le Martini Club · habillage commun à tout le site (pages du Martini Club et Duels) :
   barre du haut, sous-menu Duels, fond animé, barre de lecture, retour en haut.
   Les couleurs sont définies sur ces éléments eux-mêmes : Duels a ses propres variables de page. */
#tvnav,#tvprog,#tvup,.amb{--fg:#efe7d6;--mut:#9d9482;--acc:#e5414f;--accfg:#17120a;--line2:rgba(229,65,79,.45);--navbg:rgba(10,8,10,.88);--rb:12px;--wrap:1180px;--cond:"Barlow Condensed","Arial Narrow",sans-serif}
:root[data-theme="light"] :is(#tvnav,#tvprog,#tvup,.amb){--fg:#1c1517;--mut:#7c7064;--acc:#c41d2c;--accfg:#fffaf3;--line2:rgba(196,29,44,.42);--navbg:rgba(248,243,234,.9)}
#tvnav{font-family:Spectral,Georgia,serif;color:var(--fg)}
#tvnav *,#tvnav *::before,#tvnav *::after{box-sizing:border-box}
#tvnav{position:sticky;top:0;z-index:50;background:var(--navbg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(229,65,79,.3)}
#tvnav .in{display:flex;align-items:center;gap:6px;max-width:calc(var(--wrap) + 80px);margin:0 auto;padding:10px clamp(16px,3vw,40px);padding-top:calc(10px + env(safe-area-inset-top,0px))}
#tvnav .logo{display:block;margin-right:auto;order:0;flex:none;padding:4px 10px 4px 0}
#tvnav .logo img{height:38px;width:auto}
#tvnav .links{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:4px 2px;margin:-4px 0}
#tvnav .links::-webkit-scrollbar{display:none}
#tvnav a.l{display:inline-flex;align-items:center;gap:8px;flex:none;padding:10px 14px;border:1px solid transparent;border-radius:var(--rb);font:500 15px/1 var(--cond);text-transform:uppercase;letter-spacing:.16em;text-decoration:none;color:var(--fg);transition:border-color .25s,color .25s,background .25s,transform .18s}
#tvnav a.l svg{width:17px;height:17px;flex:none}
#tvnav a.l:hover{border-color:var(--acc);color:var(--acc)}
#tvnav a.l.on{background:var(--acc);color:var(--accfg)}
#tvnav a.l.play{border-color:rgba(229,65,79,.6);margin-left:6px}
#tvnav a.l.play:hover{background:var(--acc);color:var(--accfg)}
@media (max-width:900px){#tvnav .in{flex-wrap:wrap;row-gap:4px}#tvnav .links{order:3;width:calc(100% + 12px);margin:-2px -6px;padding:4px 6px}#tvnav a.l.play{order:2;margin-left:0}#tvnav a.l{padding:9px 11px;font-size:14px;letter-spacing:.12em}#tvnav .logo img{height:32px}}
.lg-l{display:none!important}
:root[data-theme="light"] .lg-d{display:none!important}
:root[data-theme="light"] .lg-l{display:block!important}
#tvnav .thm{flex:none;display:grid;place-items:center;width:42px;height:42px;margin-left:6px;border-radius:var(--rb);border:1px solid var(--line2);background:transparent;color:var(--fg);cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .18s}
#tvnav .thm svg{width:19px;height:19px}
#tvnav .thm:hover{background:var(--acc);border-color:var(--acc);color:var(--accfg)}
#tvnav .thm .sun{display:none}
:root[data-theme="light"] #tvnav .thm .sun{display:block}
:root[data-theme="light"] #tvnav .thm .moon{display:none}
@media (max-width:900px){#tvnav .thm{order:2;width:40px;height:40px}}
.amb{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.amb i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);border-radius:50%;opacity:var(--o);filter:blur(28px);background:radial-gradient(circle at 40% 40%,rgba(229,65,79,.9),rgba(229,65,79,0) 68%);animation:amb var(--d) ease-in-out var(--dl) infinite alternate;will-change:transform}
.amb i.c{background:radial-gradient(circle at 40% 40%,rgba(239,214,170,.75),rgba(239,214,170,0) 68%)}
@keyframes amb{0%{transform:translate(0,0) scale(1)}50%{transform:translate(calc(var(--dx) * .5),calc(var(--dy) * -.6)) scale(1.15)}100%{transform:translate(var(--dx),var(--dy)) scale(.9)}}
:root[data-theme="light"] .amb i{opacity:calc(var(--o) * .8);mix-blend-mode:multiply}
:root[data-theme="light"] .amb i.c{background:radial-gradient(circle at 40% 40%,rgba(201,164,92,.7),rgba(201,164,92,0) 68%)}
@media (prefers-reduced-motion:reduce){.amb i{animation:none}}
#tvprog{position:fixed;left:0;right:0;top:0;height:3px;z-index:120;background:linear-gradient(90deg,var(--acc),#ff8f98);transform-origin:0 50%;transform:scaleX(0);pointer-events:none;box-shadow:0 0 10px rgba(229,65,79,.5)}
#tvup{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:89;width:48px;height:48px;border-radius:50%;border:1px solid var(--line2);background:var(--navbg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--fg);display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .3s,transform .3s,background .2s,color .2s;box-shadow:0 10px 30px rgba(0,0,0,.3)}
#tvup svg{width:20px;height:20px}
#tvup.on{opacity:1;transform:none;pointer-events:auto}
#tvup:hover{background:var(--acc);color:var(--accfg);border-color:var(--acc)}
#tvnav .acc{flex:none;display:inline-flex;align-items:center;gap:8px;height:42px;margin-left:6px;padding:0 14px;border-radius:var(--rb);border:1px solid var(--line2);color:var(--fg);text-decoration:none;font:500 14px/1 var(--cond);text-transform:uppercase;letter-spacing:.14em;transition:background .25s,color .25s,border-color .25s}
#tvnav .acc svg{width:18px;height:18px}
#tvnav .acc img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1.5px solid var(--acc);margin-left:-6px}
#tvnav .acc:hover{background:var(--acc);color:var(--accfg);border-color:var(--acc)}
#tvnav .acc span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:900px){#tvnav .acc{order:2;height:40px;padding:0 10px}#tvnav .acc span{display:none}#tvnav .acc img{margin:0}}

/* ===== Sous-menu Duels : un seul groupe d'onglets, centré, discret ===== */
#tvnav .tvsub{border-top:1px solid rgba(229,65,79,.14);background:rgba(0,0,0,.18)}
#tvnav .tvsub .in{justify-content:center;padding-top:8px;padding-bottom:8px}
#tvnav .tvsub .grp{display:flex;align-items:center;gap:2px;padding:4px;border:1px solid rgba(229,65,79,.22);border-radius:999px;background:rgba(10,8,10,.55);overflow-x:auto;scrollbar-width:none;max-width:100%}
#tvnav .tvsub .grp::-webkit-scrollbar{display:none}
#tvnav .tvsub a.l,#tvnav .tvsub button.l{position:relative;display:inline-flex;align-items:center;gap:8px;flex:none;padding:8px 14px;border:0;border-radius:999px;background:none;color:var(--mut);font:500 14px/1 var(--cond);text-transform:uppercase;letter-spacing:.14em;text-decoration:none;cursor:pointer;transition:color .2s,background .2s}
#tvnav .tvsub a.l svg,#tvnav .tvsub button.l svg{width:16px;height:16px}
#tvnav .tvsub a.l:hover,#tvnav .tvsub button.l:hover{color:var(--fg);background:rgba(229,65,79,.12);transform:none;border-color:transparent}
#tvnav .tvsub a.l.on{color:var(--fg);background:rgba(229,65,79,.16)}
#tvnav .tvsub a.l.on::after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:2px;background:var(--acc)}
#tvnav .tvsub .sep{flex:none;width:1px;height:20px;margin:0 4px;background:rgba(229,65,79,.25)}
#tvnav .tvsub button.out{padding:8px 11px}
#tvnav .tvsub button.out:hover{color:#ff8b8b}
#tvnav .tvsub .bd{background:#c8202f;color:#fff;border-radius:9px;padding:2px 6px;font-size:11px;letter-spacing:0}
@media (max-width:760px){#tvnav .tvsub .in{justify-content:flex-start}#tvnav .tvsub a.l span,#tvnav .tvsub button.l span{display:none}#tvnav .tvsub a.l,#tvnav .tvsub button.l{padding:9px 12px}#tvnav .tvsub a.l.on::after{left:10px;right:10px}}
@media (hover:hover){#tvnav a.l:hover{transform:translateY(-1px)}}
/* Largeurs intermédiaires (tablette, petite fenêtre) : logo à gauche, Duels / compte / déconnexion / thème groupés à droite */
@media (max-width:900px){#tvnav a.l.play{margin-left:auto}#tvnav .logo{margin-right:0}#tvnav .links{justify-content:flex-start}}
@media (min-width:621px) and (max-width:900px){#tvnav .links{justify-content:center}}
/* Déconnexion : simple icône rouge, collée au bouton du profil */
#tvnav .out{flex:none;display:grid;place-items:center;width:36px;height:36px;margin-left:2px;padding:0;border:0;border-radius:50%;background:none;color:var(--acc);cursor:pointer;transition:background .2s,color .2s,transform .18s}
#tvnav .out svg{width:20px;height:20px}
#tvnav .out span{display:none}
#tvnav .out:hover{background:rgba(229,65,79,.14);transform:none}
@media (max-width:900px){#tvnav .out{order:2}}

/* Six rubriques : on gagne de la place sur les écrans moyens */
@media (min-width:901px) and (max-width:1360px){#tvnav a.l{padding:10px 10px;letter-spacing:.1em;gap:6px}#tvnav .links a.l svg{display:none}}
