/* RedVecinal · Professional administration interface */
:root{--admin-green:#123f37;--admin-green-2:#1b5a4e;--admin-green-soft:#eaf3f0;--admin-canvas:#f5f7f7;--admin-ink:#172522;--admin-muted:#6c7b78;--admin-line:#dfe6e4;--admin-red:#d83f46;--admin-sidebar:264px;--admin-shadow:0 1px 2px rgba(20,46,41,.03),0 8px 24px rgba(20,46,41,.04)}
.ui-icon{width:20px;height:20px;display:inline-block;flex:0 0 auto}.app-body{background:var(--admin-canvas);color:var(--admin-ink);font-size:14px}.app-body .card{border:1px solid var(--admin-line);border-radius:12px;box-shadow:var(--admin-shadow)}
.offline-banner{display:flex;align-items:center;justify-content:center;gap:.45rem}.offline-banner[hidden]{display:none!important}.offline-banner .ui-icon{width:16px;height:16px}
.sidebar{width:var(--admin-sidebar);background:var(--admin-green);padding:0;box-shadow:none;border-right:1px solid rgba(255,255,255,.06)}.sidebar-head{height:78px;display:flex;align-items:center;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.09)}.sidebar-head .brand{flex:1;padding:0;border:0;gap:11px}.sidebar-head .brand-symbol{width:39px;height:39px;border-radius:10px;background:#fff;color:var(--admin-green);font-size:14px;box-shadow:0 6px 20px rgba(0,0,0,.13)}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font-size:16px;letter-spacing:-.01em}.brand-copy small{font-size:10px;color:#a6c0ba;font-weight:500;margin-top:1px}.sidebar-close{display:none;background:transparent;border:0;color:#fff;font-size:24px;cursor:pointer}
.workspace-card{margin:15px 14px 6px;padding:10px 11px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);border-radius:9px;display:flex;align-items:center;gap:9px;color:#fff}.workspace-icon{width:31px;height:31px;border-radius:7px;background:rgba(255,255,255,.1);display:grid;place-items:center}.workspace-icon .ui-icon{width:16px;height:16px}.workspace-card small,.workspace-card strong{display:block}.workspace-card small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#9fb9b3}.workspace-card strong{font-size:12px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}
.side-nav{padding:8px 11px 14px;gap:0;overflow-y:auto}.nav-group+.nav-group{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}.nav-label{margin:0;padding:7px 10px 6px;color:#87a8a0;font-size:9px;letter-spacing:.13em;font-weight:750}.side-nav a{position:relative;min-height:40px;padding:0 10px;margin:2px 0;border-radius:8px;color:#bdd0cc;font-size:12.5px;font-weight:600;gap:11px}.side-nav a .ui-icon{width:18px;height:18px;stroke-width:1.7;color:#9fbbb4}.side-nav a:hover{background:rgba(255,255,255,.065);color:#fff}.side-nav a.active{background:#fff;color:var(--admin-green);box-shadow:0 6px 18px rgba(0,0,0,.11)}.side-nav a.active .ui-icon{color:var(--admin-green);stroke-width:2}.nav-indicator{margin-left:auto;width:5px;height:5px;border-radius:50%;background:#ea6d72;display:none}.side-nav a.active .nav-indicator{display:block}
.sidebar-user{margin-top:auto;padding:13px 14px;border-top:1px solid rgba(255,255,255,.1);gap:9px}.sidebar-user .avatar{width:34px;height:34px;background:#dcece8;color:var(--admin-green);font-size:12px}.user-copy{min-width:0;flex:1}.sidebar-user strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:9.5px;color:#9db8b1;margin-top:2px}.sidebar-user form{margin:0}.icon-button{width:30px;height:30px;border:0;border-radius:7px;background:rgba(255,255,255,.07);color:#bad0ca;display:grid;place-items:center;cursor:pointer}.icon-button:hover{background:rgba(255,255,255,.13);color:#fff}.icon-button .ui-icon{width:16px;height:16px}
.sidebar-backdrop{display:none}.app-main{margin-left:var(--admin-sidebar);min-height:calc(100vh - 46px)}.topbar{height:78px;padding:0 24px;background:#fff;border-bottom:1px solid var(--admin-line);position:sticky;top:0;z-index:850}.topbar-title{display:flex;align-items:center;gap:12px}.breadcrumb-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#83908e;font-weight:650;margin-bottom:2px}.topbar h1{font-size:18px;line-height:1.2;letter-spacing:-.015em;color:var(--admin-ink)}.menu-button{width:36px;height:36px;border:1px solid var(--admin-line);border-radius:8px;background:#fff;color:var(--admin-ink);place-items:center}.menu-button .ui-icon{width:18px;height:18px}.top-actions{gap:8px}.notification-button{position:relative;width:36px;height:36px;border:1px solid var(--admin-line);border-radius:8px;background:#fff;color:#4e5d5a;display:grid;place-items:center;cursor:pointer}.notification-button .ui-icon{width:17px;height:17px}.notification-button span{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--admin-red);color:#fff;font-size:9px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}.primary-action{height:36px;padding:0 13px;font-size:11px;border-radius:8px}.primary-action .ui-icon{width:15px;height:15px}
.content{padding:20px 24px 28px;max-width:1540px}.app-footer{margin-left:var(--admin-sidebar);padding:12px;font-size:10px;color:#85918f}.section-kicker,.card-eyebrow{display:block;color:#6c807b;font-size:9px;letter-spacing:.12em;font-weight:800;margin-bottom:4px}.card-eyebrow{color:#84918f}.text-link{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:750}.text-link .ui-icon{width:13px;height:13px}
.dashboard-hero{min-height:126px;background:var(--admin-green);color:#fff;border-radius:13px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 10px 28px rgba(18,63,55,.12)}.dashboard-hero .section-kicker{color:#9ec1b9}.dashboard-hero h2{font-size:23px;letter-spacing:-.025em;margin:3px 0 5px}.dashboard-hero p{margin:0;color:#bfd4cf;font-size:12px}.hero-meta{display:flex;align-items:center;gap:14px}.hero-meta>span{display:flex;align-items:center;gap:5px;font-size:10px;color:#a9c8c0}.hero-meta .ui-icon{width:14px;height:14px}.hero-meta .btn{height:36px;padding:0 13px;font-size:11px}.hero-meta .btn .ui-icon{width:14px;height:14px}
.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.stat-card{display:block;padding:15px 16px 13px;min-height:150px;border:1px solid var(--admin-line);box-shadow:var(--admin-shadow);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--stat-color,#70807c)}.stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.stat-card .stat-icon{width:33px;height:33px;border-radius:8px;background:var(--stat-bg,#eef2f1);color:var(--stat-color,#60706d)}.stat-card .stat-icon .ui-icon{width:17px;height:17px}.stat-trend{font-size:9px;color:#899592;background:#f3f6f5;border-radius:12px;padding:3px 7px}.stat-card>strong{font-size:28px;letter-spacing:-.04em;line-height:1;color:var(--admin-ink)}.stat-card>p{margin:4px 0 10px;color:#667572;font-size:11px}.stat-card>a{display:flex;align-items:center;gap:2px;color:#60716d;font-size:9.5px;font-weight:700}.stat-card>a .ui-icon{width:11px;height:11px}.stat-caption{font-size:9.5px;color:#8b9694}.stat-danger{--stat-color:#cf3c43;--stat-bg:#fcebed}.stat-success{--stat-color:#26805a;--stat-bg:#e8f4ee}.stat-primary{--stat-color:#286e63;--stat-bg:#e7f2ef}.stat-neutral{--stat-color:#64736f;--stat-bg:#edf1f0}
.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.62fr);gap:12px}.dashboard-side{display:flex;flex-direction:column;gap:12px}.panel-card{overflow:hidden}.panel-card>.card-header{min-height:64px;padding:13px 15px;border-bottom:1px solid #e7eceb}.panel-card>.card-header h2{font-size:13px;letter-spacing:-.01em}.panel-card>.card-header p{font-size:9.5px;margin-top:2px}.report-row{grid-template-columns:36px minmax(0,1fr) auto auto 62px 14px;gap:10px;min-height:68px;padding:9px 14px}.report-row:hover{background:#f8faf9}.report-symbol{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--report-color) 12%,white);color:var(--report-color);font-size:11px;font-weight:850}.report-copy{min-width:0}.report-copy strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-copy span{font-size:9px!important;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-copy i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#b5bfbd;margin:0 4px 2px}.report-row .priority,.report-row .badge{font-size:8.5px;padding:3px 6px}.report-row time{text-align:right}.report-row time strong,.report-row time span{display:block}.report-row time strong{font-size:10px}.report-row time span{font-size:8px;color:#8a9693}.row-chevron{width:13px;height:13px;color:#aab4b2}.empty-state{padding:32px 18px}.empty-state .empty-icon{width:36px;height:36px;border-radius:50%;background:#edf4f2;color:#3f756b;display:grid;place-items:center;margin:0 auto 8px}.empty-state .empty-icon .ui-icon{width:17px;height:17px}.empty-state strong{display:block;font-size:12px}.empty-state p{margin:3px 0 0;font-size:10px}.empty-state.compact{padding:20px 12px}
.quick-actions>a{min-height:55px;padding:9px 12px;border-bottom:1px solid #edf1f0;display:grid;grid-template-columns:31px 1fr 13px;align-items:center;gap:9px;color:var(--admin-ink)}.quick-actions>a:hover{background:#f8faf9}.quick-actions>a>span{width:31px;height:31px;border-radius:7px;background:#ebf3f1;color:var(--admin-green);display:grid;place-items:center}.quick-actions>a>span .ui-icon{width:15px;height:15px}.quick-actions strong,.quick-actions small{display:block}.quick-actions strong{font-size:10.5px}.quick-actions small{font-size:8.5px;color:#899491;margin-top:1px}.quick-actions>a>.ui-icon{width:12px;height:12px;color:#a6b1af}.live-label{display:flex;align-items:center;gap:4px;font-size:8px;color:#26805a;font-weight:800}.live-label i{width:6px;height:6px;border-radius:50%;background:#2a9a69}.emergency-panel .emergency-list a{min-height:49px;padding:8px 13px;align-items:center}.emergency-list a>span strong,.emergency-list a>span small{display:block}.emergency-list a>span strong{font-size:10px;color:var(--admin-ink)}.emergency-list a>span small{font-size:8px;color:#8b9694}.emergency-list a>b{font-size:15px}.notification-row{display:grid;grid-template-columns:6px 1fr;gap:8px;padding:10px 13px}.notification-dot{width:6px;height:6px;border-radius:50%;background:#d83f46;margin-top:4px}.notification-row strong{font-size:10px}.notification-row p{font-size:8.5px;color:#74817e;margin:2px 0}.notification-row small{font-size:7.5px;color:#9ba5a3}
.admin-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:2px 0 15px}.admin-toolbar h2{font-size:19px;letter-spacing:-.02em;margin:2px 0 3px}.admin-toolbar p{font-size:10.5px;color:var(--admin-muted);margin:0}.admin-toolbar .btn{height:36px;font-size:10.5px;padding:0 13px}.admin-toolbar .btn .ui-icon{width:14px;height:14px}.toolbar-actions{display:flex;gap:7px}.table-toolbar{height:51px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--admin-line)}.search-control{height:33px;width:260px;display:flex;align-items:center;gap:7px;background:#f5f7f7;border:1px solid #e1e7e5;border-radius:7px;padding:0 9px}.search-control .ui-icon{width:14px;height:14px;color:#82908d}.search-control input{border:0;outline:0;background:transparent;width:100%;font-size:10px}.result-count{font-size:9px;color:#84918e}.admin-table{margin:0}.admin-table th{height:36px;padding:7px 12px;font-size:8px;letter-spacing:.07em;background:#fafbfb;color:#7e8b88}.admin-table td{height:54px;padding:8px 12px;font-size:10px}.user-cell{display:flex;align-items:center;gap:8px;min-width:180px}.avatar-sm{width:30px!important;height:30px!important;font-size:10px!important}.user-cell strong,.user-cell small{display:block}.user-cell strong{font-size:10.5px}.user-cell small{font-size:8.5px;color:#87928f;margin-top:1px}.role-chip,.count-chip{display:inline-flex;align-items:center;min-height:22px;border-radius:6px;background:#edf3f1;color:#345f57;padding:3px 7px;font-size:8.5px;font-weight:700}.count-chip{min-width:27px;justify-content:center;background:#f0f3f2;color:#53635f}.cell-primary{font-size:10px}.cell-muted{font-size:9.5px;color:#778582}.status-select{min-width:92px;height:30px!important;padding:4px 24px 4px 9px!important;font-size:9px!important;font-weight:700}.status-select.status-activo{border-color:#b9ddca;color:#26744f;background-color:#f0faf5}.status-select.status-pendiente{border-color:#ead39d;color:#8b6410;background-color:#fffaf0}.status-select.status-suspendido{border-color:#e7bec1;color:#a2363b;background-color:#fff5f5}
.modal{backdrop-filter:blur(2px);padding:18px}.modal-dialog{max-width:600px;margin:4vh auto}.modal-dialog-sm{max-width:460px}.modal-content{border-radius:13px;border:1px solid rgba(255,255,255,.4);box-shadow:0 24px 80px rgba(16,44,39,.25)}.modal-header{align-items:flex-start;padding:15px 17px}.modal-header h2{font-size:15px;margin:1px 0}.modal-header p{font-size:9.5px;color:var(--admin-muted);margin:2px 0 0}.modal-header>button{font-size:20px;color:#7a8784}.modal-body{padding:15px 17px}.modal-footer{padding:11px 17px}.modal-footer .btn{height:34px;padding:0 12px;font-size:10px}.modal-footer .btn .ui-icon{width:13px;height:13px}.form-section+.form-section{margin-top:15px;padding-top:14px;border-top:1px solid var(--admin-line)}.form-section h3{font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;color:#52635f}.form-stack{display:grid;gap:11px}.app-body .form-label{font-size:9.5px;font-weight:700;margin-bottom:4px;color:#40514d}.form-label em{font-style:normal;color:#d43e45}.app-body .form-control,.app-body .form-select{height:36px;padding:7px 10px;border-color:#d7dfdd;border-radius:7px;font-size:10.5px;box-shadow:none}.app-body textarea.form-control{height:auto;min-height:78px}.app-body .form-control::placeholder{color:#a1aba9}.app-body .form-control:focus,.app-body .form-select:focus{border-color:#5c9187;box-shadow:0 0 0 3px rgba(27,90,78,.08)}.app-body .form-text{font-size:8.5px}.app-body .btn{border-radius:7px}.page-actions{margin-bottom:12px}.page-actions .btn{height:35px;padding:0 12px;font-size:10px}.filter-bar{gap:6px}.filter-bar .form-control,.filter-bar .form-select{height:35px}.card-body{padding:15px}.card-footer{padding:11px 15px}
.admin-columns{grid-template-columns:1.15fr .85fr;gap:12px}.territory-cell{display:flex;align-items:center;gap:7px}.territory-cell>span{width:27px;height:27px;border-radius:6px;background:#eaf3f0;color:var(--admin-green);display:grid;place-items:center}.territory-cell .ui-icon{width:13px;height:13px}.status-pill{display:inline-flex;align-items:center;gap:5px;font-size:8.5px;text-transform:capitalize}.status-pill i{width:6px;height:6px;border-radius:50%;background:#2c9568}.notice-card{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid #cfe0dc;background:#eff6f4;border-radius:9px;margin-bottom:12px;color:#315d55}.notice-card>.ui-icon{width:20px;height:20px}.notice-card strong{font-size:10.5px}.notice-card p{font-size:9px;margin:1px 0 0;color:#6b7b78}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.role-title{display:flex;align-items:center;gap:9px}.role-title>span{width:32px;height:32px;border-radius:7px;background:#ebf3f1;color:var(--admin-green);display:grid;place-items:center}.role-title .ui-icon{width:16px;height:16px}.role-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;background:#f0f3f2;color:#687672;border-radius:5px;padding:3px 5px}.permission-list{padding:12px 15px!important}.permission-list h3{font-size:8px;letter-spacing:.09em;margin:12px 0 5px;padding-bottom:4px}.permission-list h3:first-child{margin-top:0}.permission-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;border-bottom:1px solid #edf1f0;cursor:pointer}.permission-option span{min-width:0}.permission-option strong,.permission-option small{display:block}.permission-option strong{font-size:9.5px}.permission-option small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7.5px;color:#96a09e}.permission-option input{position:absolute;opacity:0}.permission-option i{position:relative;width:30px;height:17px;border-radius:10px;background:#cfd7d5;transition:.2s;flex:0 0 auto}.permission-option i:before{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.permission-option input:checked+i{background:var(--admin-green-2)}.permission-option input:checked+i:before{transform:translateX(13px)}.permission-option input:disabled+i{opacity:.65}.role-card>.card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.role-card>.card-footer>span{font-size:8px;color:#8b9694}.role-card>.card-footer .btn{height:31px;font-size:9px;padding:0 9px}.role-card>.card-footer .ui-icon{width:12px;height:12px}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-side{display:grid;grid-template-columns:repeat(3,1fr)}.admin-columns{grid-template-columns:1fr}.role-grid{grid-template-columns:1fr}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);z-index:1100;transition:transform .2s ease}.sidebar.open{transform:translateX(0)}.sidebar-close{display:block}.sidebar-backdrop{position:fixed;inset:0;z-index:1050;border:0;background:rgba(12,30,27,.48);opacity:0;visibility:hidden;display:block;transition:.2s}.sidebar.open+.sidebar-backdrop{opacity:1;visibility:visible}.app-main,.app-footer{margin-left:0}.menu-button{display:grid}.content{padding:16px}.dashboard-side{grid-template-columns:1fr 1fr}.notification-panel{grid-column:1/-1}}
@media(max-width:650px){.topbar{height:68px;padding:0 13px}.breadcrumb-label{display:none}.topbar h1{font-size:15px}.primary-action span{display:none}.primary-action{width:36px;padding:0}.content{padding:12px}.dashboard-hero{min-height:150px;padding:18px;align-items:flex-start;flex-direction:column}.dashboard-hero h2{font-size:20px}.hero-meta{width:100%;justify-content:space-between}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{min-height:135px;padding:12px}.stat-card>strong{font-size:24px}.dashboard-side{grid-template-columns:1fr}.notification-panel{grid-column:auto}.report-row{grid-template-columns:34px minmax(0,1fr) 13px}.report-row .priority,.report-row .badge,.report-row time{display:none}.admin-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.table-toolbar{height:auto;gap:8px;align-items:stretch;flex-direction:column}.search-control{width:100%}.result-count{text-align:right}.role-card>.card-footer{align-items:stretch;flex-direction:column}.role-card>.card-footer .btn{width:100%}}

/* Visual system 3: precise, cheerful and professional */
:root{--admin-green:#134f47;--admin-green-2:#1d7468;--admin-green-soft:#e7f4f0;--admin-canvas:#f4f7f6;--admin-ink:#172c31;--admin-muted:#64777a;--admin-line:#d3dfdc;--admin-red:#e05259;--admin-blue:#337db7;--admin-yellow:#e5b640;--admin-shadow:0 1px 2px rgba(17,54,48,.035),0 7px 20px rgba(17,54,48,.045)}
.app-body .card,.dashboard-hero,.stat-card,.panel-card,.notice-card,.workspace-card,.sidebar-head .brand-symbol,.side-nav a,.icon-button,.menu-button,.notification-button,.primary-action,.app-body .btn,.app-body .form-control,.app-body .form-select,.app-body textarea,.modal-content,.modal-dialog,.table-search,.filter-bar,.pet-card,.device-card,.last-seen,.settings-contact,.setting-switch,.retention-field,.map-shell,.settings-map-preview{border-radius:2px!important}
.app-body .badge,.priority-label,.status-badge,.stat-trend,.national-chip,.table-status{border-radius:2px!important}
.sidebar{background:#134f47;border-right:3px solid #1f7d6e}.sidebar-head .brand-symbol{box-shadow:none}.workspace-card{border-left:3px solid #64c7ae;background:rgba(255,255,255,.075)}.side-nav a{border-left:3px solid transparent}.side-nav a:hover{border-left-color:#73cdb7}.side-nav a.active{border-left-color:#efb742;box-shadow:none}.topbar{border-top:3px solid #efb742}.notification-button span,.avatar,.status-dot,.nav-indicator,.setting-switch i,.status-toggle,.status-toggle i{border-radius:50%!important}
.dashboard-hero{background:#134f47;border-left:5px solid #efb742;box-shadow:none}.stat-card:nth-child(2){border-top:3px solid #2a9c72}.stat-card:nth-child(3){border-top:3px solid #337db7}.stat-card:nth-child(4){border-top:3px solid #e5b640}.panel-card>.card-header{background:#fbfcfc}.app-body .btn{min-height:40px;font-weight:750}.app-body .form-control,.app-body .form-select{min-height:42px;border-color:#c6d5d2}.app-body .form-control:focus,.app-body .form-select:focus{border-color:#1d7468;box-shadow:0 0 0 3px rgba(29,116,104,.11)}
.form-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.form-section-title h3{margin:0}.form-section-title p{margin:4px 0 0;color:var(--admin-muted);font-size:11px}.map-location-state{padding:6px 8px;background:#e5f3ec;border-left:3px solid #2b9b70;color:#257453;font-size:9px;font-weight:800;white-space:nowrap}.map-location-state.loading{background:#fff5d9;border-color:#e5b640;color:#7f5d09}.map-location-state.error{background:#fdebed;border-color:#e05259;color:#a52f35}.settings-map-preview{height:280px;margin-top:13px;border:1px solid var(--admin-line);background:#e8efed;overflow:hidden}.settings-map-preview .leaflet-control-zoom a{border-radius:0!important}.settings-map-preview .leaflet-marker-icon{filter:hue-rotate(120deg)}
@media(max-width:650px){.app-body{font-size:13px}.sidebar{width:min(86vw,300px)}.content{padding:10px}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:122px}.panel-card>.card-header{padding:13px}.app-body .card-body{padding:14px}.form-section-title{display:block}.map-location-state{display:inline-block;margin-top:9px}.settings-map-preview{height:230px}.settings-footer{align-items:stretch;flex-direction:column;gap:10px}.settings-footer .btn{width:100%}.topbar-title{min-width:0}.topbar-title>div{min-width:0}.breadcrumb-label,.topbar h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-body .table-responsive{border:1px solid var(--admin-line)}.app-body table{min-width:720px}.modal-body{padding:15px}.modal-footer{padding:12px 15px}.dashboard-hero{border-left-width:4px}}

/* Alerta operativa de pánico: permanece visible hasta confirmar recepción */
.admin-panic-alert[hidden]{display:none!important}.admin-panic-alert{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px}.admin-panic-backdrop{position:absolute;inset:0;background:rgba(34,3,7,.82);backdrop-filter:blur(4px)}.admin-panic-panel{position:relative;width:min(760px,100%);background:#fff;border:2px solid #ffcf42;border-top:7px solid #e0202b;box-shadow:0 28px 100px rgba(0,0,0,.48);animation:panicPanelPulse 1.2s ease-in-out infinite}.admin-panic-head{min-height:112px;padding:20px 22px;background:#c91420;color:#fff;display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:17px;align-items:center}.admin-panic-siren{width:64px;height:64px;border:3px solid #fff;background:#fff;color:#c91420;display:grid;place-items:center;font-size:40px;font-weight:950;line-height:1;animation:panicSiren .75s ease-in-out infinite}.admin-panic-head small{display:block;color:#ffe584;font-size:10px;font-weight:900;letter-spacing:.17em}.admin-panic-head h2{margin:3px 0 0;color:#fff;font-size:27px;letter-spacing:-.025em}.admin-panic-count{align-self:start;background:#ffcf42;color:#401115;padding:6px 9px;font-size:10px;letter-spacing:.04em}.admin-panic-body{padding:21px 22px}.admin-panic-body>p{margin:0 0 16px;color:#561419;font-size:15px;font-weight:800}.admin-panic-data{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e6d9da;border:1px solid #e6d9da}.admin-panic-data>div{min-height:69px;background:#fff;padding:12px 14px}.admin-panic-data small,.admin-panic-data strong,.admin-panic-data a{display:block}.admin-panic-data small{color:#7a6668;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.admin-panic-data strong,.admin-panic-data a{margin-top:4px;color:#231416;font-size:13px;font-weight:850}.admin-panic-data a{color:#b2111b;text-decoration:underline}.admin-panic-code{margin-top:13px;padding:10px 12px;border-left:4px solid #e0202b;background:#fff3f3;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-panic-code span{color:#b2111b;font-weight:950;font-size:12px}.admin-panic-code small{color:#745b5e;font-size:9px;font-weight:700}.admin-panic-error{margin:12px 0 0!important;padding:9px 11px;background:#fff0d4;color:#714f00!important;font-size:10px!important}.admin-panic-actions{padding:15px 22px 20px;display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #eadcdd}.admin-panic-actions .btn{min-height:48px;border-radius:0!important;font-size:12px;font-weight:900}.admin-panic-open{background:#201416;color:#fff;border:1px solid #201416}.admin-panic-open:hover{background:#000;color:#fff}.admin-panic-ack{background:#e0202b;color:#fff;border:1px solid #e0202b}.admin-panic-ack:hover{background:#b90e18;color:#fff}.admin-panic-ack:disabled{opacity:.7}@keyframes panicSiren{50%{transform:scale(1.09);box-shadow:0 0 0 10px rgba(255,255,255,.16)}}@keyframes panicPanelPulse{50%{box-shadow:0 28px 100px rgba(224,32,43,.52)}}
@media(max-width:650px){.admin-panic-alert{padding:8px;align-items:end}.admin-panic-panel{width:100%;max-height:calc(100dvh - 16px);overflow:auto}.admin-panic-head{min-height:96px;padding:15px;grid-template-columns:52px minmax(0,1fr)}.admin-panic-siren{width:48px;height:48px;font-size:30px}.admin-panic-head h2{font-size:20px}.admin-panic-count{grid-column:2;margin-top:-8px;justify-self:start}.admin-panic-body{padding:15px}.admin-panic-data{grid-template-columns:1fr}.admin-panic-data>div{min-height:56px;padding:9px 11px}.admin-panic-code{align-items:flex-start;flex-direction:column}.admin-panic-actions{padding:12px 15px 15px;grid-template-columns:1fr}.admin-panic-actions .btn{min-height:50px}}@media(prefers-reduced-motion:reduce){.admin-panic-panel,.admin-panic-siren{animation:none}}
.admin-panic-live{margin-top:10px;min-height:35px;padding:8px 10px;background:#ecf9f3;border-left:4px solid #1c9b65;display:flex;align-items:center;gap:9px}.admin-panic-live i{width:9px;height:9px;border-radius:50%;background:#1c9b65;box-shadow:0 0 0 5px rgba(28,155,101,.14);animation:panicLiveDot 1.1s ease-in-out infinite}.admin-panic-live strong{font-size:9px;color:#176a48}@keyframes panicLiveDot{50%{transform:scale(1.2);box-shadow:0 0 0 8px rgba(28,155,101,.06)}}

/* Sistema de tablas compacto y consistente */
.app-body .table-card{overflow:hidden;border:1px solid #cdd9d6!important;box-shadow:0 5px 18px rgba(19,79,71,.055)}
.app-body .table-responsive{position:relative;margin:0;background:#fff;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#9db4ae #edf2f1}
.app-body .table-responsive::-webkit-scrollbar{height:7px}.app-body .table-responsive::-webkit-scrollbar-track{background:#edf2f1}.app-body .table-responsive::-webkit-scrollbar-thumb{background:#9db4ae;border:2px solid #edf2f1}
.app-body .table{width:100%;margin:0;border-collapse:separate;border-spacing:0;color:#263a3e;font-variant-numeric:tabular-nums}
.app-body .table>:not(caption)>*>*{box-shadow:none}
.app-body .table>thead>tr>th{height:34px;padding:7px 10px;vertical-align:middle;background:#f1f5f4;color:#62736f;border:0;border-bottom:1px solid #cbd8d5;font-size:7.5px;font-weight:850;line-height:1.2;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap}
.app-body .table>tbody>tr>td{height:46px;padding:7px 10px;vertical-align:middle;background:#fff;color:#2a3b3f;border:0;border-bottom:1px solid #e5ecea;font-size:9.5px;line-height:1.35}
.app-body .table>tbody>tr:nth-child(even)>td{background:#fbfcfc}.app-body .table>tbody>tr:last-child>td{border-bottom:0}.app-body .table>tbody>tr:hover>td{background:#f0f7f5}
.app-body .table th:first-child,.app-body .table td:first-child{padding-left:13px}.app-body .table th:last-child,.app-body .table td:last-child{padding-right:13px}
.app-body .table td>a{color:#17675b;font-weight:850;text-decoration:none}.app-body .table td>a:hover{text-decoration:underline}.app-body .table td>strong,.app-body .table .cell-primary{color:#203438;font-size:9.5px;font-weight:850}.app-body .table td small,.app-body .table .cell-muted{color:#72827f;font-size:8.5px}
.app-body .table .badge,.app-body .table .priority,.app-body .table .status-pill,.app-body .table .count-chip,.app-body .table .category-pill{min-height:20px;padding:3px 6px;border-radius:2px!important;font-size:7.5px;font-weight:850;line-height:1.15;white-space:nowrap}
.app-body .table .count-chip{min-width:27px;display:inline-grid;place-items:center;background:#e7f2ef;color:#1c665b;border:1px solid #cce0db}.app-body .table .status-pill{display:inline-flex;align-items:center;gap:5px}.app-body .table .status-pill i{width:6px;height:6px}
.app-body .table .form-select,.app-body .table .form-control{min-height:30px!important;height:30px!important;padding:4px 25px 4px 8px;border-color:#c8d5d2;font-size:8.5px}.app-body .table .btn{min-height:30px;padding:5px 9px;font-size:8px}
.app-body .table tr[data-href]{cursor:pointer;outline:0}.app-body .table tr[data-href]:focus-visible td{background:#e8f4f1;box-shadow:inset 0 2px #1d7468,inset 0 -2px #1d7468}.app-body .table tr[data-href]:focus-visible td:first-child{box-shadow:inset 2px 0 #1d7468,inset 0 2px #1d7468,inset 0 -2px #1d7468}.app-body .table tr[data-href]:focus-visible td:last-child{box-shadow:inset -2px 0 #1d7468,inset 0 2px #1d7468,inset 0 -2px #1d7468}
.app-body .table .empty-state{height:108px!important;padding:24px!important;color:#74837f;text-align:center;background:#fbfcfc!important;font-size:9.5px}.app-body .table .empty-state.compact{height:70px!important;padding:17px!important}
.app-body .admin-table .user-cell{min-width:180px}.app-body .admin-table .territory-cell{min-width:150px}.app-body .audit-table{min-width:880px}.app-body .audit-table details{max-width:260px}.app-body .audit-table summary{color:#17675b;font-size:8px;font-weight:800;cursor:pointer}.app-body .audit-table pre{max-height:150px;margin:6px 0 0;padding:8px;background:#f3f6f5;border-left:2px solid #1d7468;font-size:7.5px;white-space:pre-wrap}
.app-body .dispatch-table{min-width:940px}.app-body .dispatch-table td:nth-child(2),.app-body .dispatch-table td:nth-child(4){min-width:165px}.app-body .dispatch-status-form{min-width:195px;display:grid;grid-template-columns:minmax(0,1fr) 108px;align-items:center;gap:7px}.app-body .dispatch-status-form .badge{justify-self:start}
@media(max-width:650px){.app-body .table-card{margin-left:0;margin-right:0}.app-body .table-responsive{border:0!important;-webkit-overflow-scrolling:touch}.app-body .table{min-width:690px!important}.app-body .table>thead>tr>th{height:32px;padding:6px 8px;font-size:7px}.app-body .table>tbody>tr>td{height:43px;padding:6px 8px;font-size:9px}.app-body .table th:first-child,.app-body .table td:first-child{padding-left:10px}.app-body .table th:last-child,.app-body .table td:last-child{padding-right:10px}.app-body .audit-table{min-width:860px!important}.app-body .dispatch-table{min-width:920px!important}.app-body .admin-table .user-cell{min-width:165px}.app-body .dispatch-status-form{min-width:185px;grid-template-columns:minmax(0,1fr) 102px}}
