:root{--bg:#071429;--bg-2:#0a1931;--panel:#102342;--panel-2:#142a4d;--line:#29486f;--text:#f2f6ff;--muted:#9fb0ca;--primary:#315dff;--primary-2:#1745d2;--success:#31c66f;--warning:#ffbf3c;--danger:#ff5b68;--shadow:0 22px 55px rgba(0,0,0,.26);--radius:22px;--nav-w:264px;color-scheme:dark}
html[data-theme="light"]{--bg:#edf3fc;--bg-2:#f7faff;--panel:#fff;--panel-2:#f1f5fb;--line:#d4dfed;--text:#12213a;--muted:#65748a;--shadow:0 18px 42px rgba(32,56,92,.12);color-scheme:light}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}.app-loading{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#15386e 0,transparent 42%),var(--bg)}.boot-card{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--muted)}.boot-card img{border-radius:28px;box-shadow:var(--shadow)}.boot-card strong{font-size:24px;color:var(--text)}
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);background:radial-gradient(circle at 18% 15%,rgba(49,93,255,.3),transparent 36%),var(--bg)}.login-brand{padding:70px clamp(32px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.login-brand img{width:112px;height:112px;border-radius:32px;box-shadow:var(--shadow);margin-bottom:28px}.login-brand h1{font-size:clamp(38px,5vw,76px);line-height:.98;margin:0 0 16px;letter-spacing:-.04em}.login-brand h1 span{display:block;color:#ffc933;font-size:.42em;letter-spacing:.02em;margin-top:14px}.login-brand p{font-size:19px;color:var(--muted);max-width:620px;line-height:1.6}.login-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;max-width:640px}.login-feature{background:rgba(16,35,66,.7);border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;gap:12px;align-items:center}.login-feature svg{width:24px;color:#ffc933}.login-box-wrap{display:grid;place-items:center;padding:32px;background:rgba(5,15,31,.48);backdrop-filter:blur(12px)}html[data-theme="light"] .login-box-wrap{background:rgba(255,255,255,.52)}.login-box{width:min(100%,460px);background:var(--panel);border:1px solid var(--line);border-radius:30px;padding:34px;box-shadow:var(--shadow)}.login-box h2{margin:0 0 8px;font-size:28px}.login-box>p{margin:0 0 28px;color:var(--muted)}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:17px}.field label{font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.input,.select,.textarea{width:100%;border:1px solid var(--line);background:var(--bg-2);color:var(--text);border-radius:14px;padding:13px 14px;outline:none;transition:.18s}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(49,93,255,.18)}.textarea{min-height:110px;resize:vertical}.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff}.btn-secondary{background:var(--panel-2);color:var(--text);border:1px solid var(--line)}.btn-danger{background:rgba(255,91,104,.14);color:#ff7c86;border:1px solid rgba(255,91,104,.35)}.btn-block{width:100%}.btn-sm{padding:9px 12px;border-radius:12px;font-size:13px}.form-error{min-height:22px;color:#ff7b86;font-size:14px;margin:4px 0 10px}
.shell{min-height:100vh;display:grid;grid-template-columns:var(--nav-w) minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--nav-w);background:linear-gradient(180deg,#0b1e3d,#071429);border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:6px 10px 22px}.brand img{width:48px;height:48px;border-radius:15px}.brand strong{display:block;font-size:17px}.brand span{display:block;color:#ffc933;font-size:12px;font-weight:800}.nav{display:flex;flex-direction:column;gap:6px}.nav-btn{border:0;background:transparent;color:var(--muted);padding:12px 14px;border-radius:14px;display:flex;align-items:center;gap:12px;text-align:left;font-weight:700}.nav-btn svg{width:21px;height:21px}.nav-btn:hover,.nav-btn.active{background:var(--panel-2);color:var(--text)}.nav-btn.active svg{color:#6e91ff}.sidebar-bottom{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.user-mini{display:flex;align-items:center;gap:10px;padding:10px}.avatar{width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,#315dff,#784cff);display:grid;place-items:center;font-weight:900;color:#fff}.user-mini strong{display:block;font-size:13px}.user-mini span{display:block;color:var(--muted);font-size:12px}.main{grid-column:2;padding:0 26px 40px;min-width:0}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.topbar-left h1{font-size:22px;margin:0}.topbar-left p{margin:4px 0 0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;align-items:center;gap:9px}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text);display:grid;place-items:center}.icon-btn svg{width:20px}.page{padding-top:24px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.page-head h2{margin:0;font-size:28px;letter-spacing:-.02em}.page-head p{margin:6px 0 0;color:var(--muted)}.grid{display:grid;gap:16px}.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 1px 0 rgba(255,255,255,.02)}.metric{min-height:142px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-40px;top:-42px;background:color-mix(in srgb,var(--primary) 18%,transparent)}.metric-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--panel-2);color:#7fa0ff;margin-bottom:18px}.metric-icon svg{width:22px}.metric .label{font-size:13px;color:var(--muted);font-weight:700}.metric .value{font-size:30px;font-weight:900;margin-top:4px;letter-spacing:-.03em}.metric .hint{font-size:12px;color:var(--muted);margin-top:5px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-title h3{margin:0;font-size:18px}.section-title a,.link-btn{color:#7fa0ff;font-size:13px;font-weight:800;background:none;border:0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:17px}.table{width:100%;border-collapse:collapse;min-width:680px}.table th,.table td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.table th{color:var(--muted);background:var(--panel-2);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge-ok{color:#45dc84;background:rgba(49,198,111,.12)}.badge-warning{color:#ffc64b;background:rgba(255,191,60,.12)}.badge-danger{color:#ff7883;background:rgba(255,91,104,.12)}.badge-info{color:#7fa0ff;background:rgba(49,93,255,.13)}.list{display:flex;flex-direction:column}.list-item{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border-bottom:0}.list-dot{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--panel-2);flex:0 0 auto}.list-main{min-width:0;flex:1}.list-main strong{font-size:13px;display:block}.list-main span{font-size:12px;color:var(--muted);display:block;margin-top:3px}.list-time{font-size:11px;color:var(--muted);white-space:nowrap}.empty{text-align:center;padding:36px;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.logo-card{text-align:center}.logo-preview{width:128px;height:128px;border-radius:30px;object-fit:contain;background:var(--bg-2);border:1px solid var(--line);padding:8px;margin:4px auto 16px}.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.integration-card{display:flex;gap:15px;align-items:flex-start}.integration-icon{width:48px;height:48px;border-radius:16px;background:var(--panel-2);display:grid;place-items:center;color:#7fa0ff;flex:0 0 auto}.integration-icon svg{width:25px}.integration-card h3{margin:1px 0 6px}.integration-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.integration-meta{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.diagnostic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.diag{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);background:var(--panel-2);border-radius:16px;padding:15px}.diag-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto}.diag.ok .diag-mark{background:rgba(49,198,111,.15);color:#45dc84}.diag.warning .diag-mark{background:rgba(255,191,60,.15);color:#ffc64b}.diag strong{display:block;font-size:13px}.diag span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.diag small{display:block;color:#ffc64b;font-size:11px;margin-top:5px}.modal-backdrop{position:fixed;inset:0;background:rgba(1,7,18,.7);backdrop-filter:blur(8px);z-index:80;display:grid;place-items:center;padding:20px}.modal{width:min(100%,620px);max-height:88vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.modal-head h3{margin:0}.toast-region{position:fixed;top:18px;right:18px;z-index:120;display:flex;flex-direction:column;gap:10px;width:min(390px,calc(100vw - 36px))}.toast{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--primary);border-radius:15px;padding:14px 16px;box-shadow:var(--shadow);animation:toastIn .22s ease}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--danger)}.toast strong{display:block;font-size:13px}.toast span{display:block;color:var(--muted);font-size:12px;margin-top:3px}@keyframes toastIn{from{transform:translateY(-8px);opacity:0}}
.mobile-menu{display:none}.mobile-nav{display:none}.install-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,rgba(49,93,255,.2),rgba(255,201,51,.08));border:1px solid #3155a2;border-radius:18px;padding:15px 17px;margin-bottom:18px}.install-banner strong{display:block}.install-banner span{display:block;color:var(--muted);font-size:12px;margin-top:3px}
@media(max-width:1100px){.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-layout{grid-template-columns:1fr}.integration-grid{grid-template-columns:1fr}}
@media(max-width:820px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.login-box-wrap{min-height:100vh;padding:20px}.shell{display:block}.sidebar{transform:translateX(-105%);transition:.2s;width:280px;box-shadow:var(--shadow)}.sidebar.open{transform:translateX(0)}.main{padding:0 16px 96px}.topbar{height:68px}.mobile-menu{display:grid}.topbar-left p{display:none}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:45;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--line);border-radius:21px;padding:7px;backdrop-filter:blur(16px);box-shadow:var(--shadow)}.mobile-nav button{border:0;background:transparent;color:var(--muted);border-radius:14px;padding:9px 4px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;font-weight:800}.mobile-nav button svg{width:20px}.mobile-nav button.active{background:var(--bg-2);color:var(--text)}.page{padding-top:18px}.page-head h2{font-size:23px}.cards-4,.cards-2,.form-grid,.diagnostic-list{grid-template-columns:1fr}.integration-grid{grid-template-columns:1fr}.table{min-width:620px}}
@media(max-width:480px){.login-box{padding:25px 20px;border-radius:24px}.page-head{align-items:flex-start;flex-direction:column}.topbar-actions .hide-mobile{display:none}.card{padding:17px}.metric{min-height:126px}.metric .value{font-size:26px}.install-banner{align-items:flex-start;flex-direction:column}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}

/* v1.0.16 — acabamento visual e módulos administrativos */
.sidebar .brand strong,.sidebar .user-mini strong{color:#f4f7ff}.sidebar .user-mini span{color:#9fb4d4}.sidebar .nav-btn{color:#90a8ca}.sidebar .nav-btn:hover{color:#fff;background:rgba(255,255,255,.08)}.sidebar .nav-btn.active{color:#0a1830;background:#f5f8ff}.sidebar .nav-btn.active svg{color:#5e83ff}.topbar-main{display:flex;align-items:center;gap:10px}.page{padding-top:22px}.page-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:16px}.dashboard-sections{margin-top:16px}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.muted-text{color:var(--muted);font-size:12px}.text-left{text-align:left}.field small{color:var(--muted);font-size:12px}.login-feature small{display:block;color:#aebdd4;margin-top:3px}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn svg{width:18px;height:18px}.icon-btn:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));background:var(--panel-2)}
.integration-content{flex:1;min-width:0}.integration-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.integration-heading h3{margin:1px 0 6px}.integration-meta{color:var(--muted);font-size:12px}.module-tag{border:1px solid var(--line);border-radius:999px;padding:5px 8px;white-space:nowrap}.architecture-card{margin-top:16px}.architecture-card p,.maintenance-card p{color:var(--muted);line-height:1.7;margin-bottom:18px}
.diagnostic-summary{margin-bottom:16px}.diagnostic-group{margin-top:16px}.diagnostic-group:first-of-type{margin-top:0}.diag{min-width:0}.diag>div:last-child{min-width:0}.diag span{overflow-wrap:anywhere}
.filter-card{margin-bottom:16px}.filter-grid{display:grid;gap:12px;align-items:end}.audit-filter-grid{grid-template-columns:1.1fr 1.1fr .8fr .85fr .85fr auto}.field.compact{margin-bottom:0}.filter-actions{display:flex;gap:8px;padding-bottom:1px}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px}.action-label{display:block;font-weight:700}.action-code{display:block;color:var(--muted);font-size:10px;margin-top:3px}.table-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.search-box{position:relative;flex:1;max-width:520px}.search-box svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;color:var(--muted);pointer-events:none}.search-box .input{padding-left:42px}.compact-select{width:auto;min-width:190px}.user-summary{margin-bottom:16px}
.role-help{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:12px 14px;color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:17px}.modal-head>div p{color:var(--muted);font-size:12px;margin:5px 0 0}.settings-side{display:flex;flex-direction:column;gap:18px}.logo-card h3,.maintenance-card h3{margin-top:0}.color-input{height:48px;padding:5px}.profile-summary{display:flex;align-items:center;gap:15px;margin-bottom:16px}.profile-summary h3{margin:0 0 4px}.profile-summary p{margin:0;color:var(--muted)}.profile-summary .badge{margin-left:auto}.avatar-lg{width:58px;height:58px;border-radius:18px;font-size:18px}.password-note{background:rgba(49,93,255,.1);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));color:var(--muted);padding:12px 14px;border-radius:14px;font-size:12px;line-height:1.5}
@media(max-width:1250px){.audit-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-actions{align-self:end}}
@media(max-width:1100px){.cards-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.cards-3{grid-template-columns:1fr}.page-toolbar{justify-content:stretch}.page-toolbar .btn{width:100%}.audit-filter-grid{grid-template-columns:1fr 1fr}.filter-actions{grid-column:1/-1}.table-tools{align-items:stretch;flex-direction:column}.search-box{max-width:none}.compact-select{width:100%}.profile-summary{align-items:flex-start}.profile-summary .badge{margin-left:0}.settings-side{gap:16px}}
@media(max-width:480px){.audit-filter-grid{grid-template-columns:1fr}.filter-actions{flex-direction:column}.filter-actions .btn{width:100%}.profile-summary{flex-wrap:wrap}.pagination{justify-content:space-between}.pagination .btn{width:auto}.integration-heading{flex-direction:column}}

