/* ── Semaine desktop (≥1024px) — planning / retard côte à côte ────────────
   Deux colonnes flex dans #screen-week (déjà lui-même enveloppé dans une
   card glass globale, voir layout-desktop.css) : à gauche planning + idées
   bonus, à droite posts en retard + épinglés — empilées SANS grille 2D, pour
   que "Épinglés" reste collée juste sous "Posts en retard" même quand
   "Planning" est plus haute (avec grid-template-rows classique, la ligne 2
   ne démarre qu'après la ligne 1 la plus haute des deux colonnes, laissant
   un grand vide). Même liseret dégradé animé que les autres cards du
   redesign (dashboard.css / config-desktop.css). */
@media (min-width: 1024px) {
  /* #screen-week était resté hors de la liste d'exclusion de layout-desktop.css (voir le
     commentaire là-bas) : sans son propre overflow:hidden borné, la page entière scrollait EN
     PLUS du scroll interne de chaque .week-panel — deux scrolls concurrents, la liste débordait
     visuellement de sa card et le liseret animé se retrouvait au milieu du contenu défilé. */
  #screen-week.screen.active {
    overflow: hidden;
    padding: 0;
    margin: 16px 20px 20px;
    box-sizing: border-box;
  }
  .week-grid {
    height: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: start;
    padding: 16px 16px 0;
    box-sizing: border-box;
  }
  .week-col {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
  }
  .week-panel {
    position: relative;
    background: var(--glass-bg);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-radius: var(--radius-xl);
    /* flex (pas max-height:65vh) : les 2 panneaux d'une même colonne se partagent la hauteur
       disponible de la colonne plutôt qu'une valeur fixe déconnectée de l'espace réel restant. */
    flex: 1;
    min-height: 0;
    /* Le panneau lui-même ne scrolle plus (overflow:hidden, pas overflow-y:auto) — titre et
       bouton "Générer"/"Nouvelles idées" restent visibles en permanence (flex-shrink:0 par
       défaut, ce sont de simples enfants flex normaux), seul .week-panel-body (la liste, entre
       les deux) prend le scroll interne. Sans ça le liseret ci-dessous (position:absolute,
       inset:0, pinné aux bords réels du panneau) semblait "flotter" au milieu du contenu
       défilé — en fait il ne bougeait pas, c'est juste que le titre/bouton scrollaient AVEC
       la liste, hors de vue, alors qu'ils étaient censés rester fixes. */
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0;
  }
  .week-panel > .section-title { padding: 14px 16px 8px; margin-bottom: 0; flex-shrink: 0; }
  .week-panel-body { flex: 1; min-height: 0; overflow-y: auto; padding: 0 16px 16px; }
  .week-panel-footer { flex-shrink: 0; padding: 8px 16px 16px; }
  #btn-generate-week, #btn-generate-ideas { display: block; width: max-content; max-width: 100%; margin: 0 auto; }

  /* z-index : même raison que .dash-panel::before (dashboard.css) — les .card
     du panneau portent un transform résiduel (fadeUp ... both, glass.css) qui
     les place au même niveau d'empilement que ce ::before, et l'ordre du DOM
     les ferait alors défiler par-dessus l'anneau. */
  .week-panel::before {
    content: "";
    position: absolute; inset: 0;
    z-index: 1;
    border-radius: inherit;
    padding: 1.5px;
    background: conic-gradient(from var(--dash-border-angle),
      var(--card-border-base) 0%, var(--card-border-base) 42%,
      var(--card-border-shine) 50%, var(--card-border-base) 58%, var(--card-border-base) 100%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: dash-border-spin 12s linear infinite;
    pointer-events: none;
  }
}
