/* NEXUS ANACARDE — complément de e-agrement.css (même socle visuel) */
:root{--ana:#00E676;--ana-fort:#00A152;--ana-or:#D4A24C}
.sidebar-brand-logo.ana{background:linear-gradient(135deg,#B9F6CA,#00A152);display:flex;align-items:center;justify-content:center}
.sidebar-brand-logo.ana img{width:70%;height:70%}
.sidebar-brand-text p{color:var(--ana)}
.nav-item.active{background:rgba(0,161,82,.16);color:var(--ana);border-left-color:var(--ana-fort)}
.kpi-card{border-top-color:var(--ana-fort)}
.e-info{background:rgba(0,161,82,.18);color:var(--ana)}
.jauge-mini i b{background:var(--ana-fort)}
.jauge-mini i b.haut{background:var(--warning)}.jauge-mini i b.plein{background:#FF5252}
.barre-h .b i{background:var(--ana-fort)}
.barre-h .b i.front{background:var(--warning)}
.data-table tbody tr.cliquable:hover td{background:rgba(0,161,82,.08)}
.photos{display:flex;gap:8px;flex-wrap:wrap}
.photo{width:132px;border-radius:10px;overflow:hidden;background:var(--bg);border:1px solid var(--border);font-size:10.5px;cursor:pointer;text-decoration:none;color:var(--text)}
.photo img{display:block;width:100%;height:96px;object-fit:cover;background:#0d1330}
.photo .doc{height:96px;display:flex;align-items:center;justify-content:center;font-size:34px}
.photo div{padding:5px 7px;line-height:1.3}
.photo.anomalie{border-color:rgba(255,171,0,.7)}
.photo small{display:block;color:var(--text-ter)}
.piece{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;padding:8px 10px;border-radius:9px;background:var(--bg);border:1px solid var(--border);margin-bottom:6px;font-size:12px}
.piece input[type=file]{grid-column:1/-1;font-size:11.5px;color:var(--text-sec)}
.piece.obl{border-color:rgba(0,161,82,.45)}
.gps{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;margin:6px 0 12px}
.gps b{font-family:'Sora'}
.soldes{display:flex;gap:6px;flex-wrap:wrap}
.chaine{font-family:ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--text-ter);word-break:break-all}
#carte-ana{height:560px;border-radius:14px;border:1px solid var(--border)}
.leaflet-container{background:#0d1330;font-family:Inter,sans-serif}
.legende{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--text-sec);margin:8px 0}
.legende i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.ligne-op td{font-size:11.5px}
.grav-CRITIQUE{background:#C62828;color:#fff}
.ccak[hidden]{display:none!important}
.verif{max-width:560px;margin:40px auto;padding:24px;border-radius:16px;background:var(--surface);border:1px solid var(--border)}
/* ── Photos : prise de vue avec la caméra, visionneuse ── */
.prise{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;padding:8px;border-radius:10px;background:var(--bg);border:1px dashed var(--border);margin-bottom:8px}
.prise.obl{border-color:rgba(0,161,82,.55)}
.prise.faite{border-style:solid;border-color:var(--ana-fort)}
.prise img,.prise-vide{width:72px;height:72px;border-radius:8px;object-fit:cover;background:#0d1330;display:flex;align-items:center;justify-content:center;font-size:26px;cursor:zoom-in}
.prise-txt{font-size:12px;line-height:1.35;min-width:0}.prise-txt b{display:block}.prise-txt small{display:block;color:var(--text-ter)}
.obl-etoile{color:var(--ana-fort)}
.prise-act{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.prise-ajout{display:flex;gap:8px;align-items:center;margin-top:4px}.prise-ajout select{max-width:240px}
@media (max-width:640px){.prise{grid-template-columns:64px 1fr}.prise-act{grid-column:1/-1;justify-content:stretch}.prise-act .btn{flex:1}}
.cam{position:fixed;inset:0;z-index:9999;background:#000;display:flex;flex-direction:column}
.cam video{flex:1;width:100%;height:100%;object-fit:cover;background:#000}
.cam-haut{display:flex;justify-content:space-between;gap:10px;padding:12px 16px;color:#fff;font-size:14px;background:rgba(0,0,0,.6)}
.cam-bas{display:flex;justify-content:space-around;align-items:center;padding:18px 16px calc(18px + env(safe-area-inset-bottom));background:rgba(0,0,0,.6)}
.cam-btn{width:52px;height:52px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:22px}
.cam-declic{width:74px;height:74px;border-radius:50%;border:5px solid #fff;background:#E8741F;box-shadow:0 0 0 4px rgba(255,255,255,.25)}
.cam-declic:active{transform:scale(.94)}
.visio{position:fixed;inset:0;z-index:9998;background:rgba(5,10,8,.94);display:flex;align-items:center;justify-content:center}
.visio figure{margin:0;max-width:94vw;text-align:center}
.visio img{max-width:94vw;max-height:80vh;border-radius:8px;background:#111;min-width:120px;min-height:120px}
.visio figcaption{color:#e8e8e8;font-size:12.5px;margin-top:8px;line-height:1.45}
.visio-fermer{position:absolute;top:14px;right:16px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:20px}
.visio-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:64px;border:0;border-radius:10px;background:rgba(255,255,255,.12);color:#fff;font-size:34px}
.visio-nav.g{left:10px}.visio-nav.d{right:10px}
.photo{cursor:zoom-in}
.mini{position:relative;display:inline-block;width:44px;height:44px;border-radius:7px;overflow:hidden;background:#0d1330;vertical-align:middle}
.mini img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.mini i{position:absolute;right:2px;bottom:2px;font-style:normal;font-size:10px;background:rgba(0,0,0,.65);color:#fff;border-radius:6px;padding:0 4px}
.mini.vide{display:inline-flex;align-items:center;justify-content:center;color:var(--text-ter);font-size:14px}
/* ── Salle de veille ── */
.salle{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px}
#sv-carte{height:460px;border-radius:12px;border:1px solid var(--border)}
.salle-fil{max-height:540px;overflow:auto}
#o-salle:fullscreen{background:var(--bg);padding:16px;overflow:auto}
@media (max-width:900px){.salle{grid-template-columns:1fr}#sv-carte{height:320px}}

/* ── Saisie sans réseau (lot E1) ── */
.hl-etat{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:700;text-decoration:none;
  background:#e8f3ec;color:#0f5c32;border:1px solid #b9d9c4;white-space:nowrap}
.hl-etat.hors{background:#fff3e0;color:#9a4a00;border-color:#f5c58a}
.hl-etat.refus{box-shadow:inset 0 0 0 2px #d32f2f}
.hl-file{background:#fff8ec;border:1px solid #f5c58a;border-left:5px solid #e07b00;border-radius:12px;padding:12px 14px;margin-bottom:14px}
.hl-tete{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}
.hl-tete span{font-size:12px;color:#7a5a2a}
.hl-tete .btn{margin-left:auto}
.hl-note{font-size:11.5px;color:#7a5a2a;margin:8px 0 0}

/* ── Comités de veille (lot E2) ── */
.anoms{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;font-size:12.5px}
.anoms label{display:flex;gap:6px;align-items:flex-start}
