:root{
  color-scheme:light;
  --font:"DM Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --tp-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,"Cascadia Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --brand:#1d63d1;--brand-d:#0f4aa8;--accent:#1d63d1;--link:#1d63d1;
  --card:#ffffff;--head:#fafbfd;--hover:#f7f9fd;--bg-body:#f3f5f9;--bg-topbar:#ffffff;
  --ink:#0f1d33;--ink-2:#33425b;--muted:#66758c;--hint:#8a97ab;--dis:#b3bccb;
  --line:#e3e8f0;--line-2:#eef1f6;--line-in:#d4dbe6;--seg:#e9edf4;--sel:#eaf1fc;
  --ok:#13804a;--okbg:#e6f6ec;--ok-dot:#2bb673;--ok-box:#e6f6ec;--ok-line:#bfe5cd;
  --warn:#8a4a07;--warnbg:#fdf3e2;--warn-dot:#e0a03a;--warn-box:#fdf6ea;--warn-line:#f1dcb5;
  --crit:#a21c1c;--critbg:#fdecec;--crit-dot:#e05252;--crit-box:#fdf1f1;--crit-line:#f3cccc;--crit-solid:#c62f2f;
  --critical:#a21c1c;--warning:#b4530b;--orange:#b4530b;
  --idle:#4a5872;--idle-bg:#eef1f6;
  --info-bg:#eef4fd;--info-line:#bcd2f3;--info-ink:#0f4aa8;
  --focus:rgba(29,99,209,.28);
  --sidebar:#0b2350;--sidebar-hover:rgba(255,255,255,.07);--sidebar-active:#1d4fa3;
  --sb-ink:#c9d6ee;--sb-mut:#6a83ad;--sb-sub:#7fa6e6;--sb-line:rgba(255,255,255,.1);
  --toast-bg:#0f1d33;--toast-ink:#ffffff;
  --shadow:0 1px 2px rgba(15,29,51,.04);
  --shadow-hover:0 4px 14px rgba(15,29,51,.10);
  --sh-modal:0 12px 40px rgba(15,29,51,.22);
}
:root:not([data-theme="light"]){
  color-scheme:light dark;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --brand:#4b8df0;--brand-d:#86b6f6;--accent:#4b8df0;--link:#86b6f6;
    --card:#111d33;--head:#15233c;--hover:#16253f;--bg-body:#0b1424;--bg-topbar:#111d33;
    --ink:#e6edf8;--ink-2:#bcc8dc;--muted:#8f9eb8;--hint:#6f7f9b;--dis:#4a5a78;
    --line:#243553;--line-2:#1b2a45;--line-in:#38496b;--seg:#1c2c48;--sel:#16284a;
    --ok:#5fd39a;--okbg:#12382a;--ok-dot:#2bb673;--ok-box:#112f25;--ok-line:#245c42;
    --warn:#f0b95c;--warnbg:#3a2c10;--warn-dot:#e0a03a;--warn-box:#2e2410;--warn-line:#5c4719;
    --crit:#f59a9a;--critbg:#3d1a1f;--crit-dot:#e05252;--crit-box:#321a1e;--crit-line:#6b2d35;--crit-solid:#c93a3a;
    --critical:#f59a9a;--warning:#f4a566;--orange:#f4a566;
    --idle:#a7b4ca;--idle-bg:#1c2c48;
    --info-bg:#14264a;--info-line:#2c4c80;--info-ink:#a9cbfa;
    --focus:rgba(134,182,246,.5);
    --sidebar:#08152f;--sidebar-active:#1d4fa3;
    --toast-bg:#e6edf8;--toast-ink:#0b1424;
    --shadow:0 1px 2px rgba(0,0,0,.3);--shadow-hover:0 6px 18px rgba(0,0,0,.4);--sh-modal:0 12px 40px rgba(0,0,0,.55);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --brand:#4b8df0;--brand-d:#86b6f6;--accent:#4b8df0;--link:#86b6f6;
  --card:#111d33;--head:#15233c;--hover:#16253f;--bg-body:#0b1424;--bg-topbar:#111d33;
  --ink:#e6edf8;--ink-2:#bcc8dc;--muted:#8f9eb8;--hint:#6f7f9b;--dis:#4a5a78;
  --line:#243553;--line-2:#1b2a45;--line-in:#38496b;--seg:#1c2c48;--sel:#16284a;
  --ok:#5fd39a;--okbg:#12382a;--ok-dot:#2bb673;--ok-box:#112f25;--ok-line:#245c42;
  --warn:#f0b95c;--warnbg:#3a2c10;--warn-dot:#e0a03a;--warn-box:#2e2410;--warn-line:#5c4719;
  --crit:#f59a9a;--critbg:#3d1a1f;--crit-dot:#e05252;--crit-box:#321a1e;--crit-line:#6b2d35;--crit-solid:#c93a3a;
  --critical:#f59a9a;--warning:#f4a566;--orange:#f4a566;
  --idle:#a7b4ca;--idle-bg:#1c2c48;
  --info-bg:#14264a;--info-line:#2c4c80;--info-ink:#a9cbfa;
  --focus:rgba(134,182,246,.5);
  --sidebar:#08152f;--sidebar-active:#1d4fa3;
  --toast-bg:#e6edf8;--toast-ink:#0b1424;
  --shadow:0 1px 2px rgba(0,0,0,.3);--shadow-hover:0 6px 18px rgba(0,0,0,.4);--sh-modal:0 12px 40px rgba(0,0,0,.55);
}
:root[data-theme="light"]{
  color-scheme:light;
}
*{box-sizing:border-box;}
html,body{margin:0;height:100%;overflow:hidden;}
body{font-family:var(--font);background:var(--bg-body);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5;}
button,input,select,textarea{font-family:inherit;}
a{color:var(--link);}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.app{display:grid;grid-template-columns:220px minmax(0,1fr);height:100vh;overflow:hidden;}
.sidebar{background:var(--sidebar);color:var(--sb-ink);display:flex;flex-direction:column;padding:14px 10px;overflow-y:auto;}
.brand{display:flex;align-items:center;gap:10px;padding:2px 6px 14px;border-bottom:1px solid var(--sb-line);margin-bottom:6px;}
.brand .logo{width:32px;height:32px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;padding:4px;flex:none;}
.logo img{width:100%;height:100%;object-fit:contain;display:block;}
.brand .t{font-weight:700;color:#fff;font-size:14px;line-height:1.15;}
.brand .s{font-size:11px;color:var(--sb-sub);}
.nav-group{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--sb-mut);margin:16px 10px 6px;font-weight:700;}
.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;color:var(--sb-ink);text-decoration:none;font-size:13px;cursor:pointer;margin-bottom:1px;transition:background .12s,color .12s;}
.nav a:hover{background:var(--sidebar-hover);color:#fff;}
.nav a:focus-visible{outline:2px solid #86b6f6;outline-offset:-2px;}
.nav a.active{background:var(--sidebar-active);color:#fff;font-weight:600;}
.nav-label{flex:1;min-width:0;}
.nav a .badge{margin-left:auto;background:var(--crit-solid);color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:2px 8px;}
.sb-foot{margin-top:auto;padding-top:12px;border-top:1px solid var(--sb-line);display:flex;align-items:center;gap:10px;}
.avatar{width:30px;height:30px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex:none;}
.sb-foot .n{font-size:12.5px;color:#fff;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sb-foot .e{font-size:11px;color:var(--sb-sub);}
.sb-foot .quem{flex:1;min-width:0;}
.sb-sair{background:none;border:0;color:var(--sb-sub);font-size:16px;padding:4px 6px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.sb-sair:hover{color:#fff;background:rgba(255,255,255,.1);}
.main{display:flex;flex-direction:column;height:100vh;overflow:hidden;min-width:0;}
.topbar{flex:none;height:60px;background:var(--bg-topbar);border-bottom:1px solid var(--line);padding:0 28px;display:flex;align-items:center;gap:12px;}
.topbar h1{font-size:16px;margin:0;font-weight:700;line-height:1.25;}
.topbar .crumb{font-size:12px;color:var(--muted);line-height:1.3;}
.topbar .sp{margin-left:auto;}
.topbar .tit{min-width:0;}
.topbar .tit h1,.topbar .tit .crumb{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hdr-acoes{display:flex;gap:8px;align-items:center;}
.hdr-acoes:empty{display:none;}
.hdr-acoes select{height:34px;font-size:12px;color:var(--ink);background:var(--card);border:1px solid var(--line-in);border-radius:8px;padding:0 8px;max-width:100%;}
.hdr-acoes select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus);}
.hdr-acoes .btn{height:34px;min-height:34px;}
.hdr-acoes #audAviso{font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.role-tag{display:flex;align-items:center;height:34px;padding:0 14px;background:var(--card);border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--ink);white-space:nowrap;}
.theme-toggle{background:var(--card);border:1px solid var(--line-in);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;width:34px;height:34px;font-size:15px;color:var(--ink);}
.theme-toggle:hover{border-color:var(--brand);}
.sidebar-toggle{display:none;background:var(--card);border:1px solid var(--line-in);border-radius:8px;cursor:pointer;width:34px;height:34px;font-size:17px;color:var(--ink);align-items:center;justify-content:center;flex:none;}
.hdr-tabs{flex:none;background:var(--bg-topbar);border-bottom:1px solid var(--line);padding:0 28px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;}
.hdr-tabs::-webkit-scrollbar{display:none;}
.hdr-tabs:empty{display:none;}
.hdr-tabs .tab-btn{font:inherit;font-size:13px;font-weight:600;padding:10px 12px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border-radius:0;}
.hdr-tabs .tab-btn:hover{color:var(--ink);}
.hdr-tabs .tab-btn.active{color:var(--ink);border-bottom-color:var(--brand);}
.tab-btn svg{flex:none;border-radius:3px;}
.tab-btn .n{font-size:10px;font-weight:700;padding:1px 7px;border-radius:99px;background:var(--idle-bg);color:var(--idle);}
.tab-btn .n.crit{background:var(--critbg);color:var(--crit);}
.tab-btn .n.warn{background:var(--warnbg);color:var(--warn);}
.content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px max(28px,calc((100% - 1680px) / 2)) 40px;background:var(--bg-body);}
.content.w-wide{padding-left:max(28px,calc((100% - 1680px) / 2));padding-right:max(28px,calc((100% - 1680px) / 2));}
.content.full-bleed{padding:0;overflow:hidden;}
.content.full-bleed iframe{width:100%;height:100%;border:0;display:block;}
.btn{border:1px solid var(--line-in);background:var(--card);color:var(--ink);border-radius:8px;min-height:36px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:background .12s,border-color .12s;}
.btn:hover{border-color:var(--brand);background:var(--hover);}
.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px;}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700;}
.btn.primary:hover{background:var(--brand-d);border-color:var(--brand-d);}
[data-theme="dark"] .btn.primary{color:#07142c;}
[data-theme="dark"] .btn.primary:hover{color:#07142c;}
.btn.crit{background:var(--card);border-color:var(--crit-line);color:var(--crit);}
.btn.crit:hover{background:var(--crit-box);border-color:var(--crit);}
.btn.sm{min-height:30px;padding:4px 10px;font-size:12px;border-radius:7px;}
.btn:disabled,.btn-mini:disabled{opacity:.45;cursor:not-allowed;}
.btn-mini{border:1px solid var(--line-in);background:var(--card);color:var(--ink-2);border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600;cursor:pointer;line-height:1.4;}
.btn-mini:hover{border-color:var(--brand);color:var(--brand);}
.btn-mini.perigo{color:var(--crit);border-color:var(--crit-line);}
.btn-mini.perigo:hover{background:var(--crit-box);border-color:var(--crit);color:var(--crit);}
.btn-mini.confirmar{background:var(--crit-solid);border-color:var(--crit-solid);color:#fff;}
.grid{display:grid;gap:16px;}
.g2{grid-template-columns:repeat(2,minmax(0,1fr));}
.g3{grid-template-columns:repeat(3,minmax(0,1fr));}
.g4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.g4>.stat{border:0;border-radius:0;box-shadow:none;}
.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);}
.panel>.ph:first-child{border-radius:14px 14px 0 0;}
.panel .ph{padding:13px 18px;border-bottom:1px solid var(--line);font-weight:700;font-size:15px;display:flex;align-items:center;flex-wrap:wrap;gap:9px;}
.panel .ph .muted{font-size:12px;font-weight:400;}
.panel .pb{padding:18px;}
.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);min-width:0;}
.stat .l{font-size:10px;color:var(--hint);font-weight:700;text-transform:uppercase;letter-spacing:.08em;}
.stat .v{font-size:26px;font-weight:700;margin-top:6px;line-height:1.15;font-variant-numeric:tabular-nums;}
.stat .d{font-size:12px;margin-top:4px;color:var(--muted);}
.stat.clickable{cursor:pointer;transition:border-color .12s,background .12s;}
.stat.clickable:hover{border-color:var(--brand);}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;}
.kpis .stat .v{font-size:30px;}
.panel .pb>.grid.g2,.panel .pb>.grid.g3{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1px;background:var(--line-2);border:1px solid var(--line-2);border-radius:10px;overflow:hidden;}
.panel .pb>.grid>.stat{border:0;border-radius:0;box-shadow:none;padding:14px 16px;border-bottom:3px solid transparent;}
.panel .pb>.grid>.stat.warn{border-bottom-color:var(--warn-dot);}
.panel .pb>.grid>.stat.crit{border-bottom-color:var(--crit-dot);}
.panel .pb>.grid>.stat.clickable:hover{background:var(--hover);}
.panel .pb>.grid>.stat .v{font-size:22px;}
.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.tool{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 14px;cursor:pointer;display:flex;align-items:flex-start;gap:12px;min-width:0;transition:border-color .12s,background .12s;}
.tool:hover{border-color:var(--brand);background:var(--hover);}
.tool .ico{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--sel);color:var(--brand);flex:none;font-size:12px;font-weight:700;}
.tool .ico svg{width:18px;height:18px;display:block;}
.tool .tx{min-width:0;flex:1;}
.tool h3{margin:0;font-size:13.5px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.tool p{margin:2px 0 0;font-size:12px;color:var(--muted);line-height:1.45;}
.grp-rot{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--hint);margin:22px 0 8px;}
.grp-rot:first-of-type{margin-top:0;}
.chip{font-size:10px;font-weight:700;padding:2px 8px;border-radius:99px;}
.chip.rw{background:var(--okbg);color:var(--ok);}
.chip.r{background:var(--idle-bg);color:var(--idle);}
.cel-click{cursor:pointer;}
.cel-click:hover{text-decoration:underline;}
.modal-overlay{position:fixed;inset:0;background:rgba(8,16,32,.55);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;}
.modal-box{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-modal);width:100%;max-width:760px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;}
.modal-head{padding:13px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:15px;}
.modal-close{background:none;border:none;color:var(--muted);font-size:16px;cursor:pointer;padding:4px 8px;border-radius:6px;}
.modal-close:hover{background:var(--seg);color:var(--ink);}
.modal-body{padding:0;overflow:auto;}
table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.45;}
th{text-align:left;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:9px 14px;border-bottom:1px solid var(--line);font-weight:700;background:var(--head);white-space:nowrap;}
td{padding:10px 14px;border-bottom:1px solid var(--line-2);vertical-align:middle;}
tr:last-child td{border-bottom:none;}
tbody tr:hover{background:var(--hover);}
.tw{overflow-x:auto;max-width:100%;}
.tw>table{min-width:100%;}
.tw.rola{max-height:calc(100vh - 290px);overflow:auto;}
.tw.rola thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px 0 var(--line);}
th.ord{cursor:pointer;user-select:none;}
th.ord:hover{color:var(--ink);}
th.ord .seta{margin-left:4px;opacity:.35;font-size:10px;}
th.ord.on{color:var(--ink);}
th.ord.on .seta{opacity:1;color:var(--brand);}
td.num,th.num{text-align:center;}
td.nulo{color:var(--dis);}
.mono{font-family:var(--tp-mono);font-size:12px;}
.mod-b365{margin-top:14px;border:1px solid var(--line);border-radius:10px;background:var(--card);overflow:hidden;}
.mod-b365>summary{cursor:pointer;list-style:none;padding:11px 16px;display:flex;align-items:center;gap:10px;font-weight:700;font-size:13px;}
.mod-b365>summary::-webkit-details-marker{display:none;}
.mod-b365>summary::after{content:"▸";margin-left:auto;color:var(--muted);font-size:13px;transition:transform .15s;}
.mod-b365[open]>summary::after{transform:rotate(90deg);}
.mod-b365>summary:hover{background:var(--hover);}
.mod-b365>summary .pill{margin-left:auto;}
.b365-titulo{display:inline-flex;align-items:center;gap:8px;}
.b365-titulo svg{flex:none;}
.mod-b365>summary::after{margin-left:10px;}
.mod-b365>div{padding:4px 16px 16px;border-top:1px solid var(--line);}
.pill{font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;line-height:1.4;}
.pill.ok{background:var(--okbg);color:var(--ok);}
.pill.warn{background:var(--warnbg);color:var(--warn);}
.pill.crit{background:var(--critbg);color:var(--crit);}
.pill.muted{background:var(--idle-bg);color:var(--idle);}
.pill.info{background:var(--info-bg);color:var(--info-ink);}
.score-ring{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;position:relative;}
.score-ring::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--card);}
.score-ring{flex-direction:column;}
.score-ring b{position:relative;font-size:22px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1;}
.score-ring .sl{position:relative;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--hint);margin-top:2px;line-height:1;}
.seg{display:inline-flex;background:var(--seg);padding:3px;border-radius:9px;gap:2px;flex-wrap:wrap;}
.seg button{font:inherit;font-size:12px;font-weight:600;padding:6px 12px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;}
.seg button:hover{color:var(--ink);}
.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(15,29,51,.12);}
.periodo-sel{display:flex;margin-bottom:12px;}
label.f{display:block;font-size:12px;font-weight:600;margin:12px 0 6px;color:var(--ink-2);}
.content input:not([type=checkbox]):not([type=radio]),.content select,.content textarea,.modal-box input:not([type=checkbox]):not([type=radio]),.modal-box select{font-size:13px;color:var(--ink);background:var(--card);border:1px solid var(--line-in);border-radius:8px;padding:8px 11px;min-height:36px;max-width:100%;}
.content input.f,.content select.f{width:100%;}
.content input::placeholder{color:var(--hint);}
.content input:not([type=checkbox]):not([type=radio]):focus,.content select:focus,.content textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus);}
.content input[type=checkbox]{accent-color:var(--brand);width:15px;height:15px;}
.muted{color:var(--muted);}
.sec-title{font-size:15px;font-weight:700;margin:24px 0 12px;}
.hint{background:var(--info-bg);border:1px solid var(--info-line);border-radius:10px;padding:11px 14px;font-size:12.5px;color:var(--ink-2);margin-bottom:16px;line-height:1.5;}
.hint code,.nota-azul code{font-family:var(--tp-mono);font-size:11.5px;}
.nota-azul{background:var(--info-bg);border:1px solid var(--info-line);color:var(--info-ink);font-size:12.5px;border-radius:10px;padding:11px 14px;line-height:1.5;}
.kv{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:13px;}
.kv:last-child{border:none;}
.kv.clickable{cursor:pointer;}
.kv.clickable:hover .k{color:var(--brand);}
.kv .k{color:var(--muted);font-weight:500;}
.kv .v{font-weight:600;color:var(--ink);text-align:right;}
.noaccess{text-align:center;padding:70px 20px;color:var(--muted);}
.noaccess .ic{font-size:44px;}
.noaccess h2{color:var(--ink);margin:14px 0 6px;font-size:20px;}
.ro-note{background:var(--warn-box);border:1px solid var(--warn-line);color:var(--warn);font-size:12.5px;border-radius:10px;padding:11px 14px;margin-top:14px;line-height:1.5;}
.masked{font-family:var(--tp-mono);font-size:12px;letter-spacing:.5px;}
.conn-dot{width:9px;height:9px;border-radius:50%;display:inline-block;}
.ok-txt{color:var(--ok);}
.warn-txt{color:var(--warn);}
.crit-txt{color:var(--crit);}
.toast{position:fixed;bottom:24px;left:50%;background:var(--toast-bg);color:var(--toast-ink);padding:11px 14px 11px 18px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.28);font-size:13px;z-index:1100;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 32px);transform:translate(-50%,16px);opacity:0;pointer-events:none;transition:transform .2s,opacity .2s;}
.toast.show{transform:translate(-50%,0);opacity:1;pointer-events:auto;}
.toast button{font:inherit;font-size:12px;font-weight:600;background:transparent;color:inherit;border:1px solid currentColor;border-radius:7px;padding:3px 10px;cursor:pointer;opacity:.85;}
.toast button:hover{opacity:1;}
.hidden{display:none;}
.filtros{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:12px;}
.filtros .busca{flex:1 1 220px;min-width:0;max-width:340px;}
.filtros .busca input{width:100%;}
.filtros .cont{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap;}
.filtros label.chk{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-2);cursor:pointer;}
.legenda{font-size:12px;color:var(--muted);margin:0 0 12px;}
.legenda summary{cursor:pointer;display:inline;list-style:none;}
.legenda summary::-webkit-details-marker{display:none;}
.legenda .res{margin-right:6px;}
.legenda .abre{color:var(--link);font-weight:600;cursor:pointer;}
.legenda[open] .abre::after{content:" ▴";}
.legenda:not([open]) .abre::after{content:" ▾";}
.legenda dl{margin:10px 0 0;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;}
.legenda dt{font-weight:700;color:var(--ink);}
.legenda dd{margin:0;}
@media (max-width:560px){.legenda dl{grid-template-columns:1fr;gap:2px;}.legenda dd{margin-bottom:6px;}}
.saud{margin:0 0 16px;}
.saud h2{margin:0;font-size:22px;font-weight:700;}
.saud p{margin:2px 0 0;font-size:13px;color:var(--muted);}
.cli-top{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:20px;}
.cli-top .ring-wrap{cursor:pointer;flex:none;}
.cli-top .ring-wrap[hidden]{display:none;}
.cli-top .corpo{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:8px;}
.cli-top select{align-self:flex-start;max-width:100%;height:38px;padding:0 34px 0 12px!important;border-radius:9px!important;font-size:16px!important;font-weight:700;cursor:pointer;}
.cli-top .drivers{display:flex;flex-wrap:wrap;gap:6px;}
.cli-top .nota{font-size:12px;color:var(--muted);max-width:260px;}
.cli-top .nota[hidden]{display:none;}
.aud-dia{display:flex;align-items:center;gap:10px;padding:9px 18px;background:var(--head);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.aud-dia:first-child{border-top:0;}
.aud-dia .n{margin-left:auto;font-weight:600;text-transform:none;letter-spacing:0;font-size:12px;}
.aud-lin{display:grid;grid-template-columns:48px 28px minmax(0,1.1fr) minmax(0,2fr) auto;gap:12px;align-items:center;padding:9px 18px;border-bottom:1px solid var(--line-2);font-size:13px;}
.aud-lin:hover{background:var(--hover);}
.aud-lin .h{font-family:var(--tp-mono);font-size:12px;color:var(--muted);}
.aud-av{width:26px;height:26px;border-radius:50%;background:var(--seg);color:var(--ink-2);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.aud-av.eu{background:var(--brand);color:#fff;}
[data-theme="dark"] .aud-av.eu{color:#07142c;}
.aud-lin .quem{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.aud-lin .acao{min-width:0;color:var(--ink-2);word-break:break-word;}
.aud-lin .acao .alvo{color:var(--muted);}
.aud-lin .acao .rep{color:var(--muted);font-weight:600;}
@media (max-width:760px){
  .aud-lin{grid-template-columns:44px 26px minmax(0,1fr) auto;row-gap:2px;padding:9px 14px;}
  .aud-lin .acao{grid-column:3/-1;}
}
.vazio{padding:22px 18px;font-size:13px;color:var(--muted);}
.cfg-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:14px 18px;border-bottom:1px solid var(--line);}
.cfg-bar .sp{margin-left:auto;}
.cfg-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:14px 18px;background:var(--head);border-bottom:1px solid var(--line);align-items:end;}
.cfg-form label{display:block;font-size:12px;font-weight:600;color:var(--ink-2);}
.cfg-form label>*:not(.t){display:block;margin-top:5px;width:100%;}
.cfg-form .acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.cfg-form .acoes>*{width:auto!important;margin-top:0!important;}
.sufixo{display:flex!important;align-items:stretch;}
.sufixo input{flex:1;min-width:0;border-radius:8px 0 0 8px!important;}
.sufixo span{display:flex;align-items:center;padding:0 10px;border:1px solid var(--line-in);border-left:0;border-radius:0 8px 8px 0;background:var(--seg);color:var(--muted);font-size:12px;white-space:nowrap;}
.setor-sel{padding:4px 8px!important;min-height:30px!important;font-size:12.5px!important;}
.heat{border-collapse:separate;border-spacing:3px;width:auto;min-width:0;}
.heat th{background:none;border:0;padding:0;font-size:11px;text-transform:none;letter-spacing:0;color:var(--ink-2);font-weight:600;vertical-align:bottom;}
.heat th.v{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;height:128px;text-align:left;padding-bottom:4px;}
.heat td{padding:0;border:0;}
.heat td.rot{padding-right:12px;white-space:nowrap;font-size:13px;font-weight:600;}
.heat td.rot small{font-weight:400;color:var(--muted);font-size:11.5px;margin-left:6px;}
.heat tbody tr:hover{background:none;}
.cel{display:block;width:24px;height:24px;border-radius:4px;background:var(--line-2);}
.cel.r{background:#cfe0fa;}
.cel.rw{background:var(--brand);}
[data-theme="dark"] .cel.r{background:#2c4c80;}
[data-theme="dark"] .cel{background:#1b2a45;}
.leg-heat{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--muted);padding:12px 18px 0;}
.leg-heat span{display:inline-flex;align-items:center;gap:6px;}
.leg-heat i{width:12px;height:12px;border-radius:3px;display:inline-block;}
.sino{font-weight:700;}
.login{position:fixed;inset:0;z-index:100;display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);
  background:#f4f6f9;color:#0f1620;}
.login-side{position:relative;overflow:hidden;box-sizing:border-box;
  background:#08172b;color:#fff;
  padding:clamp(32px,3.6vw,56px) clamp(28px,4.4vw,68px);
  display:flex;flex-direction:column;justify-content:space-between;gap:48px;}
.login-side .tpm,.erro-pg .tpm{position:absolute;pointer-events:none;}
.login-side .tpm-a,.erro-pg .tpm-a{inset:-25%;animation:tpBlobA 22s ease-in-out infinite;
  background:radial-gradient(closest-side,rgba(56,134,232,.5),rgba(8,23,43,0) 72%);}
.login-side .tpm-b,.erro-pg .tpm-b{inset:-20%;animation:tpBlobB 28s ease-in-out infinite;
  background:radial-gradient(closest-side,rgba(18,74,152,.55),rgba(8,23,43,0) 70%);}
.login-side .tpm-grid,.erro-pg .tpm-grid{inset:0;opacity:.7;background-size:92px 92px;
  animation:tpGridDrift 24s linear infinite;
  background-image:linear-gradient(to right,rgba(255,255,255,.05) 1px,transparent 1px),
                   linear-gradient(to bottom,rgba(255,255,255,.04) 1px,transparent 1px);}
.login-side .tpm-scan{left:0;right:0;height:34%;
  animation:tpScan 11s cubic-bezier(.4,0,.6,1) infinite;
  background:linear-gradient(to bottom,rgba(120,180,255,0) 0%,rgba(120,180,255,.09) 50%,rgba(120,180,255,0) 100%);}
.login-side .tpm-borda{top:0;right:0;bottom:0;width:1px;
  background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.2) 45%,rgba(255,255,255,0) 100%);}
.lbrand{position:relative;display:flex;align-items:center;gap:13px;}
.lbrand .mono-tp{width:40px;height:40px;border-radius:11px;flex:none;
  background:linear-gradient(160deg,#fff 0%,#d9e6f7 100%);
  display:grid;place-items:center;padding:6px;}
.lbrand .mono-tp img{width:100%;height:100%;object-fit:contain;display:block;}
.lbrand .t{font-size:16px;font-weight:500;letter-spacing:-.01em;}
.lbrand .risco{width:1px;height:18px;background:rgba(255,255,255,.2);}
.lbrand .s{font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(255,255,255,.8);font-family:var(--tp-mono);}
.login-hero{position:relative;display:flex;flex-direction:column;gap:26px;}
.login-hero h2{margin:0;max-width:13em;font-size:clamp(32px,3.9vw,54px);
  line-height:1.08;font-weight:500;letter-spacing:-.035em;text-wrap:pretty;}
.login-hero p{margin:0;max-width:30em;font-size:clamp(15px,1.2vw,17px);
  line-height:1.62;color:rgba(255,255,255,.78);text-wrap:pretty;}
.login-hero .trilha{position:relative;width:210px;height:2px;border-radius:2px;
  background:rgba(255,255,255,.14);overflow:hidden;}
.login-hero .trilha i{position:absolute;top:0;bottom:0;width:34%;
  animation:tpTrack 4.2s cubic-bezier(.5,0,.5,1) infinite;
  background:linear-gradient(to right,rgba(111,180,255,0),#6fb4ff,rgba(111,180,255,0));}
.login-rodape{position:relative;display:flex;flex-direction:column;gap:26px;}
.login-feats{display:flex;flex-wrap:wrap;gap:10px 28px;}
.login-feats div{display:flex;align-items:center;gap:10px;font-size:13.5px;
  color:rgba(255,255,255,.86);}
.login-feats .ponto{position:relative;width:6px;height:6px;display:inline-block;flex:none;}
.login-feats .ponto i,.login-feats .ponto b{position:absolute;inset:0;border-radius:50%;}
.login-feats .ponto i{background:#6fb4ff;animation:tpPulse 2.8s ease-in-out infinite;}
.login-feats .ponto b{border:1px solid #6fb4ff;animation:tpRing 2.8s ease-out infinite;}
.login-feats div:nth-child(2) .ponto i,.login-feats div:nth-child(2) .ponto b{animation-delay:.5s;}
.login-feats div:nth-child(3) .ponto i,.login-feats div:nth-child(3) .ponto b{animation-delay:1s;}
.login-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;
  font-family:var(--tp-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(255,255,255,.62);}
.login-foot .barra{color:rgba(255,255,255,.28);}
.login-form-wrap{display:flex;align-items:flex-start;justify-content:center;
  overflow-y:auto;
  box-sizing:border-box;padding:clamp(40px,5vw,72px) clamp(24px,4vw,56px);}
.login-card{width:100%;max-width:392px;display:flex;flex-direction:column;
  gap:30px;margin-block:auto;}
.login-card .eyebrow{display:flex;align-items:center;gap:7px;
  font-family:var(--tp-mono);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:#5d6875;}
.login-card .caret{width:7px;height:13px;background:#1d5fb4;display:inline-block;
  animation:tpCaret 1.15s step-end infinite;}
.login-card h3{margin:0;font-size:27px;font-weight:500;letter-spacing:-.025em;
  color:#0f1620;}
.login-card .sub{margin:0;font-size:14.5px;line-height:1.55;color:#5b6675;}
.login-card .topo{display:flex;flex-direction:column;gap:10px;}
.btn-ms{position:relative;overflow:hidden;box-sizing:border-box;
  border:1px solid #0d3a7d;background:#0d3a7d;color:#fff;height:50px;
  border-radius:10px;font-family:inherit;font-size:15px;font-weight:500;
  display:flex;align-items:center;justify-content:center;gap:12px;
  cursor:pointer;text-decoration:none;
  box-shadow:0 1px 2px rgba(10,28,51,.18),0 8px 20px -12px rgba(10,28,51,.5);
  transition:background .16s ease,box-shadow .16s ease,transform .12s ease;}
.btn-ms:hover{background:#0a2f68;color:#fff;transform:translateY(-1px);
  box-shadow:0 3px 6px rgba(10,28,51,.22),0 16px 28px -14px rgba(10,28,51,.55);}
.btn-ms:active{transform:translateY(1px);}
.btn-ms .sheen{position:absolute;top:0;bottom:0;width:42%;pointer-events:none;
  animation:tpSheen 5.2s cubic-bezier(.4,0,.4,1) infinite;
  background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.22) 50%,rgba(255,255,255,0) 100%);}
.btn-ms .ms{display:grid;grid-template-columns:8px 8px;grid-template-rows:8px 8px;
  gap:2px;flex:none;}
.login-sep{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;}
.login-sep i{height:1px;background:#e0e5eb;}
.login-sep span{font-family:var(--tp-mono);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:#64707e;}
.login-form{display:flex;flex-direction:column;gap:20px;}
.login-form label.campo{display:flex;flex-direction:column;gap:8px;}
.login-form .rot{font-size:12.5px;font-weight:500;color:#3a4553;}
.login-form .rot-linha{display:flex;align-items:baseline;justify-content:space-between;gap:12px;}
.login-form input{height:48px;box-sizing:border-box;padding:0 14px;
  border:1px solid #d3d9e1;border-radius:10px;background:#fff;
  font-family:inherit;font-size:15px;color:#0f1620;outline:none;
  box-shadow:0 1px 1px rgba(15,22,32,.03);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
.login-form input:focus{border-color:#1d5fb4;transform:translateY(-1px);
  box-shadow:0 0 0 3px rgba(29,95,180,.16);}
.login-form input::placeholder{color:#a6aeb9;}
.btn-senha{height:48px;border-radius:10px;border:1px solid #cdd4dd;background:#fff;
  color:#1a2431;font-family:inherit;font-size:15px;font-weight:500;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:8px;
  transition:background .16s ease,border-color .16s ease,transform .12s ease;}
.btn-senha:hover:not(:disabled){background:#eef1f5;border-color:#b6bfcb;transform:translateY(-1px);}
.btn-senha:active:not(:disabled){transform:translateY(1px);}
.btn-senha:disabled{opacity:.65;cursor:default;}
.login-card .aviso{margin:0;padding-top:14px;border-top:1px solid #e6eaf0;
  font-size:12.5px;line-height:1.6;color:#626d7a;}
.login a:not([class]){color:#1d5fb4;text-decoration:none;font-size:12.5px;}
.login a:not([class]):hover{color:#133f7c;text-decoration:underline;}
.lk-suporte{appearance:none;border:0;background:none;padding:0;cursor:pointer;
  font-family:inherit;font-size:12.5px;color:#1d5fb4;text-decoration:none;}
.lk-suporte:hover{color:#133f7c;text-decoration:underline;}
.lk-suporte:focus-visible{outline:2px solid #1d5fb4;outline-offset:3px;border-radius:3px;}
.sp-ov{position:fixed;inset:0;z-index:60;display:grid;
  place-items:start center;align-content:safe center;overflow-y:auto;
  background:rgba(8,14,24,.55);padding:20px;}
.sp-ov[hidden]{display:none;}
.sp-bx{position:relative;width:min(440px,100%);background:#fff;
  border-radius:16px;overflow:hidden;
  box-shadow:0 32px 80px -20px rgba(6,16,30,.55);
  animation:spEntra .22s cubic-bezier(.2,.8,.3,1);}
@keyframes spEntra{from{opacity:0;transform:translateY(10px) scale(.985);}
  to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.sp-bx{animation:none;}}
.sp-top{padding:26px 28px 22px;color:#fff;
  background:linear-gradient(180deg,#0f2f57 0%,#123a6b 100%);}
.sp-x{position:absolute;top:18px;right:18px;appearance:none;border:0;
  width:30px;height:30px;border-radius:8px;display:grid;place-items:center;
  background:none;cursor:pointer;font-size:18px;line-height:1;
  color:rgba(255,255,255,.7);}
.sp-x:hover{background:rgba(255,255,255,.14);color:#fff;}
.sp-x:focus-visible{outline:2px solid #fff;outline-offset:1px;}
.sp-selo{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;
  border-radius:999px;background:rgba(255,255,255,.12);
  font-family:var(--tp-mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;}
.sp-selo i{width:6px;height:6px;border-radius:50%;background:#94a3b8;}
.sp-selo.on i{background:#4ade80;}
.sp-tit{margin:14px 0 6px;font-size:22px;font-weight:600;letter-spacing:-.02em;}
.sp-sub{margin:0;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.72);}
.sp-cards{padding:20px 28px 8px;display:flex;flex-direction:column;gap:10px;}
.sp-card{display:flex;align-items:center;gap:14px;padding:13px 14px;
  border:1px solid #e4e9ef;border-radius:11px;transition:border-color .15s ease,background .15s ease;}
.sp-card:hover{border-color:#c3cfdd;background:#fafbfd;}
.sp-alvo{display:flex;align-items:center;gap:14px;flex:1;min-width:0;
  text-decoration:none;color:inherit;}
.sp-alvo:focus-visible{outline:2px solid #1d5fb4;outline-offset:3px;border-radius:8px;}
.sp-ic{width:34px;height:34px;flex:none;border-radius:9px;background:#eef2f7;
  display:grid;place-items:center;}
.sp-ic-wa{background:#e6f6ec;}
.sp-ic-tp{background:#0f2f57;padding:6px;}
.sp-ic-tp img{width:100%;height:100%;object-fit:contain;display:block;}
.sp-txt{display:flex;flex-direction:column;gap:3px;min-width:0;}
.sp-rot{font-family:var(--tp-mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:#8393a6;}
.sp-val{font-size:15px;font-weight:600;color:#0d1b2e;}
.sp-copiar,.sp-abrir{flex:none;font-family:inherit;font-size:12px;
  font-weight:600;color:#1d4ed8;padding:7px 11px;border-radius:7px;
  background:#eef2fd;border:0;}
.sp-copiar{cursor:pointer;}
.sp-copiar:hover{background:#e0e8fb;}
.sp-copiar:focus-visible{outline:2px solid #1d5fb4;outline-offset:1px;}
.sp-pe{padding:14px 28px 26px;display:flex;flex-direction:column;gap:14px;}
.sp-cta{display:flex;align-items:center;justify-content:center;gap:10px;
  background:#123a6b;color:#fff;padding:14px;border-radius:10px;
  font-size:14.5px;font-weight:600;text-decoration:none;
  transition:background .15s ease;}
.sp-cta:hover{background:#0f2f57;}
.sp-cta:focus-visible{outline:2px solid #123a6b;outline-offset:2px;}
.sp-nota{margin:0;font-size:12.5px;line-height:1.6;color:#6a7789;}
.sp-nota a{color:#1d4ed8;}
.login .err{background:#fdeceb;color:#a3261c;font-size:12.5px;padding:10px 12px;
  border-radius:9px;border:1px solid #f0c2bd;display:none;line-height:1.5;}
.login .err.show{display:block;}
.spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.4);
  border-top-color:#fff;border-radius:50%;animation:sp .7s linear infinite;
  display:inline-block;}
.btn-senha .spin{border-color:rgba(26,36,49,.25);border-top-color:#1a2431;}
@keyframes sp{to{transform:rotate(360deg);}}
@keyframes tpRise{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@keyframes tpFade{from{opacity:0;}to{opacity:1;}}
@keyframes tpBlobA{0%{transform:translate3d(-8%,-4%,0) scale(1);}50%{transform:translate3d(12%,10%,0) scale(1.18);}100%{transform:translate3d(-8%,-4%,0) scale(1);}}
@keyframes tpBlobB{0%{transform:translate3d(10%,12%,0) scale(1.1);}50%{transform:translate3d(-10%,-8%,0) scale(.94);}100%{transform:translate3d(10%,12%,0) scale(1.1);}}
@keyframes tpGridDrift{from{background-position:0 0,0 0;}to{background-position:92px 0,0 92px;}}
@keyframes tpScan{0%{transform:translateY(-30%);opacity:0;}12%{opacity:1;}88%{opacity:1;}100%{transform:translateY(130%);opacity:0;}}
@keyframes tpPulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.35;transform:scale(.72);}}
@keyframes tpRing{0%{transform:scale(1);opacity:.5;}100%{transform:scale(3.6);opacity:0;}}
@keyframes tpSheen{0%{transform:translateX(-140%);}55%,100%{transform:translateX(240%);}}
@keyframes tpCaret{0%,45%{opacity:1;}50%,95%{opacity:0;}100%{opacity:1;}}
@keyframes tpTrack{0%{transform:translateX(-100%);}100%{transform:translateX(300%);}}
.tp-rise{animation:tpRise 700ms cubic-bezier(.2,.72,.16,1) both;}
.tp-fade{animation:tpFade 1000ms ease both;}
.d80{animation-delay:80ms;}.d110{animation-delay:110ms;}.d130{animation-delay:130ms;}
.d180{animation-delay:180ms;}.d210{animation-delay:210ms;}.d230{animation-delay:230ms;}
.d260{animation-delay:260ms;}.d280{animation-delay:280ms;}.d340{animation-delay:340ms;}
.erro-pg{position:fixed;inset:0;overflow:hidden;box-sizing:border-box;
  background:#08172b;color:#fff;display:grid;place-items:center;
  padding:clamp(28px,5vw,64px);}
.erro-pg .caixa{position:relative;width:100%;max-width:560px;
  display:flex;flex-direction:column;gap:28px;}
.erro-pg .cod{font-family:var(--tp-mono);font-size:clamp(56px,11vw,104px);
  line-height:.9;font-weight:500;letter-spacing:-.04em;margin:0;
  color:#6fb4ff;font-variant-numeric:tabular-nums;}
.erro-pg h1{margin:0;font-size:clamp(24px,3.2vw,34px);font-weight:500;
  letter-spacing:-.03em;line-height:1.14;text-wrap:balance;}
.erro-pg p{margin:0;max-width:44em;font-size:15.5px;line-height:1.62;
  color:rgba(255,255,255,.78);text-wrap:pretty;}
.erro-pg .acoes{display:flex;flex-wrap:wrap;gap:12px;}
.erro-pg .b1,.erro-pg .b2{height:46px;padding:0 20px;border-radius:10px;
  display:inline-flex;align-items:center;gap:9px;font-size:14.5px;
  font-weight:500;text-decoration:none;box-sizing:border-box;
  transition:background .16s ease,border-color .16s ease,transform .12s ease;}
.erro-pg .b1{background:#fff;color:#0a2b5e;border:1px solid #fff;}
.erro-pg .b1:hover{background:#e2ecf9;color:#0a2b5e;transform:translateY(-1px);}
.erro-pg .b2{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.38);}
.erro-pg .b2:hover{background:rgba(255,255,255,.08);color:#fff;
  border-color:rgba(255,255,255,.45);transform:translateY(-1px);}
.erro-pg .caminho{font-family:var(--tp-mono);font-size:12px;
  color:rgba(255,255,255,.72);word-break:break-all;
  padding-top:16px;border-top:1px solid rgba(255,255,255,.12);}
@media (prefers-reduced-motion:reduce){
  .tp-rise,.tp-fade,.login-side .tpm,.erro-pg .tpm,.login-feats .ponto i,.login-feats .ponto b,
  .btn-ms .sheen,.login-card .caret,.login-hero .trilha i{animation:none!important;}
  .login-card .caret{opacity:1;}
}
.filtro-linha{display:flex;flex-wrap:wrap;gap:8px;padding:14px 18px 0;}
.chip-filtro{font:inherit;font-size:12.5px;line-height:1;cursor:pointer;
  padding:7px 13px;border-radius:999px;border:1px solid var(--line);
  background:var(--card);color:var(--ink);
  transition:background .12s ease,border-color .12s ease,color .12s ease;}
.chip-filtro b{font-weight:600;font-variant-numeric:tabular-nums;
  margin-left:3px;opacity:.55;}
.chip-filtro:hover{border-color:var(--brand);}
.chip-filtro:focus-visible{outline:2px solid var(--brand);outline-offset:2px;}
.chip-filtro.on{background:var(--brand);border-color:var(--brand);color:#fff;}
.chip-filtro.on b{opacity:.8;}
@media (max-width:768px){
  .login{grid-template-columns:1fr;grid-template-rows:auto auto;
    align-content:start;overflow-y:auto;}
  .login-side{min-height:auto;gap:0;justify-content:center;
    padding:16px clamp(20px,6vw,28px);}
  .login-hero,.login-feats,.login-foot{display:none;}
  .login-side .tpm-borda,.login-side .tpm-scan{display:none;}
  .lbrand .mono-tp{width:34px;height:34px;border-radius:9px;padding:5px;}
  .login-form-wrap{padding:34px clamp(20px,6vw,28px) 44px;}
}
@media (max-width:1040px) and (min-width:769px){
  .login{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;}
  .login-side{min-height:auto;gap:28px;}
  .login-hero h2{font-size:clamp(26px,4.6vw,36px);}
  .login-side .tpm-scan{display:none;}
}
@media (max-height:700px) and (min-width:769px){
  .login-form-wrap{padding-block:28px;}
  .login-card{gap:22px;}
  .login-side{padding-block:26px;gap:24px;}
  .login-hero{gap:18px;}
  .login-hero h2{font-size:clamp(26px,3vw,38px);}
}
@media (max-height:644px) and (min-width:769px){
  .login-form-wrap{padding-block:20px;}
  .login-card{gap:18px;}
}
.atencao{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden;margin:20px 0 0;}
.atencao .cabeca{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px;}
.atencao .cabeca .tt{display:flex;flex-direction:column;gap:2px;}
.atencao .cabeca h3{margin:0;font-size:15px;font-weight:700;}
.atencao .cabeca .regra{font-size:12px;color:var(--muted);}
.atencao .cabeca .ir{font-size:12.5px;font-weight:600;color:var(--link);cursor:pointer;}
.atencao .cabeca .ir:hover{text-decoration:underline;}
.atencao .cab-tab,.atencao .emp{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(0,1.35fr) 64px;gap:14px;align-items:center;padding:10px 18px;}
.atencao .cab-tab{background:var(--head);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:8px;padding-bottom:8px;}
.atencao .cab-tab .fim,.atencao .emp .quando{text-align:right;}
.atencao .emp{border-bottom:1px solid var(--line-2);cursor:pointer;transition:background .12s;}
.atencao .emp:last-of-type{border-bottom:0;}
.atencao .emp:hover{background:var(--hover);}
.atencao .nota{display:flex;align-items:center;}
.atencao .nota.vazia{color:var(--muted);font-weight:700;}
.atencao .quem b{display:block;font-size:13px;font-weight:600;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.atencao .ocor{display:flex;flex-wrap:wrap;gap:6px;}
.atencao .oc{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap;}
.atencao .oc i{width:5px;height:5px;border-radius:50%;background:currentColor;flex:none;}
.atencao .oc.grave{background:var(--critbg);color:var(--crit);}
.atencao .oc.leve{background:var(--warnbg);color:var(--warn);}
.atencao .emp .quando{font-size:12px;color:var(--muted);white-space:nowrap;}
.atencao .emp .quando.velho{color:var(--crit);font-weight:700;}
.atencao .rodape{padding:11px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);}
.atencao .rodape b{color:var(--link);cursor:pointer;font-weight:600;}
.atencao .rodape b:hover{text-decoration:underline;}
.atencao .vazio{padding:18px;font-size:13px;color:var(--muted);}
@media (max-width:820px){
  .atencao .cab-tab{display:none;}
  .atencao .emp{grid-template-columns:64px minmax(0,1fr);row-gap:8px;}
  .atencao .emp .ocor{grid-column:1/-1;}
  .atencao .emp .quando{grid-column:1/-1;text-align:left;}
}
.tarja-atencao{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;background:var(--crit-box);border-top:1px solid var(--crit-line);border-bottom:1px solid var(--crit-line);padding:11px 20px;}
.tarja-atencao .txt{flex:1;min-width:220px;font-size:13px;line-height:1.5;}
.tarja-atencao .txt b{font-weight:700;color:var(--crit);}
.tarja-atencao button{border:1px solid var(--crit-line);background:var(--card);color:var(--crit);border-radius:8px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;}
.tarja-atencao button:hover{background:var(--crit-solid);border-color:var(--crit-solid);color:#fff;}
.tarja-atencao .txt i{font-style:normal;color:var(--muted);font-size:12px;}
.tarja-atencao .rec{display:block;margin-top:4px;font-size:12px;color:var(--muted);}
@media (max-width:1040px){
  .content,.content.w-wide{padding-left:20px;padding-right:20px;}
}
@media (max-width:768px){
  .app{grid-template-columns:minmax(0,1fr);}
  .sidebar{position:fixed;left:0;top:0;width:240px;height:100%;z-index:999;transform:translateX(-100%);transition:transform .25s ease;box-shadow:2px 0 8px rgba(0,0,0,.25);}
  .sidebar.open{transform:translateX(0);}
  .sidebar-toggle{display:inline-flex;}
  .topbar{padding:0 14px;gap:8px;}
  .topbar .crumb{display:none;}
  .role-tag{display:none;}
  .topbar{flex-wrap:wrap;height:auto;min-height:60px;padding-top:8px;padding-bottom:8px;}
  .hdr-acoes{flex:1 1 100%;order:9;flex-wrap:wrap;}
  .hdr-tabs{padding:0 14px;}
  .content,.content.w-wide{padding:16px 14px 32px;}
  .content.full-bleed{padding:0;}
  .g2,.g3{grid-template-columns:minmax(0,1fr);}
  .filtros .busca{max-width:none;}
  .filtros .cont{margin-left:0;}
  .tw.rola{max-height:calc(100vh - 250px);}
  .cli-top .corpo{min-width:0;flex-basis:100%;}
  .cli-top .nota{max-width:none;}
}
[data-theme="dark"] .chip-filtro.on{color:#07142c;}
.content .spin,.modal-box .spin{border-color:var(--line-in);border-top-color:var(--brand);}
.nulo-n{color:var(--hint);font-weight:500;}
.filtros .periodo-sel{margin:0;}
[hidden]{display:none!important;}
.stat .v .de{font-size:13px;font-weight:400;color:var(--hint);}
.tab-btn .bd{font-family:var(--tp-mono,ui-monospace,Consolas,monospace);font-size:10px;font-weight:500;color:var(--hint);}
.pill.cel-click{cursor:pointer;}
.pill.cel-click:hover{filter:brightness(.96);}
.pill.muted.sem-saber{color:var(--hint);}
.pill.cel-click:hover{text-decoration:none;}
.vc-sec{overflow:hidden;}
.vc-ph{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--line-2);flex-wrap:wrap;}
.vc-ph .tt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.vc-ph .t{font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:8px;}
.vc-ph .s{font-size:12px;color:var(--muted);}
.vc-ph .periodo-sel{margin:0;}
.vc-sec .tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1px;background:var(--line-2);}
.vc-sec .tiles>.stat{border:0;border-radius:0;box-shadow:none;padding:14px 18px;display:flex;flex-direction:column;gap:4px;}
.vc-sec .tiles>.stat .v{font-size:22px;margin-top:0;line-height:1.15;}
.vc-sec .tiles>.stat .d{font-size:11px;margin-top:0;min-height:15px;}
.vc-sec .tiles>.stat.warn{box-shadow:inset 0 -2px 0 var(--warn-dot);}
.vc-sec .tiles>.stat.crit{box-shadow:inset 0 -2px 0 var(--crit-dot);}
.vc-sec .tiles>.stat.clickable:hover{background:var(--hover);border:0;}
.vc-sec .tiles>.stat.crit .v{color:var(--crit);}
.vc-sec .tiles>.stat.warn .v{color:var(--warn);}
.vc-inline{border-top:1px solid var(--line-2);background:var(--head);padding:14px 20px 16px;}
.vc-inline[hidden]{display:none;}
.vc-inline .ih{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:13px;}
.vc-inline .ifechar{font:inherit;font-size:12px;font-weight:600;color:var(--muted);background:none;border:0;cursor:pointer;padding:0;}
.vc-inline .ifechar:hover{color:var(--ink);}
.vc-inline .ib{max-height:420px;overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:10px;}
.vc-nota{padding:10px 20px;border-top:1px solid var(--line-2);font-size:12px;color:var(--muted);}
.nota-azul.vc-nota{margin:0;border-radius:0;border-width:1px 0 0 0;padding:12px 20px;}
.vc-msg{padding:16px 20px;font-size:13px;color:var(--muted);}
.cfg-2col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:16px;align-items:start;}
.cfg-sec{overflow:hidden;}
.cfg-cab{display:flex;flex-direction:column;gap:2px;padding:14px 20px;border-bottom:1px solid var(--line-2);}
.cfg-cab .t{font-size:15px;font-weight:700;}
.cfg-cab .s{font-size:12px;color:var(--muted);}
.cfg-lin{display:flex;align-items:center;gap:12px;padding:12px 20px;border-top:1px solid var(--line-2);font-size:13px;}
.cfg-cab+.cfg-lin{border-top:0;}
.cfg-lin .nm{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;}
.cfg-lin .st{font-size:12px;color:var(--muted);}
.cfg-lin .st.deg{color:var(--warn);font-weight:700;}
.cfg-lin .quando{font-size:12px;color:var(--hint);min-width:70px;text-align:right;}
.cfg-lin.cofre{display:grid;grid-template-columns:minmax(150px,1fr) 100px minmax(90px,auto);gap:12px;padding:11px 20px;}
.cfg-lin.cofre .mono{overflow:hidden;text-overflow:ellipsis;}
.cfg-lin.cofre .esc{font-size:12px;color:var(--ink-2);}
.cfg-lin.cofre .rot{font-size:12px;color:var(--muted);text-align:right;}
@media (max-width:480px){ .cfg-lin.cofre{grid-template-columns:minmax(0,1fr) auto;} .cfg-lin.cofre .rot{grid-column:1/-1;text-align:left;} }
#acForm{border-top:1px solid var(--line);border-bottom:0;}
