/* OZECAR · api/espace-ds.css v4.1 (2026-10-28, contenu v2 : etiquettes de famille .oz-tag, lignes .oz-lrow, point rouge .oz-dot) · v4.0 (2026-10-28, coque v2 validee par Dominique : Geist + Geist Mono, menu a groupes, fil d'Ariane, titres fluides ; couche « COQUE V2 » en fin de fichier) · historique v3.0 (2026-10-22) · design system OZECAR = source unique. 1) tokens.css 2) bundle.css (composants oz-*) 3) coque + compat. Ne pas editer a la main les parties 1 et 2 : recopier depuis le design system. */
/* OZECAR — tokens.css (miroir de tokens.json du design system OZECAR) */
:root,[data-theme="light"]{
--ink:#0f141e;--ink-muted:#53555d;--ink-faint:#aaacb4;
--surface-100:#f5f0eb;--surface-50:#fbf9f6;--surface-0:#ffffff;--line:#e8e2da;
--brand-yellow:#fac828;--brand-yellow-soft:#fdf0c4;
--brand-violet:#5f2dff;--brand-violet-hover:#4c1fe0;--brand-violet-soft:#ece6ff;
--ok:#1f7a3a;--ok-soft:#e2f3e7;--warn:#b26a00;--warn-soft:#fdefd6;--danger:#c42a2a;--danger-soft:#fbe4e4;
--info:var(--brand-violet);--focus:var(--brand-violet);
--shadow-float:0 8px 24px rgba(95,45,255,0.35);--shadow-panel:0 16px 48px rgba(15,20,30,0.18);
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:28px;--space-7:40px;
--rail-width:264px;--content-max:1120px;
--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:100px;
--font-sans:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;
--font-mono:"Geist Mono",ui-monospace,"SF Mono",Menlo,monospace;
}
.display{font:700 34px/40px var(--font-sans);letter-spacing:-.5px}
.h1{font:700 26px/32px var(--font-sans);letter-spacing:-.3px}
.h2{font:700 19px/26px var(--font-sans)}
.h3{font:700 15px/22px var(--font-sans)}
.body{font:400 15px/23px var(--font-sans)}
.body-strong{font:600 15px/23px var(--font-sans)}
.small{font:400 13px/19px var(--font-sans)}
.label{font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase}
.kpi{font:650 30px/36px var(--font-sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.mono{font:400 13px/19px var(--font-mono)}

/* OZECAR Design System · bundle.css · composants CSS purs, construits sur tokens.css */
.oz{font-family:var(--font-sans);color:var(--ink);font-size:15px;line-height:23px}
.oz *{box-sizing:border-box}

/* Button */
.oz-btn{display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);padding:var(--space-3) 18px;font:600 15px/1 var(--font-sans);cursor:pointer;text-decoration:none;white-space:nowrap}
.oz-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.oz-btn--primary{background:var(--brand-violet);color:#fff}
.oz-btn--primary:hover{background:var(--brand-violet-hover)}
.oz-btn--secondary{background:var(--surface-0);color:var(--ink);border-color:var(--line)}
.oz-btn--secondary:hover{background:var(--surface-100)}
.oz-btn--ghost{background:transparent;color:var(--brand-violet);padding-left:var(--space-2);padding-right:var(--space-2)}
.oz-btn--ghost:hover{background:var(--brand-violet-soft)}
.oz-btn--danger{background:var(--surface-0);color:var(--danger);border-color:var(--line)}
.oz-btn--sm{padding:8px 12px;font-size:13px}
.oz-btn:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
.oz-btn[disabled]{opacity:.5;cursor:not-allowed}

/* Badge */
.oz-badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:4px var(--space-3);font:600 12.5px/16px var(--font-sans);white-space:nowrap}
.oz-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.oz-badge--ok{background:var(--ok-soft);color:var(--ok)}
.oz-badge--warn{background:var(--warn-soft);color:var(--warn)}
.oz-badge--danger{background:var(--danger-soft);color:var(--danger)}
.oz-badge--info{background:var(--brand-violet-soft);color:var(--brand-violet)}
.oz-badge--neutral{background:var(--surface-100);color:var(--ink-muted)}
.oz-badge--plain::before{display:none}
.oz-count{display:inline-block;min-width:20px;text-align:center;background:var(--warn);color:#fff;border-radius:var(--radius-pill);font:700 11px/16px var(--font-mono);padding:2px 7px}

/* Card */
.oz-card{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5)}
.oz-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}
.oz-card__title{font:700 19px/26px var(--font-sans);margin:0}
.oz-card__sub{font:400 13px/19px var(--font-sans);color:var(--ink-muted);margin:2px 0 0}
.oz-card--yellow{background:var(--brand-yellow-soft);border-color:var(--brand-yellow)}
.oz-card--violet{background:var(--brand-violet-soft);border-color:var(--brand-violet-soft)}
.oz-card__foot{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line);display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}

/* StatTile */
.oz-stat{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}
.oz-stat__label{font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted)}
.oz-stat__value{font:700 30px/36px var(--font-mono);margin-top:6px}
.oz-stat__value small{font:400 14px/1 var(--font-sans);color:var(--ink-muted);margin-left:4px}
.oz-stat__delta{font:400 13px/19px var(--font-sans);color:var(--ink-muted);margin-top:4px}
.oz-stat__delta.up{color:var(--ok)}.oz-stat__delta.down{color:var(--danger)}