/* v1.1.0 — MikroTik SNMPv3 */
.router-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.router-card{border:1px solid var(--line);background:var(--panel-2);border-radius:20px;padding:18px;min-width:0;position:relative;overflow:hidden}.router-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--line)}.router-card.online:before{background:var(--success)}.router-card.offline:before{background:var(--danger)}.router-card-head{display:flex;align-items:center;gap:12px}.router-symbol{width:46px;height:46px;border-radius:15px;background:color-mix(in srgb,var(--primary) 14%,var(--panel));color:#7fa0ff;display:grid;place-items:center;flex:0 0 auto}.router-symbol svg{width:25px}.router-title{min-width:0;flex:1}.router-title h3{margin:0 0 4px;font-size:17px}.router-title span{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.router-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0}.router-facts>div{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px;min-width:0}.router-facts span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.router-facts strong{display:block;font-size:13px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.router-last{font-size:11px;color:var(--muted);margin-top:10px}.router-error{background:rgba(255,91,104,.1);border:1px solid rgba(255,91,104,.25);color:#ff8b94;border-radius:12px;padding:10px 12px;font-size:11px;line-height:1.5}.router-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.mikrotik-section{margin-top:16px}.mikrotik-summary{margin-bottom:16px}.snmp-warning{display:flex;gap:12px;align-items:flex-start;background:rgba(255,191,60,.1);border:1px solid rgba(255,191,60,.28);border-radius:16px;padding:14px 16px;margin-bottom:16px;color:#ffc64b}.snmp-warning svg{width:24px;flex:0 0 auto}.snmp-warning strong{display:block}.snmp-warning span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.snmp-warning code{color:#ffd777}.modal-wide{width:min(100%,850px)}.modal-xwide{width:min(100%,1120px)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-row{display:flex;align-items:center;gap:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:13px 14px;font-weight:700;font-size:13px}.check-row input{width:18px;height:18px;accent-color:var(--primary)}.input-sm{padding:9px 10px;border-radius:11px;min-width:130px}.interface-table{min-width:980px}.interface-table td small{display:block;color:var(--muted);font-size:10px;margin-top:3px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-area{min-height:330px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;white-space:pre}.command-warning{background:rgba(255,191,60,.1);border:1px solid rgba(255,191,60,.25);color:#ffc64b;border-radius:13px;padding:11px 13px;margin-bottom:12px;font-size:12px}.empty-action svg{width:46px;color:#7fa0ff;margin-bottom:10px}.empty-action h3{margin:0 0 7px;color:var(--text)}.empty-action p{margin:0 auto 16px;max-width:520px}.noc-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.noc-mini>div{border:1px solid var(--line);background:var(--panel-2);border-radius:15px;padding:13px}.noc-mini span{display:block;color:var(--muted);font-size:11px}.noc-mini strong{display:block;margin-top:5px;font-size:14px}.next-modules-card{margin-top:16px}.next-modules-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.next-modules-grid>div{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;padding:15px}.next-modules-grid svg{width:23px;color:#7fa0ff;margin-bottom:9px}.next-modules-grid strong{display:block;font-size:13px}.next-modules-grid span{display:block;color:var(--muted);font-size:11px;margin-top:4px;line-height:1.5}
@media(max-width:1180px){.router-grid{grid-template-columns:1fr}.router-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.next-modules-grid{grid-template-columns:1fr}}
@media(max-width:820px){.router-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.check-grid{grid-template-columns:1fr}.router-actions .btn{flex:1}.noc-mini{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.router-card{padding:15px}.router-card-head{align-items:flex-start;flex-wrap:wrap}.router-card-head .badge{margin-left:58px}.router-facts{grid-template-columns:1fr 1fr}.router-actions{flex-direction:column}.router-actions .btn{width:100%}.noc-mini{grid-template-columns:1fr}}

/* v1.2.0 — NOC e gráficos históricos */
.noc-controls{display:flex;align-items:end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.noc-controls label{display:grid;gap:5px;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.noc-controls .select{min-width:170px;padding:9px 34px 9px 11px}.range-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.range-btn{border:0;background:transparent;color:var(--muted);font-weight:800;padding:8px 11px;border-radius:9px;cursor:pointer}.range-btn:hover,.range-btn.active{background:var(--primary);color:#fff}.noc-status-bar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:16px 0}.noc-status-bar>div{border:1px solid var(--line);background:var(--panel);border-radius:17px;padding:14px 16px;min-width:0}.noc-status-bar>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.noc-status-bar strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.noc-status-bar span,.noc-status-bar small{display:block;color:var(--muted);font-size:11px}.noc-status-bar>div:first-child span:last-child{grid-column:2}.noc-summary{margin-bottom:16px}.noc-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.noc-chart-card{min-width:0;overflow:hidden}.noc-chart-card .section-title{align-items:flex-start}.noc-chart-card .section-title p{margin:4px 0 0}.chart-scroll{overflow:hidden;padding-bottom:3px}.line-chart{display:block;width:100%;min-width:0;height:auto;overflow:visible}.chart-grid-line{stroke:var(--line);stroke-width:1}.chart-axis-line{stroke:color-mix(in srgb,var(--muted) 60%,transparent);stroke-width:1}.chart-axis-x,.chart-axis-y{fill:var(--muted);font-size:10px}.chart-axis-x{text-anchor:middle}.chart-axis-y{text-anchor:end}.chart-line{fill:none!important;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-dot{stroke:var(--panel);stroke-width:1.5;vector-effect:non-scaling-stroke}.chart-series-0{--chart-color:#4d7cff}.chart-series-1{--chart-color:#20c997}.chart-series-2{--chart-color:#ffb020}.chart-series-3{--chart-color:#e76cff}.chart-line.chart-series-0,.chart-line.chart-series-1,.chart-line.chart-series-2,.chart-line.chart-series-3{stroke:var(--chart-color);fill:none!important}.chart-dot.chart-series-0,.chart-dot.chart-series-1,.chart-dot.chart-series-2,.chart-dot.chart-series-3{fill:var(--chart-color)}.chart-legend-dot.chart-series-0,.chart-legend-dot.chart-series-1,.chart-legend-dot.chart-series-2,.chart-legend-dot.chart-series-3{background:var(--chart-color)}.chart-legend{display:flex;gap:16px;flex-wrap:wrap;margin:4px 0 12px;color:var(--muted);font-size:11px;font-weight:700}.chart-legend strong{color:var(--text);font-size:12px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.chart-empty{height:246px;display:grid;place-items:center;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:15px;padding:20px}.noc-interface-card{margin-top:16px}.noc-interface-table{min-width:1060px}.noc-interface-table td small{display:block;color:var(--muted);font-size:10px;margin-top:3px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.noc-interface-table tr.is-muted{opacity:.5}.noc-chart-wide{grid-column:1/-1}.noc-context-note{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--primary) 26%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--primary) 7%,var(--panel))}.noc-context-note svg{width:22px;min-width:22px;color:var(--primary)}.noc-context-note strong{display:block;font-size:13px}.noc-context-note span{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.5}@media(max-width:1100px){.noc-chart-grid{grid-template-columns:1fr}.noc-status-bar{grid-template-columns:1fr 1fr}.noc-status-bar>div:first-child{grid-column:1/-1}}@media(max-width:720px){.noc-controls{justify-content:stretch}.noc-controls label{width:100%}.noc-controls .select{width:100%}.range-tabs{width:100%;justify-content:space-between}.range-btn{flex:1}.noc-status-bar{grid-template-columns:1fr}.noc-status-bar>div:first-child{grid-column:auto}.line-chart{min-width:0}.chart-axis-x,.chart-axis-y{font-size:11px}}

/* v1.2.1 — Live NOC */
.noc-mode-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}
.noc-mode-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:var(--muted);font-weight:800;padding:8px 12px;border-radius:9px;cursor:pointer}
.noc-mode-btn:hover,.noc-mode-btn.active{background:var(--primary);color:#fff}
.live-dot{width:8px;height:8px;border-radius:50%;background:#20c997;box-shadow:0 0 0 0 rgba(32,201,151,.55);animation:livePulse 1.6s infinite}
.live-badge{display:inline-flex;align-items:center;gap:7px;color:#20c997;font-size:12px;font-weight:900;letter-spacing:.05em}
.live-badge i{width:9px;height:9px;border-radius:50%;background:#20c997;box-shadow:0 0 0 0 rgba(32,201,151,.55);animation:livePulse 1.6s infinite}
.live-sample{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;white-space:nowrap}
.live-sample strong{color:var(--text)}
.noc-live-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:16px 0}
.noc-live-grid .line-chart{min-width:0}
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(32,201,151,.5)}70%{box-shadow:0 0 0 7px rgba(32,201,151,0)}100%{box-shadow:0 0 0 0 rgba(32,201,151,0)}}
@media(max-width:720px){.noc-mode-tabs{width:100%}.noc-mode-btn{flex:1}.noc-live-grid .line-chart{min-width:0}}
@media(prefers-reduced-motion:reduce){.live-dot,.live-badge i{animation:none}}

/* v1.3.0 — MK-Auth somente leitura */
.mkauth-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.mkauth-status strong,.mkauth-status span{display:block}.mkauth-status span{color:var(--muted);margin-top:4px}
.mkauth-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto;gap:10px;margin:14px 0}
.mkauth-metrics{margin-bottom:16px}.mkauth-client-results table small,.table-wrap table small{display:block;color:var(--muted);margin-top:4px;font-size:11px}
.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:var(--muted)}.pager>div{display:flex;gap:8px}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-grid>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.detail-grid span,.detail-grid strong{display:block}.detail-grid span{color:var(--muted);font-size:11px;margin-bottom:4px}.detail-grid .span-2{grid-column:1/-1}
.clickable-module{cursor:pointer}.clickable-module:hover{border-color:var(--primary)}
@media(max-width:760px){.mkauth-toolbar{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.detail-grid .span-2{grid-column:auto}.mkauth-status{align-items:flex-start;flex-direction:column}}

/* v1.3.1 — correção da interface MK-Auth */
body.modal-open{overflow:hidden}
.modal>form{margin:0}
.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px;flex-wrap:wrap}
.diag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.diag-item{display:flex;align-items:flex-start;gap:12px;min-width:0;border:1px solid var(--line);background:var(--panel-2);border-radius:16px;padding:15px}
.diag-item>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 38px;margin:0}
.diag-item>span svg{display:block;width:22px!important;height:22px!important;max-width:22px;max-height:22px}
.diag-item.ok>span{background:rgba(49,198,111,.15);color:#45dc84}
.diag-item.error>span{background:rgba(255,91,104,.14);color:#ff7a86}
.diag-item>div{min-width:0}
.diag-item strong{display:block;font-size:13px}
.diag-item p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:760px){.diag-grid{grid-template-columns:1fr}.modal-actions .btn{flex:1}}


/* v1.3.4 — saúde e segurança das integrações */
.health-overall{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.health-overall h3{margin:5px 0}.health-overall p{margin:0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:var(--muted)}
.health-components{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.health-component{position:relative;overflow:hidden}.health-component:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--line)}.health-component.health-healthy:before{background:#31c66f}.health-component.health-warning:before{background:#ffb020}.health-component.health-critical:before{background:#ff5b68}.health-component-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px}.health-component-head h3{margin:0}.health-component-head p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.health-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px}.health-facts>div{padding:10px;border-radius:12px;background:var(--panel-2);border:1px solid var(--line)}.health-facts span,.health-facts strong{display:block}.health-facts span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}.health-facts strong{margin-top:4px;font-size:12px}.health-alert{display:flex;align-items:flex-start;gap:12px;border-radius:15px;padding:14px 16px;margin-bottom:16px;border:1px solid var(--line)}.health-alert svg{width:22px;flex:0 0 22px}.health-alert strong,.health-alert span{display:block}.health-alert span{font-size:12px;margin-top:3px}.health-alert.critical{background:rgba(255,91,104,.11);border-color:rgba(255,91,104,.35);color:#ff7a86}.health-alert.critical span{color:var(--text)}
@media(max-width:1100px){.health-components{grid-template-columns:1fr}.health-component-head{grid-template-columns:auto 1fr auto}}@media(max-width:620px){.health-overall{align-items:flex-start;flex-direction:column}.health-component-head{grid-template-columns:auto 1fr}.health-component-head>.badge{grid-column:1/-1}.health-facts{grid-template-columns:1fr 1fr}}

/* v1.3.4.1 — correção de leitura e contexto dos gráficos do NOC */
@media(min-width:1500px){.noc-chart-card:not(.noc-chart-wide) .line-chart{max-height:340px}}

/* BM NET Central ADM v1.3.5 — NOC profissional */
.chart-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:4px 0 10px}.chart-toolbar .chart-legend{margin:0}.chart-expand{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}.chart-expand:hover{border-color:var(--primary);color:var(--primary)}.chart-scroll{position:relative}.chart-hit{fill:transparent;stroke:none;cursor:crosshair;pointer-events:all}.chart-tooltip{position:absolute;z-index:5;display:none;max-width:220px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--text) 92%,transparent);color:var(--panel);font-size:11px;font-weight:800;line-height:1.35;box-shadow:0 10px 30px rgba(0,0,0,.22);pointer-events:none}.chart-tooltip.visible{display:block}.chart-gap-note,.chart-ok-note{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px}.chart-gap-note{background:rgba(255,176,32,.12);color:#d98b00}.chart-ok-note{background:rgba(49,198,111,.11);color:#20a85a}.noc-chart-card.is-expanded{position:fixed;inset:22px;z-index:1200;margin:0!important;overflow:auto;box-shadow:0 28px 90px rgba(0,0,0,.42);border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}.noc-chart-card.is-expanded .line-chart{min-height:520px;max-height:none}.chart-modal-open{overflow:hidden}.chart-modal-open:before{content:"";position:fixed;inset:0;z-index:1190;background:rgba(4,12,28,.64);backdrop-filter:blur(4px)}
.noc-professional-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.noc-availability{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:14px 16px}.noc-availability:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--line)}.noc-availability.healthy:before{background:#31c66f}.noc-availability.warning:before{background:#ffb020}.noc-availability.critical:before{background:#ff5b68}.noc-availability span,.noc-availability small{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.noc-availability strong{display:block;margin:5px 0 3px;font-size:22px}.noc-availability small{text-transform:none;font-weight:600;letter-spacing:0}
.noc-incidents-card,.noc-fleet-card{margin-top:16px}.noc-incidents-table{min-width:940px}.noc-incidents-table td small{display:block;max-width:470px;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}.noc-incidents-table tr.incident-resolved{opacity:.74}.noc-fleet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.noc-fleet-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 10px;text-align:left;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:15px;padding:13px 14px;cursor:pointer}.noc-fleet-item:hover{border-color:var(--primary);transform:translateY(-1px)}.noc-fleet-item>span{grid-row:1/3}.noc-fleet-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.noc-fleet-item small{color:var(--muted);font-size:10px}.noc-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.noc-check{align-self:end;min-height:44px}
@media(max-width:1000px){.noc-professional-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.noc-fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.noc-professional-strip,.noc-fleet-grid,.noc-settings-grid{grid-template-columns:1fr}.noc-chart-card.is-expanded{inset:8px}.noc-chart-card.is-expanded .line-chart{min-height:360px}.chart-toolbar{align-items:stretch;flex-direction:column}.chart-expand{align-self:flex-end}}

