/* ============================================================================
   ACCUEIL DU PORTAIL — rail + situation + lanceur
   ----------------------------------------------------------------------------
   Le rail est le sommaire de la page entière : « Ma situation » puis
   « Applications ». C'est ce qui rend 64 tuiles navigables — sans lui, la page
   n'est qu'un long défilement.
   ========================================================================== */

.ac-shell{max-width:1500px;margin:0 auto;padding:0 28px 90px;
  display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px;align-items:start}
@media (max-width:1120px){.ac-shell{grid-template-columns:1fr;gap:0}.rail{display:none}}

/* le rail est collé sous la barre de contexte, pas sous l'en-tête */
.ac-shell .rail{position:sticky;top:112px;padding:26px 0 40px;
  max-height:calc(100vh - 112px);overflow-y:auto;scrollbar-width:thin}

.ac-shell .main{padding:0 0 40px;min-width:0}

/* la première section du lanceur prend un peu d'air après « Mon équipe » */
.ac-shell .main .sec:first-of-type{margin-top:8px}

/* ── Échéancier (rétabli en v23) ───────────────────────────────────────────
   Deux colonnes dès qu'il y a la place : la liste passait pour une colonne
   maigre au milieu d'une page large, reproche déjà entendu sur la v18.       */
.pl-ech{display:grid;grid-template-columns:1fr;gap:0 28px}
@media (min-width:860px){ .pl-ech{grid-template-columns:1fr 1fr} }
.pl-ech .dl .w{background:color-mix(in srgb,var(--c,var(--bleu)) 10%,transparent)}
.pl-ech .dl .w .m{white-space:nowrap}
/* La bande TVA porte « au 25 août » : la pastille doit pouvoir s'élargir. */
.pl-ech .dl:has(.m:not(:only-child)) .w,
.pl-ech .dl .w:has(.m){width:auto;min-width:40px;padding:5px 7px}
.pl-sh .r a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;
            text-underline-offset:2px}
.pl-sh .r a:hover{color:var(--bleu)}

/* ── Anneaux : correctif v27 ───────────────────────────────────────────────
   Les styles de base de .ring ne vivaient que dans propositions.css (supprimé
   le 6 août avec sa page), que
   index.html ne charge pas. Sans `fill:none`, un cercle SVG se remplit en noir
   par défaut : l'anneau s'affichait en disque noir plein. Même famille de bug
   que le graphique du mois — du balisage repris en v22 sans ses dépendances CSS.
   Rapatriés ici, dans une feuille que la page charge effectivement.            */
.ring{position:relative;width:var(--s,104px);height:var(--s,104px);flex-shrink:0}
.ring svg{transform:rotate(-90deg);width:100%;height:100%}
.ring circle{fill:none;stroke-linecap:round}
.ring .bg{stroke:var(--border)}
.ring .fg{stroke:var(--c,var(--bleu));transition:stroke-dashoffset 1s cubic-bezier(.22,1,.36,1)}
.ring .mid{position:absolute;inset:0;display:grid;place-items:center;text-align:center;line-height:1}
.ring .mid b{font-family:'Cormorant Garamond',Georgia,serif;
             font-size:calc(var(--s,104px)*.3);font-weight:600;display:block}
.ring .mid span{font-size:9.5px;color:var(--text-3);text-transform:uppercase;
                letter-spacing:.8px;display:block;margin-top:3px}

/* ── « À faire en premier » — remplace les quatre compteurs (v27) ────────── */
.pl-next{display:grid;gap:2px;margin-top:4px}
.nx{display:flex;align-items:center;gap:13px;padding:9px 10px;border-radius:10px;
    text-decoration:none;color:inherit;transition:background .12s}