/* RailItem */
.oz-rail{width:232px;background:var(--surface-0);border-right:1px solid var(--line);padding:16px 12px;display:flex;flex-direction:column;gap:4px}
.oz-rail__item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--radius-md);text-decoration:none;color:var(--ink-muted);font:600 14.5px/1 var(--font-sans);position:relative}
.oz-rail__item svg{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.oz-rail__item:hover{background:var(--surface-100);color:var(--ink)}
.oz-rail__item--on{background:var(--brand-yellow);color:var(--ink)}
.oz-rail__item .oz-count{margin-left:auto}
.oz-rail__sep{height:1px;background:var(--line);margin:8px 10px}

/* Assistant */
.oz-ask-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:var(--radius-pill);background:var(--brand-violet);color:#fff;font:600 14px/1 var(--font-sans);padding:13px 18px 13px 14px;box-shadow:var(--shadow-float);cursor:pointer}
.oz-ask-btn svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.oz-ask{width:380px;background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);overflow:hidden}
.oz-ask__hd{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);font-weight:700}
.oz-ask__hd img{width:28px;height:28px}
.oz-ask__bd{padding:14px 16px}
.oz-ask__form{display:flex;gap:8px}
.oz-ask__form input{flex:1;min-width:0;font:15px var(--font-sans);padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-50)}
.oz-ask__sug{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.oz-ask__sug button{border:1px solid var(--line);background:var(--surface-0);border-radius:var(--radius-pill);padding:6px 11px;font:500 12.5px var(--font-sans);color:var(--ink);cursor:pointer}

/* Table */
.oz-table{width:100%;border-collapse:collapse;font:400 14px/20px var(--font-sans)}
.oz-table th{text-align:left;font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted);padding:10px 12px;border-bottom:1px solid var(--line)}
.oz-table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}
.oz-table tr:last-child td{border-bottom:0}
.oz-table .mono{font:400 13px/19px var(--font-mono)}
.oz-table .num{text-align:right;font-family:var(--font-mono)}
.oz-table tr:hover td{background:var(--surface-50)}

/* Alert */
.oz-alert{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px;background:var(--surface-0)}
.oz-alert svg{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.oz-alert__t{font-weight:700;margin:0 0 2px}
.oz-alert__p{margin:0;font-size:14px;line-height:21px;color:var(--ink-muted)}
.oz-alert--info{border-color:var(--brand-violet-soft);background:var(--brand-violet-soft);color:var(--brand-violet)}
.oz-alert--info .oz-alert__p{color:var(--ink)}
.oz-alert--warn{border-color:var(--warn-soft);background:var(--warn-soft);color:var(--warn)}
.oz-alert--warn .oz-alert__p{color:var(--ink)}
.oz-alert--danger{border-color:var(--danger-soft);background:var(--danger-soft);color:var(--danger)}
.oz-alert--danger .oz-alert__p{color:var(--ink)}
.oz-alert--ok{border-color:var(--ok-soft);background:var(--ok-soft);color:var(--ok)}
.oz-alert--ok .oz-alert__p{color:var(--ink)}

/* Field */
.oz-field{display:flex;flex-direction:column;gap:6px}
.oz-field label{font:600 13px/18px var(--font-sans)}
.oz-field input,.oz-field select,.oz-field textarea{font:15px var(--font-sans);padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-50);color:var(--ink);width:100%}
.oz-field input:focus,.oz-field select:focus,.oz-field textarea:focus{outline:2px solid var(--focus);outline-offset:1px}
.oz-field .help{font:400 13px/19px var(--font-sans);color:var(--ink-muted)}
.oz-field.err input{border-color:var(--danger)}.oz-field.err .help{color:var(--danger)}

/* ===== OZECAR Design System · coque de l'espace et de la coque equipe (espace-ui v3.0, 2026-10-22) =====
   Source unique des tokens et des composants : design system OZECAR (artifact « OZECAR », tokens.json + bundle.css recopies ci-dessus).
   Cette partie ajoute la mise en page 3 zones (rail / contenu / assistant), les variantes de page et la couche de compatibilite
   des classes historiques de l'espace (.act, .tile, .empty, .chip, table...) pour que toutes les pages existantes prennent le design. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.oz{margin:0;background:var(--surface-100);color:var(--ink);font:400 15px/23px var(--font-sans);min-height:100vh;padding-left:var(--rail-width);padding-bottom:60px}
:where(body.oz) a{color:var(--brand-violet)}   /* specificite nulle : les composants (oz-btn, oz-rail__item) gardent leur couleur */
body.oz nav.oz-rail a.oz-rail__item{color:var(--ink-muted)}body.oz nav.oz-rail a.oz-rail__item:hover{color:var(--ink)}body.oz nav.oz-rail a.oz-rail__item--on{color:var(--ink)}
body.oz h1,body.oz h2,body.oz h3{margin:0;font-family:var(--font-sans)}
body.oz p{margin:0 0 12px}

