/* pages.css v7 */
/* Hero */
.hero{position:relative;height:min(430px,62vh);overflow:hidden;margin-bottom:34px}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .5s;background-size:cover;background-position:center top}
.hero-slide.active{opacity:1}
.hero-slide::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(10,7,20,.94) 22%,rgba(10,7,20,.45)),
  linear-gradient(0deg,var(--bg) 0%,transparent 32%),
  radial-gradient(600px 260px at 20% 60%,rgba(124,58,237,.25),transparent 70%)}
.hero-content{position:relative;z-index:2;max-width:var(--container);margin:0 auto;padding:70px 24px 0}
.hero-content h2{font-size:clamp(1.6rem,4vw,2.6rem);margin:10px 0;color:#f5f3ff;text-shadow:0 0 30px rgba(139,92,246,.55)}
.hero-content p{color:var(--muted);max-width:520px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hero-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;font-size:2rem;color:var(--violet2);opacity:.7;padding:10px}
.hero-arrow:hover{opacity:1;text-shadow:0 0 14px var(--violet)}
.hero-arrow.prev{left:6px}.hero-arrow.next{right:6px}

/* Catalogue */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.filters .field{width:auto}
.result-count{color:var(--muted);font-size:.85rem;margin-bottom:12px}

/* Série */
.serie-banner{display:flex;gap:24px;background:var(--grad-soft);border:1px solid var(--line);border-radius:var(--r);padding:22px;margin-bottom:30px;flex-wrap:wrap;backdrop-filter:blur(6px)}
.serie-banner img{width:190px;border-radius:12px;box-shadow:var(--glow)}
.serie-info{flex:1;min-width:260px}
.serie-info h1{margin:6px 0 10px}
.serie-info .chips{margin:10px 0}
.serie-stats{color:var(--muted);font-size:.85rem;display:flex;gap:16px;margin:10px 0;flex-wrap:wrap}
.chap-list{display:grid;gap:8px}
.chap-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rs);padding:11px 16px}
.chap-row:hover{border-color:var(--violet);box-shadow:var(--glow)}
.chap-row time{color:var(--muted);font-size:.8rem}

/* Lecteur */
.reader-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px;background:var(--bg2);border:1px solid var(--line);border-radius:0 0 var(--rs) var(--rs)}
.reader-bar.bottom{border-radius:var(--rs) var(--rs) 0 0;margin-top:10px}
.reader-pages{max-width:860px;margin:0 auto;display:grid}
.reader-pages img{width:100%}

/* Admin */
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
@media(max-width:860px){.admin-grid{grid-template-columns:1fr}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:18px}
.panel h2{margin-bottom:12px}
.stack{display:grid;gap:10px}

/* Recrutement */
.recruit{text-align:center;background:linear-gradient(135deg,#2e1065,#4a044e 60%,#831843);border:1px solid var(--violet);border-radius:var(--r);padding:36px 20px;box-shadow:var(--glow)}
.recruit p{color:#e9d5ff;margin:10px 0 18px}

/* Calendrier */
.cal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.cal-day{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.cal-day h3{font-size:.95rem;margin-bottom:10px;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.cal-item{display:flex;gap:10px;padding:8px;border-radius:10px;align-items:center}
.cal-item:hover{background:var(--grad-soft)}
.cal-item img{width:38px;height:50px;object-fit:cover;border-radius:6px}
.cal-item small{color:var(--muted);display:block}
.cal-empty{color:var(--muted);font-size:.85rem;padding:6px 8px}

/* Teams */
.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.team-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;text-align:center;transition:.25s}
.team-card:hover{border-color:var(--violet);box-shadow:var(--glow);transform:translateY(-3px)}
.team-card img,.team-logo-fb{width:72px;height:72px;border-radius:50%;object-fit:cover;margin:0 auto 12px;box-shadow:var(--glow)}
.team-logo-fb{display:grid;place-items:center;background:var(--grad);font-family:var(--display);font-size:1.6rem;color:#fff}
.team-card p{color:var(--muted);font-size:.85rem;margin:8px 0 12px}
.team-meta{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}

/* Forum */
.topic-row{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--rs);padding:14px 16px}
.topic-row:hover{border-color:var(--violet)}
.topic-row small{color:var(--muted)}
.reply{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--violet);border-radius:var(--rs);padding:12px 16px;margin-bottom:10px}
.reply small{color:var(--muted)}