/* =========================================================
   MOVA — Design system
   Tokens : navy #0B1E3D, orange #F2790A, fond #F7F8FA,
   succès #1F9D55, texte secondaire #5B6472
   Display: Space Grotesk / Body: Inter / Codes: JetBrains Mono
   ========================================================= */

:root{
  --mova-navy:#0B1E3D;
  --mova-navy-soft:#16294D;
  --mova-orange:#F2790A;
  --mova-orange-dark:#D96A06;
  --mova-bg:#F7F8FA;
  --mova-surface:#FFFFFF;
  --mova-success:#1F9D55;
  --mova-text:#16213A;
  --mova-text-soft:#5B6472;
  --mova-border:#E7EAF0;
  --mova-radius:16px;
  --mova-radius-sm:10px;
  --mova-shadow:0 10px 30px rgba(11,30,61,.08);
}

.mova-auth-screen,.mova-dash{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--mova-text, #16213A);
  background:var(--mova-bg, #F7F8FA);
}

/* ---------- Reset mobile-first : évite tout débordement horizontal
   et impose des zones tactiles confortables sur téléphone ---------- */
.mova-auth-screen, .mova-dash, .mova-auth-screen *, .mova-dash *{
  box-sizing:border-box;
  -webkit-tap-highlight-color:transparent;
}
.mova-auth-screen, .mova-dash{
  max-width:100vw;
  overflow-x:hidden;
}
.mova-logo{ max-width:100%; height:auto; }
.mova-btn{ min-height:44px; touch-action:manipulation; }
.mova-btn-sm{ min-height:36px; }
input, select, textarea, button{ font-size:16px; } /* évite le zoom auto iOS au focus */
.mova-btn-sm, .mova-code-input, .mova-item-qty{ font-size:13px; }

h1,h2,.mova-auth-title{ font-family:'Space Grotesk',sans-serif; letter-spacing:-.01em; }

/* ---------- Auth screens ---------- */
.mova-auth-screen{
  display:grid;
  grid-template-columns:1fr;
  min-height:100vh;
  margin:-1px 0 0; /* neutralise le padding du thème */
}
@media (min-width:900px){
  .mova-auth-screen{ grid-template-columns:1fr 1fr; }
}

.mova-auth-card{
  display:flex; flex-direction:column; justify-content:center;
  padding:32px 24px; max-width:460px; width:100%; margin:0 auto;
}
.mova-auth-brand{ text-align:center; margin-bottom:8px; }
.mova-logo{ width:150px; height:auto; }
.mova-tagline{ color:var(--mova-text-soft, #5B6472); font-size:13px; margin-top:-6px; }

.mova-auth-title{ font-size:28px; font-weight:700; margin:18px 0 4px; }
.mova-auth-sub{ color:var(--mova-text-soft, #5B6472); margin-bottom:20px; font-size:14px; }

.mova-role-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:20px;
}
.mova-role-card{
  display:flex; flex-direction:column; align-items:flex-start; gap:2px;
  background:var(--mova-surface, #FFFFFF); border:1.5px solid var(--mova-border, #E7EAF0);
  border-radius:var(--mova-radius-sm, 10px); padding:14px; cursor:pointer;
  text-align:left; transition:border-color .15s, transform .15s;
  color:var(--mova-text, #16213A); font-family:inherit;
}
.mova-role-card:hover{ transform:translateY(-2px); }
.mova-role-card.is-active{ border-color:var(--mova-orange, #F2790A); background:#FFF6EC; }
.mova-role-icon{ font-size:22px; }
.mova-role-name{ font-weight:600; font-size:14px; color:var(--mova-navy, #0B1E3D); }
.mova-role-desc{ font-size:12px; color:var(--mova-text-soft, #5B6472); }

.mova-form{ display:flex; flex-direction:column; gap:14px; }
.mova-field{ display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:600; }
.mova-field em{ font-weight:400; color:var(--mova-text-soft, #5B6472); }
.mova-field input,.mova-field select{
  font:inherit; padding:12px 14px; border-radius:var(--mova-radius-sm, 10px);
  border:1.5px solid var(--mova-border, #E7EAF0); background:var(--mova-surface, #FFFFFF);
  transition:border-color .15s;
}
.mova-field input:focus,.mova-field select:focus{
  outline:none; border-color:var(--mova-navy, #0B1E3D); box-shadow:0 0 0 3px rgba(11,30,61,.08);
}
.mova-field-conditional[hidden]{ display:none; }

.mova-btn{
  font:inherit; font-weight:600; border-radius:var(--mova-radius-sm, 10px);
  border:none; cursor:pointer; padding:13px 20px; transition:background .15s, transform .1s;
}
.mova-btn:active{ transform:scale(.98); }
.mova-btn-primary{ background:var(--mova-orange, #F2790A); color:#fff; }
.mova-btn-primary:hover{ background:var(--mova-orange-dark, #D96A06); }
.mova-btn-primary:disabled{ opacity:.6; cursor:not-allowed; }
.mova-btn-ghost{ background:transparent; color:var(--mova-navy, #0B1E3D); border:1.5px solid var(--mova-border, #E7EAF0); }
.mova-btn-lg{ padding:14px 26px; font-size:15px; }
.mova-btn-sm{ padding:8px 14px; font-size:13px; }

.mova-form-msg{ font-size:13px; min-height:16px; }
.mova-form-msg.is-error{ color:#C0392B; }
.mova-form-msg.is-success{ color:var(--mova-success, #1F9D55); }

.mova-auth-switch{ text-align:center; margin-top:18px; font-size:13px; color:var(--mova-text-soft, #5B6472); }
.mova-auth-switch a{ color:var(--mova-orange, #F2790A); font-weight:600; text-decoration:none; }

/* Signature : ligne de trajet animée, écho du logo et des courses en cours */
.mova-auth-side{
  display:none; position:relative; background:var(--mova-navy, #0B1E3D);
  background-image:radial-gradient(circle at 20% 20%, rgba(242,121,10,.18), transparent 55%);
  overflow:hidden;
}
@media (min-width:900px){ .mova-auth-side{ display:block; } }
.mova-route-anim{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.mova-route-line{
  width:70%; height:2px; background:repeating-linear-gradient(90deg, var(--mova-orange, #F2790A) 0 10px, transparent 10px 20px);
  position:relative; animation:mova-dash-move 1.2s linear infinite;
}
@keyframes mova-dash-move{ to{ background-position:20px 0; } }
.mova-route-dot{ position:absolute; width:14px; height:14px; border-radius:50%; top:50%; transform:translateY(-50%); }
.mova-route-dot-start{ left:15%; background:#fff; box-shadow:0 0 0 6px rgba(255,255,255,.15); }
.mova-route-dot-end{ right:15%; background:var(--mova-orange, #F2790A); box-shadow:0 0 0 6px rgba(242,121,10,.25); animation:mova-pulse 1.6s ease-in-out infinite; }
@keyframes mova-pulse{ 0%,100%{ box-shadow:0 0 0 6px rgba(242,121,10,.25);} 50%{ box-shadow:0 0 0 12px rgba(242,121,10,.05);} }

/* ---------- Dashboard ---------- */
.mova-topbar{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 16px; padding-top:calc(14px + env(safe-area-inset-top));
  background:var(--mova-surface, #FFFFFF); border-bottom:1px solid var(--mova-border, #E7EAF0);
  position:sticky; top:0; z-index:20; gap:8px;
}
.mova-topbar-brand img{ height:28px; max-width:110px; object-fit:contain; }
@media (min-width:420px){ .mova-topbar-brand img{ height:32px; max-width:none; } }
.mova-role-pill{
  background:var(--mova-navy, #0B1E3D); color:#fff; font-size:12px; font-weight:600;
  padding:5px 12px; border-radius:100px;
}
.mova-topbar-user{ display:flex; align-items:center; gap:10px; }
.mova-topbar-name{ font-size:13px; font-weight:600; display:none; }
@media (min-width:600px){ .mova-topbar-name{ display:inline; } }

.mova-dash-main{ max-width:960px; margin:0 auto; padding:20px 16px 60px; }

.mova-dash-hero{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
  gap:16px; padding:20px; background:var(--mova-navy, #0B1E3D); color:#fff;
  border-radius:var(--mova-radius, 16px); margin-bottom:18px;
}
.mova-eyebrow{ color:var(--mova-orange, #F2790A); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.mova-dash-hero h1{ font-size:clamp(18px, 5vw, 22px); margin:4px 0; word-break:break-word; }
.mova-dash-sub{ color:#C9D2E3; font-size:14px; }
.mova-dash-hero .mova-btn{ width:100%; }
@media (min-width:480px){ .mova-dash-hero .mova-btn{ width:auto; } }

.mova-stat-row{ display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:12px; margin-bottom:18px; }
.mova-stat-card{
  background:var(--mova-surface, #FFFFFF); border-radius:var(--mova-radius-sm, 10px); padding:16px;
  box-shadow:var(--mova-shadow, 0 10px 30px rgba(11,30,61,.08)); text-align:left;
}
.mova-stat-card-accent{ background:#FFF6EC; }
.mova-stat-value{ display:block; font-family:'JetBrains Mono',monospace; font-size:24px; font-weight:600; }
.mova-stat-label{ font-size:12px; color:var(--mova-text-soft, #5B6472); }

.mova-panel{ background:var(--mova-surface, #FFFFFF); border-radius:var(--mova-radius, 16px); padding:18px; box-shadow:var(--mova-shadow, 0 10px 30px rgba(11,30,61,.08)); margin-bottom:18px; }
.mova-panel-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.mova-panel-head h2{ font-size:16px; }
.mova-badge{ font-size:12px; font-weight:600; padding:4px 10px; border-radius:100px; }
.mova-badge-live{ background:#E9F9EF; color:var(--mova-success, #1F9D55); }
#mova-geoloc-status{ display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; }
.mova-geoloc-retry{
  background:rgba(11,30,61,.08); border:none; border-radius:100px; padding:3px 9px;
  font-size:11px; font-weight:600; cursor:pointer; color:var(--mova-navy, #0B1E3D); min-height:auto;
}

.mova-map{ width:100%; height:280px; border-radius:var(--mova-radius-sm, 10px); overflow:hidden; background:#E7EAF0; }

.mova-empty{ color:var(--mova-text-soft, #5B6472); font-size:14px; padding:12px 0; }

.mova-toggle{ display:flex; align-items:center; gap:10px; cursor:pointer; }
.mova-toggle input{ display:none; }
.mova-toggle-track{ width:44px; height:26px; background:rgba(255,255,255,.2); border-radius:100px; position:relative; transition:background .2s; }
.mova-toggle-thumb{ position:absolute; top:3px; left:3px; width:20px; height:20px; background:#fff; border-radius:50%; transition:transform .2s; }
.mova-toggle input:checked + .mova-toggle-track{ background:var(--mova-success, #1F9D55); }
.mova-toggle input:checked + .mova-toggle-track .mova-toggle-thumb{ transform:translateX(18px); }
.mova-toggle-label{ font-size:13px; font-weight:600; color:#fff; }

.mova-form-inline{ flex-direction:row; align-items:flex-end; flex-wrap:wrap; }
.mova-form-inline .mova-field{ flex:1; min-width:160px; }
.mova-form-inline .mova-btn{ flex-shrink:0; }
.mova-code-input{ font-family:'JetBrains Mono',monospace; letter-spacing:.1em; }

/* Modal course */
.mova-modal{ position:fixed; inset:0; background:rgba(11,30,61,.55); display:flex; align-items:flex-end; justify-content:center; z-index:50; }
.mova-modal[hidden]{ display:none; }
.mova-modal-card{
  background:#fff; border-radius:var(--mova-radius, 16px) var(--mova-radius, 16px) 0 0; padding:20px 16px;
  padding-bottom:calc(20px + env(safe-area-inset-bottom));
  width:100%; max-width:480px; max-height:88vh; overflow-y:auto;
}
@media (min-width:640px){
  .mova-modal{ align-items:center; padding:16px; }
  .mova-modal-card{ border-radius:var(--mova-radius, 16px); max-height:90vh; }
}
.mova-modal-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.mova-modal-close{ background:none; border:none; font-size:18px; cursor:pointer; color:var(--mova-text-soft, #5B6472); min-height:auto; }

.mova-desktop-block{ display:flex; align-items:center; justify-content:center; }
.mova-desktop-block .mova-auth-card{ max-width:380px; }

.mova-note{ text-align:center; padding:40px 20px; font-size:14px; }

/* =========================================================
   Page d'accueil publique (accessible desktop + mobile)
   ========================================================= */
.mova-home{
  font-family:'Inter',system-ui,sans-serif; color:var(--mova-text, #16213A); background:var(--mova-bg, #F7F8FA);
  overflow-x:hidden; max-width:100vw;
}
.mova-home *{ box-sizing:border-box; }
.mova-home h1, .mova-home h2{ font-family:'Space Grotesk',sans-serif; letter-spacing:-.01em; }

.mova-home-hero{
  position:relative; text-align:center; padding:48px 20px 64px; background:var(--mova-navy, #0B1E3D); color:#fff;
  overflow:hidden;
}
.mova-home-logo{ width:150px; max-width:60vw; height:auto; margin-bottom:8px; }
.mova-home-hero h1{ font-size:clamp(24px, 6vw, 40px); max-width:720px; margin:12px auto 14px; line-height:1.2; }
.mova-home-hero h1 span{ color:var(--mova-orange, #F2790A); }
.mova-home-sub{ color:#C9D2E3; max-width:560px; margin:0 auto 26px; font-size:15px; }
.mova-home-cta{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; position:relative; z-index:2; }
.mova-home-cta .mova-btn-ghost{ background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.3); }
.mova-home-route{ position:absolute; inset:auto 0 0 0; height:60px; opacity:.5; }

.mova-home-roles{ padding:48px 20px; max-width:1000px; margin:0 auto; text-align:center; }
.mova-home-roles h2, .mova-home-steps h2{ font-size:clamp(20px, 4vw, 26px); margin-bottom:24px; }
.mova-home-role-grid{ display:grid; grid-template-columns:1fr; gap:14px; text-align:left; }
@media (min-width:640px){ .mova-home-role-grid{ grid-template-columns:1fr 1fr; } }
@media (min-width:960px){ .mova-home-role-grid{ grid-template-columns:repeat(4,1fr); } }
.mova-home-role-card{
  background:var(--mova-surface, #FFFFFF); border-radius:var(--mova-radius, 16px); padding:22px; box-shadow:var(--mova-shadow, 0 10px 30px rgba(11,30,61,.08));
}
.mova-home-role-card .mova-role-icon{ font-size:28px; display:block; margin-bottom:8px; }
.mova-home-role-card h3{ font-size:16px; margin:0 0 6px; font-family:'Space Grotesk',sans-serif; }
.mova-home-role-card p{ font-size:13px; color:var(--mova-text-soft, #5B6472); margin:0 0 10px; }
.mova-home-role-link{ font-size:13px; font-weight:600; color:var(--mova-orange-dark, #D96A06); text-decoration:none; }
.mova-home-role-link:hover{ text-decoration:underline; }

.mova-home-steps{ padding:48px 20px; max-width:800px; margin:0 auto; text-align:center; }
.mova-home-steps-list{ list-style:none; margin:0; padding:0; display:grid; gap:14px; text-align:left; }
@media (min-width:640px){ .mova-home-steps-list{ grid-template-columns:1fr 1fr; } }
.mova-home-steps-list li{
  background:var(--mova-surface, #FFFFFF); border-radius:var(--mova-radius-sm, 10px); padding:16px 18px; box-shadow:var(--mova-shadow, 0 10px 30px rgba(11,30,61,.08));
}
.mova-home-steps-list strong{ display:block; font-size:14px; margin-bottom:4px; }
.mova-home-steps-list span{ font-size:13px; color:var(--mova-text-soft, #5B6472); }

.mova-home-final-cta{
  text-align:center; padding:48px 20px; background:#FFF6EC; margin:0 20px; border-radius:var(--mova-radius, 16px);
  max-width:960px; margin-left:auto; margin-right:auto;
}
.mova-home-final-cta h2{ font-size:clamp(20px, 4vw, 26px); margin-bottom:8px; }
.mova-home-final-cta p{ color:var(--mova-text-soft, #5B6472); font-size:14px; margin-bottom:20px; }

.mova-home-footer{ text-align:center; padding:40px 20px 60px; color:var(--mova-text-soft, #5B6472); font-size:13px; }
.mova-home-footer-logo{ width:90px; height:auto; opacity:.7; margin-bottom:10px; }
.mova-home-footer-credit{ font-size:12px; opacity:.7; margin-top:4px; }

/* ---------- Cartes de course, statuts, codes, candidatures ---------- */
.mova-order-filters{ display:flex; gap:8px; margin-bottom:14px; flex-wrap:wrap; }
.mova-filter-input{
  flex:2; min-width:160px; padding:10px 12px; border-radius:8px; border:1.5px solid var(--mova-border, #E7EAF0);
  font:inherit; font-size:14px; color:var(--mova-text, #16213A);
}
.mova-filter-select{
  flex:1; min-width:130px; padding:10px 12px; border-radius:8px; border:1.5px solid var(--mova-border, #E7EAF0);
  font:inherit; font-size:14px; color:var(--mova-text, #16213A); background:var(--mova-surface, #fff);
}

.mova-order-card{
  border:1px solid var(--mova-border, #E7EAF0); border-radius:var(--mova-radius-sm, 10px);
  padding:14px; margin-bottom:10px; background:var(--mova-surface, #FFFFFF);
}
.mova-order-card:last-child{ margin-bottom:0; }
.mova-order-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:10px; flex-wrap:wrap; }
.mova-order-route{ display:block; font-size:13px; color:var(--mova-text-soft, #5B6472); margin-top:2px; }

.mova-status-tag{
  font-size:11px; font-weight:700; padding:4px 10px; border-radius:100px;
  background:#EEF1F6; color:var(--mova-navy, #0B1E3D); white-space:nowrap; text-transform:uppercase; letter-spacing:.02em;
}
.mova-status-delivered,.mova-status-closed,.mova-status-cash_collected{ background:#E9F9EF; color:var(--mova-success, #1F9D55); }
.mova-status-disputed,.mova-status-cancelled{ background:#FBEAEA; color:#C0392B; }
.mova-status-pending_assignment,.mova-status-awaiting_renewal{ background:#FFF6EC; color:var(--mova-orange-dark, #D96A06); }

.mova-code-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.mova-code-chip{
  font-family:'JetBrains Mono',monospace; font-size:12px; background:var(--mova-bg, #F7F8FA);
  border:1px dashed var(--mova-border, #E7EAF0); border-radius:8px; padding:5px 10px;
}

.mova-applicants{ margin-top:10px; padding-top:10px; border-top:1px dashed var(--mova-border, #E7EAF0); }
.mova-applicants-title{ font-size:12px; color:var(--mova-text-soft, #5B6472); margin-bottom:6px; }
.mova-applicants .mova-btn{ margin:0 6px 6px 0; }

.mova-order-card > .mova-btn{ margin-top:10px; }

.mova-panel-highlight{ border:2px solid var(--mova-orange, #F2790A); }
.mova-mission-actions{ display:flex; flex-direction:column; gap:10px; align-items:stretch; }
.mova-mission-actions .mova-form-inline{ width:100%; }
.mova-mission-actions .mova-field{ flex:1; min-width:0; }
.mova-divider{ font-size:12px; color:var(--mova-text-soft, #5B6472); text-transform:uppercase; letter-spacing:.05em; }

.mova-locate-status{ font-size:12px; color:var(--mova-text-soft, #5B6472); margin-left:8px; }

.mova-relay-list{ display:flex; flex-direction:column; gap:10px; max-height:360px; overflow-y:auto; }
.mova-relay-item{
  display:flex; justify-content:space-between; align-items:center; gap:10px;
  border:1px solid var(--mova-border, #E7EAF0); border-radius:var(--mova-radius-sm, 10px); padding:12px;
}
.mova-relay-distance{ display:block; font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--mova-orange-dark, #D96A06); margin-top:2px; }

/* ---------- Cloche de notifications ---------- */
.mova-bell-btn{
  position:relative; background:none; border:none; font-size:18px; cursor:pointer;
  padding:6px; line-height:1; border-radius:8px; color:var(--mova-navy, #0B1E3D);
}
.mova-bell-btn:hover{ background:var(--mova-bg, #F7F8FA); }
.mova-bell-badge{
  position:absolute; top:0; right:0; background:var(--mova-orange, #F2790A); color:#fff;
  font-size:10px; font-weight:700; border-radius:100px; min-width:16px; height:16px;
  display:flex; align-items:center; justify-content:center; padding:0 4px;
}
.mova-bell-dropdown{
  position:fixed; top:64px; right:8px; left:8px; margin-left:auto; width:auto; max-width:340px;
  max-height:70vh; overflow-y:auto;
  background:var(--mova-surface, #FFFFFF); border-radius:var(--mova-radius-sm, 10px); box-shadow:var(--mova-shadow, 0 10px 30px rgba(11,30,61,.08));
  z-index:30; border:1px solid var(--mova-border, #E7EAF0);
}
@media (min-width:400px){
  .mova-bell-dropdown{ position:absolute; top:56px; left:auto; right:16px; width:300px; }
}
.mova-bell-dropdown-head{
  display:flex; align-items:center; justify-content:space-between; padding:10px 14px;
  border-bottom:1px solid var(--mova-border, #E7EAF0); font-weight:600; font-size:13px;
}
.mova-bell-list{ padding:6px; }
.mova-bell-item{ padding:10px; border-radius:8px; font-size:13px; }
.mova-bell-item.is-unread{ background:#FFF6EC; }
.mova-bell-item strong{ display:block; margin-bottom:2px; }
.mova-bell-item p{ margin:0; color:var(--mova-text-soft, #5B6472); font-size:12px; }

/* ---------- Carte de sélection des points (création de course) ---------- */
.mova-modal-card-wide{ max-width:520px; max-height:90vh; overflow-y:auto; }
.mova-map-picker-tabs{ display:flex; gap:8px; margin:8px 0; flex-wrap:wrap; }
.mova-pin-mode{ background:var(--mova-bg, #F7F8FA); border:1.5px solid var(--mova-border, #E7EAF0); flex:1; min-width:140px; color:var(--mova-text, #16213A); }
.mova-pin-mode.is-active{ border-color:var(--mova-orange, #F2790A); background:#FFF6EC; color:var(--mova-orange-dark, #D96A06); }
.mova-map-picker{ height:200px; margin-top:6px; cursor:crosshair; }

.mova-fee-estimate{
  display:flex; flex-direction:column; gap:2px; background:#FFF6EC; border-radius:var(--mova-radius-sm, 10px);
  padding:12px 14px; font-size:12px; color:var(--mova-text-soft, #5B6472);
}
.mova-fee-estimate strong{ font-family:'JetBrains Mono',monospace; font-size:18px; color:var(--mova-orange-dark, #D96A06); }

/* ---------- Articles multi-colis ---------- */
.mova-item-row{ display:flex; gap:8px; margin-bottom:6px; flex-wrap:wrap; }
.mova-item-row .mova-item-label{ flex:1; min-width:0; padding:10px 12px; border-radius:8px; border:1.5px solid var(--mova-border, #E7EAF0); font:inherit; }
.mova-item-row .mova-item-qty{ width:56px; padding:10px 8px; border-radius:8px; border:1.5px solid var(--mova-border, #E7EAF0); font:inherit; text-align:center; }
.mova-item-list{ list-style:none; margin:8px 0; padding:0; font-size:13px; color:var(--mova-text-soft, #5B6472); }
.mova-item-list li{ padding:2px 0; }

.mova-order-fee{ font-size:13px; margin:6px 0; }
.mova-order-fee strong{ font-family:'JetBrains Mono',monospace; color:var(--mova-orange-dark, #D96A06); }
.mova-order-distance{ color:var(--mova-text-soft, #5B6472); font-size:12px; }

/* ---------- Notation du livreur ---------- */
.mova-rate-form{
  display:flex; align-items:center; gap:10px; margin-top:10px; padding-top:10px;
  border-top:1px dashed var(--mova-border, #E7EAF0); flex-wrap:wrap; font-size:13px;
}
.mova-star-picker{ display:flex; gap:2px; }
.mova-star{
  background:none; border:none; font-size:20px; color:var(--mova-border, #E7EAF0); cursor:pointer; padding:0; line-height:1;
}
.mova-star.is-active{ color:var(--mova-orange, #F2790A); }

/* =========================================================
   Relevé de versements imprimable (export PDF via impression navigateur)
   ========================================================= */
.mova-statement{
  max-width:760px; margin:0 auto; padding:20px 16px 60px; font-family:'Inter',system-ui,sans-serif;
  color:var(--mova-text, #16213A); background:#fff;
}
.mova-statement-toolbar{ display:flex; justify-content:space-between; gap:10px; margin-bottom:20px; flex-wrap:wrap; }
.mova-statement-head{ display:flex; align-items:center; gap:16px; margin-bottom:20px; border-bottom:2px solid var(--mova-navy, #0B1E3D); padding-bottom:16px; }
.mova-statement-logo{ width:70px; height:auto; }
.mova-statement-head h1{ font-family:'Space Grotesk',sans-serif; font-size:20px; margin:0 0 4px; color:var(--mova-navy, #0B1E3D); }
.mova-statement-head p{ font-size:13px; color:var(--mova-text-soft, #5B6472); margin:0; }

.mova-statement-summary{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:24px; }
.mova-statement-summary div{ background:var(--mova-bg, #F7F8FA); border-radius:10px; padding:12px; text-align:center; }
.mova-statement-summary span{ display:block; font-size:11px; color:var(--mova-text-soft, #5B6472); margin-bottom:4px; }
.mova-statement-summary strong{ font-family:'JetBrains Mono',monospace; font-size:16px; color:var(--mova-navy, #0B1E3D); }

.mova-statement-table{ width:100%; border-collapse:collapse; font-size:13px; }
.mova-statement-table th, .mova-statement-table td{ padding:8px 10px; border-bottom:1px solid var(--mova-border, #E7EAF0); text-align:left; }
.mova-statement-table th{ background:var(--mova-bg, #F7F8FA); font-weight:600; }
.mova-statement-detail-row td{ font-size:11px; color:var(--mova-text-soft, #5B6472); background:#FAFBFC; }

.mova-statement-footer{ margin-top:30px; font-size:11px; color:var(--mova-text-soft, #5B6472); text-align:center; }

@media print{
  .mova-no-print{ display:none !important; }
  .mova-statement{ padding:0; max-width:100%; }
  body{ -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  /* Meilleur effort pour masquer l'habillage du thème WordPress actif
     (variable selon les thèmes ; le contenu du relevé reste net dans tous les cas). */
  header:not(.mova-statement-head), footer:not(.mova-statement-footer), nav,
  .site-header, .site-footer, .site-navigation, #masthead, #colophon, .widget-area{
    display:none !important;
  }
}