/* bandeau de contexte (site de test, apercu) : au-dessus du contenu, jamais sur le rail */
.oz-band{background:var(--ink);color:#fff;font:400 12.5px/18px var(--font-sans);text-align:center;padding:7px 12px}
.oz-band--apercu{background:var(--brand-violet)}

/* rail de navigation : fixe a gauche, icones seules sur ecran moyen, barre basse sur mobile */
nav.oz-rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail-width);z-index:30;overflow-y:auto;padding:16px 12px}
nav.oz-rail .oz-rail__logo{display:flex;align-items:center;gap:8px;padding:6px 10px 18px;text-decoration:none}
nav.oz-rail .oz-rail__logo img{height:26px;display:block}
nav.oz-rail .oz-rail__item .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
nav.oz-rail .oz-rail__item .ext{margin-left:auto;font-size:11px;color:var(--ink-muted)}
nav.oz-rail .oz-rail__item--on .ext{color:var(--ink)}
nav.oz-rail .oz-rail__pied{margin-top:auto;padding:12px 10px 4px;font:400 12px/18px var(--font-sans);color:var(--ink-muted);overflow-wrap:anywhere}
nav.oz-rail .oz-rail__pied a,nav.oz-rail .oz-rail__pied button{color:var(--brand-violet);font:500 12px/18px var(--font-sans);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}
nav.oz-rail .oz-rail__pied form{display:inline}
.oz-rail__role{font:600 11px/16px var(--font-sans);letter-spacing:.4px;text-transform:uppercase;color:var(--brand-violet);background:var(--brand-violet-soft);border-radius:var(--radius-pill);padding:2px 8px}

/* contenu */
.oz-main{max-width:var(--content-max);margin:0 auto;padding:0 var(--space-7)}
.oz-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 0 0;font:400 13px/19px var(--font-sans);color:var(--ink-muted)}
.oz-topline b{color:var(--ink)}
.oz-topline .mono{color:var(--ink-muted);font:400 13px/19px var(--font-mono);text-transform:none;letter-spacing:0}
.oz-topline a{font-weight:500}
.oz-hero{display:flex;align-items:center;gap:16px;margin:28px 0 24px}
.oz-hero img{width:56px;height:56px;flex:none}
.oz-hero .oz-hero__t{min-width:0}
.oz-hero p{margin:4px 0 0;color:var(--ink-muted)}
.oz-hero--cta{justify-content:space-between;flex-wrap:wrap}
.oz-hero--cta .oz-hero__t{flex:1 1 320px}
.oz-section{margin:28px 0 12px}
.oz-section h2{font:700 19px/26px var(--font-sans)}
.oz-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.oz-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.oz-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.oz-grid--stats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 0 24px}
.oz-span2{grid-column:span 2}
.oz-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.oz-item{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;margin:0 0 10px}
.oz-item .oz-item__t{flex:1;min-width:0}
.oz-item b{display:block;font:600 15px/22px var(--font-sans)}
.oz-item .d{display:block;color:var(--ink-muted);font:400 13px/19px var(--font-sans);margin-top:2px}
.oz-item--ok{opacity:.8}
.oz-date{flex:none;width:52px;text-align:center;background:var(--surface-100);border-radius:var(--radius-sm);padding:6px 0}
.oz-date .m{font:600 11px/14px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted)}
.oz-date .j{font:700 22px/26px var(--font-mono)}
.oz-list>*+*{border-top:1px solid var(--line)}
.oz-list .oz-li{display:flex;gap:14px;align-items:flex-start;padding:12px 0}
.oz-list .oz-li .t{flex:1;min-width:0}
.oz-empty{background:var(--surface-0);border:1px dashed var(--line);border-radius:var(--radius-lg);padding:22px;color:var(--ink-muted);line-height:1.55}
.oz-empty b{color:var(--ink)}
.oz-flash{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--ok-soft);background:var(--ok-soft);color:var(--ok);border-radius:var(--radius-md);padding:12px 14px;margin:0 0 16px;font:400 14px/21px var(--font-sans)}
.oz-flash.ko{border-color:var(--danger-soft);background:var(--danger-soft);color:var(--danger)}
.oz-kv{font:400 14px/22px var(--font-sans)}
.oz-kv .label{display:block;margin-top:8px}
.oz-kv b{color:var(--ink)}
.oz-avatar{width:44px;height:44px;border-radius:50%;background:var(--brand-violet-soft);color:var(--brand-violet);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.oz-lvl{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0)}
.oz-lvl--on{border:2px solid var(--brand-yellow);background:var(--brand-yellow-soft)}
.oz-lvl--inclus{opacity:.75}
.oz-lvl .mono{font-weight:700}
.oz-lvl ul{margin:0;padding-left:16px;color:var(--ink-muted);font:400 13px/19px var(--font-sans)}
.oz-table-wrap{overflow-x:auto}
.oz-card--table{padding:4px 0 0}
.oz-card--table .oz-card__head{padding:16px 20px 0}
.oz-card--table .oz-table td:first-child,.oz-card--table .oz-table th:first-child{padding-left:20px}
.oz-card--table .oz-table td:last-child,.oz-card--table .oz-table th:last-child{padding-right:20px}
.oz-chips{display:flex;flex-wrap:wrap;gap:8px}
.oz-chips label{border:1px solid var(--line);background:var(--surface-0);border-radius:var(--radius-pill);padding:7px 12px;font:500 13.5px/18px var(--font-sans);cursor:pointer;display:flex;gap:6px;align-items:center}
.oz-form{display:grid;gap:14px;grid-template-columns:1fr 1fr}
.oz-form .full{grid-column:1/3}
.oz-card__head>div:last-child:not(:first-child){flex:none}
.oz-foot{margin:34px 0 0;font:400 13px/19px var(--font-sans);color:var(--ink-muted)}
.oz-foot form{display:inline}.oz-foot button{border:0;background:none;padding:0;font:inherit;color:var(--brand-violet);cursor:pointer;text-decoration:underline}
.oz-badge--brand{background:var(--brand-yellow-soft);color:var(--ink)}
.mono{font-family:var(--font-mono)}

