/* ===== ATLAS MISSION · REFONTE UI ==================================
   Section Missions (Atlas Tech) : vue d'ensemble en liste dense triable,
   détail de mission (hero, barre d'étapes, onglets, cartes).
   Chargée en dernier : ne fait qu'écraser la présentation existante.
   Thèmes sombre (défaut) + clair (body.theme-light). Accent portail tech.
   =================================================================== */

:root{
  --mx-acc:#a882ff;
  --mx-acc-deep:#6d28d9;
  --mx-cols:104px 70px minmax(220px,1.6fr) minmax(140px,1fr) minmax(100px,.75fr) 100px 116px 122px;
}

/* ================= 1 · FILTRES & RECHERCHE ================= */
#mcList .mc-filters{margin-bottom:14px;gap:10px}
#mcList .mc-tabs{background:transparent;border:none;border-radius:0;padding:0;gap:6px}
#mcList .mc-tab{padding:7px 13px;border-radius:9px;border:1px solid var(--line);background:rgba(10,20,52,.4);font-size:.78rem}
#mcList .mc-tab:hover{border-color:var(--line2);color:var(--txt)}
#mcList .mc-tab.active{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border-color:transparent;color:#fff;box-shadow:0 6px 16px -8px rgba(109,40,217,.55)}
#mcList .mc-search{border-radius:11px}
body.theme-light #mcList .mc-tab{background:#fff;border-color:rgba(13,31,92,.12);color:#3a5280}
body.theme-light #mcList .mc-tab.active{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep))!important;border-color:transparent!important;color:#fff!important}
body.theme-light #mcList .mc-tab.active .mc-c{background:rgba(255,255,255,.22)!important;color:#fff!important}
body.theme-light #mcList .mc-tab{box-shadow:0 1px 2px rgba(13,31,92,.06)}
body.theme-light #mcList .mc-tab .mc-c{background:rgba(109,40,217,.1);color:#6d28d9}
body.theme-light #mcList .mc-tab:hover{border-color:rgba(109,40,217,.4);color:#6d28d9;background:rgba(109,40,217,.05)}
body.theme-light #mcList .mc-tab:hover .mc-c{background:rgba(109,40,217,.16);color:#6d28d9}
body.theme-light #mcList .mc-tab.active{box-shadow:0 6px 16px -8px rgba(109,40,217,.55)}

/* ================= 2 · LISTE DENSE TRIABLE ================= */
.mc-grid.mx-list{display:block}

