@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-vietnamese-400-normal-Dpl4UHAZ.woff2) format("woff2"),url(/assets/barlow-vietnamese-400-normal-BFeobeCK.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-ext-400-normal-HxX4XjxC.woff2) format("woff2"),url(/assets/barlow-latin-ext-400-normal-CvBsJvxq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2) format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-vietnamese-500-normal-zTViEIzf.woff2) format("woff2"),url(/assets/barlow-vietnamese-500-normal-GNfB7rCE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-ext-500-normal-DOaysfXq.woff2) format("woff2"),url(/assets/barlow-latin-ext-500-normal-CJPcKP2Q.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2) format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-vietnamese-600-normal-DcjprdFV.woff2) format("woff2"),url(/assets/barlow-vietnamese-600-normal-CA_GiK2e.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-ext-600-normal-B8NK_A3D.woff2) format("woff2"),url(/assets/barlow-latin-ext-600-normal-DMVRjfRT.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2) format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-vietnamese-700-normal-D6euyNzi.woff2) format("woff2"),url(/assets/barlow-vietnamese-700-normal-4Jt4k04K.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-ext-700-normal-BLuWmldJ.woff2) format("woff2"),url(/assets/barlow-latin-ext-700-normal-CctuGmmz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2) format("woff2"),url(/assets/barlow-latin-700-normal-__SGTsZ1.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--encre: #0f1b2a;--encre-2: #435366;--encre-3: #627285;--fond: #e8ecf1;--surface: #ffffff;--surface-2: #f3f5f8;--survol: #e7ecf2;--bord: #d0d8e1;--entete: #0c1d31;--entete-haut: #13304f;--entete-encre: #f3f6fa;--entete-2: #9fb2c7;--signal: #d0021b;--accent: #c62828;--accent-encre: #ffffff;--lien: #1559a8;--ok: #2e7d32;--attente: #9a5b00;--selection: #f2b300;--selection-fond: #fff3cc;--selection-encre: #5a4300;--verre: rgb(255 255 255 / .82);--verre-bord: rgb(255 255 255 / .7);--verre-ombre-bord: rgb(12 29 49 / .1);--ombre-1: 0 1px 1px rgb(12 29 49 / .05), 0 1px 3px rgb(12 29 49 / .08);--ombre-2: 0 1px 2px rgb(12 29 49 / .06), 0 6px 16px rgb(12 29 49 / .09), 0 18px 40px rgb(12 29 49 / .1);--ombre-3: 0 2px 6px rgb(12 29 49 / .1), 0 24px 64px rgb(12 29 49 / .24);--ombre: var(--ombre-2);--rayon: 10px;--rayon-panneau: 14px;--sortie: cubic-bezier(.16, 1, .3, 1);--duree-court: .14s;--duree: .22s;--duree-panneau: .34s;--decalage: 1;color-scheme:light;font-family:Barlow,system-ui,-apple-system,Segoe UI,Roboto,Noto Sans,sans-serif;color:var(--encre);background:var(--fond);font-size:16px;line-height:1.45;accent-color:var(--lien);caret-color:var(--lien);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root[data-theme=nuit]{--encre: #e4eaf1;--encre-2: #a7b5c4;--encre-3: #8292a3;--fond: #0a1119;--surface: #131d28;--surface-2: #192532;--survol: #223143;--bord: #2a394a;--entete: #060c14;--entete-haut: #0c1a2a;--entete-encre: #e4eaf1;--entete-2: #8d9eb0;--signal: #b3261e;--accent: #ef5350;--lien: #7cb2f0;--ok: #66bb6a;--attente: #f0b45c;--selection: #f2b300;--selection-fond: #3b3010;--selection-encre: #ffd970;--verre: rgb(19 29 40 / .8);--verre-bord: rgb(255 255 255 / .07);--verre-ombre-bord: rgb(0 0 0 / .4);--ombre-1: 0 1px 2px rgb(0 0 0 / .35);--ombre-2: 0 2px 6px rgb(0 0 0 / .35), 0 12px 32px rgb(0 0 0 / .42);--ombre-3: 0 4px 12px rgb(0 0 0 / .45), 0 28px 72px rgb(0 0 0 / .6);color-scheme:dark}*{box-sizing:border-box}html,body,#app{margin:0;height:100%}body{background:var(--fond)}::selection{background:var(--selection);color:#1b1400}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--encre-3) 45%,transparent);border-radius:10px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--encre-3)}::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:3px solid var(--selection);outline-offset:2px}*{scrollbar-color:var(--bord) transparent;scrollbar-width:thin}h1,h2,h3{margin:0 0 .5em;line-height:1.15;text-wrap:balance;font-weight:700}h1{font-size:1.85rem;letter-spacing:-.02em}h2{font-size:1.25rem;letter-spacing:-.01em}h3{font-size:1.02rem;font-weight:600}time,td,.chiffre,.compte,.n{font-variant-numeric:tabular-nums}a{color:var(--lien);text-underline-offset:.18em}input,select,textarea,button{font:inherit;color:inherit}input[type=text],input[type=number],input[type=search],input[type=datetime-local],select,textarea{width:100%;padding:8px 10px;border:1px solid var(--bord);border-radius:8px;background:var(--surface);color:var(--encre);min-height:40px;transition:border-color var(--duree-court) ease-out,box-shadow var(--duree-court) ease-out}input[type=text]:hover,input[type=number]:hover,input[type=search]:hover,select:hover,textarea:hover{border-color:var(--encre-3)}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input[type=datetime-local]:focus,select:focus,textarea:focus{border-color:var(--lien);box-shadow:0 0 0 3px color-mix(in srgb,var(--lien) 18%,transparent);outline:none}input::placeholder,textarea::placeholder{color:var(--encre-3)}input:disabled,select:disabled,textarea:read-only{background:var(--surface-2)}textarea{min-height:70px;resize:vertical}label{display:block;font-size:.85rem;color:var(--encre-2);margin:8px 0 3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:6px 14px;border:1px solid var(--bord);border-radius:8px;background:var(--surface);cursor:pointer;white-space:nowrap;font-weight:500;text-decoration:none;color:var(--encre);box-shadow:var(--ombre-1);transition:background-color var(--duree-court) ease-out,border-color var(--duree-court) ease-out,box-shadow var(--duree-court) ease-out,transform var(--duree-court) var(--sortie)}.btn:hover{border-color:var(--encre-3);background:var(--surface-2)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn.principal{background:linear-gradient(180deg,var(--entete-haut),var(--entete));border-color:var(--entete);color:var(--entete-encre);box-shadow:inset 0 1px #ffffff24,var(--ombre-1);font-weight:600}:root[data-theme=nuit] .btn.principal{background:linear-gradient(180deg,#3a7cc4,#2f6fb5);border-color:#2f6fb5;color:#fff}.btn.principal:hover{filter:brightness(1.12)}.btn.danger{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--bord))}.btn.grand{min-height:48px;padding:10px 26px;font-size:1.05rem}.btn.icone{padding:6px 10px;min-width:40px}.ecran-centre{min-height:100%;display:grid;place-items:center;padding:20px}.carte-accueil{background:var(--surface);padding:36px 40px;border-radius:14px;box-shadow:var(--ombre);text-align:center;max-width:420px}.sous-titre{color:var(--encre-2);margin-bottom:24px}.alerte{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:color-mix(in srgb,var(--accent) 80%,var(--encre));padding:10px 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.messages{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:1000;display:grid;gap:6px;pointer-events:none}.message{display:flex;align-items:center;gap:10px;background:#0c1d31eb;color:#f3f6fa;padding:10px 16px 10px 12px;border-radius:12px;box-shadow:var(--ombre-3);max-width:90vw;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border:1px solid rgb(255 255 255 / .08);animation:message-entree var(--duree-panneau) var(--sortie) both;font-weight:500}.message:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:#9fb2c7;box-shadow:0 0 0 3px #9fb2c733}.message.ok:before{background:#4cd07d;box-shadow:0 0 0 3px #4cd07d38}.message.erreur{background:#780e12f0}.message.erreur:before{background:#ff8a80;box-shadow:0 0 0 3px #ff8a8040}@keyframes message-entree{0%{opacity:0;transform:translateY(calc(var(--decalage) * 14px)) scale(calc(1 - var(--decalage) * .04));filter:blur(4px)}}.bandeau-session{position:fixed;top:0;left:0;right:0;z-index:999;background:#fff3cd;color:#4a3b00;padding:10px;text-align:center}.page{max-width:1100px;margin:0 auto;padding:24px 16px 60px}.entete{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 16px 13px;color:var(--entete-encre);position:relative;background:linear-gradient(180deg,var(--entete-haut),var(--entete));box-shadow:inset 0 -3px 0 var(--signal),0 1px #0003}.entete a,.entete .lien{color:var(--entete-encre);text-decoration:none}.entete a:hover{text-decoration:underline}.entete .titre{font-weight:700;font-size:1.08rem;letter-spacing:.02em;display:inline-flex;align-items:center;gap:8px}.entete .espace{flex:1}.btn-entete{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--entete-encre);cursor:pointer;transition:background-color var(--duree-court) ease-out,border-color var(--duree-court) ease-out}.btn-entete:hover{background:#ffffff1a;border-color:#ffffff1f}.nom-utilisateur{color:var(--entete-2);font-size:.9rem}.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px 2px 8px;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap;background:color-mix(in srgb,var(--attente) 14%,var(--surface));color:var(--attente);border:1px solid color-mix(in srgb,var(--attente) 25%,transparent)}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge.actif{background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}.badge.actif:before{animation:pouls 2.4s ease-out infinite}.badge.archive{background:var(--surface-2);color:var(--encre-3);border-color:var(--bord)}@keyframes pouls{0%{box-shadow:0 0 color-mix(in srgb,currentColor 45%,transparent)}70%,to{box-shadow:0 0 0 6px transparent}}.grille{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tuile{background:var(--surface);border:1px solid var(--bord);border-radius:var(--rayon-panneau);padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--ombre-1);transition:box-shadow var(--duree) ease-out,border-color var(--duree) ease-out;animation:monter var(--duree-panneau) var(--sortie) both;animation-delay:calc(min(var(--i, 0),6)*45ms)}.tuile:hover{box-shadow:var(--ombre-2);border-color:color-mix(in srgb,var(--encre-3) 45%,var(--bord))}@keyframes monter{0%{opacity:0;transform:translateY(calc(var(--decalage) * 10px))}}.tuile .actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.muet{color:var(--encre-2);font-size:.9rem}.modale-fond{position:fixed;inset:0;background:#060c1473;z-index:900;display:grid;place-items:center;padding:16px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fondu var(--duree) ease-out both}.modale{background:var(--surface);border-radius:16px;padding:22px;width:min(520px,100%);max-height:90vh;overflow:auto;box-shadow:var(--ombre-3);border:1px solid var(--verre-bord);animation:materialiser var(--duree-panneau) var(--sortie) both}@keyframes fondu{0%{opacity:0}}@keyframes materialiser{0%{opacity:0;transform:translateY(calc(var(--decalage) * 8px)) scale(calc(1 - var(--decalage) * .035));filter:blur(6px)}}.modale .pied{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.deux{display:grid;grid-template-columns:1fr 1fr;gap:10px}table{width:100%;border-collapse:collapse;background:var(--surface);font-variant-numeric:tabular-nums}th,td{text-align:left;padding:8px;border-bottom:1px solid var(--bord);vertical-align:middle}.vide{border:1px dashed var(--bord);border-radius:var(--rayon-panneau);padding:32px 24px;text-align:center;color:var(--encre-2);background:var(--surface)}.vide strong{display:block;color:var(--encre);font-size:1.1rem;margin-bottom:6px}.btn,.btn-entete,.outil,.type,.mini,.onglets button,.onglets-bas button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn:active,.btn-entete:active,.outil:active,.type:active,.mini:active{transform:scale(.97);transition:transform 80ms ease-out}h1,h2{letter-spacing:-.01em}@media(pointer:coarse){.btn,.mini-btn{min-height:44px}.mini{width:44px!important;height:44px!important}.btn-entete{width:44px;height:44px}input[type=checkbox],input[type=radio]{width:22px;height:22px}.radio{min-height:36px}select,input[type=text],input[type=number],input[type=search],input[type=tel]{min-height:44px;font-size:16px}}@media(prefers-contrast:more){:root{--bord: #5b6673;--encre-2: #222b35;--encre-3: #2f3a46}:root[data-theme=nuit]{--bord: #9aa7b4;--encre-2: #e3e9ef;--encre-3: #c9d3de}.btn,.type,.couches li,.fiche,.barre-outils{border-width:2px}}@media(prefers-reduced-motion:reduce){:root{--decalage: 0;--duree-panneau: .16s}*,*:before,*:after{transition-duration:.12s!important;scroll-behavior:auto!important}.badge.actif:before{animation:none}}@media(prefers-reduced-transparency:reduce){:root{--verre: var(--surface)}.message,.modale-fond{backdrop-filter:none;-webkit-backdrop-filter:none}}@media(pointer:coarse){.maplibregl-ctrl-group button{width:44px!important;height:44px!important}.maplibregl-ctrl-group button .maplibregl-ctrl-icon{background-size:30px}.recherche input{min-height:44px!important}.couches input[type=checkbox]{width:26px!important;height:26px!important}.couches input[type=color]{width:34px!important;height:34px!important}}@media(pointer:coarse){.mini-btn,.titre-legende{min-height:44px!important}}
