:root{color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#020617;font-family:Segoe UI,system-ui,Roboto,sans-serif}*{box-sizing:border-box}body{background:#020617;min-height:100vh;margin:0}#root{min-height:100vh}.app{width:100%;max-width:none;margin:0;padding:1rem}.topoBrand{align-items:center;gap:.75rem;display:flex}.topMenuWrap{position:relative}.logoMenuBtn{cursor:pointer;background:#0b1220;border:1px solid #334155;border-radius:.45rem;padding:.15rem}.topMenuDropdown{z-index:1200;background:#020617;border:1px solid #334155;border-radius:.45rem;flex-direction:column;gap:.35rem;min-width:145px;padding:.45rem;display:flex;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 8px 24px #0206178c}.rightWidgets{align-items:center;gap:.65rem;margin-left:auto;display:flex}.weatherWidget{color:#dbeafe;background:#081327;border:1px solid #2c3f66;border-radius:.4rem;flex-direction:column;gap:.3rem;min-width:365px;min-height:95px;padding:.42rem .55rem;display:flex}.weatherWidget strong{color:#93c5fd;font-size:.74rem;font-weight:700}.weatherWidget small{color:#bfdbfe;font-size:.73rem}.weatherDays{grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;display:grid}.weatherDay{background:#0b1220;border:1px solid #334155;border-radius:.35rem;flex-direction:column;align-items:center;gap:.08rem;padding:.18rem .15rem;display:flex}.weatherDay b{text-transform:capitalize;color:#bfdbfe;font-size:.66rem}.weatherDay i{font-size:.88rem;font-style:normal}.weatherDay small{color:#cbd5e1;font-size:.64rem}.digitalClock{color:#dbeafe;font-variant-numeric:tabular-nums;box-sizing:border-box;background:#0b1a32;border:1px solid #1d4ed8;border-radius:.4rem;flex-direction:column;justify-content:center;align-items:center;min-width:145px;min-height:95px;padding:.42rem .55rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.14rem;line-height:1.12;display:flex}.digitalClock strong{letter-spacing:.5px;font-weight:700}.digitalClock small{color:#bfdbfe;margin-top:.15rem;font-size:.85rem}.digitalClock em{text-transform:uppercase;color:#bfdbfe;background:#0b1220;border:1px solid #3b82f6;border-radius:999px;margin-top:.25rem;padding:.12rem .45rem;font-size:.72rem;font-style:normal}.topoLogo{object-fit:contain;border-radius:.3rem;width:86px;height:auto;display:block}.topo h1{color:#e8c84a;margin:0;font-size:1.4rem}.topo p{color:#94a3b8;margin:.4rem 0 0}.menu{gap:.5rem;margin-top:.8rem;display:flex}.menuBtn{color:#e2e8f0;cursor:pointer;background:#0b1220;border:1px solid #334155;border-radius:.4rem;padding:.35rem .7rem}.menuBtn.active{color:#e8c84a;border-color:#e8c84a}.statusBar{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.tag{background:#0b1220;border:1px solid #334155;border-radius:999px;padding:.35rem .6rem;font-size:.85rem}.statusCounters{align-items:center;gap:.4rem;margin-left:auto;display:flex}.statusCounterBtn{color:#e2e8f0;background:#0b1220;border:1px solid #334155;border-radius:999px;padding:.28rem .55rem;font-size:.78rem}.statusCounterOk{color:#bbf7d0;background:#052e16;border-color:#166534}.statusCounterParcial{color:#fde68a;background:#3f2a06;border-color:#a16207}.statusCounterAberto{color:#fecaca;background:#450a0a;border-color:#991b1b}.tag.ok{background:#052e16;border-color:#166534}.tag.off{background:#450a0a;border-color:#991b1b}.refreshBtn{color:#dbeafe;cursor:pointer;background:#1e3a8a;border:1px solid #1d4ed8;border-radius:999px;padding:.35rem .7rem;font-size:.85rem}.refreshBtn:disabled{opacity:.6;cursor:wait}.loading{background:#0f172a;border:1px solid #334155;border-radius:.4rem;padding:.9rem}.erro{color:#fecaca;background:#450a0a;border:1px solid #b91c1c;border-radius:.4rem;padding:.9rem}.tableWrap{border:1px solid #1e3a5f;border-radius:.4rem;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;border-bottom:1px solid #1f2a44;padding:.6rem}th{color:#e8c84a;text-transform:uppercase;background:#0b1a32;font-size:.8rem}td.num{text-align:right;font-variant-numeric:tabular-nums}.resolvido{opacity:.55}.clickableRow{cursor:pointer}.clickableRow:hover{background:#0f1b30}.rowTag-vermelho{background:#991b1b47}.rowTag-amarelo{background:#a1620747}.rowTag-verde{background:#16653447}.rowTagBadge{border:1px solid #0000;border-radius:999px;padding:.24rem .55rem;font-size:.74rem;display:inline-block}.gravidadeCell{align-items:center;gap:.45rem;display:flex}.rowRemoveBtn{color:#e2e8f0;cursor:pointer;background:#0f172a;border:1px solid #475569;border-radius:.35rem;padding:.2rem .45rem;font-size:.72rem}.rowTagBadge-vermelho{color:#fecaca;background:#450a0a;border-color:#991b1b}.rowTagBadge-amarelo{color:#fde68a;background:#3f2a06;border-color:#a16207}.rowTagBadge-verde{color:#bbf7d0;background:#052e16;border-color:#166534}.vazio{text-align:center;color:#94a3b8}.okBox{color:#bbf7d0;background:#052e16;border:1px solid #166534;border-radius:.4rem;margin-bottom:.7rem;padding:.9rem}.adminWrap{background:#020c1c;border:1px solid #1f2a44;border-radius:.5rem;padding:1rem}.adminWrap h2{margin-top:0}.adminWrap p{color:#94a3b8}.adminSection{background:#041128;border:1px solid #23324f;border-radius:.4rem;margin:.8rem 0 1rem;padding:.8rem}.adminSection h3{margin:0}.adminSection p{margin:.35rem 0 .8rem}.adminAccessSection{flex-direction:column;gap:.75rem;display:flex}.adminLoginCard{background:#020617;border:1px solid #334155;border-radius:.55rem;flex-direction:column;gap:.7rem;width:min(520px,100%);padding:1rem;display:flex}.adminLoginHeader h4{color:#e2e8f0;margin:0}.adminLoginHeader p{color:#94a3b8;margin:.35rem 0 0;font-size:.9rem}.adminPrimaryBtn{color:#dbeafe;cursor:pointer;background:#1e3a8a;border:1px solid #1d4ed8;border-radius:.4rem;padding:.55rem .8rem;font-weight:600}.adminPrimaryBtn:disabled{opacity:.6;cursor:wait}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.fieldBlock{flex-direction:column;gap:.25rem;display:flex}.fieldBlock span{color:#bfdbfe;font-size:.86rem}.adminControls{flex-direction:column;gap:.4rem;margin:1rem 0;display:flex}.adminControls input,.adminWrap textarea{color:#e2e8f0;background:#020617;border:1px solid #334155;border-radius:.4rem;width:100%;padding:.6rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.adminButtons{gap:.5rem;display:flex}.adminButtons button{color:#e2e8f0;cursor:pointer;background:#0b1220;border:1px solid #334155;border-radius:.4rem;padding:.45rem .75rem}.adminLoginForm{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.adminLoginForm .adminButtons{grid-column:1/-1}.adminSessionInfo{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:.8rem;display:flex}.adminSessionText{color:#bfdbfe}.editorGrid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.modalOverlay{z-index:2000;background:#020617d1;justify-content:center;align-items:center;padding:.4rem;display:flex;position:fixed;inset:0}.modalCard{background:#020c1c;border:1px solid #1e3a5f;border-radius:.7rem;flex-direction:column;width:min(1400px,100%);height:calc(100vh - .8rem);max-height:calc(100vh - .8rem);padding:1rem;display:flex;overflow:hidden}.modalSub{color:#94a3b8;margin:.2rem 0}.modalHeader{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.modalLocal{color:#bfdbfe;margin:.2rem 0 0;font-size:1rem;font-weight:600}.modalSummary{flex-wrap:wrap;gap:.5rem;display:flex}.chipsWrap{flex-wrap:wrap;gap:.45rem;display:flex}.chip{border:1px solid #0000;border-radius:999px;padding:.3rem .6rem;font-size:.8rem}.chipOn{color:#bbf7d0;background:#052e16;border-color:#166534}.chipOff{color:#fecaca;background:#450a0a;border-color:#991b1b}.modalEmpty{color:#94a3b8}.clientesListWrap{border:1px solid #1e3a5f;border-radius:.5rem;flex:1;min-height:0;margin-left:.15rem;margin-right:.15rem;overflow:auto}.clientesTable{border-collapse:collapse;width:100%;min-width:1240px}.clientesTable th,.clientesTable td{text-align:left;white-space:nowrap;border-bottom:1px solid #1f2a44;padding:.55rem}.clientesTable th{color:#e8c84a;text-transform:uppercase;background:#0b1a32;font-size:.78rem}.clienteOnRow{background:#052e16}.clienteOffRow{background:#450a0a}.clienteNome{font-weight:600}.clienteMac{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.loadingCliente{color:#f8d969;margin-top:.8rem}.modalActions{justify-content:flex-end;margin-top:1rem;display:flex}.confirmCard{background:#020c1c;border:1px solid #1e3a5f;border-radius:.7rem;width:min(480px,96vw);padding:1rem}.confirmCard h3{margin:0 0 .5rem}.confirmCard p{color:#cbd5e1;margin:0}.confirmActions{justify-content:flex-end;gap:.55rem;margin-top:1rem;display:flex}.dangerBtn{color:#fecaca;background:#450a0a;border-color:#991b1b}@media (width<=980px){.topoBrand{flex-wrap:wrap}.rightWidgets{justify-content:space-between;width:100%;margin-left:0}.weatherWidget{flex:1;min-width:0}.digitalClock{width:175px;min-width:0}.weatherDays{grid-template-columns:repeat(3,minmax(0,1fr))}.statusCounters{flex-wrap:wrap;justify-content:flex-end;width:100%;margin-left:0}.editorGrid,.formGrid,.adminLoginForm{grid-template-columns:1fr}.modalHeader{flex-direction:column;align-items:flex-start}.clientesTable{min-width:0}}