/* assistant flottant (toutes les pages) */
#ozask-btn{position:fixed;right:22px;bottom:22px;z-index:40}
#ozask{position:fixed;right:22px;bottom:84px;z-index:41;width:min(420px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 110px));display:flex;flex-direction:column}
#ozask[hidden]{display:none}
#ozask .oz-ask__hd{justify-content:space-between}
#ozask .oz-ask__hd button{border:0;background:none;font-size:20px;line-height:1;cursor:pointer;color:var(--ink-muted)}
#ozask .oz-ask__bd{overflow-y:auto;flex:1}
#ozask .oz-ask__form input:focus{outline:2px solid var(--focus);outline-offset:1px}
#ozask .rep{margin-top:14px;border-top:1px solid var(--line);padding-top:12px;font:400 14.5px/23px var(--font-sans);white-space:pre-line}#ozask .rep[hidden]{display:none}
#ozask .src{margin-top:10px;font-size:13px;white-space:normal}#ozask .src a{display:block;color:var(--brand-violet);font-weight:600;margin-top:4px}
#ozask .pied{margin-top:12px;font-size:13px;color:var(--ink-muted);white-space:normal}#ozask .pied a{color:var(--brand-violet);font-weight:600}#ozask .wait{color:var(--ink-muted)}

/* barre de commande de la page Prestations : ne recouvre ni le rail ni la barre basse */
.bar{left:var(--rail-width)!important}

