/* =====================================================================================
 *  LE THEME DU BUREAU, PARTAGE (15/10/2026, Ju : « le meme theme que le bureau du
 *  president, en terme de boutons etc. ») — Presse & coulisses, marche du staff, centre de
 *  formation, stade. Memes couleurs, memes boutons que public/bureau.js (.bu-*), sous un
 *  prefixe a part (.tb-*) pour ne jamais dependre du chargement du bureau.
 *  `.tb` habille aussi les .card et .btn des pages qu'on n'a pas reecrites ligne a ligne.
 * ===================================================================================== */
/* 17/10/2026 (Ju) : « salle de presse et stade ne remplissent pas bien l'écran » — plus de plafond
   à 1 100 px, les pages du bureau prennent toute la zone de contenu comme l'accueil. */
.tb{--tb-v:#3ddc97;--tb-or:#ffd76a;--tb-f:#0f1a30;--tb-l:#ffffff14;--tb-m:#aab6d3;max-width:none;margin:0}
.tb button{font-family:inherit}
/* le bandeau photo */
.tb-hero{position:relative;overflow:hidden;border-radius:18px;margin-bottom:12px;border:1px solid #3ddc9740;background:#0b1530 center/cover no-repeat;box-shadow:0 10px 30px #0006;min-height:150px;display:flex;align-items:flex-end}
.tb-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071a17f2 0%,#0b1530d9 50%,#0b153040 100%)}
.tb-hero-in{position:relative;z-index:1;padding:18px;width:100%;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}
.tb-kick{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--tb-v);font-weight:800}
.tb-titre{font-size:26px;font-weight:900;color:#fff;margin:4px 0 6px;line-height:1.1}
.tb-sous{color:#e9e3cf;font-size:13px;line-height:1.45;max-width:620px}
.tb-chiffres{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}
.tb-chiffre small{display:block;font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--tb-m)}
.tb-chiffre b{font-size:18px;color:#fff}
.tb-chiffre b.or{color:var(--tb-or)}.tb-chiffre b.v{color:var(--tb-v)}.tb-chiffre b.r{color:#ff7a8a}
/* les onglets */
.tb-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:5px;margin:0 0 14px;position:sticky;top:0;z-index:6;border-radius:14px;background:#0f1a30f2;border:1px solid var(--tb-l);box-shadow:0 6px 20px #0005;backdrop-filter:blur(6px)}
.tb-tabs::-webkit-scrollbar{display:none}
.tb-tab{flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 14px;border-radius:10px;border:0;background:transparent;color:var(--tb-m);font-weight:700;font-size:13.5px;cursor:pointer;white-space:nowrap;transition:.15s}
.tb-tab:hover{color:#fff;background:#ffffff0a}
.tb-tab.on{background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117;box-shadow:0 4px 14px #3ddc9733}
.tb-nb{min-width:18px;height:18px;line-height:18px;padding:0 5px;border-radius:9px;background:#ff5b6e;color:#fff;font-size:11px;font-weight:900}
.tb-tab.on .tb-nb{background:#062117;color:var(--tb-v)}
.tb-seg{display:inline-flex;gap:4px;padding:4px;border-radius:11px;background:var(--tb-f);border:1px solid var(--tb-l);margin-bottom:10px;flex-wrap:wrap}
.tb-seg button{border:0;background:transparent;color:var(--tb-m);border-radius:8px;padding:6px 14px;font-weight:700;cursor:pointer}
.tb-seg button.on{background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117}
/* titres de section */
.tb-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:18px 0 10px}
.tb-h h3{margin:0;font-size:16px;color:#fff}.tb-h span{color:var(--tb-m);font-size:12px}
/* cartes */
.tb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.tb-carte{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(160deg,#16203d,#0e1530);border:1px solid var(--tb-l);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}
.tb-carte:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0009}
.tb-carte.dur{border-color:#ff5b6e55}.tb-carte.or{border-color:#ffd76a55}.tb-carte.eteinte{opacity:.6}
.tb-bande{height:70px;background:#0b0f1e center/cover no-repeat;position:relative;flex:none}
.tb-bande:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0e153000,#0e1530)}
.tb-cat{position:absolute;top:9px;left:10px;z-index:1;font-size:10px;font-weight:900;letter-spacing:1px;padding:3px 8px;border-radius:20px;background:#000a;border:1px solid currentColor;color:var(--tb-v);text-transform:uppercase}
.tb-cat.or{color:var(--tb-or)}.tb-cat.r{color:#ff7a8a}.tb-cat.bl{color:#7fa8ff}.tb-cat.gr{color:#c9c9c9}
.tb-etiq{position:absolute;top:9px;right:10px;z-index:1;font-size:10px;font-weight:900;padding:3px 8px;border-radius:20px;background:var(--tb-or);color:#2a1d06}
.tb-etiq.r{background:#ff5b6e;color:#fff}.tb-etiq.v{background:var(--tb-v);color:#062117}
.tb-qui{display:flex;gap:10px;align-items:center;padding:0 12px;margin-top:-26px;position:relative;z-index:1}
.tb-qui b{display:block;color:#fff;font-size:14.5px}.tb-qui small{color:var(--tb-m);font-size:12px}
.tb-photo{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid var(--tb-or);box-shadow:0 0 14px #ffd76a44;flex:none;background:#0b1530}
.tb-corps{padding:10px 12px 12px;display:flex;flex-direction:column;gap:5px;flex:1}
.tb-corps .t{font-weight:800;color:#fff3cf}.tb-corps .m{color:var(--tb-m);font-size:13px;line-height:1.45}
.tb-corps .d{color:#cdd6f4;font-size:12.5px;line-height:1.45}.tb-corps .d.dur{color:#ffb3bd}
/* boutons */
.tb-act{display:flex;gap:8px;margin-top:auto;padding-top:8px;flex-wrap:wrap}
.tb-go{flex:1;border:0;border-radius:11px;padding:10px;font-weight:900;cursor:pointer;background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117;font-size:13px}
.tb-go.or{background:linear-gradient(135deg,#ffe08a,#e0a72e);color:#2a1d06}
.tb-go.r{background:linear-gradient(135deg,#ff7a8a,#c9344a);color:#fff}
.tb-go:disabled,.tb-del:disabled,.tb-mini:disabled{filter:grayscale(1);opacity:.45;cursor:default}
.tb-go small,.tb-del small{display:block;font-weight:700;font-size:10.5px;opacity:.85;margin-top:2px}
.tb-del{flex:1;border:1px solid var(--tb-l);background:#ffffff0a;color:#e9e3cf;border-radius:11px;padding:10px 12px;font-weight:700;cursor:pointer;font-size:12.5px}
.tb-del:hover:not(:disabled){border-color:#ffffff33;background:#ffffff12}
.tb-mini{border:1px solid #3ddc9766;background:#3ddc971a;color:var(--tb-v);border-radius:9px;padding:6px 10px;font-weight:800;font-size:12px;cursor:pointer;white-space:nowrap}
.tb-mini.or{border-color:#ffd76a77;background:#ffd76a1a;color:var(--tb-or)}
.tb-mini.r{border-color:#ff5b6e77;background:#ff5b6e1a;color:#ff7a8a}
/* listes */
.tb-vide{padding:20px;border-radius:14px;border:1px dashed #ffffff22;color:var(--tb-m);text-align:center;font-size:13.5px;line-height:1.5}
.tb-aide{padding:12px 14px;border-radius:12px;background:#3ddc970d;border:1px solid #3ddc9733;color:#cfe9dd;font-size:12.5px;line-height:1.5;margin-bottom:10px}
.tb-alerte{padding:12px 14px;border-radius:12px;background:#ff5b6e12;border:1px solid #ff5b6e55;color:#ffd0d6;font-size:13px;display:grid;gap:4px;margin-bottom:10px}
.tb-liste{display:flex;flex-direction:column;gap:8px}
.tb-ligne{display:flex;gap:12px;align-items:center;padding:11px 12px;border-radius:12px;background:#16203d;border:1px solid var(--tb-l)}
.tb-ligne .txt{flex:1;min-width:0}.tb-ligne b{display:block;color:#fff;font-size:14px;overflow-wrap:anywhere}.tb-ligne small{color:var(--tb-m);font-size:12px}
.tb-ligne.dur{border-left:3px solid #ff5b6e}.tb-ligne.bon{border-left:3px solid var(--tb-v)}.tb-ligne.or{border-left:3px solid var(--tb-or)}
.tb-mono{flex:none;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:900;color:#062117;background:linear-gradient(135deg,#3ddc97,#2a63c9);font-size:14px}
.tb-mono.or{background:linear-gradient(135deg,#ffe08a,#c98a1e);color:#2a1d06}.tb-mono.bl{background:linear-gradient(135deg,#7fa8ff,#3b4fa8);color:#fff}
.tb-cit{padding:10px 12px;border-radius:10px;background:#ffd76a0f;border-left:3px solid var(--tb-or);font-size:13.5px;color:#fff3cf;font-style:italic}
.tb-barre{flex:none;width:90px;height:7px;border-radius:5px;background:#ffffff14;overflow:hidden}.tb-barre i{display:block;height:100%}
.tb-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* --- l'habillage des pages existantes (contenu non reecrit) --- */
.tb .card{background:linear-gradient(160deg,#16203d,#0e1530);border:1px solid var(--tb-l);border-radius:16px;box-shadow:none}
.tb .card h3.sec,.tb h3.sec{color:#fff}
.tb .btn{border-radius:11px;font-weight:800;border:1px solid #3ddc9766;background:#3ddc971a;color:var(--tb-v);box-shadow:none}
.tb .btn:hover:not(:disabled){background:#3ddc9730}
.tb .btn.green,.tb .btn.primary{border:0;background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117}
.tb .btn.gold{border:0;background:linear-gradient(135deg,#ffe08a,#e0a72e);color:#2a1d06}
.tb .btn.red,.tb .btn.danger{border:1px solid #ff5b6e77;background:#ff5b6e1a;color:#ff7a8a}
.tb .btn:disabled{filter:grayscale(1);opacity:.45}
/* le grand bouton du match garde son poids : plein, vert du bureau */
.tb .btn.play,.tb .btn.watch{border:0;background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117;box-shadow:0 8px 24px #3ddc9740;border-radius:14px}
.tb .instr{background:#16203d;border:1px solid var(--tb-l);border-radius:12px}
.tb input[type=range]{accent-color:#3ddc97}
.tb .pc{background:linear-gradient(160deg,#16203d,#0e1530);border:1px solid var(--tb-l);border-radius:16px;transition:transform .18s,box-shadow .18s}
.tb .pc:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0009}
.tb .chip{border-radius:20px}

/* des pastilles de choix (ville d'un centre, poste…) a la place des listes deroulantes */
.tb-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tb-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #ffffff22;background:#ffffff0a;color:#e9e3cf;border-radius:20px;padding:7px 13px;font-weight:700;font-size:12.5px;cursor:pointer;transition:.15s;font-family:inherit}
.tb-chip:hover{border-color:#3ddc9788;color:#fff}
.tb-chip.on{background:linear-gradient(135deg,#3ddc97,#1fa971);color:#062117;border-color:transparent;box-shadow:0 4px 12px #3ddc9733}
.tb-chip img{width:16px;height:auto;border-radius:2px}
/* Infos monde au theme du bureau (15/10/2026) : infos-une.js habillait les onglets en chaine
   d'info (rouge, soulignes) via « .mo .mo-tab » ; sous .tb ils reprennent les onglets du bureau. */
.mo.tb .mo-tabs{gap:4px;padding:5px;background:#0f1a30f2;border:1px solid var(--tb-l);border-radius:14px;margin:0 0 14px}
.mo.tb .mo-tab{flex:1 0 auto;min-height:38px;border-radius:10px;border:0;border-bottom:0;background:transparent!important;color:var(--tb-m);font-weight:700;font-size:13.5px;letter-spacing:0;text-transform:none;padding:8px 14px;cursor:pointer}
.mo.tb .mo-tab:hover{color:#fff;background:#ffffff0a!important}
.mo.tb .mo-tab.on{background:linear-gradient(135deg,#3ddc97,#1fa971)!important;color:#062117!important;box-shadow:0 4px 14px #3ddc9733!important}
.mo.tb .mo-hero .mo-live{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:20px;background:#e3262e;color:#fff;font-size:10px;letter-spacing:1px}
.mo.tb .mo-hero .mo-live i{width:6px;height:6px;border-radius:50%;background:#fff;animation:buP2 1.2s infinite}
@keyframes buP2{50%{opacity:.25}}
@media (max-width:700px){
  .tb-hero-in{grid-template-columns:1fr}.tb-titre{font-size:22px}
  .tb-2col{grid-template-columns:1fr}
  .tb-grid{grid-template-columns:1fr}
}

/* 24/10/2026 (Ju) : le rang mondial du president sur l'accueil, en haut a gauche (index.html, majRangMondialAccueil).
   Discret : une pastille aux couleurs du bureau, qui mene au classement mondial. */
.tb-rang-acc{display:inline-flex;align-items:baseline;gap:7px;max-width:100%;margin:0 0 10px;padding:5px 12px;border-radius:20px;border:1px solid #ffd76a55;background:#0f1a30e6;color:#fff;font-family:inherit;cursor:pointer;box-shadow:0 4px 14px #0004;transition:border-color .15s}
.tb-rang-acc:hover{border-color:#ffd76a}
.tb-rang-acc[hidden]{display:none}
.tb-rang-acc small{font-size:10px;letter-spacing:.9px;text-transform:uppercase;color:#aab6d3;font-weight:800;white-space:nowrap}
.tb-rang-acc b{font-size:15px;color:#ffd76a;font-weight:900;white-space:nowrap}
.tb-rang-acc span{font-size:11.5px;color:#aab6d3;white-space:nowrap}
@media (max-width:380px){.tb-rang-acc{gap:5px;padding:4px 10px}.tb-rang-acc small{font-size:9.5px;letter-spacing:.5px}}
