:root{--navy:#172554;--blue:#2563eb;--sky:#38bdf8;--green:#16a34a;--orange:#f97316;--red:#dc2626;--surface:#f6f8fc}*{box-sizing:border-box}body{background:var(--surface);color:#172033}.brand-gradient{background:linear-gradient(135deg,#172554 0%,#2563eb 55%,#06b6d4 100%)}.glass{background:rgba(255,255,255,.9);backdrop-filter:blur(12px)}.card{background:#fff;border:1px solid #e8edf5;border-radius:1.25rem;box-shadow:0 10px 30px rgba(23,37,84,.06)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:.8rem;padding:.7rem 1rem;font-weight:700;transition:.2s}.btn-primary{color:#fff;background:linear-gradient(135deg,#2563eb,#0ea5e9);box-shadow:0 8px 18px rgba(37,99,235,.22)}.btn-primary:hover{transform:translateY(-1px);filter:brightness(.98)}.btn-secondary{background:#eef2ff;color:#1e3a8a}.btn-danger{background:#fee2e2;color:#991b1b}.input{width:100%;border:1px solid #d9e1ee;border-radius:.8rem;padding:.72rem .85rem;background:#fff;outline:none}.input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.12)}.label{font-size:.78rem;font-weight:800;color:#475569;margin-bottom:.35rem;display:block}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .62rem;font-size:.72rem;font-weight:800}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#ffedd5;color:#9a3412}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#e0e7ff;color:#3730a3}.badge-muted{background:#e2e8f0;color:#475569}.sidebar-link{display:flex;align-items:center;gap:.7rem;border-radius:.85rem;padding:.68rem .85rem;color:#cbd5e1;font-weight:650}.sidebar-link:hover,.sidebar-link.active{background:rgba(255,255,255,.11);color:#fff}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap}.data-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;text-align:left;padding:.8rem;background:#f8fafc}.data-table td{padding:.85rem;border-top:1px solid #edf1f7;font-size:.88rem}.toast{animation:slideDown .3s ease}@keyframes slideDown{from{transform:translateY(-10px);opacity:0}to{transform:none;opacity:1}}.pulse-ring{animation:pulse 1.8s infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(37,99,235,.35)}50%{box-shadow:0 0 0 16px rgba(37,99,235,0)}}#map{min-height:430px;border-radius:1rem}.nav-mobile{padding-bottom:env(safe-area-inset-bottom)}@media(max-width:767px){.desktop-sidebar{display:none}.content-shell{padding-bottom:5.5rem}.card{border-radius:1rem}.data-table td,.data-table th{padding:.7rem}.mobile-hide{display:none!important}}@media(min-width:768px){.mobile-nav{display:none}.content-shell{margin-left:16rem}}

