:root{--navy:#0B1220;--blue:#2D5BFF;--teal:#0E9F8E;--coral:#E2574C;--amber:#C98A1F;--line:#e6e8ee;--muted:#5b6472;--bg:#f4f6fb;--card:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:Calibri,"Segoe UI",system-ui,sans-serif;color:#0B1220;background:var(--bg);line-height:1.5}
h1,h2,h3{font-family:Cambria,Georgia,serif}
h1{font-size:26px}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
a{color:var(--blue);text-decoration:none}
img{max-width:100%}
.top{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
.top .wrap{display:flex;align-items:center;gap:20px;padding:12px 20px}
.top .brand{font-family:Cambria,serif;font-weight:700;font-size:19px;color:#fff}
.top nav{display:flex;gap:16px}
.top nav a{color:#cdd6ea;font-weight:700;font-size:14px;padding:4px 0;border-bottom:2px solid transparent}
.top nav a.active,.top nav a:hover{color:#fff;border-bottom-color:var(--blue)}
.top .right{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:13px;color:#aeb8cd}
.top .right form{margin:0}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
main.wrap{padding:20px 20px 48px}
.btn{display:inline-block;background:var(--blue);color:#fff;padding:9px 15px;border:0;border-radius:8px;font-weight:700;cursor:pointer;font:inherit}
.btn.sec{background:#eef1f8;color:var(--navy)}
.btn.ghost{background:transparent;color:#cdd6ea;border:1px solid #33405c}
.btn.danger{background:var(--coral)}
.btn.sm{padding:4px 10px;font-size:13px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0}
.grid2{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:820px){.grid2{grid-template-columns:2fr 1fr}}
label{display:block;font-weight:700;margin:10px 0 4px;font-size:14px}
input,select,textarea{width:100%;padding:9px;border:1px solid #c9d0de;border-radius:8px;font:inherit}
textarea{min-height:80px}
.row{display:flex;gap:14px;flex-wrap:wrap}.row>div{flex:1;min-width:150px}
.inline{display:inline}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top}
th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.5px}
tr:hover td{background:#fafbfe}
.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700}
.st-reception{background:#eef1f8;color:#3b4a66}
.st-remise_en_etat{background:rgba(201,138,31,.14);color:var(--amber)}
.st-en_ligne{background:rgba(45,91,255,.12);color:var(--blue)}
.st-reserve{background:rgba(201,138,31,.14);color:var(--amber)}
.st-vendu{background:rgba(14,159,142,.14);color:var(--teal)}
.st-livre{background:rgba(14,159,142,.14);color:var(--teal)}
.st-brouillon,.st-pieces_a_fournir{background:#eef1f8;color:#3b4a66}
.st-en_traitement,.st-en_attente_moteur{background:rgba(201,138,31,.14);color:var(--amber)}
.st-depose_ants,.st-termine{background:rgba(14,159,142,.14);color:var(--teal)}
.st-rejete{background:rgba(226,87,76,.14);color:var(--coral)}
.err{background:rgba(226,87,76,.12);color:var(--coral);padding:10px 12px;border-radius:8px;margin:10px 0;font-weight:700;font-size:14px}
.ok{background:rgba(14,159,142,.12);color:var(--teal);padding:10px 12px;border-radius:8px;margin:10px 0}
.info{background:#eef3ff;border-left:4px solid var(--blue);padding:12px 14px;border-radius:8px;margin:10px 0}
.warn{background:rgba(201,138,31,.10);border-left:4px solid var(--amber);padding:12px 14px;border-radius:8px;margin:10px 0}
.muted{color:var(--muted)}
.kpi{font-family:Cambria,serif;font-size:26px;font-weight:700}
.pos{color:var(--teal)}.neg{color:var(--coral)}
.auth{max-width:440px;margin:6vh auto}
.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 14px}
.toolbar .sp{margin-left:auto}
.timeline{list-style:none;padding:0;margin:0}
.timeline li{padding:8px 0 8px 18px;border-left:2px solid var(--line);position:relative;margin-left:6px}
.timeline li::before{content:"";position:absolute;left:-7px;top:13px;width:12px;height:12px;border-radius:50%;background:var(--blue)}
.pill{display:inline-block;background:#eef1f8;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;color:#3b4a66}
.ph{aspect-ratio:16/10;background:#e9edf5 center/cover no-repeat;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#9aa4b2;font-size:13px}
