.pwa-launch{font:inherit;cursor:pointer;border:1px solid #397a9a;border-radius:9px;padding:11px;background:#12364f;color:#eefaff;min-height:44px;margin:8px 0}
.pwa-dialog{width:min(560px,calc(100vw - 24px));max-height:85dvh;overflow:auto;border:1px solid #36516a;border-radius:16px;padding:22px;color:#e8f4ff;background:#10263b;font:15px/1.6 -apple-system,"Segoe UI",sans-serif;box-sizing:border-box}
.pwa-dialog::backdrop{background:#03101fcc}.pwa-dialog h2{font-size:20px}.pwa-actions{display:grid;gap:10px}.pwa-actions button{padding:12px;min-height:44px;border:1px solid #347497;border-radius:8px;background:#174968;color:#fff;font:inherit;cursor:pointer}.pwa-actions button:disabled{opacity:.5}.pwa-status{padding:12px;background:#091928;border-radius:8px}.mobile-menu-button{display:none}.mobile-connection{position:fixed;bottom:0;left:0;right:0;z-index:5000;background:#7d2c20;color:white;text-align:center;padding:12px}.mobile-connection[hidden]{display:none}
@media(max-width:900px){
 html{ -webkit-text-size-adjust:100%}body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
 .mobile-menu-button{display:inline-block;min-height:44px;padding:8px 14px;background:#12364f;color:white;border:0;border-radius:8px;font-size:16px;flex-shrink:0}
 body .topbar{display:none;position:relative;inset:auto;width:100%;height:auto;max-height:65dvh;overflow:auto;padding:16px;gap:12px}
 body.mobile-menu-open .topbar{display:flex}body .topbar .mainnav{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:8px}body .topbar .nav{font-size:11px;white-space:normal;min-height:48px}body .topbar .user-area{position:static;max-width:none;width:100%;display:flex;gap:12px;margin:0}.user-area .pwa-launch{font-size:13px}
 body .content,body .statusbar{margin-left:0;width:100%;min-width:0;box-sizing:border-box}body .content{padding:12px}body .statusbar{display:flex;align-items:center;gap:12px;padding:10px 12px;position:sticky;top:0;z-index:120;background:white}
 .console-hero{padding:18px!important;flex-wrap:wrap}.console-hero h1{font-size:25px!important}.cc-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cc-kpi{padding:13px}.cc-kpi strong{font-size:28px}.cc-analytics{grid-template-columns:1fr}.today-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .panel,.panel-body,.view,.cc-chart-panel{min-width:0;max-width:100%;box-sizing:border-box}.panel-body{overflow-x:auto}.panel-head{flex-wrap:wrap;gap:10px}.panel-head>div{display:flex;flex-wrap:wrap;gap:6px}.tbl{min-width:650px}
 .btn,button,input,select{min-height:44px}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}input[type=checkbox]{min-height:0;width:22px;height:22px}
 .report-filters,.history-filters,.cfg-grid,.health-grid,.service-grid{grid-template-columns:1fr!important;flex-wrap:wrap}.row2,.row3{flex-wrap:wrap}.row2>*,.row3>*{min-width:0}.filterbar{flex-wrap:wrap}
 .modal{z-index:1500;padding:8px;box-sizing:border-box}.modal-box,.modal-box.wide,.modal-box.zona-box,.modal-box.op-cam-box{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 24px);display:flex;flex-direction:column}.modal-head,.modal-foot{flex-shrink:0;flex-wrap:wrap;gap:8px}.modal-body{min-height:0;overflow:auto}.modal-foot>div{display:flex;gap:8px;flex-wrap:wrap}.modal .row2{flex-direction:column}.modal-body input{min-width:0}.modal-foot .btn{flex:1}
 #modal-evento .triagem{max-height:calc(100dvh - 24px)}#modal-evento .ev-grid{grid-template-columns:1fr}#modal-evento .ev-info{grid-template-columns:1fr 1fr}.ev-detail-list{gap:10px}.ev-img{max-width:100%}.zona-wrap,#z-wrap{max-width:100%;touch-action:manipulation}.live-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.live-toolbar{gap:8px}.storage-overview{flex-wrap:wrap}.analysis-toolbar>div:first-child{min-width:0}
 .cc-brand-panel form{flex-direction:column}.cc-brand-preview{width:100%}.health-heading,.service-heading{flex-wrap:wrap;gap:8px}.op-cam-video{min-height:0}.op-cam-video video{max-height:65dvh;width:100%}
}
@media(max-width:420px){.live-wall{grid-template-columns:1fr}.pwa-dialog{padding:16px}.cc-kpi-label{font-size:9px}.today-card{padding:10px 6px!important}}
.weekly-schedule{width:100%;display:grid;gap:16px}.weekly-schedule fieldset{border:1px solid #ccdbe6;border-radius:12px;padding:16px;min-width:0}.weekly-schedule legend{font-weight:700;color:#183b55}.weekly-schedule p{font-size:13px;line-height:1.6;color:#536c80}.weekly-range{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.weekly-range label{display:grid;gap:6px;flex:1;min-width:100px}.weekly-range input{width:100%;box-sizing:border-box}
.central-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;padding:16px}.central-card{display:flex;flex-direction:column;gap:10px;background:#f4f8fb;border:1px solid #d6e2eb;border-radius:12px;padding:18px;color:#193d55}.central-card strong{font-size:18px}.central-card p{font-size:13px;line-height:1.5;margin:0}.central-card small{font-size:12px}.mobile-alarm-home{display:none}
.mobile-arm-panel{display:none}
@media(min-width:901px){
 .mobile-arm-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,450px);grid-template-areas:'title toggle' 'detail toggle' 'schedule toggle';gap:8px 32px;align-items:center;margin:0 0 22px;padding:26px 30px;border:1px solid #c9e0ea;border-radius:18px;background:linear-gradient(120deg,#f4fbff,#e9f5f8);box-shadow:0 10px 26px #0c3b5610}
 .mobile-arm-panel h1{grid-area:title;margin:0;color:#123a52;font-size:27px;letter-spacing:-.6px}
 .mobile-arm-detail{grid-area:detail;margin:0;color:#527084;font-size:14px;line-height:1.6}
 .mobile-arm-schedule{grid-area:schedule;margin:5px 0 0;color:#597689;font-size:12px;line-height:1.5}
 .mobile-arm-toggle{grid-area:toggle;min-height:178px;border:0;border-radius:16px;padding:22px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;cursor:pointer;font:inherit;box-shadow:0 12px 24px #08243a24;transition:transform .2s ease,box-shadow .2s ease}
 .mobile-arm-toggle:hover{transform:translateY(-3px);box-shadow:0 18px 30px #08243a2c}.mobile-arm-toggle:focus-visible{outline:3px solid #35cffa;outline-offset:4px}
 .mobile-arm-toggle.is-armed{background:linear-gradient(135deg,#087b57,#075d48);color:#fff}.mobile-arm-toggle.is-disarmed{background:linear-gradient(135deg,#c13b42,#972b38);color:#fff}
 .mobile-arm-toggle:disabled{opacity:.65;cursor:wait}.mobile-arm-icon{font-size:48px;line-height:1}.mobile-arm-toggle strong{font-size:18px;letter-spacing:.8px}.mobile-arm-toggle small{max-width:330px;text-align:center;font-size:12px;line-height:1.45;color:inherit;opacity:.9}
}
.billing-filter form{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:18px}.billing-filter label{display:grid;gap:6px;color:#3f5a70;font-size:13px}.billing-filter p{padding:0 18px 14px}.billing-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.billing-kpi{background:#fff;border:1px solid #dae5ed;border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:7px;color:#26465c}.billing-kpi strong{font-size:27px;color:#0b6b91}.billing-kpi span,.billing-kpi small{font-size:12px;line-height:1.4}.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.billing-list{padding:16px}.billing-list p{margin:0;padding:11px 0;border-bottom:1px solid #e3ebf1;line-height:1.5}.billing-note{font-size:12px;line-height:1.6;color:#5e7485;margin:16px 0}
@media print{.topbar,.statusbar,.live-toolbar,.mobile-bottom-nav,.billing-filter,.console-hero button{display:none!important}.content{margin:0!important;padding:0!important}.view.hidden{display:none!important}.view[data-view="reports"]{display:block!important}.panel,.billing-kpi{break-inside:avoid;box-shadow:none!important}.billing-kpis{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.mobile-arm-panel{display:flex;flex-direction:column;align-items:stretch;text-align:center;padding:20px 0}.mobile-arm-panel h1{font-size:25px;margin:8px 0;color:#10263b}.mobile-arm-detail{font-size:14px;color:#5c7182;margin:0 0 20px}.mobile-arm-toggle{min-height:280px;border:0;border-radius:28px;padding:28px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-family:-apple-system,"Segoe UI",sans-serif;box-shadow:0 10px 28px #06182d20;transition:.2s}.mobile-arm-toggle.is-armed{background:#08764d;color:white}.mobile-arm-toggle.is-disarmed{background:#b63232;color:white}.mobile-arm-toggle:disabled{opacity:.6}.mobile-arm-icon{font-size:84px;line-height:1}.mobile-arm-toggle strong{font-size:24px;letter-spacing:.3px}.mobile-arm-toggle small{max-width:290px;font-size:13px;line-height:1.55}.mobile-arm-schedule{font-size:13px;line-height:1.6;color:#496578;margin:20px 8px 0}.mobile-organized .view[data-view="alarm-groups"]>.console-hero,.mobile-organized .view[data-view="alarm-groups"]>.ag-explainer,.mobile-organized .view[data-view="alarm-groups"]>.ag-summary,.mobile-organized .view[data-view="alarm-groups"]>.ag-toolbar,.mobile-organized .view[data-view="alarm-groups"]>.panel,.mobile-organized .view[data-view="alarm-groups"]>#ag-message{display:none!important}}
@media(max-width:900px){.billing-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.billing-kpi{padding:14px}.billing-kpi strong{font-size:22px}.billing-grid{grid-template-columns:1fr}.billing-filter form{display:grid;grid-template-columns:1fr;padding:14px}.billing-filter button{width:100%}}
@media(max-width:900px){.mobile-alarm-home{display:block;margin-bottom:28px}.mobile-alarm-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-alarm-header h1{font-size:24px;color:#10263b;letter-spacing:-.6px;margin:12px 0}.mobile-alarm-count{font-size:13px;line-height:1.6;color:#546e83}.mobile-alarm-home .evidence-grid{grid-template-columns:1fr;gap:14px}.mobile-alarm-home .evidence-card{text-align:left}.mobile-alarm-home>button{width:100%;margin-top:16px}}
.mobile-bottom-nav,.mobile-page-title,.mobile-fold-toggle,.mobile-schedule-link{display:none}.mobile-fold{display:contents}
.mobile-more{border:1px solid #d8e3eb;border-radius:22px;background:#f4f7fa;color:#10263b;width:min(560px,calc(100vw - 24px));max-height:82dvh;overflow:auto;padding:20px;box-sizing:border-box;font-family:-apple-system,"Segoe UI",sans-serif}.mobile-more::backdrop{background:#06182dc9}.mobile-more h2{margin:0;font-size:22px}.mobile-more>p{color:#627486;font-size:14px;line-height:1.5}.mobile-more-group{margin:20px 0}.mobile-more-group h3{margin:0 0 9px;color:#638094;font-size:10px;letter-spacing:1.2px;text-transform:uppercase}.mobile-more-item{display:flex!important;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid #e2e9ef;border-radius:12px;background:white;color:#12364f;padding:12px!important;margin:8px 0;min-height:62px;font:inherit}.mobile-more-item svg{width:23px;height:23px;flex:none;fill:none;stroke:#0d789f;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-more-item span{min-width:0}.mobile-more-item strong{display:block;font-size:14px}.mobile-more-item small{display:block;color:#607589;margin-top:3px;font-size:12px;line-height:1.35}.mobile-more>button{display:block;width:100%;text-align:left;border:1px solid #e2e9ef;border-radius:12px;background:white;color:#12364f;padding:14px;margin:8px 0;min-height:48px;font:inherit}
@media(max-width:900px){
 body.mobile-organized{background:#eef3f7;padding-bottom:calc(84px + env(safe-area-inset-bottom))}
 .mobile-organized .mobile-menu-button,.mobile-organized .topbar,.mobile-organized .statusbar .greet,.mobile-organized .statusbar .cards{display:none!important}
 .mobile-organized .statusbar{padding:16px 20px;border-bottom:1px solid #dce5ed;background:#0a1c30;color:white;min-height:64px;top:env(safe-area-inset-top)}
 .mobile-page-title{display:block;font:700 21px/1.3 -apple-system,"Segoe UI",sans-serif;letter-spacing:-.4px}
 .mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#fff;border-top:1px solid #dce5ed;padding:6px 8px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px #10263b0a}
 .mobile-schedule-link{display:block;width:100%;border:1px solid #bdd8e5;border-radius:12px;background:#e6f3f8;color:#086b92;padding:15px;margin:12px 0;font:600 15px -apple-system,"Segoe UI",sans-serif}
 .mobile-bottom-nav button{background:transparent;color:#65798c;border:0;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 2px;font-size:11px;min-height:58px}.mobile-bottom-nav button.selected{background:#e6f3f8;color:#086b92;font-weight:700}.mobile-bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}
 .mobile-fold{display:block;background:white;border:1px solid #dae4ec;border-radius:14px;margin:12px 0;overflow:hidden}.mobile-fold-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:white;color:#17354d;padding:17px;text-align:left;font-size:15px;font-weight:650;gap:12px}.mobile-fold-toggle::after{content:'+';font-size:22px;color:#337b9a}.mobile-fold.expanded>.mobile-fold-toggle::after{content:'−'}.mobile-fold:not(.expanded)>.mobile-fold-content{display:none!important}.mobile-fold.expanded>.mobile-fold-content{margin:0;border:0;border-radius:0;padding:16px}
 .mobile-organized .content{padding:14px}.mobile-organized .console-hero{margin-bottom:16px;border-radius:16px}.mobile-organized .console-hero p{font-size:13px;line-height:1.6}.mobile-organized .panel{border-radius:14px;margin-bottom:16px}.mobile-organized .cfg-hero{margin:16px 0}.mobile-organized .cfg-detect-grid,.mobile-organized .cfg-clock,.mobile-organized .cfg-advanced-body{display:grid;grid-template-columns:1fr;gap:14px}.mobile-organized .cfg-period{flex-wrap:wrap}.mobile-organized .cfg-savebar{position:static;flex-wrap:wrap;padding:16px;gap:12px}.mobile-organized .cfg-savebar button{width:100%}.mobile-organized .filtro-bar{display:grid;grid-template-columns:1fr;gap:12px}.mobile-organized .filtro-bar>*{width:100%;min-width:0;box-sizing:border-box}.mobile-organized .report-filters{display:grid;grid-template-columns:1fr!important}.mobile-connection{bottom:calc(78px + env(safe-area-inset-bottom))}
}