/* BM NET Central ADM v1.3.6 — Central de Alertas e Notificações */
.field-span-2{grid-column:1/-1}.notification-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.notification-toolbar .btn svg{width:17px;height:17px}.notification-summary{margin-bottom:18px}.notification-channel-grid{margin-bottom:18px}.notification-channel-card{display:flex;flex-direction:column;min-height:270px}.notification-channel-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.notification-channel-head .metric-icon{margin:0}.notification-channel-head strong,.notification-channel-head span{display:block}.notification-channel-head span{color:var(--muted);font-size:12px;margin-top:4px}.notification-channel-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.notification-channel-meta span{padding:9px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:11px;color:var(--muted);font-size:10px}.notification-channel-meta strong{display:block;color:var(--text);font-size:12px;margin-top:3px;overflow-wrap:anywhere}.notification-channel-result{margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}.notification-channel-result small,.notification-channel-result strong,.notification-channel-result span{display:block}.notification-channel-result small{color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800}.notification-channel-result strong{font-size:12px;margin-top:4px}.notification-channel-result span{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.45;overflow-wrap:anywhere}.card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.notification-recipients{min-height:150px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.notification-secret-json{min-height:180px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.notification-type-group{padding:14px 14px 0;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel-2) 72%,transparent);margin-bottom:15px}.notification-tls{margin:3px 0 14px}.empty.compact{padding:18px}.table td .badge+small{display:block;margin-top:5px}.notification-channel-grid>.card:only-child{grid-column:1/-1}
@media(max-width:1100px){.notification-channel-meta{grid-template-columns:1fr}.notification-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.notification-channel-grid,.notification-summary{grid-template-columns:1fr}.notification-toolbar{justify-content:stretch}.notification-toolbar .btn{flex:1}.field-span-2{grid-column:auto}.notification-channel-head{grid-template-columns:auto 1fr}.notification-channel-head>.badge{grid-column:1/-1}.notification-type-group{padding:12px 12px 0}}

/* BM NET Central ADM v1.3.7 — automação e confiabilidade dos alertas */
.notification-kpis{margin:-2px 0 20px}.notification-channel-card.is-paused{border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}.notification-channel-warning{display:flex;flex-direction:column;gap:4px;padding:10px 12px;margin:0 0 12px;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--line));background:color-mix(in srgb,var(--warning) 10%,var(--panel));border-radius:12px}.notification-channel-warning strong{font-size:11px;color:var(--text)}.notification-channel-warning span{font-size:10px;color:var(--muted);line-height:1.45}.notification-channel-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:8px}.notification-channel-checks .check-row.compact{padding:10px 12px;font-weight:600}.notification-rules-table{min-width:1040px}.notification-incidents-table{min-width:1050px}.template-preview{display:block;max-width:520px;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);font-size:10px;line-height:1.45;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.notification-template-text{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55}.incident-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:290px}.incident-actions .btn{padding:7px 9px}.health-component.health-healthy .health-component-head .metric-icon{color:var(--success)}.health-component.health-warning .health-component-head .metric-icon{color:var(--warning)}.health-component.health-critical .health-component-head .metric-icon{color:var(--danger)}
@media(max-width:820px){.notification-channel-checks{grid-template-columns:1fr}.notification-kpis{grid-template-columns:1fr}.incident-actions{min-width:230px}.notification-toolbar .btn{min-width:150px}}

