:root{--bg:#F4F6F3;--card:#fff;--ink:#16232B;--mute:#5B6B75;--line:#E0E5E1;--acc:#0E6B5C;--accT:#fff;
--okB:#D6EFE2;--okT:#0B5A36;--wB:#FBEDC2;--wT:#7A5200;--hB:#F9D7C5;--hT:#8A3410;--bB:#F5C4C4;--bT:#8B1A1A;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0F1A1F;--card:#182630;--ink:#E8EEF0;--mute:#9CB0BA;--line:#27383F;--acc:#3DBBA6;--accT:#06241F;
--okB:#14392A;--okT:#8EE0B5;--wB:#40330E;--wT:#F2CF7A;--hB:#4A2A18;--hT:#F5B48F;--bB:#4A1D1D;--bT:#F5A3A3}}
:root[data-theme="dark"]{--bg:#0F1A1F;--card:#182630;--ink:#E8EEF0;--mute:#9CB0BA;--line:#27383F;--acc:#3DBBA6;--accT:#06241F;
--okB:#14392A;--okT:#8EE0B5;--wB:#40330E;--wT:#F2CF7A;--hB:#4A2A18;--hT:#F5B48F;--bB:#4A1D1D;--bT:#F5A3A3}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 13px/1.4 Figtree,system-ui,-apple-system,"Segoe UI",sans-serif}
main{max-width:420px;margin:0 auto;padding:12px 12px 72px}
h1{font-size:17.5px;font-weight:800;margin:0;letter-spacing:-0.22px}
h2{font-size:13.5px;font-weight:800;margin:0 0 6px}
button{font:inherit;cursor:pointer;border:0;border-radius:7.5px;padding:9px 12px;background:var(--acc);color:var(--accT);font-weight:600;min-height:36px}
button:disabled{opacity:.45;cursor:not-allowed}
button.g{background:transparent;color:var(--ink);border:1px solid var(--line)}
button.d{background:var(--bB);color:var(--bT)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:2.25px solid var(--acc);outline-offset:1.5px}
input,textarea,select{font:inherit;width:100%;padding:9px;border-radius:7.5px;border:1px solid var(--line);background:var(--card);color:var(--ink);min-height:36px}
label{display:block;font-size:11px;color:var(--mute);margin:9px 0 3px}
.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10.5px}
.sum{display:grid;grid-template-columns:1fr 1fr;gap:7.5px;margin-bottom:10.5px}
.box{background:var(--card);border:1px solid var(--line);border-radius:10.5px;padding:9px 10.5px}
.box b{display:block;font-size:16px;font-weight:800}
.box span{font-size:10.5px;color:var(--mute)}
.chips{display:flex;gap:6px;overflow-x:auto;padding:7.5px 0}
.chip{white-space:nowrap;padding:6px 10.5px;min-height:36px;border-radius:74.25px;background:var(--card);color:var(--ink);border:1px solid var(--line);font-weight:600}
.chip.on{background:var(--ink);color:var(--bg)}
.cl{display:flex;gap:9px;align-items:center;width:100%;text-align:left;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:10.5px;padding:10.5px;margin-bottom:7.5px}
.cl .n{flex:1;min-width:0}.cl .n b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl .n span{font-size:10.5px;color:var(--mute)}
.sc{width:34.5px;height:34.5px;border-radius:50%;display:grid;place-items:center;font-weight:800;flex:none}
.Baixo,.ok{background:var(--okB);color:var(--okT)}.Médio,.warn{background:var(--wB);color:var(--wT)}
.Alto{background:var(--hB);color:var(--hT)}.Crítico,.bad{background:var(--bB);color:var(--bT)}
.tag{display:inline-block;padding:2.25px 7.5px;border-radius:74.25px;font-size:10.5px;font-weight:600}
.fab{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));box-shadow:0 3px 10.5px rgba(0,0,0,.25);border-radius:74.25px;padding:10.5px 15px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:7.5px;margin:9px 0}
.ver{border-radius:10.5px;padding:10.5px;margin:9px 0}.ver b{font-size:15px;display:block}
.row{display:flex;justify-content:space-between;gap:7.5px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.row small{color:var(--mute);display:block}
.acts{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}
.alert{font-size:11px;margin:3px 0;color:var(--hT)}
.empty{text-align:center;padding:36px 6px;color:var(--mute)}
#sh{position:fixed;inset:0;z-index:9}.bk{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.pn{position:absolute;left:0;right:0;bottom:0;max-height:88%;overflow:auto;background:var(--bg);border-radius:15px 15px 0 0;padding:15px 12px calc(15px + env(safe-area-inset-bottom,0px));max-width:420px;margin:0 auto}
#rp{position:fixed;inset:0;z-index:20;overflow:auto;background:var(--bg);padding:calc(12px + env(safe-area-inset-top,0px)) 12px 30px}
#rp table{border-collapse:collapse;width:100%;font-size:11px}#rp h1{font-size:16px}#rp h2{font-size:13px;margin:12px 0 4.5px;border-bottom:1px solid var(--line)}
@media print{body>*:not(#rp){display:none!important}#rp{position:static;overflow:visible;background:#fff;color:#000;padding:0}.noprint{display:none!important}}
[hidden]{display:none!important}
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:67.5px;background:var(--ink);color:var(--bg);padding:7.5px 12px;border-radius:7.5px;z-index:10;font-size:11px;max-width:min(92vw,420px);text-align:center}
/* ===== Layout desktop (painel lateral + lista + detalhe) ===== */
:root{--bg:#F5F8FB;--line:#DDE6EE;--navy:#0F2B4C;--blue:#1D6FE8;--side:#0B3B4A;--sideOn:#1B5E8E;
--okB:#DDF5E7;--okT:#0F7A45;--wB:#FFF1CC;--wT:#9A6200;--hB:#FDE6D6;--hT:#B94A12;--bB:#FDE0E3;--bT:#C0182B;
--bS:#FEF1F3;--hS:#FFF5EC;--wS:#FFFAE8;--oS:#EEF9F3;--sh:0 1px 2.25px rgba(16,43,76,.06)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--navy:#E8EEF0;--blue:#5B9DFF;--side:#0A2A33;--sideOn:#1F6A9E;--bS:#3A1A1F;--hS:#3A2416;--wS:#352C10;--oS:#12301F;--sh:none}}
:root[data-theme="dark"]{--navy:#E8EEF0;--blue:#5B9DFF;--side:#0A2A33;--sideOn:#1F6A9E;--bS:#3A1A1F;--hS:#3A2416;--wS:#352C10;--oS:#12301F;--sh:none}
html,body{height:100%}
main{max-width:none;margin:0;padding:0;height:100%}
.ic{flex:none;vertical-align:middle}
.shell{display:flex;gap:12px;height:100vh;height:100dvh;padding:9px}
.side{width:63px;flex:none;background:var(--side);border-radius:16.5px;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:13.5px 9px;color:#fff;transition:width .15s}
.side.open{width:156px}
.logo{display:grid;place-items:center;height:42px;margin-bottom:10.5px;color:#fff}
.nav{display:flex;align-items:center;justify-content:center;gap:9px;background:transparent;color:#fff;border-radius:9px;padding:0;min-height:39px;font-weight:600}
.nav span{display:none;white-space:nowrap}
.side.open .nav{justify-content:flex-start;padding:0 10.5px}.side.open .nav span{display:inline}
.nav:hover{background:rgba(255,255,255,.1)}.nav.on{background:var(--sideOn)}
.nav.tg{margin-top:auto}
.nav:focus-visible{outline:2.25px solid #fff}
.mainc{flex:1;min-width:0;display:flex;flex-direction:column;gap:10.5px}
.hd{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:3px 3px 0}
.hd h1{display:flex;align-items:center;gap:9px;font-size:24px;color:var(--navy)}
.lg{color:var(--acc);display:grid}
.content{flex:1;min-height:0;display:grid;grid-template-columns:minmax(255px,330px) 1fr;gap:12px}
.left,.right{overflow:auto;min-height:0;padding:1.5px 3px 12px 1.5px}
.right{background:var(--card);border:1px solid var(--line);border-radius:13.5px;padding:15px;box-shadow:var(--sh)}
.box{box-shadow:var(--sh)}
.sum{margin-bottom:9px}
.sb{display:flex;justify-content:space-between;align-items:center;gap:6px}
.sb b{font-size:17.5px;color:var(--navy)}
.bub{display:grid;place-items:center;width:34.5px;height:34.5px;border-radius:50%;flex:none;font-style:normal}
.bub.ok{background:var(--okB);color:var(--okT)}.bub.wn{background:var(--wB);color:var(--wT)}
.bub.s{width:27px;height:27px;background:var(--bg);color:var(--mute)}.bub.t{width:25.5px;height:25.5px;background:var(--acc);color:var(--accT)}
.search{position:relative;margin-bottom:3px}.search .ic{position:absolute;left:10.5px;top:50%;transform:translateY(-50%);color:var(--mute)}
.search input{padding-left:31.5px;border-radius:9px}
.chips{padding:9px 0;gap:4.5px;flex-wrap:wrap;overflow:visible}
.chip{min-height:30px;padding:4.5px 8.25px;font-size:11px;border-width:1px}
.chip.bad{color:var(--bT);background:var(--bS);border-color:var(--bB)}.chip.hi{color:var(--hT);background:var(--hS);border-color:var(--hB)}
.chip.wn{color:var(--wT);background:var(--wS);border-color:var(--wB)}.chip.ok{color:var(--okT);background:var(--oS);border-color:var(--okB)}
.chip.nh,.chip.t{color:var(--navy);background:var(--card)}
.chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.cl{box-shadow:var(--sh);border-radius:10.5px;padding:9px 10.5px;color:var(--ink)}
.cl:hover{border-color:var(--blue)}.cl.sel{border:1.5px solid var(--blue);padding:8.25px 9.75px}
.cl>.ic:last-child{color:var(--mute)}
.cl .n b{color:var(--navy)}
.sc.big{width:45px;height:45px;font-size:16px}
.tag{display:inline-flex;align-items:center;gap:4.5px}.tag.lg{padding:6px 12px;font-size:12px}
.back{display:none;background:transparent;color:var(--navy);padding:3px 0;min-height:36px;margin-bottom:6px}
.dh{display:flex;align-items:center;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.dn{flex:1;min-width:0}.dn h2{font-size:17.5px;color:var(--navy);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dn p{margin:1.5px 0 0;color:var(--mute)}
.acts.tb{margin:9px 0}
.bn{display:flex;align-items:center;gap:12px;border:1px solid;border-radius:10.5px;padding:12px 13.5px;margin:3px 0 10.5px}
.bn small{font-weight:800;letter-spacing:0.3px}.bn h3{margin:1.5px 0;font-size:17px}.bn p{margin:0;font-size:12px}
.bn>div{flex:1;min-width:0}.bi{display:grid;place-items:center;width:46.5px;height:46.5px;border-radius:50%;flex:none;font-style:normal;background:rgba(255,255,255,.7)}
.bp{display:inline-flex;align-items:center;gap:6px;padding:7.5px 13.5px;border-radius:74.25px;font-weight:700;white-space:nowrap;background:rgba(255,255,255,.7)}
.bn.bad{background:var(--bS);border-color:var(--bB);color:var(--bT)}.bn.hi{background:var(--hS);border-color:var(--hB);color:var(--hT)}
.bn.wn{background:var(--wS);border-color:var(--wB);color:var(--wT)}.bn.ok{background:var(--oS);border-color:var(--okB);color:var(--okT)}
.bn h3,.bn p{color:var(--ink)}.bn h3{color:inherit}
.k4{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:10.5px}
.kc{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.kc>small{font-weight:700;color:var(--navy);font-size:11px}
.kc .sub{font-size:10.5px;color:var(--mute)}.kc .tag.lg{font-weight:800;margin-top:4.5px}
.kv{display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%;margin-top:4.5px}.kv b{font-size:19px;color:var(--navy)}.kv b.nr{font-size:11px;color:var(--bT);white-space:nowrap}
.gg{position:relative;width:100%;max-width:127.5px;align-self:center}.gg svg{width:100%;display:block}
.gg path{fill:none;stroke-width:12;stroke-linecap:round}.gg .tr{stroke:var(--line)}
.vl.Baixo{stroke:#1FA463}.vl.Médio{stroke:#E5A100}.vl.Crítico{stroke:#E0243C}
.gn{position:absolute;left:0;right:0;bottom:1.5px;text-align:center;line-height:1.1}.gn b{display:block;font-size:24px;color:var(--navy)}.gn small{color:var(--mute);font-size:10.5px}
.kc>.tag:last-child{align-self:center}
.k2{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10.5px}
.k2 h4,.rs h4{margin:0 0 6px;font-size:13px;color:var(--navy)}
.ir{display:flex;align-items:center;gap:7.5px;padding:6px 0}.ir span{flex:1;font-size:11px;white-space:nowrap}.ir b{font-size:11px;font-weight:600;color:var(--mute);text-align:right}
.st{display:inline-flex;align-items:center;gap:3px;padding:2.25px 7.5px;border-radius:74.25px;font-size:10.5px;font-weight:700;min-width:55.5px;justify-content:center}
.st.ok{background:var(--okB);color:var(--okT)}.st.wn{background:var(--wB);color:var(--wT)}.st.bad{background:var(--bB);color:var(--bT)}
.mt{display:flex;align-items:center;gap:7.5px;padding:6.75px 7.5px;border-radius:7.5px;margin-bottom:6px;font-size:11px}.mt span{flex:1}
.mt em{font-style:normal;font-weight:700;font-size:10.5px;padding:2.25px 7.5px;border-radius:74.25px;white-space:nowrap}
.mt.hi{background:var(--bS);color:var(--bT)}.mt.hi em{background:var(--bB)}.mt.md{background:var(--wS);color:var(--wT)}.mt.md em{background:var(--wB)}
.mt.lo{background:var(--oS);color:var(--okT)}.mt.lo em{background:var(--okB)}.mt span{color:var(--ink)}
.rs{display:flex;align-items:center;gap:12px;margin-bottom:10.5px}.rs>.ic{color:var(--acc)}.rs>div{flex:1;min-width:0}.rs p{margin:0;font-size:11px;color:var(--mute)}
.ol{border-color:var(--acc);color:var(--acc);border-width:1.5px;border-radius:74.25px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.reg{margin:0 0 9px;font-size:11px}
.grid{grid-template-columns:repeat(3,1fr)}
.pn{border-radius:15px;max-width:465px}
@media(min-width:900px){.pn{top:50%;bottom:auto;transform:translateY(-50%)}}
@media(max-width:1180px){.k4{grid-template-columns:1fr 1fr}}
@media(max-width:899px){
 html,body{height:auto}main{height:auto}
 .shell{display:block;height:auto;padding:7.5px 7.5px 66px}
 .side,.side.open{position:fixed;left:7.5px;right:7.5px;bottom:7.5px;width:auto;z-index:5;flex-direction:row;padding:4.5px;gap:3px;border-radius:13.5px}
 .logo,.nav.tg{display:none}.nav,.side.open .nav{flex:1;min-height:36px;justify-content:center;padding:0}.side.open .nav span{display:none}
 .hd h1{font-size:19px}.content{display:block}
 .left,.right{overflow:visible}.right{padding:10.5px}
 .hasview .left{display:none}.shell:not(.hasview) .right{display:none}
 .back{display:inline-flex;align-items:center;gap:3px}
 .k4,.k2,.grid{grid-template-columns:1fr 1fr}.k2{grid-template-columns:1fr}
 .bn,.rs{display:block}.bi,.rs>.ic{display:none}.bp,.ol{margin-top:7.5px}.dh{flex-wrap:wrap}.dn h2{white-space:normal}.nav span{display:none!important}
}
html body .u1{margin:9px 0}
html body .u2{font-weight:400;color:var(--mute)}
html body .u3{margin:7.5px 0 3px;font-size:12px}
html body .u4{display:block;margin-top:6px;color:var(--mute)}
html body .u5{padding:3px 7.5px 3px 0;color:#666;vertical-align:top}
html body .u6{font-size:10.5px}
html body .u7{grid-column:1/-1}
html body .u8{font-weight:800;cursor:pointer;min-height:30px}
html body .u9{font-size:16px}
html body .u10{font-size:10.5px;color:var(--mute)}
html body .u11{color:var(--mute)}
html body .u12{margin:6px 0 0}
html body .u13{font-size:11px;color:var(--mute);margin-top:6px}
html body .u14{font-size:11px;color:var(--mute)}
html body .u15{font-size:11px;margin-top:6px}
html body .u16{background:var(--card);border:1px solid var(--line)}
html body .u17{padding-left:15px;font-size:11px}
html body .u18{display:flex;gap:7.5px;align-items:flex-start;color:var(--ink)}
html body .u19{width:20px;height:20px;min-height:20px;flex:none}
html body .u20{display:block;padding:9px 12px;border-radius:7.5px;background:var(--acc);color:var(--accT);font-weight:600;text-decoration:none;text-align:center}
html body .u21{color:var(--mute);font-size:11px}
html body .u22{margin-top:12px}
html body .u23{cursor:pointer;min-height:36px;font-weight:600}
html body .u24{display:block;color:var(--mute);margin:1.5px 0 3px}
html body .u25{margin:7.5px 0 4.5px;font-size:10.5px;color:var(--mute)}
html body .u26{display:flex;flex-wrap:wrap;gap:6px}
html body .u27{padding:7.5px 10.5px;border:1px solid var(--line);border-radius:74.25px;text-decoration:none;color:var(--ink);font-weight:600;font-size:11px;min-height:36px;display:inline-flex;align-items:center}
html body .u28{display:inline-block;padding:7.5px 0}
html body .u29{padding:7.5px 4.5px}
html body .u30{text-align:right}
html body .u31{margin:0 0 4.5px}
html body .u32{text-align:right;display:block;padding:4.5px 0}
html body .u33{margin-top:10.5px}
html body .u34{display:block;margin-top:7.5px}
html body .u35{font-size:11px;color:var(--bT)}
html body .u36{display:block;color:var(--mute)}
html body .u37{white-space:pre-wrap;font-size:10.5px}
html body .u38{color:var(--bT)}
/* ===== Telas de acesso, segurança e administração (novas) ===== */
.salv{font-size:11px;color:var(--mute);margin-left:auto;padding:0 9px}
#rau{position:fixed;inset:0;z-index:30;display:grid;place-items:center;background:rgba(0,0,0,.55)}
#rau .pn{position:static;max-width:360px;width:calc(100% - 24px);transform:none}
.acesso{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:15px}
.acesso .cartao{width:100%;max-width:390px;background:var(--card);border:1px solid var(--line);border-radius:13.5px;padding:18px 16px;box-shadow:var(--sh)}
.acesso h1{display:flex;align-items:center;gap:9px;font-size:20px;color:var(--navy);margin-bottom:3px}
.acesso .sub{color:var(--mute);font-size:12px;margin:0 0 9px}
.acesso button{width:100%;margin-top:12px}
.erro{color:var(--bT);background:var(--bS);border:1px solid var(--bB);border-radius:7.5px;padding:7.5px 9px;font-size:11.5px;margin-top:9px}
.ok2{color:var(--okT);background:var(--oS);border:1px solid var(--okB);border-radius:7.5px;padding:7.5px 9px;font-size:11.5px;margin-top:9px}
.cod{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14px;letter-spacing:1px;word-break:break-all;background:var(--bg);border:1px dashed var(--line);border-radius:7.5px;padding:9px;margin:6px 0;user-select:all}
.tab2{width:100%;border-collapse:collapse;font-size:11px}.tab2 td,.tab2 th{padding:6px 4.5px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tab2 .num{white-space:nowrap}
.lnk{background:transparent;color:var(--blue);padding:3px 0;min-height:30px;border:0;font-weight:600}
.mut{color:var(--mute)}
.passos{padding-left:15px;font-size:11.5px}
label.lk{display:flex;gap:7.5px;align-items:center;color:var(--ink)}label.lk input{width:20px;height:20px;min-height:20px;flex:none}

/* marca */
.logo-ic{width:56px;height:47px;display:block;flex:none}
.acesso h1.marca{display:flex;flex-direction:column;align-items:center;gap:8px;margin:2px 0 12px;font-size:26px;text-align:center}
.acesso h1.marca img{display:block}
.acesso h1.marca em{font-style:normal;color:#16a34a}
@media (max-width:700px){.logo-ic{width:44px;height:37px}}
