/* ═══════════════════════════════════════════════════════════════
   HORIZONS FIVE — CONCERT FICHE CSS v6.0
═══════════════════════════════════════════════════════════════ */

/* ── FIX ROTATION TEXTE iOS ── */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}

/* ── ONGLETS RAINBOW HF (concert + musique) ──
   Technique : wrapper .hf-tab-wrap avec gradient bg + padding 2px
   = le contour rainbow visible sur tous les côtés
   Actif  = fond gradient rainbow, texte sombre
   Inactif = fond sombre, contour rainbow 2px tout autour ── */
.hf-tabs{display:flex;padding:10px 16px 14px;gap:10px;justify-content:center}
.hf-tab-wrap{flex:1;border-radius:25px;padding:2px;background:var(--hf-gradient-h);background-size:300% auto;animation:gradRainbow 8s linear infinite}
.hf-tab{display:block;width:100%;padding:9px 0;border-radius:23px;font-size:13px;font-weight:700;text-align:center;cursor:pointer;border:none;background:var(--hf-bg-card,#0e0e1a);color:rgba(255,255,255,.45);font-family:inherit;transition:all .25s}
.hf-tab.active{background:transparent;color:#080810}

/* ── COMPTEURS LISTE ── */
.fiche-counters{display:flex;gap:8px;padding:0 0 12px;flex-wrap:wrap}
.fiche-counter{padding:5px 13px;border-radius:14px;font-size:11px;font-weight:600}
.fiche-counter-valide{background:rgba(87,255,130,.12);color:#57FF82}
.fiche-counter-encours{background:rgba(221,166,23,.12);color:#DDA617}

/* ── SECTION LABELS LISTE ── */
.fiche-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:rgba(255,255,255,.25);margin:0 0 10px 4px}
.fiche-divider{height:1px;background:var(--hf-gradient-h);background-size:300% auto;animation:gradRainbow 40s linear infinite;margin:20px 0 16px;opacity:.35;border-radius:2px}

/* ── CARDS LISTE ── */
.fiche-card{background:rgba(255,255,255,.035);border-radius:14px;padding:14px 16px;margin-bottom:10px;border-left:3px solid rgba(255,255,255,.1);cursor:pointer;transition:transform .2s,background .2s;animation:fadeSlideUp .4s ease both}
.fiche-card:active{transform:scale(.98);background:rgba(255,255,255,.06)}
.fiche-card-past{opacity:.4}
.fiche-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:10px}
.fiche-card-info{flex:1;min-width:0}
.fiche-card-lieu{font-size:15px;font-weight:700;color:#fff;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fiche-card-adresse{font-size:12px;color:rgba(255,255,255,.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fiche-badge{padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;white-space:nowrap;flex-shrink:0}
.fiche-card-bottom{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fiche-card-date{font-size:13px;font-weight:600;color:var(--hf-blue)}
.fiche-card-diff{font-size:11px;color:rgba(255,255,255,.3)}
.fiche-members{display:flex;margin-left:auto}
.fiche-ini{width:22px;height:22px;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-left:-6px;border:1.5px solid var(--hf-bg-dark,#080810)}
.fiche-ini:first-child{margin-left:0}

/* ── FICHE DETAIL ── */
#fiche-detail-view{display:none;flex-direction:column;height:100%}
.fd-topbar{padding:10px 16px 0;display:flex;align-items:center;gap:10px}
.fd-back{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;color:rgba(255,255,255,.4);font-size:14px;flex-shrink:0;transition:background .2s;font-family:inherit}
.fd-back:active{background:rgba(255,255,255,.12)}
.fd-topbar-badge{padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;margin-left:auto}
.fd-hero{padding:14px 16px 4px;text-align:center}
.fd-hero-name{font-size:21px;font-weight:800;letter-spacing:-.3px;margin-bottom:2px}
.fd-hero-date{font-size:13px;color:rgba(255,255,255,.4)}
.fd-hero-pill{display:inline-block;margin-top:10px;padding:5px 18px;border-radius:20px;font-size:12px;font-weight:700}
.fd-body{flex:1;overflow-y:auto;padding:0 12px 100px;-webkit-overflow-scrolling:touch}

/* ── KPI HORAIRES ── */
.fd-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}
.fd-kpi{border-radius:12px;padding:8px 4px;text-align:center;background:rgba(155,127,255,.08)}
.fd-kpi-lbl{font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#9B7FFF;margin-bottom:2px}
.fd-kpi-val{font-size:15px;font-weight:800;color:#fff}

/* ── SECTIONS CARTES ── */
.fd-sec{border-radius:14px;padding:13px 14px;margin-bottom:8px;border:1px solid}
.fd-sec-hdr{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.fd-sec-dot{width:4px;height:16px;border-radius:2px;flex-shrink:0}
.fd-sec-title{font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}
.fd-g2{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.fd-lbl{font-size:9px;color:rgba(255,255,255,.3)}
.fd-val{font-size:12px;font-weight:600;margin-top:1px;color:#fff}
.fd-addr{font-size:14px;font-weight:700;margin-bottom:4px;color:#fff}

/* ── LIENS CENTRÉS (Maps, Waze, Affiche dans la section) ── */
.fd-links-center{display:flex;gap:8px;margin-top:10px;justify-content:center}
.fd-link-pill{padding:7px 16px;border-radius:20px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:5px;border:none;cursor:pointer;font-family:inherit;transition:opacity .15s}
.fd-link-pill:active{opacity:.7}

/* ── CONTACT ── */
.fd-ct-grid{display:flex;gap:8px;margin-top:6px}
.fd-ct-btn{flex:1;padding:9px 8px;border-radius:12px;background:rgba(255,255,255,.04);text-align:center;cursor:pointer;transition:background .15s;border:none;font-family:inherit}
.fd-ct-btn:active{background:rgba(255,255,255,.08)}
.fd-ct-ico{font-size:16px;margin-bottom:2px}
.fd-ct-val{font-size:11px;font-weight:600;color:#77DEFF}
.fd-ct-sub{font-size:9px;color:rgba(255,255,255,.25)}

/* ── EQUIPE 2 COLONNES ── */
.fd-eq-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}
.fd-eq-item{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}
.fd-eq-dot{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.fd-eq-info{flex:1;min-width:0}
.fd-eq-name{font-size:11px;font-weight:600;display:block}
.fd-eq-badge{font-size:8px;font-weight:600;padding:1px 5px;border-radius:4px;display:inline-block;margin-top:1px}

/* ── PLAYLIST ── */
.fd-pl-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.fd-pl-play{padding:4px 10px;border-radius:8px;background:rgba(119,222,255,.12);font-size:10px;font-weight:700;color:#77DEFF;border:none;cursor:pointer;font-family:inherit}
.fd-pl-play:active{background:rgba(119,222,255,.2)}
.fd-pl-pref{font-size:11px;color:rgba(255,255,255,.4);font-style:italic;margin-bottom:8px;padding-left:2px}
.fd-trk{display:flex;align-items:center;gap:8px;padding:7px 2px;border-bottom:1px solid rgba(255,255,255,.03);cursor:pointer;transition:background .15s;border-radius:4px}
.fd-trk:active{background:rgba(255,255,255,.04)}
.fd-trk-nodrive{opacity:.35;cursor:default}
.fd-trk-i{font-size:10px;color:rgba(255,255,255,.2);width:16px;text-align:center;flex-shrink:0}
.fd-trk-info{flex:1;min-width:0}
.fd-trk-t{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}
.fd-trk-a{font-size:10px;color:rgba(255,255,255,.3)}
.fd-trk-s{display:flex;gap:2px;flex-shrink:0}
.fd-s-dot{width:16px;height:16px;border-radius:50%;font-size:7px;font-weight:700;display:flex;align-items:center;justify-content:center}
.fd-trk-d{font-size:10px;color:rgba(255,255,255,.2);flex-shrink:0}
.fd-trk-hidden{display:none}
.fd-trk-hidden.expanded{display:block}
.fd-expand-wrap{text-align:center;padding:8px 0 2px}
.fd-expand-btn{display:inline-block;padding:6px 18px;border-radius:16px;border:1px solid rgba(255,255,255,.06);font-size:11px;color:rgba(255,255,255,.3);background:none;cursor:pointer;font-family:inherit;transition:all .15s}
.fd-expand-btn:active{background:rgba(255,255,255,.06)}

/* ── COMMENTAIRE ── */
.fd-comment{font-size:12px;color:rgba(255,255,255,.6);line-height:1.5;padding-left:2px}

/* ── BOUTONS ACTION BAS ── */
.fd-actions{display:flex;gap:6px;margin-top:12px}
.fd-act{flex:1;padding:11px 8px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);text-align:center;font-size:11px;font-weight:600;color:rgba(255,255,255,.4);cursor:pointer;font-family:inherit;transition:all .15s}
.fd-act:active{background:rgba(255,255,255,.08);transform:scale(.97)}