/* v1.3.8 — estabilidade, diagnóstico e auditoria */
.version-warning {
  margin: 14px 24px 0;
  padding: 14px 16px;
  border: 1px solid rgba(245, 158, 11, .45);
  border-radius: 16px;
  background: rgba(245, 158, 11, .12);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.version-warning > div {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.version-warning svg {
  width: 24px;
  height: 24px;
  color: #f59e0b;
  flex: 0 0 auto;
}
.version-warning strong,
.version-warning span {
  display: block;
}
.version-warning span {
  margin-top: 3px;
  color: var(--muted);
  font-size: .86rem;
}
.version-matrix {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.version-matrix > div {
  padding: 14px;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: var(--surface-soft);
  min-width: 0;
}
.version-matrix span,
.version-matrix strong,
.version-matrix small {
  display: block;
}
.version-matrix span {
  color: var(--muted);
  font-size: .78rem;
}
.version-matrix strong {
  margin-top: 5px;
  font-size: 1.05rem;
  word-break: break-word;
}
.version-matrix small {
  margin-top: 4px;
  color: var(--muted);
  word-break: break-all;
}
.preflight-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.preflight-item {
  display: flex;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--surface-soft);
}
.preflight-item > div:first-child {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}
.preflight-item svg {
  width: 20px;
  height: 20px;
}
.preflight-item strong,
.preflight-item span {
  display: block;
}
.preflight-item span {
  margin-top: 3px;
  color: var(--muted);
  font-size: .82rem;
}
.preflight-item.ok { border-color: rgba(34, 197, 94, .32); }
.preflight-item.ok > div:first-child { color: #22c55e; }
.preflight-item.warning { border-color: rgba(245, 158, 11, .4); }
.preflight-item.warning > div:first-child { color: #f59e0b; }
.preflight-item.critical { border-color: rgba(239, 68, 68, .45); }
.preflight-item.critical > div:first-child { color: #ef4444; }
.diagnostic-group-inline + .diagnostic-group-inline {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}
.diagnostic-group-inline h4 {
  margin: 0 0 10px;
  font-size: .92rem;
}
.api-log-details {
  margin-top: 14px;
  border-top: 1px solid var(--border);
  padding-top: 14px;
}
.api-log-details summary {
  cursor: pointer;
  font-weight: 700;
}
.api-log-details pre {
  margin: 12px 0 0;
  max-height: 340px;
  overflow: auto;
  padding: 14px;
  border-radius: 12px;
  background: #061022;
  color: #dbeafe;
  white-space: pre-wrap;
  word-break: break-word;
  font-size: .76rem;
  line-height: 1.5;
}
.stability-version-card .health-alert {
  margin-top: 14px;
}
@media (max-width: 980px) {
  .version-matrix { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .version-warning {
    margin: 10px 12px 0;
    align-items: stretch;
    flex-direction: column;
  }
  .version-warning .btn { width: 100%; }
  .version-matrix,
  .preflight-grid { grid-template-columns: 1fr; }
}


/* v1.4.0 — desmembramento administrativo do App Cliente */
.app-client-split-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.app-client-split-card h2{margin:10px 0 6px}.app-client-split-card p{margin:0;max-width:820px;color:var(--muted)}
.app-client-split-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.app-client-frame-card{padding:0;overflow:hidden;min-height:78vh}
.app-client-admin-frame{display:block;width:100%;min-height:78vh;border:0;background:#eef3fb}
@media(max-width:900px){.app-client-split-card{align-items:flex-start;flex-direction:column}.app-client-split-actions{justify-content:flex-start}.app-client-frame-card,.app-client-admin-frame{min-height:82vh}}


/* v1.4.1 — atendimento e comunicação nativos */
.native-module-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px}.native-module-hero h2{margin:10px 0 6px}.native-module-hero p{margin:0;color:var(--muted);max-width:760px}.native-module-actions,.native-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.native-kpis{margin-bottom:18px}.native-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 220px auto;gap:10px;margin-bottom:16px}.native-ticket-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.native-ticket-card{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:17px;padding:15px;text-align:left;transition:.18s}.native-ticket-card:hover{border-color:var(--primary);transform:translateY(-1px)}.native-ticket-head,.native-ticket-client,.native-ticket-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.native-ticket-head strong,.native-ticket-head span,.native-ticket-client b,.native-ticket-client span{display:block}.native-ticket-head span,.native-ticket-client span{color:var(--muted);font-size:12px;margin-top:4px}.native-ticket-client{margin-top:13px}.native-ticket-card>p{color:var(--muted);font-size:13px;line-height:1.5;min-height:40px}.native-ticket-meta{font-size:11px;color:var(--muted);flex-wrap:wrap}.native-ticket-detail-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.native-conversation{display:flex;flex-direction:column;gap:10px;max-height:46vh;overflow:auto;padding:4px 3px 14px}.native-message{max-width:82%;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2)}.native-message.admin{align-self:flex-end;background:color-mix(in srgb,var(--primary) 17%,var(--panel-2));border-color:color-mix(in srgb,var(--primary) 42%,var(--line))}.native-message.client{align-self:flex-start}.native-message>div{display:flex;justify-content:space-between;gap:14px}.native-message time{color:var(--muted);font-size:10px}.native-message p{margin:8px 0 0;white-space:pre-wrap;line-height:1.5}.native-reply-box{border-top:1px solid var(--line);padding-top:16px}.native-ticket-side-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;padding-bottom:17px}.native-tabs{display:flex;gap:8px;overflow:auto;margin:0 0 18px;padding:4px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.native-tabs button{border:0;background:transparent;color:var(--muted);border-radius:12px;padding:11px 15px;font-weight:800;white-space:nowrap}.native-tabs button.active{background:var(--primary);color:#fff}.native-comms-grid{grid-template-columns:minmax(320px,.85fr) minmax(380px,1.15fr)}.native-channel-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:4px 0 16px}.native-channel-checks .check-row{padding:11px}.native-notice-list{display:flex;flex-direction:column;gap:10px;max-height:650px;overflow:auto}.native-notice-list article{border:1px solid var(--line);background:var(--panel-2);border-radius:15px;padding:13px}.native-notice-list article>div,.native-notice-list footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.native-notice-list article span,.native-notice-list footer{color:var(--muted);font-size:11px}.native-notice-list article p{white-space:pre-wrap;color:var(--muted);line-height:1.5}.native-preview{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.native-preview strong,.native-preview span{display:block}.native-preview span{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.5}.native-help,.native-security-note{color:var(--muted);font-size:12px;line-height:1.55;margin-top:13px}.native-whatsapp-text{min-height:210px}.native-template-list{display:grid;gap:9px}.native-template-list button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);text-align:left;padding:13px;border-radius:13px;font-weight:700}.native-template-list button:hover{border-color:var(--primary)}.modal-wide{width:min(920px,calc(100vw - 28px))}
@media(max-width:1080px){.native-ticket-list{grid-template-columns:1fr}.native-comms-grid{grid-template-columns:1fr}.native-channel-checks{grid-template-columns:1fr}}
@media(max-width:720px){.native-module-hero{align-items:flex-start;flex-direction:column}.native-module-actions{justify-content:flex-start}.native-toolbar{grid-template-columns:1fr}.native-message{max-width:94%}.native-ticket-head,.native-ticket-client{align-items:flex-start;flex-direction:column}.native-tabs{border-radius:13px}}

/* v1.5.0 — desmembramento definitivo do App Cliente */
.native-final-hero{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary) 8%,var(--surface)));}
.native-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.native-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.native-module-grid>button{appearance:none;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);color:var(--text);padding:18px;text-align:left;display:grid;grid-template-columns:38px 1fr;column-gap:12px;row-gap:4px;cursor:pointer;transition:.18s ease}
.native-module-grid>button:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 45%,var(--line));box-shadow:0 12px 28px rgba(15,35,68,.10)}
.native-module-grid svg{width:30px;height:30px;color:var(--primary);grid-row:1/3}
.native-module-grid strong{font-size:15px}.native-module-grid span{font-size:12px;color:var(--muted);line-height:1.4}
.native-stat-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.native-stat-list>div,.native-info-grid>div{border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);padding:13px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.native-stat-list span,.native-info-grid span{font-size:12px;color:var(--muted)}.native-stat-list strong{font-size:20px}.native-info-grid strong{font-size:13px;text-align:right;overflow-wrap:anywhere}
.native-service-list{display:grid;gap:10px}.native-service-list>div{display:flex;gap:11px;align-items:flex-start;border-bottom:1px solid var(--line);padding:8px 0}.native-service-list>div:last-child{border-bottom:0}.native-service-list strong,.native-service-list small{display:block}.native-service-list small{margin-top:3px;color:var(--muted);line-height:1.35}.native-service-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;flex:0 0 auto}.native-service-icon svg{width:19px;height:19px}.native-service-icon.ok{background:rgba(24,192,135,.14);color:#0d9c6f}.native-service-icon.warning{background:rgba(245,176,57,.16);color:#c27a00}
.native-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.native-tab{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:14px;padding:11px 15px;font-weight:800;display:flex;align-items:center;gap:8px;cursor:pointer}.native-tab svg{width:18px;height:18px}.native-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.native-toolbar-wrap{flex-wrap:wrap}.native-toolbar-wrap .input{min-width:230px;flex:1}.native-toolbar-wrap .select{min-width:150px}
.native-adoption-table td small,.native-adoption-table td strong{display:block}.native-adoption-table td small{color:var(--muted);margin-top:4px;max-width:240px}.native-adoption-table .badge{margin-bottom:3px}
.native-pager{display:flex;align-items:center;gap:7px;justify-content:flex-end;padding:14px 0 0;flex-wrap:wrap}.native-pager button{border:1px solid var(--line);background:var(--surface-soft);color:var(--text);border-radius:10px;padding:7px 10px;cursor:pointer}.native-pager button.active{background:var(--primary);border-color:var(--primary);color:#fff}.native-pager span{font-size:12px;color:var(--muted);margin-left:5px}
.native-modal-content{max-height:min(72vh,760px);overflow-y:auto;overflow-x:hidden;padding-right:3px}.adoption-detail-modal{width:min(100%,880px)}.adoption-detail-modal .native-detail-section .table-wrap{max-width:100%;overflow-x:auto}.native-detail-section{margin-top:18px}.native-detail-section h4,.native-settings-form h4{margin:0 0 10px;font-size:15px}.native-device-list{display:grid;gap:9px;min-width:0}.native-device-list article{border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;align-items:center;gap:12px;min-width:0;max-width:100%}.native-device-list article>div{flex:1;min-width:0}.native-device-list strong,.native-device-list span,.native-device-list small{display:block;min-width:0;overflow-wrap:anywhere;word-break:break-word}.native-device-list span,.native-device-list small{font-size:12px;color:var(--muted);margin-top:3px}.native-device-list .btn{flex:0 0 auto}.native-session-list{display:flex;gap:8px;flex-wrap:wrap;min-width:0}.native-session-list span{border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:var(--surface-soft);font-size:12px;max-width:100%;overflow-wrap:anywhere}.native-danger-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;margin-top:18px}
.native-client360-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.native-client360-head h2{margin:7px 0 3px}.native-client360-head p{margin:0;color:var(--muted)}.native-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.native-info-grid .span-2{grid-column:span 2}.native-simple-list{display:grid;gap:8px}.native-simple-list>div{border-bottom:1px solid var(--line);padding:8px 0;display:flex;justify-content:space-between;gap:12px}.native-simple-list>div:last-child{border-bottom:0}.native-simple-list strong,.native-simple-list span{display:block}.native-simple-list span{font-size:12px;color:var(--muted);text-align:right}.native-timeline{display:grid;gap:0}.native-timeline article{display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative;padding-bottom:15px}.native-timeline article:before{content:"";position:absolute;left:6px;top:13px;bottom:-2px;width:2px;background:var(--line)}.native-timeline article:last-child:before{display:none}.native-timeline i{width:14px;height:14px;border:3px solid color-mix(in srgb,var(--primary) 25%,var(--surface));background:var(--primary);border-radius:50%;z-index:1}.native-timeline strong{display:block}.native-timeline p{margin:3px 0;color:var(--muted)}.native-timeline span{font-size:11px;color:var(--muted)}
.native-bar-chart{display:grid;gap:10px}.native-bar-row{display:grid;grid-template-columns:75px 1fr 110px;gap:9px;align-items:center}.native-bar-row>span{font-size:12px;color:var(--muted)}.native-bar-row>div{height:10px;background:var(--surface-soft);border-radius:999px;overflow:hidden}.native-bar-row i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 45%,#20c997));border-radius:inherit}.native-bar-row strong{text-align:right;font-size:12px}
.native-settings-form{display:grid;gap:16px}.native-settings-form h4{padding-bottom:7px;border-bottom:1px solid var(--line)}.native-color{min-height:44px;padding:5px}.native-form-actions{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:15px}
@media(max-width:1180px){.native-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.native-overview-grid,.native-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.native-device-list article{align-items:flex-start;flex-wrap:wrap}.adoption-detail-modal{width:min(100%,760px)}}
@media(max-width:620px){.native-overview-grid,.native-module-grid,.native-stat-list,.native-info-grid{grid-template-columns:1fr}.native-info-grid .span-2{grid-column:auto}.native-module-grid>button{grid-template-columns:34px 1fr}.native-toolbar-wrap>*{width:100%}.native-client360-head{align-items:flex-start;flex-direction:column}.native-bar-row{grid-template-columns:65px 1fr}.native-bar-row strong{grid-column:2;text-align:left}.native-simple-list>div{display:block}.native-simple-list span{text-align:left;margin-top:4px}}


/* v1.5.1 — compatibilidade móvel, Android, iOS e navegadores */
html{width:100%;height:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto}
body{width:100%;min-height:100vh;min-height:100svh;overflow-x:hidden;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}
#app,.shell{min-height:100vh;min-height:100svh}
.shell{width:100%;max-width:100%}
.main{max-width:100%}
.page{min-width:0;max-width:100%}
.sidebar{height:100vh;height:100svh;height:100dvh;max-height:var(--bmnet-viewport-height,100dvh);overflow:hidden;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(14px,env(safe-area-inset-bottom))}
.sidebar .brand{flex:0 0 auto}
.sidebar .nav{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:stable;padding-right:4px;padding-bottom:8px}
.sidebar .nav::-webkit-scrollbar{width:6px}
.sidebar .nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}
.sidebar-bottom{flex:0 0 auto;margin-top:10px;padding-bottom:max(0px,env(safe-area-inset-bottom))}
.sidebar-backdrop{display:none;position:fixed;inset:0;z-index:29;border:0;margin:0;padding:0;background:rgba(2,8,19,.66);opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.table-wrap,.native-tabs,.native-conversation,.native-notice-list,.native-modal-content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.table-wrap{max-width:100%;touch-action:pan-x pan-y}
.input,.select,.textarea{max-width:100%}
.modal,.modal-card{max-height:calc(var(--bmnet-viewport-height,100dvh) - 24px)}
.modal-card,.native-modal-content{overscroll-behavior:contain}

@supports not (height:100dvh){.sidebar{height:var(--bmnet-viewport-height,100vh);max-height:var(--bmnet-viewport-height,100vh)}}
@supports not (color:color-mix(in srgb,#000 50%,#fff)){.topbar{background:var(--bg)}.mobile-nav{background:var(--panel)}.login-box-wrap{background:var(--bg-2)}}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.topbar,.mobile-nav{background:var(--panel)}.sidebar-backdrop{background:rgba(2,8,19,.78)}}

@media(max-width:820px){
  body.sidebar-open{overflow:hidden}
  .sidebar{top:0;bottom:auto;left:0;width:min(88vw,320px);max-width:320px;transform:translate3d(-105%,0,0);will-change:transform;transition:transform .22s ease;box-shadow:var(--shadow);contain:layout paint}
  .sidebar.open{transform:translate3d(0,0,0)}
  .sidebar-backdrop{display:block}
  .sidebar-backdrop.open{opacity:1;pointer-events:auto}
  .main{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:calc(88px + env(safe-area-inset-bottom))}
  .topbar{height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);gap:8px}
  .topbar-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
  .topbar-left{min-width:0;overflow:hidden}
  .topbar-left h1{font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar-actions{flex:0 0 auto;gap:6px}
  .icon-btn{width:44px;height:44px;min-width:44px;min-height:44px}
  .mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));padding:6px;max-width:620px;margin:0 auto}
  .mobile-nav button{min-width:0;min-height:52px;padding:7px 2px;touch-action:manipulation}
  .mobile-nav button span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .page{padding-top:14px}
  .page-head,.native-module-hero{min-width:0}
  .card{max-width:100%;overflow-wrap:anywhere}
  .table-wrap{width:100%;max-width:calc(100vw - 24px)}
  .modal{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .modal-card{width:min(100%,920px);max-height:calc(var(--bmnet-viewport-height,100dvh) - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;-webkit-overflow-scrolling:touch}
  .input,.select,.textarea{font-size:16px}
  button,.btn,.nav-btn{touch-action:manipulation}
}

@media(max-width:480px){
  :root{--radius:18px}
  .main{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .topbar-left h1{font-size:17px}
  .topbar-actions .icon-btn:not(#theme-btn):not(#install-btn){display:none}
  .page-head h2{font-size:21px}
  .mobile-nav{border-radius:18px}
  .mobile-nav button{font-size:9px}
  .mobile-nav button svg{width:19px;height:19px}
  .native-form-actions,.native-module-actions,.notification-toolbar,.page-toolbar{width:100%}
  .native-form-actions .btn,.native-module-actions .btn,.notification-toolbar .btn,.page-toolbar .btn{min-height:44px}
}

@media(max-width:900px) and (max-height:560px) and (orientation:landscape){
  .sidebar{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .brand{padding-bottom:8px}
  .brand img{width:38px;height:38px;border-radius:12px}
  .nav-btn{padding:9px 12px}
  .sidebar-bottom{padding-top:8px}
  .user-mini{display:none}
  .mobile-nav button{min-height:46px}
}

@media(hover:none),(pointer:coarse){
  .btn:hover,.native-ticket-card:hover,.noc-fleet-item:hover{transform:none}
  .nav-btn,.btn,.icon-btn,.mobile-nav button{min-height:44px}
}

@media(prefers-reduced-motion:reduce){
  .sidebar,.sidebar-backdrop{transition:none!important}
}

/* v2.0.0 — NOC inteligente, topologia e impacto operacional */
.topology-metrics{margin-bottom:16px}.topology-map-card{padding:18px;overflow:hidden}.topology-map-card .section-title{gap:16px;align-items:flex-start}.topology-map-card .section-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.topology-summary-badges{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;white-space:nowrap}.topology-canvas{position:relative;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--primary) 8%,transparent),transparent 62%),var(--bg-2);overflow:auto;min-height:560px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.topology-svg{display:block;width:100%;min-width:960px;height:auto;min-height:560px;touch-action:none;user-select:none}.topology-grid path{fill:none;stroke:color-mix(in srgb,var(--line) 30%,transparent);stroke-width:1}.topology-link-line{fill:none;stroke:var(--muted);stroke-width:4;stroke-linecap:round;opacity:.88}.topology-link-hit{stroke:transparent;stroke-width:22;cursor:pointer}.topology-link-group{cursor:pointer}.topology-link-group:hover .topology-link-line{stroke-width:6;filter:drop-shadow(0 0 7px currentColor)}.topology-link-online{color:var(--success)}.topology-link-online .topology-link-line{stroke:var(--success)}.topology-link-warning{color:var(--warning)}.topology-link-warning .topology-link-line{stroke:var(--warning)}.topology-link-offline{color:var(--danger)}.topology-link-offline .topology-link-line{stroke:var(--danger);stroke-dasharray:9 7}.topology-link-affected{color:#b88cff}.topology-link-affected .topology-link-line{stroke:#b88cff;stroke-dasharray:7 6}.topology-link-unknown,.topology-link-disabled{color:var(--muted)}.topology-link-unknown .topology-link-line,.topology-link-disabled .topology-link-line{stroke:var(--muted);stroke-dasharray:5 6;opacity:.55}.topology-link-label rect{fill:var(--panel);stroke:var(--line);stroke-width:1}.topology-link-label text{fill:var(--muted);font-size:11px;font-weight:800;pointer-events:none}.topology-node{cursor:pointer;outline:none}.topology-node.dragging{cursor:grabbing;filter:drop-shadow(0 14px 22px rgba(0,0,0,.34))}.topology-node-box{fill:var(--panel);stroke:var(--line);stroke-width:2;transition:.18s}.topology-node:hover .topology-node-box,.topology-node:focus .topology-node-box{stroke:var(--primary);stroke-width:3}.topology-node-icon{fill:var(--panel-2);stroke:var(--line);stroke-width:1}.topology-node-icon-text{fill:var(--text);font-weight:900;font-size:10px}.topology-node-title{fill:var(--text);font-size:14px;font-weight:900}.topology-node-subtitle{fill:var(--muted);font-size:9px}.topology-node-state{fill:var(--muted);stroke:var(--panel);stroke-width:3}.topology-node-online .topology-node-state{fill:var(--success)}.topology-node-online .topology-node-box{stroke:color-mix(in srgb,var(--success) 55%,var(--line))}.topology-node-warning .topology-node-state{fill:var(--warning)}.topology-node-warning .topology-node-box{stroke:color-mix(in srgb,var(--warning) 65%,var(--line))}.topology-node-offline .topology-node-state{fill:var(--danger)}.topology-node-offline .topology-node-box{stroke:color-mix(in srgb,var(--danger) 75%,var(--line))}.topology-node-affected .topology-node-state{fill:#b88cff}.topology-node-affected .topology-node-box{stroke:#8f66d8}.topology-legend{position:sticky;left:12px;bottom:12px;display:flex;align-items:center;gap:9px;width:max-content;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,transparent);backdrop-filter:blur(10px);font-size:11px;color:var(--muted)}.topology-legend span{display:inline-flex;align-items:center;gap:5px}.topology-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.legend-online{color:var(--success)!important}.legend-warning{color:var(--warning)!important}.legend-offline{color:var(--danger)!important}.legend-affected{color:#b88cff!important}.topology-sections{margin-top:16px;margin-bottom:16px}.topology-root-list{display:grid;gap:10px}.topology-root{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2)}.topology-root-critical{border-color:color-mix(in srgb,var(--danger) 52%,var(--line))}.topology-root-warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}.topology-root-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--panel);color:var(--danger)}.topology-root-icon svg{width:21px}.topology-root-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.topology-root-main p{margin:6px 0;color:var(--text);font-size:13px;line-height:1.45}.topology-root-main>span{font-size:11px;color:var(--muted)}.topology-root-impact{text-align:right;min-width:125px}.topology-root-impact strong{display:block;font-size:25px;letter-spacing:-.03em}.topology-root-impact span{display:block;color:var(--muted);font-size:10px;margin-bottom:8px}.topology-healthy{padding:24px}.topology-healthy svg{width:34px;color:var(--success)}.topology-router-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topology-router-card{text-align:left;cursor:pointer;padding:14px;box-shadow:none}.topology-router-card:hover{border-color:var(--primary);transform:translateY(-1px)}.topology-router-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.topology-router-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--panel-2);color:#7fa0ff}.topology-router-icon svg{width:19px}.topology-router-card>strong{display:block;font-size:15px}.topology-router-card>span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.topology-router-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}.topology-router-metrics span{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);padding:6px 7px;border-radius:9px;background:var(--panel-2)}.topology-router-metrics b{color:var(--text)}.topology-table td strong,.topology-table td small{display:block}.topology-table td small{margin-top:3px;color:var(--muted);font-size:10px}.clickable-row{cursor:pointer}.clickable-row:hover{background:color-mix(in srgb,var(--primary) 6%,transparent)}.utilization-cell{min-width:120px}.utilization-cell>span{font-size:11px;font-weight:800}.progress{height:7px;background:var(--panel-2);border-radius:999px;overflow:hidden;margin-top:5px}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--success),var(--warning),var(--danger));border-radius:inherit}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.detail-grid>div{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--panel-2)}.detail-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.detail-grid strong{font-size:14px}.impact-hero{display:grid;place-items:center;padding:28px;margin-bottom:16px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--warning) 8%,var(--panel-2))}.impact-hero strong{font-size:44px;line-height:1;letter-spacing:-.05em}.impact-hero span{color:var(--muted);margin-top:8px}.callout{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px;color:var(--muted);font-size:12px;line-height:1.5}.field>span{font-size:12px;font-weight:800;color:var(--muted)}.field-span-2{grid-column:span 2}.check-line{display:flex;align-items:center;gap:10px;padding:10px 0}.check-line input{width:18px;height:18px}.check-line span{color:var(--text);font-size:13px}.page-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:16px}
@media(max-width:1180px){.topology-sections{grid-template-columns:1fr}.topology-router-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.topology-map-card{padding:12px}.topology-map-card .section-title{display:block}.topology-summary-badges{margin-top:10px;white-space:normal}.topology-canvas{min-height:470px}.topology-svg{min-width:900px;min-height:500px}.topology-root{grid-template-columns:38px minmax(0,1fr)}.topology-root-impact{grid-column:2;text-align:left;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.topology-root-impact strong{font-size:20px}.topology-root-impact span{margin:0}.topology-router-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topology-legend{position:absolute;bottom:9px}.page-toolbar{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.page-toolbar .btn{flex:0 0 auto}}
@media(max-width:520px){.topology-router-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.field-span-2{grid-column:auto}.topology-root{grid-template-columns:1fr}.topology-root-icon{display:none}.topology-root-impact{grid-column:auto}.topology-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.topology-metrics .metric{min-height:120px;padding:14px}.topology-metrics .metric .value{font-size:24px}.topology-canvas{margin:0 -4px}.topology-svg{min-width:840px}}
.dashboard-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:16px}
@media(max-width:1280px){.dashboard-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.dashboard-metric-grid{grid-template-columns:1fr}}
.badge-error{color:#ff7883;background:rgba(255,91,104,.12)}


/* v2.0.1 — correção de rolagem vertical e carregamento percebido */
html{overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}
body{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto}
.shell,.main,.page{overflow:visible}
.main{min-height:100vh;min-height:100svh}
.table-wrap{overflow-x:auto;overflow-y:visible;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:auto;touch-action:pan-x pan-y}
.native-tabs,.page-toolbar{overflow-x:auto;overflow-y:visible;overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y}
.native-conversation,.native-notice-list,.native-modal-content{overscroll-behavior-y:auto}
.topology-canvas{overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y}
.topology-svg{touch-action:pan-y pinch-zoom}
.topology-node,.topology-link-group{touch-action:none}
.metric-loading{min-height:142px;display:grid;align-content:center;gap:11px}
.metric-loading span,.metric-loading b,.metric-loading i,.overview-skeleton-lines i{display:block;border-radius:999px;background:linear-gradient(90deg,var(--panel-2),color-mix(in srgb,var(--panel-2) 65%,var(--line)),var(--panel-2));background-size:220% 100%;animation:bmnetSkeleton 1.15s ease-in-out infinite}
.metric-loading span{width:42px;height:42px;border-radius:14px}.metric-loading b{width:62%;height:14px}.metric-loading i{width:42%;height:25px}
.overview-skeleton-lines{display:grid;gap:12px;padding:4px 0}.overview-skeleton-lines i{height:42px;border-radius:13px}
.overview-load-meta{margin-top:12px;color:var(--muted);font-size:11px;text-align:right}
@keyframes bmnetSkeleton{0%{background-position:100% 0}100%{background-position:-120% 0}}
@media(max-width:820px){body:not(.sidebar-open){overflow-y:auto!important}.main{min-height:100dvh}.table-wrap{overscroll-behavior-y:auto}.topology-canvas{touch-action:pan-y pan-x}}
@media(prefers-reduced-motion:reduce){.metric-loading span,.metric-loading b,.metric-loading i,.overview-skeleton-lines i{animation:none}}


/* v2.1.0 — menu por setores e busca inteligente do Cliente 360 */
.nav-group{display:flex;flex-direction:column;gap:4px}
.nav-group-toggle{width:100%;border:0;background:transparent;color:var(--muted);padding:11px 12px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit;font-weight:800;cursor:pointer}
.nav-group-toggle:hover,.nav-group-toggle.active-parent{background:var(--panel-2);color:var(--text)}
.nav-group-main{display:flex;align-items:center;gap:12px;min-width:0}
.nav-group-main>svg{width:21px;height:21px;flex:0 0 auto}
.nav-group-chevron{display:grid;place-items:center;transition:transform .18s ease;opacity:.72}
.nav-group-chevron svg{width:17px;height:17px}
.nav-group.open .nav-group-chevron{transform:rotate(90deg)}
.nav-group-items{display:flex;flex-direction:column;gap:3px;padding:2px 0 5px 19px}
.nav-group-items[hidden]{display:none!important}
.nav-btn.nav-child{position:relative;padding:10px 12px 10px 18px;font-size:13px;border-radius:12px}
.nav-btn.nav-child:before{content:"";position:absolute;left:4px;top:50%;width:7px;height:1px;background:var(--line)}
.nav-btn.nav-child svg{width:18px;height:18px}
.nav-btn.nav-child.active:before{background:currentColor}
.client360-toolbar{align-items:flex-start}
.client-autocomplete{position:relative;flex:1 1 420px;min-width:0;z-index:12}
.client-autocomplete>.input{width:100%}
.client-suggestions{position:absolute;left:0;right:0;top:calc(100% + 7px);max-height:min(420px,55vh);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px rgba(0,0,0,.28);padding:6px;z-index:90;-webkit-overflow-scrolling:touch}
.client-suggestion{width:100%;border:0;background:transparent;color:var(--text);display:flex;align-items:center;gap:11px;padding:10px;border-radius:12px;text-align:left;cursor:pointer}
.client-suggestion:hover,.client-suggestion.active{background:var(--panel-2)}
.client-suggestion-avatar{width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--primary) 18%,var(--panel-2));color:#85a3ff;display:grid;place-items:center;font-size:12px;font-weight:900;flex:0 0 auto}
.client-suggestion-main{display:flex;flex-direction:column;min-width:0;flex:1}
.client-suggestion-main strong,.client-suggestion-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.client-suggestion-main strong{font-size:13px}
.client-suggestion-main small{color:var(--muted);font-size:11px;margin-top:3px}
.client-suggestion-loading,.client-suggestion-empty{padding:16px;text-align:center;color:var(--muted);font-size:12px}
@media(max-width:820px){
  .nav-group-toggle{min-height:46px}
  .nav-group-items{padding-left:14px}
  .nav-btn.nav-child{min-height:44px}
  .client360-toolbar{display:grid;grid-template-columns:minmax(0,1fr)}
  .client-autocomplete{width:100%;flex-basis:auto}
  .client360-toolbar>.btn{width:100%}
  .client-suggestions{position:fixed;left:14px;right:14px;top:auto;bottom:calc(86px + env(safe-area-inset-bottom));max-height:46vh}
}
@supports not (background:color-mix(in srgb,#000 50%,#fff)){
  .client-suggestion-avatar{background:var(--panel-2)}
}


/* v2.1.1 — homologação, estabilidade e pacote de suporte */
.homologation-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.homologation-checks .preflight-item{min-height:92px}
@media(max-width:800px){.homologation-checks{grid-template-columns:1fr}.page-actions{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.page-actions .btn{flex:0 0 auto}}

/* v2.2.0 — SMTP autenticado */
.smtp-note {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin: 4px 0 16px;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: color-mix(in srgb, var(--primary) 8%, var(--surface));
}
.smtp-note svg { width: 22px; height: 22px; flex: 0 0 auto; }
.smtp-note div { display: grid; gap: 4px; }
.smtp-note span { color: var(--muted); font-size: .88rem; line-height: 1.45; }

/* v2.2.0 — NOC Studio */
.noc-studio { display: grid; gap: 18px; }
.noc-studio-widget { min-width: 0; }
.noc-studio.is-compact { gap: 10px; }
.noc-studio.is-compact .card { padding: 14px; }
.noc-studio.is-compact .noc-summary { gap: 10px; }
.noc-studio.is-compact .metric-card { min-height: 108px; }
.noc-chart-grid-single { grid-template-columns: minmax(0, 1fr); }
.noc-studio-rows { display: grid; gap: 8px; margin: 12px 0 20px; }
.noc-studio-row {
  display: grid;
  grid-template-columns: 28px minmax(180px, .8fr) minmax(180px, 1.2fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
}
.noc-studio-handle { color: var(--muted); text-align: center; font-weight: 700; }
.noc-studio-move { display: flex; gap: 5px; }
.noc-tv-mode .sidebar,
.noc-tv-mode .topbar,
.noc-tv-mode .mobile-nav { display: none !important; }
.noc-tv-mode .main,
.noc-tv-mode .content,
.noc-tv-mode #app { margin: 0 !important; padding: 8px !important; width: 100% !important; max-width: none !important; }
.noc-tv-mode .page-head .page-actions { opacity: .25; transition: opacity .2s; }
.noc-tv-mode .page-head .page-actions:hover { opacity: 1; }
@media (max-width: 760px) {
  .noc-studio-row { grid-template-columns: 24px 1fr auto; }
  .noc-studio-row [data-title] { grid-column: 2 / -1; }
}

.noc-widget-custom-title { margin: 0 0 8px; padding: 0 2px; }
.noc-widget-custom-title h3 { margin: 0; font-size: 1rem; }

/* v2.3.0 — Fiscal, Anatel, NFCom e Contábil */
.fiscal-metrics{margin-bottom:16px}.fiscal-grid{margin-bottom:16px}.fiscal-section{margin-top:16px}.fiscal-muted{margin:4px 0 0;color:var(--muted);font-size:12px}.fiscal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fiscal-facts>div,.fiscal-detail,.fiscal-state-grid>div{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px;min-width:0}.fiscal-facts span,.fiscal-detail span,.fiscal-state-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.fiscal-facts strong,.fiscal-detail strong,.fiscal-state-grid strong{display:block;margin-top:5px;font-size:13px;overflow-wrap:anywhere}.fiscal-detail small,.fiscal-state-grid small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.fiscal-shortcuts{display:grid;gap:10px}.fiscal-shortcuts button{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:15px;padding:14px;text-align:left}.fiscal-shortcuts button:hover{border-color:var(--primary);transform:translateY(-1px)}.fiscal-shortcuts svg{width:25px;color:#7fa0ff;flex:0 0 auto}.fiscal-shortcuts span,.fiscal-shortcuts strong,.fiscal-shortcuts small{display:block}.fiscal-shortcuts small{color:var(--muted);margin-top:4px}.fiscal-check{margin-top:16px}.fiscal-toolbar{display:grid;grid-template-columns:180px 180px minmax(240px,1fr) auto;align-items:end;gap:10px;margin-bottom:16px}.fiscal-search{min-width:0}.fiscal-table td{vertical-align:middle}.fiscal-gap-list,.fiscal-periods,.fiscal-findings{display:grid;gap:10px}.fiscal-gap-list>div,.fiscal-periods>article,.finding{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px}.fiscal-gap-list strong,.fiscal-gap-list span{display:block}.fiscal-gap-list span{color:var(--muted);font-size:12px;margin-top:4px}.fiscal-periods>article,.finding>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.fiscal-periods span{color:var(--muted);font-size:12px}.fiscal-detail-grid{margin:14px 0}.finding{border-left:4px solid var(--primary)}.finding-critical{border-left-color:var(--danger)}.finding-warning{border-left-color:#ffc64b}.finding-info{border-left-color:#7fa0ff}.finding p{margin:9px 0;color:var(--muted);font-size:12px;line-height:1.5}.anatel-row-table{min-width:1400px}.anatel-row-table .badge{max-width:210px;white-space:normal;line-height:1.25}.fiscal-inline-form{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px;margin-bottom:16px}.fiscal-inline-form .btn{align-self:stretch}.fiscal-state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fiscal-subtitle{margin-top:20px}.fiscal-subtitle h4{margin:0}.native-form-actions a{text-decoration:none}.table code{font-size:11px;color:#9db4ff}.loading-card{color:var(--muted);text-align:center;padding:40px}
@media(max-width:1100px){.fiscal-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.fiscal-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fiscal-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.fiscal-facts,.fiscal-toolbar,.fiscal-state-grid,.fiscal-inline-form{grid-template-columns:1fr}.fiscal-shortcuts button{align-items:flex-start}.fiscal-metrics{grid-template-columns:1fr}.fiscal-detail-grid{grid-template-columns:1fr}}
.btn-warning{background:rgba(255,191,60,.14);color:#ffc64b;border:1px solid rgba(255,191,60,.35)}
.success-box{background:rgba(47,207,140,.1);border:1px solid rgba(47,207,140,.28);color:#72e3b0;border-radius:13px;padding:11px 13px;margin-bottom:12px;font-size:12px}


/* HOTFIX_FISCAL_UI_R4 */
.fiscal-table-tools{margin-bottom:12px}
.fiscal-page-size{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:800}
.fiscal-page-size .input{width:auto;min-width:84px;padding:8px 10px}
.fiscal-pagination{justify-content:space-between;margin-top:14px}
.fiscal-pagination span{color:var(--muted);font-size:12px}
.finding-pass{border-left-color:var(--success)}
.finding-fail{border-left-color:var(--danger)}
.finding-pending{border-left-color:var(--warning)}
.finding strong small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.03em}
.document-checklist{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.document-checklist>div{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:11px 12px}
.document-checklist span{font-size:12px;font-weight:800}
.document-checklist .is-present{border-color:color-mix(in srgb,var(--success) 38%,var(--line))}
.document-checklist .is-missing{border-color:color-mix(in srgb,var(--warning) 42%,var(--line))}
@media(max-width:900px){.document-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.fiscal-table-tools,.fiscal-pagination{align-items:stretch;flex-direction:column}.fiscal-page-size{justify-content:space-between}.fiscal-pagination .btn{width:100%}.document-checklist{grid-template-columns:1fr}}


/* BM NET Turbo & QoS v2.4.0 */
.turbo-status-grid .metric .value{font-size:clamp(1.25rem,2vw,1.75rem)}
.turbo-operation-card{border-color:color-mix(in srgb,var(--primary) 26%,var(--border))}
.turbo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.turbo-last-event{display:grid;gap:5px;margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border)}
.turbo-last-event span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.turbo-last-event strong{font-size:.92rem;overflow-wrap:anywhere}
.turbo-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.turbo-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.turbo-day{justify-content:center;padding:11px 8px;text-align:center}
.turbo-console{margin:0;max-height:430px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#07111f;color:#dceaff;border:1px solid #243b5d;border-radius:14px;padding:16px;font:500 .78rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:1100px){.turbo-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.turbo-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.turbo-form-grid{grid-template-columns:1fr}.turbo-days{grid-template-columns:repeat(2,minmax(0,1fr))}.turbo-actions{display:grid;grid-template-columns:1fr}.turbo-actions .btn{width:100%}}


/* v2.4.0 HOTFIX R7 — modais confiáveis e experiência móvel */
.modal-backdrop{
  width:100%;
  height:var(--bmnet-viewport-height,100dvh);
  max-height:100dvh;
  overflow:hidden;
  overscroll-behavior:contain;
  touch-action:none;
  padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
}
.modal-backdrop>.modal{
  min-width:0;
  max-width:calc(100vw - max(24px,env(safe-area-inset-left) + env(safe-area-inset-right)));
  max-height:calc(var(--bmnet-viewport-height,100dvh) - max(24px,env(safe-area-inset-top) + env(safe-area-inset-bottom)));
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  scrollbar-gutter:stable;
}
.modal>*,.modal form,.modal .form-grid,.modal .table-wrap,.modal .native-modal-content{min-width:0;max-width:100%}
.modal-head{
  position:sticky;
  top:-1px;
  z-index:8;
  gap:12px;
  padding:3px 0 12px;
  margin-bottom:14px;
  background:var(--panel);
  border-bottom:1px solid color-mix(in srgb,var(--line) 62%,transparent);
}
.modal-head>div{min-width:0;flex:1}
.modal-head h3,.modal-head p{overflow-wrap:anywhere;word-break:break-word}
.modal-head .icon-btn,.modal-head [data-close],.modal-head .close-modal{flex:0 0 44px;min-width:44px;min-height:44px}
.modal .table-wrap{width:100%;max-width:100%}
.modal .table{max-width:none}
body.modal-open{overflow:hidden}

@media(max-width:820px){
  body.modal-open{position:fixed;top:var(--bmnet-modal-scroll-y,0);left:0;right:0;width:100%;overflow:hidden}
  .modal-backdrop{
    place-items:end center;
    padding:max(6px,env(safe-area-inset-top)) 0 0;
  }
  .modal-backdrop>.modal{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(var(--bmnet-viewport-height,100dvh) - max(6px,env(safe-area-inset-top)));
    margin:0;
    border-radius:24px 24px 0 0;
    padding:16px max(14px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  }
  .modal-head{top:-16px;margin:-2px 0 12px;padding:14px 0 11px}
  .modal-head h3{font-size:18px;line-height:1.25}
  .modal-head>div p{font-size:11px;line-height:1.4}
  .modal .native-modal-content{max-height:none;overflow:visible;padding-right:0}
  .modal .form-grid,.modal .integration-grid,.modal .check-grid,.modal .diag-grid,.modal .noc-settings-grid{grid-template-columns:1fr}
  .modal .field-span-2,.modal .span-2{grid-column:auto}
  .modal .form-actions,.modal .modal-actions,.modal .native-danger-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    gap:9px;
  }
  .modal .form-actions .btn,.modal .modal-actions .btn,.modal .native-danger-actions .btn{width:100%;min-height:46px}
  .modal .native-device-list article{align-items:stretch;flex-direction:column;gap:8px}
  .modal .native-device-list article>small{width:100%;overflow-wrap:anywhere}
  .modal .native-device-list .btn{width:100%}
  .modal .native-session-list span{width:100%;border-radius:14px}
  .modal .table-wrap{max-width:100%;border-radius:14px}
  .toast-region{top:calc(10px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:calc(100vw - max(20px,env(safe-area-inset-left) + env(safe-area-inset-right)))}
}

@media(min-width:621px) and (max-width:820px){
  .adoption-detail-modal .native-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:620px){
  .adoption-detail-modal .native-kpis{grid-template-columns:1fr}
  .page-toolbar,.native-module-actions,.notification-toolbar{max-width:100%}
  .table-wrap{scrollbar-width:thin}
}

@media(max-width:390px){
  .main{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}
  .card{padding:14px;border-radius:16px}
  .mobile-nav{left:max(5px,env(safe-area-inset-left));right:max(5px,env(safe-area-inset-right));padding:5px;gap:1px}
  .mobile-nav button{font-size:8px;padding-inline:1px}
  .mobile-nav button svg{width:18px;height:18px}
  .modal-backdrop>.modal{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
}


/* v2.4.0 HOTFIX R8 — mobile-first, tabelas responsivas e atualização segura */
.modal-backdrop{
  z-index:calc(1000 + (var(--bmnet-modal-depth,0) * 10));
}
.modal-backdrop:not(.is-top-modal){pointer-events:none}
.modal-backdrop>.modal{contain:layout paint}
.modal-head .icon-btn{touch-action:manipulation}

.pwa-update-banner{
  position:fixed;
  z-index:2200;
  left:50%;
  bottom:calc(18px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  width:min(680px,calc(100vw - 28px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 16px;
  border:1px solid color-mix(in srgb,var(--primary) 44%,var(--line));
  border-radius:18px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  box-shadow:0 18px 60px rgba(0,0,0,.32);
  backdrop-filter:blur(18px);
}
.pwa-update-banner>div:first-child{min-width:0;display:grid;gap:3px}
.pwa-update-banner strong{font-size:14px}
.pwa-update-banner span{color:var(--muted);font-size:12px;line-height:1.4}
.pwa-update-actions{display:flex;gap:8px;flex:0 0 auto}

@media(max-width:680px){
  html,body{max-width:100%;overflow-x:hidden}
  body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
  body.keyboard-open{padding-bottom:0}
  body.keyboard-open .mobile-nav{display:none}
  body.keyboard-open .modal-backdrop{padding-bottom:0}
  .main{width:100%;min-width:0;padding-bottom:12px}
  .page,.card,.section-title,.native-toolbar,.page-toolbar{min-width:0;max-width:100%}
  .topbar{align-items:flex-start;gap:8px}
  .topbar-left h1{font-size:clamp(18px,5.2vw,23px);line-height:1.15;overflow-wrap:anywhere}
  .topbar-left p{font-size:11px;line-height:1.35}
  .mobile-nav{padding-bottom:calc(5px + env(safe-area-inset-bottom));min-height:calc(66px + env(safe-area-inset-bottom))}
  .mobile-nav button{min-width:0;min-height:52px;touch-action:manipulation}
  .mobile-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .btn,.icon-btn,input,select,textarea{touch-action:manipulation}
  .btn{min-height:44px}
  .icon-btn{min-width:44px;min-height:44px}
  .input,.select,textarea.input{font-size:16px;min-height:46px}
  .native-toolbar,.client360-toolbar,.page-actions,.form-actions,.modal-actions{
    align-items:stretch;
  }
  .native-toolbar>.input,.native-toolbar>.select,.native-toolbar>.client-autocomplete,
  .client360-toolbar>.client-autocomplete{width:100%;flex:1 1 100%}
  .native-toolbar>.btn,.client360-toolbar>.btn{width:100%}
  .section-title{align-items:flex-start}
  .section-title>div{min-width:0}
  .section-title h3,.section-title p{overflow-wrap:anywhere}

  .table-wrap:has(.responsive-table){
    overflow:visible;
    border:0;
    background:transparent;
    box-shadow:none;
  }
  table.responsive-table,
  table.responsive-table tbody,
  table.responsive-table tr,
  table.responsive-table td{display:block;width:100%}
  table.responsive-table thead{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
  }
  table.responsive-table tbody{display:grid;gap:10px}
  table.responsive-table tbody tr{
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--panel-2);
    overflow:hidden;
    padding:4px 12px;
  }
  table.responsive-table tbody tr:hover{background:var(--panel-2)}
  table.responsive-table tbody td{
    display:grid;
    grid-template-columns:minmax(92px,38%) minmax(0,1fr);
    align-items:start;
    gap:10px;
    min-height:42px;
    padding:10px 0!important;
    border:0!important;
    border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
    text-align:left!important;
  }
  table.responsive-table tbody td:last-child{border-bottom:0!important}
  table.responsive-table tbody td::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:10px;
    font-weight:900;
    letter-spacing:.045em;
    line-height:1.35;
    text-transform:uppercase;
  }
  table.responsive-table tbody td>.btn,
  table.responsive-table tbody td>button,
  table.responsive-table tbody td>.badge{justify-self:start;max-width:100%}
  table.responsive-table tbody td>.btn,
  table.responsive-table tbody td>button{width:100%}

  .modal-backdrop>.modal{
    min-height:0;
    padding-bottom:calc(16px + env(safe-area-inset-bottom));
  }
  .modal .form-actions,.modal .modal-actions,.modal .native-danger-actions{
    position:sticky;
    bottom:calc(-16px - env(safe-area-inset-bottom));
    z-index:7;
    margin:14px -12px calc(-16px - env(safe-area-inset-bottom));
    padding:12px 12px calc(12px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 82%,transparent),var(--panel) 28%);
    border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);
    backdrop-filter:blur(14px);
  }
  .modal .native-detail-section{min-width:0}
  .adoption-detail-modal .native-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adoption-detail-modal .native-kpi{min-height:132px;padding:14px}
  .adoption-detail-modal .native-kpi strong{font-size:clamp(22px,7vw,31px);overflow-wrap:anywhere}
  .native-device-list article{min-width:0}
  .native-device-list strong,.native-device-list small{overflow-wrap:anywhere}

  .pwa-update-banner{
    bottom:calc(78px + env(safe-area-inset-bottom));
    align-items:stretch;
    flex-direction:column;
    gap:12px;
  }
  .pwa-update-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .pwa-update-actions .btn{width:100%}
}

@media(max-width:390px){
  table.responsive-table tbody td{grid-template-columns:1fr;gap:5px}
  .adoption-detail-modal .native-kpis{grid-template-columns:1fr}
  .pwa-update-actions{grid-template-columns:1fr}
}

@media(max-height:520px) and (orientation:landscape){
  .modal-backdrop{padding:0}
  .modal-backdrop>.modal{
    width:100%!important;
    max-width:100%!important;
    height:var(--bmnet-viewport-height,100dvh);
    max-height:var(--bmnet-viewport-height,100dvh);
    border-radius:0;
  }
  .modal-head{top:-16px}
  .mobile-nav{display:none}
  body{padding-bottom:0}
}

/* v2.4.0 HOTFIX R8.1 — compactação mobile, NOC e topologia */
.noc-interface-mobile-list{display:none}

@media(max-width:680px){
  html{scroll-padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  body{padding-bottom:0!important}
  .main{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
  .page{padding-bottom:18px}

  .page-toolbar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    justify-content:stretch;
    gap:8px;
    width:100%;
    max-width:100%;
    overflow:visible!important;
    padding-bottom:0!important;
    scrollbar-width:none;
  }
  .page-toolbar::-webkit-scrollbar{display:none}
  .page-toolbar .btn{
    width:100%!important;
    min-width:0!important;
    min-height:46px;
    padding:10px 12px;
    white-space:normal;
    line-height:1.25;
    text-align:center;
  }
  .page-toolbar .btn-primary:first-child{grid-column:1/-1}

  .diagnostic-summary.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .diagnostic-summary .metric{min-height:146px;padding:15px}
  .diagnostic-summary .metric-icon{width:38px;height:38px;margin-bottom:12px}
  .diagnostic-summary .metric .label{font-size:12px;line-height:1.3}
  .diagnostic-summary .metric .value{font-size:clamp(23px,7vw,29px);line-height:1.06;overflow-wrap:anywhere}
  .diagnostic-summary .metric .hint{font-size:11px;line-height:1.35}

  table.responsive-table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed;
  }
  table.responsive-table tbody,
  table.responsive-table tr,
  table.responsive-table td{min-width:0!important;max-width:100%!important}
  table.responsive-table tbody td>*{max-width:100%}

  .noc-interface-card .section-title{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:12px;
  }
  .noc-interface-card .section-title .btn{width:100%}
  .noc-interface-table-desktop{display:none!important}
  .noc-interface-mobile-list{display:grid;gap:10px}
  .noc-interface-mobile-item{
    min-width:0;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--panel-2);
    padding:13px;
  }
  .noc-interface-mobile-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    padding-bottom:11px;
    border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  }
  .noc-interface-mobile-head>div{min-width:0}
  .noc-interface-mobile-head strong,
  .noc-interface-mobile-head small{display:block;overflow-wrap:anywhere}
  .noc-interface-mobile-head small{margin-top:3px;color:var(--muted);font-size:11px}
  .noc-interface-mobile-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    padding-top:10px;
  }
  .noc-interface-mobile-stats>div{
    min-width:0;
    border:1px solid color-mix(in srgb,var(--line) 72%,transparent);
    border-radius:12px;
    background:var(--panel);
    padding:9px 10px;
  }
  .noc-interface-mobile-stats span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
  .noc-interface-mobile-stats strong{display:block;margin-top:5px;font-size:12px;line-height:1.3;overflow-wrap:anywhere}

  .topology-map-card{overflow:visible}
  .topology-canvas-mobile{
    min-height:0!important;
    height:auto;
    overflow:hidden;
    touch-action:pan-y;
    overscroll-behavior:auto;
  }
  .topology-canvas-mobile .topology-svg{
    display:block;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    touch-action:pan-y;
  }
  .topology-canvas-mobile .topology-node,
  .topology-canvas-mobile .topology-link-group{touch-action:manipulation}
  .topology-canvas-mobile .topology-legend{
    position:static;
    display:grid;
    grid-template-columns:repeat(2,max-content);
    justify-content:center;
    width:calc(100% - 16px);
    max-width:none;
    margin:8px;
    gap:7px 14px;
    white-space:normal;
  }
  .topology-canvas-mobile .topology-link-line{stroke-width:3}
  .topology-canvas-mobile .topology-link-hit{stroke-width:18}
  .topology-canvas-mobile .topology-link-label text{font-size:10px}
  .topology-canvas-mobile .topology-node-title{font-size:13px}
  .topology-canvas-mobile .topology-node-subtitle{font-size:8px}
}

@media(max-width:360px){
  .page-toolbar{grid-template-columns:1fr}
  .page-toolbar .btn-primary:first-child{grid-column:auto}
  .diagnostic-summary.cards-4{grid-template-columns:1fr}
  .diagnostic-summary .metric{
    min-height:116px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    column-gap:12px;
    align-content:center;
  }
  .diagnostic-summary .metric-icon{grid-row:1/4;margin:0}
  .diagnostic-summary .metric:after{width:86px;height:86px}
  .noc-interface-mobile-stats{grid-template-columns:1fr}
}

/* HOTFIX R8.2 — NOC LINK GROUP */
.noc-link-group-card{position:relative}
.noc-link-group-title{gap:14px}
.noc-link-group-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.noc-link-mode-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}
.noc-link-mode-btn{border:0;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:800;padding:8px 12px;border-radius:9px;cursor:pointer}
.noc-link-mode-btn:hover,.noc-link-mode-btn.active{background:var(--primary);color:#fff}
.noc-link-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 14px}
.noc-link-summary-item{min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:var(--panel-2)}
.noc-link-summary-item.is-offline{opacity:.68}
.noc-link-summary-head{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:8px;align-items:center}
.noc-link-summary-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.noc-link-summary-head small{grid-column:2;color:var(--muted);font-size:10px;margin-top:2px}
.noc-link-status-dot{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 14%,transparent)}
.noc-link-summary-item.is-offline .noc-link-status-dot{background:var(--danger);box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 14%,transparent)}
.noc-link-summary-values{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:10px}
.noc-link-summary-values strong{color:var(--text);font-size:11px}
.noc-link-empty{grid-column:1/-1;padding:14px 16px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:12px;line-height:1.5}
.chart-series-4{--chart-color:#ff6b6b}.chart-series-5{--chart-color:#12b886}.chart-series-6{--chart-color:#845ef7}.chart-series-7{--chart-color:#f06595}
.chart-line.chart-series-4,.chart-line.chart-series-5,.chart-line.chart-series-6,.chart-line.chart-series-7{stroke:var(--chart-color);fill:none!important}
.chart-dot.chart-series-4,.chart-dot.chart-series-5,.chart-dot.chart-series-6,.chart-dot.chart-series-7{fill:var(--chart-color)}
.chart-legend-dot.chart-series-4,.chart-legend-dot.chart-series-5,.chart-legend-dot.chart-series-6,.chart-legend-dot.chart-series-7{background:var(--chart-color)}
@media(max-width:900px){.noc-link-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .noc-link-group-title{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .noc-link-group-actions{display:grid;grid-template-columns:1fr;width:100%;justify-content:stretch}
  .noc-link-mode-tabs{width:100%}
  .noc-link-mode-btn{flex:1}
  .noc-link-group-actions .btn{width:100%}
  .noc-link-summary{grid-template-columns:1fr;gap:8px}
  .noc-link-summary-item{padding:11px 12px}
  .noc-link-summary-values{justify-content:space-between}
}


/* HOTFIX R8.3 — LINK QUALITY E LIVE NOC DE ALTA PRECISÃO */
.noc-link-metric-tabs{display:flex;gap:6px;overflow-x:auto;padding:3px;margin:2px 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);scrollbar-width:none}
.noc-link-metric-tabs::-webkit-scrollbar{display:none}
.noc-link-metric-btn{flex:1;min-width:92px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:850;padding:9px 13px;cursor:pointer;white-space:nowrap}
.noc-link-metric-btn:hover,.noc-link-metric-btn.active{background:var(--primary);color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--primary) 22%,transparent)}
.noc-link-group-actions .is-hidden{display:none!important}
.noc-quality-service{display:inline-flex;align-items:center;gap:7px;margin-top:7px;color:var(--muted);font-size:11px;font-weight:750}
.noc-quality-service i{width:8px;height:8px;border-radius:50%;background:var(--muted)}
.noc-quality-service.is-running{color:var(--success)}
.noc-quality-service.is-running i{background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 15%,transparent)}
.noc-quality-service.is-stopped{color:var(--warning)}
.noc-quality-service.is-stopped i{background:var(--warning)}
.noc-link-summary-head{grid-template-columns:auto minmax(0,1fr) auto}
.noc-link-summary-head small{grid-column:2/4}
.noc-quality-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
.noc-quality-badge.is-healthy{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}
.noc-quality-badge.is-warning{background:color-mix(in srgb,var(--warning) 18%,transparent);color:color-mix(in srgb,var(--warning) 75%,var(--text))}
.noc-quality-badge.is-critical,.noc-quality-badge.is-offline{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger)}
.noc-quality-badge.is-unknown{background:color-mix(in srgb,var(--muted) 13%,transparent);color:var(--muted)}
.noc-link-summary-item.is-warning{border-color:color-mix(in srgb,var(--warning) 50%,var(--line))}
.noc-link-summary-item.is-critical,.noc-link-summary-item.is-offline{border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}
.noc-link-summary-item.is-warning .noc-link-status-dot{background:var(--warning);box-shadow:0 0 0 4px color-mix(in srgb,var(--warning) 14%,transparent)}
.noc-link-summary-item.is-critical .noc-link-status-dot,.noc-link-summary-item.is-offline .noc-link-status-dot{background:var(--danger);box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 14%,transparent)}
.noc-link-quality-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.noc-link-quality-values span{min-width:0;color:var(--muted);font-size:9px}
.noc-link-quality-values strong{display:block;margin-top:2px;color:var(--text);font-size:11px;overflow-wrap:anywhere}
.link-quality-modal{max-width:1180px}
.link-quality-section{margin-top:12px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel-2)}
.link-quality-section:first-of-type{margin-top:0}
.link-quality-section h4{margin:0;font-size:15px}
.link-quality-router-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.link-quality-router-grid .link-quality-enabled{grid-column:1/-1}
.link-quality-router-grid .field-span-2,.link-quality-route-grid .field-span-2{grid-column:span 2}
.link-quality-interface-list{display:grid;gap:12px;margin-top:14px}
.link-quality-interface{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.link-quality-interface-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.link-quality-interface-head strong,.link-quality-interface-head small{display:block}
.link-quality-interface-head small{margin-top:3px;color:var(--muted);font-size:10px}
.link-quality-route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}
.link-quality-threshold-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:10px}
.link-quality-interface-actions{display:flex;justify-content:flex-end;margin-top:12px}
.command-box{max-height:58vh;overflow:auto;margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:14px;background:#071426;color:#d7e7ff;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:980px){
  .link-quality-router-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .link-quality-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .link-quality-threshold-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .noc-link-metric-tabs{width:100%;margin-top:8px}
  .noc-link-metric-btn{flex:0 0 auto;min-width:86px}
  .noc-link-quality-values{grid-template-columns:repeat(2,minmax(0,1fr))}
  .link-quality-section{padding:12px}
  .link-quality-section .section-title{display:grid;grid-template-columns:1fr;gap:10px}
  .link-quality-section .section-title .btn{width:100%}
  .link-quality-router-grid,.link-quality-route-grid,.link-quality-threshold-grid{grid-template-columns:1fr}
  .link-quality-router-grid .field-span-2,.link-quality-route-grid .field-span-2{grid-column:auto}
  .link-quality-interface-head{display:grid;grid-template-columns:1fr}
  .link-quality-interface-actions .btn{width:100%}
}

