:root{--vert: #6DB33F;--vert-light: #8BC34A;--bleu: #2196F3;--bleu-light: #64B5F6;--bleu-dark: #1565C0;--rouge: #E53935;--rouge-light: #EF5350;--gris: #78909C;--gris-light: #B0BEC5;--violet: #7E57C2;--violet-light: #9575CD;--ocre: #D4A017;--ocre-light: #E6B82A;--marron: #795548;--marron-light: #8D6E63;--jaune: #FBC02D;--jaune-light: #FDD835;--orange: #FF9800;--orange-light: #FFB74D;--bg: #F8FAF8;--text: #1a1a1a;--muted: #555}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh}.wrap{max-width:980px;margin:0 auto;padding:0 16px}header{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e5e5e5;position:sticky;top:0;background:#fffffff2;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--bleu-dark);cursor:pointer}.brand img{height:44px;width:auto;display:block}.brand span{color:var(--vert)}.hero{text-align:center;padding:32px 0 20px}.hero h1{font-size:28px;font-weight:700;line-height:1.15;margin:0 0 10px}.hero h1 span{color:var(--vert)}.hero p{font-size:16px;color:var(--muted);max-width:560px;margin:0 auto 24px}.badge{display:inline-block;background:linear-gradient(135deg,var(--vert),var(--vert-light));color:#fff;font-size:12px;font-weight:600;padding:5px 14px;border-radius:20px;margin-bottom:18px;letter-spacing:.3px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.grid-secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:32px}.reg-btn{position:relative;border:none;border-radius:16px;padding:28px 16px;text-align:center;cursor:pointer;font-family:inherit;color:#fff;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;box-shadow:0 4px 12px #0000001f;overflow:hidden}.reg-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent);pointer-events:none}.reg-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #0000002e}.reg-btn:active{transform:translateY(-1px) scale(.98)}.reg-btn .icon-wrap{width:56px;height:56px;border-radius:16px;background:#ffffff38;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1.5px solid rgba(255,255,255,.35)}.reg-btn .icon-wrap svg{width:28px;height:28px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.reg-btn .label{font-size:15px;font-weight:700;line-height:1.25;text-shadow:0 1px 2px rgba(0,0,0,.15);z-index:1}.btn-temp{background:linear-gradient(135deg,var(--rouge),var(--rouge-light))}.btn-nett{background:linear-gradient(135deg,var(--bleu),var(--bleu-light))}.btn-trac-rec{background:linear-gradient(135deg,var(--vert),var(--vert-light))}.btn-trac-fab{background:linear-gradient(135deg,var(--orange),var(--orange-light))}.btn-secondary{background:#9e9e9e;border:2px solid #1a1a1a;color:#fff;box-shadow:0 2px 6px #0000000f}.btn-secondary:before{display:none}.btn-secondary .icon-wrap{background:#ffffff2e;border:1.5px solid rgba(255,255,255,.4)}.btn-secondary .icon-wrap svg{stroke:#fff}.btn-secondary .label{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.btn-secondary:hover{background:#757575;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.icon-wrap img{width:28px;height:28px;object-fit:contain;filter:brightness(0) invert(1)}.grid .reg-btn .icon-wrap img{width:32px;height:32px}.grid-secondary .reg-btn .icon-wrap img{width:22px;height:22px}.grid .reg-btn{min-height:180px}.grid .reg-btn .icon-wrap{width:64px;height:64px;border-radius:18px}.grid .reg-btn .icon-wrap svg{width:32px;height:32px}.grid .reg-btn .label{font-size:17px}.grid-secondary .reg-btn{min-height:130px;padding:20px 12px}.grid-secondary .reg-btn .icon-wrap{width:44px;height:44px;border-radius:14px}.grid-secondary .reg-btn .icon-wrap svg{width:22px;height:22px}.grid-secondary .reg-btn .label{font-size:13px}.section-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--muted);margin:24px 0 14px;text-transform:uppercase;letter-spacing:.8px}.section-title:before{content:"";flex:1;height:1px;background:#e0e0e0}.section-title:after{content:"";flex:1;height:1px;background:#e0e0e0}footer{text-align:center;padding:20px 0;border-top:1px solid #e8e8e8;margin-top:10px}footer p{font-size:12px;color:#999;margin:0}footer a{color:var(--bleu);text-decoration:none}@media (max-width: 768px){.grid{grid-template-columns:repeat(2,1fr);gap:12px}.grid-secondary{grid-template-columns:repeat(2,1fr);gap:10px}.hero h1{font-size:24px}.grid .reg-btn{min-height:160px;padding:20px 10px}.grid .reg-btn .icon-wrap{width:52px;height:52px}.grid .reg-btn .icon-wrap svg{width:26px;height:26px}.grid .reg-btn .label{font-size:15px}}@media (max-width: 400px){.grid,.grid-secondary{grid-template-columns:1fr}}.registre-view{display:none;padding:32px 0 20px}.registre-view.active{display:block}.home-content.hidden{display:none}.registre-header{text-align:center;margin-bottom:28px}.registre-header h1{display:inline-block;color:#fff;font-size:15px;font-weight:600;padding:6px 18px;border-radius:20px;letter-spacing:.3px;margin:0}.registre-header h1.badge-rouge{background:linear-gradient(135deg,var(--rouge),var(--rouge-light))}.registre-header h1.badge-bleu{background:linear-gradient(135deg,var(--bleu),var(--bleu-light))}.registre-header h1.badge-vert{background:linear-gradient(135deg,var(--vert),var(--vert-light))}.registre-header h1.badge-orange{background:linear-gradient(135deg,var(--orange),var(--orange-light))}.registre-header h1.badge-secondary{background:#9e9e9e;border:2px solid #1a1a1a}.registre-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:720px;margin:0 auto}.registre-actions .reg-btn{min-height:150px}.btn-remplir{background:linear-gradient(135deg,var(--vert),var(--vert-light))}.btn-archive{background:linear-gradient(135deg,var(--ocre),var(--ocre-light))}.btn-retour{background:linear-gradient(135deg,var(--gris),var(--gris-light))}@media (max-width: 600px){.registre-actions{grid-template-columns:1fr}}.registre-actions.two-col{grid-template-columns:repeat(2,1fr);max-width:480px}@media (max-width: 600px){.registre-actions.two-col{grid-template-columns:1fr}}.allergen-table{min-width:1050px}.allergen-table th,.allergen-table td{text-align:center}.allergen-table thead th:first-child{text-align:left}.produit-cell{display:flex;align-items:center;gap:6px;white-space:nowrap}.produit-nom-input{border:1px solid #d8dde0;border-radius:6px;padding:5px 7px;font-size:13px;font-family:inherit;width:160px}.btn-suppr-ligne{background:none;border:none;color:var(--rouge);font-size:17px;cursor:pointer;line-height:1;padding:0 2px}.allergen-cell{width:36px;height:32px;border:1px solid #d8dde0;border-radius:6px;background:#fff;font-weight:700;font-size:13px;cursor:pointer;font-family:inherit;color:var(--muted)}.allergen-cell[data-state=P]{background:#fdecea;color:var(--rouge);border-color:var(--rouge)}.allergen-cell[data-state=T]{background:#fff8e1;color:#b8860b;border-color:var(--ocre)}.allergen-legende{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--text)}.allergen-legende strong{color:var(--text)}.allergen-legende .allergen-cell{pointer-events:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:24px;vertical-align:middle}.feuille-view{display:none;padding:28px 0 50px}.feuille-view.active{display:block}.fiche-header-title{text-align:center;margin-bottom:22px}.fiche-header-title h1{font-size:22px;font-weight:700;margin:0 0 6px}.fiche-sous-titre{font-size:13px;color:var(--muted);margin:0}.fiche-infos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;background:#fff;border-radius:14px;padding:16px;margin-bottom:22px;box-shadow:0 2px 8px #0000000f}.fiche-champ{display:flex;flex-direction:column;gap:4px}.fiche-champ label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.fiche-champ input,.fiche-champ select,.fiche-champ textarea{border:1px solid #d8dde0;border-radius:8px;padding:7px 9px;font-size:14px;font-family:inherit}.fiche-champ textarea{resize:vertical;min-height:64px}.champ-large{grid-column:span 2}.chambre-card{background:#fff;border-radius:14px;padding:16px 18px;margin-bottom:16px;box-shadow:0 2px 8px #0000000f}.chambre-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}.chambre-titre{font-weight:700;font-size:15px}.chambre-limite{font-size:12px;color:var(--rouge);font-weight:600;background:#fdecea;padding:3px 10px;border-radius:12px;white-space:nowrap}.chambre-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.chambre-grid-chaud{grid-template-columns:repeat(6,1fr)}.chambre-header-custom{gap:8px}.chambre-titre-input{font-weight:700;font-size:15px;border:none;border-bottom:1px dashed #ccc;background:transparent;flex:1;min-width:140px;padding:2px 4px;font-family:inherit}.chambre-limite-input{font-size:12px;border:1px solid #d8dde0;border-radius:10px;padding:4px 10px;min-width:170px;font-family:inherit}.btn-supprimer-enceinte{background:none;border:none;color:var(--rouge);font-size:22px;cursor:pointer;line-height:1;padding:0 4px}.btn-ajouter-enceinte{display:block;width:100%;text-align:center;padding:12px;margin-bottom:22px;border:2px dashed var(--bleu);background:#eef6fe;color:var(--bleu-dark);border-radius:12px;font-weight:600;cursor:pointer;font-family:inherit;font-size:14px}.btn-ajouter-enceinte:hover{background:#e1f0fd}.zone-card{background:#fff;border-radius:14px;padding:16px 18px;margin-bottom:16px;box-shadow:0 2px 8px #0000000f}.zone-card.zone-critique{border-left:4px solid var(--rouge);background:#fffbfb}.zone-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}.zone-titre{font-weight:700;font-size:15px}.zone-card.zone-critique .zone-titre{color:var(--rouge)}.zone-produit{font-size:12px;color:var(--muted);background:#f5f5f5;padding:3px 10px;border-radius:12px}.zone-card.zone-critique .zone-produit{background:#fdecea;color:var(--rouge);font-weight:600}.zone-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.fiche-champ-check{justify-content:center}.fiche-champ-check input[type=checkbox]{width:20px;height:20px;margin-top:2px}.check-inline{display:flex;gap:14px;flex-wrap:wrap;padding-top:6px}.check-inline label{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:500;color:var(--text);text-transform:none;letter-spacing:0}.check-inline input[type=checkbox]{width:16px;height:16px}.zone-header-custom{gap:8px}.zone-titre-input{font-weight:700;font-size:15px;border:none;border-bottom:1px dashed #ccc;background:transparent;flex:1;min-width:140px;padding:2px 4px;font-family:inherit}.zone-produit-input{font-size:12px;border:1px solid #d8dde0;border-radius:10px;padding:4px 10px;min-width:170px;font-family:inherit}.badge-critique{font-size:11px;background:var(--rouge);color:#fff;padding:2px 8px;border-radius:10px;margin-left:6px}.anomalie-num{font-weight:600;color:var(--muted);text-align:center;width:32px}.fiche-note{font-size:12.5px;color:var(--muted);background:#fff8e1;border-left:4px solid var(--jaune);padding:10px 14px;border-radius:8px;margin-bottom:22px}.etalon-section{background:#fff;border-radius:14px;padding:16px 18px;margin-bottom:22px;box-shadow:0 2px 8px #0000000f}.fiche-note-inline{font-size:12.5px;color:var(--muted);margin:0 0 12px}.etalon-table-wrap{overflow-x:auto;margin-bottom:12px}.etalon-table{border-collapse:collapse;width:100%;min-width:760px}.etalon-table th{font-size:11px;text-transform:uppercase;color:var(--muted);text-align:left;padding:6px 8px;border-bottom:2px solid #eee}.etalon-table td{padding:6px 8px;border-bottom:1px solid #f0f0f0}.etalon-table input,.etalon-table select{width:100%;border:1px solid #d8dde0;border-radius:6px;padding:5px 6px;font-size:13px;font-family:inherit}.btn-ajouter-ligne{border:1px dashed var(--bleu);background:#eef6fe;color:var(--bleu-dark);border-radius:10px;padding:8px 14px;font-weight:600;cursor:pointer;font-family:inherit;font-size:13px}.fiche-actions{display:flex;justify-content:center;gap:16px;margin-top:10px;flex-wrap:wrap}.fiche-btn{border:none;border-radius:24px;padding:12px 28px;font-weight:700;font-size:14px;color:#fff;cursor:pointer;font-family:inherit;box-shadow:0 4px 10px #0000001f}.fiche-btn-save{background:linear-gradient(135deg,var(--vert),var(--vert-light))}.fiche-btn-retour{background:linear-gradient(135deg,var(--gris),var(--gris-light))}@media (max-width: 700px){.fiche-infos,.chambre-grid{grid-template-columns:repeat(2,1fr)}.chambre-grid-chaud{grid-template-columns:repeat(3,1fr)}.zone-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 420px){.fiche-infos,.chambre-grid,.chambre-grid-chaud,.zone-grid{grid-template-columns:1fr}.champ-large{grid-column:span 1}}.chambre-header-editable,.zone-header-editable{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}.edit-titre-input{font-weight:700;font-size:15px;border:none;border-bottom:1.5px dashed var(--bleu-light);background:transparent;flex:1;min-width:140px;padding:2px 4px;font-family:inherit;color:var(--text);outline:none;cursor:text}.edit-titre-input:hover,.edit-titre-input:focus{border-bottom-color:var(--bleu);background:#f4f9ff;border-radius:4px 4px 0 0}.edit-limite-input{font-size:12px;font-weight:600;color:var(--rouge);background:#fdecea;border:1px solid transparent;border-radius:12px;padding:3px 10px;min-width:120px;font-family:inherit;cursor:text;outline:none}.edit-limite-input:hover,.edit-limite-input:focus{border-color:var(--rouge-light);background:#fde8e6}.edit-produit-input{font-size:12px;color:var(--muted);background:#f5f5f5;border:1px solid transparent;border-radius:12px;padding:3px 10px;min-width:170px;font-family:inherit;cursor:text;outline:none}.zone-card.zone-critique .edit-produit-input{background:#fdecea;color:var(--rouge);font-weight:600}.edit-produit-input:hover,.edit-produit-input:focus{border-color:var(--gris-light);background:#ebebeb}.btn-suppr-card{background:none;border:none;color:#ccc;font-size:20px;cursor:pointer;line-height:1;padding:0 2px;margin-left:auto;transition:color .15s;flex-shrink:0}.btn-suppr-card:hover{color:var(--rouge)}.fiche-btn-pdf{background:linear-gradient(135deg,var(--bleu),var(--bleu-light))}.archive-view{display:none;padding:28px 0 50px}.archive-view.active{display:block}.archive-header{text-align:center;margin-bottom:22px}.archive-header h2{font-size:20px;font-weight:700;color:var(--bleu-dark)}#dashboardHome{padding:0 0 32px}.dash-greeting{padding:24px 20px 4px}.dash-hello{font-size:24px;font-weight:800;color:var(--bleu-dark);line-height:1.2}.dash-hello span{color:var(--bleu)}.dash-date{font-size:13px;color:var(--gris);margin-top:4px;font-weight:500}.dash-board{margin:16px 16px 20px;background:#fff;border-radius:18px;padding:18px;box-shadow:0 2px 14px #00000014}.dash-board-titre{font-size:12px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.dash-bilan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.dash-bilan-item{display:flex;align-items:center;gap:10px;background:#f8faff;border-radius:12px;padding:11px 14px}.dash-bilan-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.dash-bilan-dot.vert{background:#4caf50}.dash-bilan-dot.orange{background:#ff9800}.dash-bilan-dot.rouge{background:#f44336}.dash-bilan-dot.gris{background:#ccc}.dash-bilan-label{font-size:13px;font-weight:600;color:var(--bleu-dark);flex:1}.dash-bilan-statut{font-size:11px;color:#888}.dash-relances{margin-top:12px;background:#fff8e1;border-radius:12px;padding:12px 14px;border-left:4px solid #FF9800}.dash-relances-titre{font-size:13px;font-weight:700;color:#e65100;margin-bottom:8px}.dash-relance-item{font-size:12px;color:#555;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.05)}.dash-relance-item:last-child{border-bottom:none}.dash-main-btns{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:12px;padding:0 16px}.dash-main-btn{border:none;border-radius:18px;padding:22px 16px 18px;cursor:pointer;font-family:inherit;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:all .18s;box-shadow:0 4px 16px #00000021;text-align:center}.dash-main-btn:active{transform:scale(.97)}.dash-btn-registres{grid-column:1 / -1;background:linear-gradient(135deg,var(--bleu-dark),var(--bleu));box-shadow:0 4px 20px #2196f359;padding:28px 16px 24px}.dash-btn-admin{background:linear-gradient(135deg,#1565c0,#283593)}.dash-btn-params{background:#e0e0e0;color:#aaa;cursor:not-allowed;box-shadow:none}.dash-btn-params:active{transform:none}.dash-main-icon{opacity:.9}.dash-main-label{font-size:16px;font-weight:800;letter-spacing:.01em}.dash-btn-registres .dash-main-label{font-size:20px}.dash-main-sub{font-size:12px;opacity:.75;font-weight:500}.panneau-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.panneau-inner{background:#f8f9fc;border-radius:24px 24px 0 0;width:100%;max-width:680px;max-height:82vh;overflow-y:auto;padding:0 0 24px;animation:slideUp .28s cubic-bezier(.25,.46,.45,.94)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.panneau-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 14px;position:sticky;top:0;background:#f8f9fc;border-bottom:1px solid #eee;z-index:1}.panneau-titre{font-size:18px;font-weight:800;color:var(--bleu-dark)}.panneau-close{width:34px;height:34px;border-radius:50%;border:none;background:#e8e8e8;color:#555;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit}.panneau-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px 16px 8px}@media (max-width: 480px){.panneau-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 360px){.panneau-grid{grid-template-columns:repeat(2,1fr)}}.admin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px}.admin-inner{background:#fff;border-radius:20px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 12px 48px #00000038;animation:fadeInScale .22s ease}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 14px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.admin-titre{font-size:18px;font-weight:800;color:var(--bleu-dark)}.admin-close{width:34px;height:34px;border-radius:50%;border:none;background:#e8e8e8;color:#555;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit}.admin-body{padding:20px}.admin-tabs{display:flex;gap:4px;padding:10px 14px 0;background:#fff;position:sticky;top:66px;z-index:1;border-bottom:1px solid #eee}.admin-tab-btn{flex:1;padding:10px 6px;border:none;background:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;border-radius:8px 8px 0 0;text-align:center}.admin-tab-btn.active{color:var(--bleu-dark);border-bottom-color:var(--bleu);background:#f4f6ff}.admin-tab-panel{animation:fadeInScale .15s ease}.admin-section{margin-bottom:24px}.admin-section-titre{font-size:11px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px}.admin-btn{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:14px;border:none;background:#f4f6ff;color:var(--bleu-dark);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;margin-bottom:8px;transition:background .15s;text-align:left}.admin-btn:hover{background:#e3eaff}.admin-btn.danger{background:#fff0f0;color:#c62828}.admin-btn.danger:hover{background:#fdd}#loginScreen{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#1565c0,#0d47a1,#6db33f);z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0}.login-card{background:#fff;border-radius:24px;padding:40px 36px 32px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d;text-align:center}.login-logo{max-height:70px;max-width:220px;object-fit:contain;margin-bottom:16px}.login-app-name{font-size:20px;font-weight:800;color:var(--bleu-dark);margin-bottom:4px}.login-subtitle{font-size:13px;color:var(--muted);margin-bottom:24px}.login-role-tabs{display:flex;gap:8px;margin-bottom:20px;justify-content:center}.login-role-tab{flex:1;padding:9px 0;border-radius:12px;border:2px solid #ddd;background:#f9f9f9;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .15s;color:#888}.login-role-tab.active{border-color:var(--bleu);background:var(--bleu);color:#fff}.login-field-label{font-size:12px;font-weight:700;color:var(--muted);text-align:left;margin-bottom:4px}.login-input{width:100%;border:1.5px solid #d8dde0;border-radius:12px;padding:11px 14px;font-size:15px;font-family:inherit;margin-bottom:14px;outline:none;transition:border-color .15s}.login-input:focus{border-color:var(--bleu)}.login-btn{width:100%;padding:13px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--bleu),var(--bleu-dark));color:#fff;font-size:15px;font-weight:800;cursor:pointer;font-family:inherit;margin-top:4px;transition:opacity .15s}.login-btn:hover{opacity:.9}.login-error{font-size:12px;color:var(--rouge);margin-top:8px;background:#ffebee;border-radius:8px;padding:8px 12px;display:none}.login-footer{font-size:11px;color:#fff9;margin-top:18px}#autoLockOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1565c0f7;z-index:9998;display:none;align-items:center;justify-content:center;flex-direction:column;gap:16px}.lock-icon{font-size:64px}.lock-msg{color:#fff;font-size:18px;font-weight:700}.lock-sub{color:#ffffffb3;font-size:13px;margin-bottom:16px}.lock-pin-dots{display:flex;gap:12px;justify-content:center;margin-bottom:16px}.lock-dot{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.6);background:transparent;transition:background .15s}.lock-dot.filled{background:#fff;border-color:#fff}.lock-keypad{display:grid;grid-template-columns:repeat(3,64px);gap:10px}.lock-key{width:64px;height:64px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:#ffffff1a;color:#fff;font-size:22px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .1s}.lock-key:hover{background:#fff3}.lock-key.del{font-size:16px}.lock-error-msg{color:#ff8a80;font-size:13px;font-weight:600;min-height:18px}.role-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;margin-left:8px;display:inline-block}.role-badge.employe{background:#e3f2fd;color:#1565c0}.role-badge.manager{background:#e8f5e9;color:#2e7d32}.role-badge.admin{background:#fff3e0;color:#e65100}.logo-upload-btn{font-size:12px;padding:4px 12px;border-radius:8px;border:1.5px solid var(--bleu);color:var(--bleu);background:#fff;cursor:pointer;font-family:inherit;font-weight:600;margin-top:6px}.logo-upload-btn:hover{background:var(--bleu);color:#fff}.export-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.export-btn{font-size:12px;padding:6px 14px;border-radius:10px;border:1.5px solid #ccc;background:#fff;cursor:pointer;font-family:inherit;font-weight:600;transition:all .15s;display:flex;align-items:center;gap:5px}.export-btn:hover{border-color:var(--bleu);color:var(--bleu)}.export-btn.csv{border-color:var(--vert);color:var(--vert)}.export-btn.csv:hover{background:var(--vert);color:#fff}.export-btn.pdf-exp{border-color:var(--rouge);color:var(--rouge)}.export-btn.pdf-exp:hover{background:var(--rouge);color:#fff}.login-profile-card{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1.5px solid #e8e8e8;border-radius:12px;margin-bottom:8px;cursor:pointer;transition:all .15s;background:#fafafa}.login-profile-card:hover{border-color:var(--bleu);background:#f0f5ff}.login-profile-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.login-profile-avatar.employe{background:#e3f2fd}.login-profile-avatar.responsable{background:#e8f5e9}.login-profile-avatar.directeur{background:#fff3e0}.login-profile-name{font-weight:700;font-size:14px;color:var(--bleu-dark)}.login-profile-role-label{font-size:11px;color:var(--muted)}.profil-card{display:flex;align-items:center;gap:10px;padding:10px 12px;flex-wrap:wrap;border:1.5px solid #eee;border-radius:12px;margin-bottom:8px;background:#fafafa}.profil-card-info{flex:1;min-width:120px}.profil-card-nom{font-weight:700;font-size:13px;color:var(--bleu-dark)}.profil-card-meta{font-size:11px;color:var(--muted)}.profil-card-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%;justify-content:flex-end}.profil-del-btn{font-size:12px;padding:4px 10px;border-radius:8px;border:1.5px solid var(--rouge);color:var(--rouge);background:#fff;cursor:pointer;font-family:inherit;font-weight:600}.profil-del-btn:hover{background:var(--rouge);color:#fff}.profil-edit-btn{font-size:12px;padding:4px 10px;border-radius:8px;border:1.5px solid var(--bleu);color:var(--bleu);background:#fff;cursor:pointer;font-family:inherit;font-weight:600}.profil-edit-btn:hover{background:var(--bleu);color:#fff}.temp-alerte{background:#ffebee!important;border-color:var(--rouge)!important;animation:tempPulse .5s ease}@keyframes tempPulse{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px #e539354d}}.temp-badge-nc{display:inline-block;font-size:11px;font-weight:800;padding:2px 8px;border-radius:8px;background:#ffebee;color:var(--rouge);border:1.5px solid var(--rouge);margin-left:8px;vertical-align:middle}.temp-badge-ok{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:8px;background:#e8f5e9;color:#2e7d32;border:1.5px solid #4CAF50;margin-left:8px;vertical-align:middle}.chambre-header{position:relative}.fiche-hash-badge{font-size:10px;font-family:monospace;color:#aaa;padding:4px 8px;background:#f5f5f5;border-radius:6px;margin-top:6px;display:inline-block;border:1px solid #e0e0e0;word-break:break-all}.fiche-hash-tamper{background:#ffebee!important;color:var(--rouge)!important;border-color:var(--rouge)!important;font-weight:700}.hist-global-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:4500;display:none;align-items:center;justify-content:center;padding:20px}.hist-global-inner{background:#fff;border-radius:18px;max-width:700px;width:100%;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 8px 40px #0003}.hist-global-header{padding:20px 24px 12px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:10px}.hist-global-title{font-size:17px;font-weight:800;color:var(--bleu-dark);flex:1}.hist-global-body{overflow-y:auto;flex:1;padding:16px 24px}.hist-global-item{padding:10px 0;border-bottom:1px solid #f0f0f0;font-size:13px}.hist-global-item:last-child{border:none}.hist-global-item .hg-meta{color:var(--muted);font-size:11px;margin-top:3px}.hist-global-item .hg-action{font-weight:700;color:var(--bleu-dark)}.hist-global-filters{display:flex;gap:6px;flex-wrap:wrap;padding:8px 24px 0}.export-hash-notice{font-size:11px;color:#888;margin-top:4px}.ac-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:10px}.ac-table th{background:var(--bleu-dark);color:#fff;padding:8px 10px;text-align:left;font-size:12px;white-space:nowrap}.ac-table td{padding:8px 10px;border-bottom:1px solid #eee;vertical-align:top}.ac-table tr:nth-child(2n) td{background:#f8faff}.ac-table tr:hover td{background:#eef4ff}.ac-badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 9px;border-radius:10px;white-space:nowrap}.ac-badge.ouverte{background:#fff3e0;color:#e65100;border:1px solid #FFCC80}.ac-badge.en-cours{background:#e3f2fd;color:#1565c0;border:1px solid #90CAF9}.ac-badge.cloturee{background:#e8f5e9;color:#2e7d32;border:1px solid #A5D6A7}.ac-empty{text-align:center;color:var(--muted);padding:20px;font-size:13px}.ac-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.ac-filter-btn{font-size:12px;padding:4px 12px;border-radius:20px;border:1.5px solid #ccc;background:#fff;cursor:pointer;font-family:inherit;font-weight:600;transition:all .15s}.ac-filter-btn.active{border-color:var(--bleu);background:var(--bleu);color:#fff}.ac-filter-btn:hover:not(.active){border-color:var(--bleu);color:var(--bleu)}.ac-update-btn{font-size:12px;padding:3px 10px;border-radius:8px;border:1.5px solid var(--bleu);background:#fff;color:var(--bleu);cursor:pointer;font-family:inherit;font-weight:600}.ac-update-btn:hover{background:var(--bleu);color:#fff}.ac-counter{font-size:12px;color:var(--muted);margin-left:auto}.ac-header-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.ac-section-note{font-size:12px;color:var(--muted);background:#fff8e1;border-left:3px solid var(--jaune);padding:8px 12px;border-radius:6px;margin-bottom:10px}.admin-btn svg{flex-shrink:0;opacity:.7}.admin-input-group{margin-bottom:12px}.admin-input-group label{font-size:12px;font-weight:600;color:#555;display:block;margin-bottom:5px}.admin-input{width:100%;padding:10px 14px;border-radius:10px;border:1.5px solid #ddd;font-size:14px;font-family:inherit;box-sizing:border-box}.admin-input:focus{outline:none;border-color:var(--bleu)}.admin-save-btn{padding:10px 22px;border-radius:10px;border:none;background:var(--bleu);color:#fff;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.pin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:4000;display:flex;align-items:center;justify-content:center}.pin-inner{background:#fff;border-radius:24px;padding:32px 28px;width:320px;text-align:center;box-shadow:0 12px 48px #00000040;animation:fadeInScale .2s ease}.pin-titre{font-size:18px;font-weight:800;color:var(--bleu-dark);margin-bottom:6px}.pin-sous{font-size:13px;color:#888;margin-bottom:24px}.pin-dots{display:flex;justify-content:center;gap:10px;margin-bottom:24px}.pin-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--bleu);background:transparent;transition:background .15s}.pin-dot.filled{background:var(--bleu)}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.pin-key{padding:16px;border-radius:14px;border:none;background:#f4f6ff;color:var(--bleu-dark);font-size:20px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .12s}.pin-key:hover{background:#e3eaff}.pin-key.del{background:#fff0f0;color:#c62828;font-size:16px}.pin-erreur{color:#c62828;font-size:13px;font-weight:600;min-height:20px}.pin-cancel{background:none;border:none;color:#888;font-size:13px;cursor:pointer;font-family:inherit;margin-top:8px}.pin-key.valider{background:var(--bleu);color:#fff}.pin-key.valider:hover{background:var(--bleu-dark)}.pin-key.valider:disabled{background:#ccc;cursor:not-allowed}.pin-fallback-toggle{background:none;border:none;color:var(--bleu);font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;text-decoration:underline;margin-bottom:4px}.pin-fallback{margin-bottom:10px}.pin-fallback-input{width:100%;text-align:center;letter-spacing:6px;font-size:18px;font-weight:700;padding:10px;border:1px solid #d8dde0;border-radius:10px;font-family:inherit;color:var(--bleu-dark)}.pin-fallback-input:focus{outline:none;border-color:var(--bleu)}.params-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px}.params-inner{background:#fff;border-radius:20px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 12px 48px #0003;animation:fadeInScale .22s ease}.params-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 14px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.params-titre{font-size:18px;font-weight:800;color:var(--bleu-dark)}.params-close{width:34px;height:34px;border-radius:50%;border:none;background:#e8e8e8;color:#555;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit}.params-body{padding:20px}.params-section{margin-bottom:24px}.params-section-titre{font-size:11px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px}.params-deconnexion{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:14px;border:none;background:#fff0f0;color:#c62828;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;margin-top:8px}.params-deconnexion:hover{background:#fdd}.chambre-header-editable .edit-titre-input[readonly],.zone-header-editable .edit-titre-input[readonly]{border-bottom-color:transparent;background:transparent;cursor:default;pointer-events:none}.btn-suppr-card[disabled],.btn-suppr-zone[disabled],.btn-ajouter-enceinte[disabled],.btn-ajouter-zone[disabled]{display:none!important}.sig-wrapper{border:2px dashed var(--bleu);border-radius:10px;background:#fff;position:relative;width:100%;touch-action:none;cursor:crosshair}.sig-wrapper canvas{display:block;width:100%;height:100px;border-radius:8px}.sig-toolbar{display:flex;gap:8px;margin-top:6px;justify-content:flex-end}.sig-btn{font-size:12px;padding:4px 10px;border-radius:8px;border:1px solid var(--bleu);background:#fff;color:var(--bleu);cursor:pointer;font-family:inherit;font-weight:600}.sig-btn:hover{background:var(--bleu);color:#fff}.sig-label{font-size:11px;color:var(--muted);margin-bottom:4px;font-weight:600}.fiche-verrou-banner{background:#fff3e0;border:1.5px solid #FF9800;border-radius:10px;padding:10px 16px;margin-bottom:14px;display:flex;align-items:center;gap:10px;font-size:13px;color:#e65100;font-weight:600}.fiche-verrou-banner .verrou-icon{font-size:20px}.fiche-verrou-banner button{margin-left:auto;font-size:12px;padding:4px 12px;border-radius:8px;border:1.5px solid #E65100;background:transparent;color:#e65100;cursor:pointer;font-family:inherit;font-weight:700}.fiche-verrou-banner button:hover{background:#e65100;color:#fff}.historique-section{margin-top:18px;border-top:1px solid #eee;padding-top:12px}.historique-titre{font-size:13px;font-weight:700;color:var(--bleu-dark);margin-bottom:8px}.historique-item{font-size:12px;color:#555;padding:5px 10px;border-left:3px solid var(--bleu-light);margin-bottom:6px;background:#f8faff;border-radius:0 6px 6px 0}.historique-item strong{color:var(--bleu-dark)}.completude-dot{position:absolute;top:10px;right:10px;width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.7);z-index:2}.completude-dot.vert{background:#4caf50}.completude-dot.orange{background:#ff9800}.completude-dot.rouge{background:#f44336}.completude-dot.gris{background:#fff6}.completude-legend{font-size:11px;color:#888;text-align:center;margin-bottom:12px}.completude-legend span{display:inline-flex;align-items:center;gap:4px;margin:0 8px}.completude-legend .dot{width:10px;height:10px;border-radius:50%;display:inline-block}.hist-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}.hist-modal-inner{background:#fff;border-radius:16px;padding:24px;max-width:480px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 8px 40px #0000002e}.hist-modal-titre{font-size:17px;font-weight:700;color:var(--bleu-dark);margin-bottom:16px}.archive-annees{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:28px;-webkit-user-select:none;user-select:none}.roulette-btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--bleu);background:#fff;color:var(--bleu);font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;font-family:inherit}.roulette-btn:hover{background:var(--bleu);color:#fff}.roulette-btn:disabled{opacity:.3;cursor:default}.roulette-drum{width:220px;height:80px;overflow:hidden;position:relative;margin:0 10px}.roulette-drum:before,.roulette-drum:after{content:"";position:absolute;left:0;right:0;height:22px;z-index:2;pointer-events:none}.roulette-drum:before{top:0;background:linear-gradient(to bottom,rgba(248,249,252,.95),transparent)}.roulette-drum:after{bottom:0;background:linear-gradient(to top,rgba(248,249,252,.95),transparent)}.roulette-track{display:flex;flex-direction:column;align-items:center;transition:transform .35s cubic-bezier(.25,.46,.45,.94)}.roulette-item{height:40px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:var(--muted);transition:all .35s;cursor:pointer;width:100%;gap:8px;border-radius:10px;padding:0 12px}.roulette-item.active{font-size:26px;color:var(--bleu-dark);background:#2196f314}.roulette-item .annee-badge{font-size:11px;background:var(--bleu);color:#fff;border-radius:10px;padding:1px 7px;font-weight:600}.roulette-selector{position:absolute;top:50%;left:8px;right:8px;height:40px;transform:translateY(-50%);border-top:2px solid var(--bleu);border-bottom:2px solid var(--bleu);pointer-events:none;z-index:1;border-radius:8px}.langue-scroll{max-height:220px;overflow-y:auto;border:1.5px solid #e0e0e0;border-radius:10px;-webkit-overflow-scrolling:touch}.langue-scroll .langue-item{height:44px;display:flex;align-items:center;gap:8px;padding:0 14px;font-size:15px;font-weight:600;color:var(--text);cursor:pointer;border-bottom:1px solid #f0f0f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.langue-scroll .langue-item:last-child{border-bottom:none}.langue-scroll .langue-item:hover{background:#f5f8fc}.langue-scroll .langue-item.active{background:#2196f31a;color:var(--bleu-dark)}.langue-scroll .langue-item .drapeau{font-size:18px;flex-shrink:0}.archive-mois-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}@media (max-width: 600px){.archive-mois-grid{grid-template-columns:repeat(2,1fr)}}.archive-mois-card{background:#fff;border-radius:14px;padding:16px 12px;text-align:center;box-shadow:0 2px 8px #00000012;cursor:pointer;transition:all .15s;border:2px solid transparent}.archive-mois-card:hover{border-color:var(--bleu);transform:translateY(-2px)}.archive-mois-card .mois-nom{font-weight:700;font-size:15px;margin-bottom:4px;color:var(--bleu-dark)}.archive-mois-card .mois-count{font-size:12px;color:var(--muted)}.archive-mois-card .mois-count.has-data{color:var(--vert);font-weight:600}.archive-mois-card.hotte-remplie{background:#ededed}.archive-mois-card.hotte-remplie .mois-nom{color:#8a8a8a}.hotte-badge{font-size:10px;color:#8a8a8a;font-weight:600;margin-top:2px}.archive-mois-card.etalon-fait{background:#ededed}.archive-mois-card.etalon-fait .mois-nom{color:#8a8a8a}.etalon-badge{font-size:10px;color:#4a90a4;font-weight:600;margin-top:2px}.archive-fiche-item.etalon-fait{background:#f0f6f8;border-left:3px solid #4A90A4}.archive-fiches-section{background:#fff;border-radius:14px;padding:18px;box-shadow:0 2px 8px #0000000f}.archive-fiches-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}.archive-fiches-header h3{font-size:16px;font-weight:700;color:var(--bleu-dark)}.archive-fiches-list{display:flex;flex-direction:column;gap:10px}.archive-fiche-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid #e8e8e8;border-radius:10px;cursor:pointer;transition:background .12s;gap:12px;flex-wrap:wrap}.archive-fiche-item:hover{background:#f0f7ff;border-color:var(--bleu-light)}.archive-fiche-item.hotte-remplie{background:#ededed;border-color:#d5d5d5}.archive-fiche-item.hotte-remplie:hover{background:#e4e4e4}.archive-fiche-date{font-weight:600;font-size:14px}.archive-fiche-etab{font-size:13px;color:var(--muted)}.archive-fiche-arrow{color:var(--bleu);font-size:18px}.archive-empty{text-align:center;color:var(--muted);padding:28px;font-size:14px}.fiche-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto}.fiche-modal-inner{background:#fff;border-radius:18px;max-width:820px;width:100%;padding:24px;box-shadow:0 8px 40px #0000002e;margin:auto}.fiche-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;border-bottom:1px solid #eee;padding-bottom:12px}.fiche-modal-header span{font-weight:700;font-size:17px;color:var(--bleu-dark)}.fiche-modal-close{background:none;border:none;font-size:26px;cursor:pointer;color:var(--rouge);line-height:1}.fiche-modal-body table,.rapport-contenu table{width:100%;border-collapse:collapse;margin-bottom:14px;font-size:13px}.fiche-modal-body th,.rapport-contenu th{background:var(--bleu);color:#fff;padding:7px 10px;text-align:left;font-size:12px}.fiche-modal-body td,.rapport-contenu td{padding:7px 10px;border-bottom:1px solid #f0f0f0}.fiche-modal-body tr:nth-child(2n) td,.rapport-contenu tr:nth-child(2n) td{background:#f8faff}.fiche-modal-body .section-label,.rapport-contenu .section-label{font-weight:700;font-size:13px;margin:14px 0 6px;color:var(--bleu-dark);display:flex;align-items:center;gap:8px}.fiche-modal-body .section-label span.badge-limite,.rapport-contenu .section-label span.badge-limite{font-size:11px;font-weight:600;color:var(--rouge);background:#fdecea;padding:2px 8px;border-radius:10px}.fiche-modal-body .info-grid,.rapport-contenu .info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.fiche-modal-body .info-cell,.rapport-contenu .info-cell{font-size:12px}.fiche-modal-body .info-cell strong,.rapport-contenu .info-cell strong{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.fiche-modal-body .note-box,.rapport-contenu .note-box{font-size:12px;color:var(--muted);background:#fff8e1;border-left:4px solid var(--jaune);padding:8px 12px;border-radius:6px;margin-bottom:10px}@media (max-width: 500px){.fiche-modal-body .info-grid,.rapport-contenu .info-grid{grid-template-columns:repeat(2,1fr)}}.rapport-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}@media (max-width: 600px){.rapport-cards{grid-template-columns:1fr}}.rapport-card{background:#fff;border-radius:14px;padding:18px;box-shadow:0 2px 8px #0000000f}.rapport-card-titre{font-weight:700;font-size:14px;margin-bottom:10px;color:var(--bleu-dark)}.rapport-bar-track{background:#eee;border-radius:8px;height:16px;overflow:hidden;margin-bottom:6px}.rapport-bar-fill{height:100%;border-radius:8px;transition:width .3s}.rapport-bar-fill.ok{background:linear-gradient(90deg,var(--vert),var(--vert-light))}.rapport-bar-fill.moyen{background:linear-gradient(90deg,var(--ocre),var(--ocre-light))}.rapport-bar-fill.mauvais{background:linear-gradient(90deg,var(--rouge),var(--rouge-light))}.rapport-pct{font-size:22px;font-weight:800}.rapport-pct.ok{color:var(--vert)}.rapport-pct.moyen{color:var(--ocre)}.rapport-pct.mauvais{color:var(--rouge)}.rapport-detail{font-size:12px;color:var(--muted)}.rapport-nc-item{border-left:4px solid var(--rouge);background:#fdecea;border-radius:6px;padding:8px 12px;margin-bottom:8px;font-size:13px}.rapport-nc-item strong{color:var(--rouge)}.rapport-nc-vide{border-left:4px solid var(--vert);background:#f0faf6;border-radius:6px;padding:10px 12px;margin-bottom:8px;font-size:13px;color:#2e7d32;font-weight:600}.rapport-recap-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:10px}.rapport-recap-table th{background:var(--bleu-dark);color:#fff;padding:8px 10px;text-align:left;font-size:12px}.rapport-recap-table td{padding:7px 10px;border-bottom:1px solid #eee}.rapport-recap-table tr.zero-fiche td{color:var(--rouge);font-weight:600}.temp-chart-card{background:#fff;border-radius:14px;padding:16px 18px 10px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px;page-break-inside:avoid}.temp-chart-titre{font-weight:700;font-size:14px;color:var(--bleu-dark);margin-bottom:2px}.temp-chart-limite{font-size:11px;color:var(--muted);margin-bottom:8px}.temp-chart-svg{width:100%;height:auto;display:block}.temp-chart-legende{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:4px}.temp-chart-legende span{display:inline-flex;align-items:center;gap:5px}.temp-chart-legende i{width:14px;height:3px;border-radius:2px;display:inline-block}.temp-chart-vide{font-size:12px;color:var(--muted);font-style:italic;padding:6px 0}@media print{header,footer,.fiche-actions,.btn-ajouter-enceinte,.btn-ajouter-ligne,.registre-view,.home-content,.archive-view,.fiche-modal,.btn-supprimer-enceinte,.btn-suppr-ligne,.btn-suppr-card{display:none!important}.feuille-view{display:block!important;padding:0}.wrap{max-width:100%;padding:0}body{background:#fff}.chambre-card,.etalon-section,.fiche-note,.zone-card,.temp-chart-card{box-shadow:none;border:1px solid #ddd}input,select{border:none;border-bottom:1px solid #aaa!important;background:transparent}.fiche-btn{display:none!important}}