.nx:hover{background:color-mix(in srgb,var(--c,var(--bleu)) 7%,transparent)}
.nx .j{flex-shrink:0;width:44px;text-align:center;border-radius:9px;padding:5px 0;
       background:color-mix(in srgb,var(--c,var(--bleu)) 10%,transparent);
       font-size:16px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.nx .j i{display:block;font-style:normal;font-size:9px;text-transform:uppercase;
         letter-spacing:.5px;color:var(--text-3);margin-top:2px;font-weight:500}
.nx .tx{flex:1;min-width:0}
.nx .tx b{display:block;font-size:13.4px;font-weight:600;line-height:1.3;
          overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nx .tx em{display:block;font-style:normal;font-size:11.8px;color:var(--text-2);margin-top:1px}
.nx .qd{flex-shrink:0;font-size:11px;font-weight:600;color:var(--text-3);
        padding:2px 8px;border-radius:20px;background:var(--surface-2,transparent)}
.nx.late .j{background:var(--alert-bg);color:var(--alert)}
.nx.late .qd{background:var(--alert-bg);color:var(--alert)}
.pl-all{display:inline-block;margin-top:9px;font-size:12.2px;font-weight:600;
        color:var(--bleu);text-decoration:none}
.pl-all:hover{text-decoration:underline;text-underline-offset:2px}

/* ══════════════════════════════════════════════════════════════════════════
   v29 — corrections de présentation
   ══════════════════════════════════════════════════════════════════════════ */

/* ── « À faire en premier » : une seule colonne ────────────────────────────
   .pl-me héritait de `grid-template-columns:auto minmax(0,1fr)` conçu pour
   l'anneau + les chiffres. Le titre occupait la colonne `auto` et prenait la
   moitié de la carte, la liste était comprimée à droite, les noms tronqués et
   les pastilles de délai débordaient hors du cadre.                          */
.pl-me{display:block !important;padding:22px 24px 18px}
.pl-me .pl-sh{margin-bottom:10px}
.pl-me .pl-sh h2{font-size:23px}

/* ── Cadre pour les échéances ──────────────────────────────────────────────
   La rubrique flottait sur le fond de page, sans limite visible.             */
#sec-ech{background:var(--surface);border:1px solid var(--border);
         border-radius:var(--r-lg);padding:22px 24px 18px;box-shadow:var(--shadow)}
#sec-ech .pl-sh{margin-bottom:14px}
#sec-ech .pl-ech{gap:0 30px}
#sec-ech .pl-hidden{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}

/* ── Azur comme accent, plutôt que le ton de l'équipe ──────────────────────
   Barres d'avancement, anneaux et pastilles de jour passent en azur (--ciel,
   la teinte de la charte demandée. Les tons par équipe restent sur les titres
   de rubriques et les tuiles, où ils servent à se repérer.                   */
.pl-bar i, .pl-team .big i, .ring .fg{ --c:var(--ciel) }
.nx .j{ background:color-mix(in srgb,var(--ciel) 12%,transparent); color:var(--ciel) }
.nx:hover{ background:color-mix(in srgb,var(--ciel) 8%,transparent) }
.nx.late .j{ background:var(--alert-bg); color:var(--alert) }

/* ── Chiffres de capacité, sous « Ensemble, ce mois » ──────────────────────── */
.cap-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(206px,1fr));
  gap:0;margin-top:20px;background:var(--surface);border:1px solid var(--border);
  border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.cap-c{padding:15px 18px;border-left:3px solid var(--ciel);
       border-right:1px solid var(--border)}
.cap-c:last-child{border-right:none}
.cap-c .l{font-size:9.5px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;
          color:var(--text-3)}
.cap-c .v{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:600;
          line-height:1.1;margin-top:6px}
.cap-c .x{font-size:11px;color:var(--text-3);margin-top:3px}
/* Ligne de comparaison au site : nettement plus discrète que la valeur du
   collaborateur, qui reste le sujet de la carte. */
.cap-c .cmp{font-size:10.5px;color:var(--text-3);margin-top:8px;padding-top:7px;
            border-top:1px dashed var(--border);opacity:.85}
.cap-c.warn{border-left-color:var(--warn)}
.cap-c.bad{border-left-color:var(--alert)}
.cap-note{font-size:11.5px;color:var(--text-3);font-style:italic;margin-top:10px}

/* ── Tiroir : le lien « voir les tâches » sur une rangée ─────────────────── */
.pl-row.clic .nm::after{content:'›';margin-left:7px;color:var(--text-3);font-weight:400}