.noc-quality-service.is-waiting {
  color: var(--text-muted);
  background: color-mix(in srgb, var(--surface-soft) 88%, transparent);
}
.noc-quality-service.is-warning {
  color: var(--warning-strong, #9a6700);
  background: color-mix(in srgb, var(--warning-soft, #fff5cc) 88%, transparent);
}


/* HOTFIX R8.3.2 — COMPATIBILIDADE ROUTEROS E ERROS DE PROBE */
.noc-quality-badge.is-config-error{background:color-mix(in srgb,var(--warning) 20%,transparent);color:color-mix(in srgb,var(--warning) 72%,var(--text))}
.noc-link-summary-item.is-config_error{border-color:color-mix(in srgb,var(--warning) 62%,var(--line));opacity:1}
.noc-link-summary-item.is-config_error .noc-link-status-dot{background:var(--warning);box-shadow:0 0 0 4px color-mix(in srgb,var(--warning) 14%,transparent)}
.noc-link-probe-error{margin-top:10px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--warning) 40%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--warning) 9%,var(--panel));color:var(--muted);font-size:9px;line-height:1.4;overflow-wrap:anywhere}
.noc-link-probe-error strong{color:var(--text)}
.noc-link-probe-error small{color:var(--muted)}
.noc-link-probe-method{margin-top:8px;color:var(--muted);font-size:9px}
.noc-quality-service.is-warning{padding:4px 7px;border-radius:999px}

