.shell[data-v-c7f8b393]{min-height:100vh;display:flex;flex-direction:column;--entete-h: 45px}.entete[data-v-c7f8b393]{position:sticky;top:0;z-index:60}.tape[data-v-c7f8b393]{background:var(--ink-900);color:#fff;display:flex;align-items:center;gap:var(--s-4);padding:10px var(--s-6);border-bottom:2px solid var(--brand)}.burger[data-v-c7f8b393]{display:none;background:none;border:none;color:#fff;font-size:18px;padding:4px 8px}.tape-scroll[data-v-c7f8b393]{display:flex;gap:var(--s-6);overflow-x:auto;flex:1;scrollbar-width:none}.tape-scroll[data-v-c7f8b393]::-webkit-scrollbar{display:none}.tape-item[data-v-c7f8b393]{display:flex;flex-direction:column;gap:1px;flex:none}.tape-label[data-v-c7f8b393]{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#ffffffad}.tape-value[data-v-c7f8b393]{font-family:var(--font-mono);font-size:17px;font-weight:600}.tape-value.sub[data-v-c7f8b393]{font-size:14px;color:#ffffffe0}.tape-item.total .tape-value[data-v-c7f8b393]{color:#fff}.tape-alerte[data-v-c7f8b393]{flex:none;background:var(--sortie);color:#fff;font-size:12px;font-weight:700;padding:5px 11px;border-radius:20px}.tape-alerte[data-v-c7f8b393]:hover{background:var(--sortie-strong)}.body[data-v-c7f8b393]{display:flex;flex:1;min-height:0}.sidenav[data-v-c7f8b393]{width:var(--nav-w);flex:none;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:var(--entete-h);height:calc(100vh - var(--entete-h))}.brand[data-v-c7f8b393]{display:flex;align-items:center;gap:10px;padding:var(--s-4) var(--s-4) var(--s-3)}.logo[data-v-c7f8b393]{width:34px;height:34px;object-fit:contain;border:1px solid var(--line);border-radius:8px;padding:3px}.brand-name[data-v-c7f8b393]{font-family:var(--font-display);font-weight:700;font-size:14.5px;color:var(--ink-900)}.brand-sub[data-v-c7f8b393]{font-size:11px;color:var(--ink-400)}.nav-scroll[data-v-c7f8b393]{flex:1;overflow-y:auto;padding:0 10px var(--s-4)}.nav-group+.nav-group[data-v-c7f8b393]{margin-top:var(--s-4)}.nav-group-titre[data-v-c7f8b393]{padding:0 8px 6px}.nav-link[data-v-c7f8b393]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);font-size:13.5px;font-weight:600;color:var(--ink-600)}.nav-link[data-v-c7f8b393]:hover{background:var(--ink-100)}.nav-link.on[data-v-c7f8b393]{background:var(--action);color:#fff}.nav-ico[data-v-c7f8b393]{font-family:var(--font-mono);width:15px;text-align:center;font-size:12px;color:var(--ink-400)}.nav-link.on .nav-ico[data-v-c7f8b393]{color:var(--brand)}.pastille[data-v-c7f8b393]{margin-left:auto;background:var(--sortie);color:#fff;font-size:10.5px;font-weight:700;min-width:18px;text-align:center;padding:1px 5px;border-radius:10px}.nav-foot[data-v-c7f8b393]{border-top:1px solid var(--line);padding:var(--s-3) var(--s-4);display:flex;flex-direction:column;gap:10px}.user[data-v-c7f8b393]{display:flex;align-items:center;gap:9px;min-width:0}.avatar[data-v-c7f8b393]{width:30px;height:30px;border-radius:50%;flex:none;background:var(--action);color:#fff;display:grid;place-items:center;font-weight:700;font-size:12.5px}.user-txt[data-v-c7f8b393]{min-width:0}.user-nom[data-v-c7f8b393]{font-size:12.5px;font-weight:700;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role[data-v-c7f8b393]{font-size:11px;color:var(--ink-400)}.content[data-v-c7f8b393]{flex:1;min-width:0;padding:var(--s-6)}.voile[data-v-c7f8b393],.tabbar[data-v-c7f8b393]{display:none}@media(max-width:1024px){.burger[data-v-c7f8b393]{display:block}.tape[data-v-c7f8b393]{padding:8px var(--s-4);gap:var(--s-3)}.tape-scroll[data-v-c7f8b393]{gap:var(--s-4)}.content[data-v-c7f8b393]{padding:var(--s-4) var(--s-4) 82px}.sidenav[data-v-c7f8b393]{position:fixed;top:0;left:0;bottom:0;height:100vh;z-index:80;transform:translate(-100%);transition:transform .22s ease;box-shadow:var(--shadow-lg)}.sidenav.ouvert[data-v-c7f8b393]{transform:none}.voile[data-v-c7f8b393]{display:block;position:fixed;inset:0;background:#1e1e1d73;z-index:70}.tabbar[data-v-c7f8b393]{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--surface);border-top:1px solid var(--line);padding:5px 2px calc(5px + env(safe-area-inset-bottom))}.tab[data-v-c7f8b393]{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;font-size:10px;font-weight:700;color:var(--ink-400);padding:4px 0}.tab-ico[data-v-c7f8b393]{font-family:var(--font-mono);font-size:15px}.tab.on[data-v-c7f8b393]{color:var(--ink-900)}.tab.on .tab-ico[data-v-c7f8b393]{color:var(--brand)}}.toasts[data-v-d5790d63]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:900;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast[data-v-d5790d63]{pointer-events:auto;display:flex;align-items:center;gap:10px;max-width:min(92vw,460px);padding:11px 16px;border-radius:8px;background:var(--ink-900);color:#fff;font-size:13.5px;font-weight:500;box-shadow:var(--shadow-lg);cursor:pointer}.ico[data-v-d5790d63]{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;flex:none;background:#ffffff29}.toast.succes .ico[data-v-d5790d63]{background:var(--ok)}.toast.erreur[data-v-d5790d63]{background:var(--danger-strong)}.toast.erreur .ico[data-v-d5790d63]{background:#ffffff40}.toast-enter-active[data-v-d5790d63],.toast-leave-active[data-v-d5790d63]{transition:all .22s ease}.toast-enter-from[data-v-d5790d63],.toast-leave-to[data-v-d5790d63]{opacity:0;transform:translateY(12px)}@media(max-width:760px){.toasts[data-v-d5790d63]{bottom:78px}}.erreur[data-v-fa527bad]{max-width:620px}.detail[data-v-fa527bad]{font-size:13px;color:var(--ink-500);margin:6px 0 var(--s-4);line-height:1.55}.trace[data-v-fa527bad]{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-600);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px;margin:0 0 var(--s-4);white-space:pre-wrap;overflow-wrap:anywhere}:root{color-scheme:light;--ink-900: #1e1e1d;--ink-800: #333331;--ink-700: #45443f;--ink-600: #52514e;--ink-500: #6f6e69;--ink-400: #6f6e69;--ink-300: #b5b3ac;--ink-200: #dedad3;--ink-100: #ecebe6;--surface: #ffffff;--surface-2: #fbfaf8;--page: #f4f3f1;--line: #e6e4df;--line-strong: #d3d0c9;--brand: #fe0000;--brand-wash: #fdecec;--brand-ink: #c50000;--action: #1e1e1d;--action-hover: #45443f;--entree: #1f7a4c;--entree-wash: #e4f1e9;--sortie: #c50000;--sortie-strong: #8d0000;--sortie-wash: #fbe6e6;--ok: #1f7a4c;--warn: #8a5606;--warn-wash: #fdf3e0;--warn-line: #f0dcb4;--danger: #b02f2f;--danger-strong: #8d2828;--danger-wash: #fbe9e9;--info: #1a5fae;--info-wash: #e8f1fd;--serie-1: #c50000;--serie-2: #2a78d6;--serie-3: #eda100;--serie-4: #4a3aa7;--serie-5: #1baf7a;--grid: #e6e4df;--axis: #c3c2b7;--muted-ink: #6f6e69;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--r-sm: 6px;--r: 10px;--r-lg: 14px;--shadow-sm: 0 1px 2px rgba(30, 30, 29, .05);--shadow: 0 1px 2px rgba(30, 30, 29, .06), 0 6px 20px rgba(30, 30, 29, .05);--shadow-lg: 0 24px 60px rgba(30, 30, 29, .22);--nav-w: 244px}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--ink-800);background:var(--page);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--action);outline-offset:2px;border-radius:var(--r-sm)}.h1{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--ink-900);letter-spacing:-.01em}.h2{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--ink-900)}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-400)}.muted{color:var(--ink-500)}.small{font-size:12.5px}.mono{font-family:var(--font-mono)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.nowrap{white-space:nowrap}.txt-entree{color:var(--entree)}.txt-sortie{color:var(--sortie)}.txt-danger{color:var(--danger)}.txt-warn{color:var(--warn)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);border:1px solid transparent;border-radius:var(--r-sm);padding:9px 16px;font-size:13.5px;font-weight:600;transition:background .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}.btn:active:not(:disabled){transform:translateY(.5px)}.btn:disabled,.btn[aria-disabled=true]{background:var(--ink-100)!important;border-color:var(--line)!important;color:var(--ink-400)!important;cursor:not-allowed}.btn-primary{background:var(--action);color:#fff}.btn-primary:not(:disabled):hover{background:var(--action-hover)}.btn-dark{background:var(--action);color:#fff}.btn-dark:not(:disabled):hover{background:var(--action-hover)}.btn-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink-700)}.btn-ghost:not(:disabled):hover{background:var(--ink-100);border-color:var(--ink-300)}.btn-quiet{background:transparent;color:var(--ink-600);padding:6px 10px}.btn-quiet:not(:disabled):hover{background:var(--ink-100);color:var(--ink-900)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:not(:disabled):hover{background:#8d2828}.btn-sm{padding:6px 11px;font-size:12.5px}.btn-block{width:100%}.btn[data-chargement=true]:before{content:"";width:13px;height:13px;flex:none;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:rotation .7s linear infinite}@keyframes rotation{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.btn[data-chargement=true]:before{animation-duration:2.4s}}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>span,.field>label{font-size:12px;font-weight:600;color:var(--ink-600)}.field .hint{font-weight:400;color:var(--ink-400);font-size:11.5px}input,select,textarea{font-family:inherit;font-size:14px;color:var(--ink-900);padding:9px 11px;border:1px solid var(--ink-200);border-radius:var(--r-sm);background:var(--surface);width:100%;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--action);box-shadow:0 0 0 3px #1e1e1d1a}input:disabled,select:disabled{background:var(--ink-100);color:var(--ink-500);cursor:not-allowed}textarea{resize:vertical;min-height:74px}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-400) 50%),linear-gradient(135deg,var(--ink-400) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:30px}.field-error{color:var(--danger);font-size:12.5px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);min-width:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line);flex-wrap:wrap}.card-body{padding:var(--s-5)}.card-body.tight{padding:var(--s-3) var(--s-5)}.grid{display:grid;gap:var(--s-4)}.grid>*,.stack>*,.stack-sm>*{min-width:0}.table-wrap{max-width:100%}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.row{display:flex;gap:var(--s-3);align-items:center;flex-wrap:wrap}.row-end{margin-left:auto}.stack{display:flex;flex-direction:column;gap:var(--s-4)}.stack-sm{display:flex;flex-direction:column;gap:var(--s-2)}.table-wrap{overflow-x:auto;background:linear-gradient(to right,var(--surface) 30%,rgba(255,255,255,0)) left center,linear-gradient(to left,var(--surface) 30%,rgba(255,255,255,0)) right center,radial-gradient(farthest-side at 0 50%,rgba(30,30,29,.12),transparent) left center,radial-gradient(farthest-side at 100% 50%,rgba(30,30,29,.12),transparent) right center;background-repeat:no-repeat;background-size:34px 100%,34px 100%,12px 100%,12px 100%;background-attachment:local,local,scroll,scroll}table.data{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.table-wrap>table.data{min-width:34rem}table.data th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-500);padding:9px 10px;border-bottom:1px solid var(--line);background:var(--surface-2);position:sticky;top:0;z-index:1}table.data th.num{text-align:right}table.data td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle;overflow-wrap:break-word;word-break:normal}table.data td.num,table.data th.num{white-space:nowrap;overflow-wrap:normal}table.data td.nowrap,table.data th.nowrap{white-space:nowrap}table.data tr:last-child td{border-bottom:none}table.data tbody tr:hover{background:var(--surface-2)}table.data td.wrap{min-width:160px}.card table.data.compacte{font-size:12.5px}.card table.data.compacte th,.card table.data.compacte td{padding:7px 8px}@media(max-width:640px){table.data.cartes{min-width:0;display:block}table.data.cartes thead{display:none}table.data.cartes tbody{display:block}table.data.cartes tr{display:block;border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3);margin-bottom:var(--s-2);background:var(--surface)}table.data.cartes tbody tr:hover{background:var(--surface)}table.data.cartes td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4);text-align:right;padding:3px 0;border-bottom:none}table.data.cartes td:before{content:attr(data-label);flex:none;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-500)}table.data.cartes td:not([data-label]){display:block;text-align:left}table.data.cartes td:not([data-label]):before{content:none}table.data.cartes .cell-actions{justify-content:flex-start;padding-top:var(--s-2)}.table-wrap:has(>table.data.cartes){overflow-x:visible;background:none}}tr.annulee td{color:var(--ink-400);text-decoration:line-through}tr.annulee td .badge{text-decoration:none}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--ink-100);color:var(--ink-600)}.badge.entree{background:var(--entree-wash);color:var(--entree)}.badge.sortie{background:var(--sortie-wash);color:var(--sortie)}.badge.transfert{background:var(--info-wash);color:var(--info)}.badge.warn{background:var(--warn-wash);color:var(--warn)}.badge.danger{background:var(--danger-wash);color:var(--danger)}.badge.ok{background:var(--entree-wash);color:var(--entree)}.dot{width:9px;height:9px;border-radius:3px;flex:none;display:inline-block}.empty{text-align:center;color:var(--ink-500);font-size:13px;padding:var(--s-8) var(--s-4)}.divider{height:1px;background:var(--line);border:0;margin:var(--s-4) 0}.chips{display:flex;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:3px}.chip{background:none;border:none;padding:5px 11px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--ink-600)}.chip:hover{background:var(--ink-100)}.chip.on{background:var(--action);color:#fff}.alert{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);font-size:13px;border:1px solid transparent}.alert-warn{background:var(--warn-wash);border-color:var(--warn-line);color:var(--warn)}.alert-danger{background:var(--danger-wash);border-color:#f2cccc;color:var(--danger)}.alert-info{background:var(--info-wash);border-color:#cfe1f9;color:var(--info)}@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:880px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}}@media(max-width:480px){.card-head{padding:var(--s-3) var(--s-4)}.card-body{padding:var(--s-4)}.h1{font-size:19px}.row{gap:var(--s-2)}.chips{flex-wrap:wrap}.chip{padding:5px 9px;font-size:12px}.btn{padding:9px 13px}.page-head .actions{width:100%}.page-head .actions>.btn{flex:1 1 auto}table.data th,table.data td{padding:8px}.alert{flex-wrap:wrap}}@media print{body{background:#fff}.no-print{display:none!important}}