/* ----- compatibilite des classes historiques de l'espace (pages non encore reecrites) ----- */
body.oz .wrap{max-width:var(--content-max);margin:0 auto;padding:0 var(--space-7)}
body.oz .stg{background:var(--ink);color:#fff;font:400 12.5px/18px var(--font-sans);text-align:center;padding:7px 12px}
body.oz h1{font:700 26px/32px var(--font-sans);letter-spacing:-.3px;margin:28px 0 6px}
body.oz h2{font:700 19px/26px var(--font-sans);margin:28px 0 12px}
body.oz .lead{color:var(--ink-muted);margin:0 0 24px;max-width:660px}
/* les composants du design system gardent leurs marges : la compat ne vise que les titres nus des pages historiques */
body.oz .oz-card__title,body.oz .oz-hero h1,body.oz .oz-section h2,body.oz .oz-card h2,body.oz .oz-card h3,body.oz .filh h2{margin:0}
body.oz .act{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px;display:flex;align-items:center;gap:14px;margin-bottom:10px}
body.oz .act .n{width:30px;height:30px;border-radius:50%;background:var(--surface-100);color:var(--ink);flex:none;display:flex;align-items:center;justify-content:center;font:700 13px var(--font-mono)}
body.oz .act .t{flex:1;min-width:0}body.oz .act b{display:block;font:600 15px/22px var(--font-sans)}body.oz .act span.d{display:block;color:var(--ink-muted);font:400 13px/19px var(--font-sans);margin-top:2px}
body.oz .act.ok{opacity:.8}body.oz .act.ok .n{background:var(--ok-soft);color:var(--ok)}
body.oz .btn{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-md);padding:11px 18px;font:600 14px/1 var(--font-sans);background:var(--brand-violet);color:#fff;cursor:pointer;text-decoration:none;white-space:nowrap}
body.oz .btn:hover{background:var(--brand-violet-hover)}
body.oz .btn.dark,body.oz .btn.sec{background:var(--surface-0);color:var(--ink);border-color:var(--line)}body.oz .btn.dark:hover,body.oz .btn.sec:hover{background:var(--surface-100)}
body.oz .btn.sm{padding:8px 12px;font-size:13px}
body.oz .btn:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
body.oz .empty{background:var(--surface-0);border:1px dashed var(--line);border-radius:var(--radius-lg);padding:22px;color:var(--ink-muted);line-height:1.55}
body.oz .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
body.oz .tile{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5)}body.oz .tile b{font:700 16px/22px var(--font-sans)}body.oz .tile p{color:var(--ink-muted);font:400 14px/21px var(--font-sans);margin:6px 0 14px}
body.oz .tile>span.mono{font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted)}
body.oz table:not(.oz-table){width:100%;border-collapse:collapse;background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;font:400 14px/20px var(--font-sans)}
body.oz table:not(.oz-table) th{text-align:left;font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted);padding:12px 14px;border-bottom:1px solid var(--line)}
body.oz table:not(.oz-table) td{padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
body.oz table:not(.oz-table) tr:last-child td{border-bottom:0}body.oz table:not(.oz-table) tr:hover td{background:var(--surface-50)}
body.oz td.r,body.oz th.r{text-align:right;white-space:nowrap}body.oz td.m{font:400 13px/19px var(--font-mono);white-space:nowrap}
body.oz .chip{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:4px 12px;font:600 12.5px/16px var(--font-sans);white-space:nowrap;color:#fff}
/* chips historiques colorees en ligne (background:#1E7B45 etc.) -> badges du design system (fond doux + point), sans toucher au PHP des pages */
body.oz .chip[style*="1E7B45"],body.oz .chip[style*="1e7b45"]{background:var(--ok-soft)!important;color:var(--ok)}
body.oz .chip[style*="B26A00"],body.oz .chip[style*="b26a00"]{background:var(--warn-soft)!important;color:var(--warn)}
body.oz .chip[style*="5F2DFF"],body.oz .chip[style*="5f2dff"]{background:var(--brand-violet-soft)!important;color:var(--brand-violet)}
body.oz .chip[style*="C42A2A"],body.oz .chip[style*="8C1D18"],body.oz .chip[style*="c42a2a"]{background:var(--danger-soft)!important;color:var(--danger)}
body.oz .chip[style*="0F141E"],body.oz .chip[style*="5A6070"],body.oz .chip[style*="0f141e"],body.oz .chip[style*="5a6070"]{background:var(--surface-100)!important;color:var(--ink-muted)}
body.oz .chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
body.oz a.lk{color:var(--brand-violet);font-weight:600;font-size:13.5px;white-space:nowrap}
body.oz .flash{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--ok-soft);background:var(--ok-soft);color:var(--ok);border-radius:var(--radius-md);padding:12px 14px;margin:0 0 16px;font:400 14px/21px var(--font-sans)}
body.oz .flash.ko{border-color:var(--danger-soft);background:var(--danger-soft);color:var(--danger)}
body.oz textarea,body.oz select,body.oz input[type=text],body.oz input[type=email]{font:15px var(--font-sans);padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;background:var(--surface-50);color:var(--ink)}
body.oz textarea{min-height:130px;resize:vertical}
body.oz textarea:focus,body.oz select:focus,body.oz input:focus{outline:2px solid var(--focus);outline-offset:1px}
body.oz form.dem{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5);display:grid;gap:14px;grid-template-columns:1fr 1fr}
body.oz form.dem label{font:600 13px/18px var(--font-sans);display:block;margin-bottom:6px}body.oz form.dem .full{grid-column:1/3}
body.oz form.add{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}body.oz form.add input{flex:1;min-width:180px;width:auto}
body.oz td form{display:inline}body.oz td button.lnk{border:0;background:none;padding:0;font:600 13.5px var(--font-sans);color:var(--danger);cursor:pointer;text-decoration:underline}
body.oz footer{margin:34px 0 0;font:400 13px/19px var(--font-sans);color:var(--ink-muted)}body.oz footer form{display:inline}body.oz footer button{border:0;background:none;padding:0;font:inherit;color:var(--brand-violet);cursor:pointer;text-decoration:underline}
/* parcours (fil d'etapes) et maintenance (widget, niveaux, upsell) : classes des bibliotheques, re-habillees ici */
body.oz .fil,body.oz .mntw{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5);margin:0 0 16px}
body.oz .filh{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
body.oz .filh h2{margin:0}body.oz .filh>.mono{font:600 12px/16px var(--font-sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted)}
body.oz .mntw .filh>span.mono{font:700 19px/26px var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink)}
body.oz .fils{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
body.oz .fils li{position:relative;padding:12px 12px 12px 14px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-50);min-width:0}
body.oz .fils li.faite{border-color:var(--ok-soft);background:var(--ok-soft)}body.oz .fils li.en_cours{border-color:var(--brand-yellow);background:var(--brand-yellow-soft);box-shadow:none}body.oz .fils li.a_venir{opacity:.7}
body.oz .fils .fn{display:inline-flex;width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);align-items:center;justify-content:center;font:700 12px var(--font-mono);margin-bottom:8px}
body.oz .fils li.faite .fn{border-color:var(--ok);color:var(--ok)}body.oz .fils li.en_cours .fn{border-color:var(--ink);background:var(--brand-yellow)}
body.oz .mnti{display:flex;align-items:center;gap:14px;padding:10px 0;border-top:1px solid var(--line)}body.oz .mnti .t{flex:1;min-width:0}body.oz .mnti b{display:block;font:600 14.5px/21px var(--font-sans)}body.oz .mnti .d{display:block;color:var(--ink-muted);font:400 13px/19px var(--font-sans)}
body.oz .mntd{width:52px;flex:none;text-align:center;background:var(--surface-100);border-radius:var(--radius-sm);padding:6px 0}body.oz .mntd b{font:700 22px/26px var(--font-mono);display:block}body.oz .mntd span{font:600 11px/14px var(--font-sans);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-muted)}
body.oz .mntv{color:var(--ink-muted);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
body.oz .niv{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5);margin:0 0 16px;display:grid;grid-template-columns:1.2fr 1fr;gap:18px}
body.oz .niv ul{margin:8px 0 0;padding-left:18px;color:var(--ink-muted);font:400 14px/22px var(--font-sans)}body.oz .niv .kv{font:400 14px/24px var(--font-sans)}body.oz .niv .kv b{color:var(--ink)}
body.oz .up{background:var(--brand-yellow-soft);border:1px solid var(--brand-yellow);color:var(--ink);border-radius:var(--radius-lg);padding:var(--space-5);margin:0 0 14px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
body.oz .up .t{flex:1;min-width:220px}body.oz .up b{display:block;font:700 16px/22px var(--font-sans);margin-bottom:4px}body.oz .up p{color:var(--ink-muted);font:400 14px/21px var(--font-sans);margin:0}
body.oz .up .px{font:700 22px/28px var(--font-mono);white-space:nowrap}body.oz .up .px small{font:400 11px/16px var(--font-sans);color:var(--ink-muted);display:block}
body.oz .up details{width:100%}body.oz .up summary{cursor:pointer;color:var(--brand-violet);font-weight:600;font-size:14px}body.oz .up form{margin-top:10px;font:400 13.5px/20px var(--font-sans);color:var(--ink)}body.oz .up label{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
body.oz .up .btn{background:var(--brand-violet);color:#fff}
body.oz .bornes{display:flex;flex-wrap:wrap;gap:8px}body.oz .bornes label{border:1px solid var(--line);background:var(--surface-0);border-radius:var(--radius-pill);padding:7px 12px;font:500 13.5px/18px var(--font-sans);cursor:pointer;display:flex;gap:6px;align-items:center;margin:0}
/* page Prestations (prestations.php) servie dans la coque */
body.oz .ask{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5);margin:0 0 8px}

/* ===================== COQUE V2 (28/10/2026) =====================
   Maquette validee : https://claude.ai/artifact/S2Gi5X5DADzAViSaNowQV1 . Cette couche passe apres tout le reste et le surcharge. */
body.oz{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01" 0}
body.oz .num,.oz-stat__value,.kpi{font-variant-numeric:tabular-nums}

/* titres : taille fluide, jamais de debordement (retour a la ligne equilibre, coupure des mots trop longs) */
.display,.oz-hero h1.display{font:650 clamp(24px,1rem + 1.2vw,34px)/1.15 var(--font-sans);letter-spacing:-.025em}
.h1,.oz-hero h1.h1,body.oz h1{font:650 clamp(22px,.95rem + .9vw,28px)/1.2 var(--font-sans);letter-spacing:-.02em}
.h2,body.oz h2,.oz-section h2{font:600 clamp(17px,.9rem + .35vw,19px)/1.35 var(--font-sans);letter-spacing:-.01em}
.oz-card__title{font:600 16px/22px var(--font-sans);letter-spacing:-.005em}
body.oz h1,body.oz h2,body.oz h3,.oz-card__title,.oz-item b,.oz-stat__label{overflow-wrap:anywhere;text-wrap:balance;min-width:0}
.oz-hero{gap:18px;margin:28px 0 24px}
.oz-hero .oz-hero__t{flex:1 1 auto;min-width:0}
.oz-hero--cta>div:last-child{flex:none;max-width:100%}
.oz-hero p{font:400 15px/22px var(--font-sans);color:var(--ink-muted)}
.oz-card__head>div:first-child{min-width:0}
.oz-card__head{gap:12px}
.oz-trunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.oz-stat{border-radius:14px}
.oz-stat__value{font-family:var(--font-sans);font-weight:650;letter-spacing:-.03em}
.oz-stat__label{font:500 13px/18px var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-muted)}
.oz-stat__value{font-size:30px;line-height:36px;margin-top:8px}
/* la tendance « up » d'une tuile ne doit pas prendre le style de l'encart de vente .up (Maintenance) */
body.oz .oz-stat__delta.up,body.oz .oz-stat__delta.down{background:none;border:0;border-radius:0;padding:0;margin:4px 0 0;display:block;font:500 12.5px/18px var(--font-sans)}
body.oz .oz-stat__delta.up{color:var(--ok)}body.oz .oz-stat__delta.down{color:var(--danger)}
.oz-date .j{font:650 20px/24px var(--font-sans);font-variant-numeric:tabular-nums}
.label{letter-spacing:.04em}
.mono,.oz-topline .mono{font-family:var(--font-mono)}

/* ---- rail ---- */
nav.oz-rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail-width);z-index:30;overflow-y:auto;overscroll-behavior:contain;padding:18px 14px 14px;gap:2px;background:var(--surface-0);border-right:1px solid var(--line);scrollbar-width:thin}
nav.oz-rail .oz-rail__logo{display:flex;align-items:center;gap:10px;padding:4px 8px 16px;text-decoration:none;flex:none}
nav.oz-rail .oz-rail__logo img{height:24px;width:auto;display:block}
.oz-rail__role{margin-left:auto;font:600 10.5px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:5px;padding:4px 6px;background:var(--brand-violet-soft);color:#2c00bc}
nav.oz-rail .oz-rail__item{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 10px;border-radius:9px;font:500 14px/20px var(--font-sans);color:#343842;text-decoration:none;position:relative;flex:none}
nav.oz-rail .oz-rail__item svg{width:18px;height:18px;stroke-width:1.9}
nav.oz-rail .oz-rail__item .t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
nav.oz-rail .oz-rail__item:hover{background:var(--surface-100);color:var(--ink)}
nav.oz-rail .oz-rail__item:focus-visible,nav.oz-rail .oz-grp__btn:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
body.oz nav.oz-rail a.oz-rail__item{color:#343842}
body.oz nav.oz-rail a.oz-rail__item:hover{color:var(--ink)}
body.oz nav.oz-rail a.oz-rail__item--on,nav.oz-rail .oz-rail__item--on{background:var(--brand-violet-soft);color:#2c00bc;font-weight:600}
nav.oz-rail .oz-count{margin-left:auto;font:600 11.5px/1 var(--font-sans);font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 7px;background:var(--brand-yellow-soft);color:#6a5203;min-width:0}
nav.oz-rail .oz-rail__item .ext{margin-left:auto;font-size:11px;color:var(--ink-faint)}
nav.oz-rail .oz-rail__sep{height:1px;background:var(--line);margin:8px 10px;flex:none}

/* groupes repliables */
.oz-grp{display:flex;flex-direction:column;margin-top:4px;flex:none}
.oz-grp__btn{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:8px 10px;border-radius:9px;font:500 14px/20px var(--font-sans);color:#343842;cursor:pointer}
.oz-grp__btn:hover{background:var(--surface-100);color:var(--ink)}
.oz-grp__btn svg{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.oz-grp__btn .t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.oz-grp__btn .chev{width:14px;height:14px;stroke-width:2.2;color:var(--ink-faint);transition:transform .15s ease}
.oz-grp__btn[aria-expanded="false"] .chev{transform:rotate(-90deg)}
.oz-grp__n{display:none;font:600 11px/1 var(--font-sans);font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 7px;background:var(--surface-100);color:var(--ink-muted)}
.oz-grp__btn[aria-expanded="false"] .oz-grp__n{display:inline-block}
.oz-grp__items{display:flex;flex-direction:column;gap:1px;margin:2px 0 4px 19px;padding-left:10px;border-left:1px solid var(--line)}
.oz-grp__items[hidden]{display:none}
nav.oz-rail .oz-rail__item--sub{min-height:34px;padding:7px 10px 7px 12px;font-size:13.5px;color:var(--ink-muted)}
body.oz nav.oz-rail a.oz-rail__item--sub{color:var(--ink-muted)}

/* pied du rail : la personne connectee */
nav.oz-rail .oz-rail__pied{margin-top:auto;padding:14px 8px 2px;border-top:1px solid var(--line);font:400 12px/18px var(--font-sans);color:var(--ink-muted);overflow-wrap:anywhere;flex:none}
nav.oz-rail .oz-rail__pied a,nav.oz-rail .oz-rail__pied button{color:#4a1fe0;font:500 12px/18px var(--font-sans);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}

/* rail fonce (coque equipe) */
nav.oz-rail--fonce{background:var(--ink);border-right-color:var(--ink)}
nav.oz-rail--fonce .oz-rail__role{background:var(--brand-yellow);color:var(--ink)}
body.oz nav.oz-rail--fonce a.oz-rail__item,nav.oz-rail--fonce .oz-rail__item,nav.oz-rail--fonce .oz-grp__btn{color:#c9cbd2}
body.oz nav.oz-rail--fonce a.oz-rail__item:hover,nav.oz-rail--fonce .oz-rail__item:hover,nav.oz-rail--fonce .oz-grp__btn:hover{background:#1b2231;color:#fff}
body.oz nav.oz-rail--fonce a.oz-rail__item--sub{color:var(--ink-faint)}
body.oz nav.oz-rail--fonce a.oz-rail__item--on,nav.oz-rail--fonce .oz-rail__item--on{background:#1f2738;color:#fff;font-weight:600}
nav.oz-rail--fonce .oz-rail__item--on::before{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--brand-yellow)}
nav.oz-rail--fonce .oz-rail__item--sub.oz-rail__item--on::before{left:-11px;top:6px;bottom:6px;border-radius:3px}
nav.oz-rail--fonce .oz-rail__item--on svg{stroke:var(--brand-yellow)}
nav.oz-rail--fonce .oz-count{background:var(--brand-yellow);color:var(--ink)}
nav.oz-rail--fonce .oz-grp__n{background:#222a3a;color:var(--ink-faint)}
nav.oz-rail--fonce .oz-grp__btn .chev{color:#6b707c}
nav.oz-rail--fonce .oz-grp__items{border-left-color:#262f41}
nav.oz-rail--fonce .oz-rail__sep{background:#222a3a}
nav.oz-rail--fonce .oz-rail__pied{border-top-color:#222a3a;color:#8e929c}
nav.oz-rail--fonce .oz-rail__pied a,nav.oz-rail--fonce .oz-rail__pied button{color:var(--brand-yellow)}
nav.oz-rail--fonce .oz-rail__item:focus-visible,nav.oz-rail--fonce .oz-grp__btn:focus-visible{outline-color:var(--brand-yellow)}

nav.oz-rail .oz-me{display:flex;align-items:center;gap:10px;margin:0 0 8px}
.oz-me__av{width:32px;height:32px;flex:none;border-radius:999px;background:var(--brand-violet);color:#fff;display:grid;place-items:center;font:600 12.5px/1 var(--font-sans)}
.oz-me__t{display:flex;flex-direction:column;min-width:0}
.oz-me__t b{font:600 13.5px/18px var(--font-sans);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.oz-me__t small{font:400 12px/16px var(--font-sans);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
nav.oz-rail--fonce .oz-me__t b{color:#fff}
nav.oz-rail--fonce .oz-me__t small{color:#8e929c}

/* ---- ligne du haut = fil d'Ariane ---- */
.oz-topline{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:16px 0 0;font:400 13.5px/20px var(--font-sans);color:var(--ink-muted)}
.oz-topline>div{min-width:0}
.oz-topline>div:first-child{flex:1 1 280px}
.oz-topline>div:last-child:not(:first-child){display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.oz-fil{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.oz-fil ol{display:flex;align-items:center;gap:8px;margin:0;padding:0;list-style:none;min-width:0;flex-wrap:wrap}
.oz-fil li{display:flex;align-items:center;gap:8px;min-width:0}
.oz-fil li+li::before{content:"/";color:var(--ink-faint)}
.oz-fil a{color:var(--ink-muted);text-decoration:none;font-weight:500}
.oz-fil a:hover{color:var(--ink);text-decoration:underline}
.oz-fil [aria-current]{color:var(--ink);font-weight:600;max-width:42ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.oz-fil__meta{color:var(--ink-muted);font:400 13px/20px var(--font-sans)}
.oz-fil__meta::before{content:"·";margin-right:8px;color:var(--ink-faint)}
.oz-ctx{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0}
.oz-ctx b{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:32ch}
.oz-ctx .mono{font:400 12.5px/18px var(--font-mono);color:var(--ink-muted);white-space:nowrap}

/* ---- barre mobile + tiroir ---- */
.oz-mbar{display:none}
.oz-voile{display:none}

/* ----- ecrans ----- */
@media(max-width:1180px){
  .oz-main,body.oz .wrap{padding:0 24px}
}
@media(max-width:1024px){
  :root{--rail-width:0px}
  body.oz{padding-left:0;padding-top:56px}
  .oz-mbar{display:flex;align-items:center;gap:12px;position:fixed;top:0;left:0;right:0;height:56px;z-index:35;padding:0 12px;background:var(--surface-0);border-bottom:1px solid var(--line)}
  .oz-mbar--fonce{background:var(--ink);border-bottom-color:var(--ink)}
  .oz-mbar img{height:22px;width:auto;display:block}
  .oz-mbar button{all:unset;box-sizing:border-box;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;cursor:pointer;color:var(--ink)}
  .oz-mbar--fonce button{color:#fff}
  .oz-mbar button:focus-visible{outline:2px solid var(--focus)}
  .oz-mbar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  nav.oz-rail{width:min(300px,86vw);transform:translateX(-102%);transition:transform .2s ease;z-index:50;box-shadow:none}
  body.oz-nav-open nav.oz-rail{transform:none;box-shadow:0 16px 48px rgba(15,20,30,.28)}
  body.oz-nav-open .oz-voile{display:block;position:fixed;inset:0;z-index:45;background:rgba(15,20,30,.45)}
  body.oz-nav-open{overflow:hidden}
  .bar{left:0!important}
}
@media(max-width:900px){.oz-grid--2,.oz-grid--3{grid-template-columns:1fr}.oz-span2{grid-column:auto}body.oz .niv{grid-template-columns:1fr}}
@media(max-width:640px){
  .oz-main,body.oz .wrap{padding:0 16px}
  .oz-hero{margin:20px 0 18px;gap:14px}.oz-hero img{width:44px;height:44px}
  .oz-form,body.oz form.dem{grid-template-columns:1fr}.oz-form .full,body.oz form.dem .full{grid-column:1}
  body.oz .act{flex-wrap:wrap}body.oz .act .btn{width:100%;justify-content:center}.hm{display:none}
  .oz-topline>div:last-child:not(:first-child){justify-content:flex-start}
  .oz-fil [aria-current]{max-width:24ch}
  /* tableau trop large pour un telephone : il defile dans son propre cadre au lieu d'elargir la page */
  body.oz main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  #ozask-btn{right:14px;bottom:14px;padding:12px}#ozask-btn span{display:none}#ozask{right:8px;left:8px;width:auto;bottom:76px;max-height:calc(100vh - 150px)}
}
@media(prefers-reduced-motion:reduce){nav.oz-rail,.oz-grp__btn .chev{transition:none}}

/* ===================== CONTENU V2 (28/10/2026, pages equipe : Aujourd'hui, Mes actions, Devis) =====================
   Etiquette de famille (maquette : Devis violet, Commande jaune, Mise en service vert, Support gris), jamais d'emoji ; point rouge = a traiter en premier ; ligne de liste a 3 colonnes. */
.oz-tag{display:inline-flex;align-items:center;justify-self:start;font:600 11.5px/1 var(--font-sans);padding:6px 8px;border-radius:6px;white-space:nowrap;background:var(--surface-100);color:#3e4046;letter-spacing:.01em}
.oz-tag--devis{background:#ebe5ff;color:#3500e2}.oz-tag--bon{background:#e3f1ea;color:#1d5b3f}.oz-tag--commande{background:#fef1ca;color:#6a5203}.oz-tag--mes{background:#e3f1ea;color:#1d5b3f}
.oz-tag--support{background:#eaebec;color:#3e4046}.oz-tag--intervention{background:#fdefd6;color:#7a4a00}.oz-tag--tache{background:var(--surface-100);color:#3e4046}.oz-tag--appel{background:#e4eefb;color:#1f4e79}
.oz-tag--impaye{background:#fde8e7;color:#912018}.oz-tag--stock{background:#fdefd6;color:#7a4a00}.oz-tag--absence{background:#f1ece5;color:#53555d}.oz-tag--sommeil{background:#f1ece5;color:#676a75}
.oz-tag--test{background:#f1ece5;color:#676a75;border:1px dashed #d5cdc2}
.oz-dot{display:inline-block;width:8px;height:8px;border-radius:999px;background:#b42318;flex:none;vertical-align:1px}
.oz-dot--ok{background:#2e8b57}.oz-dot--warn{background:var(--brand-yellow)}.oz-dot--info{background:var(--brand-violet)}
.oz-lrows{display:flex;flex-direction:column}
.oz-lrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px 14px;padding:11px 0;border-top:1px solid #f1ece5;color:inherit;text-decoration:none;min-width:0}
.oz-lrow:first-child{border-top:0}
a.oz-lrow:hover .oz-lrow__t,.oz-lrow:hover .oz-lrow__t{color:var(--brand-violet)}
.oz-lrow__b{display:flex;flex-direction:column;min-width:0}
.oz-lrow__t{font:600 14px/20px var(--font-sans);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.oz-lrow__m{font:400 12.5px/18px var(--font-sans);color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.oz-lrow__m .mono{font:500 12.5px/18px var(--font-mono);color:var(--ink-muted)}
.oz-lrow__r{display:flex;align-items:center;gap:8px;justify-self:end;font:600 12.5px/18px var(--font-sans);color:#343842;white-space:nowrap}
.oz-lrow__r.u{color:#b42318}
.oz-lrow--u .oz-lrow__t::before{content:"";display:inline-block;width:8px;height:8px;border-radius:999px;background:#b42318;margin-right:8px;vertical-align:1px}
@media(max-width:640px){.oz-lrow{grid-template-columns:auto minmax(0,1fr)}.oz-lrow__r{grid-column:2;justify-self:start}.oz-lrow__t,.oz-lrow__m{white-space:normal}}
/* liste a plat dans une carte : pas de double bordure */
.oz-card .oz-lrows{margin:0 -4px}