/* HOTFIX R8.4 — confiabilidade e observabilidade */
.reliability-r84-card .diagnostic-summary { margin-top: 14px; }
.reliability-r84-card details { margin-top: 14px; }
.reliability-r84-card .health-alert { margin-top: 14px; }
@media (max-width: 700px) {
  .reliability-r84-card .table-wrap { max-width: 100%; overflow-x: auto; }
}

/* HOTFIX R8.4.1 — telas compactas, paginação e gestão de usuários */
.table-pagination{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:12px;margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel-2) 72%,transparent)}
.table-pagination-summary{font-size:12px;color:var(--muted)}
.table-pagination-summary strong{color:var(--text)}
.table-pagination-pages{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}
.table-page-button{min-width:34px;height:34px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:800;cursor:pointer}
.table-page-button:hover:not(:disabled){border-color:var(--primary);transform:translateY(-1px)}
.table-page-button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.table-page-button:disabled{opacity:.38;cursor:not-allowed}
.table-page-gap{padding:0 2px;color:var(--muted)}
.table-pagination-limit{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}
.table-pagination-limit .select{width:82px;padding:8px 28px 8px 10px;border-radius:10px}
.notification-channel-card .card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.notification-channel-card .card-actions .btn{width:100%;min-width:0;white-space:normal;line-height:1.15}
.notification-delivery-table{min-width:900px}
.notification-delivery-table td:nth-child(4){min-width:240px}
.form-actions-split{justify-content:space-between;align-items:center}
.form-actions-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.users-table{min-width:780px}
.users-table td:first-child{min-width:220px}
.users-table td small,.mkauth-client-table td small{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.mkauth-client-table{min-width:940px;table-layout:auto}
.mkauth-client-table td:first-child{min-width:270px}
.mkauth-client-table td:nth-child(2){min-width:120px}
.mkauth-client-table td:nth-child(3),.mkauth-client-table td:nth-child(4){min-width:130px}
.mkauth-client-table td:nth-child(5){min-width:90px}
.fiscal-query-time{text-align:right;margin-bottom:8px}
.noc-interface-card>[data-live-interface-pager]:empty{display:none}
.noc-interface-card .table-pagination{margin:10px 0}

@media(max-width:900px){
  .table-pagination{grid-template-columns:1fr auto}
  .table-pagination-pages{grid-column:1/-1;grid-row:2}
  .table-pagination-limit{justify-content:flex-end}
  .form-actions-split{align-items:stretch;flex-direction:column-reverse}
  .form-actions-group{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-actions-group .btn{width:100%}
}
@media(max-width:620px){
  .table-pagination{grid-template-columns:1fr;padding:10px}
  .table-pagination-summary{text-align:center}
  .table-pagination-pages{grid-column:auto;grid-row:auto}
  .table-pagination-limit{justify-content:center}
  .notification-channel-card .card-actions{grid-template-columns:1fr}
  .form-actions-group{grid-template-columns:1fr}
  .fiscal-query-time{text-align:left}
}

/* HOTFIX R8.4.2 — navegação, paginação universal e organização visual */
.sidebar-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 8px;
  padding: 0 16px 12px;
}
.sidebar-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 13px;
  background: rgba(255, 255, 255, .07);
  color: var(--sidebar-muted, #9fb0ca);
}
.sidebar-search svg { width: 18px; height: 18px; flex: 0 0 auto; }
.sidebar-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}
.sidebar-search input::placeholder { color: inherit; opacity: .78; }
.sidebar-tools > .icon-btn {
  width: 42px;
  height: 42px;
  color: #dbeafe;
  border-color: rgba(148, 163, 184, .22);
  background: rgba(255, 255, 255, .07);
}
.sidebar .nav { scrollbar-width: thin; }
.sidebar .nav-btn[hidden], .sidebar .nav-group[hidden] { display: none !important; }
.sidebar-compact { width: 92px; }
.sidebar-compact + .sidebar-backdrop + .main { margin-left: 92px; }
.sidebar-compact .brand > div,
.sidebar-compact .nav-btn span,
.sidebar-compact .nav-group-main span,
.sidebar-compact .nav-group-chevron,
.sidebar-compact .sidebar-bottom .user-mini > div:last-child,
.sidebar-compact .sidebar-search input { display: none; }
.sidebar-compact .brand { justify-content: center; padding-inline: 12px; }
.sidebar-compact .sidebar-tools { grid-template-columns: 1fr 1fr; padding-inline: 10px; }
.sidebar-compact .sidebar-search { justify-content: center; padding: 0; }
.sidebar-compact .nav-btn,
.sidebar-compact .nav-group-toggle { justify-content: center; padding-inline: 10px; }
.sidebar-compact .nav-group-items { padding-left: 0; }
.sidebar-compact .nav-child::before { display: none; }
.sidebar-compact .user-mini { justify-content: center; }

