.dashboard-page[data-v-f27b59d4]{display:flex;flex-direction:column;gap:1rem}.cards.four-cols[data-v-f27b59d4]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}@media(max-width:900px){.cards.four-cols[data-v-f27b59d4]{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi-card[data-v-f27b59d4]{background:#fff;border-radius:10px;box-shadow:0 6px 14px #0f172a0f;border:1px solid rgba(148,163,184,.25);overflow:hidden;display:flex;flex-direction:column}.card-header-stripe[data-v-f27b59d4]{height:4px;background:linear-gradient(90deg,var(--lactalis-bleu-principal),var(--lactalis-bleu-clair))}.kpi-card .card-body[data-v-f27b59d4]{padding:.9rem 1rem .85rem}.kpi-card h3[data-v-f27b59d4]{margin:0 0 .2rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.metric[data-v-f27b59d4]{font-size:1.8rem;font-weight:700;margin:.1rem 0;color:#111827}.kpi-card small.muted[data-v-f27b59d4]{font-size:.75rem;color:#9ca3af}.alert-row[data-v-f27b59d4]{display:flex;justify-content:space-between;gap:1.5rem}.text-danger[data-v-f27b59d4]{color:var(--color-danger)}.text-warning[data-v-f27b59d4]{color:var(--color-warning)}.text-success[data-v-f27b59d4]{color:var(--color-success)}.text-primary[data-v-f27b59d4]{color:var(--color-primary)}.d-block[data-v-f27b59d4]{display:block}.charts-row[data-v-f27b59d4]{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-top:1rem}@media(max-width:768px){.charts-row[data-v-f27b59d4]{grid-template-columns:1fr}}.chart-card[data-v-f27b59d4]{background:var(--card-bg, #fff);border-radius:10px;padding:.9rem 1rem 1rem;border:1px solid rgba(148,163,184,.4);box-shadow:0 4px 12px #0f172a0d}.chart-wide[data-v-f27b59d4]{min-height:200px}.chart-card.chart-wide.has-horizontal-scroll[data-v-f27b59d4]{min-width:0}.chart-card.has-horizontal-scroll .bar-chart-scroll-wrapper[data-v-f27b59d4]{overflow-x:auto;overflow-y:hidden;max-width:100%;width:100%;-webkit-overflow-scrolling:touch;padding-bottom:6px}.chart-header h4[data-v-f27b59d4]{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted, #6c757d);margin:0 0 .75rem}.vehicle-type-chart[data-v-f27b59d4]{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:center}@media(max-width:520px){.vehicle-type-chart[data-v-f27b59d4]{grid-template-columns:1fr}}.doughnut-wrapper[data-v-f27b59d4]{position:relative;width:120px;height:120px;margin:0 auto}.doughnut-chart[data-v-f27b59d4]{width:100%;height:100%;transform:rotate(-90deg)}.doughnut-bg[data-v-f27b59d4]{fill:none;stroke:#e5e7eb;stroke-width:14}.doughnut-segment[data-v-f27b59d4]{fill:none;stroke-width:14;stroke-linecap:round;transition:stroke-dashoffset .3s ease}.doughnut-center[data-v-f27b59d4]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.doughnut-total[data-v-f27b59d4]{font-size:1.2rem;font-weight:700;color:#111827}.doughnut-label[data-v-f27b59d4]{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#6b7280}.bar-chart[data-v-f27b59d4]{display:flex;align-items:flex-end;gap:4px;height:160px}.bar-group[data-v-f27b59d4]{flex:1;display:flex;flex-direction:column;align-items:center}.bar-stack[data-v-f27b59d4]{display:flex;flex-direction:row;align-items:flex-end;justify-content:center;gap:2px;width:100%;max-width:32px;height:130px}.bar[data-v-f27b59d4]{flex:1;min-height:2px;border-radius:3px 3px 0 0}.bar-entrances[data-v-f27b59d4]{background:#28a745d9}.bar-exits[data-v-f27b59d4]{background:#6c757db3}.bar-unauthorized[data-v-f27b59d4]{background:#dc3545e6}.bar-label[data-v-f27b59d4]{font-size:.65rem;margin-top:4px;overflow:hidden;text-overflow:ellipsis;max-width:100%}.chart-legend[data-v-f27b59d4]{display:flex;gap:1rem;margin-top:.6rem;font-size:.75rem;color:var(--muted);flex-wrap:wrap}.chart-legend-top[data-v-f27b59d4]{margin-bottom:.25rem;margin-top:0}.chart-legend em[data-v-f27b59d4]{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}.legend-entrances[data-v-f27b59d4]{background:#28a745d9}.legend-exits[data-v-f27b59d4]{background:#6c757db3}.legend-unauthorized[data-v-f27b59d4]{background:#dc3545e6}.doughnut-legend[data-v-f27b59d4]{list-style:none;padding:0;margin:0;font-size:.85rem}.doughnut-legend li[data-v-f27b59d4]{margin-bottom:.25rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.doughnut-legend .legend-name[data-v-f27b59d4]{flex:1}.doughnut-legend .legend-value[data-v-f27b59d4]{font-weight:600}.doughnut-legend .dot[data-v-f27b59d4]{display:inline-block;width:10px;height:10px;border-radius:999px}.no-data[data-v-f27b59d4]{padding:.25rem 0}.tag-bars[data-v-f27b59d4]{display:flex;flex-direction:column;gap:.5rem}.tag-bar-row[data-v-f27b59d4]{display:grid;grid-template-columns:110px 1fr 2.2rem;align-items:center;gap:.5rem;font-size:.85rem}.tag-name[data-v-f27b59d4]{color:#4b5563}.tag-bar-wrap[data-v-f27b59d4]{background:var(--border, #eee);border-radius:999px;height:18px;overflow:hidden}.tag-bar[data-v-f27b59d4]{height:100%;background:var(--color-primary);border-radius:999px}.tag-count[data-v-f27b59d4]{text-align:right}.stato-grid[data-v-f27b59d4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;text-align:center;margin-bottom:1rem}.stato-cell[data-v-f27b59d4]{border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:.75rem;background:#f9fafb}.stato-value[data-v-f27b59d4]{font-size:1.5rem;font-weight:700;display:block}.stato-cell small.muted[data-v-f27b59d4]{font-size:.75rem;color:#6b7280}.stato-cell .badge[data-v-f27b59d4]{display:inline-block;margin-top:.3rem;font-size:.7rem;padding:.2rem .4rem;background:var(--color-warning, #fbbf24);color:#111827;border-radius:999px}.quick-actions[data-v-f27b59d4]{display:flex;flex-wrap:wrap;gap:.5rem}.btn-sm[data-v-f27b59d4]{padding:.35rem .75rem;font-size:.8rem;border-radius:999px;background:var(--color-primary);color:#fff;text-decoration:none}.btn-sm[data-v-f27b59d4]:hover{opacity:.92}.filter-bar[data-v-f27b59d4]{margin-top:1.5rem;background:#f9fafb;border-radius:10px;padding:.9rem 1rem;border:1px solid rgba(148,163,184,.5)}.filter-form[data-v-f27b59d4]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.filter-group[data-v-f27b59d4]{display:flex;flex-direction:column;min-width:150px}.filter-form label[data-v-f27b59d4]{display:block;font-size:.75rem;color:var(--muted, #6b7280);margin-bottom:2px;text-transform:uppercase;letter-spacing:.06em}.filter-form select[data-v-f27b59d4],.filter-form input[data-v-f27b59d4]{padding:.4rem .55rem;border-radius:6px;border:1px solid #d1d5db;font-size:.85rem}.btn-primary[data-v-f27b59d4]{padding:.55rem 1.2rem;background:var(--color-primary);color:#fff;border:none;border-radius:999px;cursor:pointer;font-size:.9rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.btn-primary[data-v-f27b59d4]:hover{opacity:.95}.btn-search[data-v-f27b59d4]{margin-left:auto}@media(max-width:768px){.btn-search[data-v-f27b59d4]{width:100%}}.vehicles-page[data-v-cdef6c26]{display:flex;flex-direction:column;gap:1rem}.btn-header[data-v-cdef6c26]:hover{filter:brightness(.98)}.vehicles-table[data-v-cdef6c26]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-cdef6c26]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-cdef6c26]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-cdef6c26]:hover{color:var(--color-primary)}.sort-icon[data-v-cdef6c26]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-cdef6c26]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-cdef6c26]{border-bottom:none}.cell-plate strong[data-v-cdef6c26]{font-weight:600}.plate-link[data-v-cdef6c26]{color:var(--color-primary, #1d4ed8);text-decoration:none}.plate-link[data-v-cdef6c26]:hover{text-decoration:underline}.cell-actions[data-v-cdef6c26]{white-space:nowrap}.badge[data-v-cdef6c26]{padding:.15rem .55rem;border-radius:999px;font-size:.75rem;margin-right:.25rem;color:#fff}.cell-auth .badge-success[data-v-cdef6c26]{background:#15803d}.cell-auth .badge-warning[data-v-cdef6c26]{background:#ca8a04;color:#fff}.cell-auth .badge-secondary[data-v-cdef6c26]{background:#6b7280}.cell-auth .badge-auth-none[data-v-cdef6c26]{background:#9ca3af;color:#fff}.pagination[data-v-cdef6c26]{display:flex;align-items:center;gap:1rem;margin-top:.75rem;padding:0 .25rem;font-size:.85rem}.pagination button[data-v-cdef6c26]{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.pagination button[data-v-cdef6c26]:disabled{opacity:.6;cursor:default}.btn-sm[data-v-cdef6c26]{padding:.25rem .55rem;font-size:.8rem;margin-right:.25rem;text-decoration:none;border-radius:999px}.btn-outline[data-v-cdef6c26]{border:1px solid var(--border, #d1d5db);color:inherit;background:#fff}.detail-grid[data-v-c6ca721c]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.detail-grid[data-v-c6ca721c]{grid-template-columns:1fr}}.info-table[data-v-c6ca721c]{width:100%}.info-table th[data-v-c6ca721c]{width:35%;text-align:left;padding:.35rem 0}.badge[data-v-c6ca721c]{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;margin-right:.25rem;color:#fff}.badge-success[data-v-c6ca721c]{background:var(--color-success);color:#fff}.badge-warning[data-v-c6ca721c]{background:#e0a800;color:#212529}.badge-secondary[data-v-c6ca721c]{background:#6b7280;color:#fff}.card-authorizations[data-v-c6ca721c],.card-booking-slots[data-v-c6ca721c]{grid-column:1 / -1}.slots-site-group[data-v-c6ca721c]{margin-bottom:1rem}.slots-site-name[data-v-c6ca721c]{font-size:.95rem;font-weight:600;margin:0 0 .4rem;color:var(--color-primary, #1e3a5f)}.slots-day-group[data-v-c6ca721c]{margin-bottom:.75rem;padding-left:.5rem}.slots-day-label[data-v-c6ca721c]{font-size:.82rem;font-weight:500;color:#6b7280;margin-bottom:.3rem;text-transform:capitalize}.slots-list[data-v-c6ca721c]{display:flex;flex-direction:column;gap:.3rem}.slot-item[data-v-c6ca721c]{display:flex;align-items:center;gap:.75rem;padding:.4rem .65rem;border-radius:6px;border-left:4px solid #d1d5db;background:#f9fafb;font-size:.82rem}.slot-active[data-v-c6ca721c]{border-left-color:var(--color-success, #16a34a);background:#f0fdf4}.slot-upcoming[data-v-c6ca721c]{border-left-color:var(--color-primary, #2563eb);background:#eff6ff}.slot-past[data-v-c6ca721c]{border-left-color:#9ca3af;background:#f3f4f6;opacity:.7}.slot-time[data-v-c6ca721c]{font-weight:600;min-width:100px}.slot-source[data-v-c6ca721c]{color:#4b5563}.slot-area[data-v-c6ca721c]{color:#6b7280;font-style:italic}.slot-status-badge[data-v-c6ca721c]{margin-left:auto;padding:.1rem .45rem;border-radius:999px;font-size:.7rem;font-weight:600}.slot-badge-active[data-v-c6ca721c]{background:var(--color-success, #16a34a);color:#fff}.slot-badge-upcoming[data-v-c6ca721c]{background:var(--color-primary, #2563eb);color:#fff}.slot-badge-past[data-v-c6ca721c]{background:#9ca3af;color:#fff}.btn-sm[data-v-c6ca721c]{display:inline-flex;align-items:center;margin-top:.5rem;padding:.35rem .75rem;font-size:.8rem;font-weight:500;border-radius:999px;background:var(--color-primary);color:#fff;text-decoration:none}.btn-sm[data-v-c6ca721c]:hover{opacity:.92}.delete-overlay[data-v-c6ca721c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.delete-dialog[data-v-c6ca721c]{background:#fff;border-radius:12px;padding:1.5rem;max-width:420px;width:90%;box-shadow:0 8px 30px #00000026}.delete-dialog h3[data-v-c6ca721c]{margin:0 0 .75rem;font-size:1.1rem}.delete-warn[data-v-c6ca721c]{color:var(--color-danger);font-size:.85rem}.delete-actions[data-v-c6ca721c]{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.delete-btn-cancel[data-v-c6ca721c],.delete-btn-confirm[data-v-c6ca721c]{border:none;border-radius:8px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer}.delete-btn-cancel[data-v-c6ca721c]{background:#e5e7eb;color:#374151}.delete-btn-confirm[data-v-c6ca721c]{background:var(--color-danger);color:#fff}.delete-btn-confirm[data-v-c6ca721c]:disabled,.delete-btn-cancel[data-v-c6ca721c]:disabled{opacity:.5;cursor:default}.auth-msg[data-v-de99b153]{margin:0 0 .75rem}.vehicle-edit-auth .form-grid[data-v-de99b153]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.vehicle-edit-auth .form-field-wide[data-v-de99b153]{grid-column:1 / -1}.vehicle-edit-auth .form-label[data-v-de99b153]{display:block;font-size:.85rem;font-weight:600;color:#1b1d21;margin-bottom:.35rem}.vehicle-edit-auth .form-input[data-v-de99b153]{width:100%;border:1px solid #d7dbe7;border-radius:10px;padding:.55rem .75rem;font-size:.95rem;background:#fff}.vehicle-edit-auth .field-error[data-v-de99b153]{margin:.35rem 0 0;color:#b42318;font-size:.85rem}.vehicle-edit-auth .form-error-inline[data-v-de99b153]{margin:.25rem 0 0}.vehicle-edit-auth .tags-grid[data-v-de99b153]{display:flex;flex-wrap:wrap;gap:.5rem}.vehicle-edit-auth .tag-checkbox[data-v-de99b153]{margin:0}.vehicle-edit-auth .tag-name[data-v-de99b153]{font-size:.9rem;font-weight:500}.vehicle-edit-auth .site-pill[data-v-de99b153]{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(0,75,133,.2);border-radius:999px;padding:.35rem .6rem;background:var(--lactalis-bleu-fond);color:var(--lactalis-bleu-principal);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.vehicle-edit-auth .form-actions[data-v-de99b153]{display:flex;justify-content:flex-end;gap:.5rem}.vehicle-edit-auth .auth-add-actions[data-v-de99b153]{margin-top:0}.vehicle-edit-auth .btn-primary[data-v-de99b153],.vehicle-edit-auth .btn-secondary[data-v-de99b153]{border:0;border-radius:999px;padding:.55rem .95rem;font-size:.95rem;cursor:pointer}.vehicle-edit-auth .btn-primary[data-v-de99b153]{background:#4f7cff;color:#fff}.vehicle-edit-auth .btn-secondary[data-v-de99b153]{background:#e9ecf5;color:#1b1d21}.vehicle-edit-auth .btn-primary[data-v-de99b153]:disabled,.vehicle-edit-auth .btn-secondary[data-v-de99b153]:disabled{opacity:.65;cursor:not-allowed}.vehicle-edit-auth .btn-auth-remove[data-v-de99b153]{flex-shrink:0;padding:.4rem .75rem;font-size:.85rem}.auth-existing-list[data-v-de99b153]{display:flex;flex-direction:column;gap:.65rem}.auth-existing-row[data-v-de99b153]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem;padding:.5rem 0;border-bottom:1px solid #e9ecf5}.auth-existing-row[data-v-de99b153]:last-child{border-bottom:none}.auth-existing-row--editing[data-v-de99b153]{flex-direction:column;align-items:stretch;gap:.75rem}.auth-edit-block[data-v-de99b153]{width:100%}.auth-edit-head[data-v-de99b153]{margin-bottom:.25rem}.auth-edit-grid[data-v-de99b153]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin-bottom:.75rem}.auth-edit-actions[data-v-de99b153]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.auth-existing-actions[data-v-de99b153]{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;flex-shrink:0}.auth-existing-main[data-v-de99b153]{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-width:0}.auth-existing-site[data-v-de99b153]{font-weight:600;color:#1b1d21}.auth-existing-dates[data-v-de99b153]{font-size:.85rem}.auth-badge[data-v-de99b153]{display:inline-block;padding:.12rem .45rem;border-radius:999px;font-size:.7rem;font-weight:600}.auth-badge-ok[data-v-de99b153]{background:var(--color-success, #16a34a);color:#fff}.auth-badge-warn[data-v-de99b153]{background:#e0a800;color:#212529}.auth-badge-off[data-v-de99b153]{background:#6b7280;color:#fff}@media(max-width:860px){.vehicle-edit-auth .form-grid[data-v-de99b153],.auth-edit-grid[data-v-de99b153]{grid-template-columns:1fr}}.new-vehicle-page[data-v-01d4e64b]{display:flex;flex-direction:column;gap:1rem}.form-card[data-v-01d4e64b]{padding:1rem}.form-grid[data-v-01d4e64b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.form-field-wide[data-v-01d4e64b]{grid-column:1 / -1}.form-label[data-v-01d4e64b]{display:block;font-size:.85rem;font-weight:600;color:#1b1d21;margin-bottom:.35rem}.form-input[data-v-01d4e64b],.form-select[data-v-01d4e64b],.form-textarea[data-v-01d4e64b]{width:100%;border:1px solid #d7dbe7;border-radius:10px;padding:.55rem .75rem;font-size:.95rem;background:#fff}.form-textarea[data-v-01d4e64b]{resize:vertical}.field-error[data-v-01d4e64b]{margin:.35rem 0 0;color:#b42318;font-size:.85rem}.form-error[data-v-01d4e64b]{margin:.75rem 0 0}.tags-grid[data-v-01d4e64b]{display:flex;flex-wrap:wrap;gap:.5rem}.tag-pill[data-v-01d4e64b]{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(0,75,133,.2);border-radius:999px;padding:.35rem .6rem;background:var(--lactalis-bleu-fond);color:var(--lactalis-bleu-principal);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.tag-checkbox[data-v-01d4e64b]{margin:0}.tag-name[data-v-01d4e64b]{font-size:.9rem;font-weight:500}.site-pill[data-v-01d4e64b]{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(0,75,133,.2);border-radius:999px;padding:.35rem .6rem;background:var(--lactalis-bleu-fond);color:var(--lactalis-bleu-principal);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.form-actions[data-v-01d4e64b]{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.btn-primary[data-v-01d4e64b],.btn-secondary[data-v-01d4e64b]{border:0;border-radius:999px;padding:.55rem .95rem;font-size:.95rem;cursor:pointer}.btn-primary[data-v-01d4e64b]{background:#4f7cff;color:#fff}.btn-secondary[data-v-01d4e64b]{background:#e9ecf5;color:#1b1d21}.btn-primary[data-v-01d4e64b]:disabled,.btn-secondary[data-v-01d4e64b]:disabled{opacity:.65;cursor:not-allowed}@media(max-width:860px){.form-grid[data-v-01d4e64b]{grid-template-columns:1fr}}.sites-page[data-v-40d14a3f]{display:flex;flex-direction:column;gap:1rem}.site-cards[data-v-40d14a3f]{margin-top:.25rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.site-card[data-v-40d14a3f]{background:#fff;border-radius:10px;padding:.85rem 1rem;border:1px solid rgba(148,163,184,.5);box-shadow:0 4px 10px #0f172a0a;cursor:pointer;transition:box-shadow .2s ease,border-color .2s ease,transform .1s ease}.site-card.active[data-v-40d14a3f]{border-color:var(--color-primary);box-shadow:0 6px 14px #5850ec40}.site-card h3[data-v-40d14a3f]{margin:0 0 .25rem;font-size:1rem;font-weight:600}.address[data-v-40d14a3f]{margin:.25rem 0;font-size:.85rem}.muted[data-v-40d14a3f]{color:#6b7280;font-size:.8rem}.small[data-v-40d14a3f]{font-size:.75rem}.btn-sm[data-v-40d14a3f]{display:inline-block;margin-top:.5rem;padding:.3rem .7rem;font-size:.8rem;border-radius:999px;border:1px solid #d1d5db;background:#fff}.site-detail-wrapper[data-v-40d14a3f]{margin-top:1.25rem}.site-detail-header[data-v-40d14a3f]{padding:.6rem 1.1rem;background:var(--color-primary);color:#fff;border-radius:8px 8px 0 0}.site-detail-header h3[data-v-40d14a3f]{margin:0;font-size:1.1rem;font-weight:600}.site-detail-grid[data-v-40d14a3f]{background:#f3f4f6;padding:.75rem;border-radius:0 0 8px 8px;border:1px solid rgba(148,163,184,.4);border-top:none;display:grid;grid-template-columns:1.5fr 1.3fr 1.3fr;gap:.75rem}@media(max-width:1024px){.site-detail-grid[data-v-40d14a3f]{grid-template-columns:1fr}}.card[data-v-40d14a3f]{background:#fff;border-radius:8px;padding:.75rem 1rem;border:1px solid #e5e7eb}.card h4[data-v-40d14a3f]{margin:0 0 .5rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.info-list[data-v-40d14a3f]{margin:0;padding:0}.info-row[data-v-40d14a3f]{display:grid;grid-template-columns:110px 1fr;gap:.5rem;padding:.35rem 0;font-size:.85rem;border-bottom:1px solid #f3f4f6}.info-row[data-v-40d14a3f]:last-child{border-bottom:none}.info-row dt[data-v-40d14a3f]{font-weight:600;color:#4b5563}.info-row dd[data-v-40d14a3f]{margin:0;color:#111827}.status-pill[data-v-40d14a3f]{display:inline-flex;align-items:center;justify-content:center;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:500}.status-active[data-v-40d14a3f]{background:var(--color-success);color:#fff}.status-inactive[data-v-40d14a3f]{background:#e5e7eb;color:#374151}.camera-list[data-v-40d14a3f]{list-style:none;margin:0;padding:0}.camera-row[data-v-40d14a3f]{display:flex;align-items:center;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid #f3f4f6;font-size:.85rem}.camera-row[data-v-40d14a3f]:last-child{border-bottom:none}.camera-main[data-v-40d14a3f]{display:flex;flex-direction:column}.camera-name[data-v-40d14a3f]{font-weight:500;color:#111827}.camera-sub[data-v-40d14a3f]{font-size:.75rem;color:#6b7280}.events-table[data-v-40d14a3f]{width:100%;border-collapse:collapse;font-size:.85rem}.events-table thead th[data-v-40d14a3f]{padding:.45rem .4rem;border-bottom:1px solid #e5e7eb;text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.events-table tbody td[data-v-40d14a3f]{padding:.4rem;border-bottom:1px solid #f3f4f6}.link-plate[data-v-40d14a3f]{color:var(--color-primary);text-decoration:none}.link-plate[data-v-40d14a3f]:hover{text-decoration:underline}.events-pagination[data-v-40d14a3f]{display:flex;align-items:center;gap:1rem;margin-top:.75rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.events-pagination .btn-pag[data-v-40d14a3f]{padding:.35rem .75rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;font-size:.85rem;cursor:pointer}.events-pagination .btn-pag[data-v-40d14a3f]:hover:not(:disabled){background:#f9fafb}.events-pagination .btn-pag[data-v-40d14a3f]:disabled{opacity:.6;cursor:default}.events-page-info[data-v-40d14a3f]{font-size:.85rem;color:#6b7280}.badge-entry[data-v-40d14a3f]{background:var(--color-success);color:#fff}.badge-exit[data-v-40d14a3f]{background:var(--color-danger);color:#fff}.badge-denied[data-v-40d14a3f]{background:#b45309;color:#fff}.detail-grid[data-v-4e051e0b]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.detail-grid[data-v-4e051e0b]{grid-template-columns:1fr}}.info-table th[data-v-4e051e0b]{width:35%;text-align:left;padding:.35rem 0}.camera-list[data-v-4e051e0b]{list-style:none;padding:0;margin:0}.camera-item[data-v-4e051e0b]{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border, #eee)}.badge-success[data-v-4e051e0b]{background:var(--color-success);color:#fff}.badge-secondary[data-v-4e051e0b]{background:#6b7280;color:#fff}.events-page[data-v-14a3a4a7]{--badge-confidence-bg: #343a40;--badge-camera-bg: var(--lactalis-bleu-principal)}.loading-msg[data-v-14a3a4a7]{margin-top:1rem}.table-card[data-v-14a3a4a7]{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:1.25rem;overflow:hidden;padding:0}.table-wrap[data-v-14a3a4a7]{overflow-x:auto}.events-table[data-v-14a3a4a7]{width:100%;border-collapse:collapse}.events-table thead th[data-v-14a3a4a7]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;text-align:left}.events-table thead .th-sortable[data-v-14a3a4a7]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.events-table thead .th-sortable[data-v-14a3a4a7]:hover{color:var(--color-primary)}.sort-icon[data-v-14a3a4a7]{margin-left:.25rem;font-size:.75rem;opacity:.9}.events-table tbody td[data-v-14a3a4a7]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem;color:#1b1d21;vertical-align:middle}.events-table tbody tr:last-child td[data-v-14a3a4a7]{border-bottom:none}.col-time[data-v-14a3a4a7]{white-space:nowrap}.col-license-plate .link-plate[data-v-14a3a4a7]{color:var(--color-primary);text-decoration:none;font-weight:600}.col-license-plate .link-plate[data-v-14a3a4a7]:hover{text-decoration:underline}.col-confidence[data-v-14a3a4a7]{white-space:nowrap;text-align:left}.badge-confidence[data-v-14a3a4a7]{display:inline-block;padding:2px 8px;background:var(--badge-confidence-bg);color:#fff;border-radius:999px;font-size:.75rem;font-weight:500}.badge-camera[data-v-14a3a4a7]{display:inline-block;padding:4px 10px;background:var(--badge-camera-bg);color:#fff;border-radius:999px;font-size:.8125rem}.badge-status[data-v-14a3a4a7]{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;color:#fff}.badge-status-entry[data-v-14a3a4a7]{background:var(--color-success)}.badge-status-exit[data-v-14a3a4a7]{background:var(--color-primary)}.badge-status-denied[data-v-14a3a4a7]{background:var(--color-danger)}.col-tags .badge-tag[data-v-14a3a4a7]{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;color:#fff;margin-right:.25rem}.col-tags .badge-tag[data-v-14a3a4a7]:last-child{margin-right:0}.type-icon[data-v-14a3a4a7]{display:inline-flex;align-items:center;margin-right:.35rem;color:var(--lactalis-bleu-moyen);vertical-align:middle}.type-icon svg[data-v-14a3a4a7]{flex-shrink:0}.col-image[data-v-14a3a4a7]{width:1%;white-space:nowrap}.link-evidence[data-v-14a3a4a7]{color:var(--color-primary);text-decoration:none}.link-evidence-thumb[data-v-14a3a4a7]{display:inline-flex;align-items:center;justify-content:center}.evidence-thumb[data-v-14a3a4a7]{width:40px;height:40px;object-fit:cover;border-radius:6px;display:block;border:1px solid #e5e7eb}.evidence-thumb[data-v-14a3a4a7]:hover{opacity:.9}.text-center[data-v-14a3a4a7]{text-align:center;color:#6c757d;padding:1.5rem!important}.pagination[data-v-14a3a4a7]{display:flex;align-items:center;gap:1rem;margin-top:.75rem;padding:0 .25rem;font-size:.85rem;border-top:1px solid #e5e7eb}.pagination button[data-v-14a3a4a7]{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.pagination button[data-v-14a3a4a7]:disabled{opacity:.6;cursor:default}.parking-page[data-v-43467dd4]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-43467dd4],.error[data-v-43467dd4]{margin:0}.cards.metrics-kpi-grid[data-v-43467dd4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}@media(max-width:1100px){.cards.metrics-kpi-grid[data-v-43467dd4]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.cards.metrics-kpi-grid[data-v-43467dd4]{grid-template-columns:1fr}}.kpi-card[data-v-43467dd4]{background:#fff;border-radius:10px;box-shadow:0 6px 14px #0f172a0f;border:1px solid rgba(148,163,184,.25);overflow:hidden;display:flex;flex-direction:column}.card-header-stripe[data-v-43467dd4]{height:4px;background:linear-gradient(90deg,var(--lactalis-bleu-principal),var(--lactalis-bleu-clair))}.kpi-card .card-body[data-v-43467dd4]{padding:.9rem 1rem .85rem}.kpi-card h3[data-v-43467dd4]{margin:0 0 .2rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.kpi-card .metric[data-v-43467dd4]{font-size:1.8rem;font-weight:700;margin:.1rem 0;color:#111827}.kpi-btn-dettagli[data-v-43467dd4]{display:inline-block;align-self:flex-start;margin-top:.5rem;padding:.4rem .9rem;font-size:.85rem;font-weight:500;color:var(--color-primary);background:var(--lactalis-bleu-fond);border:1px solid var(--lactalis-bleu-clair);border-radius:6px;text-decoration:none}.kpi-btn-dettagli[data-v-43467dd4]:hover{background:#004b8514;color:var(--lactalis-bleu-principal)}.kpi-card small.muted[data-v-43467dd4]{font-size:.75rem;color:#9ca3af}.kpi-card .text-warning[data-v-43467dd4]{color:var(--color-warning)}.capacity-cards[data-v-43467dd4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-bottom:1.5rem}.capacity-card[data-v-43467dd4]{background:#fff;border-radius:8px;padding:1rem 1.25rem;box-shadow:0 2px 8px #00000014;border:1px solid #eee;display:flex;flex-direction:column;gap:.5rem}.card-site-name[data-v-43467dd4]{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1b1d21}.capacity-row[data-v-43467dd4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:.35rem 0 .25rem;padding:.45rem .35rem;background:#f8fafc;border-radius:8px;border:1px solid #e8ecf1;align-items:stretch}.capacity-cell[data-v-43467dd4]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;text-align:center;padding:0 .2rem;min-width:0}.capacity-cell[data-v-43467dd4]:not(:last-child){border-right:1px solid #e2e8f0}.capacity-num[data-v-43467dd4]{font-size:1.05rem;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.capacity-num.num-full[data-v-43467dd4]{color:var(--color-danger)}.capacity-num.num-ok[data-v-43467dd4]{color:#166534}.capacity-num.num-muted[data-v-43467dd4]{color:#64748b}.capacity-num.num-booked[data-v-43467dd4]{color:#b45309}.capacity-num.num-empty[data-v-43467dd4]{color:var(--color-danger)}.capacity-num.num-free[data-v-43467dd4]{color:#166534}.capacity-caption[data-v-43467dd4]{font-size:.62rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b;line-height:1.2;white-space:nowrap}.alert[data-v-43467dd4]{padding:.5rem .75rem;border-radius:6px;margin:.25rem 0;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.alert-danger[data-v-43467dd4]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-icon[data-v-43467dd4]{flex-shrink:0}.alert-warning[data-v-43467dd4]{background:#fff3cd;color:#856404;border:1px solid #ffeeba}.presence-page[data-v-04b22112]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-04b22112],.error[data-v-04b22112]{margin:0}.link-plate[data-v-04b22112]{color:var(--color-primary, #1d4ed8);text-decoration:none;font-weight:600}.link-plate[data-v-04b22112]:hover{text-decoration:underline}.table-card[data-v-04b22112]{margin-bottom:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e8e8e8;overflow:hidden}.vehicles-table[data-v-04b22112]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-04b22112]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-04b22112]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-04b22112]:hover{color:var(--color-primary)}.sort-icon[data-v-04b22112]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-04b22112]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-04b22112]{border-bottom:none}.vehicles-table .text-center[data-v-04b22112]{text-align:center;padding:1.5rem;color:#6b7280}.badge-pill[data-v-04b22112]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:700}.badge-presente[data-v-04b22112]{background:var(--color-success);color:#fff}.badge-uscito[data-v-04b22112]{background:#6c757d;color:#fff}.pagination[data-v-04b22112]{display:flex;align-items:center;gap:1rem;margin-top:.75rem;margin-bottom:.75rem;padding:0 .75rem;font-size:.85rem}.pagination button[data-v-04b22112]{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.pagination button[data-v-04b22112]:disabled{opacity:.6;cursor:default}.dwell-alerts-page[data-v-7556d0bf]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-7556d0bf],.error[data-v-7556d0bf]{margin:0}.table-card[data-v-7556d0bf]{margin-bottom:.75rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e8e8e8;min-width:0}.table-scroll[data-v-7556d0bf]{overflow-x:auto;-webkit-overflow-scrolling:touch}.vehicles-table[data-v-7556d0bf]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-7556d0bf]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-7556d0bf]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-7556d0bf]:hover{color:var(--color-primary)}.sort-icon[data-v-7556d0bf]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-7556d0bf]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-7556d0bf]{border-bottom:none}.vehicles-table .text-center[data-v-7556d0bf]{text-align:center;padding:1.5rem;color:#6b7280}.cell-actions[data-v-7556d0bf]{white-space:nowrap}.link-plate[data-v-7556d0bf]{color:var(--color-primary, #1d4ed8);text-decoration:none;font-weight:600}.link-plate[data-v-7556d0bf]:hover{text-decoration:underline}.badge-pill[data-v-7556d0bf]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:700}.badge-tempo-superato[data-v-7556d0bf]{background:var(--color-danger);color:#fff}.badge-avviso[data-v-7556d0bf]{background:var(--color-warning);color:#fff}.badge-attivo[data-v-7556d0bf]{background:var(--color-warning);color:#1b1d21}.badge-risolto[data-v-7556d0bf]{background:var(--color-success);color:#fff}.btn-risolvi[data-v-7556d0bf]{padding:.35rem .75rem;background:var(--color-success);color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer}.btn-risolvi[data-v-7556d0bf]:hover{background:#218838}.pagination[data-v-7556d0bf]{display:flex;align-items:center;gap:1rem;flex-shrink:0;margin-top:.25rem;margin-bottom:.5rem;padding:0 .25rem;font-size:.85rem}.pagination button[data-v-7556d0bf]{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.pagination button[data-v-7556d0bf]:disabled{opacity:.6;cursor:default}.page-info[data-v-7556d0bf]{color:#6b7280}.page-total[data-v-7556d0bf]{margin-left:.35rem;font-weight:500;color:#374151}.people-count-page[data-v-c0a53264]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-c0a53264],.error[data-v-c0a53264]{margin:0}.error[data-v-c0a53264]{color:var(--color-danger)}.table-card[data-v-c0a53264]{margin-bottom:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e8e8e8;overflow:hidden}.vehicles-table[data-v-c0a53264]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-c0a53264]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-c0a53264]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-c0a53264]:hover{color:var(--color-primary)}.sort-icon[data-v-c0a53264]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-c0a53264]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-c0a53264]{border-bottom:none}.vehicles-table .text-center[data-v-c0a53264]{text-align:center;padding:1.5rem;color:#6b7280}.parking-spaces-page[data-v-b1ceec36]{display:flex;flex-direction:column;gap:1rem}.kpi-by-type[data-v-b1ceec36]{background:#fff;border-radius:8px;padding:1rem 1.25rem;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.kpi-by-type-header[data-v-b1ceec36]{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.kpi-by-type-title[data-v-b1ceec36]{font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.kpi-by-type-total[data-v-b1ceec36]{font-size:.85rem;font-weight:600;color:#374151}.kpi-by-type-row[data-v-b1ceec36]{display:flex;flex-wrap:wrap;gap:.65rem}.kpi-type-card[data-v-b1ceec36]{flex:1 1 8rem;min-width:7rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.65rem .5rem;border-radius:8px;background:#f9fafb;border:1px solid #e5e7eb}.kpi-type-name[data-v-b1ceec36]{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;text-align:center;line-height:1.2}.kpi-type-value[data-v-b1ceec36]{font-size:1.35rem;font-weight:800;color:#111827;font-variant-numeric:tabular-nums}.kpi-type-card.kpi-type-reserved[data-v-b1ceec36]{border-color:#f59e0b73;background:#fef3c759}.kpi-type-card.kpi-type-handicap[data-v-b1ceec36]{border-color:#17a2b866;background:#17a2b814}.kpi-type-card.kpi-type-visitor[data-v-b1ceec36]{border-color:#3b82f659;background:#dbeafe80}.kpi-type-card.kpi-type-logistics[data-v-b1ceec36]{border-color:#6b728073;background:#f3f4f6e6}.loading-msg[data-v-b1ceec36],.error[data-v-b1ceec36],.spaces-content[data-v-b1ceec36]{margin:0}.spaces-card[data-v-b1ceec36]{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 2px 8px #00000014;border:1px solid #eee}.spaces-card-title[data-v-b1ceec36]{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#1b1d21}.spaces-table-wrap[data-v-b1ceec36]{overflow-x:auto}.spaces-table[data-v-b1ceec36]{width:100%;border-collapse:collapse;font-size:.9rem}.spaces-table thead th[data-v-b1ceec36]{text-align:left;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;padding:.5rem .65rem .6rem;border-bottom:1px solid #e5e7eb}.spaces-table tbody td[data-v-b1ceec36]{padding:.55rem .65rem;border-bottom:1px solid #f3f4f6;vertical-align:middle;color:#212529}.spaces-table tbody tr:last-child td[data-v-b1ceec36]{border-bottom:none}.th-actions[data-v-b1ceec36],.td-actions[data-v-b1ceec36]{text-align:right;width:4rem}.td-name[data-v-b1ceec36]{font-weight:500}.td-empty[data-v-b1ceec36]{text-align:center;color:#6c757d;padding:1.25rem .65rem!important}.link-edit[data-v-b1ceec36]{font-size:1rem;text-decoration:none;line-height:1;opacity:.85}.link-edit[data-v-b1ceec36]:hover{opacity:1}.badge-booked[data-v-b1ceec36]{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.78rem;font-weight:600}.badge-booked-no[data-v-b1ceec36]{background:#f3f4f6;color:#4b5563}.badge-booked-yes[data-v-b1ceec36]{background:#fef3c7;color:#92400e}.badge-type[data-v-b1ceec36]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-type.badge-warning[data-v-b1ceec36]{background:var(--color-warning);color:#fff}.badge-type.badge-info[data-v-b1ceec36]{background:#17a2b8;color:#fff}.badge-type.badge-secondary[data-v-b1ceec36]{background:#6c757d;color:#fff}.header-actions[data-v-b1ceec36]{display:flex;align-items:center;gap:.75rem}.pagination[data-v-b1ceec36]{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e9ecef;font-size:.9rem}.pagination button[data-v-b1ceec36]{padding:.4rem .75rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer;font-size:.9rem}.pagination button[data-v-b1ceec36]:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination button[data-v-b1ceec36]:disabled{opacity:.5;cursor:not-allowed}.page-info[data-v-b1ceec36]{color:#6b7280}.new-parking-space-page[data-v-46636ea7]{display:flex;flex-direction:column;gap:1rem}.form-card[data-v-46636ea7]{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #eee}.space-form[data-v-46636ea7]{max-width:32rem}.form-error[data-v-46636ea7]{margin:0 0 1rem;padding:.75rem;background:#f8d7da;color:#721c24;border-radius:6px;font-size:.9rem}.form-success[data-v-46636ea7]{margin:0 0 1rem;padding:.75rem;background:#d4edda;color:#155724;border-radius:6px;font-size:.9rem}.form-row[data-v-46636ea7]{margin-bottom:1.25rem}.form-field[data-v-46636ea7]{display:flex;flex-direction:column;gap:.35rem}.form-field-full[data-v-46636ea7]{width:100%}.form-field-checkbox[data-v-46636ea7]{flex-direction:row;align-items:center;gap:.5rem}.form-label[data-v-46636ea7]{font-size:.9rem;font-weight:500;color:#374151}.form-label-inline[data-v-46636ea7]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.required[data-v-46636ea7]{color:var(--color-danger)}.form-input[data-v-46636ea7],.form-textarea[data-v-46636ea7]{padding:.5rem .75rem;font-size:.9rem;border:1px solid #d1d5db;border-radius:6px;color:#1b1d21}.form-input[data-v-46636ea7]:focus,.form-textarea[data-v-46636ea7]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #673ab733}.form-textarea[data-v-46636ea7]{resize:vertical;min-height:4rem}.form-checkbox[data-v-46636ea7]{width:1.1rem;height:1.1rem;accent-color:var(--color-primary)}.form-help[data-v-46636ea7]{margin:0;font-size:.8rem;color:#6b7280}.form-actions[data-v-46636ea7]{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #e5e7eb}.btn-submit[data-v-46636ea7]{padding:.5rem 1.25rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer}.btn-submit[data-v-46636ea7]:hover:not(:disabled){background:var(--lactalis-bleu-fonce)}.btn-submit[data-v-46636ea7]:disabled{opacity:.7;cursor:not-allowed}.btn-cancel[data-v-46636ea7]{padding:.5rem 1rem;color:#6b7280;font-size:.9rem;text-decoration:none}.btn-cancel[data-v-46636ea7]:hover{color:#374151}.parking-space-edit-page[data-v-ef6db167]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-ef6db167]{margin:0}.form-card[data-v-ef6db167]{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #eee}.space-form[data-v-ef6db167]{max-width:32rem}.form-error[data-v-ef6db167]{margin:0 0 1rem;padding:.75rem;background:#f8d7da;color:#721c24;border-radius:6px;font-size:.9rem}.form-success[data-v-ef6db167]{margin:0 0 1rem;padding:.75rem;background:#d4edda;color:#155724;border-radius:6px;font-size:.9rem}.form-row[data-v-ef6db167]{margin-bottom:1.25rem}.form-field[data-v-ef6db167]{display:flex;flex-direction:column;gap:.35rem}.form-field-full[data-v-ef6db167]{width:100%}.form-field-checkbox[data-v-ef6db167]{flex-direction:row;align-items:center;gap:.5rem}.form-label[data-v-ef6db167]{font-size:.9rem;font-weight:500;color:#374151}.form-label-inline[data-v-ef6db167]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.required[data-v-ef6db167]{color:var(--color-danger)}.form-input[data-v-ef6db167],.form-textarea[data-v-ef6db167]{padding:.5rem .75rem;font-size:.9rem;border:1px solid #d1d5db;border-radius:6px;color:#1b1d21}.form-input[data-v-ef6db167]:focus,.form-textarea[data-v-ef6db167]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #673ab733}.form-textarea[data-v-ef6db167]{resize:vertical;min-height:4rem}.form-checkbox[data-v-ef6db167]{width:1.1rem;height:1.1rem;accent-color:var(--color-primary)}.form-actions[data-v-ef6db167]{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #e5e7eb}.btn-submit[data-v-ef6db167]{padding:.5rem 1.25rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer}.btn-submit[data-v-ef6db167]:hover:not(:disabled){background:var(--lactalis-bleu-fonce)}.btn-submit[data-v-ef6db167]:disabled{opacity:.7;cursor:not-allowed}.btn-cancel[data-v-ef6db167]{padding:.5rem 1rem;color:#6b7280;font-size:.9rem;text-decoration:none}.btn-cancel[data-v-ef6db167]:hover{color:#374151}.delete-section[data-v-ef6db167]{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.delete-title[data-v-ef6db167]{margin:0 0 .35rem;font-size:.95rem;font-weight:600;color:#374151}.delete-help[data-v-ef6db167]{margin:0 0 .75rem;font-size:.85rem;color:#6b7280}.btn-delete[data-v-ef6db167]{padding:.45rem 1rem;background:transparent;color:var(--color-danger);border:1px solid rgba(220,38,38,.5);border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer}.btn-delete[data-v-ef6db167]:hover:not(:disabled){background:#dc262614}.btn-delete[data-v-ef6db167]:disabled{opacity:.6;cursor:not-allowed}.modal-overlay[data-v-ef6db167]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-box[data-v-ef6db167]{background:#fff;border-radius:8px;padding:1.5rem;max-width:24rem;box-shadow:0 4px 20px #00000026}.modal-title[data-v-ef6db167]{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;color:#1b1d21}.modal-box p[data-v-ef6db167]{margin:0 0 1.25rem;font-size:.9rem;color:#374151}.modal-actions[data-v-ef6db167]{display:flex;justify-content:flex-end;gap:.75rem}.btn-delete-confirm[data-v-ef6db167]{padding:.4rem 1rem;background:var(--color-danger);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer}.btn-delete-confirm[data-v-ef6db167]:hover:not(:disabled){background:var(--color-danger)}.btn-delete-confirm[data-v-ef6db167]:disabled{opacity:.7;cursor:not-allowed}.reservations-page[data-v-e44d1230]{display:flex;flex-direction:column;gap:1rem}.cell-plate .link-plate[data-v-e44d1230]{color:var(--color-primary);text-decoration:none;font-weight:600}.cell-plate .link-plate[data-v-e44d1230]:hover{text-decoration:underline}.table-card[data-v-e44d1230]{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e8e8e8;overflow:hidden}.reservations-table[data-v-e44d1230]{width:100%;border-collapse:collapse}.reservations-table thead th[data-v-e44d1230]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.reservations-table .th-sortable[data-v-e44d1230]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.reservations-table .th-sortable[data-v-e44d1230]:hover{color:var(--color-primary)}.sort-icon[data-v-e44d1230]{margin-left:.25rem;font-size:.75rem;opacity:.9}.reservations-table tbody td[data-v-e44d1230]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.reservations-table tbody tr:last-child td[data-v-e44d1230]{border-bottom:none}.reservations-table .text-center[data-v-e44d1230]{text-align:center;padding:1.5rem;color:#6b7280}.cell-period[data-v-e44d1230]{white-space:nowrap;font-size:.85rem}.cell-actions[data-v-e44d1230]{white-space:nowrap;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.cell-actions-none[data-v-e44d1230]{color:#9ca3af;font-size:.9rem}.badge-stato[data-v-e44d1230]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-stato.badge-success[data-v-e44d1230]{background:var(--color-success);color:#fff}.badge-stato.badge-danger[data-v-e44d1230]{background:var(--color-danger);color:#fff}.badge-stato.badge-warning[data-v-e44d1230]{background:var(--color-warning);color:#212529}.badge-stato.badge-secondary[data-v-e44d1230]{background:#6c757d;color:#fff}.btn-confirm[data-v-e44d1230]{padding:.3rem .7rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.82rem;cursor:pointer}.btn-confirm[data-v-e44d1230]:hover{opacity:.9}.btn-reject[data-v-e44d1230]{padding:.3rem .7rem;background:#6b7280;color:#fff;border:none;border-radius:6px;font-size:.82rem;cursor:pointer}.btn-reject[data-v-e44d1230]:hover{opacity:.9}.new-parking-reservation-page[data-v-a9c1e774]{display:flex;flex-direction:column;gap:1rem}.form-card[data-v-a9c1e774]{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e8e8e8}.reservation-form[data-v-a9c1e774]{display:flex;flex-direction:column;gap:.75rem;max-width:32rem}.form-label[data-v-a9c1e774]{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;font-weight:500;color:#374151}.form-label-caption[data-v-a9c1e774]{white-space:nowrap}.label-required[data-v-a9c1e774]{color:var(--color-danger, #dc2626);font-weight:700}.form-input[data-v-a9c1e774],.form-select[data-v-a9c1e774]{padding:.45rem .65rem;border:1px solid var(--border);border-radius:8px;font-size:.88rem;font-family:inherit}.form-textarea[data-v-a9c1e774]{resize:vertical}.form-actions[data-v-a9c1e774]{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.btn-primary[data-v-a9c1e774]{padding:.5rem 1.2rem;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer}.btn-primary[data-v-a9c1e774]:hover{opacity:.9}.btn-primary[data-v-a9c1e774]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-a9c1e774]{padding:.5rem 1.2rem;background:#fff;color:#374151;border:1px solid var(--border);border-radius:8px;font-size:.9rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.btn-secondary[data-v-a9c1e774]:hover{background:#f9fafb}.error[data-v-a9c1e774]{color:var(--color-danger);font-size:.9rem}.access-requests-page[data-v-1f2cbbb5]{display:flex;flex-direction:column;gap:1rem}.btn-nuova-richiesta[data-v-1f2cbbb5]{display:inline-flex;align-items:center;gap:.5rem;background:#fff;color:var(--color-primary);border:none;border-radius:9999px;font-size:.95rem;font-weight:600;text-decoration:none;box-shadow:0 2px 4px #0000001a}.btn-nuova-richiesta[data-v-1f2cbbb5]:hover{background:#f5f3ff}.btn-nuova-icon[data-v-1f2cbbb5]{display:flex;align-items:center;justify-content:center}.btn-nuova-icon svg[data-v-1f2cbbb5]{display:block}.loading-msg[data-v-1f2cbbb5],.error[data-v-1f2cbbb5]{margin:0}.ar-table[data-v-1f2cbbb5]{width:100%;border-collapse:collapse}.ar-table thead th[data-v-1f2cbbb5]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;text-align:left}.ar-table thead .th-sortable[data-v-1f2cbbb5]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.ar-table thead .th-sortable[data-v-1f2cbbb5]:hover{color:var(--color-primary)}.sort-icon[data-v-1f2cbbb5]{margin-left:.25rem;font-size:.75rem;opacity:.9}.ar-table tbody td[data-v-1f2cbbb5]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem;color:#1b1d21}.ar-table tbody tr:last-child td[data-v-1f2cbbb5]{border-bottom:none}.ar-table .text-center[data-v-1f2cbbb5]{text-align:center;padding:1.5rem;color:#6c757d}.link-plate[data-v-1f2cbbb5]{color:var(--color-primary);text-decoration:none}.link-plate[data-v-1f2cbbb5]:hover{text-decoration:underline}.badge-stato[data-v-1f2cbbb5]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-stato.badge-success[data-v-1f2cbbb5]{background:var(--color-success);color:#fff}.badge-stato.badge-danger[data-v-1f2cbbb5]{background:var(--color-danger);color:#fff}.badge-stato.badge-warning[data-v-1f2cbbb5]{background:var(--color-warning);color:#212529}.badge-stato.badge-secondary[data-v-1f2cbbb5]{background:#6c757d;color:#fff}.btn-dettagli[data-v-1f2cbbb5]{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:#fff;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:6px;font-size:.85rem;text-decoration:none}.btn-dettagli[data-v-1f2cbbb5]:hover{background:var(--lactalis-bleu-fond)}.btn-dettagli-icon[data-v-1f2cbbb5]{display:flex;align-items:center;justify-content:center}.btn-dettagli-icon svg[data-v-1f2cbbb5]{display:block}.access-detail-page[data-v-4811145f]{background:transparent;padding-bottom:24px}.loading-msg[data-v-4811145f],.error[data-v-4811145f]{margin:1.5rem 0 0}.detail-panel[data-v-4811145f]{display:grid;grid-template-columns:2fr 1fr;gap:1.75rem;align-items:start;width:100%;margin:1.5rem 0 0;box-sizing:border-box;padding:2rem 2rem 2.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 2px #0f172a0f,0 8px 28px #0f172a1a}.detail-panel-col-actions[data-v-4811145f]{padding-left:1.25rem;border-left:1px solid #e9ecef}@media(max-width:768px){.detail-panel[data-v-4811145f]{grid-template-columns:1fr}.detail-panel-col-actions[data-v-4811145f]{padding-left:0;padding-top:1.25rem;border-left:none;border-top:1px solid #e9ecef}}.detail-card-title[data-v-4811145f]{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#495057}.detail-info-table[data-v-4811145f]{width:100%;border-collapse:collapse}.detail-info-table th[data-v-4811145f],.detail-info-table td[data-v-4811145f]{text-align:left;padding:.5rem .75rem .5rem 0;vertical-align:top;border-bottom:1px solid #e9ecef;font-size:.9rem}.detail-info-table th[data-v-4811145f]{width:35%;color:#6c757d;font-weight:500}.detail-info-table td[data-v-4811145f]{color:#212529}.badge-stato[data-v-4811145f]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-stato.badge-success[data-v-4811145f]{background:var(--color-success);color:#fff}.badge-stato.badge-danger[data-v-4811145f]{background:var(--color-danger);color:#fff}.badge-stato.badge-warning[data-v-4811145f]{background:var(--color-warning);color:#212529}.badge-stato.badge-secondary[data-v-4811145f]{background:#6c757d;color:#fff}.btn-approva[data-v-4811145f],.btn-rifiuta[data-v-4811145f]{display:block;width:100%;padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;margin-bottom:.5rem}.btn-approva[data-v-4811145f]{background:var(--color-success);color:#fff}.btn-approva[data-v-4811145f]:hover{background:#218838}.btn-rifiuta[data-v-4811145f]{background:var(--color-danger);color:#fff}.btn-rifiuta[data-v-4811145f]:hover{background:#c82333}.detail-muted[data-v-4811145f]{margin:0;color:#6c757d;font-size:.9rem}.new-access-request-page[data-v-bc4cd81f]{background:transparent;padding-bottom:24px}.nar-form[data-v-bc4cd81f]{display:flex;flex-direction:column;gap:1.75rem;width:100%;margin:1.5rem 0 0;box-sizing:border-box;padding:2rem 2rem 2.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 2px #0f172a0f,0 8px 28px #0f172a1a}.nar-fieldset[data-v-bc4cd81f]{border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.25rem 1rem}.nar-fieldset legend[data-v-bc4cd81f]{padding:0 .5rem;font-size:.95rem;font-weight:600;color:#4b5563}.nar-grid[data-v-bc4cd81f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:.75rem}.nar-field[data-v-bc4cd81f]{display:flex;flex-direction:column;gap:.35rem}.nar-field-section[data-v-bc4cd81f]{margin-top:1.25rem}.nar-label[data-v-bc4cd81f]{font-size:.9rem;color:#6b7280;font-weight:500}.nar-required[data-v-bc4cd81f]{color:var(--color-danger);margin-left:.15rem}.nar-input[data-v-bc4cd81f]{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid #d1d5db;font-size:.9rem;color:#111827;background-color:#fff}.nar-input[data-v-bc4cd81f]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px #6366f14d}.nar-textarea[data-v-bc4cd81f]{resize:vertical;min-height:80px}.nar-help[data-v-bc4cd81f]{margin:0;font-size:.8rem;color:#9ca3af}.nar-help-warning[data-v-bc4cd81f]{color:#b45309}.nar-actions[data-v-bc4cd81f]{margin-top:.5rem;display:flex;align-items:center;gap:.75rem}.btn-primary[data-v-bc4cd81f]{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1.4rem;border-radius:9999px;border:none;background:linear-gradient(135deg,var(--lactalis-bleu-principal),var(--lactalis-bleu-moyen));color:#fff;font-weight:600;font-size:.9rem;cursor:pointer}.btn-primary[data-v-bc4cd81f]:disabled{opacity:.7;cursor:default}.btn-ghost[data-v-bc4cd81f]{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.1rem;border-radius:9999px;border:1px solid #d1d5db;background:#fff;color:#4b5563;font-size:.9rem;text-decoration:none}.btn-ghost[data-v-bc4cd81f]:hover{background:#f3f4f6}.nar-alert[data-v-bc4cd81f]{padding:.7rem .9rem;border-radius:8px;font-size:.85rem}.nar-alert-error[data-v-bc4cd81f]{background:#fef2f2;border:1px solid #fecaca;color:var(--color-danger)}.nar-alert-success[data-v-bc4cd81f]{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}.nar-checkbox[data-v-bc4cd81f]{width:auto;accent-color:var(--color-primary)}.approvals-page[data-v-e4fa83eb]{display:flex;flex-direction:column;gap:1rem}.table-card[data-v-e4fa83eb]{background:#fff;border-radius:10px;border:1px solid rgba(148,163,184,.35);overflow:hidden}.approvals-table[data-v-e4fa83eb]{width:100%;border-collapse:collapse}.approvals-table thead th[data-v-e4fa83eb]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;text-align:left}.approvals-table thead .th-sortable[data-v-e4fa83eb]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.approvals-table thead .th-sortable[data-v-e4fa83eb]:hover{color:var(--color-primary)}.sort-icon[data-v-e4fa83eb]{margin-left:.25rem;font-size:.75rem;opacity:.9}.approvals-table tbody td[data-v-e4fa83eb]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem;color:#1b1d21}.approvals-table tbody tr:last-child td[data-v-e4fa83eb]{border-bottom:none}.muted[data-v-e4fa83eb]{color:#64748b;font-size:.95rem}.error[data-v-e4fa83eb]{color:#b42318;font-size:.95rem}.text-center[data-v-e4fa83eb]{text-align:center;padding:1rem}.cell-plate strong[data-v-e4fa83eb]{font-weight:600}.link-plate[data-v-e4fa83eb]{color:var(--color-primary);text-decoration:none;font-weight:600}.link-plate[data-v-e4fa83eb]:hover{text-decoration:underline}.cell-actions[data-v-e4fa83eb]{white-space:nowrap}.badge-stato[data-v-e4fa83eb]{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.8rem;font-weight:500;color:#fff}.action-buttons[data-v-e4fa83eb]{display:flex;gap:.5rem;flex-wrap:wrap}.btn-approve[data-v-e4fa83eb],.btn-reject[data-v-e4fa83eb]{padding:.25rem .6rem;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer}.btn-approve[data-v-e4fa83eb]{background:var(--color-success);color:#fff}.btn-approve[data-v-e4fa83eb]:hover:not(:disabled){background:var(--color-success)}.btn-reject[data-v-e4fa83eb]{background:var(--color-danger);color:#fff}.btn-reject[data-v-e4fa83eb]:hover:not(:disabled){background:var(--color-danger)}.btn-approve[data-v-e4fa83eb]:disabled,.btn-reject[data-v-e4fa83eb]:disabled{opacity:.5;cursor:default}.badge-stato.badge-success[data-v-e4fa83eb]{background:var(--color-success)}.badge-stato.badge-danger[data-v-e4fa83eb]{background:var(--color-danger)}.badge-stato.badge-warning[data-v-e4fa83eb]{background:#d97706;color:#fff}.btn-outline[data-v-e4fa83eb]{border:1px solid #94a3b8;color:#475569;background:#fff;padding:.35rem .75rem;border-radius:6px;font-size:.9rem;text-decoration:none;display:inline-block}.btn-outline[data-v-e4fa83eb]:hover{background:#f1f5f9}.external-magic-link-page[data-v-e053b190]{background:var(--lactalis-bleu-fond);min-height:100%}.magic-link-header-bar[data-v-e053b190]{gap:1rem;flex-wrap:nowrap}.magic-link-header-brand[data-v-e053b190]{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.magic-link-header-logo[data-v-e053b190]{height:38px;width:auto;max-width:100px;object-fit:contain;display:block}.magic-link-header-copy[data-v-e053b190]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.magic-link-header-app[data-v-e053b190]{font-size:1.05rem;font-weight:600;letter-spacing:.08em;color:#fff;font-family:Rubik,sans-serif}.magic-link-header-tagline[data-v-e053b190]{font-size:.65rem;font-weight:300;text-transform:uppercase;letter-spacing:.18em;color:#ffffffc7;margin-top:.15rem;font-family:Rubik,sans-serif}.magic-link-header-titles[data-v-e053b190]{flex:1;min-width:0}.external-magic-link-body[data-v-e053b190]{padding-bottom:1.5rem}.magic-link-state-card[data-v-e053b190],.magic-link-form-card[data-v-e053b190]{border:1px solid rgba(0,75,133,.1);box-shadow:0 4px 24px #004b8514,0 1px 3px #0000000d}.magic-link-spinner[data-v-e053b190]{width:2.25rem;height:2.25rem;border:3px solid var(--lactalis-bleu-fond);border-top-color:var(--lactalis-bleu-principal);border-radius:50%;animation:magic-link-spin-e053b190 .75s linear infinite}@keyframes magic-link-spin-e053b190{to{transform:rotate(360deg)}}.magic-link-icon-wrap[data-v-e053b190]{width:3.75rem;height:3.75rem;border-radius:999px;background:var(--lactalis-bleu-fond);border:1px solid rgba(0,75,133,.12);display:flex;align-items:center;justify-content:center}.magic-link-icon-lock[data-v-e053b190]{font-size:1.65rem;line-height:1}.magic-link-form-card[data-v-e053b190] :is(input,select,textarea):focus{outline:none;border-color:var(--lactalis-bleu-principal);box-shadow:0 0 0 3px #004b851f}@media(max-width:640px){.magic-link-header-page-desc[data-v-e053b190]{display:none}.magic-link-header-bar[data-v-e053b190]{gap:.5rem}.magic-link-header-logo[data-v-e053b190]{height:32px;max-width:84px}.magic-link-header-app[data-v-e053b190]{font-size:.95rem}.magic-link-header-tagline[data-v-e053b190]{font-size:.6rem}}.send-magic-link-page[data-v-fc7c899e]{background:#f8f9fa;min-height:100%}.security-page[data-v-e0482e77]{display:flex;flex-direction:column;gap:1rem}.loading-msg[data-v-e0482e77],.error[data-v-e0482e77]{margin:0}.evidences-grid-wrap[data-v-e0482e77]{background:#fff;border-radius:8px;margin-bottom:1.5rem;padding:1rem;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.evidences-grid[data-v-e0482e77]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.evidence-card[data-v-e0482e77]{border:1px solid #e9ecef;border-radius:8px;background:#f8f9fa;transition:box-shadow .15s ease}.evidence-card[data-v-e0482e77]:hover{box-shadow:0 2px 8px #00000014}.evidence-card-inner[data-v-e0482e77]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem}.evidence-card-main[data-v-e0482e77]{display:flex;flex-direction:column;gap:.25rem;min-width:0}.evidence-card-targa[data-v-e0482e77]{font-weight:700;font-size:1rem;color:#1b1d21}.evidence-card-meta[data-v-e0482e77],.evidence-card-datetime[data-v-e0482e77]{font-size:.8rem;color:#6c757d}.evidence-card .badge-type[data-v-e0482e77]{align-self:flex-start}.btn-view[data-v-e0482e77]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;color:var(--color-primary);text-decoration:none;transition:background .15s ease}.btn-view[data-v-e0482e77]:hover{background:var(--lactalis-bleu-fond);color:var(--color-primary)}.btn-view svg[data-v-e0482e77]{display:block}.evidences-pagination[data-v-e0482e77]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e9ecef;font-size:.9rem}.evidences-pagination button[data-v-e0482e77]{padding:.4rem .9rem;border-radius:6px;border:1px solid #ced4da;background:#fff;color:#495057;cursor:pointer}.evidences-pagination button[data-v-e0482e77]:disabled{opacity:.6;cursor:not-allowed}.evidences-pagination .page-info[data-v-e0482e77]{color:#6c757d}.badge-type[data-v-e0482e77]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-type.badge-success[data-v-e0482e77]{background:var(--color-success);color:#fff}.badge-type.badge-danger[data-v-e0482e77]{background:var(--color-danger);color:#fff}.badge-type.badge-warning[data-v-e0482e77]{background:var(--color-warning);color:#fff}.badge-type.badge-info[data-v-e0482e77]{background:var(--color-primary);color:#fff}.badge-type.badge-secondary[data-v-e0482e77]{background:#6c757d;color:#fff}.empty-msg[data-v-e0482e77]{margin:0;color:#6c757d}.security-card[data-v-e0482e77]{background:#fff;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.security-card-title[data-v-e0482e77]{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#495057}.streams-card-title[data-v-e0482e77]{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#495057;display:flex;align-items:center;gap:.5rem}.streams-card-icon[data-v-e0482e77]{display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.streams-card-icon svg[data-v-e0482e77]{display:block}.streams-loading[data-v-e0482e77],.streams-empty[data-v-e0482e77]{margin:0;color:#6c757d;font-size:.9rem}.streams-empty[data-v-e0482e77]{padding:.5rem 0}.streams-table-wrap[data-v-e0482e77]{overflow-x:auto}.streams-table[data-v-e0482e77]{width:100%;border-collapse:collapse}.streams-table thead tr[data-v-e0482e77]{background:#f8f9fa;border-bottom:2px solid #e9ecef}.streams-table th[data-v-e0482e77]{text-align:left;padding:10px 14px;font-size:.875rem;font-weight:700;color:#495057}.streams-table tbody tr[data-v-e0482e77]{border-bottom:1px solid #e9ecef}.streams-table tbody tr[data-v-e0482e77]:last-child{border-bottom:none}.streams-table td[data-v-e0482e77]{padding:10px 14px;font-size:.9rem;color:#212529}.stream-name[data-v-e0482e77]{font-weight:500}.stream-badge[data-v-e0482e77]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:600}.stream-badge-active[data-v-e0482e77]{background:var(--color-success);color:#fff}.stream-badge-inactive[data-v-e0482e77]{background:#6c757d;color:#fff}.evidence-detail-page[data-v-88e013bd]{gap:1rem}.evidence-detail-body[data-v-88e013bd]{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-content:start}.evidence-detail-body .loading-msg[data-v-88e013bd],.evidence-detail-body .error[data-v-88e013bd]{grid-column:1 / -1}.loading-msg[data-v-88e013bd],.error[data-v-88e013bd]{margin:0}.detail-card[data-v-88e013bd]{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef;padding:1.25rem}.detail-card-title[data-v-88e013bd]{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#495057}.evidence-detail-body>.detail-card[data-v-88e013bd]:first-of-type{padding:0}.evidence-img-wrap[data-v-88e013bd]{background:#e9ecef}.evidence-img[data-v-88e013bd]{width:100%;height:auto;display:block}.evidence-img-placeholder[data-v-88e013bd]{padding:2rem;text-align:center;background:#e9ecef;color:#6c757d}.detail-info-table[data-v-88e013bd]{width:100%;border-collapse:collapse}.detail-info-table th[data-v-88e013bd],.detail-info-table td[data-v-88e013bd]{text-align:left;padding:.5rem .75rem .5rem 0;vertical-align:top;border-bottom:1px solid #e9ecef;font-size:.9rem}.detail-info-table th[data-v-88e013bd]{width:35%;color:#6c757d;font-weight:500}.detail-info-table td[data-v-88e013bd]{color:#212529}.badge-type[data-v-88e013bd]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500}.badge-type.badge-success[data-v-88e013bd]{background:var(--color-success);color:#fff}.badge-type.badge-danger[data-v-88e013bd]{background:var(--color-danger);color:#fff}.badge-type.badge-warning[data-v-88e013bd]{background:var(--color-warning);color:#fff}.badge-type.badge-info[data-v-88e013bd]{background:var(--color-primary);color:#fff}.badge-type.badge-secondary[data-v-88e013bd]{background:#6c757d;color:#fff}.error-detail[data-v-d03bd04e]{color:var(--color-error, #c00);font-size:.95em;margin-top:.5rem}.plc-page[data-v-6659a77f]{display:flex;flex-direction:column;gap:1rem}.plc-grid[data-v-6659a77f]{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:1024px){.plc-grid[data-v-6659a77f]{grid-template-columns:repeat(2,1fr)}}.plc-card[data-v-6659a77f]{background:#fff;border-radius:10px;border:1px solid rgba(148,163,184,.35);overflow:hidden;padding:0;margin-bottom:1rem}.plc-card[data-v-6659a77f]:last-child{margin-bottom:0}.plc-card-title[data-v-6659a77f]{font-size:1rem;font-weight:700;color:#374151;margin:0;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}.table-wrap[data-v-6659a77f]{overflow-x:auto}.plc-table[data-v-6659a77f]{width:100%;border-collapse:collapse}.plc-table thead th[data-v-6659a77f]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;text-align:left}.plc-table thead .th-sortable[data-v-6659a77f]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.plc-table thead .th-sortable[data-v-6659a77f]:hover{color:var(--color-primary)}.sort-icon[data-v-6659a77f]{margin-left:.25rem;font-size:.75rem;opacity:.9}.plc-table tbody td[data-v-6659a77f]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem;color:#1b1d21}.plc-table tbody tr:last-child td[data-v-6659a77f]{border-bottom:none}.link-cell[data-v-6659a77f]{color:var(--color-primary);font-weight:500;text-decoration:none}.link-cell[data-v-6659a77f]:hover{text-decoration:underline}.code-cell[data-v-6659a77f]{font-size:.8rem;background:#f3f4f6;padding:.15rem .4rem;border-radius:4px;font-family:ui-monospace,monospace}.muted[data-v-6659a77f]{color:#64748b;font-size:.9rem}.error[data-v-6659a77f]{color:#b42318;font-size:.95rem}.text-center[data-v-6659a77f]{text-align:center;padding:1rem}.badge-stato[data-v-6659a77f]{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:500;color:#fff}.badge-online[data-v-6659a77f]{background:var(--color-success)}.badge-offline[data-v-6659a77f]{background:var(--color-danger)}.badge-success[data-v-6659a77f]{background:var(--color-success)}.badge-danger[data-v-6659a77f]{background:var(--color-danger)}.badge-warning[data-v-6659a77f]{background:#d97706}.badge-info[data-v-6659a77f]{background:#2563eb}.badge-muted[data-v-6659a77f]{background:#6b7280}.plc-telemetry-page[data-v-31b203dc]{padding:0 0 2rem}.header-subtitle[data-v-31b203dc]{color:var(--color-muted, #64748b);font-size:.95rem;margin-top:.25rem}.filter-card[data-v-31b203dc]{margin-bottom:1rem}.telemetry-kpi-grid[data-v-31b203dc]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.telemetry-kpi-card[data-v-31b203dc]{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:.5rem;padding:1rem}.telemetry-kpi-title[data-v-31b203dc]{font-size:.9rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text, #0f172a)}.telemetry-kpi-dl[data-v-31b203dc]{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;margin:0;font-size:.85rem}.telemetry-kpi-dl dt[data-v-31b203dc]{color:var(--color-muted, #64748b);margin:0}.telemetry-kpi-dl dd[data-v-31b203dc]{margin:0;font-variant-numeric:tabular-nums}.telemetry-table-card[data-v-31b203dc]{margin-top:.5rem}.lat-ok[data-v-31b203dc]{color:#15803d;font-weight:600;font-variant-numeric:tabular-nums}.lat-warn[data-v-31b203dc]{color:#a16207;font-weight:600;font-variant-numeric:tabular-nums}.lat-bad[data-v-31b203dc]{color:#b91c1c;font-weight:600;font-variant-numeric:tabular-nums}.lat-na[data-v-31b203dc]{color:var(--color-muted, #64748b);font-variant-numeric:tabular-nums}.telemetry-pagination[data-v-31b203dc]{display:flex;align-items:center;gap:1rem;padding:.75rem 0;flex-wrap:wrap}.text-center[data-v-31b203dc]{text-align:center}.vehicles-table[data-v-31b203dc]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-31b203dc]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-31b203dc]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-31b203dc]:hover{color:var(--color-primary)}.sort-icon[data-v-31b203dc]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-31b203dc]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-31b203dc]{border-bottom:none}.link-plate[data-v-31b203dc]{color:var(--color-primary);text-decoration:none;font-weight:600}.link-plate[data-v-31b203dc]:hover{text-decoration:underline}.vehicles-table[data-v-ae89a5ea]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-ae89a5ea]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-ae89a5ea]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-ae89a5ea]:hover{color:var(--color-primary)}.sort-icon[data-v-ae89a5ea]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-ae89a5ea]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-ae89a5ea]{border-bottom:none}.cell-value[data-v-ae89a5ea]{font-weight:600}.vehicles-table[data-v-957af639]{width:100%;border-collapse:collapse}.vehicles-table thead th[data-v-957af639]{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.vehicles-table thead .th-sortable[data-v-957af639]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.vehicles-table thead .th-sortable[data-v-957af639]:hover{color:var(--color-primary)}.sort-icon[data-v-957af639]{margin-left:.25rem;font-size:.75rem;opacity:.9}.vehicles-table tbody td[data-v-957af639]{padding:.55rem .5rem;border-bottom:1px solid #f3f4f6;font-size:.9rem}.vehicles-table tbody tr:last-child td[data-v-957af639]{border-bottom:none}.link-plate[data-v-957af639]{color:var(--color-primary);text-decoration:none}.link-plate[data-v-957af639]:hover{text-decoration:underline}.badge-stato[data-v-957af639]{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;color:#fff}.badge-stato.badge-status-ok[data-v-957af639]{background:var(--color-success)}.badge-stato.badge-status-fail[data-v-957af639]{background:var(--color-danger)}.badge-stato.badge-status-timeout[data-v-957af639]{background:var(--color-warning)}.badge-stato.badge-status-pending[data-v-957af639]{background:var(--color-primary)}.tablet-registration-page[data-v-1f9e9d14]{width:100%;min-height:100%;max-width:min(720px,100%);margin:0 auto;display:flex;flex-direction:column;align-items:stretch;padding:0 0 clamp(1.25rem,3vw,2rem);box-sizing:border-box}.tablet-page-title[data-v-1f9e9d14]{margin:0 0 .5rem;font-size:clamp(1.5rem,4vw,2rem);font-weight:600;color:#1b1d21;line-height:1.2}.tablet-page-subtitle[data-v-1f9e9d14]{margin:0 0 clamp(1.25rem,3vw,1.75rem);font-size:clamp(1.05rem,2.4vw,1.25rem);color:#6b7280;line-height:1.45}.tablet-content[data-v-1f9e9d14]{width:100%}.tablet-card[data-v-1f9e9d14]{background:#fff;border-radius:16px;padding:clamp(1.75rem,4vw,2.5rem) clamp(1.5rem,4vw,2.25rem);box-shadow:0 4px 14px #0f172a14;border:1px solid #e5e7eb}.tablet-form[data-v-1f9e9d14]{display:flex;flex-direction:column;gap:clamp(1.35rem,3vw,1.75rem)}.tablet-fields[data-v-1f9e9d14]{display:flex;flex-direction:column;gap:clamp(1.25rem,3vw,1.75rem)}.tablet-field[data-v-1f9e9d14]{display:flex;flex-direction:column;gap:.5rem}.tablet-label[data-v-1f9e9d14]{font-size:clamp(1.05rem,2.5vw,1.2rem);font-weight:600;color:#374151}.tablet-required[data-v-1f9e9d14]{color:var(--color-danger)}.tablet-input[data-v-1f9e9d14]{width:100%;min-height:clamp(56px,12vw,64px);padding:clamp(.65rem,2vw,.85rem) clamp(1rem,2.5vw,1.25rem);font-size:clamp(1.15rem,2.8vw,1.35rem);border-radius:12px;border:1px solid #d1d5db;color:#1b1d21;background:#fff;box-sizing:border-box}.tablet-input[data-v-1f9e9d14]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5f3fd033}.tablet-select[data-v-1f9e9d14]{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.tablet-error[data-v-1f9e9d14]{margin:0;font-size:clamp(1rem,2.2vw,1.1rem);color:#b42318;text-align:center}.tablet-btn[data-v-1f9e9d14]{min-height:clamp(56px,12vw,64px);padding:.85rem 1.75rem;font-size:clamp(1.15rem,2.8vw,1.35rem);font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:opacity .2s,background-color .2s;touch-action:manipulation}.tablet-btn[data-v-1f9e9d14]:disabled{opacity:.6;cursor:not-allowed}.tablet-btn-primary[data-v-1f9e9d14]{background:#00b894;color:#fff}.tablet-btn-primary[data-v-1f9e9d14]:hover:not(:disabled){background:#00a085}.tablet-btn-secondary[data-v-1f9e9d14]{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.tablet-btn-secondary[data-v-1f9e9d14]:hover:not(:disabled){background:#5f3fd014}.tablet-success-card[data-v-1f9e9d14]{text-align:center;padding:clamp(2rem,5vw,3rem) clamp(1.25rem,3vw,2rem)}.tablet-success-title[data-v-1f9e9d14]{margin:0 0 1rem;font-size:clamp(1.65rem,4vw,2.1rem);font-weight:700;color:#00b894}.tablet-success-plate[data-v-1f9e9d14]{margin:0 0 .65rem;font-size:clamp(1.25rem,3vw,1.5rem);color:#374151}.tablet-success-site[data-v-1f9e9d14]{margin:0 0 clamp(1.5rem,3vw,2rem);font-size:clamp(1.05rem,2.4vw,1.2rem);color:#6b7280}.tablet-success-card .tablet-btn-secondary[data-v-1f9e9d14]{margin-top:.5rem;min-width:min(100%,280px)}.tablet-shell[data-v-1765c2ef]{min-height:100vh;display:flex;flex-direction:column;background:var(--lactalis-bleu-fond, #f0f4f8);font-family:Rubik,sans-serif}.tablet-shell-topbar[data-v-1765c2ef]{flex-shrink:0;background:linear-gradient(90deg,var(--lactalis-bleu-principal),var(--lactalis-bleu-moyen));color:#fff;padding:.75rem 1rem;box-shadow:0 2px 8px #0f172a1f}.tablet-shell-inner[data-v-1765c2ef]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;max-width:720px;margin:0 auto;width:100%}.tablet-shell-brand-row[data-v-1765c2ef]{display:flex;align-items:center;gap:1rem;min-width:0;flex:1}.tablet-shell-logo[data-v-1765c2ef]{height:44px;width:auto;object-fit:contain;flex-shrink:0}.tablet-shell-brand-text[data-v-1765c2ef]{display:flex;flex-direction:column;min-width:0}.tablet-shell-title[data-v-1765c2ef]{font-size:1.15rem;font-weight:600;letter-spacing:.04em;line-height:1.2}.tablet-shell-actions[data-v-1765c2ef]{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.tablet-shell-icon-btn[data-v-1765c2ef]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:10px;background:#ffffff1f;color:#fff;cursor:pointer;transition:background .2s ease,border-color .2s ease}.tablet-shell-icon-btn[data-v-1765c2ef]:hover{background:#ffffff38;border-color:#fff9}.tablet-shell-icon[data-v-1765c2ef]{width:22px;height:22px}.tablet-shell-main[data-v-1765c2ef]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;padding:clamp(.75rem,2vw,1.25rem) clamp(.75rem,2.5vw,1.5rem) clamp(1rem,3vw,2rem)}.tablet-home[data-v-f346e658]{width:100%;max-width:1120px;margin:0 auto;padding:clamp(.5rem,2vw,1.25rem);box-sizing:border-box;flex:1;min-height:0;display:flex;flex-direction:column}.tablet-home-cards[data-v-f346e658]{flex:1;display:flex;flex-direction:column;gap:clamp(1.25rem,3.5vw,2rem);justify-content:center;min-height:min(calc(100dvh - 7.5rem),900px);max-width:min(720px,100%);margin-inline:auto;width:100%}.tablet-home-card[data-v-f346e658]{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:clamp(.5rem,2vw,1rem);padding:clamp(1.75rem,4.5vw,2.75rem);min-height:clamp(168px,28vh,300px);border-radius:16px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 4px 14px #0f172a14;text-decoration:none;color:inherit;transition:box-shadow .2s ease,border-color .2s ease,transform .15s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media(hover:hover){.tablet-home-card[data-v-f346e658]:hover{border-color:#5bc5f2a6;box-shadow:0 8px 24px #0f172a1f;transform:translateY(-2px)}}.tablet-home-card[data-v-f346e658]:active{transform:scale(.99);box-shadow:0 2px 10px #0f172a14}.tablet-home-card-icon[data-v-f346e658]{font-size:clamp(2.5rem,8vw,4rem);line-height:1}.tablet-home-card-title[data-v-f346e658]{font-size:clamp(1.25rem,3.2vw,1.65rem);font-weight:700;line-height:1.25;color:var(--lactalis-bleu-principal, #003b5c)}.tablet-home-card-desc[data-v-f346e658]{font-size:clamp(1rem,2.2vw,1.2rem);color:#4b5563;line-height:1.45;max-width:42ch}.gate-manual-card[data-v-c544c427]{padding:1rem 1.25rem}.tablet-gate-card[data-v-c544c427]{padding:1.25rem 1.35rem}.tablet-openclose[data-v-c41e3a38]{max-width:720px;margin:0 auto}.tablet-openclose-title[data-v-c41e3a38]{margin:0 0 .5rem;font-size:1.35rem;font-weight:600;color:#1b1d21}.tablet-openclose-sub[data-v-c41e3a38]{margin:0 0 1.25rem;font-size:.95rem;color:#6b7280;line-height:1.4}.tablet-openclose-body[data-v-c41e3a38]{margin-top:.25rem}.login-page[data-v-422e97e2]{min-height:100%;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem 2rem;box-sizing:border-box}.login-card[data-v-422e97e2]{width:100%;max-width:420px;background:var(--card-bg, #fff);border-radius:12px;border:1px solid rgba(0,75,133,.1);box-shadow:0 4px 24px #004b851a,0 1px 3px #0000000f;overflow:hidden}.login-card__brand[data-v-422e97e2]{background:var(--lactalis-bleu-principal);color:#fff;padding:0}.login-card__logo-zone[data-v-422e97e2]{padding:1rem 1.25rem .75rem;border-bottom:1px solid rgba(255,255,255,.14)}.login-card__logo[data-v-422e97e2]{display:block;width:100%;max-width:220px;height:auto;margin:0 auto;object-fit:contain}.login-card__brand-copy[data-v-422e97e2]{padding:.875rem 1.25rem 1.25rem;text-align:center}.login-card__app-title[data-v-422e97e2]{margin:0;font-size:1.35rem;font-weight:600;letter-spacing:.08em;line-height:1.25;font-family:Rubik,sans-serif}.login-card__app-sub[data-v-422e97e2]{margin:.45rem 0 0;font-size:.68rem;font-weight:300;text-transform:uppercase;letter-spacing:.2em;color:#ffffffc7;line-height:1.35;font-family:Rubik,sans-serif}.login-card__body[data-v-422e97e2]{padding:1.35rem 1.35rem 1.5rem;font-family:Rubik,sans-serif}.login-card__lead[data-v-422e97e2]{margin:0 0 1.25rem;font-size:.95rem;line-height:1.5;color:#3d4450}.login-form[data-v-422e97e2]{display:flex;flex-direction:column;gap:1rem}.login-field[data-v-422e97e2]{display:flex;flex-direction:column;gap:.4rem}.login-field__label[data-v-422e97e2]{font-size:.85rem;font-weight:500;color:#4a5568}.login-input[data-v-422e97e2]{height:42px;border-radius:8px;border:1px solid rgba(0,75,133,.2);padding:0 .85rem;font-size:.95rem;font-family:Rubik,sans-serif;transition:border-color .15s ease,box-shadow .15s ease}.login-input[data-v-422e97e2]:hover{border-color:#004b8559}.login-input[data-v-422e97e2]:focus{outline:none;border-color:var(--lactalis-bleu-moyen);box-shadow:0 0 0 3px #2f80aa33}.login-btn[data-v-422e97e2]{height:44px;border-radius:999px;font-family:Rubik,sans-serif;font-weight:600;font-size:.95rem;cursor:pointer;transition:background .2s ease,opacity .2s ease,transform .05s ease}.login-btn[data-v-422e97e2]:disabled{opacity:.65;cursor:not-allowed}.login-btn--primary[data-v-422e97e2]{border:none;background:var(--lactalis-bleu-principal);color:#fff}.login-btn--primary[data-v-422e97e2]:hover:not(:disabled){background:var(--lactalis-bleu-fonce)}.login-error[data-v-422e97e2]{margin:1rem 0 0;font-size:.9rem;color:var(--color-danger)}/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-600:oklch(51.1% .262 276.966);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-primary:#004b85;--color-success:#647c3a;--color-warning:#fabc43;--color-danger:#da516d}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.left-0{left:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-\[100\]{z-index:100}.z-\[10000\]{z-index:10000}.z-\[10001\]{z-index:10001}.m-0{margin:calc(var(--spacing) * 0)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-14{height:calc(var(--spacing) * 14)}.h-20{height:calc(var(--spacing) * 20)}.h-48{height:calc(var(--spacing) * 48)}.h-full{height:100%}.max-h-\[min\(65vh\,720px\)\]{max-height:min(65vh,720px)}.max-h-\[min\(90vh\,640px\)\]{max-height:min(90vh,640px)}.min-h-\[40px\]{min-height:40px}.min-h-\[44px\]{min-height:44px}.min-h-\[48px\]{min-height:48px}.min-h-\[200px\]{min-height:200px}.min-h-\[300px\]{min-height:300px}.min-h-\[400px\]{min-height:400px}.min-h-\[420px\]{min-height:420px}.min-h-screen{min-height:100vh}.w-6{width:calc(var(--spacing) * 6)}.w-9{width:calc(var(--spacing) * 9)}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[2\.25rem\]{min-width:2.25rem}.min-w-\[6\.5rem\]{min-width:6.5rem}.min-w-\[7\.5rem\]{min-width:7.5rem}.min-w-\[7rem\]{min-width:7rem}.min-w-\[10\.5rem\]{min-width:10.5rem}.min-w-\[120px\]{min-width:120px}.min-w-\[140px\]{min-width:140px}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[4\.5rem_2rem_minmax\(0\,1fr\)_auto\]{grid-template-columns:4.5rem 2rem minmax(0,1fr) auto}.grid-cols-\[100px_1fr\]{grid-template-columns:100px 1fr}.grid-cols-\[110px_1fr\]{grid-template-columns:110px 1fr}.grid-cols-\[130px_1fr\]{grid-template-columns:130px 1fr}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-0{row-gap:calc(var(--spacing) * 0)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.self-center{align-self:center}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[\#e2e8f0\]{border-color:#e2e8f0}.border-\[var\(--color-primary\)\]{border-color:var(--color-primary)}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-300{border-color:var(--color-amber-300)}.border-blue-100{border-color:var(--color-blue-100)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-500{border-color:var(--color-blue-500)}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-300{border-color:var(--color-green-300)}.border-red-500{border-color:var(--color-red-500)}.border-l-gray-400{border-left-color:var(--color-gray-400)}.border-l-indigo-600{border-left-color:var(--color-indigo-600)}.border-l-red-600{border-left-color:var(--color-red-600)}.border-l-yellow-500{border-left-color:var(--color-yellow-500)}.bg-\[var\(--color-danger\)\]{background-color:var(--color-danger)}.bg-\[var\(--color-primary\)\]{background-color:var(--color-primary)}.bg-\[var\(--color-success\)\]{background-color:var(--color-success)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-200{background-color:var(--color-amber-200)}.bg-black{background-color:var(--color-black)}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab,red,red)){.bg-black\/45{background-color:color-mix(in oklab,var(--color-black) 45%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-blue-50\/60{background-color:#eff6ff99}@supports (color:color-mix(in lab,red,red)){.bg-blue-50\/60{background-color:color-mix(in oklab,var(--color-blue-50) 60%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-200{background-color:var(--color-green-200)}.bg-green-300{background-color:var(--color-green-300)}.bg-red-200{background-color:var(--color-red-200)}.bg-red-500{background-color:var(--color-red-500)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing) * 0)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-0\.5{padding-right:calc(var(--spacing) * .5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#0f172a\]{color:#0f172a}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--lactalis-bleu-principal\)\]{color:var(--lactalis-bleu-principal)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-amber-950{color:var(--color-amber-950)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-danger{color:var(--color-danger)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-primary{color:var(--color-primary)}.text-red-600{color:var(--color-red-600)}.text-red-900{color:var(--color-red-900)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.opacity-90{opacity:.9}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-blue-200{--tw-ring-color:var(--color-blue-200)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-none{-webkit-user-select:none;user-select:none}.placeholder\:text-gray-400::placeholder{color:var(--color-gray-400)}@media(hover:hover){.hover\:border-\[\#cbd5e1\]:hover{border-color:#cbd5e1}.hover\:border-amber-400:hover{border-color:var(--color-amber-400)}.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\:border-green-400:hover{border-color:var(--color-green-400)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-50\/80:hover{background-color:#f9fafbcc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-gray-50\/80:hover{background-color:color-mix(in oklab,var(--color-gray-50) 80%,transparent)}}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:text-gray-800:hover{color:var(--color-gray-800)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}}.focus\:border-\[var\(--lactalis-bleu-principal\,\#005eb8\)\]:focus{border-color:var(--lactalis-bleu-principal,#005eb8)}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[var\(--lactalis-bleu-principal\,\#005eb8\)\]:focus{--tw-ring-color:var(--lactalis-bleu-principal,#005eb8)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-blue-400:focus-visible{--tw-ring-color:var(--color-blue-400)}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:self-center{align-self:center}.sm\:p-3{padding:calc(var(--spacing) * 3)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[2fr_1fr\]{grid-template-columns:2fr 1fr}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-3{top:calc(var(--spacing) * 3)}.lg\:max-h-\[calc\(100vh-120px\)\]{max-height:calc(100vh - 120px)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}}}:root{--lactalis-bleu-principal:#004b85;--lactalis-bleu-clair:#5bc5f2;--lactalis-bleu-fonce:#20286d;--lactalis-bleu-fond:#e9ecf7;--lactalis-vert:#647c3a;--lactalis-vert-clair:#aaba7e;--lactalis-rose:#da516d;--lactalis-jaune:#fabc43;--lactalis-bleu-moyen:#2f80aa;--color-primary:var(--lactalis-bleu-principal);--color-primary-hover:var(--lactalis-bleu-clair);--color-success:var(--lactalis-vert);--color-warning:var(--lactalis-jaune);--color-danger:var(--lactalis-rose);--card-bg:#fff;--border:#e5e7eb}*{box-sizing:border-box}body{background:var(--lactalis-bleu-fond);color:#1b1d21;margin:0;font-family:Rubik,sans-serif}.layout{min-height:100vh}.layout:before{content:"";z-index:15;pointer-events:none;background:linear-gradient(90deg,var(--lactalis-bleu-clair),var(--lactalis-bleu-moyen));opacity:.65;height:4px;position:fixed;top:0;left:0;right:0}.sidebar{--sidebar-bg:var(--lactalis-bleu-principal);--sidebar-foreground:#fff;--sidebar-active:var(--lactalis-bleu-clair);background:var(--sidebar-bg);width:260px;height:100vh;color:var(--sidebar-foreground);flex-direction:column;gap:16px;padding:20px;font-family:Rubik,sans-serif;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar-header{flex-shrink:0;margin-bottom:4px}.sidebar-logo-zone{background:0 0;border-bottom:1px solid #ffffff24;margin:0 -20px;padding:8px 12px 12px}.sidebar-logo-img{object-fit:contain;object-position:center center;width:100%;max-width:none;height:auto;max-height:none;display:block}.sidebar-brand-copy{flex-direction:column;align-items:flex-start;min-width:0;padding:14px 0 4px 4px;display:flex}.sidebar-app-title{letter-spacing:.08em;color:var(--sidebar-foreground);margin:0;font-size:1.2rem;font-weight:600;line-height:1.25}.sidebar-app-sub{text-transform:uppercase;letter-spacing:.2em;color:#ffffffc7;margin:6px 0 0;font-size:.68rem;font-weight:300;line-height:1.35}.sidebar nav{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.sidebar a{color:var(--sidebar-foreground);border-radius:8px;padding:10px 12px;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s,background .2s,box-shadow .2s}.sidebar a:hover{color:var(--sidebar-active);background:#5bc5f226}.sidebar a.router-link-active{color:var(--sidebar-active);background:#5bc5f22e;font-weight:600;box-shadow:0 0 12px #5bc5f259}.sidebar-footer{flex-direction:column;flex-shrink:0;gap:10px;display:flex}.sidebar .sidebar-tablet-link{color:inherit;justify-content:center;align-items:center;padding:8px 12px;display:flex}.sidebar .sidebar-tablet-icon{flex-shrink:0;width:1.75rem;height:1.75rem}.sidebar .login{color:var(--sidebar-foreground);cursor:pointer;background:#ffffff1f;border:1px solid #fff6;border-radius:8px;flex-shrink:0;padding:10px 12px;font-family:Rubik,sans-serif;font-weight:500}.sidebar .login:hover{background:#ffffff38;border-color:#ffffff80}.content{background:var(--lactalis-bleu-fond);flex-direction:column;height:100vh;margin-left:260px;padding:24px;font-family:Rubik,sans-serif;display:flex;overflow:hidden}.layout-full .content{margin-left:0}.content>*{--sticky-header-height:72px;flex:1;min-height:0;overflow-y:auto}.content>:has(.header-bar){padding-top:72px}.content>:has(.page-scroll-body){flex-direction:column;display:flex;overflow:hidden}.content>:has(.page-scroll-body)>.header-bar{flex-shrink:0}.content>:has(.page-scroll-body)>.page-scroll-body{flex:1;min-height:0;overflow-y:auto}.filter-bar,.filter-card,.presence-filters-card{border:1px solid #004b851f;border-bottom:2px solid var(--lactalis-bleu-fond);background:#fff;border-radius:10px;flex-shrink:0;margin-bottom:.5rem;padding:1rem;box-shadow:0 2px 8px #004b850f}.content>:not(:has(.page-scroll-body)) .filter-bar,.content>:not(:has(.page-scroll-body)) .filter-card{top:var(--sticky-header-height,88px);z-index:9;position:sticky}.badge,.badge-tag,[class*=badge-]{font-family:Rubik,sans-serif}.badge-tag-default{background-color:var(--lactalis-bleu-principal);color:#fff;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:500}.muted{color:#5f6470}.error{color:var(--color-danger)}.cards{gap:12px;display:grid}.three-cols{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.two-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.card{background:#fff;border:1px solid #004b8514;border-radius:10px;padding:14px;box-shadow:0 2px 8px #004b850f}.metric{margin:8px 0 0;font-size:1.6rem;font-weight:700}.table{border-collapse:collapse;background:#fff;border:1px solid #004b8514;border-radius:10px;width:100%;overflow:hidden;box-shadow:0 2px 8px #004b850f}.table th,.table td{text-align:left;border-bottom:1px solid var(--lactalis-bleu-fond);padding:10px 12px}.table th{background:var(--lactalis-bleu-fond);color:var(--lactalis-bleu-principal);font-size:.85rem;font-weight:600}.list{margin:0;padding-left:16px}.layout .header-bar{z-index:10;box-sizing:border-box;background:var(--lactalis-bleu-principal);color:#fff;border-radius:0;justify-content:space-between;align-items:center;height:72px;min-height:72px;padding:0 1.5rem;display:flex;position:fixed;top:0;left:260px;right:0}.layout-full .header-bar{left:0}.header-bar .header-title h2,.header-bar>h2{margin:0;font-size:1.4rem;font-weight:600}.header-bar .header-subtitle{opacity:.9;margin:.15rem 0 0;font-size:.8rem}.header-bar .header-actions{align-items:center;gap:.5rem;display:flex}.header-bar .header-label{text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.header-bar .form-select{color:#1b1d21;background:#fffffff2;border:none;border-radius:999px;width:auto;min-width:150px;padding:.35rem .75rem;font-size:.85rem}.header-bar .btn-header,.header-bar .btn-outline,.header-bar a.btn-outline,.header-bar .ar-header-back,.header-bar .security-header-back,.header-bar .parking-header-back,.header-bar .presence-header-back{color:var(--lactalis-bleu-principal);background:#fffffff2;border:1px solid #ffffff80;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.header-bar .btn-header:hover,.header-bar .btn-outline:hover,.header-bar a.btn-outline:hover,.header-bar .ar-header-back:hover,.header-bar .security-header-back:hover,.header-bar .parking-header-back:hover,.header-bar .presence-header-back:hover{color:var(--lactalis-bleu-principal);background:#fff}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}.filter-card{background:#f8fafc;border-radius:12px;padding:1rem 1.1rem;border:1px solid #e2e8f0}.filter-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.85rem 1rem;width:100%}.filter-field{display:flex;flex-direction:column;gap:.3rem;min-width:0;flex:0 1 auto}.filter-field-search{flex:1 1 200px;min-width:min(100%,200px);max-width:360px}.filter-field-text{flex:0 1 140px;min-width:100px;max-width:200px}.filter-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.filter-input,.filter-select{height:40px;min-height:40px;padding:0 .8rem;border-radius:8px;border:1px solid #e2e8f0;font-size:.875rem;box-sizing:border-box;background:#fff;color:#0f172a;transition:border-color .15s ease,box-shadow .15s ease}.filter-input::placeholder{color:#94a3b8}.filter-input:hover,.filter-select:hover{border-color:#cbd5e1}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--color-primary, #004b85);box-shadow:0 0 0 3px #004b851f}.filter-select{min-width:148px;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;padding-right:2rem}.filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;padding-bottom:1px}.btn-filter-apply{height:40px;padding:0 1.15rem;background:var(--color-primary, #004b85);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;white-space:nowrap}.btn-filter-apply:hover{filter:brightness(1.05)}.btn-filter-reset{height:40px;padding:0 .9rem;background:transparent;color:#64748b;border:1px solid transparent;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500}.btn-filter-reset:hover{color:#0f172a;background:#ffffffb3;border-color:#e2e8f0}@media(max-width:768px){.filter-field-search{flex:1 1 100%;max-width:none}.filter-field-text{flex:1 1 45%;max-width:none}.filter-actions{margin-left:0;width:100%;justify-content:stretch}.btn-filter-apply{flex:1}}
