:root{--brand: #111111;--brand-dark: #000000;--brand-soft: #efece4;--cream: #fffbef;--sidebar: #0d0d0d;--green: #2e7d5b;--green-dark: #1f5c42;--green-soft: #e6f2ec;--bg: #f4f6f8;--surface: #ffffff;--border: #e2e6ea;--text: #1d2329;--muted: #6b7680;--danger: #c0392b;--danger-soft: #fdecea;--warning: #b7791f;--warning-soft: #fdf4e3;--info: #2563a8;--info-soft: #e8f0fb;--radius: 10px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:var(--brand);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}h1{font-size:22px;margin:0}h3{font-size:15px;margin:0}.app{display:flex;min-height:100vh}.sidebar{width:240px;flex-shrink:0;background:var(--sidebar);color:#d9d6cf;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar nav{flex:1;overflow-y:auto;padding:8px 10px;scrollbar-width:none;-ms-overflow-style:none}.sidebar nav::-webkit-scrollbar{display:none}.brand{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 16px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-img{width:120px;height:auto;display:block}.brand small{color:#8a877f;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.nav-section{text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:#7c7970;margin:16px 8px 6px}.nav-item{display:flex;align-items:center;gap:10px;font-weight:400;padding:8px 10px;border-radius:8px;color:#d9d6cf;margin-bottom:2px}.nav-section-btn{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 16px);background:none;border:none;padding:4px 2px;cursor:pointer;font:inherit;font-size:11px;border-radius:6px}.nav-section-btn:hover{color:var(--cream)}.nav-chevron{transition:transform .2s;transform:rotate(-90deg)}.nav-groupe.ouvert .nav-chevron{transform:rotate(0)}.nav-item:hover{background:#ffffff12;text-decoration:none}.nav-item.active{background:var(--cream);color:var(--brand);font-weight:600}.sidebar-footer{border-top:1px solid rgba(255,255,255,.08);padding:12px 14px;display:flex;align-items:center;justify-content:space-between}.user{display:flex;align-items:center;gap:10px}.user strong{display:block;color:var(--cream);font-size:13px}.user small{color:#8a877f;font-size:11px}.avatar{width:32px;height:32px;border-radius:50%;background:#2a2a2a;color:var(--cream);display:grid;place-items:center;font-weight:600}.sidebar .btn-icon{color:#d9d6cf}.sidebar .btn-icon:hover{background:#ffffff14;color:var(--cream)}.content{flex:1;min-width:0}.topbar{position:sticky;top:0;z-index:50;display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:10px 28px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar .notifs-btn{background:var(--bg);color:var(--text)}.topbar .notifs-btn:hover{background:var(--brand-soft);text-decoration:none}.topbar .notifs-nb{border-color:var(--surface)}.profil{position:relative}.profil-btn{display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;font:inherit;color:var(--text);padding:4px 8px 4px 4px;border-radius:99px}.profil-btn:hover{background:var(--bg)}.profil-btn .avatar{background:var(--brand)}.profil-texte{display:flex;flex-direction:column;text-align:left;line-height:1.2}.profil-texte strong{font-size:13px}.profil-texte small{color:var(--muted);font-size:11px}.profil-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:200px;background:#fff;border-radius:10px;box-shadow:0 12px 40px #0000002e;padding:6px;z-index:60}.profil-lien{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:6px;background:none;border:none;cursor:pointer;font:inherit;color:var(--text);text-align:left;font-weight:400}.profil-lien:hover{background:var(--bg);text-decoration:none}.page{padding:24px 28px;max-width:1280px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.muted{color:var(--muted);margin:4px 0 0}.center{text-align:center}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12.5px}.back{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;color:var(--muted)}.row-gap{display:flex;gap:8px}.text-danger{color:var(--danger)}.text-success{color:var(--green)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:16px}.card.no-pad{padding:0;overflow-x:auto}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-header.padded{padding:14px 18px 0}.muted-card{background:transparent;border-style:dashed;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.empty-state{text-align:center;padding:40px 20px;color:var(--muted)}.empty-state h3{color:var(--text);margin:12px 0 6px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;gap:12px;align-items:center}.kpi small{color:var(--muted);display:block;margin-bottom:4px}.kpi strong{font-size:20px}.kpi-icon{width:40px;height:40px;border-radius:10px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;flex-shrink:0}.kpi.warning .kpi-icon{background:var(--warning-soft);color:var(--warning)}.kpi.warning strong{color:var(--warning)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-weight:600;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:10px 14px;border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:#fafbfc}.table.compact th,.table.compact td{padding:8px 6px}.table .num,.table .actions{text-align:right;white-space:nowrap}.row-warning{background:#fffaf0}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;background:#eef0f2;color:var(--muted)}.badge.success{background:var(--green-soft);color:var(--green-dark)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.badge.info{background:var(--info-soft);color:var(--info)}.tag{font-size:12px;padding:2px 8px;border-radius:6px;border:1px solid var(--border);color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font:inherit;color:var(--text)}.btn:hover{background:#f1f3f5}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--cream)}.btn.primary:hover{background:var(--brand-dark)}.btn.small{padding:5px 10px;font-size:12.5px}.btn.full{width:100%;justify-content:center}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-icon{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:var(--muted);display:inline-grid;place-items:center}.btn-icon:hover{background:#0000000f;color:var(--text)}.btn-icon.success:hover{color:var(--green)}.btn-icon.danger:hover{color:var(--danger)}input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500}label.inline{flex-direction:row;align-items:center;gap:8px;font-weight:400}label.checkbox{flex-direction:row;align-items:center;gap:8px;font-weight:400;white-space:nowrap}label.checkbox input{width:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.hint{font-size:12.5px;color:var(--muted);margin:0}.preview{background:var(--bg);border-radius:8px;padding:10px 12px}.segmented{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.segmented button{flex:1;padding:9px;border:none;background:#fff;cursor:pointer;font:inherit;border-right:1px solid var(--border)}.segmented button:last-child{border-right:none}.segmented button.active{background:var(--brand);color:var(--cream)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.toolbar select,.toolbar input[type=date]{width:auto}.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:0 10px;flex:1;min-width:240px;color:var(--muted)}.search input{border:none;padding:8px 0;outline:none}.alert{padding:10px 12px;border-radius:8px;margin-bottom:12px}.alert.error{background:var(--danger-soft);color:var(--danger)}.details{display:grid;grid-template-columns:180px 1fr;gap:8px 16px;margin:0}.details dt{color:var(--muted)}.details dd{margin:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f171473;display:grid;place-items:center;padding:20px;z-index:50}.modal{background:#fff;border-radius:12px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border)}.modal-body{padding:18px}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,#2a2a2a,#0d0d0d 60%);padding:20px}.login-card{background:#fff;border-radius:14px;padding:32px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px}.login-card .hint{text-align:center}.login-brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:8px}.login-brand img{width:170px;height:auto}.login-brand small{color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase}@media (max-width: 1000px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}}@media (max-width: 760px){.page{padding:16px}.topbar{padding:8px 16px}.profil-texte{display:none}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}.page.wide{max-width:1480px}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:4px 0 10px}.muted-text{color:var(--muted)}.text-info{color:var(--info)}.block{display:block}.small{font-size:12.5px}.kpis-6{grid-template-columns:repeat(6,1fr)}.kpi-a{color:inherit;font-weight:inherit}.kpi-a:hover{text-decoration:none}.kpi-link{transition:border-color .15s,box-shadow .15s;height:100%}.kpi-link:hover{border-color:var(--brand);box-shadow:0 2px 8px #0000000f}.kpi.danger .kpi-icon{background:var(--danger-soft);color:var(--danger)}.kpi.danger strong{color:var(--danger)}.alert.success{background:var(--green-soft);color:var(--green-dark)}.alert.warning{background:var(--warning-soft);color:var(--warning)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:12.5px;padding:3px 10px;border-radius:999px;background:#eef0f2;color:var(--text);white-space:nowrap}.chip.success{background:var(--green-soft);color:var(--green-dark)}.chip.warning{background:var(--warning-soft);color:var(--warning)}.chip.danger{background:var(--danger-soft);color:var(--danger)}.chip.info{background:var(--info-soft);color:var(--info)}.chip.outline{background:transparent;border:1px dashed var(--muted);color:var(--muted)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:14px}.tabs button{background:none;border:none;padding:10px 14px;cursor:pointer;font:inherit;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:6px}.tabs button.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.count{background:var(--brand);color:var(--cream);border-radius:999px;font-size:11px;padding:1px 7px;font-weight:600}.equipe-tag{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.equipe-tag .dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.legende{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-left:auto}.table.planning th,.table.planning td{padding:6px;text-align:center}.table.planning th:first-child,.table.planning td:first-child{text-align:left;padding-left:14px}.table.planning th.today{color:var(--brand)}.table.planning td.today{background:#fafaf6}.planning-nom{min-width:170px}.planning-nom small{display:block;color:var(--muted);font-size:11.5px}.cell{border:1px solid transparent;border-radius:7px;padding:5px 4px;min-width:92px;font-size:12px;line-height:1.3}.cell strong{display:block;font-size:12.5px}.cell small{color:var(--text);opacity:.75}.cell.repos{background:#f1f2f3;color:var(--muted)}.cell.conge{background:var(--info-soft);color:var(--info);font-weight:600}.cell.vide{color:var(--muted)}.cell-btn{background:none;border:none;padding:0;width:100%;cursor:pointer;font:inherit;color:inherit}.cell-btn:hover .cell{outline:2px solid var(--brand);outline-offset:-1px}.choix-equipe{display:flex;flex-direction:column;gap:8px}.choix-equipe .btn{justify-content:space-between}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start}.kanban-col{background:#eceef0;border-radius:var(--radius);padding:10px;min-height:200px}.kanban-head{display:flex;justify-content:space-between;align-items:center;padding:4px 6px 10px}.tache-card{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:10px 12px;margin-bottom:8px}.tache-card.retard{border-left:4px solid var(--danger)}.tache-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.tache-atelier{font-size:11.5px;color:var(--muted);text-align:right}.tache-titre{display:block;font-size:13.5px}.tache-desc{margin:4px 0 0;font-size:12.5px;color:var(--muted)}.tache-meta{display:flex;flex-direction:column;gap:3px;margin-top:8px;font-size:12px;color:var(--muted)}.tache-meta span{display:inline-flex;align-items:center;gap:5px}.tache-actions{display:flex;justify-content:space-between;margin-top:6px;border-top:1px solid var(--border);padding-top:4px}.btn-icon:disabled{opacity:.3;cursor:default}.table.pointage td{vertical-align:top}.table.pointage input[type=time]{width:130px}.table.pointage input:disabled{background:#f6f7f8;color:var(--muted)}.row-modifie{background:#fffcef}.row-vide td:first-child{box-shadow:inset 3px 0 0 var(--warning)}.statut-choix{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.statut-choix button{border:none;background:#fff;padding:6px 10px;font:inherit;font-size:12.5px;cursor:pointer;border-right:1px solid var(--border);color:var(--text)}.statut-choix button:last-child{border-right:none}.statut-choix button:disabled{cursor:default}.statut-choix.lecture button:not(.active){color:#c4c8cc}.statut-choix button.s-present.active{background:var(--green);color:#fff}.statut-choix button.s-retard.active{background:var(--warning);color:#fff}.statut-choix button.s-absent.active{background:var(--danger);color:#fff}.statut-choix button.s-conge.active{background:var(--info);color:#fff}@media (max-width: 1200px){.kpis-6{grid-template-columns:repeat(3,1fr)}.kanban{grid-template-columns:1fr}}.badge.dark{background:var(--brand);color:var(--cream)}.text-warning{color:var(--warning)}.row-gap.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.row-click{cursor:pointer}.btn.grand{padding:12px 18px;font-size:15px}.btn.danger-outline{color:var(--danger);border-color:#efc4bf}.btn.danger-outline:hover{background:var(--danger-soft)}.form-section{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:4px;margin-top:4px}.label-texte{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.choix-multiple{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:4px}.comptes-demo{text-align:center;line-height:1.6}.kpi-texte{font-size:15px!important}.filtres-statut{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.filtres-statut button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 12px;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.filtres-statut button.active{background:var(--brand);color:var(--cream);border-color:var(--brand)}.agents-picker{display:flex;flex-direction:column;gap:10px}.agents-groupe small{display:block;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.chip-select{border:1px solid var(--border);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:13px;cursor:pointer}.chip-select.active{background:var(--brand);color:var(--cream);border-color:var(--brand)}.table.lignes td{vertical-align:middle}.input-num{width:110px;text-align:right}.lignes-pied{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 18px 16px;gap:16px}.totaux{display:grid;grid-template-columns:auto auto;gap:6px 24px;margin:0;min-width:260px}.totaux dt{color:var(--muted)}.totaux dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.totaux .ttc{font-weight:700;color:var(--text);font-size:15px;border-top:1px solid var(--border);padding-top:6px}.etapes{display:flex;gap:0;margin-bottom:14px}.etape{flex:1;display:flex;align-items:center;gap:8px;color:var(--muted);position:relative;padding-right:10px}.etape:not(:last-child):after{content:"";flex:1;height:2px;background:var(--border);margin-left:4px}.etape.faite{color:var(--text)}.etape.faite:not(:last-child):after{background:var(--brand)}.etape .pastille{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;border:2px solid var(--border);background:#fff;flex-shrink:0}.etape.faite .pastille{background:var(--brand);border-color:var(--brand);color:var(--cream)}.etape.courante span:last-child{font-weight:700}.etapes-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.liste-agents{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.timeline li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px}.liste-choix{border:1px solid var(--border);border-radius:8px;max-height:280px;overflow-y:auto}.ligne-choix{display:flex;flex-direction:row;align-items:center;gap:12px;padding:8px 12px;font-weight:400;border-bottom:1px solid var(--border);cursor:pointer}.ligne-choix:last-child{border-bottom:none}.ligne-choix input{width:auto}.ligne-choix.active{background:#fbfaf5}.cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.carte{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.carte.retard{border-left:4px solid var(--danger)}.carte h3{margin:6px 0 8px;font-size:16px}.carte-haut{display:flex;justify-content:space-between;align-items:center;gap:8px}.carte-lignes{margin:0 0 8px;padding-left:18px;font-size:13.5px}.carte-meta{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}.carte-meta span{display:inline-flex;align-items:center;gap:6px}.carte-actions{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;gap:10px;align-items:center;flex-wrap:wrap}.arrets{display:flex;flex-direction:column;gap:10px}.arret{display:flex;gap:12px;align-items:flex-start;padding:10px;background:#fafaf8;border-radius:8px}.arret-num{width:26px;height:26px;border-radius:50%;background:var(--brand);color:var(--cream);display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}.jours{display:flex;flex-direction:column;gap:8px}.jour{background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--border);border-radius:8px;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.jour.today{box-shadow:0 0 0 2px var(--brand)}.jour-nom{text-transform:capitalize}@media (max-width: 760px){.etapes{flex-direction:column;gap:8px}.etape:after{display:none}.lignes-pied{flex-direction:column}.kpis-6{grid-template-columns:repeat(2,1fr)}}.table .mono{white-space:nowrap}.progression{height:8px;background:#e9ecef;border-radius:99px;overflow:hidden;margin-top:4px}.progression.petite{height:5px;min-width:80px}.progression-barre{height:100%;background:var(--brand);border-radius:99px;transition:width .3s}.progression-barre.complete{background:var(--green)}.bandeau-etapes{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px}.bandeau-etape{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;display:flex;flex-direction:column;gap:1px}.bandeau-etape small{color:var(--muted);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.04em}.bandeau-etape strong{font-size:22px}.bandeau-etape .muted-text{font-size:12px}.bandeau-fleche{position:absolute;right:-15px;top:50%;transform:translateY(-50%);color:var(--muted);background:var(--bg);border-radius:50%;z-index:1}.card.suivi{padding:0;margin-bottom:10px;overflow:hidden}.card.suivi.retard{border-left:4px solid var(--danger)}.suivi-tete{width:100%;display:grid;grid-template-columns:20px minmax(180px,1.3fr) 120px minmax(110px,.8fr) 110px minmax(220px,1.6fr);align-items:center;gap:14px;padding:12px 16px;background:none;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.suivi-tete:hover{background:#fafbfc}.suivi-id,.suivi-etape,.suivi-delai{display:flex;flex-direction:column;min-width:0}.suivi-id strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suivi-delai span{display:inline-flex;align-items:center;gap:4px}.suivi-pct span{font-size:12.5px}.suivi-corps{border-top:1px solid var(--border);padding:10px 16px 14px}.grille-wrap{overflow-x:auto}.table.grille{min-width:880px}.table.grille th{text-align:center;vertical-align:bottom;text-transform:none;letter-spacing:0}.table.grille th:first-child{text-align:left}.table.grille td{border-left:1px solid var(--border)}.table.grille td:first-child{border-left:none}.grille-produit{min-width:200px}.case{text-align:center;min-width:104px;vertical-align:top!important}.case-qte strong{font-size:17px}.case-qte span{color:var(--muted);font-size:12.5px;margin-left:2px}.case-info{display:flex;flex-direction:column;font-size:11.5px;min-height:16px}.case.faite{background:var(--green-soft)}.case.faite .case-qte strong{color:var(--green-dark)}.case.encours{background:#fffaf0}.case.prete{background:var(--info-soft)}.case-btn{margin-top:6px}.choix-etapes{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.choix-etape{border:1px solid var(--border);background:#fff;border-radius:8px;padding:7px 6px;cursor:pointer;display:flex;flex-direction:column;gap:1px;text-align:center;font:inherit;color:inherit}.choix-etape strong{font-size:12.5px}.choix-etape small{font-size:11px;color:var(--muted)}.choix-etape.active{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand);background:var(--brand-soft)}.choix-etape.faite{background:var(--green-soft)}.choix-etape:disabled{opacity:.45;cursor:not-allowed}.workflow{display:flex;align-items:stretch;gap:0;margin-bottom:10px;flex-wrap:wrap}.workflow-item{display:flex;align-items:center;flex:1;min-width:190px}.workflow-etape{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:4px;height:100%}.workflow-haut{display:flex;align-items:center;gap:8px}.workflow-haut strong{flex:1}.workflow-haut .pastille{width:24px;height:24px;border-radius:50%;background:var(--brand);color:var(--cream);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.workflow-atelier{font-weight:600;font-size:13px;background:var(--brand-soft);border-radius:6px;padding:3px 8px;align-self:flex-start}.workflow-fleche{color:var(--muted);margin:0 6px;flex-shrink:0}.select-statut{width:auto;padding:4px 8px;font-size:12.5px;font-weight:600;border-radius:99px}.select-statut.success{background:var(--green-soft);color:var(--green-dark);border-color:transparent}.select-statut.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.select-statut.warning{background:var(--warning-soft);color:var(--warning);border-color:transparent}.travaux{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.travaux li{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--border);padding-top:8px}.carte-prod{margin:0 0 10px}.chip.info .btn-icon{padding:0 4px;color:inherit}@media (max-width: 1100px){.bandeau-etapes{grid-template-columns:repeat(2,1fr)}.bandeau-fleche{display:none}.suivi-tete{grid-template-columns:20px 1fr auto}.suivi-etape,.suivi-delai{display:none}.suivi-pct{grid-column:2 / -1}.choix-etapes{grid-template-columns:repeat(2,1fr)}}.brand-haut{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.notifs{position:relative}.notifs-btn{position:relative;background:#ffffff14;border:none;color:var(--cream);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.notifs-btn:hover{background:#ffffff29}.notifs-nb{position:absolute;top:-4px;right:-6px;background:var(--danger);color:#fff;font-size:10.5px;font-weight:700;min-width:18px;height:18px;border-radius:99px;display:grid;place-items:center;padding:0 4px;border:2px solid var(--sidebar)}.notifs-panneau{position:absolute;right:0;top:calc(100% + 8px);width:380px;max-height:70vh;display:flex;flex-direction:column;background:#fff;color:var(--text);border-radius:12px;box-shadow:0 12px 40px #00000040;z-index:60;overflow:hidden}.notifs-tete{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--border)}.notifs-liste{overflow-y:auto}.notif{display:flex;gap:10px;width:100%;text-align:left;background:#fff;border:none;border-bottom:1px solid var(--border);padding:10px 14px;cursor:pointer;font:inherit;color:inherit}.notif:hover{background:#fafbfc}.notif.non-lue{background:#fffbef}.notif.non-lue strong:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--danger);margin-right:6px;vertical-align:middle}.notif-icone{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--info-soft);color:var(--info)}.notif.t-PANNE .notif-icone{background:var(--danger-soft);color:var(--danger)}.notif.t-ENTRETIEN .notif-icone{background:var(--warning-soft);color:var(--warning)}.notif-texte{display:flex;flex-direction:column;gap:2px;font-size:13px;min-width:0}.notif-texte span{color:var(--muted);font-size:12.5px}.notif-texte small{color:var(--muted);font-size:11.5px;text-transform:none;letter-spacing:0}.notifs-panneau .btn small,.notifs-tete strong{text-transform:none;letter-spacing:0}.tag-danger{color:var(--danger);border-color:#efc4bf}.liste-maint{list-style:none;margin:0;padding:0}.liste-maint li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--border)}.liste-maint li:first-child{border-top:none}.liste-maint li.row-click:hover{background:#fafbfc}.col-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0}.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-kpis div{background:var(--bg);border-radius:8px;padding:12px}.mini-kpis small{display:block;color:var(--muted);font-size:12px}.mini-kpis strong{font-size:18px}.note-form{display:flex;gap:8px;align-items:flex-end;margin-bottom:8px}.note-form textarea{flex:1}.ligne-piece{display:grid;grid-template-columns:1fr 90px 50px 110px 32px;gap:8px;align-items:center;margin-bottom:6px}.ligne-piece .span-all{grid-column:1 / -1}.cout-total{text-align:right;margin:0}.liste-simple{margin:6px 0 0;padding-left:18px}.segmented button:disabled{cursor:default;opacity:.7}.badge,.tag,.nowrap{white-space:nowrap}.fiches-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.fiche-carte{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:0;overflow:hidden;cursor:pointer;font:inherit;color:inherit;display:flex;flex-direction:column}.fiche-carte:hover{border-color:var(--brand);box-shadow:0 2px 10px #0000000f}.fiche-carte.inactive{opacity:.6}.fiche-photo{position:relative;height:150px;background:var(--brand-soft);display:grid;place-items:center;color:#b9b3a3}.fiche-photo img{width:100%;height:100%;object-fit:cover}.fiche-badge{position:absolute;top:8px;left:8px;background:#fff}.fiche-badge+.fiche-badge{left:auto;right:8px}.fiche-corps{padding:12px 14px 14px}.fiche-corps h3{font-size:16px}.fiche-haut{display:grid;grid-template-columns:1.1fr 1.3fr .7fr;gap:16px;margin-bottom:16px;align-items:start}.fiche-haut .card{margin-bottom:0}.fiche-photo-grande{height:240px;border-radius:8px;background:var(--brand-soft);display:grid;place-items:center;color:#b9b3a3;overflow:hidden}.fiche-photo-grande img{width:100%;height:100%;object-fit:cover}.vignettes{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.vignette{position:relative;width:64px;height:50px;border-radius:6px;overflow:hidden;border:2px solid transparent;background:var(--bg)}.vignette.active{border-color:var(--brand)}.vignette img{width:100%;height:100%;object-fit:cover;cursor:pointer}.vignette-actions{position:absolute;top:0;right:0;display:flex;background:#ffffffe6;border-bottom-left-radius:6px}.vignette-actions .btn-icon{padding:2px}.vignette.ajouter{display:grid;place-items:center;border:1px dashed var(--muted);color:var(--muted);cursor:pointer}.fiche-qr{text-align:center}.fiche-qr img{width:100%;max-width:180px;display:block;margin:0 auto 6px}.fiche-qr .row-gap{justify-content:center}.ligne-couche{display:grid;grid-template-columns:52px 1.2fr 1.4fr 100px 110px 32px;gap:8px;align-items:center;margin-bottom:6px}.entete-couche{font-size:11.5px;color:var(--muted);margin-bottom:2px}.couche-fleches{display:flex}.couche-fleches .btn-icon{padding:3px}.tailles-grille{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.taille-choix{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:6px 10px}.taille-choix.active{border-color:var(--brand);background:var(--brand-soft)}.taille-choix input[type=number]{width:80px}.taille-choix label{white-space:normal}.public{min-height:100vh;background:var(--bg);display:flex;flex-direction:column}.public-tete{background:#fff;border-bottom:1px solid var(--border);padding:10px 16px;display:flex;align-items:center;justify-content:space-between}.public-tete img{height:38px}.public-tete span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.public-corps{width:100%;max-width:680px;margin:0 auto;padding:16px;flex:1}.public-corps h1{font-size:26px;margin-top:14px}.public-corps h2{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:22px 0 8px}.public-corps section{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:4px 14px 12px;margin-top:12px}.public-photo{height:240px;border-radius:var(--radius);background:var(--brand-soft);display:grid;place-items:center;color:#b9b3a3;overflow:hidden}.public-photo img{width:100%;height:100%;object-fit:cover}.public-certif{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--border)}.public-certif:first-of-type{border-top:none}.public-certif svg{color:var(--green);flex-shrink:0;margin-top:2px}.public-details{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;margin:0}.public-details dt{color:var(--muted)}.public-details dd{margin:0}.public-couches{margin:0;padding-left:20px}.public-couches li{padding:5px 0;display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--border)}.public-pied{text-align:center;color:var(--muted);font-size:12px;padding:18px}@media (max-width: 1100px){.fiche-haut{grid-template-columns:1fr 1fr}.tailles-grille{grid-template-columns:1fr}}.bloc-form{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fcfcfb}.fiche-photo{overflow:hidden}.fiche-photo img{position:absolute;top:0;right:0;bottom:0;left:0}.fiche-photo-grande,.public-photo{position:relative}.fiche-photo-grande img,.public-photo img{position:absolute;top:0;right:0;bottom:0;left:0}.comptes-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-bottom:16px}.compte-carte{margin-bottom:0}.compte-carte.inactive{opacity:.55}.compte-solde{font-size:22px;font-weight:700;margin:8px 0 2px}.liste-defilante{max-height:300px;overflow-y:auto}.choix-commandes{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto}.choix-commandes .taille-choix{cursor:pointer}.choix-commandes .checkbox{white-space:normal}.recherche-courte{width:220px;margin-left:auto}.alert.info-doux{background:var(--info-soft);color:var(--info)}.segmented{flex-wrap:wrap}.choix-periode{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.choix-periode input[type=date]{width:auto}.stat-comparaison{margin:4px 0 12px}.stat-kpis{grid-template-columns:repeat(4,1fr)}.stat-kpi>div{min-width:0}.stat-kpi strong{font-size:19px;display:block}.variation{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:600;color:var(--muted);margin-top:2px;flex-wrap:wrap}.variation .muted-text{font-weight:400;margin-left:4px}.variation.bon{color:var(--green)}.variation.mauvais{color:var(--danger)}.barre-part{height:4px;background:#eef0f2;border-radius:99px;margin-top:3px;overflow:hidden}.barre-part div{height:100%;background:var(--brand);border-radius:99px}.stat-tableau .table td.num{white-space:nowrap}@media (max-width: 1100px){.stat-kpis{grid-template-columns:repeat(2,1fr)}}@media print{.sidebar,.no-print,.notifs,.topbar{display:none!important}.app{display:block}.content{padding:0}.page,.page.wide{max-width:none;padding:0 4mm}body{background:#fff}.card,.kpi{break-inside:avoid;box-shadow:none}.grid-2{grid-template-columns:1fr 1fr}.stat-kpis{grid-template-columns:repeat(4,1fr)}}.brand-actions{display:flex;gap:8px;align-items:center}.guide-recherche{max-width:560px;margin-bottom:16px;background:var(--surface)}.guide-recherche input{flex:1}.guide-grille{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:start}.guide-sommaire{position:sticky;top:16px;display:flex;flex-direction:column;gap:2px;padding:14px;margin:0}.guide-sommaire strong{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:6px}.guide-sommaire a{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;color:var(--text);font-weight:400}.guide-sommaire a:hover{background:var(--brand-soft);text-decoration:none}.guide-sommaire a.actif{background:var(--brand);color:var(--cream)}.guide-contenu{display:flex;flex-direction:column;gap:14px;min-width:0}.guide-contenu .card{margin:0;scroll-margin-top:16px}.guide-titre{display:flex;align-items:center;gap:10px;margin-bottom:6px}.guide-titre h2{font-size:18px;margin:0}.guide-intro{color:var(--muted);margin:0 0 12px;line-height:1.55}.guide-section.cible{outline:2px solid var(--brand)}.guide-demarrage{background:var(--cream)}.guide-demarrage ol,.guide-tache ol{margin:8px 0 0;padding-left:22px;line-height:1.6}.guide-tache{border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin-bottom:8px}.guide-tache summary{cursor:pointer;font-weight:600}.guide-tache[open] summary{margin-bottom:2px}.guide-astuces{background:var(--warning-soft);border-radius:8px;padding:10px 14px;margin-top:10px}.guide-astuces p{display:flex;gap:8px;margin:4px 0;color:#7a5212;line-height:1.5}.guide-astuces svg{flex-shrink:0;margin-top:3px}.bienvenue-guide{display:flex;align-items:center;gap:14px;background:var(--cream);border:1px solid #e8dfc4;border-radius:var(--radius);padding:12px 16px;margin:20px 28px 0;max-width:1224px}.bienvenue-guide>div{flex:1}.bienvenue-guide p{margin:2px 0 0;color:var(--muted)}@media (max-width: 900px){.guide-grille{grid-template-columns:1fr}.guide-sommaire{position:static}.bienvenue-guide{flex-wrap:wrap}}:root{--c1: #2563a8;--c1-soft: #e8f0fb;--c2: #2e7d5b;--c2-soft: #e6f2ec;--c3: #7c4dbd;--c3-soft: #f1eafb;--c4: #c26a12;--c4-soft: #fdf0e1;--c5: #0f8a8a;--c5-soft: #e2f4f3;--c6: #c2416b;--c6-soft: #fbe9ef}.kpis>:nth-child(6n+1){--k: var(--c1);--k-soft: var(--c1-soft)}.kpis>:nth-child(6n+2){--k: var(--c2);--k-soft: var(--c2-soft)}.kpis>:nth-child(6n+3){--k: var(--c3);--k-soft: var(--c3-soft)}.kpis>:nth-child(6n+4){--k: var(--c4);--k-soft: var(--c4-soft)}.kpis>:nth-child(6n+5){--k: var(--c5);--k-soft: var(--c5-soft)}.kpis>:nth-child(6n+6){--k: var(--c6);--k-soft: var(--c6-soft)}.kpis>.kpi.warning,.kpis>*>.kpi.warning{--k: var(--warning);--k-soft: var(--warning-soft)}.kpis>.kpi.danger,.kpis>*>.kpi.danger{--k: var(--danger);--k-soft: var(--danger-soft)}.kpis .kpi{border-top:3px solid var(--k, var(--border))}.kpis .kpi .kpi-icon{background:var(--k-soft, var(--brand-soft));color:var(--k, var(--brand))}.kpis .kpi.warning strong{color:var(--warning)}.kpis .kpi.danger strong{color:var(--danger)}.kpis .kpi-link:hover{border-color:var(--k, var(--brand));box-shadow:0 2px 8px #0000000f}.table th{background:#f7f8fa;color:#4b5560}.table tbody tr:hover{background:#f5f8fd}.btn-icon[title^=Modifier]{color:var(--c1)}.btn-icon[title^=Modifier]:hover{background:var(--c1-soft);color:var(--c1)}.btn-icon[title^=Supprimer],.btn-icon[title^=Retirer],.btn-icon.danger{color:var(--danger)}.btn-icon[title^=Supprimer]:hover,.btn-icon[title^=Retirer]:hover,.btn-icon.danger:hover{background:var(--danger-soft);color:var(--danger)}.btn-icon[title="Entrée de stock"],.btn-icon.success{color:var(--green)}.btn-icon[title="Entrée de stock"]:hover,.btn-icon.success:hover{background:var(--green-soft);color:var(--green)}.btn-icon[title="Sortie de stock"]{color:var(--c4)}.btn-icon[title="Sortie de stock"]:hover{background:var(--c4-soft);color:var(--c4)}.btn-icon[title^=Étape]{color:var(--c3)}.btn-icon[title^=Étape]:hover{background:var(--c3-soft);color:var(--c3)}.topbar .btn-icon,.sidebar .btn-icon{box-shadow:none}.btn.primary{box-shadow:0 2px 6px -2px #00000059}.btn.primary:hover{transform:translateY(-1px)}.btn{transition:background .15s,transform .15s,box-shadow .15s}.panneaux{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;margin-bottom:16px}.panneaux .panneau{margin-bottom:0;display:flex;flex-direction:column}.roue{display:flex;align-items:center;gap:18px;margin-bottom:12px}.roue-graph{position:relative;flex-shrink:0}.roue-centre{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:0 30px}.roue-centre strong{font-size:17px;line-height:1.1}.roue-centre small{color:var(--muted);font-size:11px;margin-top:2px}.roue-legende{list-style:none;margin:0;padding:0;flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.roue-legende a,.roue-ligne{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;color:var(--text);font-weight:400}.roue-legende a:hover{background:var(--bg);text-decoration:none}.roue-label{flex:1;min-width:0;color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roue-legende strong{font-size:13.5px}.roue-pastille{width:10px;height:10px;border-radius:3px;flex-shrink:0;display:inline-block}.roue-bulle{background:#fff;border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:12.5px;box-shadow:0 4px 14px #0000001a;display:flex;align-items:center;gap:6px}.chiffres{border-top:1px solid var(--border);padding-top:6px;margin-top:auto}.panneau .card-header+.chiffres{border-top:none;padding-top:0}.chiffre{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px;border-radius:6px;color:var(--text);font-weight:400}a.chiffre:hover{background:var(--bg);text-decoration:none}.chiffre-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.chiffre strong{font-size:14px;white-space:nowrap}.chiffre.danger strong,.chiffre.danger .chiffre-label{color:var(--danger)}.chiffre.warning strong,.chiffre.warning .chiffre-label{color:var(--warning)}@media (max-width: 420px){.roue{flex-direction:column;align-items:stretch}.roue-graph{align-self:center}}.cartes-cles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.cartes-cles .carte-cle{padding:16px 18px;height:100%}.cartes-cles .carte-cle strong{font-size:22px;display:block}.cartes-cles .kpi-icon{width:46px;height:46px;border-radius:12px}.carte-cle-detail{display:block;color:var(--muted);font-size:12px;margin-top:2px}.menu-btn,.menu-fermer,.menu-fond{display:none}.cartes{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}.panneaux{grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr))}.fiches-grille{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.comptes-grille{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr))}@media (max-width: 760px){.sidebar{position:fixed;left:0;top:0;z-index:100;height:100vh;height:100dvh;width:280px;max-width:85vw;transform:translate(-100%);transition:transform .25s ease}.app.menu-ouvert .sidebar{transform:none;box-shadow:0 0 40px #0006}.menu-fond{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#00000073}.menu-fermer{display:inline-grid;position:absolute;top:8px;right:8px;z-index:1}.nav-item{padding:11px 10px}.topbar{padding:8px 12px}.menu-btn{display:inline-grid;margin-right:auto;color:var(--text)}input,select,textarea{font-size:16px;min-height:44px}input[type=checkbox],input[type=radio]{min-height:0;width:20px;height:20px}textarea{min-height:80px}.btn{padding:10px 14px;min-height:44px;justify-content:center}.btn.small{padding:8px 12px;min-height:38px}.btn-icon{padding:10px}.search{min-width:0;width:100%}.search input{min-height:42px}.toolbar select,.toolbar input[type=date],.recherche-courte{width:100%;margin-left:0}h1{font-size:19px}.page-header{flex-wrap:wrap}.page-header>:last-child:not(:first-child){width:100%}.tabs{overflow-x:auto;scrollbar-width:none}.tabs button{white-space:nowrap;padding:12px}.card{padding:14px}.card:not(.no-pad)>.table{display:block;overflow-x:auto}.details{grid-template-columns:1fr;gap:2px}.details dd{margin-bottom:8px}.bienvenue-guide{margin:12px 12px 0}.modal-backdrop{padding:0;place-items:end stretch}.modal{max-width:none!important;max-height:94vh;max-height:94dvh;border-radius:14px 14px 0 0}.modal-header{position:sticky;top:0;background:#fff;z-index:2}.modal-body{padding:14px}.modal .form-actions{position:sticky;bottom:0;z-index:2;background:#fff;margin:0 -14px -14px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.form-actions .btn{flex:1}.choix-etape{padding:10px 6px}.ligne-piece,.ligne-couche{grid-template-columns:1fr 1fr}.ligne-piece>:first-child,.ligne-couche>:first-child{grid-column:1 / -1}.entete-couche{display:none}.fiche-haut{grid-template-columns:1fr}.totaux{min-width:0;width:100%}.carte-actions .btn{flex:1}.travaux li{flex-wrap:wrap}.notifs-panneau{position:fixed;left:8px;right:8px;top:56px;width:auto;max-height:75vh}}@media (max-width: 480px){.mini-kpis{grid-template-columns:1fr}.kpi{padding:12px}.kpi strong{font-size:18px}}input,select,textarea{padding:10px 14px;border:1.5px solid var(--border);border-radius:12px;background-color:#fafbfc;transition:border-color .15s,box-shadow .15s,background-color .15s}input:hover,select:hover,textarea:hover{border-color:#c9cfd5}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);background-color:#fff;box-shadow:0 0 0 4px #11111114}input::placeholder,textarea::placeholder{color:#a3abb3}input:disabled,select:disabled,textarea:disabled{background-color:#f1f3f5;color:var(--muted);cursor:not-allowed}textarea{min-height:90px;resize:vertical}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:38px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7680' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}input[type=checkbox],input[type=radio]{width:18px;height:18px;padding:0;accent-color:var(--brand);cursor:pointer}input[type=color]{height:44px;padding:4px;cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:8px}input[type=color]::-moz-color-swatch{border:none;border-radius:8px}.form-grid{gap:16px 18px}.form-grid>label{font-size:12.5px;font-weight:600;color:#3d4650;gap:7px}.form-grid>label.checkbox{font-size:13.5px;font-weight:500;color:var(--text);background:#fafbfc;border:1.5px solid var(--border);border-radius:12px;padding:10px 14px}.form-actions{margin-top:8px;padding-top:16px;border-top:1px solid var(--border)}.form-actions .btn{border-radius:12px;padding:10px 18px}.alert{border-radius:12px}.search{border-radius:12px;border-width:1.5px}.search input,.search input:focus{background:transparent;box-shadow:none}.modal-backdrop{background:#0f171466;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fondu .15s ease}.modal{border-radius:20px;box-shadow:0 24px 60px #0000002e,0 2px 8px #0000000f;animation:apparition .2s ease}.modal-header{padding:18px 24px;border-bottom:1px solid #eef0f2}.modal-header h3{margin:0;font-size:17px;font-weight:700}.modal-header .btn-icon{border-radius:10px;background:#f3f4f6}.modal-header .btn-icon:hover{background:#e7e9ec}.modal-body{padding:22px 24px 24px}@keyframes fondu{0%{opacity:0}to{opacity:1}}@keyframes apparition{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@media (max-width: 760px){.modal{border-radius:20px 20px 0 0}.modal-header{padding:14px 16px}.modal-body{padding:14px}input[type=checkbox],input[type=radio]{width:20px;height:20px}}.card.no-pad{border-radius:16px;border-color:#e8ebee;box-shadow:0 1px 2px #1018280a,0 4px 16px #1018280d}.card-header.padded{padding:18px 20px 16px;margin-bottom:0;border-bottom:1px solid #eef0f2}.card-header.padded h3{margin:0;font-size:15.5px;font-weight:700}.card-header .btn{border-radius:10px}.table th{background:#f8f9fb;color:#5f6b76;font-size:11.5px;font-weight:600;letter-spacing:.05em;padding:12px 16px;border-bottom:1px solid #eceef1}.table td{padding:13px 16px;border-bottom:1px solid #f0f2f4}.table :where(th:first-child,td:first-child){padding-left:20px}.table :where(th:last-child,td:last-child){padding-right:20px}.table tbody tr{transition:background .12s}.table tbody tr:hover{background:#f7f9fc}.table td strong{font-weight:600}.table .actions{width:1%}.table .actions .btn-icon{width:34px;height:34px;padding:0;display:inline-grid;place-items:center;border-radius:10px;margin-left:4px;transition:background .12s,color .12s,transform .12s}.table .actions .btn-icon:hover{transform:translateY(-1px)}.table .badge{padding:3px 10px;font-size:11.5px}select{font-weight:500;min-height:42px;text-overflow:ellipsis;background-size:16px;background-position:right 12px center}select:hover{background-color:#fff}select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}select:invalid,select option[value=""]{color:#8a939c}select option{color:var(--text);background:#fff;font-weight:400;padding:8px 12px}select option:checked{background:var(--brand-soft);font-weight:600}select[multiple],select[size]:not([size="1"]){background-image:none;padding:6px;min-height:120px}select[multiple] option{border-radius:8px;margin:1px 0}.toolbar select{min-width:170px;border-radius:999px;background-color:#fff;padding-left:16px}.toolbar input[type=date]{border-radius:999px;background-color:#fff;padding:9px 16px}.toolbar .search{border-radius:999px}.table select{min-height:0;padding-top:6px;padding-bottom:6px}.select-statut,.select-statut:focus{min-height:0;background-image:none;padding:4px 12px}.menu-select{position:fixed;z-index:1000;overflow-y:auto;padding:6px;background:#fff;border:1px solid #e6e9ed;border-radius:14px;box-shadow:0 16px 40px #10182824,0 2px 6px #1018280f;animation:menu-select-in .12s ease;scrollbar-width:thin}@keyframes menu-select-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu-select-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:10px;cursor:pointer;font-size:14px;color:var(--text)}.menu-select-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-select-option[data-actif=true]{background:#f2f4f7}.menu-select-option.choisie{font-weight:600;background:var(--brand-soft)}.menu-select-option.choisie[data-actif=true]{background:#e6e2d6}.menu-select-option.choisie svg{flex-shrink:0;color:var(--brand)}.menu-select-option.vide{color:#8a939c}.menu-select-option.desactivee{opacity:.45;cursor:not-allowed}.menu-select-groupe{padding:10px 12px 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.menu-select-vide{padding:10px 12px;color:var(--muted);font-size:13px}.nav-item{border-radius:10px;transition:background .15s,color .15s}.nav-item.active{background:#fff;color:#111;font-weight:600;box-shadow:0 1px 2px #00000040}.content:has(.page-ateliers){background:#f5f6f8}.page-ateliers{--at-noir: #111111;--at-blanc: #FFFFFF;--at-fond: #F5F6F8;--at-gris: #F0F1F3;--at-bord: #E5E7EB;--at-texte: #111111;--at-texte2: #6B7280;--at-ombre: 0 1px 2px rgba(17, 17, 17, .04), 0 6px 20px rgba(17, 17, 17, .05);--at-ombre-hover: 0 2px 4px rgba(17, 17, 17, .05), 0 12px 28px rgba(17, 17, 17, .08);color:var(--at-texte);padding-top:32px;padding-bottom:40px}.ateliers-entete{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:4px 0;margin-bottom:24px}.ateliers-entete-texte{display:flex;align-items:center;gap:18px;min-width:0}.ateliers-entete-icone{width:56px;height:56px;flex-shrink:0;display:grid;place-items:center;background:var(--at-gris);color:var(--at-noir);border-radius:16px;border:1px solid var(--at-bord)}.page-ateliers h1{font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--at-noir);line-height:1.15}.ateliers-entete p{margin:6px 0 0;color:var(--at-texte2);font-size:14.5px;max-width:560px;line-height:1.5}.ateliers-illustration{width:200px;height:auto;flex-shrink:0;color:var(--at-noir)}.ateliers-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.ateliers-kpi{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;background:var(--at-blanc);border:1px solid var(--at-bord);border-radius:16px;box-shadow:var(--at-ombre);transition:box-shadow .2s,transform .2s}.ateliers-kpi:hover{box-shadow:var(--at-ombre-hover);transform:translateY(-2px)}.ateliers-kpi-icone{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:var(--at-noir);color:var(--at-blanc)}.ateliers-kpi-libelle{display:block;font-size:13px;font-weight:500;color:var(--at-texte2)}.ateliers-kpi strong{display:block;font-size:28px;font-weight:800;letter-spacing:-.02em;margin-top:2px;line-height:1.2}.ateliers-kpi small{display:block;font-size:12.5px;color:var(--at-texte2);margin-top:4px}.ateliers-panneau{background:var(--at-blanc);border:1px solid var(--at-bord);border-radius:20px;box-shadow:var(--at-ombre);overflow:hidden}.ateliers-barre{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 24px;border-bottom:1px solid var(--at-bord)}.ateliers-barre-titre{display:flex;align-items:center;gap:10px}.ateliers-barre-titre h3{font-size:16px;font-weight:700}.ateliers-compteur{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--at-gris);color:var(--at-noir)}.ateliers-filtres{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ateliers-recherche{flex-direction:row;align-items:center;gap:8px;width:300px;height:42px;padding:0 12px 0 14px;background:var(--at-gris);border:1.5px solid transparent;border-radius:12px;color:var(--at-texte2);font-weight:400;transition:border-color .15s,background .15s,box-shadow .15s}.ateliers-recherche:focus-within{background:var(--at-blanc);border-color:var(--at-noir);box-shadow:0 0 0 4px #11111112}.page-ateliers .ateliers-recherche input,.page-ateliers .ateliers-recherche input:focus{flex:1;min-width:0;border:none;padding:0;background:transparent;box-shadow:none;min-height:0;color:var(--at-texte)}.ateliers-recherche button{display:grid;place-items:center;width:22px;height:22px;border:none;border-radius:50%;background:var(--at-bord);color:var(--at-noir);cursor:pointer;padding:0}.page-ateliers .ateliers-filtres select{width:210px;height:42px;min-height:0;background-color:var(--at-blanc);border-color:var(--at-bord)}.ateliers-ajouter{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;background:var(--at-noir);color:var(--at-blanc);border:none;border-radius:12px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;box-shadow:0 4px 12px #1111112e;transition:transform .15s,box-shadow .15s,background .15s}.ateliers-ajouter:hover{background:#000;transform:translateY(-1px);box-shadow:0 8px 18px #11111138}.ateliers-ajouter:active{transform:none}.ateliers-table-zone{overflow-x:auto}.ateliers-table{width:100%;border-collapse:collapse;min-width:960px}.ateliers-table th{text-align:left;white-space:nowrap;padding:13px 16px;background:var(--at-gris);color:var(--at-texte2);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--at-bord)}.ateliers-table td{padding:16px;border-bottom:1px solid var(--at-gris);vertical-align:middle;font-size:14px}.ateliers-table th:first-child,.ateliers-table td:first-child{padding-left:24px}.ateliers-table th:last-child,.ateliers-table td:last-child{padding-right:24px}.ateliers-table tbody tr:last-child td{border-bottom:none}.ateliers-table tbody tr{transition:background .15s}.ateliers-table tbody tr:hover{background:#fafafb}.ateliers-table .num{text-align:right;white-space:nowrap}.ateliers-table .actions{text-align:right;white-space:nowrap;width:1%}.ateliers-nom{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.ateliers-nom strong{font-weight:700;color:var(--at-noir)}.ateliers-pastille{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px var(--at-gris)}.ateliers-desc{color:var(--at-texte2);max-width:260px}.ateliers-info{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:var(--at-texte)}.ateliers-info svg{color:var(--at-texte2);flex-shrink:0}.ateliers-adresse{white-space:normal;align-items:flex-start;max-width:240px}.ateliers-adresse svg{margin-top:2px}.ateliers-vide{color:#c4c8ce}.page-ateliers .badge{padding:4px 11px;font-size:12px;font-weight:600;border-radius:999px}.page-ateliers .badge.success{background:#ecf7f0;color:#1f7a4d;box-shadow:inset 0 0 0 1px #cdebd9}.page-ateliers .badge:not(.success){background:var(--at-gris);color:var(--at-texte2);box-shadow:inset 0 0 0 1px var(--at-bord)}.page-ateliers .badge.success:before,.page-ateliers .badge:not(.success):before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:middle;position:relative;top:-1px}.ateliers-action{width:36px;height:36px;display:inline-grid;place-items:center;margin-left:6px;border:1px solid var(--at-bord);border-radius:10px;background:var(--at-gris);color:var(--at-noir);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s}.ateliers-action:hover{background:var(--at-bord);transform:translateY(-1px)}.ateliers-action.danger{background:#fef2f2;border-color:#fbdada;color:#dc2626}.ateliers-action.danger:hover{background:#fee2e2;border-color:#f8c4c4}.ateliers-action:focus-visible,.ateliers-ajouter:focus-visible{outline:2px solid var(--at-noir);outline-offset:2px}.ateliers-etat-vide{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:48px 20px 56px}.ateliers-etat-vide strong{font-size:16px;margin-top:6px}.ateliers-etat-vide p{margin:0 0 10px;color:var(--at-texte2);max-width:380px}.page-ateliers .ateliers-etat-vide .btn{border-radius:12px}@media (max-width: 1100px){.ateliers-barre{flex-direction:column;align-items:stretch}.ateliers-filtres{width:100%}.ateliers-recherche{flex:1;width:auto;min-width:220px}}@media (max-width: 900px){.ateliers-kpis{grid-template-columns:repeat(2,1fr)}.ateliers-kpis .ateliers-kpi:last-child{grid-column:span 2}.ateliers-illustration{width:150px}}@media (max-width: 640px){.page-ateliers{padding-top:16px}.ateliers-entete{padding:0;margin-bottom:18px}.ateliers-illustration{display:none}.ateliers-entete-icone{width:48px;height:48px;border-radius:14px}.page-ateliers h1{font-size:24px}.ateliers-kpis{grid-template-columns:1fr;gap:12px}.ateliers-kpis .ateliers-kpi:last-child{grid-column:auto}.ateliers-kpi{padding:16px 18px}.ateliers-kpi strong{font-size:24px}.ateliers-panneau{border-radius:16px}.ateliers-barre{padding:16px}.ateliers-filtres{flex-direction:column;align-items:stretch}.ateliers-recherche,.page-ateliers .ateliers-filtres select{width:100%;min-width:0;height:44px}.ateliers-ajouter{justify-content:center;height:46px}}