.client-table-pager { margin: 12px 0; }
.client-table-pager-top { margin-top: 0; }
.client-page-hidden { display: none !important; }
.table-pagination { flex-wrap: wrap; gap: 10px; }
.table-pagination-pages { flex-wrap: wrap; }
.table-page-button { min-width: 38px; min-height: 38px; }

.menu-compact-option { margin-bottom: 14px; }
.menu-editor-groups { display: grid; gap: 14px; max-height: min(68vh, 760px); overflow: auto; padding: 2px 4px 12px 2px; }
.menu-editor-group {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: var(--surface-soft, rgba(148,163,184,.08));
  padding: 12px;
}
.menu-editor-group.is-dragging,
.menu-editor-item.is-dragging,
.interface-order-item.is-dragging { opacity: .5; }
.menu-editor-group-head {
  display: grid;
  grid-template-columns: 30px minmax(180px, 1fr) auto;
  gap: 9px;
  align-items: center;
  margin-bottom: 10px;
}
.menu-editor-items { display: grid; gap: 8px; min-height: 18px; }
.menu-editor-item {
  display: grid;
  grid-template-columns: 26px minmax(150px, 1fr) auto minmax(150px, 190px) auto;
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--card);
}
.drag-handle { cursor: grab; user-select: none; text-align: center; color: var(--muted); font-weight: 900; }
.drag-handle.is-disabled { cursor: default; opacity: .35; }
.menu-editor-visible { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.menu-editor-fixed { font-size: .78rem; color: var(--muted); padding: 0 8px; }
.menu-editor-move { display: inline-flex; gap: 5px; }
.icon-btn-sm { width: 34px; height: 34px; min-width: 34px; border-radius: 10px; }

.interface-order-list { display: grid; gap: 8px; max-height: min(68vh, 720px); overflow: auto; padding-right: 4px; }
.interface-order-item {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--card);
  padding: 11px 12px;
}
.interface-order-item strong,
.interface-order-item small { display: block; overflow-wrap: anywhere; }
.interface-order-item small { color: var(--muted); margin-top: 2px; }

.topology-canvas.is-editing {
  overflow: auto;
  overscroll-behavior: contain;
  border-style: solid;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--primary) 25%, transparent);
}
.topology-canvas.is-editing .topology-svg {
  min-width: 900px;
  min-height: 525px;
  touch-action: none;
}
.topology-canvas.is-editing .topology-node { cursor: grab; }
.topology-canvas.is-editing .topology-node.dragging { cursor: grabbing; }

.notification-incidents-table td:last-child { min-width: 250px; }
.notification-incidents-table td:last-child .btn,
.notification-incidents-table td:last-child button { margin: 3px 3px 3px 0; }
.notification-incidents-table tbody tr td:last-child { white-space: normal; }
.page-head-actions, .form-actions, .form-actions > div { flex-wrap: wrap; }

@media (max-width: 1024px) {
  .menu-editor-item { grid-template-columns: 26px minmax(130px, 1fr) auto minmax(130px, 170px); }
  .menu-editor-item .menu-editor-move { grid-column: 2 / -1; justify-content: flex-end; }
}

