:root{--bg:#06111e;--panel:#0b1a29;--panel2:#102337;--panel3:#142c43;--line:#1d3448;--text:#eef5fb;--muted:#8ca2b5;--orange:#ff6a00;--orange2:#ff8b1a;--green:#1fd07f;--red:#ff435f;--yellow:#f7b844;--blue:#34b4ff;--cyan:#34ded2;--purple:#a78bfa;--shadow:0 18px 55px rgba(0,0,0,.23)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}body{overflow-x:hidden}button,input,select,textarea{font:inherit}.hidden{display:none!important}button{cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 12% 20%,#0f4768 0,transparent 32%),radial-gradient(circle at 88% 80%,#572500 0,transparent 28%),#06111e;padding:30px}.login-shell{width:min(1080px,100%);display:grid;grid-template-columns:1.1fr .72fr;gap:80px;align-items:center}.login-copy .eyebrow{font-size:12px;letter-spacing:.18em;color:#9bb8cc;font-weight:800}.login-copy h1{font-size:54px;line-height:1.04;margin:18px 0 20px}.login-copy h1 span{color:var(--orange2)}.login-copy p{font-size:18px;line-height:1.65;color:#a5bac9;max-width:650px}.login-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.login-points span{background:#0f2233;border:1px solid #24435a;padding:9px 12px;border-radius:999px;color:#c8d9e5;font-size:12px}.login-card{background:rgba(10,25,39,.96);border:1px solid #244056;border-radius:26px;padding:34px;box-shadow:0 40px 120px #0009}.logo-shell{display:flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:18px;box-shadow:none}.login-logo-shell{padding:4px 0;margin:0 auto 18px;max-width:360px}.brand-logo-shell{padding:2px 0;border-radius:14px}.login-logo{width:240px;max-width:100%;display:block;margin:0 auto}.brand img{width:138px;display:block}.product-badge{width:max-content;margin:auto;background:#1a2d40;border:1px solid #294861;border-radius:999px;padding:6px 10px;font-size:10px;letter-spacing:.12em;font-weight:800;color:#a9c6d9}.login-card h2{text-align:center;font-size:25px;margin:18px 0 6px}.login-card>p{text-align:center;color:var(--muted);margin:0 0 24px}.login-card form{display:grid;gap:14px}.login-card label,.form-grid label{display:grid;gap:7px;color:#c3d4df;font-size:12px;font-weight:700}.login-card input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:12px 13px;border-radius:10px;border:1px solid #244057;background:#071522;color:white;outline:0}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#47718e;box-shadow:0 0 0 3px #2a516833}.primary,.btn{border:0;border-radius:10px;padding:11px 14px;background:linear-gradient(90deg,var(--orange2),#ff4f00);color:white;font-weight:800}.wide{width:100%;padding:14px}.ghost,.icon-btn{background:#0c1d2d;border:1px solid var(--line);color:#dce8f0;padding:9px 12px;border-radius:10px}.danger{background:#491a25!important;color:#ffadb7!important}.form-error{color:#ff8794;text-align:center;margin-top:12px;font-size:13px}.login-hint{display:block;text-align:center;margin-top:16px;color:#668196}.app{display:grid;grid-template-columns:235px 1fr;min-height:100vh}aside{position:sticky;top:0;height:100vh;background:#081727;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px 12px;z-index:50}.brand{display:flex;align-items:center;padding:6px 8px 18px;gap:10px}.brand img{width:110px}.brand-project{border-left:1px solid #274056;padding-left:10px}.brand-project b{font-size:17px;color:#ff7a17}.brand-project small{display:block;color:#8299ab;font-size:9px;letter-spacing:.08em}.nav-section{font-size:9px;color:#607b90;font-weight:800;letter-spacing:.13em;margin:13px 11px 5px}nav{display:grid;gap:3px;overflow:auto;padding-right:2px}nav button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#91a9bb;text-align:left;padding:10px 11px;border-radius:9px;font-size:12px;position:relative}nav button>span{width:20px;text-align:center;font-size:16px}nav button:hover,nav button.active{background:#122b40;color:#fff}nav button.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--orange)}.nav-badge{font-style:normal;background:var(--red);color:#fff;border-radius:99px;font-size:9px;padding:2px 6px;margin-left:auto}.aside-footer{margin-top:auto;border-top:1px solid var(--line);padding:12px 6px 0}.user-chip{display:flex;gap:9px;align-items:center;margin-bottom:10px}.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,#2672c4,#244362);display:grid;place-items:center;font-size:11px;font-weight:800}.user-chip b{font-size:11px}.user-chip small{display:block;color:#7e96a8;font-size:9px}.aside-footer button{width:100%;background:transparent;border:1px solid var(--line);color:#ccd9e3;border-radius:8px;padding:7px;font-size:11px}main{padding:0 22px 32px;min-width:0}header{height:82px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:16px}header h2{margin:2px 0 0;font-size:21px}.breadcrumb{color:#6d879b;font-size:10px}header p{margin:3px 0 0;color:var(--muted);font-size:11px}.header-actions{display:flex;align-items:center;gap:8px}.global-search{display:flex;align-items:center;gap:7px;background:#0a1a29;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:#7994a7}.global-search input{border:0;background:transparent;color:white;outline:0;padding:9px 0;width:180px;font-size:11px}.clock{text-align:right;min-width:105px}.clock b{font-size:11px}.clock small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.mobile-menu{display:none}.grid{display:grid;gap:12px}.kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.card{background:linear-gradient(180deg,#0d1e2f,#0a1826);border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:var(--shadow)}.kpi{position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-28px;top:-25px;background:currentColor;opacity:.06}.kpi .kpi-icon{font-size:19px;color:#7fa0b7}.kpi .kpi-value{font-size:25px;font-weight:800;margin-top:9px}.kpi .kpi-label{color:var(--muted);font-size:10px;margin-top:2px}.kpi .kpi-trend{font-size:9px;margin-top:9px;color:#81dbae}.two{grid-template-columns:1.35fr .65fr}.two-even{grid-template-columns:1fr 1fr}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px}.section-title h3{margin:0;font-size:13px}.section-title .sub{color:var(--muted);font-size:9px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.toolbar .actions{display:flex;gap:7px;flex-wrap:wrap}.search{width:min(350px,100%);padding:9px 11px;background:#081625;border:1px solid var(--line);border-radius:9px;color:white}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{padding:10px 9px;border-bottom:1px solid #183147;text-align:left;font-size:10.5px;vertical-align:middle}.table th{color:#7891a5;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#0f2538}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.badge.online,.badge.resolved,.badge.closed{background:#113a2c;color:#5de2a6}.badge.offline,.badge.critical,.badge.active{background:#421923;color:#ff8190}.badge.warning,.badge.open,.badge.high{background:#493715;color:#ffd271}.badge.acknowledged,.badge.in_progress,.badge.medium{background:#17394d;color:#79d8ff}.badge.unknown,.badge.viewer,.badge.normal{background:#233443;color:#b3c6d4}.badge.super_admin,.badge.admin_moov{background:#472513;color:#ffb176}.badge.noc,.badge.supervisor{background:#163b50;color:#7ddcff}.badge.technician{background:#1d412a;color:#7fe0a2}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:#71889a}.status-dot.online{background:var(--green);box-shadow:0 0 8px #1fd07f99}.status-dot.warning{background:var(--yellow)}.status-dot.offline{background:var(--red)}.site-row{cursor:pointer}.small{font-size:9.5px;color:var(--muted)}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.link{background:none;border:0;color:#6bcaff;padding:0}.hero-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(115deg,#0e2c43,#0b1a29 62%,#3d1d0a);margin-bottom:12px}.hero-info{display:flex;align-items:center;gap:13px}.site-thumb{width:76px;height:62px;border-radius:10px;background:linear-gradient(160deg,#1d6380,#9fb6c2 42%,#22384d 43%);position:relative;overflow:hidden}.site-thumb:before{content:"";position:absolute;width:3px;height:50px;background:#dbe6ed;left:38px;top:7px;box-shadow:-9px 15px 0 -1px #dbe6ed,9px 15px 0 -1px #dbe6ed}.site-thumb:after{content:"";position:absolute;left:29px;top:11px;width:21px;height:42px;border-left:1px solid #dbe6ed;border-right:1px solid #dbe6ed;transform:skew(-10deg)}.hero-info h3{font-size:18px;margin:0 0 5px}.hero-info p{font-size:10px;color:#93a8b8;margin:3px 0}.hero-actions{display:flex;gap:7px;flex-wrap:wrap}.quick-strip{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:12px}.status-card{min-height:105px;padding:12px;border-radius:12px;border:1px solid var(--line);background:#0c1d2c}.status-card.highlight{background:linear-gradient(135deg,#063d29,#0a2c22);box-shadow:inset 0 0 35px #00a85a22}.status-card .label{font-size:9px;color:#92a9ba}.status-card .big{font-size:16px;font-weight:800;margin:9px 0 4px}.status-card .desc{font-size:9px;color:#8299aa;line-height:1.45}.status-card .icon{float:right;font-size:21px;color:#9bb1c1}.status-card .good{color:#56dfa4}.site-main{grid-template-columns:1.1fr 1fr .86fr;align-items:stretch}.map-box{height:330px;border-radius:9px;overflow:hidden;background:#0e2b39;position:relative}.map-fallback{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 35% 42%,#315847 0 4%,transparent 5%),linear-gradient(35deg,#173442 25%,#233f38 26% 42%,#142c37 43% 60%,#2c4e40 61%);color:#d5e0e8;text-align:center}.camera-feed{height:330px;border-radius:9px;background:linear-gradient(155deg,#517d72 0 18%,#d8e2dc 19% 31%,#81969a 32% 45%,#334b4a 46% 100%);position:relative;overflow:hidden}.camera-feed:before{content:"";position:absolute;left:15%;right:15%;bottom:16%;height:38%;background:#e2e4df;border:3px solid #70807f;box-shadow:0 -55px 0 -50px #70807f}.camera-feed:after{content:"SMART • SITE MOOV";position:absolute;left:20px;bottom:15px;background:#04111bbb;padding:6px 8px;border-radius:5px;font-size:9px}.live-tag{position:absolute;right:10px;top:10px;background:#d92842;color:#fff;border-radius:5px;padding:4px 7px;font-size:8px;font-weight:800}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.metric-tile{background:#0b1a29;border:1px solid #1a3449;border-radius:9px;padding:9px}.metric-tile span{display:block;font-size:8px;color:#7893a7}.metric-tile b{display:block;margin-top:4px;font-size:15px}.metric-tile small{font-size:8px;color:#7d96a7}.gauge{height:6px;background:#1a3346;border-radius:99px;overflow:hidden;margin-top:7px}.gauge i{display:block;height:100%;background:linear-gradient(90deg,#28d792,#29bde5);border-radius:99px}.lower-grid{grid-template-columns:1.15fr .95fr .9fr;margin-top:12px}.chart-area{height:190px;position:relative}.chart-area svg{width:100%;height:100%}.chart-grid line{stroke:#173149;stroke-width:1}.chart-line{fill:none;stroke:#31bdf4;stroke-width:2}.chart-fill{fill:url(#chartGradient);opacity:.22}.events-chart{display:flex;align-items:flex-end;height:150px;gap:5px;padding:8px 0 0}.events-chart i{flex:1;background:#2779c8;border-radius:3px 3px 0 0;min-height:4px;opacity:.9}.events-chart i.warn{background:#f4a72f}.events-chart i.bad{background:#e93d55}.events-chart i.ok{background:#2aba78}.alarm-list{display:grid;gap:7px}.alarm-item{display:grid;grid-template-columns:8px 1fr auto;gap:8px;align-items:center;padding:8px;border-bottom:1px solid #183047}.alarm-item:last-child{border-bottom:0}.alarm-item .sev{width:7px;height:7px;border-radius:50%;background:var(--red)}.alarm-item.warning .sev{background:var(--yellow)}.alarm-item b{font-size:10px}.alarm-item p{margin:2px 0 0;font-size:8.5px;color:#8299ab}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quick-actions button{background:#10283c;border:1px solid #28445a;color:#dce7ef;border-radius:8px;padding:11px 8px;font-size:9px;font-weight:700}.quick-actions button.danger-action{grid-column:1/-1;background:#a9192e;border-color:#db2441}.quick-actions button.primary-action{background:#1846c7;border-color:#2b5cef}.device-card{display:flex;gap:11px;align-items:flex-start}.device-icon{width:42px;height:42px;border-radius:10px;background:#15344b;display:grid;place-items:center;font-size:19px}.device-card h4{margin:1px 0 4px;font-size:12px}.device-card p{font-size:9px;color:#849bac;margin:2px 0}.report-card{padding:18px}.report-card .report-icon{font-size:25px}.report-card h3{font-size:13px;margin:10px 0 5px}.report-card p{font-size:10px;color:var(--muted);min-height:32px}.empty{padding:35px;text-align:center;color:var(--muted)}.modal{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:20px;z-index:1000}.modal-card{width:min(760px,96vw);max-height:90vh;overflow:auto;background:#0c1c2b;border:1px solid #24435a;border-radius:16px;padding:18px;box-shadow:0 30px 100px #000}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.modal-head h3{margin:0;font-size:15px}.modal-head button{border:0;background:transparent;color:white;font-size:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px}.token-box,.code-block{white-space:pre-wrap;background:#06131f;border:1px solid var(--line);border-radius:9px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:#a8d9f7;word-break:break-word}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:12px}.tabs button{border:0;background:transparent;color:#8099ab;padding:9px 10px;font-size:10px;border-bottom:2px solid transparent}.tabs button.active{color:#fff;border-color:var(--orange)}#toast{position:fixed;right:20px;bottom:20px;z-index:2000}.toast{background:#133225;border:1px solid #246b4a;color:#bff2d8;padding:10px 13px;border-radius:9px;font-size:11px;box-shadow:var(--shadow);margin-top:6px}@media(max-width:1250px){.kpis{grid-template-columns:repeat(3,1fr)}.quick-strip{grid-template-columns:repeat(3,1fr)}.site-main,.lower-grid{grid-template-columns:1fr 1fr}.site-main>.card:last-child,.lower-grid>.card:last-child{grid-column:1/-1}}@media(max-width:900px){.app{display:block}aside{position:fixed;left:-250px;width:235px;transition:.2s}.menu-open aside{left:0}.mobile-menu{display:block;font-size:22px}.login-shell{grid-template-columns:1fr}.login-copy{display:none}main{padding:0 12px 25px}.global-search,.clock{display:none}.two,.two-even,.three,.four,.site-main,.lower-grid{grid-template-columns:1fr}.site-main>.card:last-child,.lower-grid>.card:last-child{grid-column:auto}.kpis,.quick-strip{grid-template-columns:repeat(2,1fr)}.hero-banner{align-items:flex-start;flex-direction:column}.header-actions{margin-left:auto}}@media(max-width:560px){.kpis,.quick-strip{grid-template-columns:1fr}.login-page{padding:15px}.login-card{padding:25px 19px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
/* Premium motion & RPC console */
:root{--neon:#27d7ff;--orange:#ff8a2a;--green:#1fd07f;--red:#ff435f;--violet:#9d7cff}
body{background:radial-gradient(circle at 75% -10%,rgba(39,215,255,.08),transparent 28%),radial-gradient(circle at 20% 110%,rgba(255,138,42,.06),transparent 25%),#06111e}
.card,.status-card,.kpi{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;animation:fadeUp .45s ease both}
.card:hover,.status-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(0,0,0,.2);border-color:rgba(52,180,255,.22)}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(31,208,127,.35)}50%{box-shadow:0 0 0 8px rgba(31,208,127,0)}}
@keyframes rpcDot{0%{transform:scale(.65);opacity:.4}50%{transform:scale(1.2);opacity:1}100%{transform:scale(.65);opacity:.4}}
.status-dot.online,.badge.online{animation:pulseGlow 2.2s infinite}
.rpc-btn{position:relative;overflow:hidden;border:1px solid #29445b;background:linear-gradient(180deg,#142a3d,#0c1b2a);color:#eaf5ff;border-radius:10px;padding:9px 12px;cursor:pointer;transition:.2s;font-size:12px}
.rpc-btn:hover{border-color:#34b4ff;transform:translateY(-1px);box-shadow:0 8px 24px rgba(52,180,255,.12)}
.rpc-btn.rpc-danger{border-color:rgba(255,67,95,.42);background:linear-gradient(180deg,rgba(119,25,42,.5),rgba(66,15,26,.5))}
.rpc-btn.rpc-danger:hover{border-color:#ff435f;box-shadow:0 8px 24px rgba(255,67,95,.16)}
.rpc-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#36d7ff;margin-right:7px;vertical-align:1px;animation:rpcDot 1.8s infinite}.rpc-danger .rpc-pulse{background:#ff6d82}
.rpc-groups{display:grid;gap:12px;margin-bottom:12px}.rpc-groups>div{padding:10px;border-radius:12px;background:rgba(6,17,30,.55);border:1px solid #1d3244}.rpc-groups b{font-size:12px;color:#b9c9d8}.rpc-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.command-deck{background:linear-gradient(145deg,rgba(15,35,52,.96),rgba(8,24,38,.96));position:relative}.command-deck:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(52,180,255,.035),transparent 65%);pointer-events:none}
.rpc-flow{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:20px 8px}.rpc-flow span{padding:10px 13px;border-radius:12px;background:#10263a;border:1px solid #27465f;font-weight:700}.rpc-flow i{font-style:normal;color:#46d5ff;animation:rpcDot 1.6s infinite}
.command-sites{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.command-sites button{display:grid;grid-template-columns:12px 1fr;grid-template-rows:auto auto;gap:2px 8px;text-align:left;padding:12px;background:#0c1e30;color:#fff;border:1px solid #20384d;border-radius:12px;cursor:pointer}.command-sites button:hover{border-color:#34b4ff;background:#10273c}.command-sites small{grid-column:2;color:#8195a8}
.ops-grid{margin-top:12px}.timeline{display:grid;gap:8px}.timeline-item{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.timeline-item i{width:9px;height:9px;border-radius:50%;margin-top:5px;background:#34b4ff;box-shadow:0 0 12px rgba(52,180,255,.45)}.timeline-item.warning i{background:#f7b844}.timeline-item.critical i{background:#ff435f}.timeline-item p{margin:3px 0 0;color:#8095a8;font-size:11px}.command-mini{display:grid;gap:7px}.command-mini>div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid #1b3348;border-radius:10px;background:rgba(7,20,32,.7)}.command-mini small{color:#7f93a7}.badge.sent,.badge.pending{background:rgba(247,184,68,.12);color:#f7c766}.badge.completed{background:rgba(31,208,127,.12);color:#37dc90}.badge.failed{background:rgba(255,67,95,.12);color:#ff6d82}
.hero-banner{background:radial-gradient(circle at 90% 10%,rgba(52,180,255,.12),transparent 25%),linear-gradient(145deg,#0b2235,#091724);border:1px solid #1e3a51;box-shadow:0 24px 70px rgba(0,0,0,.18)}
.quick-strip .status-card{background:linear-gradient(165deg,rgba(18,42,61,.94),rgba(8,23,36,.94))}.quick-strip .status-card.highlight{box-shadow:inset 0 0 35px rgba(31,208,127,.07),0 0 0 1px rgba(31,208,127,.15)}
.camera-feed{position:relative;overflow:hidden;background:linear-gradient(125deg,#0b1c2d,#17374a)}.camera-feed:after{content:"CAMERA LIVE • SMART MOOV";position:absolute;left:-35%;bottom:16%;width:170%;transform:rotate(-8deg);font-size:28px;font-weight:800;letter-spacing:4px;color:rgba(255,255,255,.035);white-space:nowrap}
.live-tag{animation:pulseGlow 2s infinite}
@media(max-width:900px){.rpc-flow{gap:5px}.rpc-flow span{padding:8px;font-size:11px}.command-mini>div{grid-template-columns:auto 1fr}.command-mini small{grid-column:2}}

/* NOC UX — themes, critical visual signalling, smoother live refresh */
:root[data-theme="light"]{--bg:#f3f7fb;--panel:#ffffff;--panel2:#f8fbfe;--panel3:#edf4f9;--line:#d7e2ea;--text:#142231;--muted:#61788b;--shadow:0 14px 40px rgba(29,55,76,.10)}
:root[data-theme="light"] body{background:radial-gradient(circle at 78% -10%,rgba(52,180,255,.12),transparent 28%),#f3f7fb;color:var(--text)}
:root[data-theme="light"] aside{background:#ffffff;border-color:#d9e5ed;box-shadow:10px 0 35px rgba(36,61,79,.05)}
:root[data-theme="light"] nav button{color:#526a7c}:root[data-theme="light"] nav button:hover,:root[data-theme="light"] nav button.active{background:#edf5fb;color:#122838}
:root[data-theme="light"] .card,:root[data-theme="light"] .status-card,:root[data-theme="light"] .metric-tile,:root[data-theme="light"] .command-sites button,:root[data-theme="light"] .rpc-groups>div{background:#fff;color:#172735;border-color:#d8e4ec}
:root[data-theme="light"] .hero-banner{background:linear-gradient(140deg,#ffffff,#edf7fd 68%,#fff2e9)}
:root[data-theme="light"] header,:root[data-theme="light"] .table th,:root[data-theme="light"] .table td{border-color:#dbe5ec}
:root[data-theme="light"] .table tbody tr:hover{background:#f2f8fc}
:root[data-theme="light"] .global-search,:root[data-theme="light"] .search,:root[data-theme="light"] .ghost,:root[data-theme="light"] .icon-btn,:root[data-theme="light"] .rpc-btn{background:#f7fafc;border-color:#d6e2ea;color:#20384a}
:root[data-theme="light"] .global-search input,:root[data-theme="light"] .form-grid input,:root[data-theme="light"] .form-grid select,:root[data-theme="light"] .form-grid textarea{color:#172735;background:#fff;border-color:#d1dee7}
:root[data-theme="light"] .modal-card{background:#fff;color:#172735;border-color:#d5e1ea}
:root[data-theme="light"] .code-block,:root[data-theme="light"] .token-box{background:#f3f8fb;color:#23526e}
:root[data-theme="light"] .camera-feed{background:linear-gradient(125deg,#dce9f2,#bcd8e8)}
:root[data-theme="light"] .login-page{background:radial-gradient(circle at 12% 20%,#cceafe 0,transparent 33%),radial-gradient(circle at 88% 80%,#ffe1c7 0,transparent 28%),#edf5fb}
:root[data-theme="light"] .login-card{background:#fff;color:#172735;border-color:#d1e0e9;box-shadow:0 30px 90px rgba(39,65,83,.18)}
:root[data-theme="light"] .login-card input{background:#f8fbfd;color:#172735;border-color:#d4e1e9}
.theme-toggle{font-size:16px;min-width:38px;transition:transform .25s ease}.theme-toggle:hover{transform:rotate(14deg) scale(1.04)}

.critical-signal{position:fixed;z-index:5000;left:50%;top:15px;transform:translateX(-50%);display:grid;grid-template-columns:38px minmax(220px,1fr) auto;align-items:center;gap:11px;width:min(680px,calc(100vw - 30px));padding:11px 12px;background:rgba(100,5,20,.96);border:1px solid #ff5870;border-radius:14px;color:#fff;box-shadow:0 12px 45px rgba(255,30,64,.35);animation:criticalDrop .35s ease both,criticalGlow 1.15s infinite}.critical-signal b{display:block;font-size:12px;letter-spacing:.07em}.critical-signal small{display:block;margin-top:2px;color:#ffdce1;font-size:10px}.critical-signal button{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.09);color:#fff;border-radius:9px;padding:7px 10px}.critical-beacon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ff2848;font-weight:900;font-size:18px;box-shadow:0 0 0 0 rgba(255,54,82,.75);animation:beaconPulse 1s infinite}
@keyframes criticalDrop{from{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes criticalGlow{0%,100%{box-shadow:0 12px 42px rgba(255,30,64,.28)}50%{box-shadow:0 12px 64px rgba(255,30,64,.55)}}
@keyframes beaconPulse{0%{box-shadow:0 0 0 0 rgba(255,54,82,.8)}70%{box-shadow:0 0 0 13px rgba(255,54,82,0)}100%{box-shadow:0 0 0 0 rgba(255,54,82,0)}}
body.critical-site-alert:after{content:"";position:fixed;inset:0;z-index:4500;pointer-events:none;border:4px solid rgba(255,32,64,.95);box-shadow:inset 0 0 34px rgba(255,30,60,.30);animation:screenDanger 1s infinite}
@keyframes screenDanger{0%,100%{opacity:.28;border-width:3px}50%{opacity:1;border-width:6px}}
.critical-panel,.critical-widget{border-color:#ff435f!important;box-shadow:0 0 0 1px rgba(255,67,95,.55),0 0 28px rgba(255,67,95,.22)!important;animation:criticalWidget 1.1s infinite!important}.critical-widget .big{color:#ff6379!important}
@keyframes criticalWidget{0%,100%{background-color:rgba(74,11,24,.32)}50%{background-color:rgba(125,10,30,.50)}}
.bad-text{color:#ff6379!important}.good{color:#35d98b!important}

/* Prevent periodic polling from replaying entrance animations and appearing to jump. */
body.soft-refresh .card,body.soft-refresh .status-card,body.soft-refresh .kpi{animation:none!important;transition:none!important}
body.soft-refresh #content{overflow-anchor:none}
#content{overflow-anchor:auto}

/* More refined live-state animations */
.metric-tile b{transition:color .2s ease,transform .2s ease}.metric-tile:hover b{transform:translateY(-1px)}
.gauge i{position:relative;overflow:hidden}.gauge i:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.45) 45%,transparent 70%);transform:translateX(-120%);animation:gaugeSweep 2.8s infinite}@keyframes gaugeSweep{55%,100%{transform:translateX(130%)}}
.live-tag:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#ff435f;margin-right:5px;box-shadow:0 0 10px #ff435f;animation:rpcDot 1.2s infinite}

@media(max-width:700px){.critical-signal{grid-template-columns:32px 1fr}.critical-signal button{display:none}.critical-signal{top:8px}.theme-toggle{display:inline-grid;place-items:center}}
.toast.rpc-toast{background:#102d42;border-color:#2f7699;color:#d8f5ff;min-width:260px}.toast.completed,.toast.success{background:#113a2c;border-color:#287b56;color:#c8f6dd}.toast.failed,.toast.timeout,.toast.error{background:#4a1520;border-color:#a83247;color:#ffd0d7}

/* SMART MOOV V7 — motion system / video operations */
:root{--motion-fast:.18s;--motion:.32s;--cyan:#34b4ff;--green:#28d88a;--red:#ff435f;--orange:#ff8a3d}
#content{animation:pageReveal .28s cubic-bezier(.2,.8,.2,1)}
@keyframes pageReveal{from{opacity:0;transform:translateY(7px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
.card,.status-card,.kpi{transition:transform var(--motion) cubic-bezier(.2,.8,.2,1),border-color var(--motion),box-shadow var(--motion),background var(--motion)}
.card:hover{transform:translateY(-2px);border-color:rgba(52,180,255,.28);box-shadow:0 18px 48px rgba(0,0,0,.20)}
.kpi{overflow:hidden;isolation:isolate}.kpi:after{content:"";position:absolute;width:90px;height:180%;right:-70px;top:-40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);transform:rotate(18deg);animation:kpiSweep 6s infinite}.kpi:nth-child(2):after{animation-delay:.8s}.kpi:nth-child(3):after{animation-delay:1.6s}.kpi:nth-child(4):after{animation-delay:2.4s}
@keyframes kpiSweep{0%,65%{transform:translateX(-10px) rotate(18deg)}90%,100%{transform:translateX(-260px) rotate(18deg)}}
.hero-banner{overflow:hidden}.hero-banner:after{content:"";position:absolute;inset:auto -10% -80% 25%;height:190%;background:radial-gradient(circle,rgba(52,180,255,.10),transparent 62%);animation:heroOrbit 9s ease-in-out infinite;pointer-events:none}@keyframes heroOrbit{50%{transform:translate(-6%, -7%) scale(1.12)}}
.status-card .icon,.kpi-icon{transition:transform .25s ease}.status-card:hover .icon,.kpi:hover .kpi-icon{transform:scale(1.12) rotate(-4deg)}
.value-pop{animation:valuePop .55s cubic-bezier(.2,.9,.25,1)}@keyframes valuePop{0%{transform:scale(1);color:inherit}35%{transform:scale(1.09);color:#56d8ff}100%{transform:scale(1);color:inherit}}
.live-dot{color:#ff435f;text-shadow:0 0 10px #ff435f;animation:liveBlink 1.1s infinite}@keyframes liveBlink{50%{opacity:.34}}
.video-wall-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:14px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(10,31,48,.92),rgba(8,22,34,.72));box-shadow:var(--shadow)}.video-wall-head h3{margin:4px 0 6px;font-size:24px}.video-wall-head p{margin:0;color:var(--muted);max-width:760px}.video-wall-stats{display:flex;gap:8px;flex-wrap:wrap}.video-wall-stats span{padding:8px 11px;border-radius:999px;border:1px solid #224259;background:rgba(9,27,42,.75);font-size:11px;color:#a9d8ef}
.camera-wall{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.camera-card{padding:12px}.camera-frame{height:220px;position:relative;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#15374c,#071520 68%);border:1px solid #27485e;box-shadow:inset 0 0 35px rgba(0,0,0,.35)}.site-camera-frame{height:270px}.camera-frame img{width:100%;height:100%;object-fit:cover;display:none;filter:saturate(.95) contrast(1.04);transform:scale(1.01);transition:filter .3s,transform 8s ease}.camera-frame img.media-ready{display:block}.camera-frame:hover img.media-ready{transform:scale(1.045)}.camera-frame:before{content:"";position:absolute;z-index:3;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),transparent 48%,rgba(0,0,0,.36));pointer-events:none}.camera-overlay{position:absolute;z-index:5;left:10px;right:10px;top:9px;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:.06em;text-shadow:0 1px 5px #000}.camera-overlay time{margin-left:auto;color:#eef}.camera-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:5px;color:#7e9cb1}.camera-empty b{color:#bcd4e2}.scanline{position:absolute;z-index:4;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(83,227,255,.8),transparent);box-shadow:0 0 14px rgba(83,227,255,.55);animation:scan 4.5s linear infinite;pointer-events:none}@keyframes scan{from{top:-2%}to{top:102%}}
.media-viewer{display:block;max-width:min(1050px,86vw);max-height:72vh;margin:auto;border-radius:14px;background:#02070b}.media-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;max-height:65vh;overflow:auto}.media-tile{display:grid;text-align:left;gap:5px;padding:13px;border:1px solid #29455a;border-radius:13px;background:#0b1d2b;color:#e9f6ff;cursor:pointer;transition:.2s}.media-tile:hover{transform:translateY(-2px);border-color:#40bfff;background:#102b40}.media-tile>span{font-size:22px;color:#42c7ff}.media-tile small{color:#7f99ab}
.rpc-btn:after,.primary:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(255,255,255,.22),transparent 33%);opacity:0;transition:.2s}.rpc-btn:active:after,.primary:active:after{opacity:1}.rpc-btn:active,.primary:active{transform:translateY(1px) scale(.985)}
nav button{position:relative;overflow:hidden;transition:background .22s,color .22s,transform .22s}nav button:hover{transform:translateX(3px)}nav button.active:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;border-radius:0 4px 4px 0;background:linear-gradient(#39c1ff,#ff7a32);box-shadow:0 0 14px rgba(52,180,255,.55)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
@media(max-width:700px){.video-wall-head{align-items:flex-start;flex-direction:column}.camera-wall{grid-template-columns:1fr}.site-camera-frame{height:220px}}
:root[data-theme="light"] .video-wall-head{background:linear-gradient(135deg,#fff,#edf7fd)}:root[data-theme="light"] .video-wall-stats span{background:#eff7fb;border-color:#d0e3ef;color:#3a6178}:root[data-theme="light"] .media-tile{background:#f8fbfd;color:#173040;border-color:#d5e3eb}:root[data-theme="light"] .media-tile:hover{background:#edf7fc}

/* SMART MOOV V8 — A-9N centric operations */
.noc-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;margin-bottom:14px;border:1px solid rgba(52,180,255,.22);border-radius:20px;background:linear-gradient(135deg,rgba(9,32,52,.95),rgba(8,20,33,.92) 56%,rgba(69,29,4,.78));box-shadow:0 24px 70px rgba(0,0,0,.22)}
.noc-hero:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 180deg,transparent,rgba(52,180,255,.08),transparent,rgba(255,106,0,.06),transparent);animation:nocRotate 20s linear infinite;pointer-events:none}.noc-hero>*{position:relative;z-index:1}.noc-hero h2{font-size:30px;margin:6px 0 8px}.noc-hero p{margin:0;color:var(--muted);max-width:720px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:900;color:#72cfff}.noc-orbit{width:132px;height:132px;border-radius:50%;display:grid;place-content:center;text-align:center;position:relative;border:1px solid rgba(75,204,255,.25);background:radial-gradient(circle,rgba(49,175,231,.11),transparent 64%)}.noc-orbit:before,.noc-orbit:after{content:"";position:absolute;border-radius:50%;inset:10px;border:1px dashed rgba(80,205,255,.35);animation:nocRotate 8s linear infinite}.noc-orbit:after{inset:26px;animation-direction:reverse;animation-duration:5s}.noc-orbit b{font-size:26px}.noc-orbit span{font-size:9px;color:var(--muted)}@keyframes nocRotate{to{transform:rotate(360deg)}}
.site-mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px}.site-mini{border:1px solid var(--line);border-radius:12px;background:rgba(10,29,44,.72);color:var(--text);padding:12px;text-align:left;display:grid;gap:6px;transition:.25s}.site-mini:hover{transform:translateY(-3px) scale(1.01);border-color:#3ebeff;box-shadow:0 15px 34px rgba(0,0,0,.19)}.site-mini b{font-size:12px}.site-mini small{font-size:9px;color:var(--muted)}.site-mini.online{box-shadow:inset 0 0 22px rgba(31,208,127,.05)}
.good-card{border-color:rgba(31,208,127,.25)!important}.architecture-note{padding:13px 15px;margin-bottom:12px;border:1px solid rgba(52,180,255,.24);border-radius:12px;background:linear-gradient(90deg,rgba(25,98,135,.16),rgba(7,26,40,.5));color:#c9eaf8;font-size:11px}.architecture-note b{color:#65d2ff}.success-box{padding:15px;border:1px solid rgba(31,208,127,.3);border-radius:13px;background:rgba(14,66,47,.25);margin-bottom:14px}.token-box{display:inline-block;max-width:100%;word-break:break-all;padding:7px 8px;border-radius:8px;background:#07131e;border:1px solid #244159}
.tower-anim{width:66px;height:66px;position:relative;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(52,180,255,.16),transparent 65%)}.tower-anim:before{content:"";width:3px;height:38px;background:#d8f5ff;box-shadow:-7px 12px 0 -1px #d8f5ff,7px 12px 0 -1px #d8f5ff}.tower-anim i{position:absolute;border:1px solid rgba(52,180,255,.5);border-radius:50%;animation:towerPulse 2.2s infinite}.tower-anim i:nth-child(1){inset:18px}.tower-anim i:nth-child(2){inset:9px;animation-delay:.55s}.tower-anim i:nth-child(3){inset:0;animation-delay:1.1s}@keyframes towerPulse{0%{opacity:.1;transform:scale(.55)}55%{opacity:.9}100%{opacity:0;transform:scale(1.15)}}
.live-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:9px;background:rgba(31,208,127,.12);border:1px solid rgba(31,208,127,.28);color:#72e7ad}.live-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#1fd07f;box-shadow:0 0 12px #1fd07f;animation:liveBlink 1s infinite}
.security-radar{position:relative;height:118px;border-radius:14px;margin:6px 0 12px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle,#123d34 0,#09211e 45%,#071620 70%);border:1px solid rgba(31,208,127,.24)}.security-radar:before,.security-radar:after{content:"";position:absolute;border:1px solid rgba(51,226,160,.2);border-radius:50%;width:170px;height:170px}.security-radar:after{width:90px;height:90px}.security-radar i{position:absolute;width:50%;height:1px;left:50%;top:50%;transform-origin:left;background:linear-gradient(90deg,#35e3a2,transparent);animation:radarSweep 3s linear infinite}.security-radar span{z-index:2;font-size:12px;font-weight:900;letter-spacing:.08em;color:#63e8ae}.security-radar.danger-radar{background:radial-gradient(circle,#531421 0,#2b0c14 48%,#11080d 72%);border-color:#ff435f;box-shadow:0 0 28px rgba(255,67,95,.18)}.security-radar.danger-radar i{background:linear-gradient(90deg,#ff435f,transparent)}.security-radar.danger-radar span{color:#ff7f91;animation:criticalGlow 1s infinite}@keyframes radarSweep{to{transform:rotate(360deg)}}
.timeline{display:grid;gap:8px}.timeline>div{position:relative;padding:9px 10px 9px 20px;border-left:1px solid #29465a;background:rgba(8,24,37,.55);border-radius:0 10px 10px 0}.timeline i{position:absolute;left:-4px;top:14px;width:8px;height:8px;border-radius:50%;background:#4fbfff;box-shadow:0 0 10px #4fbfff}.timeline i.critical{background:#ff435f;box-shadow:0 0 12px #ff435f}.timeline b{font-size:10px}.timeline small{display:block;color:var(--muted);font-size:8px;margin-top:3px}
.spark{width:100%;height:190px;display:block}.chart-empty{height:190px;display:grid;place-items:center;color:var(--muted);font-size:11px;background:linear-gradient(180deg,rgba(52,180,255,.03),transparent);border-radius:10px}.rpc-btn{position:relative;overflow:hidden;border:1px solid #29465d;background:linear-gradient(180deg,#11283b,#0c1d2d);color:#dbeaf3;border-radius:9px;padding:9px 11px;font-size:10px;font-weight:800;transition:.2s}.rpc-btn:hover{transform:translateY(-2px);border-color:#46bfff;box-shadow:0 8px 20px rgba(24,140,210,.15)}.rpc-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.rpc-groups{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.video-actions .primary{position:relative}.stream-warning{padding:10px 12px;margin-bottom:10px;border-radius:10px;background:#3a2c0c;border:1px solid #765b1d;color:#ffdb7d;font-size:10px}.live-iframe{width:min(1100px,86vw);height:min(620px,65vh);border:1px solid #23455e;border-radius:14px;background:#000}.modal-wide{width:min(1160px,95vw)!important}.flow-diagram{display:grid;gap:8px;text-align:center;margin-top:18px;padding:20px;border-radius:14px;background:radial-gradient(circle at 50% 0,rgba(52,180,255,.14),transparent 58%),#071521}.flow-diagram b{padding:12px;border:1px solid #244860;border-radius:10px;background:#0d2435}.flow-diagram i{font-style:normal;color:#57cfff;animation:flowBlink 1.8s infinite}@keyframes flowBlink{50%{opacity:.35;transform:translateY(2px)}}.setting-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line);font-size:11px}.architecture-card{overflow:hidden;position:relative}.architecture-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-80px;bottom:-100px;background:radial-gradient(circle,rgba(52,180,255,.15),transparent 70%);animation:floatGlow 5s ease-in-out infinite}@keyframes floatGlow{50%{transform:translate(-10px,-14px) scale(1.07)}}
.skeleton-page{display:grid;gap:12px}.skeleton-page i{height:110px;border-radius:14px;background:linear-gradient(90deg,#0b1b29 25%,#11283b 38%,#0b1b29 52%);background-size:300% 100%;animation:skeleton 1.3s infinite}@keyframes skeleton{to{background-position:-300% 0}}
:root[data-theme="light"] .noc-hero{background:linear-gradient(135deg,#fff,#eef8fd 58%,#fff1e5)}:root[data-theme="light"] .site-mini{background:#fff}:root[data-theme="light"] .architecture-note{background:#f2f9fd;color:#355d72}:root[data-theme="light"] .flow-diagram{background:#f6fbfe}:root[data-theme="light"] .flow-diagram b{background:#fff;border-color:#d6e6ef}
@media(max-width:1050px){.kpis{grid-template-columns:repeat(3,1fr)}.site-main{grid-template-columns:1fr}.quick-strip{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.noc-hero{align-items:flex-start}.noc-orbit{display:none}.noc-hero h2{font-size:24px}.quick-strip,.kpis{grid-template-columns:repeat(2,1fr)}.live-iframe{width:90vw;height:55vh}}

/* V9 - offline production map + stable auth */
button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
.offline-map{height:520px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 20% 25%,rgba(41,189,229,.11),transparent 22%),radial-gradient(circle at 78% 70%,rgba(255,128,31,.09),transparent 28%),linear-gradient(145deg,#071522,#0c2233)}
:root[data-theme="light"] .offline-map{background:radial-gradient(circle at 20% 25%,rgba(41,189,229,.13),transparent 22%),linear-gradient(145deg,#eef7fb,#dfeef5)}
.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(107,202,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(107,202,255,.06) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.55))}
.map-label.north{position:absolute;right:22px;top:18px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-weight:900;color:var(--muted);background:var(--card)}
.map-pin{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent;color:var(--text);z-index:2;display:grid;justify-items:center;gap:6px;min-width:80px}
.map-pin i{width:16px;height:16px;border-radius:50%;background:#71889a;border:3px solid rgba(255,255,255,.9);box-shadow:0 0 0 7px rgba(113,136,154,.15),0 0 24px rgba(113,136,154,.45);animation:mapPulse 2.4s infinite}
.map-pin.online i{background:var(--green);box-shadow:0 0 0 7px rgba(31,208,127,.13),0 0 25px rgba(31,208,127,.5)}
.map-pin.warning i{background:var(--yellow);box-shadow:0 0 0 7px rgba(244,167,47,.13),0 0 25px rgba(244,167,47,.45)}
.map-pin.offline i{background:var(--red);box-shadow:0 0 0 7px rgba(233,61,85,.13),0 0 25px rgba(233,61,85,.45)}
.map-pin span{font-size:9px;font-weight:800;background:rgba(5,17,29,.86);padding:4px 7px;border:1px solid var(--line);border-radius:7px;white-space:nowrap}
:root[data-theme="light"] .map-pin span{background:rgba(255,255,255,.92)}
.map-empty{position:absolute;inset:0;display:grid;place-items:center}
@keyframes mapPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}

/* Dynamic telemetry presentation */
.data-wait{min-height:140px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px;opacity:.92}
.data-wait b{font-size:1.05rem}.data-wait p{max-width:680px;margin:0;color:var(--muted)}
.details-grid{margin:16px 0 20px}.details-grid .metric-tile small{display:block;margin-top:8px;color:var(--muted);font-size:.72rem}
.table-wrap.nested{margin-top:16px;box-shadow:none}.metric-grid.compact{margin:14px 0}.metric-grid.compact .metric-tile{min-height:92px}

/* V9.2 stability fixes */
body.modal-open{overflow:hidden}.modal{backdrop-filter:blur(5px)}.modal-head{position:sticky;top:-18px;z-index:20;background:linear-gradient(180deg,var(--panel),var(--panel));padding:14px 0 10px}.modal-head button{width:38px;height:38px;border-radius:10px!important;border:1px solid var(--line)!important;background:var(--panel2)!important;color:var(--text)!important;display:grid;place-items:center;line-height:1;transition:.18s}.modal-head button:hover{transform:scale(1.06);border-color:var(--orange)!important}.modal-card{overscroll-behavior:contain}.compact-map{height:300px;margin-top:6px}.ci-shape{position:absolute;left:18%;top:10%;width:64%;height:78%;opacity:.14;clip-path:polygon(34% 0,61% 7%,82% 24%,93% 50%,79% 78%,54% 100%,28% 91%,7% 66%,0 35%,15% 12%);background:linear-gradient(145deg,var(--cyan),var(--blue) 55%,var(--orange));filter:drop-shadow(0 0 18px rgba(52,180,255,.22));pointer-events:none}.offline-map:after{content:"CÔTE D’IVOIRE • SMART MOOV";position:absolute;right:14px;bottom:10px;font-size:9px;letter-spacing:.16em;color:var(--muted);opacity:.7}.map-pin{cursor:pointer}.map-pin:hover{z-index:9;transform:translate(-50%,-50%) scale(1.08)}.map-pin:focus-visible{outline:2px solid var(--orange);outline-offset:4px}.data-wait{margin-top:12px}.metric-tile{min-width:0}.metric-tile b{word-break:break-word}.site-main:empty{display:none}.spark{color:var(--cyan)}

/* V9.3 — cartographie, géolocalisation terrain, 2 caméras et alarmes corrigées */
.real-map{isolation:isolate;min-height:520px;background:#0a1824!important}
.real-map.compact-map{min-height:300px}
.osm-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:0;filter:saturate(.82) contrast(.96) brightness(.72)}
:root[data-theme="light"] .osm-frame{filter:saturate(.86) contrast(.98) brightness(1.02)}
.real-map .map-fallback-grid,.real-map .ci-shape{z-index:1;pointer-events:none;opacity:.11}
.real-map .map-pin{z-index:4}
.real-map .map-attribution{position:absolute;left:10px;bottom:8px;z-index:5;font-size:9px;color:#d5e4ed;background:rgba(4,16,26,.72);padding:4px 7px;border-radius:6px;pointer-events:none}
:root[data-theme="light"] .real-map .map-attribution{color:#263844;background:rgba(255,255,255,.84)}
.map-pin.alarm-critical i{background:#ef334f;box-shadow:0 0 0 8px rgba(239,51,79,.18),0 0 30px rgba(239,51,79,.82);animation:criticalMapPulse 1s infinite}
.map-pin.alarm-warning i{background:#ff9f1c;box-shadow:0 0 0 8px rgba(255,159,28,.16),0 0 28px rgba(255,159,28,.72);animation:mapPulse 1.6s infinite}
.map-pin.alarm-info i{background:#35b8ff;box-shadow:0 0 0 8px rgba(53,184,255,.14),0 0 24px rgba(53,184,255,.55)}
@keyframes criticalMapPulse{0%,100%{transform:scale(.92);box-shadow:0 0 0 4px rgba(239,51,79,.18),0 0 18px rgba(239,51,79,.55)}50%{transform:scale(1.18);box-shadow:0 0 0 14px rgba(239,51,79,.04),0 0 38px rgba(239,51,79,.95)}}
.map-legend{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 12px;font-size:10px;color:var(--muted)}
.map-legend span{display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel2)}
.legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#71889a}.legend-dot.critical{background:#ef334f}.legend-dot.warning{background:#ff9f1c}.legend-dot.info{background:#35b8ff}.legend-dot.online{background:var(--green)}.legend-dot.offline{background:#71889a}
.geo-capture{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;border-radius:13px;border:1px solid rgba(52,180,255,.28);background:linear-gradient(100deg,rgba(52,180,255,.1),rgba(255,128,31,.06))}
.geo-capture p{margin:4px 0 0}.geo-button{white-space:nowrap}.geo-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 0 rgba(53,184,255,.5);animation:geoPulse 1.1s infinite}@keyframes geoPulse{70%{box-shadow:0 0 0 9px rgba(53,184,255,0)}100%{box-shadow:0 0 0 0 rgba(53,184,255,0)}}
.camera-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.camera-unit{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.camera-unit h4{margin:0}.camera-unit.camera-alert{border-color:rgba(239,51,79,.55);box-shadow:0 0 0 1px rgba(239,51,79,.1),0 0 24px rgba(239,51,79,.12)}
.table-actions{display:flex;gap:7px;flex-wrap:wrap}.success{background:rgba(31,208,127,.14);border:1px solid rgba(31,208,127,.38);color:#c8f6dd;border-radius:9px;padding:7px 10px;cursor:pointer}.success:hover{background:rgba(31,208,127,.22)}
.badge.corrected{background:rgba(31,208,127,.12);border-color:rgba(31,208,127,.3);color:#b9f5d6}
@media(max-width:800px){.camera-pair{grid-template-columns:1fr}.geo-capture{align-items:stretch;flex-direction:column}.geo-button{width:100%}.real-map{min-height:430px}}
.alarm-inline-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.compact-action{padding:5px 8px;font-size:9px;white-space:nowrap}

/* V9.4 - Administration utilisateurs et règles */
.profile-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 14px}.profile-chip{padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--card);display:flex;flex-direction:column;gap:3px}.profile-chip span{font-size:11px;opacity:.65}.role-help{margin-top:8px;padding:10px 12px;border-radius:12px;background:rgba(255,138,0,.08);border:1px solid rgba(255,138,0,.18);display:flex;flex-direction:column;gap:4px}.role-help span{font-size:12px;opacity:.78}.security-note{padding:10px 12px;border-radius:12px;border:1px dashed var(--border);font-size:12px;opacity:.8}.danger-btn{border:1px solid rgba(255,74,74,.35);background:rgba(255,74,74,.08);color:#ff7070;border-radius:10px;padding:8px 10px;cursor:pointer}.danger-btn:hover{background:rgba(255,74,74,.16)}.badge.disabled{opacity:.65}.table-actions{display:flex;gap:7px;flex-wrap:wrap}

/* V10 — SMART Sentinel: palette harmonisée et actions opérationnelles */
:root{--bg:#07111b;--panel:#0c1a27;--panel2:#102233;--panel3:#152b3e;--line:#20384b;--orange:#f47b20;--orange2:#ff9138;--blue:#2b9bd8;--cyan:#38c7d9;--green:#28c786;--red:#ef4b5f;--yellow:#eeb14a}
.brand-project b{color:var(--orange2)}
.primary,.btn{background:linear-gradient(135deg,var(--orange2),var(--orange));box-shadow:0 8px 22px rgba(244,123,32,.14)}
nav button:hover,nav button.active{background:linear-gradient(90deg,rgba(244,123,32,.12),rgba(43,155,216,.05));color:#fff}
.card{background:linear-gradient(180deg,rgba(15,32,47,.98),rgba(9,23,35,.98))}
.operations-note,.decision-panel{display:flex;align-items:center;gap:12px;padding:13px 15px;margin-bottom:12px;border-radius:13px;background:linear-gradient(90deg,rgba(43,155,216,.11),rgba(244,123,32,.06));border:1px solid rgba(60,135,175,.25)}
.operations-note span,.decision-panel p{color:var(--muted);font-size:11px;margin:0}.warning-action{border:1px solid rgba(238,177,74,.4);background:rgba(238,177,74,.12);color:#ffd483;border-radius:9px;padding:8px 10px;font-weight:800}.warning-action:hover{background:rgba(238,177,74,.2)}
.false-positive-card{margin-top:12px;position:relative;overflow:hidden}.false-positive-card:after{content:"";position:absolute;width:180px;height:180px;right:-70px;top:-90px;border-radius:50%;background:radial-gradient(circle,rgba(56,199,217,.16),transparent 68%)}.fusion-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:15px}.fusion-flow span,.fusion-flow b{padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);font-size:11px}.fusion-flow b{border-color:rgba(40,199,134,.35);background:rgba(40,199,134,.08);color:#7ce5b5}.fusion-flow i{font-style:normal;color:var(--orange2);font-weight:900}

.edge-summary{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,rgba(43,155,216,.1),rgba(244,123,32,.05))}.edge-summary h3{margin:3px 0}.edge-summary p{margin:4px 0;color:var(--muted);font-size:11px}.edge-badge{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--orange2),var(--orange));color:#fff;font-weight:900;box-shadow:0 10px 28px rgba(244,123,32,.2)}.activation-details{margin-top:14px;padding:12px;border:1px dashed var(--line);border-radius:12px}.activation-details summary{cursor:pointer;font-weight:800;font-size:11px}.activation-details .token-box{margin-top:10px}

/* V11 — cartographie GPS exacte, statistiques NOC, zones, interventions et SMTP */
.smart-geo-map{position:relative;height:520px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#091725;isolation:isolate}.smart-geo-map.compact-map{height:310px}.geo-tiles,.geo-fallback{position:absolute;inset:0}.geo-fallback{background:radial-gradient(circle at 25% 25%,rgba(56,199,217,.1),transparent 25%),linear-gradient(145deg,#071521,#10283a)}.geo-tile{position:absolute;width:256px;height:256px;max-width:none;user-select:none;pointer-events:none;filter:saturate(.82) brightness(.78) contrast(.96)}:root[data-theme="light"] .geo-tile{filter:saturate(.88) brightness(1.02)}.geo-pin{position:absolute;transform:translate(-50%,-50%);z-index:8;border:0;background:transparent;color:var(--text);display:grid;justify-items:center;gap:4px;min-width:76px}.geo-pin i{display:block;width:17px;height:17px;border-radius:50%;background:#71889a;border:3px solid #fff;box-shadow:0 0 0 7px rgba(113,136,154,.16),0 0 24px rgba(113,136,154,.45)}.geo-pin span{font-size:9px;font-weight:900;white-space:nowrap;padding:4px 7px;border-radius:7px;background:rgba(5,17,29,.9);border:1px solid rgba(255,255,255,.12)}.geo-pin>b{position:absolute;right:-1px;top:-7px;min-width:18px;height:18px;padding:0 4px;border-radius:99px;display:grid;place-items:center;background:var(--red);color:#fff;font-size:9px;box-shadow:0 4px 15px rgba(239,75,95,.35)}.geo-pin:hover{z-index:15;transform:translate(-50%,-50%) scale(1.08)}.geo-pin.online i{background:var(--green)}.geo-pin.offline i{background:#778d9d}.geo-pin.warning i,.geo-pin.alarm-warning i{background:var(--yellow);box-shadow:0 0 0 8px rgba(238,177,74,.17),0 0 28px rgba(238,177,74,.65)}.geo-pin.alarm-info i{background:var(--blue);box-shadow:0 0 0 8px rgba(43,155,216,.14),0 0 26px rgba(43,155,216,.55)}.geo-pin.alarm-critical i{background:var(--red);box-shadow:0 0 0 8px rgba(239,75,95,.18),0 0 30px rgba(239,75,95,.8);animation:criticalMapPulse 1s infinite}.geo-controls{position:absolute;right:12px;top:12px;z-index:20;display:grid;gap:6px}.geo-controls button{width:35px;height:35px;border-radius:9px;border:1px solid var(--line);background:rgba(8,23,36,.92);color:#fff;font-size:20px;font-weight:800}.geo-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted)}.smart-geo-map .map-attribution{position:absolute;left:10px;bottom:8px;z-index:20;font-size:9px;color:#d5e4ed;background:rgba(4,16,26,.76);padding:4px 7px;border-radius:6px}.map-empty{position:absolute;inset:0;display:grid;place-items:center;z-index:7}
.dashboard-charts{grid-template-columns:minmax(290px,.8fr) minmax(0,1.8fr);margin-top:12px;margin-bottom:12px}.chart-card{min-height:320px}.wide-chart{min-width:0}.donut-wrap{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;padding:14px 4px}.donut{width:174px;height:174px;border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 22px rgba(0,0,0,.28),0 12px 35px rgba(0,0,0,.14)}.donut:after{content:"";position:absolute;inset:26px;border-radius:50%;background:var(--panel);box-shadow:0 0 0 1px var(--line)}.donut>div{z-index:2;text-align:center}.donut b{font-size:30px}.donut span{display:block;color:var(--muted);font-size:10px}.chart-legend{display:grid;gap:9px}.chart-legend span{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:8px;padding:8px 9px;border-radius:9px;background:rgba(255,255,255,.025);font-size:10px}.chart-legend i{width:9px;height:9px;border-radius:50%}.stat-line{width:100%;height:220px;display:block}.axis-labels{display:grid;grid-template-columns:repeat(7,1fr);font-size:9px;color:var(--muted);text-align:center;margin-top:-3px}.zone-bars{display:grid;gap:13px;margin-top:10px}.zone-bar-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,2fr) 48px;gap:12px;align-items:center}.zone-bar-row>div:first-child b{display:block;font-size:11px}.zone-bar-row>div:first-child span{display:block;font-size:9px;color:var(--muted);margin-top:3px}.zone-track{height:9px;border-radius:99px;background:#13293b;overflow:hidden}.zone-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--green));box-shadow:0 0 16px rgba(40,199,134,.25)}.zone-bar-row strong{font-size:11px;text-align:right}.alarm-click{width:100%;border:0;text-align:left;color:inherit;cursor:pointer}.alarm-focus-row{background:rgba(244,123,32,.08)!important}.alarm-focus-pulse{animation:alarmFocus 1s ease 3}@keyframes alarmFocus{50%{box-shadow:inset 0 0 0 2px var(--orange),0 0 25px rgba(244,123,32,.2)}}
.intervention-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px}.intervention-card.in_progress{border-color:rgba(238,177,74,.5);box-shadow:0 0 26px rgba(238,177,74,.08)}.intervention-card.completed{opacity:.78}.intervention-time{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:14px 0;padding:12px;border-radius:12px;background:var(--panel2);font-size:10px}.intervention-time b:last-child{text-align:right}.intervention-time span{color:var(--orange2);font-weight:900}.intervention-state{min-height:22px;color:var(--green);font-size:10px;font-weight:700;margin:8px 0}.check-line{grid-template-columns:auto 1fr!important;display:flex!important;align-items:center;gap:10px!important}.check-line input{width:auto!important}
.zone-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.zone-admin-card{position:relative;overflow:hidden}.zone-admin-card:after{content:"";position:absolute;width:140px;height:140px;right:-60px;top:-65px;border-radius:50%;background:radial-gradient(circle,rgba(43,155,216,.12),transparent 70%);pointer-events:none}.zone-counts{display:flex;gap:10px;margin:14px 0}.zone-counts span{padding:9px 11px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);font-size:10px}.zone-counts b{font-size:15px;margin-right:4px;color:var(--orange2)}
.smtp-card{margin-top:12px}.smtp-card .form-grid{margin-top:14px}.critical-actions{display:flex;gap:7px}.critical-treat{background:#fff!important;color:#9b1024!important;font-weight:900!important}
:root[data-theme="light"] .geo-pin span{background:rgba(255,255,255,.94);color:#1d3445;border-color:#cad9e2}:root[data-theme="light"] .geo-controls button{background:rgba(255,255,255,.94);color:#233746}.site-mini.alarm-critical{border-color:rgba(239,75,95,.6)!important}.site-mini.alarm-warning{border-color:rgba(238,177,74,.55)!important}.site-mini.alarm-info{border-color:rgba(43,155,216,.45)!important}
@media(max-width:1050px){.dashboard-charts{grid-template-columns:1fr}.donut-wrap{grid-template-columns:160px 1fr}.donut{width:150px;height:150px}.zone-bar-row{grid-template-columns:1fr}.zone-bar-row strong{text-align:left}}@media(max-width:700px){.smart-geo-map{height:430px}.smart-geo-map.compact-map{height:280px}.donut-wrap{grid-template-columns:1fr;justify-items:center}.chart-legend{width:100%}.intervention-grid,.zone-admin-grid{grid-template-columns:1fr}.critical-actions{display:grid}.critical-actions button{display:block!important}}
/* Operations layout */
.mobile-backdrop{display:none}.armed-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.05em;border:1px solid}.armed-pill.armed{color:#91f5c1;background:rgba(42,186,120,.12);border-color:rgba(42,186,120,.45);box-shadow:0 0 18px rgba(42,186,120,.12)}.armed-pill.disarmed{color:#ffd58a;background:rgba(244,167,47,.11);border-color:rgba(244,167,47,.5);animation:securityPulse 2.3s ease-in-out infinite}.armed-pill.unknown{color:#9db0bd;border-color:#40596a;background:#102030}@keyframes securityPulse{50%{box-shadow:0 0 0 5px rgba(244,167,47,.06)}}.alarm-count{border:0;border-radius:999px;padding:5px 9px;font-weight:900}.alarm-count.critical{background:#a9192e;color:#fff}.alarm-count.warning{background:#684a16;color:#ffd58a}.clickable{cursor:pointer}.filter-bar{display:flex;gap:8px;margin:0 0 12px}.filter-bar input{flex:1}.ge-cockpit-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ge-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;padding:28px;border:1px solid #224760;border-radius:20px;background:radial-gradient(circle at 85% 20%,rgba(34,111,181,.28),transparent 30%),linear-gradient(135deg,#0d2436,#071521);box-shadow:var(--shadow);margin-bottom:14px}.ge-hero:after{content:"";position:absolute;right:-30px;top:-70px;width:260px;height:260px;border:1px solid rgba(73,164,230,.22);border-radius:50%;box-shadow:0 0 0 35px rgba(73,164,230,.025),0 0 0 70px rgba(73,164,230,.02);animation:orbit 9s linear infinite}.ge-hero h2{font-size:30px;margin:4px 0}.engine-live{position:relative;z-index:2;display:grid;justify-items:center;gap:8px;font-size:10px;font-weight:900}.engine-live i{width:58px;height:58px;border-radius:50%;background:#2aba78;box-shadow:0 0 0 9px rgba(42,186,120,.08),0 0 28px rgba(42,186,120,.35);animation:pulse 1.8s infinite}.ge-dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.gauge-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:12px 0}.round-gauge{display:grid;justify-items:center;gap:9px}.round-gauge>div{width:105px;height:105px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--orange) var(--pct),#173047 0);position:relative;box-shadow:0 10px 30px #0005}.round-gauge>div:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#0b1c2a}.round-gauge b,.round-gauge small{position:relative;z-index:1}.round-gauge b{font-size:20px}.round-gauge span{font-size:10px;font-weight:800;color:var(--muted)}.fuel-widget{height:100%;display:grid;grid-template-columns:100px 1fr;align-items:center;gap:20px}.fuel-tank{width:86px;height:180px;border:3px solid #557181;border-radius:14px 14px 22px 22px;padding:6px;position:relative;overflow:hidden;background:#091723}.fuel-liquid{position:absolute;left:6px;right:6px;bottom:6px;border-radius:7px 7px 13px 13px;background:linear-gradient(180deg,#ffbf45,#f28d1b);transition:height .8s ease;overflow:hidden}.fuel-liquid i{position:absolute;left:-30%;top:-8px;width:160%;height:15px;border-radius:50%;background:#ffd779aa;animation:wave 2.8s ease-in-out infinite}@keyframes wave{50%{transform:translateX(12px) rotate(2deg)}}.fuel-lines{position:absolute;inset:10px;background:repeating-linear-gradient(180deg,transparent 0 31px,rgba(255,255,255,.12) 32px 33px);pointer-events:none}.fuel-widget b{display:block;font-size:34px;margin:5px 0}.ge-stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:14px}.ge-stat{padding:14px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(180deg,rgba(28,60,82,.42),rgba(8,24,36,.3))}.ge-stat span,.ge-stat small{display:block;color:var(--muted);font-size:9px}.ge-stat b{display:block;font-size:18px;margin:7px 0}.ge-history{margin-top:14px}.ge-filters{display:flex;gap:7px}.ge-chart{height:280px;color:#3ea6ff}.ge-chart svg{width:100%;height:240px;overflow:visible}.ge-chart polyline{stroke:currentColor;stroke-width:3;filter:drop-shadow(0 0 7px rgba(62,166,255,.35))}.ge-chart-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.operation-note{padding:11px;border-radius:10px;background:#122b3c;color:#a9c2d3;font-size:10px;margin-bottom:12px}
@media(max-width:900px){.mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:89}.menu-open .mobile-backdrop{display:block}.menu-open aside{z-index:90;box-shadow:30px 0 80px #000b}.ge-dashboard-grid{grid-template-columns:1fr}.gauge-row{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-direction:column}.ge-hero{padding:20px}.ge-hero h2{font-size:23px}}
@media(max-width:560px){.gauge-row{grid-template-columns:1fr 1fr}.round-gauge>div{width:88px;height:88px}.fuel-widget{grid-template-columns:80px 1fr}.fuel-tank{width:68px;height:145px}.ge-cockpit-head{align-items:flex-start;gap:8px}.ge-filters{flex-direction:column}.table-actions{flex-wrap:wrap}}

/* Visual fixes */
.smart-geo-map{touch-action:none;cursor:grab}.smart-geo-map.dragging{cursor:grabbing}.geo-pin,.geo-controls{touch-action:manipulation}.geo-pin span{box-shadow:0 8px 18px rgba(0,0,0,.22)}
.section-title h3,.card h2,.card h3,.table td,.hero-info h3,.status-card .big,.metric-tile b,.setting-row b,.chart-legend b,.alarm-item b,.ge-stat b{color:var(--text)}
.section-title .sub,.small,.muted,.table th,.setting-row span,.metric-tile span,.axis-labels,.chart-legend span,.ge-chart-axis,.login-card>p,.login-hint,.user-chip small,.breadcrumb,.clock small,.page-filter label,.smart-geo-map .map-attribution{color:var(--muted)}
:root:not([data-theme="light"]) .card,:root:not([data-theme="light"]) .status-card,:root:not([data-theme="light"]) .metric-tile,:root:not([data-theme="light"]) .modal-card,:root:not([data-theme="light"]) .login-card{box-shadow:0 20px 55px rgba(0,0,0,.28)}
:root:not([data-theme="light"]) .ghost,:root:not([data-theme="light"]) .icon-btn,:root:not([data-theme="light"]) .global-search,:root:not([data-theme="light"]) .search{background:#102132;color:#eef5fb;border-color:#284459}
:root:not([data-theme="light"]) .global-search input,:root:not([data-theme="light"]) .search,:root:not([data-theme="light"]) .form-grid input,:root:not([data-theme="light"]) .form-grid select,:root:not([data-theme="light"]) .form-grid textarea{color:#eef5fb}
:root:not([data-theme="light"]) .table tbody tr:hover{background:#112a3e}.geo-controls button:focus-visible,.geo-pin:focus-visible,.ghost:focus-visible,.icon-btn:focus-visible,button:focus-visible{outline:2px solid var(--orange2);outline-offset:2px}
:root[data-theme="light"] .smart-geo-map{background:#dcebf4;border-color:#cfe0ea}
:root[data-theme="light"] .geo-fallback{background:radial-gradient(circle at 25% 25%,rgba(43,155,216,.12),transparent 25%),linear-gradient(145deg,#edf7fc,#dcebf4)}
:root[data-theme="light"] .geo-pin span{box-shadow:0 8px 18px rgba(45,73,90,.12)}
:root[data-theme="light"] .section-title h3,:root[data-theme="light"] .table td,:root[data-theme="light"] .hero-info h3,:root[data-theme="light"] .status-card .big,:root[data-theme="light"] .metric-tile b,:root[data-theme="light"] .setting-row b,:root[data-theme="light"] .chart-legend b,:root[data-theme="light"] .alarm-item b,:root[data-theme="light"] .ge-stat b{color:#132333}
:root[data-theme="light"] .section-title .sub,:root[data-theme="light"] .small,:root[data-theme="light"] .muted,:root[data-theme="light"] .table th,:root[data-theme="light"] .setting-row span,:root[data-theme="light"] .metric-tile span,:root[data-theme="light"] .axis-labels,:root[data-theme="light"] .chart-legend span,:root[data-theme="light"] .ge-chart-axis,:root[data-theme="light"] .login-hint,:root[data-theme="light"] .breadcrumb,:root[data-theme="light"] .clock small,:root[data-theme="light"] .smart-geo-map .map-attribution{color:#587184}
:root[data-theme="light"] .global-search input{color:#173040}

/* Theme logo + intervention form tweaks */
:root[data-theme="light"] .logo-shell{background:#fff;border:1px solid rgba(11,27,41,.08);box-shadow:0 12px 30px rgba(12,27,41,.10)}
:root[data-theme="light"] .login-logo-shell{padding:10px 16px}
:root[data-theme="light"] .brand-logo-shell{padding:6px 10px}
:root[data-theme="light"] .ge-hero{background:radial-gradient(circle at 85% 20%,rgba(34,111,181,.12),transparent 30%),linear-gradient(135deg,#ffffff,#edf7fd 72%,#fef3ea);border-color:#d8e7ef}
:root[data-theme="light"] .ge-hero h2,:root[data-theme="light"] .ge-hero p,:root[data-theme="light"] .engine-live span{color:#132333}
:root[data-theme="light"] .engine-live i{box-shadow:0 0 0 9px rgba(42,186,120,.10),0 0 22px rgba(42,186,120,.2)}
:root[data-theme="light"] .round-gauge>div{background:conic-gradient(var(--orange) var(--pct),#d7e3ec 0);box-shadow:0 10px 24px rgba(21,42,59,.12)}
:root[data-theme="light"] .round-gauge>div:before{background:#fff;box-shadow:inset 0 0 0 1px #d8e4ec}
:root[data-theme="light"] .round-gauge b{color:#132333}
:root[data-theme="light"] .round-gauge span{color:#4f697c}
:root[data-theme="light"] .live-pill{background:rgba(42,186,120,.10);border-color:rgba(42,186,120,.22);color:#1c7f55}
:root[data-theme="light"] .ge-stat{background:linear-gradient(180deg,rgba(43,155,216,.08),rgba(255,255,255,.95))}
:root[data-theme="light"] .operation-note{background:#eef6fb;color:#446275}
:root[data-theme="light"] .fuel-tank{background:#f8fbfd;border-color:#9bb2c1}
:root[data-theme="light"] .fuel-lines{background:repeating-linear-gradient(180deg,transparent 0 31px,rgba(78,107,126,.14) 32px 33px)}

/* Safari/Mac login hotfix */
.login-card{position:relative;isolation:isolate}.login-logo-static{display:flex;align-items:center;justify-content:center;margin:0 auto 18px;padding:4px 0;position:relative;z-index:1}.login-logo-static img{pointer-events:none;user-select:none;-webkit-user-drag:none}.login-card form{position:relative;z-index:5;display:grid;gap:16px}.login-field{display:grid;gap:7px;position:relative;z-index:6}.login-field>label{display:block;color:#c3d4df;font-size:12px;font-weight:700;pointer-events:auto}.login-field input{position:relative!important;z-index:7!important;display:block!important;width:100%!important;min-height:46px!important;padding:12px 13px!important;border-radius:10px!important;border:1px solid #244057!important;background:#071522!important;color:#fff!important;outline:0!important;pointer-events:auto!important;-webkit-appearance:none!important;appearance:none!important}.login-field input:focus{border-color:#5b91b2!important;box-shadow:0 0 0 3px rgba(71,113,142,.22)!important}.password-wrap{display:grid;grid-template-columns:1fr auto;align-items:stretch;gap:8px;position:relative;z-index:7}.password-toggle{position:relative!important;z-index:8!important;border:1px solid #244057!important;border-radius:10px!important;background:#102132!important;color:#dce8f0!important;padding:0 12px!important;pointer-events:auto!important}.login-submit{position:relative!important;z-index:6!important;margin-top:2px!important;pointer-events:auto!important;min-height:48px}.login-card *{transform:none}.login-card:before,.login-card:after{pointer-events:none!important}
:root[data-theme="light"] .login-logo-static{background:transparent;border:0;box-shadow:none}.login-page .login-logo{width:240px;max-width:100%;height:auto}.login-page .theme-logo{display:none!important}
:root[data-theme="light"] .login-field>label{color:#294255}:root[data-theme="light"] .login-field input{background:#fff!important;color:#172735!important;border-color:#cddce6!important}:root[data-theme="light"] .password-toggle{background:#f2f7fb!important;color:#234055!important;border-color:#cddce6!important}


/* ===== SMART Sentinel V13 visual refinement ===== */
.brand{align-items:center}.brand-project{display:flex;flex-direction:column;justify-content:center;min-width:0}.brand-project b{display:block;font-size:18px;line-height:1}.brand-project small{display:block;font-size:10px;line-height:1.15;letter-spacing:.09em;white-space:normal}.critical-actions{display:flex;gap:8px;align-items:center}.critical-actions button{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:700}.critical-actions button.muted{opacity:.7}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}.filter-bar input,.filter-bar select{background:#0a1a29;border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 12px;min-height:42px}.filter-bar input{min-width:min(260px,100%);flex:1}.camera-meta,.hero-chip-row{display:flex;gap:8px;flex-wrap:wrap}.camera-meta span,.hero-chip-row span,.category-pill{padding:6px 10px;border-radius:999px;background:rgba(52,180,255,.08);border:1px solid rgba(52,180,255,.18);font-size:10px;color:var(--muted)}.premium-hero{background:radial-gradient(circle at 88% 14%,rgba(255,122,50,.28),transparent 26%),radial-gradient(circle at 10% 20%,rgba(52,180,255,.18),transparent 25%),linear-gradient(120deg,#0d2234,#081827 60%,#0d2230);padding:18px 20px}.overview-panels{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-bottom{align-items:start}.refined-donut{width:180px;height:180px;margin:auto}.pie-card .chart-legend{margin-top:14px}.mini-bars{display:flex;align-items:flex-end;gap:8px;height:180px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.stacked-bar{width:100%;max-width:28px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:999px;background:#102337;overflow:hidden;min-height:26px}.stacked-bar i{display:block;width:100%}.stacked-bar i.info{background:#34b4ff}.stacked-bar i.warning{background:#f7b844}.stacked-bar i.critical{background:#ff435f}.bar-col small{font-size:10px;color:var(--muted)}.bar-col b{font-size:10px}.tiny-spark{width:100%;height:74px;margin-top:10px}.tiny-spark polyline{fill:none;stroke:#5dd1ff;stroke-width:4;vector-effect:non-scaling-stroke}.h-bars{display:grid;gap:12px}.hbar-row{display:grid;grid-template-columns:minmax(100px,220px) 1fr;gap:12px;align-items:center}.hbar-row b{display:block;font-size:11px}.hbar-row small{color:var(--muted);font-size:10px}.hbar-track{height:12px;border-radius:999px;background:#102337;overflow:hidden}.hbar-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#39c1ff,#ff7a32)}.priority-list .alarm-item{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04);border-radius:10px}.site-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.site-mini{display:grid;gap:6px;align-content:start;padding:14px;border-radius:12px;border:1px solid var(--line);background:#0b1a29;color:var(--text);text-align:left}.site-mini span{font-size:12px}.site-mini b{font-size:13px}.site-mini small,.site-mini em{font-size:10px;color:var(--muted);font-style:normal}.site-mini.alarm-critical{box-shadow:inset 0 0 0 1px rgba(255,67,95,.25),0 0 0 1px rgba(255,67,95,.15)}.camera-zone-group{display:grid;gap:12px;margin-bottom:16px}.camera-wall{grid-template-columns:repeat(3,minmax(0,1fr))}.camera-card .rpc-actions{margin-top:10px}.camera-card .camera-empty{display:grid;place-items:center;text-align:center;min-height:200px;color:var(--muted)}.category-pill{display:inline-flex}.asset-card-body{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center}.asset-thumb{height:96px;border-radius:14px;background:linear-gradient(150deg,#ffb22a,#ff6a00);display:grid;place-items:center;gap:2px;color:#10253a;font-weight:800}.asset-thumb span{font-size:14px;letter-spacing:.18em}.asset-thumb b{font-size:18px}.disabled-rpc{opacity:.55;cursor:not-allowed}.ge-hero.luxe{display:grid;grid-template-columns:1.2fr .9fr;gap:18px;align-items:center;padding:18px;border-radius:14px;border:1px solid var(--line);background:radial-gradient(circle at 20% 20%,rgba(255,122,50,.18),transparent 24%),linear-gradient(135deg,#0d2234,#0b1825)}.ge-hero-art{display:flex;justify-content:center}.gen-illustration{width:min(100%,360px)}.gen-illustration svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 30px rgba(0,0,0,.24))}.asset-meta{display:grid;gap:8px}.stat-strip .kpi .kpi-value{font-size:28px}.ge-history .section-title,.camera-zone-group .section-title{margin-bottom:14px}.round-gauge{background:rgba(255,255,255,.03)}.alarm-focus-row{outline:2px solid rgba(57,193,255,.35);outline-offset:-2px}.table-actions{display:flex;gap:6px;flex-wrap:wrap}.success,.warning-action,.danger-btn{border:0;border-radius:10px;padding:8px 11px;font-weight:800}.success{background:#10392a;color:#6df0b4;border:1px solid #1d674c}.warning-action{background:#473514;color:#ffd56f;border:1px solid #7b5921}.danger-btn{background:#4a1a27;color:#ffb7c0;border:1px solid #803041}.operations-note{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;background:linear-gradient(90deg,rgba(52,180,255,.10),rgba(255,122,50,.08));border:1px solid rgba(255,255,255,.06);padding:14px 16px;border-radius:12px}.operations-note span{color:var(--muted);font-size:11px}.table-actions button,.rpc-actions button{min-height:38px}.rpc-actions{display:flex;gap:8px;flex-wrap:wrap}.filter-bar + .card{margin-top:2px}.metric-grid.details-grid{grid-template-columns:repeat(3,1fr)}.card.camera-card,.card.asset-card,.site-mini,.priority-list .alarm-item,.kpi,.chart-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card.camera-card:hover,.card.asset-card:hover,.site-mini:hover,.kpi:hover,.chart-card:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,0,0,.22)}
:root[data-theme="light"] .filter-bar input,:root[data-theme="light"] .filter-bar select,:root[data-theme="light"] .site-mini,:root[data-theme="light"] .camera-card,:root[data-theme="light"] .asset-card,:root[data-theme="light"] .alarm-item,:root[data-theme="light"] .operations-note{background:#fff;color:#10253a}
:root[data-theme="light"] .site-mini small,:root[data-theme="light"] .site-mini em,:root[data-theme="light"] .camera-empty,:root[data-theme="light"] .operations-note span,:root[data-theme="light"] .bar-col small,:root[data-theme="light"] .hbar-row small,:root[data-theme="light"] .camera-meta span,:root[data-theme="light"] .hero-chip-row span,:root[data-theme="light"] .category-pill{color:#4f687b}
:root[data-theme="light"] .round-gauge b,:root[data-theme="light"] .round-gauge span,:root[data-theme="light"] .round-gauge small,:root[data-theme="light"] .ge-stat b,:root[data-theme="light"] .ge-stat span,:root[data-theme="light"] .metric-tile b,:root[data-theme="light"] .metric-tile span,:root[data-theme="light"] .metric-tile small{color:#10253a!important}
:root[data-theme="light"] .round-gauge{background:#f6f9fc;border:1px solid #dbe5ef}
:root[data-theme="light"] .ge-hero.luxe,:root[data-theme="light"] .premium-hero{background:linear-gradient(135deg,#ffffff,#f4f8fc)}
:root[data-theme="light"] .hbar-track,:root[data-theme="light"] .stacked-bar{background:#eaf0f6}
@media(max-width:1250px){.overview-panels,.camera-wall,.site-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid.details-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.overview-panels,.camera-wall,.site-mini-grid,.metric-grid.details-grid,.asset-card-body,.ge-hero.luxe{grid-template-columns:1fr}.asset-card-body{grid-template-columns:1fr}.hbar-row{grid-template-columns:1fr}.operations-note{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.filter-bar{flex-direction:column}.filter-bar input{min-width:0;width:100%}.mini-bars{height:140px}}


/* ===== SMART Sentinel V13.1 refinements ===== */
.refined-gap{gap:18px}.isolated-card{margin:0;position:relative}.site-main.refined-gap>.card,.site-main.refined-gap>.camera-live-card,.site-main.refined-gap>.security-card{align-self:start}.quick-strip.refined-gap .status-card{min-height:142px}.status-card,.card{overflow:hidden}.section-gap{margin-top:14px}.chart-shell{display:grid;gap:10px}.chart-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.reactive-chart .chart-dot{fill:#fff;stroke:currentColor;stroke-width:2;cursor:pointer;transition:transform .15s ease,fill .15s ease}.reactive-chart .chart-dot:hover{transform:scale(1.15);fill:#ffb32b}.spark,.ge-chart svg{color:#43c3ff}.ge-site-layout{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start}.ge-photo-panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));padding:12px;display:grid;gap:10px}.ge-photo-panel img,.ge-hero-photo img{width:100%;height:auto;display:block;border-radius:12px}.ge-photo-caption{display:grid;gap:3px}.ge-photo-caption b{font-size:14px}.ge-photo-caption span{font-size:11px;color:var(--muted)}.ge-side-panel{display:grid;gap:14px}.ge-mini-controls,.security-actions-bar,.alarm-toolbar-inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ge-mini-controls select,.security-actions-bar select{min-height:40px;background:#0a1a29;border:1px solid var(--line);color:var(--text);border-radius:10px;padding:9px 11px}.security-card .alarm-list{margin-top:14px}.security-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.security-summary-tile{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;padding:14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.03)}.security-summary-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:20px;background:rgba(67,195,255,.10)}.security-summary-tile b{display:block;font-size:15px}.security-summary-tile span{display:block;font-size:11px;color:var(--muted);margin-top:2px}.security-summary-tile small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.security-summary-tile.danger{box-shadow:inset 0 0 0 1px rgba(255,67,95,.20)}.security-summary-tile.warn{box-shadow:inset 0 0 0 1px rgba(247,184,68,.22)}.security-summary-tile.good{box-shadow:inset 0 0 0 1px rgba(38,212,141,.18)}.security-summary-tile.soft{box-shadow:inset 0 0 0 1px rgba(67,195,255,.12)}.security-state{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid transparent}.security-state.critical{background:#4a1824;color:#ffbcc5;border-color:#813040}.security-state.warning{background:#463313;color:#ffd774;border-color:#7e5d24}.security-state.normal{background:#12392a;color:#86f4c3;border-color:#215e47}.luxury-list .alarm-item{width:100%;text-align:left;background:rgba(255,255,255,.02)}.luxury-list .alarm-item:hover{transform:translateY(-1px)}.camera-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.camera-unit{padding:14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.02)}.camera-meta{margin-top:10px}.brand-project{padding-left:4px}.brand-project b{letter-spacing:.02em}.brand-project small{display:flex;flex-direction:column;gap:1px;line-height:1.05}.brand-project small span{display:block}.critical-actions button#criticalMute{min-width:72px}.hero-banner,.premium-hero,.ge-hero.luxe,.operations-note,.chart-card,.site-mini,.status-card,.camera-unit,.security-summary-tile,.ge-photo-panel{box-shadow:0 10px 34px rgba(0,0,0,.12)}.site-main,.grid.two,.grid.two-even,.grid.three,.grid.four{row-gap:18px}.table-wrap{padding-top:4px}.table thead th{white-space:nowrap}.table tbody tr:hover{background:rgba(255,255,255,.025)}
:root[data-theme="light"] .ge-mini-controls select,:root[data-theme="light"] .security-actions-bar select{background:#fff;color:#10253a;border-color:#dbe5ef}
:root[data-theme="light"] .ge-photo-panel,:root[data-theme="light"] .camera-unit,:root[data-theme="light"] .security-summary-tile{background:#fff}
:root[data-theme="light"] .brand-project small,:root[data-theme="light"] .ge-photo-caption span,:root[data-theme="light"] .security-summary-tile span,:root[data-theme="light"] .security-summary-tile small,:root[data-theme="light"] .chart-axis{color:#5a7285}
:root[data-theme="light"] .camera-unit,:root[data-theme="light"] .luxury-list .alarm-item{color:#10253a}
:root[data-theme="light"] .luxury-list .alarm-item p,:root[data-theme="light"] .camera-empty span{color:#61788b}
:root[data-theme="light"] .camera-unit .section-title h4,:root[data-theme="light"] .camera-unit .sub{color:#10253a}
:root[data-theme="light"] .security-summary-icon{background:rgba(52,180,255,.10)}
:root[data-theme="light"] .status-card,.light .status-card{background:#fff}
@media(max-width:1200px){.security-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ge-site-layout{grid-template-columns:1fr}.camera-pair{grid-template-columns:1fr}.site-main{grid-template-columns:1fr}.quick-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.security-overview-grid{grid-template-columns:1fr}.quick-strip{grid-template-columns:1fr}.ge-mini-controls,.security-actions-bar{flex-direction:column;align-items:stretch}.brand-project{padding-left:0}.brand-project small{gap:0}.camera-pair{grid-template-columns:1fr}}

.build-stamp{margin-top:auto;padding:8px 10px 4px;color:#6f8798;font-size:9px;letter-spacing:.04em}.build-stamp b{color:#ff8b1a}.build-stamp+.aside-footer{margin-top:0}:root[data-theme="light"] .build-stamp{color:#698092}


/* ===== SMART Sentinel V14.0 complete refresh ===== */
:root{--bg:#05101b;--bg-soft:#0b1826;--panel:#0d1b2a;--panel2:#122436;--panel3:#163149;--line:#21364b;--line-2:#28435d;--text:#eef7ff;--muted:#8fa6bb;--accent:#ff7a1a;--accent-2:#ffb02e;--ok:#26d48d;--warn:#ffcc52;--crit:#ff4f72;--info:#44c6ff;--radius:18px;--shadow-xl:0 18px 60px rgba(0,0,0,.26);--shadow-md:0 10px 26px rgba(0,0,0,.18)}
html,body{background:radial-gradient(circle at 10% 10%,rgba(68,198,255,.08),transparent 30%),radial-gradient(circle at 90% 12%,rgba(255,122,26,.08),transparent 26%),linear-gradient(180deg,#05101b,#071524 30%,#05101b)}
body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:40px 40px;opacity:.18;pointer-events:none;mask-image:radial-gradient(circle at center,rgba(0,0,0,.9),transparent 85%);z-index:0}
#login,#app,#criticalSignal,#pageLoader{position:relative;z-index:1}
.app{grid-template-columns:280px 1fr;background:transparent}
aside{background:linear-gradient(180deg,rgba(6,20,34,.96),rgba(8,22,37,.92));backdrop-filter:blur(18px);padding:18px 14px;border-right:1px solid rgba(255,255,255,.06);box-shadow:inset -1px 0 0 rgba(255,255,255,.03)}
.brand{gap:14px;padding:4px 10px 18px;align-items:center}
.logo-shell.brand-logo-shell{padding:8px 12px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.05);box-shadow:var(--shadow-md)}
.brand img{width:126px}
.brand-project{display:flex;flex-direction:column;justify-content:center;gap:6px;padding-left:14px;margin-left:2px;border-left:1px solid rgba(255,255,255,.08);min-width:0}
.brand-project .brand-title{display:flex;align-items:center;gap:8px}
.brand-project b{font-size:20px;line-height:1;color:var(--accent);letter-spacing:.02em}
.brand-project small{display:flex;flex-direction:column;gap:3px;font-size:10px;line-height:1.05;color:#93aac0;letter-spacing:.12em;text-transform:uppercase}
nav{gap:8px;padding-right:4px}
.nav-section{margin:16px 12px 6px;font-size:10px;letter-spacing:.16em;color:#6f879d}
nav button{padding:13px 14px;border-radius:14px;font-size:13px;color:#afc3d4;background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,0));border:1px solid transparent;transition:all .22s ease;min-height:48px}
nav button>span{width:22px;font-size:17px}
nav button:hover{transform:translateX(2px);background:linear-gradient(180deg,rgba(68,198,255,.11),rgba(68,198,255,.05));border-color:rgba(68,198,255,.15);color:#fff}
nav button.active{background:linear-gradient(135deg,rgba(68,198,255,.18),rgba(255,122,26,.12));color:#fff;border-color:rgba(255,255,255,.08);box-shadow:var(--shadow-md)}
nav button.active:before{left:6px;top:9px;bottom:9px;border-radius:999px;background:linear-gradient(180deg,var(--accent),var(--accent-2))}
.build-stamp{margin:14px 8px 0;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);color:#a8bed0;font-size:11px}
.aside-footer{margin-top:16px;border-top:1px solid rgba(255,255,255,.06);padding:14px 8px 2px}
.user-chip{padding:10px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}
#logout{width:100%;min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.07);background:#0f2335;color:#eff7ff}
main{padding:18px 18px 24px}
header{background:linear-gradient(180deg,rgba(8,21,35,.92),rgba(8,21,35,.82));backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);padding:16px 18px;border-radius:22px;margin-bottom:18px;gap:18px}
header h2{font-size:28px;letter-spacing:-.02em}
header p{margin-top:6px}
.header-actions{gap:10px;flex-wrap:wrap;justify-content:flex-end}
.global-search{min-width:260px;min-height:46px;padding:0 14px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.global-search input{height:44px}
.clock{padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.icon-btn,.ghost,.primary,.btn,.success,.warning-action,.danger-btn,.critical-actions button,#logout,.table-actions button,.rpc-actions button,.form-actions button{border-radius:14px;min-height:42px;padding:10px 14px;transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease}
.icon-btn:hover,.ghost:hover,.primary:hover,.btn:hover,.success:hover,.warning-action:hover,.danger-btn:hover,.table-actions button:hover,.rpc-actions button:hover,.form-actions button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.16)}
.primary,.btn{background:linear-gradient(135deg,var(--accent-2),var(--accent));box-shadow:0 8px 22px rgba(255,122,26,.28)}
.ghost,.icon-btn{background:linear-gradient(180deg,#102234,#0c1c2b);border:1px solid rgba(255,255,255,.07);color:#eaf4fb}
.card,.status-card,.kpi,.site-mini,.camera-unit,.security-summary-tile,.operations-note,.table-wrap,.modal-card{border-radius:20px;border:1px solid rgba(255,255,255,.06)!important;box-shadow:var(--shadow-md);background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));overflow:hidden}
.card{padding:18px}.table-wrap{padding:8px 12px 14px}.status-card{padding:16px}.kpi{padding:18px}.site-mini{padding:16px}.camera-unit{padding:16px}.operations-note{padding:16px 18px;margin-bottom:16px}
.grid,.metric-grid,.camera-wall,.camera-pair,.site-mini-grid,.overview-panels,.overview-bottom,.quick-strip,.site-main,.ge-dashboard-grid,.ge-stats-grid{gap:18px!important}
.form-actions,.table-actions,.rpc-actions,.critical-actions,.hero-actions,.header-actions,.filter-bar,.ge-mini-controls,.security-actions-bar{gap:12px!important}
.filter-bar{padding:14px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}
.filter-bar input,.filter-bar select,.form-grid input,.form-grid select,.form-grid textarea,.login-card input,.login-card select,.login-card textarea,.ge-mini-controls select,.security-actions-bar select{min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.07);background:#0a1725;color:var(--text);padding:11px 13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.form-grid textarea{min-height:110px}
.section-title{margin-bottom:14px;gap:12px}.section-title h3{font-size:18px;margin:0 0 4px}.section-title .sub,.section-title p,.small{color:var(--muted)}
.hero-banner,.premium-hero,.ge-hero.luxe,.noc-hero{border-radius:24px;padding:20px 22px;border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-xl);background:radial-gradient(circle at 86% 20%,rgba(255,122,26,.16),transparent 28%),radial-gradient(circle at 12% 18%,rgba(68,198,255,.12),transparent 28%),linear-gradient(140deg,#0d2234,#091827 55%,#0a1522)}
.hero-actions{align-items:center;flex-wrap:wrap}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:#a6c0d4;font-size:10px;font-weight:800}
.metric-grid.details-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.metric-grid.compact,.grid.three,.grid.four,.site-mini-grid,.overview-panels{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.grid.two,.grid.two-even,.site-main{grid-template-columns:repeat(2,minmax(0,1fr))}
.telemetry-tile,.metric,.telemetry-card{border-radius:16px}
.table{border-collapse:separate;border-spacing:0 8px}.table thead th{font-size:11px;color:#8fa6bb;padding:10px 12px}.table tbody tr{background:rgba(255,255,255,.025)}.table tbody td{padding:12px;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04)}.table tbody td:first-child{border-left:1px solid rgba(255,255,255,.04);border-top-left-radius:14px;border-bottom-left-radius:14px}.table tbody td:last-child{border-right:1px solid rgba(255,255,255,.04);border-top-right-radius:14px;border-bottom-right-radius:14px}
.modal{backdrop-filter:blur(8px);background:rgba(3,10,18,.45)}.modal-card{max-width:min(980px,calc(100vw - 40px));padding:0}.modal-head{padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.06)}#modalBody{padding:18px}
.login-page{background:radial-gradient(circle at 12% 18%,rgba(68,198,255,.16),transparent 26%),radial-gradient(circle at 84% 74%,rgba(255,122,26,.18),transparent 22%),linear-gradient(135deg,#05101b,#09192a 60%,#07111c)}
.login-shell{gap:50px}.login-copy h1{font-size:58px}.login-copy p{font-size:18px;max-width:620px}.login-card{border-radius:28px;padding:36px;background:linear-gradient(180deg,rgba(11,27,41,.96),rgba(8,20,32,.96));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-xl)}
.login-points span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.page-loader{position:fixed;inset:0;display:grid;place-items:center;background:rgba(4,13,22,.54);backdrop-filter:blur(10px);z-index:1200}.loader-panel{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:22px;background:linear-gradient(180deg,rgba(10,25,39,.96),rgba(8,19,30,.96));border:1px solid rgba(255,255,255,.07);box-shadow:var(--shadow-xl)}.loader-copy{display:grid;gap:6px}.loader-copy b{font-size:18px;letter-spacing:.02em}.loader-copy small{font-size:12px;color:#98b0c2}.loader-radar{position:relative;width:74px;height:74px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle,rgba(68,198,255,.16),rgba(68,198,255,.04) 36%,transparent 37%)}.loader-radar span,.loader-radar i{position:absolute;inset:0;border-radius:50%}.loader-radar span:nth-child(1){border:1px solid rgba(68,198,255,.18);inset:8px}.loader-radar span:nth-child(2){border:1px solid rgba(68,198,255,.13);inset:18px}.loader-radar span:nth-child(3){border:1px solid rgba(68,198,255,.08);inset:28px}.loader-radar i{background:conic-gradient(from 0deg,transparent 0 310deg,rgba(255,176,46,.95) 340deg,rgba(255,176,46,0) 360deg);animation:loaderSpin 1.5s linear infinite}
@keyframes loaderSpin{to{transform:rotate(360deg)}}
.skeleton-page{min-height:340px;border-radius:24px;border:1px solid rgba(255,255,255,.05);background:linear-gradient(110deg,rgba(255,255,255,.02) 8%,rgba(255,255,255,.06) 18%,rgba(255,255,255,.02) 33%);background-size:200% 100%;animation:skeletonSlide 1.3s linear infinite;display:grid;place-items:center}.skeleton-page i{display:none}@keyframes skeletonSlide{to{background-position:-200% 0}}
.chart-shell,.ge-chart,.chart-card{position:relative}.chart-shell:after,.ge-chart:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}
.reactive-chart .chart-dot{filter:drop-shadow(0 0 8px rgba(68,198,255,.35))}
.camera-frame,.site-camera-frame{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,#0b1725,#07111a)}
.security-overview-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.security-summary-tile{min-height:104px;align-items:start}
.security-summary-icon{width:48px;height:48px;border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.quick-strip .status-card .big{font-size:28px;line-height:1.05;margin-top:6px}.quick-strip .status-card .desc{margin-top:8px}
.ge-photo-panel,.ge-site-card,.security-card,.camera-live-card{padding:18px}
.ge-photo-panel img,.ge-hero-photo img{object-fit:cover;background:#edf4fb}
.ge-filters{display:flex;flex-wrap:wrap;gap:10px}.ge-filters select{min-height:42px;border-radius:12px;padding:9px 12px}
.hbar-track{height:14px}.stacked-bar{max-width:34px;border-radius:999px}.mini-bars{height:210px}
.alarm-item,.site-mini,.asset-card,.camera-card,.kpi,.status-card,.security-summary-tile,.ge-photo-panel,.table tbody tr{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.alarm-item:hover,.site-mini:hover,.asset-card:hover,.camera-card:hover,.kpi:hover,.status-card:hover,.security-summary-tile:hover,.ge-photo-panel:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(0,0,0,.2)}
#criticalSignal{padding:14px 16px;border-radius:20px;border:1px solid rgba(255,85,110,.26);background:linear-gradient(135deg,rgba(86,20,31,.96),rgba(52,12,21,.96));box-shadow:0 0 0 1px rgba(255,79,114,.08),0 18px 36px rgba(45,8,16,.38)}.critical-beacon{width:44px;height:44px;border-radius:14px;background:linear-gradient(180deg,#ff5a78,#ff3056);display:grid;place-items:center;box-shadow:0 0 0 8px rgba(255,79,114,.12),0 0 28px rgba(255,79,114,.4);animation:criticalPulse 1.15s ease-in-out infinite}@keyframes criticalPulse{50%{transform:scale(1.07);box-shadow:0 0 0 12px rgba(255,79,114,.08),0 0 40px rgba(255,79,114,.48)}}
.theme-logo{transition:transform .22s ease}.logo-shell:hover .theme-logo{transform:scale(1.02)}
:root[data-theme="light"] html,:root[data-theme="light"] body{background:#f2f7fb}
:root[data-theme="light"] body:before{opacity:.11;background-image:linear-gradient(rgba(16,37,58,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(16,37,58,.05) 1px,transparent 1px)}
:root[data-theme="light"] aside{background:linear-gradient(180deg,#ffffff,#f6fafe);border-right:1px solid #dde8ef}
:root[data-theme="light"] .logo-shell.brand-logo-shell{background:#fff;border-color:#e4edf3;box-shadow:0 10px 28px rgba(18,41,61,.08)}
:root[data-theme="light"] .brand-project{border-left-color:#dde7ef}.brand-project small{max-width:120px}
:root[data-theme="light"] .brand-project b{color:#ff7a1a}:root[data-theme="light"] .brand-project small{color:#4f697c}
:root[data-theme="light"] main, :root[data-theme="light"] .app{background:transparent}
:root[data-theme="light"] header,:root[data-theme="light"] .card,:root[data-theme="light"] .status-card,:root[data-theme="light"] .kpi,:root[data-theme="light"] .site-mini,:root[data-theme="light"] .camera-unit,:root[data-theme="light"] .security-summary-tile,:root[data-theme="light"] .operations-note,:root[data-theme="light"] .table-wrap,:root[data-theme="light"] .modal-card,:root[data-theme="light"] .build-stamp,:root[data-theme="light"] .user-chip,:root[data-theme="light"] .filter-bar{background:linear-gradient(180deg,#ffffff,#f9fcff)!important;border-color:#dfe9f0!important;box-shadow:0 10px 30px rgba(14,37,58,.07)!important;color:#10253a}
:root[data-theme="light"] .ghost,:root[data-theme="light"] .icon-btn,:root[data-theme="light"] #logout{background:linear-gradient(180deg,#fff,#f5f9fc)!important;border-color:#d8e5ed!important;color:#14314a!important}
:root[data-theme="light"] .global-search,:root[data-theme="light"] .clock{background:#fff;border-color:#dce8ef}
:root[data-theme="light"] .filter-bar input,:root[data-theme="light"] .filter-bar select,:root[data-theme="light"] .form-grid input,:root[data-theme="light"] .form-grid select,:root[data-theme="light"] .form-grid textarea,:root[data-theme="light"] .login-card input,:root[data-theme="light"] .ge-mini-controls select,:root[data-theme="light"] .security-actions-bar select{background:#fff;color:#10253a;border-color:#d8e5ed}
:root[data-theme="light"] .hero-banner,:root[data-theme="light"] .premium-hero,:root[data-theme="light"] .ge-hero.luxe,:root[data-theme="light"] .noc-hero{background:radial-gradient(circle at 88% 18%,rgba(255,176,46,.18),transparent 24%),radial-gradient(circle at 12% 18%,rgba(68,198,255,.16),transparent 25%),linear-gradient(135deg,#ffffff,#edf7fd 74%,#fff6ed);border-color:#dbe8ef;color:#13283b}
:root[data-theme="light"] .eyebrow,:root[data-theme="light"] .section-title .sub,:root[data-theme="light"] .small,:root[data-theme="light"] .operations-note span,:root[data-theme="light"] .camera-meta span,:root[data-theme="light"] .hero-chip-row span,:root[data-theme="light"] .category-pill,:root[data-theme="light"] .build-stamp,:root[data-theme="light"] .chart-axis,:root[data-theme="light"] .brand-project small{color:#567184}
:root[data-theme="light"] .hbar-track{background:#eaf1f6}.stacked-bar{background:#143149}
:root[data-theme="light"] .table tbody tr{background:#fff}.table tbody td{border-color:#e7eef3}
:root[data-theme="light"] .page-loader{background:rgba(242,247,251,.72)}:root[data-theme="light"] .loader-panel{background:linear-gradient(180deg,#fff,#f6fbff);border-color:#dbe7ef;color:#10253a}
@media (max-width:1100px){.app{grid-template-columns:1fr}aside{position:fixed;left:-310px;width:280px;transition:left .24s ease}body.menu-open aside{left:0}main{padding:14px}.grid.two,.grid.two-even,.site-main{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr;gap:34px}}
@media (max-width:760px){header{padding:14px;flex-direction:column;align-items:stretch}.header-actions{justify-content:stretch}.global-search{min-width:0;width:100%}.filter-bar{padding:12px}.brand-project small{font-size:9px}.card,.status-card,.kpi{padding:14px}.table-actions,.rpc-actions,.form-actions,.critical-actions{display:grid;grid-template-columns:1fr 1fr}.table-actions button,.rpc-actions button,.form-actions button,.critical-actions button{width:100%}}
@media (max-width:520px){.table-actions,.rpc-actions,.form-actions,.critical-actions{grid-template-columns:1fr}.brand img{width:112px}.brand-project b{font-size:18px}.login-copy h1{font-size:44px}}


/* ===== SMART Sentinel V14.0.1 overview/layout refinement ===== */
.page-loader{display:flex!important;align-items:center!important;justify-content:center!important;padding:24px}.loader-panel{min-width:min(420px,calc(100vw - 40px));justify-content:center;transform:translateY(-2vh)}
.brand{overflow:hidden;gap:10px}.brand-project{max-width:92px;padding-left:10px;gap:4px;overflow:hidden}.brand-project b{font-size:18px}.brand-project small{font-size:9px;letter-spacing:.08em;line-height:1.02}.brand-project small span{display:block;max-width:100%;overflow-wrap:anywhere}.brand img{width:118px}
.overview-shell{display:grid;gap:20px}.overview-section{display:grid;gap:16px}.overview-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.overview-analytics-grid{display:grid;grid-template-columns:1.15fr 1.15fr .95fr;gap:18px}.overview-mid-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.overview-bottom-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:18px}.overview-sites-card .site-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.kpi.pro-kpi{display:grid;grid-template-columns:56px 1fr;grid-template-areas:"icon label" "icon value" "icon trend";align-items:center;column-gap:14px;row-gap:2px;min-height:124px}.kpi.pro-kpi .kpi-icon{grid-area:icon;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(68,198,255,.12),rgba(255,122,26,.10));border:1px solid rgba(255,255,255,.06)}.kpi.pro-kpi .kpi-icon svg{width:28px;height:28px;display:block;fill:none;stroke:#eaf6ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.kpi.pro-kpi .kpi-label{grid-area:label;font-size:12px;color:#9eb4c5}.kpi.pro-kpi .kpi-value{grid-area:value;font-size:32px;line-height:1.02;font-weight:800}.kpi.pro-kpi .kpi-trend{grid-area:trend;font-size:11px;color:#8ba2b7}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px}.section-head h3{margin:0;font-size:19px}.section-head .sub{margin-top:4px}.section-action{white-space:nowrap}.chart-card.compact{padding:18px}.chart-card.compact .section-title{margin-bottom:12px}.stat-chip-row{display:flex;gap:8px;flex-wrap:wrap}.stat-chip-row span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);font-size:11px;color:#9eb5c7}.insight-list{display:grid;gap:10px}.insight-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.insight-item .meta b{display:block;font-size:13px}.insight-item .meta small{display:block;color:var(--muted);font-size:10px}.insight-item .value{font-size:24px;font-weight:800;color:#fff}.insight-item .icon{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:rgba(68,198,255,.10);border:1px solid rgba(255,255,255,.05)}.insight-item .icon svg{width:20px;height:20px;fill:none;stroke:#dff4ff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.priority-list .alarm-item{padding:12px 14px;border-radius:14px}.priority-list .alarm-item p{margin:4px 0 0;color:#8fa6bb}.empty-state-pro{display:grid;place-items:center;min-height:180px;text-align:center;border-radius:16px;background:rgba(255,255,255,.018);border:1px dashed rgba(255,255,255,.08);color:#8ba3b7;padding:18px}.overview-sites-card .site-mini{min-height:110px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}.site-mini .site-mini-top{display:flex;align-items:center;gap:8px;font-size:12px}.site-mini .site-mini-count{font-size:11px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
:root[data-theme="light"] .brand-project{max-width:96px}.pro-icon svg{width:22px;height:22px;display:block}.pro-icon svg path,.pro-icon svg circle,.pro-icon svg rect,.pro-icon svg polyline,.pro-icon svg line{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.kpi.pro-kpi .pro-icon{color:#fff}.chart-card.compact,.overview-sites-card,.overview-insight-card{min-height:100%}
:root[data-theme="light"] .kpi.pro-kpi .kpi-icon{background:linear-gradient(180deg,rgba(34,111,181,.08),rgba(255,122,26,.10));border-color:#dfe9f0}.kpi.pro-kpi.good-card .kpi-icon{background:linear-gradient(180deg,rgba(38,212,141,.14),rgba(38,212,141,.06))}.kpi.pro-kpi.critical-widget .kpi-icon{background:linear-gradient(180deg,rgba(255,79,114,.18),rgba(255,79,114,.08))}
@media (max-width:1300px){.overview-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-analytics-grid,.overview-mid-grid,.overview-bottom-grid{grid-template-columns:1fr}.overview-sites-card .site-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.overview-kpi-grid,.overview-sites-card .site-mini-grid{grid-template-columns:1fr}.loader-panel{min-width:0;width:calc(100vw - 28px);transform:none}.brand-project{max-width:88px}}


/* ===== SMART Sentinel V14.1.0 NOC redesign ===== */
.page-loader{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;z-index:9999!important}
.page-loader.hidden{display:none!important}.loader-panel{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;margin:auto!important;transform:none!important;min-width:min(440px,calc(100vw - 40px));justify-content:center;align-items:center}.loader-radar{flex:0 0 auto}
.brand{align-items:center;gap:8px!important;overflow:hidden}.brand img{width:112px!important}.brand-project{max-width:78px!important;min-width:0!important;padding-left:8px!important;margin-left:0!important;border-left:1px solid rgba(255,255,255,.08)}.brand-project .brand-title{gap:0!important}.brand-project b{font-size:17px!important;display:block;line-height:1.02}.brand-project small{gap:0!important;line-height:1!important;font-size:8px!important;letter-spacing:.08em!important}.brand-project small span{white-space:normal;word-break:break-word}.build-stamp{margin-top:10px!important}
.overview-shell{gap:22px!important}.overview-section{gap:18px!important}.overview-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}.overview-analytics-grid{display:grid;grid-template-columns:1.08fr 1.08fr .95fr!important;gap:18px!important}.overview-mid-grid{display:grid;grid-template-columns:1fr 1fr 1fr!important;gap:18px!important}.overview-action-grid{display:grid;grid-template-columns:1.05fr .95fr!important;gap:18px!important}.overview-sites-card .site-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}
.kpi.pro-kpi{min-height:138px!important;padding:18px!important;display:grid!important;grid-template-columns:58px 1fr!important;grid-template-areas:"icon meta" "icon value" "icon trend";column-gap:14px;row-gap:4px;align-items:center}.kpi.pro-kpi .kpi-icon{grid-area:icon!important;width:58px!important;height:58px!important;border-radius:18px!important;display:grid!important;place-items:center!important;background:linear-gradient(180deg,rgba(68,198,255,.14),rgba(255,122,26,.12))!important;border:1px solid rgba(255,255,255,.08)!important}.kpi.pro-kpi .kpi-icon .pro-icon{display:inline-flex;color:#eff8ff}.kpi.pro-kpi .kpi-icon svg{width:28px!important;height:28px!important;stroke:currentColor!important}.kpi.pro-kpi .kpi-label{grid-area:meta!important;font-size:12px!important;color:#99afc0!important;font-weight:600}.kpi.pro-kpi .kpi-value{grid-area:value!important;font-size:34px!important;line-height:1!important;font-weight:800!important}.kpi.pro-kpi .kpi-trend{grid-area:trend!important;font-size:11px!important;color:#84a0b6!important;line-height:1.35!important}.kpi.pro-kpi.good-card .kpi-icon{background:linear-gradient(180deg,rgba(38,212,141,.18),rgba(38,212,141,.08))!important}.kpi.pro-kpi.critical-widget .kpi-icon{background:linear-gradient(180deg,rgba(255,79,114,.22),rgba(255,79,114,.10))!important}.kpi.pro-kpi.warning-card .kpi-icon{background:linear-gradient(180deg,rgba(247,184,68,.22),rgba(247,184,68,.10))!important}.kpi.pro-kpi.info-card .kpi-icon{background:linear-gradient(180deg,rgba(68,198,255,.22),rgba(68,198,255,.10))!important}
.section-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin-bottom:8px!important}.section-head>div{min-width:0}.section-head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:18px!important;line-height:1.2;color:#eff7ff}.section-head .sub{color:#8fa6bb!important;font-size:11px;line-height:1.35;margin-top:4px}.section-head h3 .pro-icon{display:inline-flex;color:#8fd6ff;flex:0 0 auto}.section-head h3 .pro-icon svg{width:19px;height:19px;stroke:currentColor}
.chart-card.compact,.overview-sites-card,.overview-insight-card{padding:18px!important}.chart-legend span,.empty-state-pro,.insight-item .meta small,.priority-list .alarm-item p,.site-mini small,.site-mini em{color:#90a6b9!important}.insight-item{padding:14px 15px!important;min-height:74px;border-radius:16px!important}.insight-item .icon{background:rgba(68,198,255,.10)!important;border:1px solid rgba(255,255,255,.06)!important}.insight-item .icon .pro-icon{display:inline-flex;color:#dff6ff}.insight-item .icon svg{stroke:currentColor!important}.insight-item .meta b{color:#f2f8ff!important;font-size:13px}.insight-item .value{color:#fff!important;font-size:24px!important}
.site-mini{padding:16px!important;border-radius:18px!important}.site-mini .site-mini-top{font-size:12px;font-weight:700;color:#e9f4fd}.site-mini .site-mini-count{color:#edf7ff;font-weight:700}
.mini-bars{margin-bottom:10px}.tiny-spark{height:96px}.chart-shell,.ge-chart{color:#5dd3ff}.chart-axis,.ge-chart-axis{color:#9fb4c5!important}.chart-dot{fill:#c8f3ff;stroke:#083149;stroke-width:2}.h-bars{display:grid;gap:10px}.hbar-row{display:grid;gap:8px}.hbar-row b{color:#eff7ff}.hbar-row small{color:#8ea6b9}.hbar-track{height:12px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden}.hbar-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#44c6ff,#ffb02e)}
.summary-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:6px}.summary-tile{padding:14px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.summary-tile b{display:block;font-size:24px;color:#fff}.summary-tile span{display:block;font-size:11px;color:#98aec0}.summary-tile small{display:block;font-size:10px;color:#7f98ac;margin-top:4px}
.priority-list{display:grid;gap:12px}.priority-list .alarm-item{width:100%;text-align:left;background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.05)}.priority-list .alarm-item b{color:#f4f9ff}
:root[data-theme="light"] .brand-project{border-left-color:#dde7ef;max-width:86px!important}.brand-project{overflow:hidden}
:root[data-theme="light"] .brand-project b{color:#f57416!important}:root[data-theme="light"] .brand-project small{color:#516b7d!important}
:root[data-theme="light"] .section-head h3{color:#12314a!important}:root[data-theme="light"] .section-head h3 .pro-icon{color:#1a79b3!important}
:root[data-theme="light"] .kpi.pro-kpi .kpi-label,:root[data-theme="light"] .kpi.pro-kpi .kpi-trend,:root[data-theme="light"] .chart-legend span,:root[data-theme="light"] .empty-state-pro,:root[data-theme="light"] .insight-item .meta small,:root[data-theme="light"] .priority-list .alarm-item p,:root[data-theme="light"] .site-mini small,:root[data-theme="light"] .site-mini em,:root[data-theme="light"] .summary-tile span,:root[data-theme="light"] .summary-tile small,:root[data-theme="light"] .chart-axis,:root[data-theme="light"] .ge-chart-axis,:root[data-theme="light"] .hbar-row small,:root[data-theme="light"] .section-head .sub{color:#587284!important}
:root[data-theme="light"] .kpi.pro-kpi .kpi-value,:root[data-theme="light"] .summary-tile b,:root[data-theme="light"] .insight-item .value,:root[data-theme="light"] .insight-item .meta b,:root[data-theme="light"] .priority-list .alarm-item b,:root[data-theme="light"] .site-mini .site-mini-top,:root[data-theme="light"] .hbar-row b{color:#10253a!important}
:root[data-theme="light"] .kpi.pro-kpi .kpi-icon .pro-icon{color:#12314a!important}:root[data-theme="light"] .insight-item .icon .pro-icon{color:#1a79b3!important}
:root[data-theme="light"] .insight-item{background:#fff!important;border-color:#e2ecf3!important}:root[data-theme="light"] .site-mini .site-mini-count{color:#12314a!important;background:#eef5fa!important;border-color:#d8e6ef!important}
:root[data-theme="light"] .summary-tile{background:#fff!important;border-color:#e3edf4!important}:root[data-theme="light"] .hbar-track{background:#ebf2f7!important}.theme-logo{max-width:100%}
@media (max-width:1400px){.overview-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.overview-analytics-grid{grid-template-columns:1fr 1fr!important}.overview-analytics-grid > :last-child{grid-column:1 / -1}.overview-mid-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.overview-mid-grid > :last-child{grid-column:1 / -1}.overview-action-grid{grid-template-columns:1fr!important}}
@media (max-width:1100px){.overview-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.overview-sites-card .site-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.summary-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.overview-kpi-grid,.overview-sites-card .site-mini-grid,.summary-mosaic{grid-template-columns:1fr!important}.loader-panel{min-width:0!important;width:min(420px,calc(100vw - 28px))!important}.brand-project{max-width:74px!important}}


/* ===== SMART Sentinel V14.2.0 map page redesign ===== */
.map-page-shell{display:grid;gap:20px}.map-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;border-radius:24px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 88% 18%,rgba(255,176,46,.15),transparent 24%),radial-gradient(circle at 10% 20%,rgba(68,198,255,.14),transparent 24%),linear-gradient(140deg,#0d2234,#091827 60%,#091523);box-shadow:var(--shadow-xl)}.map-hero-copy{max-width:760px}.map-hero-copy h2{margin:6px 0 8px;font-size:28px;line-height:1.08}.map-hero-copy p{margin:0;color:#9cb2c4;line-height:1.55}.map-hero-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.map-hero-chips span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06);font-size:11px;color:#edf6ff}.map-hero-side{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:12px;min-width:min(320px,44%)}.map-hero-stat{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(10px)}.map-hero-stat b{display:block;font-size:28px;line-height:1}.map-hero-stat span{display:block;font-size:11px;color:#9ab0c1;margin-top:6px}.map-top-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:20px}.map-main-card{padding:0!important;overflow:hidden}.map-main-head{padding:18px 18px 8px}.map-main-head .section-head{margin-bottom:0}.map-main-head .section-tools{display:flex;gap:10px;flex-wrap:wrap}.map-main-stage{padding:0 18px 18px}.smart-geo-map{position:relative;height:560px;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,#102234,#0a1724)}.compact-map{height:320px}.map-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}.map-card-footer .map-legend{margin:0}.map-card-footer .small{max-width:560px}
.map-side-stack{display:grid;gap:18px}.map-side-card{padding:18px!important}.map-side-card .section-head{margin-bottom:12px}.map-side-card .insight-list.compact .insight-item{min-height:auto;padding:12px 13px!important}.map-side-card .insight-item .value{font-size:22px!important}.map-side-card .insight-item .meta b{font-size:12px!important}.map-side-card .insight-item .meta small{font-size:10px!important}.map-kpi-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.map-micro-stat{padding:14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.map-micro-stat b{display:block;font-size:24px;line-height:1;color:#fff}.map-micro-stat span{display:block;font-size:11px;color:#99afc0;margin-top:6px}.map-micro-stat small{display:block;font-size:10px;color:#7f98ac;margin-top:4px}
.map-legend{display:flex;flex-wrap:wrap;gap:10px}.map-legend span{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);font-size:11px;color:#dfeef8}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:0 0 0 5px rgba(255,255,255,.04)}.legend-dot.critical{background:#ff4f72}.legend-dot.warning{background:#f7b844}.legend-dot.info{background:#44c6ff}.legend-dot.online{background:#26d48d}.legend-dot.offline{background:#7d95a8}
.map-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.map-site-card{display:grid;gap:12px;padding:16px;border-radius:18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);text-align:left;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.map-site-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(0,0,0,.18)}.map-site-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.map-site-title{display:grid;gap:4px}.map-site-title b{font-size:14px;color:#f2f8ff}.map-site-title small{font-size:11px;color:#8ea7ba}.map-site-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.map-site-meta div{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.map-site-meta span{display:block;font-size:10px;color:#8ba3b7}.map-site-meta b{display:block;font-size:12px;color:#eff8ff;margin-top:5px}.map-site-actions{display:flex;gap:10px;flex-wrap:wrap}.map-site-actions button{flex:1 1 150px}
.geo-pin{transform:translate(-50%,-100%);padding:0;border:0;background:none}.geo-pin i{display:block;width:22px;height:22px;border-radius:50%;border:3px solid rgba(255,255,255,.92);box-shadow:0 10px 20px rgba(0,0,0,.28),0 0 0 8px rgba(0,0,0,.12)}.geo-pin span{position:absolute;left:50%;top:-8px;transform:translate(-50%,-100%);padding:6px 10px;border-radius:999px;background:rgba(5,14,24,.88);border:1px solid rgba(255,255,255,.07);color:#eef7ff;font-size:10px;font-weight:700;white-space:nowrap;box-shadow:0 8px 18px rgba(0,0,0,.22)}.geo-pin b{position:absolute;right:-8px;top:-10px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ff4f72;color:#fff;font-size:10px;display:grid;place-items:center;border:2px solid #fff}.geo-pin.online i{background:#26d48d}.geo-pin.offline i{background:#7d95a8}.geo-pin.alarm-critical i{background:#ff4f72}.geo-pin.alarm-warning i{background:#f7b844}.geo-pin.alarm-info i{background:#44c6ff}.geo-pin:hover span{background:#10273a}
.geo-controls{top:16px;right:16px;display:grid;gap:8px}.geo-controls button{width:42px;height:42px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:rgba(5,16,26,.84);color:#eef7ff;font-size:22px;box-shadow:var(--shadow-md)}.map-attribution{left:16px;bottom:16px;padding:8px 12px;border-radius:999px;background:rgba(5,16,26,.82);border:1px solid rgba(255,255,255,.06);font-size:10px;color:#dcecf7}.geo-loading,.map-empty{display:grid;place-items:center;height:100%;color:#9db5c6}.map-side-note{padding:14px;border-radius:16px;background:rgba(68,198,255,.08);border:1px solid rgba(68,198,255,.13);color:#dff4ff}.map-side-note b{display:block;margin-bottom:6px;font-size:13px}.map-side-note p{margin:0;font-size:11px;line-height:1.5;color:#cfe5f4}
:root[data-theme="light"] .map-hero{background:radial-gradient(circle at 88% 18%,rgba(255,176,46,.20),transparent 24%),radial-gradient(circle at 10% 20%,rgba(68,198,255,.18),transparent 24%),linear-gradient(140deg,#ffffff,#eef7fd 60%,#fff6ed);border-color:#dbe8ef;color:#11263b}.map-hero-copy p,:root[data-theme="light"] .map-hero-stat span,:root[data-theme="light"] .map-hero-stat small,:root[data-theme="light"] .map-site-title small,:root[data-theme="light"] .map-site-meta span,:root[data-theme="light"] .map-micro-stat span,:root[data-theme="light"] .map-micro-stat small,:root[data-theme="light"] .map-side-note p,:root[data-theme="light"] .small{color:#5b7386!important}
:root[data-theme="light"] .map-hero-stat,:root[data-theme="light"] .map-side-note,:root[data-theme="light"] .map-micro-stat,:root[data-theme="light"] .map-site-card,:root[data-theme="light"] .map-site-meta div,:root[data-theme="light"] .map-legend span{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.06)!important}
:root[data-theme="light"] .map-hero-stat b,:root[data-theme="light"] .map-site-title b,:root[data-theme="light"] .map-site-meta b,:root[data-theme="light"] .map-micro-stat b{color:#10253a!important}
:root[data-theme="light"] .map-card-footer{background:#f8fbfe;border-top-color:#e0ebf2}.map-card-footer .small{color:#8ba3b7}
:root[data-theme="light"] .smart-geo-map{border-color:#dce8ef;background:linear-gradient(180deg,#dceaf3,#c9dbe8)}
:root[data-theme="light"] .geo-pin span,:root[data-theme="light"] .map-attribution,:root[data-theme="light"] .geo-controls button{background:rgba(255,255,255,.94)!important;color:#12314a!important;border-color:#dce7ee!important}
@media (max-width:1400px){.map-top-grid{grid-template-columns:1fr}.map-site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map-hero{flex-direction:column;align-items:stretch}.map-hero-side{min-width:0;width:100%}}
@media (max-width:980px){.map-hero-side,.map-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.map-site-grid{grid-template-columns:1fr}.smart-geo-map{height:470px}}
@media (max-width:640px){.map-hero-copy h2{font-size:24px}.map-hero-side,.map-kpi-strip{grid-template-columns:1fr}.smart-geo-map{height:400px}.map-card-footer{align-items:flex-start}.map-attribution{max-width:calc(100% - 32px)}}


/* ===== SMART Sentinel V14.3.0 site page redesign ===== */
.site-shell{display:grid;gap:22px}.site-hero{display:flex;justify-content:space-between;align-items:stretch;gap:18px;padding:22px 24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 84% 22%,rgba(38,212,141,.14),transparent 24%),radial-gradient(circle at 18% 18%,rgba(68,198,255,.14),transparent 25%),linear-gradient(145deg,#0d2234,#091827 58%,#0a1524);box-shadow:var(--shadow-xl)}.site-hero-main{max-width:850px;display:grid;gap:10px}.site-hero-main h2{margin:2px 0 4px;font-size:30px;line-height:1.02}.site-hero-main p{margin:0;color:#9eb5c8;line-height:1.55}.site-hero-meta{display:flex;gap:10px;flex-wrap:wrap}.site-hero-meta span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06);font-size:11px;color:#edf6ff}.site-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.site-hero-side{display:grid;grid-template-columns:repeat(2,minmax(128px,1fr));gap:12px;min-width:min(340px,44%)}.site-hero-stat{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(10px)}.site-hero-stat b{display:block;font-size:28px;line-height:1}.site-hero-stat span{display:block;font-size:11px;color:#9ab0c1;margin-top:6px}.site-hero-stat small{display:block;font-size:10px;color:#7f98ac;margin-top:4px}
.site-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.site-summary-card{padding:16px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);display:flex;gap:12px;align-items:flex-start}.site-summary-card .ico{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.06);display:grid;place-items:center;color:#e7f5ff;flex:0 0 auto}.site-summary-card b{display:block;font-size:24px;line-height:1.05}.site-summary-card span{display:block;font-size:11px;color:#eef8ff}.site-summary-card small{display:block;font-size:10px;color:#8ca5ba;margin-top:6px}
.site-grid-main{display:grid;grid-template-columns:1.25fr .95fr;gap:20px}.site-stack{display:grid;gap:20px}.site-card{padding:18px!important}.site-card .section-head{margin-bottom:14px}.site-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-panel-tile{padding:14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.site-panel-tile span{display:block;font-size:10px;color:#8ca4b7}.site-panel-tile b{display:block;font-size:14px;color:#eff7ff;margin-top:6px}.site-panel-tile small{display:block;font-size:10px;color:#7f98ac;margin-top:4px}
.site-telemetry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.site-telemetry-grid .metric-tile{min-height:84px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}
.site-rpc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-rpc-grid .rpc-btn,.site-rpc-grid button{width:100%}
.site-map-wrap .smart-geo-map{height:360px}.site-map-foot{margin-top:12px;font-size:11px;color:#8da5b8}
.site-alarm-list{display:grid;gap:12px}.site-alarm-item{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);display:grid;gap:12px}.site-alarm-item.critical{border-color:rgba(255,79,114,.35);box-shadow:0 0 0 1px rgba(255,79,114,.12)}.site-alarm-item.warning{border-color:rgba(247,184,68,.28)}.site-alarm-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.site-alarm-head h4{margin:0;font-size:14px;color:#f1f9ff}.site-alarm-head p{margin:4px 0 0;font-size:11px;color:#8ea7bb}.site-alarm-actions{display:flex;gap:8px;flex-wrap:wrap}
.site-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.site-camera-card{padding:16px;border-radius:20px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);display:grid;gap:12px}.site-camera-card .camera-frame{height:260px;border-radius:18px;overflow:hidden}.site-camera-card .camera-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.site-camera-card .camera-meta span{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.05);font-size:11px;color:#dcecf7}
.site-ge-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:18px}.site-ge-visual{display:grid;gap:14px}.site-ge-visual .hero{padding:16px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.site-ge-visual img{width:100%;height:220px;object-fit:cover;border-radius:16px;background:rgba(255,255,255,.03)}.site-ge-visual .caption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11px;color:#95aec1;margin-top:10px}.site-gauge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.site-ge-side{display:grid;gap:14px}.site-ge-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-ge-controls{display:flex;gap:10px;flex-wrap:wrap}.site-ge-controls select{min-width:180px}.site-ge-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.site-event-list{display:grid;gap:10px}.site-event{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-event .dot{width:12px;height:12px;border-radius:50%;background:#44c6ff;box-shadow:0 0 0 6px rgba(68,198,255,.14)}.site-event.warning .dot{background:#f7b844;box-shadow:0 0 0 6px rgba(247,184,68,.16)}.site-event.critical .dot{background:#ff4f72;box-shadow:0 0 0 6px rgba(255,79,114,.16)}.site-event b{font-size:13px;color:#eef8ff}.site-event small{display:block;font-size:11px;color:#8ea7ba}.site-event time{font-size:11px;color:#8ea7ba}
.site-list-shell{display:grid;gap:20px}.site-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.site-list-card{padding:18px;border-radius:22px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);display:grid;gap:14px}.site-list-card:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(0,0,0,.14)}.site-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.site-list-head h4{margin:0;font-size:15px;color:#f2f8ff}.site-list-head p{margin:5px 0 0;font-size:11px;color:#8ea7bb}.site-list-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-list-data div{padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.site-list-data span{display:block;font-size:10px;color:#8ea7bb}.site-list-data b{display:block;font-size:12px;color:#eef8ff;margin-top:5px}.site-list-actions{display:flex;gap:10px;flex-wrap:wrap}.site-list-actions button{flex:1 1 140px}
:root[data-theme="light"] .site-hero{background:radial-gradient(circle at 84% 22%,rgba(38,212,141,.18),transparent 24%),radial-gradient(circle at 18% 18%,rgba(68,198,255,.18),transparent 25%),linear-gradient(145deg,#ffffff,#eef7fd 58%,#fff6ed);border-color:#dbe8ef;color:#10263b}
:root[data-theme="light"] .site-hero-main p,:root[data-theme="light"] .site-hero-stat span,:root[data-theme="light"] .site-hero-stat small,:root[data-theme="light"] .site-summary-card small,:root[data-theme="light"] .site-panel-tile span,:root[data-theme="light"] .site-panel-tile small,:root[data-theme="light"] .site-map-foot,:root[data-theme="light"] .site-alarm-head p,:root[data-theme="light"] .site-event small,:root[data-theme="light"] .site-event time,:root[data-theme="light"] .site-list-head p,:root[data-theme="light"] .site-list-data span{color:#5b7386!important}
:root[data-theme="light"] .site-hero-meta span,:root[data-theme="light"] .site-hero-stat,:root[data-theme="light"] .site-summary-card,:root[data-theme="light"] .site-panel-tile,:root[data-theme="light"] .site-telemetry-grid .metric-tile,:root[data-theme="light"] .site-alarm-item,:root[data-theme="light"] .site-camera-card,:root[data-theme="light"] .site-ge-visual .hero,:root[data-theme="light"] .site-event,:root[data-theme="light"] .site-list-card,:root[data-theme="light"] .site-list-data div{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.06)!important}
:root[data-theme="light"] .site-summary-card .ico{background:#f2f8fc;color:#12314a}.site-summary-card span{color:#eff8ff}
:root[data-theme="light"] .site-summary-card span,:root[data-theme="light"] .site-panel-tile b,:root[data-theme="light"] .site-summary-card b,:root[data-theme="light"] .site-hero-stat b,:root[data-theme="light"] .site-event b,:root[data-theme="light"] .site-list-head h4,:root[data-theme="light"] .site-list-data b,:root[data-theme="light"] .site-alarm-head h4{color:#10253a!important}
@media (max-width:1450px){.site-grid-main,.site-ge-layout{grid-template-columns:1fr}.site-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.site-hero{flex-direction:column}.site-hero-side,.site-summary-grid,.site-telemetry-grid,.site-rpc-grid,.site-gauge-grid,.site-camera-grid,.site-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-panel-grid,.site-ge-metrics,.site-ge-actions{grid-template-columns:1fr}}
@media (max-width:640px){.site-hero-main h2{font-size:25px}.site-hero-side,.site-summary-grid,.site-telemetry-grid,.site-rpc-grid,.site-gauge-grid,.site-camera-grid,.site-list-grid,.site-list-data{grid-template-columns:1fr}.site-card,.site-list-card{padding:16px!important}}


/* ===== SMART Sentinel V14.4.0 map fullscreen + cameras/security ===== */
.smart-geo-map:fullscreen{width:100vw!important;height:100vh!important;border-radius:0!important;border:0!important;background:#07131f}.smart-geo-map:fullscreen .map-attribution{bottom:20px}.smart-geo-map:fullscreen .geo-controls{top:20px;right:20px}.smart-geo-map.map-expanded-fallback{position:fixed!important;inset:16px!important;width:auto!important;height:auto!important;z-index:9998!important;border-radius:24px!important;box-shadow:0 30px 100px rgba(0,0,0,.55)}body.map-fallback-open{overflow:hidden}.geo-fullscreen-btn{font-size:17px!important}.map-main-head .section-tools{align-items:center}
.security-center-shell{display:grid;gap:20px}.security-center-hero{display:flex;justify-content:space-between;gap:20px;align-items:stretch;padding:22px 24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 84% 20%,rgba(255,79,114,.13),transparent 25%),radial-gradient(circle at 16% 16%,rgba(68,198,255,.15),transparent 26%),linear-gradient(145deg,#0d2234,#091827 58%,#0a1524);box-shadow:var(--shadow-xl)}.security-center-hero>div:first-child{max-width:780px}.security-center-hero h2{font-size:30px;margin:5px 0 8px}.security-center-hero p{margin:0;color:#9db4c7;line-height:1.55}.security-center-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.security-center-chips span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06);font-size:11px;color:#edf6ff}.security-center-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(125px,1fr));gap:12px;min-width:min(350px,44%)}.security-center-hero-grid>div{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.security-center-hero-grid b{display:block;font-size:28px}.security-center-hero-grid span{display:block;font-size:11px;color:#9eb5c8;margin-top:6px}.security-center-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.security-center-stat{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;padding:16px;border-radius:20px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.security-center-stat .ico{width:48px;height:48px;border-radius:15px;background:rgba(68,198,255,.10);display:grid;place-items:center;color:#e8f7ff}.security-center-stat.good .ico{background:rgba(38,212,141,.12)}.security-center-stat.warning .ico{background:rgba(247,184,68,.14)}.security-center-stat.info .ico{background:rgba(68,198,255,.12)}.security-center-stat b{display:block;font-size:25px}.security-center-stat span{display:block;font-size:11px;color:#eef8ff}.security-center-stat small{display:block;font-size:10px;color:#89a2b6;margin-top:4px}.security-filter-bar{margin:0!important}.security-center-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.security-camera-zone-list{display:grid;gap:20px}.security-zone-section{display:grid;gap:12px}.security-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.security-camera-card{display:grid;gap:12px;padding:16px;border-radius:22px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease}.security-camera-card:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,0,0,.2)}.security-camera-card.human-alert{border-color:rgba(255,79,114,.38);box-shadow:0 0 0 1px rgba(255,79,114,.12),var(--shadow-md)}.security-camera-card.offline-alert{border-color:rgba(247,184,68,.22)}.security-camera-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.security-camera-head b{display:block;font-size:14px;color:#f2f8ff}.security-camera-head small{display:block;font-size:11px;color:#8fa7ba;margin-top:5px}.security-camera-frame{position:relative;height:280px;border-radius:18px;overflow:hidden;background:#07131e;border:1px solid rgba(255,255,255,.05)}.security-camera-frame img{width:100%;height:100%;object-fit:cover;display:block}.security-camera-overlay{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:800;color:#fff;backdrop-filter:blur(8px)}.security-camera-overlay.danger{background:rgba(190,30,58,.86)}.security-camera-overlay.warning{background:rgba(145,100,18,.88)}.security-camera-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.security-camera-info span{padding:10px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.security-camera-info b{display:block;font-size:12px;color:#eef8ff}.security-camera-info small{display:block;font-size:9px;color:#8da5b8;margin-top:4px}.security-camera-actions{display:flex;gap:9px;flex-wrap:wrap}.security-camera-actions button{flex:1 1 130px}.security-center-side{display:grid;gap:18px;position:sticky;top:104px}.security-side-card{padding:18px!important}.security-guidance{display:grid;gap:12px}.security-guidance>div{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.security-guidance b{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(68,198,255,.10);color:#dff6ff}.security-guidance span{font-size:11px;line-height:1.45;color:#9ab2c5}
:root[data-theme="light"] .security-center-hero{background:radial-gradient(circle at 84% 20%,rgba(255,79,114,.14),transparent 25%),radial-gradient(circle at 16% 16%,rgba(68,198,255,.18),transparent 26%),linear-gradient(145deg,#fff,#eef7fd 58%,#fff6ed);border-color:#dbe8ef;color:#10253a}:root[data-theme="light"] .security-center-hero p,:root[data-theme="light"] .security-center-hero-grid span,:root[data-theme="light"] .security-center-stat small,:root[data-theme="light"] .security-camera-head small,:root[data-theme="light"] .security-camera-info small,:root[data-theme="light"] .security-guidance span{color:#5c7487!important}:root[data-theme="light"] .security-center-chips span,:root[data-theme="light"] .security-center-hero-grid>div,:root[data-theme="light"] .security-center-stat,:root[data-theme="light"] .security-camera-card,:root[data-theme="light"] .security-camera-info span,:root[data-theme="light"] .security-guidance>div{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.06)!important}:root[data-theme="light"] .security-center-stat span,:root[data-theme="light"] .security-camera-head b,:root[data-theme="light"] .security-camera-info b{color:#10253a!important}:root[data-theme="light"] .security-camera-frame{background:#e9f2f8;border-color:#dbe8ef}
@media(max-width:1400px){.security-center-layout{grid-template-columns:1fr}.security-center-side{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.security-camera-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.security-center-hero{flex-direction:column}.security-center-hero-grid{min-width:0;width:100%}.security-center-stats,.security-center-side{grid-template-columns:repeat(2,minmax(0,1fr))}.security-camera-grid{grid-template-columns:1fr}.security-camera-info{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.security-center-hero-grid,.security-center-stats,.security-center-side,.security-camera-info{grid-template-columns:1fr}.security-camera-frame{height:230px}.security-center-hero h2{font-size:25px}}


/* ===== SMART Sentinel V14.4.1 map/camera pointer fixes ===== */
/* Map markers must never move under the pointer: this prevents hover enter/leave loops. */
.geo-pin,
.geo-pin:hover,
.geo-pin:active,
.geo-pin:focus{
  transform:translate(-50%,-100%)!important;
  transition:none!important;
  cursor:pointer!important;
}
.geo-pin:hover{z-index:15!important}
.geo-pin i{transition:box-shadow .16s ease,border-color .16s ease!important;animation:none!important}
.geo-pin:hover i{border-color:#fff!important;box-shadow:0 0 0 9px rgba(68,198,255,.14),0 10px 22px rgba(0,0,0,.30)!important}
.geo-pin.alarm-critical i{animation:none!important;box-shadow:0 0 0 9px rgba(255,79,114,.16),0 0 24px rgba(255,79,114,.44)!important}
.geo-pin.alarm-warning i{box-shadow:0 0 0 9px rgba(247,184,68,.16),0 0 22px rgba(247,184,68,.34)!important}
.geo-pin.alarm-info i{box-shadow:0 0 0 9px rgba(68,198,255,.14),0 0 22px rgba(68,198,255,.32)!important}
.geo-pin span,.geo-pin b,.geo-pin i{pointer-events:none!important}
.geo-pin span{transition:background .16s ease,color .16s ease!important}
.smart-geo-map,.smart-geo-map *{-webkit-tap-highlight-color:transparent}

/* Camera cards themselves are not buttons. Only real actions use the hand cursor. */
.security-camera-card,
.security-camera-card:hover,
.security-camera-frame,
.security-camera-info,
.security-camera-info span,
.security-camera-head,
.security-center-stat,
.security-guidance,
.security-guidance>div{
  cursor:default!important;
}
.security-camera-card{transform:none!important;transition:border-color .18s ease,box-shadow .18s ease!important;position:relative;z-index:1}
.security-camera-card:hover{transform:none!important;box-shadow:0 16px 34px rgba(0,0,0,.18)!important}
.security-camera-frame img,.security-camera-frame .camera-empty,.security-camera-overlay,.security-camera-frame .scanline{pointer-events:none!important}
.security-camera-actions{position:relative;z-index:20;pointer-events:auto!important}
.security-camera-actions button,
.security-camera-actions .rpc-btn,
.site-rpc-grid button,
.site-rpc-grid .rpc-btn{
  position:relative!important;
  z-index:21!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  user-select:none;
  -webkit-user-select:none;
}
.security-camera-actions button:disabled,
.site-rpc-grid button:disabled{cursor:not-allowed!important}
.security-center-side{position:sticky!important;top:104px!important;display:grid!important;gap:18px!important;height:auto!important;min-height:0!important;width:auto!important;padding:0!important;background:transparent!important;border:0!important;z-index:1!important;overflow:visible!important}
.security-camera-zone-list,.security-zone-section,.security-camera-grid{position:relative;z-index:2}
.security-filter-bar{position:relative;z-index:4}
.security-filter-bar input,.security-filter-bar select{pointer-events:auto!important;cursor:auto!important}
.security-filter-bar select{cursor:pointer!important}

/* Keep site camera interactions stable too. */
.site-camera-card{transform:none!important}
.site-camera-card:hover{transform:none!important}
.site-camera-card .camera-frame img,.site-camera-card .camera-empty,.site-camera-card .scanline{pointer-events:none!important}

:root[data-theme="light"] .geo-pin:hover i{box-shadow:0 0 0 9px rgba(26,121,179,.12),0 10px 22px rgba(14,37,58,.18)!important}


/* ===== SMART Sentinel V14.5.0 pagination + interaction cleanup ===== */
.site-shell .geo-pin,.site-shell .geo-pin *,.site-shell .chart-dot,.site-shell .chart-dot *{animation:none!important;transition:none!important}
.site-shell .geo-pin:hover,.site-shell .geo-pin:focus,.site-shell .geo-pin:active{transform:translate(-50%,-100%)!important}
.site-shell .geo-pin:hover i,.site-shell .geo-pin:focus i,.site-shell .geo-pin:active i{box-shadow:0 10px 20px rgba(0,0,0,.28),0 0 0 8px rgba(0,0,0,.12)!important;border-color:rgba(255,255,255,.92)!important}
.site-shell .geo-pin.alarm-critical i{box-shadow:0 0 0 8px rgba(255,79,114,.15),0 10px 20px rgba(0,0,0,.28)!important}
.site-shell .geo-pin.alarm-warning i{box-shadow:0 0 0 8px rgba(247,184,68,.14),0 10px 20px rgba(0,0,0,.28)!important}
.site-shell .geo-pin.alarm-info i{box-shadow:0 0 0 8px rgba(68,198,255,.13),0 10px 20px rgba(0,0,0,.28)!important}
.site-shell .chart-dot:hover{transform:none!important}
.pagination-shell{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}
.pagination-info{font-size:11px;color:#8fa6bb}.pagination-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-controls button{min-width:40px;height:40px;padding:0 12px;border-radius:12px}.pagination-controls button.active{background:linear-gradient(135deg,var(--accent-2),var(--accent));border-color:transparent;color:#fff}.pagination-controls button:disabled{opacity:.38;cursor:not-allowed;transform:none!important}.pagination-size{min-height:40px;border-radius:12px;padding:8px 10px;background:#0a1725;color:var(--text);border:1px solid rgba(255,255,255,.07)}
:root[data-theme="light"] .pagination-shell{background:#fff;border-color:#dfeaf1}:root[data-theme="light"] .pagination-info{color:#5b7386}:root[data-theme="light"] .pagination-size{background:#fff;color:#10253a;border-color:#d8e5ed}
.alarm-center-shell{display:grid;gap:20px}.alarm-center-hero{display:flex;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 88% 15%,rgba(255,79,114,.16),transparent 25%),radial-gradient(circle at 12% 20%,rgba(68,198,255,.12),transparent 26%),linear-gradient(145deg,#0d2234,#091827 60%,#101521);box-shadow:var(--shadow-xl)}.alarm-center-hero h2{margin:5px 0 8px;font-size:30px}.alarm-center-hero p{margin:0;color:#9eb5c8;max-width:760px;line-height:1.55}.alarm-center-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:12px;min-width:min(330px,42%)}.alarm-center-hero-stats>div{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.alarm-center-hero-stats b{display:block;font-size:28px}.alarm-center-hero-stats span{display:block;font-size:11px;color:#9ab0c1;margin-top:5px}.alarm-center-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.alarm-center-kpi{display:flex;gap:12px;align-items:center;padding:16px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.alarm-center-kpi .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(68,198,255,.10)}.alarm-center-kpi b{display:block;font-size:25px}.alarm-center-kpi span{display:block;font-size:11px;color:#9db3c4}.alarm-center-insights{display:grid;grid-template-columns:1fr 1fr;gap:18px}.alarm-center-table-card{padding:16px!important}.alarm-table-message{max-width:360px}.alarm-table-message b{display:block}.alarm-table-message small{display:block;margin-top:4px;line-height:1.35;color:#8da5b8}.alarm-action-stack{display:flex;gap:7px;flex-wrap:wrap}.alarm-action-stack button{min-height:36px;padding:8px 10px;font-size:10px}
:root[data-theme="light"] .alarm-center-hero{background:radial-gradient(circle at 88% 15%,rgba(255,79,114,.12),transparent 25%),radial-gradient(circle at 12% 20%,rgba(68,198,255,.14),transparent 26%),linear-gradient(145deg,#fff,#eef7fd 60%,#fff5f6);border-color:#dbe8ef;color:#10253a}:root[data-theme="light"] .alarm-center-hero p,:root[data-theme="light"] .alarm-center-hero-stats span,:root[data-theme="light"] .alarm-center-kpi span{color:#5b7386}:root[data-theme="light"] .alarm-center-hero-stats>div,:root[data-theme="light"] .alarm-center-kpi{background:#fff;border-color:#dfeaf1;box-shadow:0 10px 24px rgba(14,37,58,.06)}:root[data-theme="light"] .alarm-center-kpi b{color:#10253a}
.security-page-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 2px}.security-page-summary .small{font-size:11px}.security-camera-grid{align-items:stretch}.security-camera-card{min-height:100%}
.command-center-hero{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 20px;border-radius:22px;background:linear-gradient(135deg,rgba(68,198,255,.10),rgba(255,122,26,.07));border:1px solid rgba(255,255,255,.06);margin-bottom:16px}.command-center-hero h3{margin:0 0 5px}.command-center-hero p{margin:0;color:#8fa6bb;font-size:11px}
.paged-view-footer{margin-top:14px}
@media(max-width:1200px){.alarm-center-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.alarm-center-insights{grid-template-columns:1fr}}
@media(max-width:760px){.alarm-center-hero{flex-direction:column}.alarm-center-hero-stats,.alarm-center-kpis{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.pagination-shell{align-items:flex-start}.pagination-controls{width:100%}}
@media(max-width:520px){.alarm-center-hero-stats,.alarm-center-kpis{grid-template-columns:1fr}}


/* ===== SMART Sentinel V14.6.0 — Alarm Center complete redesign ===== */

/* IMPORTANT: no animation/transform on the whole alarm supervision workspace.
   This intentionally removes hover motion that could trigger flickering. */
.alarm-center-v146,
.alarm-center-v146 * {
  animation: none !important;
}
.alarm-center-v146 .alarm-site-risk-card,
.alarm-center-v146 .alarm-priority-card,
.alarm-center-v146 .alarm-stat-card,
.alarm-center-v146 .alarm-analytics-card,
.alarm-center-v146 .alarm-table-card,
.alarm-center-v146 .alarm-filter-panel,
.alarm-center-v146 .alarm-item,
.alarm-center-v146 tbody tr {
  transition: none !important;
  transform: none !important;
}
.alarm-center-v146 .alarm-site-risk-card:hover,
.alarm-center-v146 .alarm-priority-card:hover,
.alarm-center-v146 .alarm-stat-card:hover,
.alarm-center-v146 .alarm-analytics-card:hover,
.alarm-center-v146 .alarm-item:hover,
.alarm-center-v146 tbody tr:hover {
  transform: none !important;
}
.alarm-center-v146 .alarm-item:hover {
  background: rgba(255,255,255,.025) !important;
}
.alarm-center-v146 tbody tr:hover {
  background: rgba(255,255,255,.025) !important;
}
.alarm-center-v146 .alarm-focus-pulse {
  animation: none !important;
  box-shadow: inset 4px 0 0 #ffb02e !important;
}

/* main shell */
.alarm-center-v146{display:grid;gap:20px}
.alarm-hero-v146{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:22px;
  padding:24px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(circle at 92% 12%,rgba(255,79,114,.15),transparent 25%),
    radial-gradient(circle at 14% 14%,rgba(68,198,255,.12),transparent 27%),
    linear-gradient(145deg,#0d2234,#091827 60%,#101521);
  box-shadow:var(--shadow-xl)
}
.alarm-hero-v146 h2{margin:5px 0 8px;font-size:30px;line-height:1.08}
.alarm-hero-v146 p{margin:0;max-width:780px;color:#9eb5c8;line-height:1.6}
.alarm-hero-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
.alarm-hero-badges span{
  padding:8px 11px;border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.06);
  font-size:11px;color:#eaf6ff
}
.alarm-hero-summary{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px
}
.alarm-hero-summary>div{
  padding:15px 16px;border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06)
}
.alarm-hero-summary b{display:block;font-size:29px;line-height:1}
.alarm-hero-summary span{display:block;margin-top:7px;font-size:11px;color:#9db3c4}
.alarm-hero-summary small{display:block;margin-top:4px;font-size:10px;color:#7892a7}

/* top KPI cards */
.alarm-stat-grid-v146{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px
}
.alarm-stat-card{
  min-height:120px;
  display:grid;
  grid-template-columns:46px 1fr;
  gap:12px;
  align-items:center;
  padding:16px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));
  border:1px solid rgba(255,255,255,.06);
  box-shadow:var(--shadow-md)
}
.alarm-stat-card .icon{
  width:46px;height:46px;border-radius:15px;display:grid;place-items:center;
  background:rgba(68,198,255,.10);color:#e9f7ff
}
.alarm-stat-card.critical .icon{background:rgba(255,79,114,.14);color:#ff9aad}
.alarm-stat-card.warning .icon{background:rgba(247,184,68,.14);color:#ffd778}
.alarm-stat-card.good .icon{background:rgba(38,212,141,.13);color:#83f0bd}
.alarm-stat-card b{display:block;font-size:27px;line-height:1}
.alarm-stat-card span{display:block;margin-top:5px;font-size:11px;color:#eef7ff}
.alarm-stat-card small{display:block;margin-top:5px;font-size:10px;color:#839caf}

/* filters */
.alarm-filter-panel{
  padding:16px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));
  border:1px solid rgba(255,255,255,.06);
  box-shadow:var(--shadow-md)
}
.alarm-filter-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.alarm-filter-head h3{margin:0;font-size:16px}
.alarm-filter-head small{color:#8fa6bb}
.alarm-filter-grid{
  display:grid;
  grid-template-columns:1.2fr repeat(6,minmax(140px,.75fr));
  gap:10px
}
.alarm-filter-grid input,.alarm-filter-grid select{
  min-height:43px;border-radius:13px;padding:9px 11px;
  background:#0a1725;color:var(--text);
  border:1px solid rgba(255,255,255,.07)
}

/* analytics layout */
.alarm-analytics-grid-v146{
  display:grid;
  grid-template-columns:1.05fr 1.05fr .9fr;
  gap:18px
}
.alarm-analytics-card{
  padding:18px;border-radius:20px;
  background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));
  border:1px solid rgba(255,255,255,.06);
  box-shadow:var(--shadow-md);
  min-height:100%
}
.alarm-analytics-card h3{margin:0;font-size:17px}
.alarm-analytics-card .sub{margin-top:4px;font-size:11px;color:#8fa6bb}
.alarm-analytics-card .section-head{margin-bottom:14px!important}

/* site risk cards — deliberately static */
.alarm-site-risk-list{display:grid;gap:10px}
.alarm-site-risk-card{
  display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;
  padding:13px 14px;border-radius:15px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.05)
}
.alarm-site-risk-card .site-ico{
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
  background:rgba(68,198,255,.10);color:#dff5ff
}
.alarm-site-risk-card .site-meta b{display:block;font-size:13px;color:#f2f8ff}
.alarm-site-risk-card .site-meta small{display:block;margin-top:4px;font-size:10px;color:#8da5b8}
.alarm-site-risk-card .site-count{
  min-width:38px;height:38px;border-radius:13px;display:grid;place-items:center;
  background:#17283a;color:#fff;font-size:17px;font-weight:800
}
.alarm-site-risk-card.critical{border-color:rgba(255,79,114,.28)}
.alarm-site-risk-card.warning{border-color:rgba(247,184,68,.23)}
.alarm-site-risk-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.alarm-site-risk-actions button{min-height:34px;padding:7px 10px;font-size:10px}

/* priorities */
.alarm-priority-list-v146{display:grid;gap:10px}
.alarm-priority-card{
  padding:13px 14px;border-radius:15px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.05)
}
.alarm-priority-card.critical{border-left:4px solid #ff4f72}
.alarm-priority-card.warning{border-left:4px solid #f7b844}
.alarm-priority-card.info{border-left:4px solid #44c6ff}
.alarm-priority-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.alarm-priority-top b{font-size:13px;color:#f3f9ff}
.alarm-priority-card p{margin:5px 0 0;font-size:10px;line-height:1.45;color:#8da5b8}
.alarm-priority-card .alarm-site-risk-actions{margin-top:10px}

/* table */
.alarm-table-card{
  padding:16px!important;
  border-radius:20px!important
}
.alarm-table-toolbar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  margin-bottom:10px
}
.alarm-table-toolbar h3{margin:0;font-size:17px}
.alarm-table-toolbar .small{font-size:11px}
.alarm-center-v146 .table{min-width:1050px}
.alarm-center-v146 .table tbody td{vertical-align:top}
.alarm-site-cell b{display:block;font-size:12px}
.alarm-site-cell small{display:block;margin-top:4px;color:#8da5b8;font-size:10px}
.alarm-msg-cell{max-width:390px}
.alarm-msg-cell b{display:block;font-size:12px}
.alarm-msg-cell small{display:block;margin-top:4px;color:#8da5b8;font-size:10px;line-height:1.4}
.alarm-actions-v146{display:flex;gap:7px;flex-wrap:wrap}
.alarm-actions-v146 button{min-height:34px;padding:7px 9px;font-size:10px}

/* light theme */
:root[data-theme="light"] .alarm-hero-v146{
  background:
    radial-gradient(circle at 92% 12%,rgba(255,79,114,.11),transparent 25%),
    radial-gradient(circle at 14% 14%,rgba(68,198,255,.14),transparent 27%),
    linear-gradient(145deg,#fff,#eef7fd 62%,#fff7f8);
  border-color:#dbe8ef;color:#10253a
}
:root[data-theme="light"] .alarm-hero-v146 p,
:root[data-theme="light"] .alarm-hero-summary span,
:root[data-theme="light"] .alarm-hero-summary small,
:root[data-theme="light"] .alarm-stat-card small,
:root[data-theme="light"] .alarm-analytics-card .sub,
:root[data-theme="light"] .alarm-site-risk-card .site-meta small,
:root[data-theme="light"] .alarm-priority-card p,
:root[data-theme="light"] .alarm-site-cell small,
:root[data-theme="light"] .alarm-msg-cell small,
:root[data-theme="light"] .alarm-filter-head small{color:#5b7386!important}
:root[data-theme="light"] .alarm-hero-summary>div,
:root[data-theme="light"] .alarm-stat-card,
:root[data-theme="light"] .alarm-filter-panel,
:root[data-theme="light"] .alarm-analytics-card,
:root[data-theme="light"] .alarm-site-risk-card,
:root[data-theme="light"] .alarm-priority-card,
:root[data-theme="light"] .alarm-table-card{
  background:#fff!important;border-color:#dfeaf1!important;
  box-shadow:0 10px 24px rgba(14,37,58,.06)!important
}
:root[data-theme="light"] .alarm-stat-card b,
:root[data-theme="light"] .alarm-stat-card span,
:root[data-theme="light"] .alarm-site-risk-card .site-meta b,
:root[data-theme="light"] .alarm-priority-top b,
:root[data-theme="light"] .alarm-site-cell b,
:root[data-theme="light"] .alarm-msg-cell b{color:#10253a!important}
:root[data-theme="light"] .alarm-filter-grid input,
:root[data-theme="light"] .alarm-filter-grid select{background:#fff;color:#10253a;border-color:#d8e5ed}
:root[data-theme="light"] .alarm-site-risk-card .site-count{background:#eef5fa;color:#10253a}

@media(max-width:1450px){
  .alarm-stat-grid-v146{grid-template-columns:repeat(3,minmax(0,1fr))}
  .alarm-analytics-grid-v146{grid-template-columns:1fr 1fr}
  .alarm-analytics-grid-v146>:last-child{grid-column:1/-1}
  .alarm-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1000px){
  .alarm-hero-v146{grid-template-columns:1fr}
  .alarm-hero-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
  .alarm-analytics-grid-v146{grid-template-columns:1fr}
  .alarm-analytics-grid-v146>:last-child{grid-column:auto}
  .alarm-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .alarm-stat-grid-v146,.alarm-hero-summary,.alarm-filter-grid{grid-template-columns:1fr}
  .alarm-hero-v146{padding:18px}
}


/* ===== SMART Sentinel V14.7.0 ===== */
/* Supervision / Sites : static cards to eliminate hover flicker */
.site-list-shell .site-list-card,
.site-list-shell .site-list-card *,
.site-list-shell .site-filter-row,
.site-list-shell .site-filter-row *{
  animation:none!important;
  transition:none!important;
}
.site-list-shell .site-list-card:hover,
.site-list-shell .site-list-card:focus-within,
.site-list-shell .site-list-card:active{
  transform:none!important;
  box-shadow:var(--shadow-md)!important;
}
.site-list-shell .site-list-card button:hover{transform:none!important}

/* Supervision / Alarmes : restore safe animations (no unstable site-marker effect) */
@keyframes alarmSoftEnterV147{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes alarmCriticalGlowV147{0%,100%{box-shadow:0 0 0 rgba(255,79,114,0)}50%{box-shadow:0 0 24px rgba(255,79,114,.12)}}
.alarm-center-v146 .alarm-hero-v146,
.alarm-center-v146 .alarm-stat-grid-v146,
.alarm-center-v146 .alarm-filter-panel,
.alarm-center-v146 .alarm-analytics-card,
.alarm-center-v146 .alarm-table-card{
  animation:alarmSoftEnterV147 .35s ease both!important;
}
.alarm-center-v146 .alarm-stat-card,
.alarm-center-v146 .alarm-analytics-card,
.alarm-center-v146 .alarm-priority-card{
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.alarm-center-v146 .alarm-stat-card:hover,
.alarm-center-v146 .alarm-analytics-card:hover,
.alarm-center-v146 .alarm-priority-card:hover{
  transform:none!important;
  border-color:rgba(68,198,255,.20)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
.alarm-center-v146 .alarm-priority-card.critical{animation:alarmCriticalGlowV147 3s ease-in-out infinite!important}
.alarm-center-v146 button{transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important}

/* Carte des sites simplified */
.map-page-shell.v147{gap:20px}.map-page-shell.v147 .map-top-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr)}
.map-page-shell.v147 .map-main-card{min-width:0}.map-page-shell.v147 .smart-geo-map{height:620px}
.map-page-shell.v147 .map-side-stack{align-content:start}
.map-page-shell.v147 .map-main-head .section-tools .primary{display:none!important}
@media(max-width:1200px){.map-page-shell.v147 .map-top-grid{grid-template-columns:1fr}.map-page-shell.v147 .smart-geo-map{height:540px}}

/* Maintenance Center */
.maintenance-center{display:grid;gap:20px}
.maintenance-hero{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;padding:23px 24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 90% 14%,rgba(255,176,46,.16),transparent 25%),radial-gradient(circle at 12% 18%,rgba(68,198,255,.12),transparent 26%),linear-gradient(145deg,#0d2234,#091827 60%,#101a23);box-shadow:var(--shadow-xl)}
.maintenance-hero h2{margin:5px 0 8px;font-size:30px}.maintenance-hero p{margin:0;color:#9eb5c8;line-height:1.55;max-width:800px}.maintenance-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.maintenance-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.maintenance-hero-stats>div{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.maintenance-hero-stats b{display:block;font-size:28px}.maintenance-hero-stats span{display:block;margin-top:6px;font-size:11px;color:#9db3c4}.maintenance-hero-stats small{display:block;margin-top:4px;font-size:10px;color:#7892a7}
.maintenance-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.maintenance-kpi{padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center}.maintenance-kpi .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(68,198,255,.10)}.maintenance-kpi b{display:block;font-size:25px}.maintenance-kpi span{display:block;font-size:11px;color:#eef7ff}.maintenance-kpi small{display:block;margin-top:4px;font-size:10px;color:#8199ad}
.maintenance-filter-panel{padding:15px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.maintenance-filters{display:grid;grid-template-columns:1.4fr repeat(4,minmax(145px,.8fr));gap:10px}.maintenance-filters input,.maintenance-filters select{min-height:43px;border-radius:13px;padding:9px 11px;background:#0a1725;color:var(--text);border:1px solid rgba(255,255,255,.07)}
.maintenance-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);gap:18px}.maintenance-list{display:grid;gap:14px}.maintenance-card{padding:17px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.maintenance-card.in_progress{border-color:rgba(247,184,68,.32)}.maintenance-card.completed{opacity:.88}.maintenance-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.maintenance-card-head h3{margin:5px 0 0;font-size:16px}.maintenance-card-head .eyebrow{font-size:9px}.maintenance-card-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.maintenance-card-meta>div{padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.maintenance-card-meta span{display:block;font-size:10px;color:#8ca4b8}.maintenance-card-meta b{display:block;margin-top:5px;font-size:11px;color:#edf7ff}.maintenance-card-window{display:flex;align-items:center;gap:10px;margin-top:13px;padding:11px 12px;border-radius:14px;background:rgba(68,198,255,.06);border:1px solid rgba(68,198,255,.10);font-size:11px}.maintenance-card-window span{color:#ffb02e;font-weight:800}.maintenance-card-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.maintenance-card-actions button{min-height:38px}
.maintenance-side{display:grid;gap:18px;align-content:start}.maintenance-side-card{padding:18px!important}.maintenance-side-list{display:grid;gap:10px}.maintenance-side-row{padding:12px 13px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.maintenance-side-row b{display:block;font-size:12px}.maintenance-side-row small{display:block;margin-top:4px;color:#8da5b8;font-size:10px}.maintenance-side-row strong{display:block;margin-top:6px;font-size:18px}
:root[data-theme="light"] .maintenance-hero{background:radial-gradient(circle at 90% 14%,rgba(255,176,46,.16),transparent 25%),radial-gradient(circle at 12% 18%,rgba(68,198,255,.14),transparent 26%),linear-gradient(145deg,#fff,#eef7fd 62%,#fff9f0);border-color:#dbe8ef;color:#10253a}:root[data-theme="light"] .maintenance-hero p,:root[data-theme="light"] .maintenance-hero-stats span,:root[data-theme="light"] .maintenance-hero-stats small,:root[data-theme="light"] .maintenance-kpi small,:root[data-theme="light"] .maintenance-card-meta span,:root[data-theme="light"] .maintenance-side-row small{color:#5b7386!important}:root[data-theme="light"] .maintenance-hero-stats>div,:root[data-theme="light"] .maintenance-kpi,:root[data-theme="light"] .maintenance-filter-panel,:root[data-theme="light"] .maintenance-card,:root[data-theme="light"] .maintenance-side-row{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.06)!important}:root[data-theme="light"] .maintenance-kpi b,:root[data-theme="light"] .maintenance-kpi span,:root[data-theme="light"] .maintenance-card-meta b,:root[data-theme="light"] .maintenance-side-row b,:root[data-theme="light"] .maintenance-side-row strong{color:#10253a!important}:root[data-theme="light"] .maintenance-filters input,:root[data-theme="light"] .maintenance-filters select{background:#fff;color:#10253a;border-color:#d8e5ed}
@media(max-width:1400px){.maintenance-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.maintenance-layout{grid-template-columns:1fr}.maintenance-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.maintenance-hero{grid-template-columns:1fr}.maintenance-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.maintenance-card-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.maintenance-hero-stats,.maintenance-kpi-grid,.maintenance-card-meta,.maintenance-filters{grid-template-columns:1fr}}


/* ===== SMART Sentinel V14.8.0 — Site interaction safety + SMART Edge + Reports ===== */

/* Supervision / Sites: only explicit controls are interactive. */
.site-list-shell,.site-shell{cursor:default!important}
.site-list-shell .site-list-card,.site-list-shell .site-list-card *,
.site-shell .site-hero,.site-shell .site-hero *,
.site-shell .site-summary-card,.site-shell .site-summary-card *,
.site-shell .site-card,.site-shell .site-card *,
.site-shell .site-panel-tile,.site-shell .site-panel-tile *{
  cursor:default!important
}
.site-list-shell button,.site-list-shell select,.site-list-shell input,.site-list-shell a,
.site-shell button,.site-shell select,.site-shell input,.site-shell textarea,.site-shell a,.site-shell .geo-pin{
  cursor:pointer!important
}
.site-list-shell input,.site-shell input,.site-list-shell textarea,.site-shell textarea{cursor:text!important}
.site-shell button::before,.site-shell button::after,.site-list-shell button::before,.site-list-shell button::after{pointer-events:none!important}
.site-shell button,.site-list-shell button{position:relative!important;max-width:100%;isolation:isolate}
.site-shell .site-card,.site-shell .site-summary-card,.site-shell .site-panel-tile,.site-shell .site-camera-card,.site-shell .site-event,
.site-list-shell .site-list-card{transform:none!important;transition:none!important}
.site-shell .site-card:hover,.site-shell .site-summary-card:hover,.site-shell .site-panel-tile:hover,.site-shell .site-camera-card:hover,.site-shell .site-event:hover,
.site-list-shell .site-list-card:hover{transform:none!important}

/* SMART Edge Fleet Center */
.edge-center{display:grid;gap:20px}.edge-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;padding:24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 88% 16%,rgba(68,198,255,.16),transparent 25%),radial-gradient(circle at 14% 18%,rgba(38,212,141,.11),transparent 26%),linear-gradient(145deg,#0d2234,#091827 62%,#0a1523);box-shadow:var(--shadow-xl)}
.edge-hero h2{margin:5px 0 8px;font-size:30px}.edge-hero p{margin:0;color:#9eb5c8;line-height:1.58;max-width:780px}.edge-hero-chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.edge-hero-chips span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);font-size:11px;color:#eaf6ff}.edge-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.edge-hero-stats>div{padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.edge-hero-stats b{display:block;font-size:29px;line-height:1}.edge-hero-stats span{display:block;margin-top:7px;font-size:11px;color:#9db3c4}.edge-hero-stats small{display:block;margin-top:4px;font-size:10px;color:#7d96aa}
.edge-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.edge-kpi{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.edge-kpi .ico{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:rgba(68,198,255,.10);color:#e8f7ff}.edge-kpi.good .ico{background:rgba(38,212,141,.13)}.edge-kpi.warning .ico{background:rgba(247,184,68,.14)}.edge-kpi.critical .ico{background:rgba(255,79,114,.14)}.edge-kpi b{display:block;font-size:25px}.edge-kpi span{display:block;font-size:11px;color:#edf7ff}.edge-kpi small{display:block;margin-top:4px;font-size:10px;color:#839caf}
.edge-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.edge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.edge-card{padding:18px;border-radius:22px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);display:grid;gap:14px}.edge-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.edge-card-head h3{margin:0;font-size:15px}.edge-card-head p{margin:5px 0 0;font-size:11px;color:#8da5b8}.edge-health-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.edge-health-row>div{padding:10px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.edge-health-row span{display:block;font-size:9px;color:#839caf}.edge-health-row b{display:block;margin-top:5px;font-size:12px;color:#eef8ff}.edge-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.edge-card-meta>div{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.edge-card-meta span{display:block;font-size:9px;color:#849daf}.edge-card-meta b{display:block;margin-top:5px;font-size:11px;color:#eef8ff}.edge-actions{display:flex;gap:8px;flex-wrap:wrap}.edge-actions button{flex:1 1 120px}.edge-side{display:grid;gap:18px;position:sticky;top:104px}.edge-side-card{padding:18px!important}.edge-zone-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.edge-zone-row:last-child{border-bottom:0}.edge-zone-row b{font-size:12px}.edge-zone-row span{font-size:11px;color:#8da5b8}
.edge-filter-panel{padding:14px;border-radius:18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.edge-filter-grid{display:grid;grid-template-columns:1.4fr repeat(2,minmax(160px,.7fr));gap:10px}.edge-filter-grid input,.edge-filter-grid select{min-height:43px;border-radius:13px;padding:9px 11px;background:#0a1725;color:var(--text);border:1px solid rgba(255,255,255,.07)}

/* Reports Center */
.reports-center{display:grid;gap:20px}.reports-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;padding:24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 88% 14%,rgba(255,176,46,.15),transparent 25%),radial-gradient(circle at 12% 20%,rgba(68,198,255,.13),transparent 27%),linear-gradient(145deg,#0d2234,#091827 62%,#0a1523);box-shadow:var(--shadow-xl)}.reports-hero h2{margin:5px 0 8px;font-size:30px}.reports-hero p{margin:0;color:#9eb5c8;line-height:1.58;max-width:780px}.reports-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reports-hero-stats>div{padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.reports-hero-stats b{display:block;font-size:29px}.reports-hero-stats span{display:block;margin-top:6px;font-size:11px;color:#9db3c4}.reports-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.reports-kpi{display:flex;gap:12px;align-items:center;padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.reports-kpi .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(68,198,255,.10)}.reports-kpi b{display:block;font-size:25px}.reports-kpi span{display:block;font-size:11px;color:#edf7ff}.reports-kpi small{display:block;margin-top:4px;font-size:10px;color:#839caf}.report-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-product-card{padding:18px;border-radius:22px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);display:grid;gap:14px}.report-product-card .report-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:rgba(68,198,255,.10);color:#e8f7ff}.report-product-card h3{margin:0;font-size:16px}.report-product-card p{margin:0;font-size:11px;line-height:1.5;color:#8fa7ba}.report-meta{display:flex;gap:8px;flex-wrap:wrap}.report-meta span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05);font-size:9px;color:#9eb4c5}.report-card-actions{display:flex;gap:8px;flex-wrap:wrap}.report-card-actions button{flex:1 1 140px}.reports-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.report-preview-card{padding:18px!important}.report-activity-list{display:grid;gap:10px}.report-activity{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.report-activity .dot{width:10px;height:10px;border-radius:50%;background:#44c6ff}.report-activity b{display:block;font-size:12px}.report-activity small{display:block;margin-top:4px;font-size:10px;color:#8ea6b9}.report-activity time{font-size:10px;color:#829aad}.report-note{padding:14px;border-radius:16px;background:rgba(68,198,255,.07);border:1px solid rgba(68,198,255,.12);font-size:11px;line-height:1.55;color:#cfe7f6}

:root[data-theme="light"] .edge-hero,:root[data-theme="light"] .reports-hero{background:radial-gradient(circle at 88% 14%,rgba(68,198,255,.15),transparent 25%),radial-gradient(circle at 12% 18%,rgba(38,212,141,.10),transparent 27%),linear-gradient(145deg,#fff,#eef7fd 62%,#fff9f2);border-color:#dbe8ef;color:#10253a}
:root[data-theme="light"] .edge-hero p,:root[data-theme="light"] .edge-hero-stats span,:root[data-theme="light"] .edge-hero-stats small,:root[data-theme="light"] .edge-kpi small,:root[data-theme="light"] .edge-card-head p,:root[data-theme="light"] .edge-health-row span,:root[data-theme="light"] .edge-card-meta span,:root[data-theme="light"] .edge-zone-row span,:root[data-theme="light"] .reports-hero p,:root[data-theme="light"] .reports-hero-stats span,:root[data-theme="light"] .reports-kpi small,:root[data-theme="light"] .report-product-card p,:root[data-theme="light"] .report-activity small,:root[data-theme="light"] .report-activity time{color:#5b7386!important}
:root[data-theme="light"] .edge-hero-stats>div,:root[data-theme="light"] .edge-kpi,:root[data-theme="light"] .edge-card,:root[data-theme="light"] .edge-filter-panel,:root[data-theme="light"] .edge-health-row>div,:root[data-theme="light"] .edge-card-meta>div,:root[data-theme="light"] .reports-hero-stats>div,:root[data-theme="light"] .reports-kpi,:root[data-theme="light"] .report-product-card,:root[data-theme="light"] .report-activity{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.06)!important}
:root[data-theme="light"] .edge-kpi b,:root[data-theme="light"] .edge-kpi span,:root[data-theme="light"] .edge-health-row b,:root[data-theme="light"] .edge-card-meta b,:root[data-theme="light"] .reports-kpi b,:root[data-theme="light"] .reports-kpi span,:root[data-theme="light"] .report-product-card h3,:root[data-theme="light"] .report-activity b{color:#10253a!important}
:root[data-theme="light"] .edge-filter-grid input,:root[data-theme="light"] .edge-filter-grid select{background:#fff;color:#10253a;border-color:#d8e5ed}

@media(max-width:1450px){.edge-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.reports-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.report-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.edge-hero,.reports-hero,.edge-layout,.reports-layout{grid-template-columns:1fr}.edge-side{position:static}.edge-grid{grid-template-columns:1fr}.edge-hero-stats,.reports-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.edge-kpis,.reports-kpis,.report-catalog,.edge-hero-stats,.reports-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.edge-filter-grid{grid-template-columns:1fr}.edge-health-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.edge-kpis,.reports-kpis,.report-catalog,.edge-hero-stats,.reports-hero-stats{grid-template-columns:1fr}}


/* ===== SMART Sentinel V14.9.0 — interaction safety + admin redesign ===== */

/* Global modal/form usability */
.modal{display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;overflow:hidden!important}
.modal.hidden{display:none!important}
.modal-card{display:flex!important;flex-direction:column!important;max-height:calc(100dvh - 32px)!important;min-height:0!important;width:min(980px,calc(100vw - 32px))!important;overflow:hidden!important}
.modal-head{flex:0 0 auto!important;position:sticky;top:0;z-index:5;background:inherit}
#modalBody{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable;padding-bottom:28px!important}
#modalBody .form-grid{padding-bottom:10px}
#modalBody .form-actions{position:sticky;bottom:-1px;z-index:4;padding:14px 0 4px;margin-top:8px;background:linear-gradient(180deg,transparent 0,#091521 34%)}
:root[data-theme="light"] #modalBody .form-actions{background:linear-gradient(180deg,transparent 0,#fff 34%)}
@media(max-width:700px){.modal{padding:8px!important}.modal-card{max-height:calc(100dvh - 16px)!important;width:calc(100vw - 16px)!important}.form-grid{grid-template-columns:1fr!important}}

/* White theme visibility fixes */
:root[data-theme="light"] .report-product-card .report-icon,
:root[data-theme="light"] .report-product-card .report-icon .pro-icon,
:root[data-theme="light"] .report-product-card .report-icon svg{color:#12314a!important;stroke:#12314a!important}
:root[data-theme="light"] .site-hero-meta span{color:#12314a!important;background:#fff!important;border-color:#dce8ef!important}
:root[data-theme="light"] .site-hero-meta .armed-pill{color:#12314a!important}

/* Explicit controls only: decorative cards never pretend to be clickable */
.admin-center-v149 .admin-card,.rules-card-v149,.user-card-v149,.zone-card-v149,.audit-card-v149,.settings-card-v149{cursor:default!important}
.admin-center-v149 button,.admin-center-v149 a,.admin-center-v149 input,.admin-center-v149 select,.admin-center-v149 textarea{cursor:pointer}
.admin-center-v149 input,.admin-center-v149 textarea{cursor:text}

/* Shared admin page visual system */
.admin-center-v149{display:grid;gap:20px}
.admin-hero-v149{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;padding:24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 88% 14%,rgba(68,198,255,.14),transparent 24%),radial-gradient(circle at 12% 18%,rgba(255,176,46,.12),transparent 26%),linear-gradient(145deg,#0d2234,#091827 62%,#0a1523);box-shadow:var(--shadow-xl)}
.admin-hero-v149 h2{margin:5px 0 8px;font-size:30px;line-height:1.08}.admin-hero-v149 p{margin:0;color:#9eb5c8;line-height:1.58;max-width:780px}.admin-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.admin-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-hero-stats>div{padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.admin-hero-stats b{display:block;font-size:29px;line-height:1}.admin-hero-stats span{display:block;margin-top:6px;font-size:11px;color:#9db3c4}.admin-hero-stats small{display:block;margin-top:4px;font-size:10px;color:#7892a7}
.admin-kpi-grid-v149{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.admin-kpi-v149{display:flex;align-items:center;gap:12px;padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.admin-kpi-v149 .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(68,198,255,.10);color:#eaf8ff}.admin-kpi-v149 b{display:block;font-size:25px}.admin-kpi-v149 span{display:block;font-size:11px;color:#edf7ff}.admin-kpi-v149 small{display:block;margin-top:4px;font-size:10px;color:#839caf}
.admin-filter-v149{padding:15px;border-radius:20px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.admin-filter-grid-v149{display:grid;grid-template-columns:1.3fr repeat(3,minmax(150px,.75fr));gap:10px}.admin-filter-grid-v149 input,.admin-filter-grid-v149 select{min-height:43px;border-radius:13px;padding:9px 11px;background:#0a1725;color:var(--text);border:1px solid rgba(255,255,255,.07)}
.admin-card-grid-v149{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.admin-card-v149{padding:18px;border-radius:22px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md);display:grid;gap:14px}.admin-card-head-v149{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-card-head-v149 h3{margin:0;font-size:16px}.admin-card-head-v149 p{margin:5px 0 0;font-size:10px;color:#8da5b8}.admin-card-meta-v149{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-card-meta-v149>div{padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.admin-card-meta-v149 span{display:block;font-size:10px;color:#8ea7ba}.admin-card-meta-v149 b{display:block;margin-top:5px;font-size:12px;color:#eef8ff;word-break:break-word}.admin-card-actions-v149{display:flex;gap:8px;flex-wrap:wrap}.admin-card-actions-v149 button{flex:1 1 120px}
.admin-layout-v149{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px}.admin-side-v149{display:grid;gap:16px;align-content:start;position:sticky;top:104px;height:max-content}.admin-side-card-v149{padding:18px!important}.admin-list-v149{display:grid;gap:10px}.admin-list-row-v149{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 13px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.admin-list-row-v149 b{display:block;font-size:12px}.admin-list-row-v149 small{display:block;margin-top:4px;font-size:10px;color:#8da5b8}.admin-list-row-v149 strong{font-size:16px}

/* Rules */
.rule-condition-v149{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:8px 10px;border-radius:12px;background:rgba(68,198,255,.07);border:1px solid rgba(68,198,255,.11);font-size:11px;color:#cfeeff}.rule-message-v149{font-size:11px;color:#91a8ba;line-height:1.5}.rule-category-v149{display:inline-flex;width:max-content;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);font-size:9px;color:#9db4c5}

/* Users */
.user-avatar-v149{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#2f78b6,#173c5a);font-weight:800}.user-card-top-v149{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center}.user-card-top-v149 h3{margin:0;font-size:15px}.user-card-top-v149 p{margin:4px 0 0;font-size:10px;color:#8da5b8}

/* Zones */
.zone-progress-v149{display:grid;gap:7px}.zone-progress-v149 .track{height:10px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden}.zone-progress-v149 .track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#44c6ff,#26d48d)}

/* Audit */
.audit-table-v149 .table{min-width:980px}.audit-action-v149{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(68,198,255,.08);border:1px solid rgba(68,198,255,.12);font-size:9px;color:#cfefff}.audit-details-v149{max-width:420px;white-space:normal;line-height:1.45}.audit-timeline-v149{display:grid;gap:10px}.audit-timeline-row-v149{display:grid;grid-template-columns:12px 1fr auto;gap:11px;align-items:start;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.05)}.audit-timeline-row-v149:last-child{border-bottom:0}.audit-timeline-row-v149 .dot{width:10px;height:10px;border-radius:50%;background:#44c6ff;margin-top:5px}.audit-timeline-row-v149 b{display:block;font-size:11px}.audit-timeline-row-v149 small{display:block;margin-top:3px;font-size:9px;color:#8da5b8}.audit-timeline-row-v149 time{font-size:9px;color:#7d96aa}

/* Settings */
.settings-grid-v149{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-card-v149{padding:18px!important}.settings-status-grid-v149{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-status-grid-v149>div{padding:12px;border-radius:15px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.settings-status-grid-v149 span{display:block;font-size:10px;color:#8da5b8}.settings-status-grid-v149 b{display:block;margin-top:5px;font-size:12px}.settings-flow-v149{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.settings-flow-v149 span,.settings-flow-v149 b{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05);font-size:10px}.settings-flow-v149 i{color:#7e9bb0}

:root[data-theme="light"] .admin-hero-v149{background:radial-gradient(circle at 88% 14%,rgba(68,198,255,.15),transparent 24%),radial-gradient(circle at 12% 18%,rgba(255,176,46,.13),transparent 26%),linear-gradient(145deg,#fff,#eef7fd 62%,#fff9f2);border-color:#dbe8ef;color:#10253a}
:root[data-theme="light"] .admin-hero-v149 p,:root[data-theme="light"] .admin-hero-stats span,:root[data-theme="light"] .admin-hero-stats small,:root[data-theme="light"] .admin-kpi-v149 small,:root[data-theme="light"] .admin-card-head-v149 p,:root[data-theme="light"] .admin-card-meta-v149 span,:root[data-theme="light"] .admin-list-row-v149 small,:root[data-theme="light"] .rule-message-v149,:root[data-theme="light"] .user-card-top-v149 p,:root[data-theme="light"] .audit-timeline-row-v149 small,:root[data-theme="light"] .audit-timeline-row-v149 time,:root[data-theme="light"] .settings-status-grid-v149 span{color:#5b7386!important}
:root[data-theme="light"] .admin-hero-stats>div,:root[data-theme="light"] .admin-kpi-v149,:root[data-theme="light"] .admin-filter-v149,:root[data-theme="light"] .admin-card-v149,:root[data-theme="light"] .admin-list-row-v149,:root[data-theme="light"] .admin-card-meta-v149>div,:root[data-theme="light"] .settings-status-grid-v149>div{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 10px 24px rgba(14,37,58,.05)!important}
:root[data-theme="light"] .admin-kpi-v149 b,:root[data-theme="light"] .admin-kpi-v149 span,:root[data-theme="light"] .admin-card-meta-v149 b,:root[data-theme="light"] .admin-list-row-v149 b,:root[data-theme="light"] .admin-list-row-v149 strong,:root[data-theme="light"] .settings-status-grid-v149 b{color:#10253a!important}
:root[data-theme="light"] .admin-filter-grid-v149 input,:root[data-theme="light"] .admin-filter-grid-v149 select{background:#fff;color:#10253a;border-color:#d8e5ed}
:root[data-theme="light"] .rule-condition-v149{background:#eef9ff;color:#174666;border-color:#cfe8f7}:root[data-theme="light"] .rule-category-v149{background:#f5f9fc;color:#526f83;border-color:#dfe9f0}

@media(max-width:1450px){.admin-kpi-grid-v149{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-card-grid-v149{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter-grid-v149{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.admin-hero-v149,.admin-layout-v149{grid-template-columns:1fr}.admin-side-v149{position:static}.admin-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-grid-v149{grid-template-columns:1fr}}
@media(max-width:760px){.admin-kpi-grid-v149,.admin-card-grid-v149,.admin-hero-stats,.admin-filter-grid-v149{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card-meta-v149{grid-template-columns:1fr}}
@media(max-width:520px){.admin-kpi-grid-v149,.admin-card-grid-v149,.admin-hero-stats,.admin-filter-grid-v149{grid-template-columns:1fr}}


/* ===== SMART Sentinel V15.0.0 — interaction safety, audit fix, site detail redesign ===== */

/* Global deterministic pointer/click behavior */
#content button,#content a,#content input,#content select,#content textarea,#modal button,#modal a,#modal input,#modal select,#modal textarea{touch-action:manipulation}
#content button::before,#content button::after,#modal button::before,#modal button::after{pointer-events:none!important}

/* Reports: only the action zone is interactive; decorative content cannot capture a click */
.reports-center .report-product-card{position:relative;isolation:isolate}
.reports-center .report-product-card .report-icon,
.reports-center .report-product-card>div:not(.report-card-actions),
.reports-center .report-product-card>p,
.reports-center .report-product-card>h3{pointer-events:none!important}
.reports-center .report-card-actions{position:relative;z-index:5;pointer-events:auto!important}
.reports-center .report-card-actions button{position:relative;z-index:6;pointer-events:auto!important}
.reports-center .report-product-card:hover{transform:none!important}

/* Audit: guarantee horizontal scroll and readable details */
.audit-table-v149{overflow-x:auto!important;overflow-y:visible!important;max-width:100%!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.audit-table-v149 .table{min-width:1280px!important;width:max-content!important;max-width:none!important}
.audit-table-v149 th,.audit-table-v149 td{white-space:nowrap}
.audit-table-v149 .audit-details-v149{min-width:420px!important;max-width:620px!important;white-space:normal!important;word-break:break-word!important;color:#d7e6f1!important;line-height:1.55}
.audit-action-v149{color:#d9f3ff!important;background:rgba(68,198,255,.10)!important;border-color:rgba(68,198,255,.18)!important;font-weight:800}
.audit-scroll-hint-v150{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 10px;padding:10px 12px;border-radius:12px;background:rgba(68,198,255,.06);border:1px solid rgba(68,198,255,.10);font-size:10px;color:#9fc0d3}
.audit-detail-box-v150{display:block;max-height:130px;overflow:auto;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.5}
:root[data-theme="light"] .audit-action-v149{color:#0f567f!important;background:#e7f5ff!important;border-color:#bddff2!important}
:root[data-theme="light"] .audit-table-v149 .audit-details-v149{color:#20384b!important}
:root[data-theme="light"] .audit-detail-box-v150{background:#f7fbfe!important;border-color:#dce8ef!important;color:#20384b!important}
:root[data-theme="light"] .audit-scroll-hint-v150{background:#eef8fe!important;border-color:#d3e8f4!important;color:#49687c!important}

/* Site detail V15 */
.site-detail-v150{display:grid;gap:20px}
.site-detail-v150 *{animation:none!important}
.site-detail-v150 .card,.site-detail-v150 .site-v150-panel,.site-detail-v150 .site-v150-kpi,.site-detail-v150 .site-v150-camera{transition:none!important;transform:none!important}
.site-detail-v150 .card:hover,.site-detail-v150 .site-v150-panel:hover,.site-detail-v150 .site-v150-kpi:hover,.site-detail-v150 .site-v150-camera:hover{transform:none!important}
.site-v150-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;padding:24px;border-radius:26px;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 90% 16%,rgba(38,212,141,.14),transparent 26%),radial-gradient(circle at 14% 16%,rgba(68,198,255,.13),transparent 28%),linear-gradient(145deg,#0d2234,#091827 62%,#0a1523);box-shadow:var(--shadow-xl)}
.site-v150-hero h2{margin:6px 0 8px;font-size:30px;line-height:1.08}.site-v150-hero p{margin:0;color:#9eb5c8;line-height:1.58;max-width:820px}.site-v150-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.site-v150-tags span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);font-size:10px;color:#eaf6ff}.site-v150-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.site-v150-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-v150-hero-stats>div{padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.site-v150-hero-stats b{display:block;font-size:27px;line-height:1}.site-v150-hero-stats span{display:block;margin-top:6px;font-size:11px;color:#9db3c4}.site-v150-hero-stats small{display:block;margin-top:4px;font-size:9px;color:#7892a7}
.site-v150-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.site-v150-kpi{display:grid;grid-template-columns:44px 1fr;gap:11px;align-items:center;padding:15px;border-radius:18px;background:linear-gradient(180deg,rgba(12,27,42,.98),rgba(9,21,33,.95));border:1px solid rgba(255,255,255,.06);box-shadow:var(--shadow-md)}.site-v150-kpi .ico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(68,198,255,.10);color:#e8f7ff}.site-v150-kpi b{display:block;font-size:22px;line-height:1}.site-v150-kpi span{display:block;margin-top:4px;font-size:10px;color:#edf7ff}.site-v150-kpi small{display:block;margin-top:4px;font-size:9px;color:#839caf}
.site-v150-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:20px;align-items:start}.site-v150-main,.site-v150-side{display:grid;gap:18px}.site-v150-side{position:sticky;top:104px}.site-v150-panel{padding:18px!important;border-radius:20px!important}.site-v150-panel .section-head{margin-bottom:14px!important}.site-v150-panel h3{font-size:17px!important}
.site-v150-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.site-v150-health{padding:13px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-v150-health span{display:block;font-size:9px;color:#8ca4b7}.site-v150-health b{display:block;margin-top:5px;font-size:13px;color:#eef8ff}.site-v150-health small{display:block;margin-top:4px;font-size:9px;color:#7892a7}
.site-v150-telemetry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.site-v150-telemetry .metric-tile{min-height:82px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}
.site-v150-ge{display:grid;grid-template-columns:350px minmax(0,1fr);gap:18px}.site-v150-ge-visual{display:grid;gap:12px}.site-v150-ge-visual img{width:100%;height:220px;object-fit:cover;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05)}.site-v150-ge-caption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:10px;color:#8fa7ba}.site-v150-gauges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-v150-ge-data{display:grid;gap:13px}.site-v150-ge-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.site-v150-ge-controls{display:flex;gap:10px;flex-wrap:wrap}.site-v150-ge-controls select{min-width:180px}.site-v150-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.site-v150-action-grid button{width:100%;min-height:42px}
.site-v150-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.site-v150-camera{display:grid;gap:11px;padding:15px;border-radius:18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-v150-camera-head{display:flex;justify-content:space-between;gap:10px}.site-v150-camera-head b{font-size:13px}.site-v150-camera-head small{display:block;margin-top:4px;font-size:9px;color:#8da5b8}.site-v150-camera .camera-frame{height:240px;border-radius:15px}.site-v150-camera-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.site-v150-camera-actions button{width:100%}
.site-v150-alarm-list,.site-v150-events,.site-v150-interventions{display:grid;gap:10px}.site-v150-alarm{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 14px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-v150-alarm.critical{border-left:4px solid #ff4f72}.site-v150-alarm.warning{border-left:4px solid #f7b844}.site-v150-alarm.info{border-left:4px solid #44c6ff}.site-v150-alarm b{font-size:12px}.site-v150-alarm p{margin:4px 0 0;font-size:9px;line-height:1.45;color:#8da5b8}.site-v150-alarm-actions{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}.site-v150-alarm-actions button{min-height:34px;padding:7px 9px;font-size:9px}
.site-v150-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-v150-security-item{padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-v150-security-item span{display:block;font-size:9px;color:#8ca4b7}.site-v150-security-item b{display:block;margin-top:5px;font-size:12px}.site-v150-map .smart-geo-map{height:300px}.site-v150-event{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.05)}.site-v150-event:last-child{border-bottom:0}.site-v150-event .dot{width:9px;height:9px;border-radius:50%;background:#44c6ff;margin-top:4px}.site-v150-event b{font-size:10px}.site-v150-event small{display:block;margin-top:3px;font-size:9px;color:#8da5b8;line-height:1.45}.site-v150-event time{font-size:8px;color:#7892a7}.site-v150-intervention{padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.site-v150-intervention b{display:block;font-size:11px}.site-v150-intervention small{display:block;margin-top:4px;font-size:9px;color:#8da5b8;line-height:1.4}
:root[data-theme="light"] .site-v150-hero{background:radial-gradient(circle at 90% 16%,rgba(38,212,141,.16),transparent 26%),radial-gradient(circle at 14% 16%,rgba(68,198,255,.15),transparent 28%),linear-gradient(145deg,#fff,#eef7fd 62%,#f7fff9);border-color:#dbe8ef;color:#10253a}:root[data-theme="light"] .site-v150-hero p,:root[data-theme="light"] .site-v150-hero-stats span,:root[data-theme="light"] .site-v150-hero-stats small,:root[data-theme="light"] .site-v150-kpi small,:root[data-theme="light"] .site-v150-health span,:root[data-theme="light"] .site-v150-health small,:root[data-theme="light"] .site-v150-camera-head small,:root[data-theme="light"] .site-v150-alarm p,:root[data-theme="light"] .site-v150-security-item span,:root[data-theme="light"] .site-v150-event small,:root[data-theme="light"] .site-v150-event time,:root[data-theme="light"] .site-v150-intervention small{color:#5b7386!important}:root[data-theme="light"] .site-v150-hero-stats>div,:root[data-theme="light"] .site-v150-kpi,:root[data-theme="light"] .site-v150-health,:root[data-theme="light"] .site-v150-telemetry .metric-tile,:root[data-theme="light"] .site-v150-camera,:root[data-theme="light"] .site-v150-alarm,:root[data-theme="light"] .site-v150-security-item,:root[data-theme="light"] .site-v150-intervention{background:#fff!important;border-color:#dfeaf1!important;box-shadow:0 8px 22px rgba(14,37,58,.05)!important}:root[data-theme="light"] .site-v150-kpi b,:root[data-theme="light"] .site-v150-kpi span,:root[data-theme="light"] .site-v150-health b,:root[data-theme="light"] .site-v150-security-item b,:root[data-theme="light"] .site-v150-alarm b,:root[data-theme="light"] .site-v150-intervention b{color:#10253a!important}
@media(max-width:1450px){.site-v150-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.site-v150-ge{grid-template-columns:300px 1fr}.site-v150-health-grid,.site-v150-telemetry{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.site-v150-hero,.site-v150-layout,.site-v150-ge{grid-template-columns:1fr}.site-v150-side{position:static}.site-v150-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.site-v150-camera-grid{grid-template-columns:1fr}}
@media(max-width:760px){.site-v150-kpis,.site-v150-hero-stats,.site-v150-health-grid,.site-v150-telemetry,.site-v150-ge-metrics,.site-v150-action-grid,.site-v150-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.site-v150-kpis,.site-v150-hero-stats,.site-v150-health-grid,.site-v150-telemetry,.site-v150-ge-metrics,.site-v150-action-grid,.site-v150-security-grid,.site-v150-camera-actions{grid-template-columns:1fr}}


/* ===== SMART Sentinel V15.1.0 — Site Detail & Generator Cockpit ===== */
/* Layout inspired by the approved design mockups: spacious, structured, NOC-oriented. */
.site151,.ge151{display:grid;gap:18px;cursor:default}.site151 *,.ge151 *{box-sizing:border-box}.site151 section,.ge151 section{min-width:0}.site151 .card,.ge151 .card{border-radius:18px;border:1px solid rgba(113,174,218,.16);background:linear-gradient(180deg,rgba(10,27,43,.97),rgba(7,20,34,.97));box-shadow:0 14px 36px rgba(0,0,0,.14)}
.site151 button,.site151 a,.site151 input,.site151 select,.site151 textarea,.ge151 button,.ge151 a,.ge151 input,.ge151 select,.ge151 textarea{cursor:pointer}.site151 .card,.site151 .sd-kpi,.site151 .sd-security-cell,.site151 .sd-info-row,.site151 .sd-activity-row,.ge151 .card,.ge151 .ge151-metric,.ge151 .ge151-data-row{cursor:default!important;transform:none!important}.site151 .card:hover,.site151 .sd-kpi:hover,.site151 .sd-security-cell:hover,.ge151 .card:hover,.ge151 .ge151-metric:hover{transform:none!important}

/* Site detail top banner */
.sd-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:22px 24px;border-radius:22px;border:1px solid rgba(87,156,207,.22);background:radial-gradient(circle at 75% 20%,rgba(34,126,255,.15),transparent 28%),linear-gradient(110deg,#0d2740 0%,#0b1f34 55%,#102139 100%)}
.sd-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 55%,rgba(255,122,26,.05));opacity:.8}.sd-hero-main,.sd-hero-side{position:relative;z-index:1}.sd-breadcrumb{font-size:11px;color:#8eacc2;margin-bottom:9px}.sd-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sd-title-row h2{margin:0;font-size:31px;line-height:1;color:#f5faff}.sd-status{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:rgba(38,212,141,.11);border:1px solid rgba(38,212,141,.35);color:#71edb8;font-size:11px;font-weight:700}.sd-status i{width:8px;height:8px;border-radius:50%;background:#27dc93}.sd-site-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:13px;color:#a6bdce;font-size:11px}.sd-site-meta span{display:inline-flex;align-items:center;gap:7px}.sd-hero-actions{display:flex;justify-content:flex-end;align-items:flex-start;gap:10px;flex-wrap:wrap}.sd-hero-actions button{min-height:42px}

/* KPI */
.sd-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.sd-kpi{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;min-height:104px;padding:16px;border-radius:18px;border:1px solid rgba(111,172,216,.17);background:linear-gradient(180deg,rgba(10,29,47,.98),rgba(8,22,37,.98))}.sd-kpi .ico{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(37,139,255,.13);color:#58a9ff}.sd-kpi.good{border-color:rgba(38,212,141,.28)}.sd-kpi.good .ico{background:rgba(38,212,141,.12);color:#63e7ac}.sd-kpi.danger{border-color:rgba(255,79,114,.32);background:linear-gradient(180deg,rgba(55,22,37,.96),rgba(26,17,29,.98))}.sd-kpi.danger .ico{background:rgba(255,79,114,.15);color:#ff7f99}.sd-kpi b{display:block;font-size:22px;color:#f4f9ff;line-height:1.05}.sd-kpi span{display:block;margin-top:4px;font-size:12px;color:#dcebf5}.sd-kpi small{display:block;margin-top:5px;font-size:10px;color:#809aaf}

/* Site main matrix */
.sd-matrix{display:grid;grid-template-columns:1.05fr 1.25fr 1.05fr;gap:16px}.sd-panel{padding:16px}.sd-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}.sd-panel-head h3{margin:0;display:flex;align-items:center;gap:8px;font-size:15px;color:#f0f7fd}.sd-panel-head small{font-size:10px;color:#83a0b5}.sd-panel-head .right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sd-security-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sd-security-cell{padding:13px;border-radius:14px;border:1px solid rgba(111,172,216,.12);background:rgba(255,255,255,.025);display:grid;grid-template-columns:39px 1fr;gap:10px;align-items:center}.sd-security-cell .ico{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:rgba(38,212,141,.10);color:#64e9b0}.sd-security-cell b{font-size:12px;color:#eef7fd}.sd-security-cell span{display:block;margin-top:3px;font-size:10px;color:#89a4b8}.sd-security-cell em{display:inline-block;margin-top:5px;padding:4px 8px;border-radius:8px;background:rgba(38,212,141,.12);color:#62e8ae;font-size:9px;font-style:normal}
.sd-map .smart-geo-map{height:252px!important;border-radius:14px}.sd-map-foot{display:flex;justify-content:space-between;gap:12px;padding-top:10px;font-size:10px;color:#8da6ba;flex-wrap:wrap}
.sd-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sd-camera{overflow:hidden;border-radius:14px;border:1px solid rgba(111,172,216,.13);background:#061421}.sd-camera-head{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;font-size:10px;color:#dcecf7}.sd-camera-head b{font-size:10px}.sd-camera-frame{height:174px;background:linear-gradient(145deg,#0e283d,#071725);position:relative;overflow:hidden}.sd-camera-frame img{width:100%;height:100%;object-fit:cover}.sd-camera-frame .camera-empty{height:100%;display:grid;place-content:center;text-align:center;padding:15px}.sd-camera-actions{display:flex;gap:6px;padding:9px}.sd-camera-actions button{flex:1;min-height:34px;font-size:10px;padding:6px 8px}

/* second row */
.sd-secondary{display:grid;grid-template-columns:1.1fr 1.05fr .95fr;gap:16px}.sd-ge-card{display:grid;grid-template-columns:210px 1fr;gap:15px}.sd-ge-photo{display:grid;place-items:center;min-height:205px;padding:10px;border-radius:14px;background:#fff;overflow:hidden}.sd-ge-photo img{width:100%;height:180px;object-fit:contain}.sd-ge-data{display:grid;align-content:start;gap:8px}.sd-ge-line{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}.sd-ge-line:last-child{border-bottom:0}.sd-ge-line span{font-size:10px;color:#8da6ba}.sd-ge-line b{font-size:12px;color:#edf7ff}.sd-progress{height:7px;border-radius:999px;background:#14283a;overflow:hidden;margin-top:5px}.sd-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1fcf8a,#48f0b1)}
.sd-edge-layout{display:grid;grid-template-columns:145px 1fr;gap:14px;align-items:center}.sd-edge-box{height:175px;border-radius:15px;border:1px solid rgba(82,153,208,.15);background:radial-gradient(circle at 50% 30%,rgba(39,122,255,.17),transparent 48%),linear-gradient(180deg,#102a42,#071723);display:grid;place-items:center;text-align:center}.sd-edge-device{width:92px;height:118px;border-radius:13px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,#263a4b,#0a1520);box-shadow:0 18px 28px rgba(0,0,0,.35);display:grid;place-items:center;color:#e4eef6;font-weight:800;font-size:12px}.sd-info-list{display:grid;gap:0}.sd-info-row{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}.sd-info-row:last-child{border-bottom:0}.sd-info-row span{font-size:10px;color:#8ba4b8}.sd-info-row b{font-size:11px;color:#edf7ff;text-align:right}

/* bottom row */
.sd-bottom{display:grid;grid-template-columns:1.05fr 1fr .9fr;gap:16px}.sd-compact-table{width:100%;border-collapse:collapse;font-size:10px}.sd-compact-table th{padding:7px;text-align:left;color:#7f9bb0;font-weight:600;border-bottom:1px solid rgba(255,255,255,.08)}.sd-compact-table td{padding:8px 7px;color:#d7e7f2;border-bottom:1px solid rgba(255,255,255,.045)}.sd-compact-table tr:last-child td{border-bottom:0}.sd-activity{display:grid;gap:4px}.sd-activity-row{display:grid;grid-template-columns:52px 12px 1fr;gap:8px;align-items:start;padding:5px 0}.sd-activity-row time{font-size:9px;color:#7995aa}.sd-activity-row i{width:8px;height:8px;border-radius:50%;background:#2fd996;margin-top:2px;box-shadow:0 0 0 4px rgba(47,217,150,.08)}.sd-activity-row b{font-size:10px;color:#dcecf6}.sd-activity-row small{display:block;font-size:9px;color:#7f9aae;margin-top:2px}

/* Generator Cockpit */
.ge151-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.ge151-title h2{margin:3px 0 5px;font-size:29px}.ge151-title p{margin:0;color:#90aabd;font-size:12px}.ge151-sitebar{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.ge151-sitebar>div{padding-left:14px;border-left:1px solid rgba(255,255,255,.08)}.ge151-sitebar span{display:block;font-size:9px;color:#7f9bad}.ge151-sitebar b{display:block;margin-top:3px;font-size:14px;color:#eef7fe}.ge151-running{display:inline-flex!important;align-items:center;gap:7px;padding:8px 14px;border-radius:12px;border:1px solid rgba(38,212,141,.4);background:rgba(38,212,141,.1);color:#63e8af!important}.ge151-running.off{border-color:rgba(139,160,175,.25);background:rgba(139,160,175,.08);color:#b6c5cf!important}
.ge151-overview{display:grid;grid-template-columns:1.45fr 1.85fr;gap:16px}.ge151-visual{position:relative;min-height:300px;overflow:hidden;padding:22px;border-radius:18px;border:1px solid rgba(111,172,216,.17);background:radial-gradient(circle at 90% 20%,rgba(29,133,255,.18),transparent 30%),linear-gradient(135deg,#0e2d49,#071a2d)}.ge151-visual-copy{position:relative;z-index:2;max-width:170px}.ge151-visual-copy b{display:block;font-size:25px;color:#fff}.ge151-visual-copy span{display:block;margin-top:5px;font-size:11px;color:#c3d6e5}.ge151-visual img{position:absolute;z-index:1;right:12px;bottom:10px;width:72%;height:82%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.3))}.ge151-visual-foot{position:absolute;left:20px;bottom:14px;z-index:3;display:flex;gap:12px;font-size:9px;color:#a3bbcb}
.ge151-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ge151-metric{padding:14px;border-radius:16px;border:1px solid rgba(111,172,216,.14);background:linear-gradient(180deg,#0b2339,#081927);min-height:118px}.ge151-metric.feature{grid-row:span 1}.ge151-metric span{display:flex;align-items:center;gap:7px;font-size:10px;color:#9bb3c5}.ge151-metric b{display:block;margin-top:14px;font-size:22px;color:#f1f8fd}.ge151-metric small{display:block;margin-top:7px;font-size:9px;color:#7e9aae}.ge151-fuel-ring{width:70px;height:70px;margin:10px auto 0;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2bdc94 var(--fuelpct),#1b3448 0);position:relative}.ge151-fuel-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#0a1e30}.ge151-fuel-ring b{position:relative;z-index:2;margin:0;font-size:18px}.ge151-metric.wide{grid-column:span 2}
.ge151-chart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ge151-chart-card{padding:14px}.ge151-chart-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.ge151-chart-head b{font-size:11px}.ge151-chart-head select{min-height:32px;padding:5px 8px;font-size:9px;border-radius:9px}.ge151-chart-card .ge-chart{height:176px}.ge151-chart-card .ge-chart svg{height:140px}.ge151-bottom{display:grid;grid-template-columns:.85fr 1.15fr 1fr 1fr;gap:14px}.ge151-tank{padding:15px}.ge151-alarm-list,.ge151-maint-list,.ge151-data-list{display:grid;gap:8px}.ge151-alarm-row,.ge151-maint-row,.ge151-data-row{padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.ge151-alarm-row{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center}.ge151-alarm-row i{width:8px;height:8px;border-radius:50%;background:#ffb13b}.ge151-alarm-row.critical i{background:#ff4f72}.ge151-alarm-row b,.ge151-maint-row b{font-size:10px;color:#edf6fd}.ge151-alarm-row small,.ge151-maint-row small{display:block;font-size:9px;color:#7f9aad;margin-top:3px}.ge151-maint-row{display:grid;grid-template-columns:1fr auto;gap:8px}.ge151-data-row{display:flex;justify-content:space-between;gap:10px}.ge151-data-row span{font-size:9px;color:#8da7ba}.ge151-data-row b{font-size:10px;color:#eef7fe}.ge151-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ge151-actions button{flex:1 1 115px}

/* light */
:root[data-theme="light"] .site151 .card,:root[data-theme="light"] .ge151 .card,:root[data-theme="light"] .sd-kpi,:root[data-theme="light"] .ge151-metric{background:#fff!important;border-color:#dce9f1!important;box-shadow:0 10px 25px rgba(23,57,82,.06)!important}:root[data-theme="light"] .sd-hero{background:linear-gradient(110deg,#f4f9fd,#eaf4fb 55%,#f8fbfd);border-color:#d8e6ee}:root[data-theme="light"] .sd-title-row h2,:root[data-theme="light"] .sd-kpi b,:root[data-theme="light"] .sd-kpi span,:root[data-theme="light"] .sd-panel-head h3,:root[data-theme="light"] .sd-security-cell b,:root[data-theme="light"] .sd-ge-line b,:root[data-theme="light"] .sd-info-row b,:root[data-theme="light"] .sd-compact-table td,:root[data-theme="light"] .sd-activity-row b,:root[data-theme="light"] .ge151-title h2,:root[data-theme="light"] .ge151-sitebar b,:root[data-theme="light"] .ge151-metric b,:root[data-theme="light"] .ge151-alarm-row b,:root[data-theme="light"] .ge151-maint-row b,:root[data-theme="light"] .ge151-data-row b{color:#102b40!important}:root[data-theme="light"] .sd-site-meta,:root[data-theme="light"] .sd-kpi small,:root[data-theme="light"] .sd-panel-head small,:root[data-theme="light"] .sd-security-cell span,:root[data-theme="light"] .sd-ge-line span,:root[data-theme="light"] .sd-info-row span,:root[data-theme="light"] .sd-compact-table th,:root[data-theme="light"] .sd-activity-row time,:root[data-theme="light"] .sd-activity-row small,:root[data-theme="light"] .ge151-title p,:root[data-theme="light"] .ge151-sitebar span,:root[data-theme="light"] .ge151-metric span,:root[data-theme="light"] .ge151-metric small,:root[data-theme="light"] .ge151-alarm-row small,:root[data-theme="light"] .ge151-maint-row small,:root[data-theme="light"] .ge151-data-row span{color:#607a8e!important}:root[data-theme="light"] .sd-security-cell,:root[data-theme="light"] .sd-camera,:root[data-theme="light"] .sd-info-row,:root[data-theme="light"] .ge151-alarm-row,:root[data-theme="light"] .ge151-maint-row,:root[data-theme="light"] .ge151-data-row{border-color:#e0eaf0!important;background:#f9fcfe!important}:root[data-theme="light"] .sd-edge-box{background:#eef6fb;border-color:#dbe7ee}:root[data-theme="light"] .sd-edge-device{color:#fff}

@media(max-width:1450px){.sd-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sd-matrix{grid-template-columns:1fr 1fr}.sd-matrix>:last-child{grid-column:1/-1}.sd-secondary,.sd-bottom{grid-template-columns:1fr 1fr}.ge151-overview{grid-template-columns:1fr}.ge151-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ge151-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.sd-hero,.ge151-top{grid-template-columns:1fr}.sd-hero-actions{justify-content:flex-start}.sd-kpi-grid,.sd-matrix,.sd-secondary,.sd-bottom{grid-template-columns:1fr}.sd-matrix>:last-child{grid-column:auto}.sd-camera-grid{grid-template-columns:1fr}.sd-ge-card,.sd-edge-layout{grid-template-columns:1fr}.ge151-sitebar{justify-content:flex-start}.ge151-metrics,.ge151-chart-grid,.ge151-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sd-kpi-grid,.ge151-metrics,.ge151-chart-grid,.ge151-bottom{grid-template-columns:1fr}.sd-title-row h2{font-size:25px}.ge151-visual{min-height:360px}.ge151-visual img{width:95%;height:70%}}

/* ===== SMART Sentinel Version 1 — sticky top bar & generator customization ===== */
main>header{
  position:sticky!important;
  top:10px!important;
  z-index:140!important;
  min-height:64px!important;
  height:auto!important;
  padding:12px 16px!important;
  margin-bottom:16px!important;
}
#pageSubtitle{display:none!important}
main>header h2{font-size:18px!important;margin-top:2px!important}
main>header .breadcrumb{margin-bottom:2px}
.generator-photo-preview-v152{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.generator-photo-preview-v152 img{width:180px;height:120px;object-fit:contain;border-radius:12px;background:#fff}
.generator-photo-preview-v152 b{display:block;margin-bottom:6px;font-size:12px}.generator-photo-preview-v152 small{display:block;color:var(--muted);line-height:1.5}
.generator-profile-form-v152 input[type="file"]{padding:10px;background:#081625;border:1px dashed #31516a}
:root[data-theme="light"] .generator-photo-preview-v152{background:#f8fbfd;border-color:#dce8ef}:root[data-theme="light"] .generator-profile-form-v152 input[type="file"]{background:#fff;color:#10253a;border-color:#cbdde8}
@media(max-width:700px){main>header{top:6px!important}.generator-photo-preview-v152{grid-template-columns:1fr}.generator-photo-preview-v152 img{width:100%;height:180px}}


/* ===== SMART Sentinel Version 1 — notifications + reliable GE editor ===== */
#toast.toast-stack-v1531{position:fixed!important;top:84px!important;right:22px!important;bottom:auto!important;left:auto!important;z-index:5000!important;width:min(430px,calc(100vw - 32px));display:grid;gap:10px;pointer-events:none}
.toast.toast-v1531{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 28px;gap:11px;align-items:start;margin:0!important;padding:13px 14px!important;min-width:0!important;border-radius:16px!important;background:#102337!important;border:1px solid #29465d!important;color:#eaf5fc!important;box-shadow:0 24px 70px rgba(0,0,0,.38)!important;overflow:hidden;opacity:0;transform:translateY(-8px) scale(.985);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}
.toast.toast-v1531.show{opacity:1;transform:none}.toast.toast-v1531.success{background:#0e3025!important;border-color:#246849!important}.toast.toast-v1531.error{background:#3c1720!important;border-color:#913247!important}.toast.toast-v1531.warning{background:#382b12!important;border-color:#7a5a22!important}.toast.toast-v1531.info{background:#102d42!important;border-color:#2e6e91!important}
.toast-icon-v1531{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-weight:900;font-size:17px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09)}.toast-v1531.success .toast-icon-v1531{color:#72ebb1;background:rgba(31,208,127,.12)}.toast-v1531.error .toast-icon-v1531{color:#ff9dad;background:rgba(255,67,95,.12)}.toast-v1531.warning .toast-icon-v1531{color:#ffd477;background:rgba(247,184,68,.12)}.toast-v1531.info .toast-icon-v1531{color:#8bdcff;background:rgba(52,180,255,.12)}
.toast-body-v1531{min-width:0;padding-top:1px}.toast-body-v1531 b{display:block;font-size:12px;line-height:1.3;color:#fff}.toast-body-v1531 span{display:block;margin-top:4px;font-size:10.5px;line-height:1.5;color:#b9cedd;white-space:normal;overflow-wrap:anywhere}.toast-close-v1531{width:28px;height:28px;padding:0!important;min-height:0!important;border:0!important;border-radius:9px!important;background:rgba(255,255,255,.055)!important;color:#d5e4ee!important;font-size:17px!important;box-shadow:none!important;transform:none!important}.toast-progress-v1531{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left;background:currentColor;opacity:.48;animation:toastDrainV1531 linear forwards}.toast-v1531.success .toast-progress-v1531{color:#49d895}.toast-v1531.error .toast-progress-v1531{color:#ff6079}.toast-v1531.warning .toast-progress-v1531{color:#f7b844}.toast-v1531.info .toast-progress-v1531{color:#42bfff}@keyframes toastDrainV1531{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.generator-profile-intro-v1531{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border-radius:14px;background:rgba(52,180,255,.07);border:1px solid rgba(52,180,255,.14)}.generator-profile-intro-v1531 b{display:block;font-size:12px}.generator-profile-intro-v1531 span{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.5}.generator-profile-feedback-v1531{padding:11px 13px;border-radius:12px;font-size:10.5px;line-height:1.5;border:1px solid rgba(52,180,255,.18);background:rgba(52,180,255,.07);color:#bfe8ff}.generator-profile-feedback-v1531.success{background:rgba(31,208,127,.09);border-color:rgba(31,208,127,.24);color:#bff4d8}.generator-profile-feedback-v1531.error{background:rgba(255,67,95,.09);border-color:rgba(255,67,95,.25);color:#ffc1ca}.generator-profile-feedback-v1531.warning{background:rgba(247,184,68,.09);border-color:rgba(247,184,68,.25);color:#ffe2a0}.generator-profile-form-v152 button[disabled]{opacity:.58!important;cursor:wait!important;transform:none!important}.generator-remove-photo-v1531{padding:10px 12px;border-radius:12px;border:1px solid rgba(247,184,68,.18);background:rgba(247,184,68,.055)}
:root[data-theme="light"] .toast.toast-v1531{box-shadow:0 20px 60px rgba(21,49,70,.18)!important}:root[data-theme="light"] .toast-body-v1531 b{color:#fff!important}:root[data-theme="light"] .generator-profile-intro-v1531{background:#eef8fe;border-color:#d2e9f6}:root[data-theme="light"] .generator-profile-intro-v1531 b{color:#12314a}:root[data-theme="light"] .generator-profile-feedback-v1531{background:#eef8fe;color:#315d77;border-color:#d2e9f6}:root[data-theme="light"] .generator-profile-feedback-v1531.success{background:#eaf8f1;color:#17603f;border-color:#cbe9db}:root[data-theme="light"] .generator-profile-feedback-v1531.error{background:#fff0f2;color:#8b2638;border-color:#f1ccd4}:root[data-theme="light"] .generator-profile-feedback-v1531.warning{background:#fff8e8;color:#785414;border-color:#efdfb7}:root[data-theme="light"] .generator-remove-photo-v1531{background:#fff9ed;border-color:#eadcb9;color:#263f51}
@media(max-width:700px){#toast.toast-stack-v1531{top:74px!important;right:12px!important;width:calc(100vw - 24px)}.toast.toast-v1531{grid-template-columns:34px minmax(0,1fr) 28px;padding:12px!important}}


/* ===== SMART Sentinel Version 1 — production map / light theme polish ===== */
:root[data-theme="light"] .map-legend span{
  color:#163247!important;
  background:#f8fbfd!important;
  border-color:#c9dce7!important;
  box-shadow:0 4px 12px rgba(16,43,64,.06)!important;
  font-weight:700;
}
:root[data-theme="light"] .map-legend .legend-dot{box-shadow:0 0 0 4px rgba(16,43,64,.08)!important}
:root[data-theme="light"] .map-main-card,
:root[data-theme="light"] .map-side-card{border-color:#d6e5ed!important;box-shadow:0 12px 30px rgba(20,52,75,.07)!important}
:root[data-theme="light"] .map-card-footer .small{color:#496579!important}
:root[data-theme="light"] .map-side-note{background:#eef8fe!important;border-color:#cce6f4!important;color:#17384e!important}
:root[data-theme="light"] .map-side-note b{color:#17384e!important}
:root[data-theme="light"] .map-micro-stat{background:#f9fcfe!important;border-color:#d7e6ee!important}
:root[data-theme="light"] .map-attribution{box-shadow:0 6px 18px rgba(20,52,75,.10)!important}
.geo-tile.tile-error{opacity:0}

/* ===== SMART Sentinel Version 1 — Settings Center / targeted notifications ===== */
.settings-center-v154{display:grid;gap:18px;max-width:1540px;margin:0 auto;padding-bottom:32px}.settings-hero-v154{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(520px,.8fr);gap:24px;align-items:center;padding:26px 28px;border:1px solid #1d3d58;border-radius:20px;background:linear-gradient(135deg,#0c2338,#081827 62%,#0e2a40);box-shadow:0 20px 48px rgba(0,0,0,.16)}.settings-hero-v154 h2{font-size:30px;margin:5px 0 8px}.settings-hero-v154 p{max-width:760px;color:#9db1c1;margin:0;line-height:1.55}.settings-hero-kpis-v154{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.settings-hero-kpis-v154>div{padding:16px;border:1px solid #244660;border-radius:14px;background:rgba(7,21,34,.66)}.settings-hero-kpis-v154 b{display:block;font-size:22px;color:#f6fbff}.settings-hero-kpis-v154 span{display:block;margin-top:4px;font-weight:700}.settings-hero-kpis-v154 small{display:block;margin-top:3px;color:#7891a4}.settings-panel-v154{border:1px solid #1e3b52;border-radius:18px;background:#0a1b2a;padding:22px;box-shadow:0 12px 32px rgba(0,0,0,.12);min-width:0}.settings-panel-head-v154{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.settings-panel-head-v154 h3{font-size:20px;margin:3px 0 5px}.settings-panel-head-v154 p{margin:0;color:#8ca2b3;line-height:1.5;max-width:850px}.settings-status-v154{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;border:1px solid #34536a;background:#10283a;color:#b8c8d3;font-size:12px;font-weight:800;white-space:nowrap}.settings-status-v154 i{width:8px;height:8px;border-radius:50%;background:#70889a}.settings-status-v154.ok{border-color:#1c704f;background:#0d3929;color:#7bf0b4}.settings-status-v154.ok i{background:#29d78d;box-shadow:0 0 12px #29d78d99}.settings-two-v154{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.routing-flow-v154{display:grid;grid-template-columns:minmax(160px,.8fr) 38px minmax(200px,1fr) 36px minmax(220px,1fr);align-items:center;gap:10px;margin:4px 0 22px}.routing-flow-v154>div:not(.or){padding:16px;border:1px solid #2b4a61;border-radius:14px;background:#0d2233}.routing-flow-v154>div.global{border-color:#275e8c;background:#0d2841}.routing-flow-v154>div.target{border-color:#6a5222;background:#2d2413}.routing-flow-v154>div>span{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:9px;background:#1684ff;color:#fff;font-weight:900;font-size:12px;margin-right:8px}.routing-flow-v154 b{font-size:14px}.routing-flow-v154 small{display:block;color:#7f98a9;margin:7px 0 0 38px}.routing-flow-v154>i,.routing-flow-v154>.or{text-align:center;color:#6f8da2;font-weight:900;font-style:normal}.routing-form-v154{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.routing-form-block-v154{border:1px solid #254158;border-radius:14px;padding:16px;background:#081724;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;align-content:start}.routing-form-block-v154 h4{grid-column:1/-1;margin:0 0 2px;font-size:15px}.routing-form-block-v154 label{display:grid;gap:7px;font-size:12px;color:#aebfcb;font-weight:700}.routing-form-block-v154 .wide{grid-column:1/-1}.routing-form-block-v154 textarea{resize:vertical;min-height:72px}.routing-form-block-v154 small{font-weight:500;color:#718a9b;line-height:1.4}.routing-rule-note-v154{grid-column:1/-1;padding:12px 13px;border-radius:11px;background:#10263a;border:1px solid #29465e;color:#90a8b8;font-size:12px;line-height:1.5}.routing-actions-v154{grid-column:1/-1;display:flex;gap:10px;justify-content:flex-end}.routing-targets-v154{display:grid;gap:8px}.routing-target-v154{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.4fr) minmax(230px,.8fr);gap:18px;align-items:center;padding:13px 15px;border-radius:12px;border:1px solid #203b51;background:#081724}.routing-target-v154 b{display:block}.routing-target-v154 span{display:block;color:#7d94a5;font-size:12px;margin-top:3px}.routing-channels-v154{display:flex!important;gap:7px;justify-content:flex-end;flex-wrap:wrap}.channel-chip-v154{display:inline-flex!important;align-items:center!important;width:auto!important;margin:0!important;padding:6px 9px;border-radius:999px;border:1px solid #3a4f5e;background:#132634;color:#8ea1ae!important;font-size:11px!important;font-weight:800}.channel-chip-v154.ok{border-color:#1b6b4c;background:#0d3828;color:#77eeb0!important}.channel-chip-v154.off{opacity:.82}.settings-summary-v154{display:flex;gap:8px;flex-wrap:wrap}.settings-summary-v154 span{padding:6px 9px;border:1px solid #304b5f;border-radius:999px;color:#93a9b8;font-size:11px}.settings-form-v154{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.settings-form-v154 label{display:grid;gap:7px;color:#aebfcb;font-size:12px;font-weight:700}.settings-form-v154 .wide{grid-column:1/-1}.sms-test-v154{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;padding-top:6px;border-top:1px solid #223a4b}.sms-test-v154 label{margin:0}.service-health-v154{display:grid;gap:8px}.service-health-v154>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;background:#081724;border:1px solid #20394d;border-radius:11px}.service-health-v154>div>span:first-child{font-weight:700}.decision-flow-v154{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.decision-flow-v154 span,.decision-flow-v154 b{padding:8px 10px;border-radius:9px;border:1px solid #2b4659;background:#0d2232;font-size:12px}.decision-flow-v154 b{border-color:#1f6e50;color:#79e8b1}.decision-flow-v154 i{font-style:normal;color:#678398;font-weight:900}.settings-footnote-v154{margin:16px 0 0;color:#7d96a8;font-size:12px;line-height:1.55}.user-notify-box-v154{padding:14px;border:1px solid #29465e;background:#0b1d2b;border-radius:12px;display:grid;gap:12px}.user-notify-box-v154>div:first-child{display:grid;gap:3px}.user-notify-box-v154 small{color:#7f98aa;line-height:1.45}.user-notify-grid-v154{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.notify-choice-v154{display:flex!important;align-items:center!important;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #2a465a;border-radius:10px;background:#0b2232}.notify-choice-v154>span{display:grid;gap:2px}.notify-choice-v154 input{width:18px;height:18px;margin:0}.user-channel-row-v154{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
:root[data-theme="light"] .settings-hero-v154{background:linear-gradient(135deg,#ffffff,#f4f8fb);border-color:#d7e4ec;box-shadow:0 16px 38px rgba(25,54,76,.08)}:root[data-theme="light"] .settings-hero-v154 h2,:root[data-theme="light"] .settings-hero-kpis-v154 b{color:#102d43}:root[data-theme="light"] .settings-hero-v154 p{color:#607789}:root[data-theme="light"] .settings-hero-kpis-v154>div{background:#fff;border-color:#dbe6ed}:root[data-theme="light"] .settings-panel-v154{background:#fff;border-color:#d6e3eb;box-shadow:0 10px 28px rgba(22,54,77,.06)}:root[data-theme="light"] .settings-panel-head-v154 p{color:#637b8d}:root[data-theme="light"] .routing-flow-v154>div:not(.or),:root[data-theme="light"] .routing-form-block-v154,:root[data-theme="light"] .routing-target-v154,:root[data-theme="light"] .service-health-v154>div,:root[data-theme="light"] .user-notify-box-v154,:root[data-theme="light"] .notify-choice-v154{background:#f8fbfd;border-color:#d9e5ec}:root[data-theme="light"] .routing-flow-v154>div.global{background:#edf6ff;border-color:#bfddf7}:root[data-theme="light"] .routing-flow-v154>div.target{background:#fff8e9;border-color:#ead59d}:root[data-theme="light"] .routing-flow-v154 small,:root[data-theme="light"] .routing-target-v154 span,:root[data-theme="light"] .settings-footnote-v154,:root[data-theme="light"] .user-notify-box-v154 small{color:#687f90}:root[data-theme="light"] .routing-form-block-v154 label,:root[data-theme="light"] .settings-form-v154 label{color:#385267}:root[data-theme="light"] .routing-rule-note-v154{background:#f3f8fc;border-color:#d6e4ed;color:#5f788a}:root[data-theme="light"] .channel-chip-v154{background:#f2f6f8;border-color:#d3e0e7;color:#607788!important}:root[data-theme="light"] .channel-chip-v154.ok{background:#eaf8f1;border-color:#b9e5cf;color:#18794e!important}:root[data-theme="light"] .settings-status-v154{background:#f4f7f9;border-color:#d5e0e7;color:#526b7d}:root[data-theme="light"] .settings-status-v154.ok{background:#eaf8f1;border-color:#b9e5cf;color:#18794e}:root[data-theme="light"] .decision-flow-v154 span,:root[data-theme="light"] .decision-flow-v154 b{background:#f6f9fb;border-color:#d7e3ea;color:#24455b}
@media(max-width:1180px){.settings-hero-v154{grid-template-columns:1fr}.settings-two-v154,.routing-form-v154{grid-template-columns:1fr}.routing-flow-v154{grid-template-columns:1fr}.routing-flow-v154>i,.routing-flow-v154>.or{transform:rotate(90deg)}.routing-target-v154{grid-template-columns:1fr}.routing-channels-v154{justify-content:flex-start}.settings-hero-kpis-v154{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.settings-hero-v154,.settings-panel-v154{padding:16px}.settings-hero-kpis-v154,.routing-form-block-v154,.settings-form-v154,.user-notify-grid-v154{grid-template-columns:1fr}.sms-test-v154{grid-template-columns:1fr}.routing-actions-v154{justify-content:stretch;flex-direction:column}.routing-actions-v154 button{width:100%}}

/* SMART Sentinel Version 1 — RPC confirmation states */
.rpc-btn.rpc-busy{opacity:.78;cursor:wait}.rpc-btn.rpc-success{border-color:rgba(31,208,127,.75)!important;box-shadow:0 0 0 3px rgba(31,208,127,.12)}.rpc-btn.rpc-failed{border-color:rgba(255,67,95,.78)!important;background:#491a25!important}.rpc-btn.rpc-warning{border-color:rgba(247,184,68,.8)!important;box-shadow:0 0 0 3px rgba(247,184,68,.12)}

.cmd-proof{display:inline-flex;align-items:center;max-width:320px;padding:6px 9px;border-radius:9px;border:1px solid var(--line);font-size:11px;line-height:1.3}.cmd-proof.success{border-color:rgba(31,208,127,.35);color:var(--green);background:rgba(31,208,127,.07)}.cmd-proof.warning{border-color:rgba(247,184,68,.4);color:var(--yellow);background:rgba(247,184,68,.07)}.cmd-proof.error{border-color:rgba(255,67,95,.38);color:#ff9eaa;background:rgba(255,67,95,.07)}.cmd-proof.info{border-color:rgba(52,180,255,.35);color:#8bd8ff;background:rgba(52,180,255,.06)}
/* SMART Edge V1 — intégration URL + token */
.edge-connect-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.edge-connect-card{padding:14px;border:1px solid var(--border,#263746);border-radius:14px;background:rgba(255,255,255,.025);min-width:0}.edge-connect-card>span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.68;margin-bottom:8px}.edge-copy-line{display:flex;align-items:center;gap:8px;min-width:0}.edge-copy-line code{display:block;overflow:auto;white-space:nowrap;flex:1;padding:9px 10px;border-radius:9px;background:rgba(0,0,0,.18);font-size:12px}.edge-quick-config,.activation-details{margin-top:14px}.edge-quick-config pre,.activation-details pre{white-space:pre-wrap;word-break:break-word;padding:14px;border-radius:12px;background:rgba(0,0,0,.22);overflow:auto}.edge-code-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:10px 0}.edge-flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px;padding:12px;border-radius:12px;background:rgba(34,197,94,.06);border:1px solid rgba(34,197,94,.18)}.edge-flow i{opacity:.5}.edge-edge-state{display:flex;gap:10px;align-items:center;flex-wrap:wrap}@media(max-width:720px){.edge-connect-grid{grid-template-columns:1fr}.edge-copy-line{align-items:stretch;flex-direction:column}.edge-copy-line .ghost{width:100%}}