.mx-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:2px 2px 10px;font-size:.8rem;color:var(--mid)}
.mx-meta b{color:var(--txt);font-weight:700}
.mx-meta .mx-urgn{color:#fda4af}
.mx-meta-sort{font-size:.72rem;color:var(--dim);font-variant-numeric:tabular-nums}

/* tri mobile (chips) : caché sur desktop */
.mx-sortm{display:none;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.mx-sm{padding:7px 12px;border-radius:50px;border:1px solid var(--line);background:rgba(10,20,52,.4);color:var(--mid);font-size:.74rem;font-weight:600;cursor:pointer}
.mx-sm.on{border-color:var(--mx-acc);color:var(--mx-acc);background:rgba(168,130,255,.1)}
body.theme-light .mx-sm{background:#fff;border-color:rgba(13,31,92,.12);color:#3a5280}
body.theme-light .mx-sm.on{border-color:#6d28d9;color:#6d28d9;background:rgba(109,40,217,.07)}

.mx-tbl{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55))}
body.theme-light .mx-tbl{background:#fff;border-color:rgba(13,31,92,.1);box-shadow:0 10px 30px -18px rgba(13,31,92,.18)}

/* : en-tête triable : */
.mx-thead{display:grid;grid-template-columns:var(--mx-cols);align-items:center;gap:10px;padding:9px 16px;background:rgba(8,14,36,.55);border-bottom:1px solid var(--line)}
body.theme-light .mx-thead{background:#f4f7ff;border-color:rgba(13,31,92,.08)}
.mx-th{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:2px 0;font:inherit;font-size:.66rem;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:var(--dim);cursor:pointer;text-align:left;white-space:nowrap}
.mx-th:hover{color:var(--txt)}
.mx-th.on{color:var(--mx-acc)}
body.theme-light .mx-th{color:#7186ad}
body.theme-light .mx-th:hover{color:#0d1f5c}
body.theme-light .mx-th.on{color:#6d28d9}
.mx-ar{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:transform .18s,opacity .18s;flex-shrink:0}
.mx-th.on .mx-ar{opacity:1}
.mx-ar.down{transform:rotate(180deg)}
.mx-th-go{cursor:default}

/* : rangées : */
.mx-row{display:grid;grid-template-columns:var(--mx-cols);align-items:center;gap:10px;padding:11px 16px;border-top:1px solid var(--line);cursor:pointer;transition:background .14s;position:relative}
.mx-row:first-of-type{border-top:none}
.mx-thead+.mx-row{border-top:none}
.mx-row:hover{background:rgba(168,130,255,.06)}
.mx-row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(168,130,255,.55)}
.mx-row.urgent{box-shadow:inset 3px 0 0 #f0556a}
.mx-row.urgent:focus-visible{box-shadow:inset 3px 0 0 #f0556a,inset 0 0 0 2px rgba(168,130,255,.55)}
body.theme-light .mx-row{border-color:rgba(13,31,92,.07)}
body.theme-light .mx-row:hover{background:rgba(109,40,217,.045)}

.mx-c{min-width:0;font-size:.82rem;color:var(--mid)}
.mx-c b{display:block;color:var(--txt);font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mx-c>span:not(.chip):not(.prio):not(.mx-ic):not(.mx-gob){display:block;font-size:.7rem;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
body.theme-light .mx-c b{color:#0d1f5c}

.mx-time b{font-variant-numeric:tabular-nums;font-size:.92rem;font-family:'Space Grotesk',sans-serif}
.mx-c b.mx-hh{color:var(--mx-acc)}
body.theme-light .mx-c b.mx-hh{color:var(--mx-acc-deep)}
.mx-date{font-variant-numeric:tabular-nums}
.mx-c b.mx-dd{display:inline-block;font-size:.78rem;font-weight:700;font-family:'Space Grotesk',sans-serif;color:#38bdf8;background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.28);padding:2px 8px;border-radius:7px;white-space:nowrap}
body.theme-light .mx-c b.mx-dd{color:#0369a1;background:rgba(3,105,161,.09);border-color:rgba(3,105,161,.22)}
.mx-mission{display:flex;align-items:center;gap:11px}
.mx-ic{width:34px;height:34px;border-radius:10px;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.mx-mt{min-width:0;flex:1}
.mx-mt b{font-size:.86rem}
.mx-mt span{font-variant-numeric:tabular-nums}
.mx-urg{font-style:normal;color:#fda4af;font-weight:700}
body.theme-light .mx-urg{color:#dc2626}
.mx-lieu{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mx-prio .prio,.mx-status .chip{white-space:nowrap}
.prio.moyenne{background:rgba(251,191,36,.13);color:#fcd34d;border:1px solid rgba(251,191,36,.32)}
.prio.basse{background:rgba(120,140,180,.14);color:var(--mid);border:1px solid var(--line)}
body.theme-light .prio.moyenne{background:rgba(180,83,9,.08);color:#b45309;border-color:rgba(180,83,9,.25)}

.mx-go{text-align:right}
.mx-gob{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:50px;border:1px solid var(--line2);font-size:.72rem;font-weight:700;color:var(--mid);transition:.16s;white-space:nowrap}
.mx-gob svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s}
.mx-row:hover .mx-gob{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border-color:transparent;color:#fff}
.mx-row:hover .mx-gob svg{transform:translateX(2px)}
body.theme-light .mx-gob{border-color:rgba(13,31,92,.15);color:#3a5280}
body.theme-light .mx-row:hover .mx-gob{color:#fff}

/* : reflow mobile · rangée → carte : */
@media(max-width:860px){
  .mx-sortm{display:flex}
  .mx-meta-sort{display:none}
  .mx-tbl{border:none;background:transparent;overflow:visible;box-shadow:none}
  body.theme-light .mx-tbl{background:transparent;box-shadow:none}
  .mx-thead{display:none}
  .mx-row{grid-template-columns:1fr auto;grid-template-areas:"mission date" "mission time" "client prio" "foot foot";gap:8px 12px;border:1px solid var(--line)!important;border-radius:16px;margin-bottom:12px;padding:15px 16px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55))}
  body.theme-light .mx-row{background:#fff;border-color:rgba(13,31,92,.1)!important;box-shadow:0 8px 24px -16px rgba(13,31,92,.16)}
  .mx-row.urgent{box-shadow:inset 0 3px 0 #f0556a}
  .mx-mission{grid-area:mission}
  .mx-time{grid-area:time;text-align:right}
  .mx-date{grid-area:date;text-align:right;align-self:start}
  .mx-client{grid-area:client;display:flex;align-items:baseline;gap:7px}
  .mx-client span{margin-top:0}
  .mx-prio{grid-area:prio;justify-self:end}
  .mx-lieu{display:none}
  .mx-status{grid-area:foot;display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:10px}
  body.theme-light .mx-status{border-color:rgba(13,31,92,.07)}
  .mx-go{grid-area:foot;justify-self:end;align-self:end;padding-top:10px}
  .mx-gob{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border-color:transparent;color:#fff;padding:9px 15px;font-size:.76rem}
  body.theme-light .mx-gob{color:#fff}
}

/* ================= 3 · DÉTAIL · TOPLINE & HERO ================= */
.mc-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.mc-bc{font-size:.72rem;color:var(--dim);font-variant-numeric:tabular-nums;letter-spacing:.3px;white-space:nowrap}

#mcDetail .mc-hero{display:block;border:1px solid var(--line);border-radius:18px;background:linear-gradient(165deg,rgba(20,36,84,.6),rgba(10,20,52,.65));padding:0;margin-bottom:16px;overflow:hidden}
body.theme-light #mcDetail .mc-hero{background:linear-gradient(160deg,#fff,#f5f9ff);border-color:rgba(13,31,92,.1);box-shadow:0 12px 34px -22px rgba(13,31,92,.25)}
.mc-hero-row{display:flex;align-items:flex-start;gap:16px;padding:20px 22px 16px}
#mcDetail .mc-hero-ic{width:52px;height:52px;border-radius:14px;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.mc-hero-t{flex:1;min-width:0}
.mh-eyebrow{display:flex;align-items:center;gap:9px;font-size:.68rem;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:4px}
.mh-urg{display:inline-flex;align-items:center;padding:2px 9px;border-radius:50px;background:linear-gradient(120deg,#e11d48,#f0556a);color:#fff;font-size:.62rem;letter-spacing:.6px}
#mcDetail .mc-hero h2{font-family:'Space Grotesk',sans-serif;font-size:1.42rem;font-weight:700;color:#fff;line-height:1.15;margin:0 0 9px;text-wrap:balance}
body.theme-light #mcDetail .mc-hero h2{color:#0d1f5c}
#mcDetail .mh-chips{display:flex;align-items:center;gap:7px;flex-wrap:wrap}

.mc-hero-acts{display:flex;gap:8px;flex-shrink:0}
.mh-act{display:inline-flex;align-items:center;gap:7px;padding:10px 16px;border-radius:11px;border:none;background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));color:#fff;font-size:.8rem;font-weight:700;cursor:pointer;transition:.16s;min-height:42px}
.mh-act:hover{filter:brightness(1.1)}
.mh-act.ghost{background:rgba(255,255,255,.06);border:1px solid var(--line2);color:var(--txt)}
.mh-act.ghost:hover{border-color:var(--mx-acc);color:var(--mx-acc);filter:none}
.mh-act svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.theme-light .mh-act.ghost{background:#fff;border-color:rgba(13,31,92,.14);color:#0d1f5c}
body.theme-light .mh-act.ghost:hover{border-color:#6d28d9;color:#6d28d9}

.mc-hero-facts{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);background:rgba(8,14,36,.4)}
body.theme-light .mc-hero-facts{background:#f7faff;border-color:rgba(13,31,92,.07)}
.mh-fact{padding:11px 16px;border-left:1px solid var(--line);min-width:0}
.mh-fact:first-child{border-left:none}
body.theme-light .mh-fact{border-color:rgba(13,31,92,.07)}
.mhf-l{display:block;font-size:.62rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--dim);margin-bottom:2px}
.mhf-v{display:block;font-size:.86rem;font-weight:650;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
body.theme-light .mhf-v{color:#0d1f5c}

@media(max-width:860px){
  .mc-hero-row{flex-wrap:wrap;padding:16px 16px 14px}
  .mc-hero-acts{width:100%;order:3}
  .mh-act{flex:1;justify-content:center;min-height:46px}
  #mcDetail .mc-hero h2{font-size:1.2rem}
  .mc-hero-facts{grid-template-columns:repeat(2,1fr)}
  .mh-fact{border-left:none;border-top:1px solid var(--line);padding:10px 16px}
  .mh-fact:nth-child(-n+2){border-top:none}
  body.theme-light .mh-fact{border-color:rgba(13,31,92,.07)}
  .mh-fact:last-child{grid-column:span 2}
}

/* ================= 4 · BARRE D'ÉTAPES (centrale) ================= */
#mcDetail .mc-stagebar{border:1px solid var(--line);border-radius:16px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));padding:15px 16px 12px;margin-bottom:16px}
body.theme-light #mcDetail .mc-stagebar{background:#fff;border-color:rgba(13,31,92,.1)}
#mcDetail .mc-stagebar-track{gap:6px}
#mcDetail .mc-stage{flex:1 1 0;width:auto;min-width:84px}
#mcDetail .mc-stage-bar{height:8px;border-radius:5px}
#mcDetail .mc-stage.done .mc-stage-bar{background:linear-gradient(90deg,#10b981,#34d399)}
#mcDetail .mc-stage.current .mc-stage-bar{background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc));box-shadow:0 0 12px rgba(168,130,255,.5)}
#mcDetail .mc-stage.current .mc-stage-l{color:var(--mx-acc);font-weight:800}
body.theme-light #mcDetail .mc-stage.current .mc-stage-l{color:#6d28d9}
#mcDetail .mc-stage:hover .mc-stage-bar{transform:scaleY(1.25)}
@media(prefers-reduced-motion:no-preference){
  #mcDetail .mc-stage.current .mc-stage-bar{animation:mxPulse 2.4s ease-in-out infinite}
  @keyframes mxPulse{0%,100%{box-shadow:0 0 6px rgba(168,130,255,.35)}50%{box-shadow:0 0 16px rgba(168,130,255,.65)}}
}

/* ================= 5 · ONGLETS DU DÉTAIL ================= */
#mcDetail .mc-dtabs{background:transparent!important;border:none;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 0 2px;gap:2px;justify-content:flex-start;margin-bottom:18px}
#mcDetail .mc-dtab{background:transparent;border-radius:10px 10px 0 0;padding:11px 15px 13px;color:var(--dim);font-weight:600;position:relative;min-height:44px}
#mcDetail .mc-dtab::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:transparent;transition:background .18s}
#mcDetail .mc-dtab:hover:not(.active){background:rgba(255,255,255,.05);color:var(--txt)}
#mcDetail .mc-dtab.active{background:transparent;color:#fff;box-shadow:none;transform:none;font-weight:750}
#mcDetail .mc-dtab.active::after{background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc))}
#mcDetail .mc-dtab.active svg{stroke:var(--mx-acc)}
body.theme-light #mcDetail .mc-dtabs{border-color:rgba(13,31,92,.12)}
body.theme-light #mcDetail .mc-dtab{color:#7186ad;background:transparent}
body.theme-light #mcDetail .mc-dtab:hover:not(.active){background:rgba(13,31,92,.04);color:#0d1f5c}
body.theme-light #mcDetail .mc-dtab.active{color:#0d1f5c}
body.theme-light #mcDetail .mc-dtab.active svg{stroke:#6d28d9}
@media(max-width:860px){
  #mcDetail .mc-dtab{padding:12px 13px;font-size:.78rem}
}

/* ================= 6 · CARTES & DENSITÉ ================= */
/* panneaux : fini le couloir de 760px · corps 2 colonnes (contenu + rail d'outils) */
#mcDetail{padding-bottom:88px}
.mc-body{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:18px;align-items:start}
.mc-main{min-width:0;container-type:inline-size}
@media(max-width:1180px){.mc-body{grid-template-columns:1fr}}
#mcDetail .mc-dpanel.active{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
#mcDetail .mc-dpanel.active>.dcard{margin-bottom:0;min-width:0}
#mcDetail .mc-dpanel[data-dpanel="overview"].active,
#mcDetail .mc-dpanel[data-dpanel="rapport"].active{display:block}
#mcDetail .mc-dpanel[data-dpanel="rapport"].active{max-width:960px}
@container (max-width:840px){#mcDetail .mc-dpanel.active{grid-template-columns:1fr}}
/* vue d'ensemble : la grille de modules suit la largeur réelle du contenu */
#mcDetail .mc-grid2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@container (min-width:1150px){#mcDetail .mc-grid2{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@container (max-width:680px){#mcDetail .mc-grid2{grid-template-columns:1fr!important}#mcDetail .mc-grid2>.dcard.dcard-span2{grid-column:span 1!important}}
#mcDetail .mc-info-chip .mic-s{max-width:none}
#mcDetail .info-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
#mcDetail .info-row b{overflow-wrap:anywhere}
/* boutons de pied de vue d'ensemble : accent portail */
#mcDetail .mc-ov-btn.primary{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep))}
#mcDetail .mc-ov-btn.primary:hover{box-shadow:0 10px 22px -10px rgba(109,40,217,.7)}

#mcDetail .dcard{border-radius:15px;padding:16px 18px;margin-bottom:14px}
#mcDetail .dcard-h{padding-bottom:11px;border-bottom:1px solid var(--line);margin-bottom:13px}
body.theme-light #mcDetail .dcard-h{border-color:rgba(13,31,92,.07)}
#mcDetail .dcard-h h3{font-size:.92rem;letter-spacing:.2px}
#mcDetail .dh-ic{background:rgba(168,130,255,.12)}
#mcDetail .dh-ic svg{stroke:var(--mx-acc)}
body.theme-light #mcDetail .dh-ic{background:rgba(109,40,217,.08)}
body.theme-light #mcDetail .dh-ic svg{stroke:#6d28d9}

/* alertes : bandeau plus net */
#mcDetail .mc-alertbar{border-radius:14px}
/* « Activité récente » : lignes informatives, pas des tâches → pas de texte barré */
#mcDetail .ck[style*="cursor:default"] span{text-decoration:none!important}
/* rapport · rappel du chrono d'intervention sous la durée réelle */
.mc-chrono-hint{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:8px;padding:9px 12px;border-radius:11px;background:rgba(168,130,255,.08);border:1px solid rgba(168,130,255,.25);font-size:.78rem;color:var(--mid)}
.mc-chrono-hint svg{width:15px;height:15px;stroke:var(--mx-acc);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.mc-chrono-hint b{color:var(--txt);font-variant-numeric:tabular-nums}
.mc-chrono-hint .act-btn{margin-left:auto}
body.theme-light .mc-chrono-hint{background:rgba(109,40,217,.05);border-color:rgba(109,40,217,.2)}
body.theme-light .mc-chrono-hint b{color:#0d1f5c}

/* aération mobile */
@media(max-width:860px){
  #mcDetail .dcard{padding:17px 16px;margin-bottom:14px}
  #mcDetail .dcard-h h3{font-size:.96rem}
  #mcDetail .ck{min-height:44px}
}

#mcDetail .mc-hero{position:relative}
#mcDetail .mc-hero::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc) 45%,transparent 80%);pointer-events:none}

/* ================= 8 · RAIL D'OUTILS TERRAIN ================= */
.mc-rail{position:sticky;top:82px;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 100px);overflow-y:auto;scrollbar-width:none;padding-bottom:2px}
.mc-rail::-webkit-scrollbar{display:none}
@media(max-width:1180px){.mc-rail{position:static;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:700px){.mc-rail{grid-template-columns:1fr}}
.rail-card{border:1px solid var(--line);border-radius:15px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));padding:14px 16px;min-width:0}
body.theme-light .rail-card{background:#fff;border-color:rgba(13,31,92,.1);box-shadow:0 8px 24px -18px rgba(13,31,92,.2)}
.rail-h{display:flex;align-items:center;gap:8px;font-size:.68rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--dim);margin-bottom:11px}
.rail-h svg{width:14px;height:14px;stroke:var(--mx-acc);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
body.theme-light .rail-h svg{stroke:#6d28d9}
.rail-hint{margin-left:auto;font-size:.64rem;color:#34d399;text-transform:none;letter-spacing:0;font-weight:600}
/* chrono */
.rt-time{font-family:'Space Grotesk',sans-serif;font-size:1.9rem;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;text-align:center;letter-spacing:1px;margin:0 0 11px}
body.theme-light .rt-time{color:#0d1f5c}
.rt-acts{display:flex;gap:8px}
.rt-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;border-radius:10px;border:1px solid var(--line2);background:rgba(255,255,255,.05);color:var(--txt);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:.15s;min-height:40px}
.rt-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rt-btn:hover{border-color:var(--mx-acc);color:var(--mx-acc)}
.rt-btn.primary{flex:1;background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border:none;color:#fff}
.rt-btn.primary:hover{filter:brightness(1.1);color:#fff}
.rt-btn.primary.on{background:linear-gradient(120deg,#b45309,#f59e0b)}
body.theme-light .rt-btn{background:#fff;border-color:rgba(13,31,92,.14);color:#0d1f5c}
body.theme-light .rt-btn.primary{color:#fff;border:none}
/* accès site */
.rail-rows{display:flex;flex-direction:column}
.rail-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line)}
.rail-row:first-child{border-top:none;padding-top:0}
body.theme-light .rail-row{border-color:rgba(13,31,92,.07)}
.rail-row .rl{font-size:.66rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--dim);flex-shrink:0}
.rail-row b{font-size:.8rem;font-weight:650;color:var(--txt);text-align:right;overflow-wrap:anywhere}
body.theme-light .rail-row b{color:#0d1f5c}
.rail-row.rail-code b{font-family:'Space Grotesk',sans-serif;font-size:1.05rem;letter-spacing:2.5px;color:var(--mx-acc)}
body.theme-light .rail-row.rail-code b{color:#6d28d9}
/* contacts */
.rail-ct{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border-radius:11px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--txt);font:inherit;font-size:.8rem;text-decoration:none;text-align:left;cursor:pointer;transition:.15s;margin-top:8px;min-height:44px}
.rail-ct:first-of-type{margin-top:0}
.rail-ct:hover{border-color:var(--mx-acc)}
.rail-ct svg{width:16px;height:16px;stroke:var(--mid);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.rail-ct span{min-width:0}
.rail-ct b{display:block;font-size:.78rem;font-weight:700;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-ct i{display:block;font-style:normal;font-size:.7rem;color:var(--dim);margin-top:1px}
body.theme-light .rail-ct{background:#f8faff;border-color:rgba(13,31,92,.1)}
body.theme-light .rail-ct b{color:#0d1f5c}
body.theme-light .rail-ct:hover{border-color:#6d28d9}
/* notes */
#railNotes{width:100%;min-height:96px;resize:vertical;background:rgba(8,14,36,.5);border:1px solid var(--line);border-radius:11px;color:var(--txt);font:inherit;font-size:.8rem;line-height:1.5;padding:10px 11px}
#railNotes::placeholder{color:var(--dim)}
#railNotes:focus{outline:none;border-color:var(--mx-acc)}
#railNotes:disabled{opacity:.6}
body.theme-light #railNotes{background:#f8faff;border-color:rgba(13,31,92,.12);color:#0d1f5c}
.rail-sub{font-size:.66rem;color:var(--dim);margin:7px 2px 0}
/* procédure */
.rail-kb{display:block;text-decoration:none;cursor:pointer;transition:.15s}
.rail-kb:hover{border-color:var(--mx-acc)}
.rail-kbt{display:block;font-size:.82rem;font-weight:700;color:var(--txt);line-height:1.35}
body.theme-light .rail-kbt{color:#0d1f5c}
.rail-kbgo{display:block;font-size:.7rem;color:var(--mx-acc);font-weight:600;margin-top:7px}
body.theme-light .rail-kbgo{color:#6d28d9}
/* ================= 7 · BARRE D'ACTIONS BASSE ================= */
.mc-bottombar{padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));gap:8px}
.mc-bb-btn{min-height:46px;border-radius:12px;font-weight:700}
.mc-bb-btn:not(:first-child){background:rgba(255,255,255,.07);border:1px solid var(--line2);color:var(--txt)}
.mc-bb-btn:not(:first-child):hover{border-color:var(--mx-acc);color:var(--mx-acc)}
body.theme-light .mc-bottombar{background:rgba(255,255,255,.94);border-top-color:rgba(13,31,92,.1)}
body.theme-light .mc-bb-btn:not(:first-child){background:#fff;border-color:rgba(13,31,92,.14);color:#0d1f5c}
@media(max-width:640px){
  .mc-bottombar{flex-wrap:wrap}
  .mc-bb-btn{flex:1 1 calc(50% - 4px);justify-content:center;padding:11px 10px;font-size:.78rem}
  .mc-bb-btn:first-child{flex:1 1 100%}
}

/* ================= 9 · VUE AUJOURD'HUI ================= */
/* en-tête : bandeau héro cohérent avec le détail */
#todayBlock .td-greet{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:linear-gradient(165deg,rgba(20,36,84,.6),rgba(10,20,52,.65));padding:18px 22px;margin-bottom:14px;align-items:center}
#todayBlock .td-greet::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc) 45%,transparent 80%);pointer-events:none}
#todayBlock .td-greet h2{font-size:1.4rem}
#todayBlock .td-greet .td-date{font-size:.76rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
body.theme-light #todayBlock .td-greet{background:linear-gradient(160deg,#fff,#f5f9ff);border-color:rgba(13,31,92,.1);box-shadow:0 12px 34px -22px rgba(13,31,92,.25)}

/* intertitres de section : eyebrow + filet */
#todayBlock .td-sec{display:flex;align-items:center;gap:12px;font-size:.68rem;letter-spacing:.9px;margin:22px 2px 12px}
#todayBlock .td-sec::after{content:"";flex:1;height:1px;background:var(--line)}
body.theme-light #todayBlock .td-sec::after{background:rgba(13,31,92,.1)}

/* bandeau « Ma journée » */
#todayBlock .td-journee{border-radius:16px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));border-color:var(--line)}
body.theme-light #todayBlock .td-journee{background:#fff;border-color:rgba(13,31,92,.1)}
#todayBlock .tdj-node.current .tdj-dot{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border-color:var(--mx-acc);box-shadow:0 0 0 5px rgba(168,130,255,.16)}
@media(prefers-reduced-motion:no-preference){
  #todayBlock .tdj-node.current .tdj-dot{animation:tdjPulse 2.4s ease-in-out infinite}
  @keyframes tdjPulse{0%,100%{box-shadow:0 0 0 4px rgba(168,130,255,.14)}50%{box-shadow:0 0 0 7px rgba(168,130,255,.26)}}
}
#todayBlock .tdj-cta{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep))}

/* carte « Prochaine mission » */
#todayBlock .td-next{position:relative;border-radius:18px;border-color:var(--line);background:linear-gradient(165deg,rgba(24,32,84,.62),rgba(10,20,52,.65));padding:20px 22px}
#todayBlock .td-next::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc) 45%,transparent 80%);pointer-events:none}
#todayBlock .td-next h3{font-size:1.28rem}
body.theme-light #todayBlock .td-next{background:linear-gradient(160deg,#fff,#f5f9ff);border-color:rgba(13,31,92,.1);box-shadow:0 12px 34px -22px rgba(13,31,92,.25)}
/* méta → bandeau de faits pleine largeur (comme le hero du détail) */
#todayBlock .td-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:16px -22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(8,14,36,.4)}
#todayBlock .td-meta>div{padding:10px 22px;border-left:1px solid var(--line);min-width:0}
#todayBlock .td-meta>div:first-child{border-left:none}
#todayBlock .td-meta .l{font-size:.62rem;font-weight:800;letter-spacing:.8px}
#todayBlock .td-meta .v{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-light #todayBlock .td-meta{background:#f7faff;border-color:rgba(13,31,92,.07)}
body.theme-light #todayBlock .td-meta>div{border-color:rgba(13,31,92,.07)}

/* préparation : icônes à l'accent portail */
#todayBlock .prep-item .pi-ic{background:rgba(168,130,255,.1)}
#todayBlock .prep-item .pi-ic svg{stroke:var(--mx-acc)}
body.theme-light #todayBlock .prep-item .pi-ic{background:rgba(109,40,217,.07)}
body.theme-light #todayBlock .prep-item .pi-ic svg{stroke:#6d28d9}
#todayBlock .td-short .sc:hover{border-color:var(--mx-acc);color:var(--mx-acc)}
#todayBlock .td-short .sc.warn:hover{border-color:#f87171;color:#fda4af}

/* action principale : accent portail */
#todayBlock .td-pcta{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border-radius:13px;min-height:50px}
#todayBlock .td-pcta:hover{box-shadow:0 12px 26px -12px rgba(109,40,217,.65)}

/* cartes latérales : même langage que le rail du détail */
#todayBlock .aside-card{border-radius:15px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));border-color:var(--line)}
body.theme-light #todayBlock .aside-card{background:#fff;border-color:rgba(13,31,92,.1);box-shadow:0 8px 24px -18px rgba(13,31,92,.2)}
#todayBlock .aside-h h4{font-size:.72rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--dim)}
#todayBlock .aside-h .ah-ic{background:rgba(168,130,255,.1)}
#todayBlock .aside-h .ah-ic svg{stroke:var(--mx-acc)}
body.theme-light #todayBlock .aside-h .ah-ic{background:rgba(109,40,217,.07)}
body.theme-light #todayBlock .aside-h .ah-ic svg{stroke:#6d28d9}
#todayBlock .ct-row:hover .ct-t{color:var(--mx-acc)}
body.theme-light #todayBlock .ct-row:hover .ct-t{color:#6d28d9}

/* missions suivantes / réalisées : cartes alignées sur la liste */
#todayBlock .td-mini{border-radius:14px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));border-color:var(--line)}
#todayBlock .td-mini:hover{border-color:var(--mx-acc);transform:translateX(3px)}
body.theme-light #todayBlock .td-mini{background:#fff;border-color:rgba(13,31,92,.1)}
body.theme-light #todayBlock .td-mini:hover{border-color:#6d28d9}

/* clôture de journée */
#todayBlock .td-close{border-radius:18px;border-color:var(--line)}
body.theme-light #todayBlock .td-close{background:linear-gradient(135deg,rgba(34,197,94,.07),#fff)}

/* aération mobile */
@media(max-width:640px){
  #todayBlock .td-greet{padding:16px 16px}
  #todayBlock .td-next{padding:18px 16px}
  #todayBlock .td-meta{margin:14px -16px}
  #todayBlock .td-meta>div{padding:9px 16px}
  #todayBlock .td-pcta{width:100%}
}

/* ================= 10 · VUE SUIVI CLIENT ================= */
.sx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}
.sx-card{position:relative;border:1px solid var(--line);border-radius:16px;background:linear-gradient(170deg,rgba(16,30,70,.5),rgba(9,17,44,.55));padding:16px 18px;cursor:pointer;transition:border-color .16s,transform .18s;overflow:hidden;min-width:0}
.sx-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--violet,#7c3aed),var(--mx-acc) 55%,transparent 90%);pointer-events:none}
.sx-card:hover{border-color:var(--mx-acc);transform:translateY(-2px)}
.sx-card:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(168,130,255,.55)}
body.theme-light .sx-card{background:#fff;border-color:rgba(13,31,92,.1);box-shadow:0 10px 28px -20px rgba(13,31,92,.22)}
body.theme-light .sx-card:hover{border-color:#6d28d9}
.sx-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.sx-ic{width:38px;height:38px;border-radius:11px;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
.sx-t{flex:1;min-width:0}
.sx-t b{display:block;font-family:'Space Grotesk',sans-serif;font-size:.98rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sx-t span{display:block;font-size:.74rem;color:var(--dim);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-light .sx-t b{color:#0d1f5c}
.sx-due{flex-shrink:0;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.86rem;padding:5px 12px;border-radius:50px;background:rgba(168,130,255,.12);border:1px solid rgba(168,130,255,.3);color:var(--mx-acc);font-variant-numeric:tabular-nums}
.sx-due.hot{background:rgba(240,85,106,.13);border-color:rgba(240,85,106,.4);color:#fda4af}
body.theme-light .sx-due{background:rgba(109,40,217,.07);border-color:rgba(109,40,217,.25);color:#6d28d9}
body.theme-light .sx-due.hot{background:rgba(220,38,38,.07);border-color:rgba(220,38,38,.3);color:#dc2626}
.sx-steps{display:flex;flex-direction:column;gap:6px;padding:11px 0;border-top:1px solid var(--line)}
body.theme-light .sx-steps{border-color:rgba(13,31,92,.07)}
.sx-step{display:flex;align-items:center;gap:9px;font-size:.8rem;color:var(--txt)}
.sx-step svg{width:14px;height:14px;stroke:#34d399;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.sx-step.done{color:var(--dim)}
.sx-o{width:12px;height:12px;border-radius:50%;border:2px solid var(--line2);flex-shrink:0;margin:1px}
body.theme-light .sx-step{color:#22314f}
body.theme-light .sx-step.done{color:#7186ad}
.sx-sat{display:flex;align-items:baseline;gap:10px;padding:9px 0 11px;border-top:1px solid var(--line);min-width:0}
body.theme-light .sx-sat{border-color:rgba(13,31,92,.07)}
.sx-sat .chip{flex-shrink:0}
.sx-quote{font-size:.74rem;color:var(--mid);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sx-acts{display:flex;gap:8px;flex-wrap:wrap;padding-top:11px;border-top:1px solid var(--line)}
body.theme-light .sx-acts{border-color:rgba(13,31,92,.07)}
.sx-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:11px;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--txt);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:.15s;min-height:40px}
.sx-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sx-btn:hover{border-color:var(--mx-acc);color:var(--mx-acc)}
.sx-btn.primary{flex:1;justify-content:center;background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));border:none;color:#fff}
.sx-btn.primary:hover{filter:brightness(1.1);color:#fff}
body.theme-light .sx-btn{background:#fff;border-color:rgba(13,31,92,.14);color:#0d1f5c}
body.theme-light .sx-btn:hover{border-color:#6d28d9;color:#6d28d9}
body.theme-light .sx-btn.primary{background:linear-gradient(120deg,var(--violet,#7c3aed),var(--mx-acc-deep));color:#fff;border:none}
@media(max-width:640px){.sx-grid{grid-template-columns:1fr}}