@media (max-width: 820px) {
  .sidebar-compact { width: min(88vw, 330px); }
  .sidebar-compact + .sidebar-backdrop + .main { margin-left: 0; }
  .sidebar-compact .brand > div,
  .sidebar-compact .nav-btn span,
  .sidebar-compact .nav-group-main span,
  .sidebar-compact .nav-group-chevron,
  .sidebar-compact .sidebar-bottom .user-mini > div:last-child,
  .sidebar-compact .sidebar-search input { display: initial; }
  .sidebar-compact .brand { justify-content: flex-start; padding-inline: 18px; }
  .sidebar-compact .sidebar-tools { grid-template-columns: minmax(0, 1fr) 42px; padding-inline: 16px; }
  .sidebar-compact .sidebar-search { justify-content: flex-start; padding: 0 12px; }
  .sidebar-compact .nav-btn,
  .sidebar-compact .nav-group-toggle { justify-content: flex-start; padding-inline: 14px; }
  .sidebar-compact .user-mini { justify-content: flex-start; }
  .menu-editor-group-head { grid-template-columns: 24px minmax(0, 1fr) auto; }
  .menu-editor-item {
    grid-template-columns: 24px minmax(0, 1fr) auto;
    align-items: center;
  }
  .menu-editor-item [data-menu-item-group] { grid-column: 2 / -1; width: 100%; }
  .menu-editor-item .menu-editor-move { grid-column: 2 / -1; justify-content: flex-end; }
  .table-pagination { align-items: stretch; }
  .table-pagination-summary, .table-pagination-pages, .table-pagination-limit { width: 100%; justify-content: center; }
  .topology-canvas.is-editing { max-height: 70vh; }
}
.shell.shell-compact { --nav-w: 92px; }
@media (max-width: 820px) { .shell.shell-compact { --nav-w: 264px; } }
.notification-incidents-table { min-width: 760px; }
.notification-incidents-table th:nth-child(2), .notification-incidents-table td:nth-child(2) { width: 42%; }
.notification-incidents-table .incident-actions { min-width: 0; }
@media (max-width: 980px) and (min-width: 681px) {
  .notification-incidents-table { min-width: 680px; }
  .notification-incidents-table td:last-child { min-width: 190px; }
  .notification-incidents-table .incident-actions .btn { flex: 1 1 120px; }
}

/* BM NET 2.4.15 — painel de lembretes automáticos de fatura */
.invoice-push-hero { border-color: color-mix(in srgb, var(--border) 72%, transparent); }
.invoice-push-hero.is-active { box-shadow: inset 4px 0 0 color-mix(in srgb, #22c55e 78%, transparent); }
.invoice-push-hero.is-disabled { box-shadow: inset 4px 0 0 color-mix(in srgb, #f59e0b 78%, transparent); }
.invoice-push-status-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
.invoice-runtime-list > div { min-height: 48px; }
.invoice-stage-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 16px; }
.invoice-stage-card { display: grid; gap: 12px; min-height: 190px; }
.invoice-stage-card > strong { font-size: clamp(1.35rem, 2vw, 1.9rem); letter-spacing: -.03em; }
.invoice-stage-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.invoice-stage-head > span:first-child { color: var(--muted); font-size: .86rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.invoice-stage-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.invoice-stage-stats span { display: flex; flex-direction: column; gap: 2px; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 11px; background: color-mix(in srgb, var(--card) 82%, var(--bg)); color: var(--muted); font-size: .76rem; }
.invoice-stage-stats b { color: var(--text); font-size: .92rem; overflow-wrap: anywhere; }
.invoice-preview-form .field { min-width: 190px; }
.invoice-preview-kpis { margin: 16px 0; }
.invoice-preview-table td:nth-child(2) strong,
.invoice-preview-table td:nth-child(2) small,
.invoice-history-table td:nth-child(2) strong,
.invoice-history-table td:nth-child(2) small,
.invoice-history-table td:nth-child(5) small,
.invoice-history-table td:nth-child(6) small { display: block; }
.invoice-preview-table td:nth-child(2) small,
.invoice-history-table td small { color: var(--muted); margin-top: 3px; }
.invoice-error-text { max-width: 340px; white-space: normal; overflow-wrap: anywhere; color: var(--danger, #ef4444) !important; }
.invoice-sample-note { margin: 10px 0 0; }
.invoice-history-form .input { min-width: 190px; }
.invoice-history-table { min-width: 980px; }
.invoice-preview-table { min-width: 780px; }

@media (max-width: 1180px) {
  .invoice-stage-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .invoice-push-status-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .invoice-stage-grid { grid-template-columns: 1fr; }
  .invoice-stage-card { min-height: 0; }
  .invoice-stage-stats { grid-template-columns: 1fr 1fr; }
  .invoice-preview-form .field,
  .invoice-history-form .input,
  .invoice-history-form .select,
  .invoice-preview-form .input,
  .invoice-preview-form .select { width: 100%; min-width: 0; }
}

/* BMNET_INVOICE_PUSH_TEMPLATES_R6_CSS */
.invoice-template-section { margin-bottom: 16px; }
.invoice-template-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.invoice-template-card { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb, var(--card) 88%, var(--bg)); }
.invoice-template-card-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.invoice-template-preview { display: grid; gap: 4px; padding: 12px; border: 1px dashed var(--border); border-radius: 12px; background: color-mix(in srgb, var(--bg) 70%, var(--card)); }
.invoice-template-preview small { color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.invoice-template-preview strong, .invoice-template-preview span { overflow-wrap: anywhere; }
.invoice-template-test { display: grid; gap: 12px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border); }
.invoice-template-test h4, .invoice-template-test p { margin: 0; }
.invoice-template-test .callout { display: grid; gap: 4px; margin-top: 8px; }
@media (max-width: 820px) {
  .invoice-template-grid { grid-template-columns: 1fr; }
  .invoice-template-test .native-toolbar .field { min-width: 100%; }
}


/* BM NET 2.4.16 — alertas de atendimento do App Cliente */
.nav-alert-count,.topbar-alert-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:900;line-height:1;box-shadow:0 0 0 2px var(--panel)}
.nav-alert-count{margin-left:auto}
.support-alert-center{position:relative}
.topbar-alert-count{position:absolute;right:-7px;top:-7px;box-shadow:0 0 0 2px var(--bg)}
.nav-alert-count[hidden],.topbar-alert-count[hidden]{display:none!important}
.support-alert-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 18px;border-color:color-mix(in srgb,#f59e0b 45%,var(--line));background:color-mix(in srgb,#f59e0b 8%,var(--panel))}
.support-alert-status>div{display:flex;flex-direction:column;gap:4px}
.support-alert-status strong{font-size:14px}
.support-alert-status span{font-size:12px;color:var(--muted);line-height:1.45}
.support-alert-help{max-width:320px;text-align:right}
@media(max-width:720px){.support-alert-status{align-items:flex-start;flex-direction:column}.support-alert-help{text-align:left}.nav-alert-count{margin-left:auto}}

/* BM NET Central ADM 2.4.17 — WebAuthn / biometria */
.login-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.login-divider::before,.login-divider::after{content:"";height:1px;background:var(--line);flex:1}.login-divider span{padding:0 4px}.biometric-login-btn svg,.biometric-register-btn svg{width:21px;height:21px;flex:0 0 auto}.biometric-login-help{display:block;text-align:center;color:var(--muted);font-size:11px;line-height:1.5;margin-top:10px}.biometric-unavailable{margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(255,183,77,.1);border:1px solid rgba(255,183,77,.24);color:var(--muted);font-size:11px;line-height:1.5}.profile-biometric-card{margin-top:16px}.profile-biometric-card>.section-title{align-items:flex-start}.profile-biometric-card>.section-title>div:first-child{min-width:0}.profile-biometric-card>.section-title h3{margin-bottom:5px}.profile-biometric-card>.section-title p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.profile-biometric-card>.section-title>svg{width:30px;height:30px;color:var(--primary);flex:0 0 auto}.biometric-enroll-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:14px;align-items:end;margin-top:18px}.biometric-enroll-grid .field{margin-bottom:0}.biometric-register-btn{min-height:48px;white-space:nowrap}.biometric-note{margin-top:14px}.biometric-credentials{display:flex;flex-direction:column;gap:10px;margin-top:16px}.biometric-loading{padding:16px;color:var(--muted);font-size:13px;text-align:center}.biometric-device{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--panel-2);border:1px solid var(--line);border-radius:16px}.biometric-device-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(49,93,255,.12);color:var(--primary);flex:0 0 auto}.biometric-device-icon svg{width:23px;height:23px}.biometric-device-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.biometric-device-info strong{font-size:14px}.biometric-device-info span{font-size:11px;color:var(--muted);line-height:1.45}.biometric-empty{min-height:150px}.biometric-empty svg{width:36px;height:36px;color:var(--primary)}
@media(max-width:980px){.biometric-enroll-grid{grid-template-columns:1fr 1fr}.biometric-register-btn{grid-column:1/-1;width:100%}}
@media(max-width:620px){.biometric-enroll-grid{grid-template-columns:1fr}.biometric-register-btn{grid-column:auto}.biometric-device{align-items:flex-start;flex-wrap:wrap}.biometric-device-info{min-width:calc(100% - 58px)}.biometric-device .btn{width:100%}}

/* v2.4.19 — Central de Pendências Operacionais */
.btn-success{background:color-mix(in srgb,var(--success) 18%,var(--panel));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 42%,var(--line))}.btn-success:hover{background:color-mix(in srgb,var(--success) 26%,var(--panel))}.chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:800}.operational-pending-center{position:relative}.pending-count{background:var(--danger)!important}.pending-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:16px}.pending-summary-grid .metric{min-height:126px}.pending-summary-grid .metric .value{font-size:26px}.pending-dashboard-card{margin:16px 0}.pending-dashboard-card .section-title{align-items:flex-start;gap:16px}.pending-dashboard-card .section-title p{margin:5px 0 0;color:var(--muted);font-size:12px}.pending-dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.pending-dashboard-stats>div{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px}.pending-dashboard-stats span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.pending-dashboard-stats strong{display:block;margin-top:5px;font-size:22px}.pending-dashboard-list{display:grid;gap:8px}.pending-dashboard-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:14px;padding:11px 12px;text-align:left}.pending-dashboard-item:hover{border-color:var(--primary);transform:translateY(-1px)}.pending-dashboard-item strong,.pending-dashboard-item small{display:block}.pending-dashboard-item strong{font-size:13px}.pending-dashboard-item small{margin-top:3px;color:var(--muted);font-size:11px}.pending-severity-dot{width:10px;height:10px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 5px color-mix(in srgb,var(--muted) 12%,transparent)}.pending-severity-dot.severity-critical{background:var(--danger);box-shadow:0 0 0 5px color-mix(in srgb,var(--danger) 13%,transparent)}.pending-severity-dot.severity-high{background:#ff8b3d;box-shadow:0 0 0 5px rgba(255,139,61,.13)}.pending-severity-dot.severity-medium{background:var(--warning);box-shadow:0 0 0 5px color-mix(in srgb,var(--warning) 13%,transparent)}.pending-severity-dot.severity-low{background:#7fa0ff;box-shadow:0 0 0 5px rgba(127,160,255,.13)}.pending-filters{margin-bottom:14px}.pending-filter-grid{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(140px,.8fr));gap:12px;align-items:end}.pending-filter-grid .field{margin:0}.pending-mine{grid-column:1/-1;justify-self:start;margin-top:0}.pending-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:13px 2px;color:var(--muted);font-size:12px}.pending-result-head strong{color:var(--text);font-size:13px}.operational-pending-list{display:grid;gap:12px}.operational-pending-item{position:relative;overflow:hidden;border-left:4px solid var(--line);padding-left:17px}.operational-pending-item.severity-critical{border-left-color:var(--danger)}.operational-pending-item.severity-high{border-left-color:#ff8b3d}.operational-pending-item.severity-medium{border-left-color:var(--warning)}.operational-pending-item.severity-low{border-left-color:#7fa0ff}.pending-item-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.pending-item-title{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;min-width:0}.pending-severity-icon{width:40px;height:40px;border-radius:13px;background:var(--panel-2);display:grid;place-items:center;color:var(--muted);flex:0 0 auto}.pending-severity-icon svg{width:21px}.severity-critical .pending-severity-icon{color:var(--danger);background:color-mix(in srgb,var(--danger) 11%,var(--panel))}.severity-high .pending-severity-icon{color:#ff9a52;background:rgba(255,139,61,.11)}.severity-medium .pending-severity-icon{color:var(--warning);background:color-mix(in srgb,var(--warning) 11%,var(--panel))}.severity-low .pending-severity-icon{color:#7fa0ff;background:rgba(127,160,255,.11)}.pending-item-title h3{margin:8px 0 5px;font-size:16px;line-height:1.35}.pending-item-title p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.pending-item-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.pending-item-age{text-align:right;min-width:105px}.pending-item-age span,.pending-item-age small{display:block;color:var(--muted);font-size:10px}.pending-item-age strong{display:block;margin:4px 0;font-size:17px}.pending-item-facts{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin:15px 0;padding:11px 12px;border:1px solid var(--line);background:var(--panel-2);border-radius:13px;color:var(--muted);font-size:11px}.pending-item-facts strong{color:var(--text)}.pending-item-facts .pending-note{flex-basis:100%;padding-top:8px;border-top:1px solid var(--line);line-height:1.5}.pending-item-actions{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.pending-assignee,.pending-snooze{display:grid;gap:4px}.pending-assignee>span,.pending-snooze>span{color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.pending-assignee .input{min-width:180px}.pending-snooze .input{min-width:120px}.pending-history{max-height:min(58vh,620px);overflow:auto}.pending-history .list-item{padding-right:6px}.empty.compact{padding:18px}.callout.warning{border-color:color-mix(in srgb,var(--warning) 38%,var(--line));background:color-mix(in srgb,var(--warning) 9%,var(--panel));color:var(--muted)}.callout.warning strong{color:var(--warning)}
@media(max-width:1280px){.pending-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pending-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-filter-grid .field:first-child{grid-column:1/-1}}
@media(max-width:820px){.pending-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-item-head{grid-template-columns:1fr}.pending-item-age{text-align:left;display:flex;align-items:center;gap:7px;min-width:0}.pending-item-age strong{margin:0}.pending-item-actions{align-items:stretch}.pending-assignee,.pending-snooze{flex:1;min-width:180px}.pending-assignee .input,.pending-snooze .input{width:100%;min-width:0}}
@media(max-width:620px){.pending-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-dashboard-card .section-title{display:block}.pending-dashboard-card .section-title .btn{margin-top:12px;width:100%}.pending-dashboard-item{grid-template-columns:auto minmax(0,1fr)}.pending-dashboard-item>.badge{grid-column:2;justify-self:start}.pending-filter-grid{grid-template-columns:1fr}.pending-filter-grid .field:first-child{grid-column:auto}.pending-mine{grid-column:auto}.operational-pending-item{padding:15px 14px 15px 16px}.pending-item-title{grid-template-columns:1fr}.pending-severity-icon{width:36px;height:36px}.pending-item-actions{display:grid;grid-template-columns:1fr 1fr}.pending-item-actions>.btn,.pending-assignee,.pending-snooze{width:100%;min-width:0}.pending-item-actions>.btn:first-child,.pending-assignee{grid-column:1/-1}.pending-result-head{align-items:flex-start;flex-direction:column}.pending-item-facts{display:grid}.pending-item-facts .pending-note{padding-top:8px}.pending-history .list-item{display:grid;grid-template-columns:auto 1fr}.pending-history .list-time{grid-column:2}}
