/* Squelette musical MOURIDES TV HD — palette vert émeraude, or et ivoire */
:root{--bg:#071710;--panel:#10251b;--panel2:#142d21;--text:#f4f3e9;--muted:#a9b8ad;--gold:#d9b56d;--green:#1c6847;--line:rgba(220,190,125,.18);--radius:18px;--shadow:0 16px 45px rgba(0,0,0,.2)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.65;color:var(--text);background:var(--bg)}
a{color:inherit;text-decoration:none}
a:hover{color:var(--gold)}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.site-header{background:rgba(7,23,16,.96);border-bottom:1px solid var(--line);padding:20px 0;position:relative;z-index:2}
.logo{display:inline-flex;align-items:center;gap:13px;color:var(--text)}
.logo-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;font-size:27px;color:var(--gold);background:rgba(217,181,109,.07)}
.logo strong{display:block;font-size:1.12rem;letter-spacing:.06em;text-transform:uppercase}
.logo small{display:block;color:var(--muted);font-size:.78rem;letter-spacing:.03em}
.baseline{color:var(--muted);margin:14px 0 0}
.menu-principal{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0 15px}
.menu-principal a{color:#d9e2da;padding:8px 13px;border-radius:999px;font-size:.92rem}
.menu-principal a:hover,.menu-principal a.actif{background:var(--panel2);color:var(--gold)}
.recherche{margin-top:12px}
.recherche form{display:flex;gap:8px;max-width:520px}
.recherche input[type="text"],.recherche input[type="search"]{min-width:0;flex:1;padding:11px 15px;border:1px solid var(--line);border-radius:999px;background:#0c2017;color:var(--text);outline:none}
.recherche input:focus{border-color:var(--gold)}
.recherche input[type="submit"],.recherche button{border:0;border-radius:999px;padding:10px 17px;background:var(--gold);color:#152016;font-weight:700;cursor:pointer}
.hero{display:flex;align-items:center;justify-content:space-between;gap:40px;min-height:340px;margin:35px 0 50px;padding:clamp(28px,5vw,62px);border:1px solid var(--line);border-radius:26px;overflow:hidden;background:radial-gradient(ellipse at 82% 20%,rgba(38,112,75,.35),transparent 43%),linear-gradient(125deg,#10291d,#091a12 70%);box-shadow:var(--shadow)}
.hero-copy{max-width:690px}
.eyebrow{font-size:.75rem;letter-spacing:.17em;font-weight:800;color:var(--gold);margin-bottom:10px}
.hero h1{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.08;letter-spacing:-.04em;max-width:720px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero-copy>p:not(.eyebrow){max-width:590px;color:var(--muted);margin:20px 0 25px;font-size:1.05rem}
.button-primary{display:inline-flex;padding:12px 19px;background:var(--gold);color:#152016;border-radius:999px;font-weight:800}
.button-primary:hover{background:#f0d49a;color:#152016}
.hero-note{flex:0 0 185px;display:grid;place-items:center;align-content:center;gap:12px;width:185px;height:185px;border:1px solid rgba(217,181,109,.5);border-radius:50%;color:var(--gold);text-align:center;background:rgba(217,181,109,.04);transform:rotate(5deg)}
.hero-note span{font-size:4rem;line-height:1}
.hero-note small{font-size:.75rem;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
.section-block{margin:48px 0 62px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}
.section-heading h2,.playlist h2,.section-block>h2{font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.025em}
.heading-symbol{font-size:2rem;color:var(--gold)}
.grille-albums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.carte-album{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);transition:transform .2s,border-color .2s,box-shadow .2s}
.carte-album:hover{transform:translateY(-4px);border-color:rgba(217,181,109,.55);box-shadow:var(--shadow)}
.cover-link{display:block;position:relative;overflow:hidden;background:var(--panel2)}
.carte-album img,.carte-mini img{width:100%;aspect-ratio:1;object-fit:cover}
.cover-play{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gold);color:#152016;opacity:0;transform:translateY(5px);transition:.2s}
.carte-album:hover .cover-play{opacity:1;transform:translateY(0)}
.carte-contenu{padding:16px}
.carte-contenu h3{font-size:1.03rem;line-height:1.35;margin-bottom:7px}
.artiste{color:var(--gold);font-size:.92rem}
.date,.pistes{display:inline-block;color:var(--muted);font-size:.8rem;margin-top:8px}
.pistes{margin-left:8px;padding-left:8px;border-left:1px solid var(--line)}
.grille-rubriques{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.genre-bloc{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--panel);min-width:0}
.genre-bloc:hover{border-color:var(--gold);background:var(--panel2)}
.genre-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:rgba(217,181,109,.1);color:var(--gold);font-size:1.5rem}
.genre-bloc strong,.genre-bloc small{display:block}
.genre-bloc small{color:var(--muted);font-size:.83rem;margin-top:4px}
.genre-arrow{margin-left:auto;color:var(--gold)}
.page-header{padding:42px 0 24px;border-bottom:1px solid var(--line);margin-bottom:28px}
.page-header h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.15}
.page-header .description{color:var(--muted);max-width:780px;margin-top:14px}
.fil-ariane{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:17px;color:var(--muted);font-size:.9rem}
.fil-ariane span{color:var(--gold)}
.album-detail{margin:35px 0;padding:clamp(20px,4vw,42px);border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:var(--shadow)}
.album-header{display:grid;grid-template-columns:minmax(220px,350px) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:center;margin-bottom:35px}
.album-cover img,.placeholder-large{width:100%;aspect-ratio:1;object-fit:cover;border-radius:16px;border:1px solid var(--line)}
.album-meta h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;overflow-wrap:anywhere}
.album-meta .artiste{font-size:1.15rem;margin-top:14px}
.album-meta .date,.album-meta .stats,.album-meta .genre{color:var(--muted);margin-top:10px}
.album-meta .genre a{color:var(--gold);font-weight:700}
.description{color:#d4ded5;margin:24px 0}
.description p{margin:0 0 1em}
.playlist{margin:36px 0}
.playlist .section-heading{margin-bottom:18px}
.playlist-tracks{display:grid;gap:10px}
.piste{display:grid;grid-template-columns:32px minmax(120px,1fr) minmax(180px,300px) auto;align-items:center;gap:14px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#0b1d14}
.piste:hover{border-color:rgba(217,181,109,.5)}
.piste .numero{color:var(--gold);font-weight:800;text-align:center}
.piste .info{min-width:0}
.piste .titre{display:block;overflow-wrap:anywhere}
.piste .duree,.piste .format{display:inline-block;color:var(--muted);font-size:.78rem;margin-right:8px}
.piste audio{width:100%;height:38px;min-width:0}
.telecharger{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;color:var(--gold);font-size:.85rem;white-space:nowrap}
.telecharger:hover{background:rgba(217,181,109,.1)}
.autres-fichiers{margin-top:30px}
.autres-fichiers h2{margin-bottom:12px}
.autres-fichiers ul{padding-left:20px}
.autres-fichiers li{margin:8px 0}
.autres-fichiers li span{color:var(--muted);font-size:.85rem}
.placeholder-img,.placeholder,.placeholder-large{display:grid;place-items:center;background:radial-gradient(circle at 25% 20%,#24583e,#0c2016 75%);color:var(--gold);font-size:3rem;overflow:hidden}
.placeholder-img{aspect-ratio:1;width:100%}
.placeholder{width:100%;max-width:180px;aspect-ratio:1;border-radius:12px}
.placeholder-large{font-size:5rem}
.grille-albums .placeholder-large{width:100%}
.result-count{color:var(--muted);margin:20px 0}
.resultats-liste{display:grid;gap:13px}
.resultat-item{border:1px solid var(--line);border-radius:15px;background:var(--panel);overflow:hidden}
.resultat-lien{display:flex;gap:20px;align-items:center;padding:14px}
.resultat-lien img{width:110px;height:110px;object-fit:cover;border-radius:10px;flex:0 0 110px}
.resultat-info h2{font-size:1.2rem}
.extrait{color:var(--muted);margin-top:5px}
.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:35px 0}
.pagination a,.pagination strong,.pagination .on{display:inline-block;padding:8px 13px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text)}
.pagination strong,.pagination .on{background:var(--gold);color:#142016;border-color:var(--gold)}
.empty-state{padding:20px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);margin:20px 0}
.site-footer{border-top:1px solid var(--line);margin-top:70px;background:#06120c}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:28px 0;color:var(--muted)}
.footer-brand{font-weight:800;color:var(--gold)}
.footer-inner small{font-size:.8rem}
@media(max-width:900px){.grille-albums{grid-template-columns:repeat(3,minmax(0,1fr))}.grille-rubriques{grid-template-columns:repeat(2,minmax(0,1fr))}.piste{grid-template-columns:28px minmax(0,1fr) auto}.piste audio{grid-column:2 / -1;grid-row:2}.piste .telecharger{grid-column:3;grid-row:1}.piste .info{grid-column:2;grid-row:1}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.site-header{padding:15px 0}.logo strong{font-size:.95rem}.logo small{font-size:.68rem}.logo-mark{width:42px;height:42px}.hero{min-height:0;margin:22px 0 38px;padding:26px 22px}.hero-note{display:none}.hero h1{font-size:2.35rem}.section-block{margin:38px 0}.grille-albums{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.carte-contenu{padding:12px}.carte-contenu h3{font-size:.95rem}.grille-rubriques{grid-template-columns:1fr}.album-header{grid-template-columns:1fr;gap:24px}.album-cover{max-width:340px}.album-detail{padding:18px}.piste{grid-template-columns:25px minmax(0,1fr);gap:10px;padding:12px}.piste .info{grid-column:2;grid-row:1}.piste .telecharger{grid-column:2;grid-row:3;justify-self:start}.piste audio{grid-column:2;grid-row:2}.telecharger span{display:inline}.resultat-lien{gap:12px;padding:11px}.resultat-lien img{width:82px;height:82px;flex-basis:82px}.resultat-info h2{font-size:1rem}.extrait{font-size:.86rem}.footer-inner{display:block}.footer-inner>*{display:block;margin:5px 0}}

/* Fonctionnalités musicales supplémentaires */
.player-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:16px 18px;margin:0 0 14px;border:1px solid rgba(217,181,109,.32);border-radius:15px;background:linear-gradient(110deg,#163b29,#0b1d14)}
.player-now{display:flex;align-items:center;gap:12px;min-width:0}
.player-now>div{display:grid;min-width:0}
.player-now small{color:var(--gold);font-size:.68rem;letter-spacing:.13em;font-weight:800}
.player-now strong{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-equalizer{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(217,181,109,.12);color:var(--gold);font-size:1.7rem}
.player-actions{display:flex;align-items:center;gap:8px}
.player-actions button{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:50%;background:#0b1d14;color:var(--text);cursor:pointer}
.player-actions button[data-player-toggle]{background:var(--gold);color:#152016;border-color:var(--gold);font-weight:900}
.player-actions button:hover{border-color:var(--gold)}
.player-status{color:var(--muted);font-size:.8rem}
.piste.is-playing{border-color:var(--gold);background:#112b1e}
.piste.is-playing .numero{background:var(--gold);color:#132117;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}
.piste audio{max-width:100%}
.newsletter-note{padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:22px;background:radial-gradient(ellipse at 90% 10%,rgba(38,112,75,.22),transparent 50%),var(--panel)}
.newsletter-note h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.newsletter-note>p:last-child{max-width:760px;margin-top:12px;color:var(--muted)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:620px){.player-toolbar{align-items:flex-start;gap:12px}.player-now{width:100%}.player-actions{order:2}.player-status{order:3;width:100%}.player-now strong{max-width:calc(100vw - 110px)}}
.player-actions button:disabled{opacity:.35;cursor:not-allowed}

/* Commandes avancées du lecteur façon service de streaming */
.player-toolbar{position:sticky;bottom:12px;z-index:20;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1.2fr) auto;align-items:center;gap:14px;padding:15px 18px;margin:18px 0;background:rgba(8,25,17,.96);border:1px solid rgba(217,181,109,.35);border-radius:18px;box-shadow:0 14px 45px #0008;backdrop-filter:blur(16px)}
.player-actions{display:flex;align-items:center;gap:7px}.player-actions button{min-width:36px;min-height:36px;border:1px solid var(--line);border-radius:50%;background:var(--panel2);color:var(--text);cursor:pointer}.player-actions button[data-player-toggle]{width:44px;height:44px;background:var(--gold);color:#132016;font-weight:800}.player-actions button:hover,.player-actions button.is-active{border-color:var(--gold);color:var(--gold)}.player-actions button[data-player-toggle]:hover{color:#132016}
.player-progress{display:flex;align-items:center;gap:9px;min-width:0;color:var(--muted);font-size:.75rem;font-variant-numeric:tabular-nums}.player-progress input,.player-volume input{width:100%;accent-color:var(--gold);cursor:pointer}.player-volume{display:flex;align-items:center;gap:8px;min-width:90px;color:var(--gold)}.player-status{grid-column:1/-1;font-size:.75rem;color:var(--muted)}.player-now{min-width:0}.player-now strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}
@media(max-width:760px){.player-toolbar{grid-template-columns:1fr auto;gap:10px;bottom:5px;padding:12px}.player-progress{grid-column:1/-1;grid-row:2}.player-volume{grid-column:1/-1;grid-row:3}.player-volume input{max-width:180px}.player-status{grid-column:1/-1}.player-actions{gap:4px}.player-actions button{min-width:32px;min-height:32px}.player-now strong{max-width:190px}}


/* Statistiques d'écoute — ajout discret, sans modifier le thème existant */
.stats-site{margin:0 0 48px;padding:22px 24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(120deg,rgba(16,41,29,.9),rgba(9,26,18,.96));}
.stats-site-heading h2{font-size:1.35rem;margin:4px 0 18px;}
.stats-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.stats-site-item{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018);}
.stats-site-item strong{font-size:clamp(1.35rem,3vw,2rem);line-height:1.1;color:var(--gold);font-variant-numeric:tabular-nums;}
.stats-site-item span,.stats-album,.stats-lecture{font-size:.8rem;color:var(--muted);}
.stats-album{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;}
.stats-album strong,.stats-lecture strong{color:var(--gold);font-variant-numeric:tabular-nums;}
.stats-lecture{display:block;grid-column:2 / -1;}
@media(max-width:620px){.stats-site{padding:18px 14px}.stats-site-grid{grid-template-columns:1fr;gap:8px}.stats-site-item{flex-direction:row;align-items:center;justify-content:space-between;padding:12px}}
