@font-face{font-family:Inter;src:url('/assets/fonts/InterVariable.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--bg:#061724;--panel:rgba(18,39,55,.78);--panel-strong:rgba(23,49,68,.92);--line:rgba(166,205,230,.18);--text:#f8fbff;--muted:rgba(231,241,249,.68);--blue:#63c8ff;--green:#36d681;--orange:#ffb340;--red:#ff5a66;--shadow:0 24px 80px rgba(0,0,0,.38);--radius:28px}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:Inter,system-ui,sans-serif;background:radial-gradient(circle at 15% 0%,rgba(35,109,155,.32),transparent 35%),radial-gradient(circle at 88% 12%,rgba(36,128,101,.24),transparent 32%),linear-gradient(135deg,#06131f,#071b29 55%,#06212d);color:var(--text);overflow-x:hidden}.prefeitura-page:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent);pointer-events:none}.prefeitura-shell{width:min(1880px,calc(100vw - 32px));margin:18px auto 42px;position:relative}.prefeitura-glass{background:linear-gradient(145deg,rgba(20,45,63,.82),rgba(7,24,36,.78));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(22px);border-radius:var(--radius)}.prefeitura-header{min-height:108px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:20px 24px}.prefeitura-brand-stack{display:flex;align-items:center;gap:10px}.prefeitura-logo{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(99,200,255,.24),rgba(54,214,129,.16));border:1px solid rgba(255,255,255,.16);color:var(--blue);font-size:22px}.prefeitura-logo-img{width:68px;height:auto;object-fit:contain}.prefeitura-header p,.prefeitura-kpi span,.prefeitura-progress p,.prefeitura-map-toolbar p,.prefeitura-timeline p,.prefeitura-ranking p,.prefeitura-projection p,.prefeitura-detail p,.prefeitura-croqui p,.prefeitura-photos p,.prefeitura-property-timeline p{margin:0 0 6px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;color:#8fdcff}.prefeitura-header h1{margin:0;font-size:clamp(24px,2.4vw,42px);line-height:1}.prefeitura-header span,.prefeitura-header small{color:var(--muted)}.prefeitura-live{display:grid;grid-template-columns:auto auto;gap:4px 10px;align-items:center;text-align:right}.prefeitura-live i{width:11px;height:11px;border-radius:999px;background:var(--green);box-shadow:0 0 20px var(--green);animation:pulse-dot 1.6s infinite}.prefeitura-live strong{font-size:14px}.prefeitura-live span,.prefeitura-live time{grid-column:1/3;color:var(--muted);font-size:12px}.prefeitura-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:14px}.prefeitura-kpi{position:relative;min-height:150px;padding:18px;text-align:left;color:var(--text);cursor:pointer;transition:transform .16s ease,border-color .16s ease;background:linear-gradient(145deg,rgba(28,60,82,.8),rgba(11,30,43,.78))}.prefeitura-kpi:hover{transform:translateY(-3px);border-color:rgba(99,200,255,.48)}.prefeitura-kpi i{width:40px;height:40px;border-radius:16px;display:grid;place-items:center;background:rgba(99,200,255,.14);color:var(--blue);margin-bottom:12px}.prefeitura-kpi strong{display:block;font-size:clamp(34px,3vw,58px);line-height:.92;letter-spacing:-.08em}.prefeitura-kpi small{color:var(--muted);font-weight:700}.prefeitura-kpi svg{position:absolute;right:14px;bottom:12px;width:120px;height:28px;opacity:.82}.prefeitura-progress{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:center;margin-top:14px;padding:20px 24px}.prefeitura-progress strong{font-size:44px;letter-spacing:-.07em}.prefeitura-progress small{color:var(--muted)}.prefeitura-progress-bar{height:18px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(255,255,255,.1)}.prefeitura-progress-bar i{display:block;height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#67e8f9,#36d681);box-shadow:0 0 28px rgba(54,214,129,.42);transition:width .9s cubic-bezier(.2,.8,.2,1)}.prefeitura-command-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:14px;margin-top:14px}.prefeitura-map-card{padding:14px;min-height:680px}.prefeitura-map-toolbar{height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4px 12px}.prefeitura-map-toolbar h2{margin:0;font-size:24px;letter-spacing:-.04em}.prefeitura-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.prefeitura-controls button,.prefeitura-detail button{border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08);color:var(--text);height:36px;padding:0 13px;font-weight:900;cursor:pointer}.prefeitura-controls button.is-active,.prefeitura-controls button:hover{background:linear-gradient(135deg,#2179e9,#37b5ff);border-color:transparent}.prefeitura-map{height:580px;border-radius:22px;overflow:hidden;background:#0b2535}.prefeitura-map .leaflet-control-attribution{display:none}.prefeitura-map-caption{display:flex;gap:10px;padding:12px 4px 2px;color:var(--muted);font-size:12px;font-weight:800}.prefeitura-map-caption span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:4px;margin-right:6px;background:var(--green)}.prefeitura-map-caption span:nth-child(2):before{background:var(--orange)}.prefeitura-map-caption span:nth-child(3):before{background:var(--red)}.prefeitura-map-caption span:nth-child(4):before{background:var(--blue)}.prefeitura-side{padding:14px;display:flex;flex-direction:column;gap:14px;min-height:680px}.prefeitura-search label{height:50px;border-radius:18px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:0 16px}.prefeitura-search input{width:100%;background:transparent;border:0;outline:0;color:var(--text);font:inherit;font-weight:700}.prefeitura-search-results{margin-top:10px;display:grid;gap:8px;max-height:230px;overflow:auto}.prefeitura-search-results button{width:100%;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.07);color:var(--text);padding:12px;cursor:pointer}.prefeitura-search-results strong{display:block}.prefeitura-search-results span{color:var(--muted);font-size:12px}.prefeitura-side-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.prefeitura-side-metrics div{min-height:92px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:14px}.prefeitura-side-metrics span{display:block;color:var(--muted);font-size:12px;font-weight:800}.prefeitura-side-metrics strong{display:block;margin-top:8px;font-size:24px}.prefeitura-timeline{min-height:0;flex:1}.prefeitura-timeline>div{display:grid;gap:10px;max-height:430px;overflow:auto;padding-right:4px}.prefeitura-event{display:grid;grid-template-columns:54px 1fr;gap:12px;padding:12px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.prefeitura-event time{font-weight:900;color:#8fdcff}.prefeitura-event strong{display:block}.prefeitura-event span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.prefeitura-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.prefeitura-ranking,.prefeitura-projection{padding:18px;min-height:170px}.prefeitura-ranking div[data-prefeitura-quadras]{display:grid;gap:8px}.prefeitura-region{display:grid;grid-template-columns:90px 1fr 58px;gap:10px;align-items:center}.prefeitura-region i{height:8px;border-radius:999px;background:linear-gradient(90deg,#67e8f9,#36d681);transform-origin:left center}.prefeitura-scenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.prefeitura-scenarios span{border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:18px}.prefeitura-scenarios b{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.prefeitura-scenarios strong{font-size:28px}.prefeitura-detail{position:fixed;right:22px;top:22px;bottom:22px;width:min(560px,calc(100vw - 44px));z-index:1000;padding:16px;display:flex;flex-direction:column;animation:detail-in .18s ease}.prefeitura-detail[hidden]{display:none}.prefeitura-detail header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.prefeitura-detail h2{margin:0;font-size:28px}.prefeitura-detail header span{color:var(--muted)}.prefeitura-detail-body{overflow:auto;display:grid;gap:14px;padding-right:4px}.prefeitura-detail-map{height:230px;border-radius:22px;overflow:hidden;background:#0b2535}.prefeitura-detail-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.prefeitura-detail-metrics div,.prefeitura-croqui,.prefeitura-photos,.prefeitura-property-timeline{border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:14px}.prefeitura-detail-metrics span{display:block;color:var(--muted);font-size:12px}.prefeitura-detail-metrics strong{display:block;margin-top:6px}.prefeitura-building{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-radius:14px;background:rgba(255,255,255,.06);margin-top:8px}.prefeitura-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.prefeitura-photo-grid a{display:block;aspect-ratio:1.2;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.08)}.prefeitura-photo-grid img{width:100%;height:100%;object-fit:cover}.prefeitura-marker{width:18px;height:18px;border-radius:999px;background:var(--green);border:2px solid #fff;box-shadow:0 0 0 7px rgba(54,214,129,.18)}.prefeitura-marker.is-pendente{background:var(--orange);box-shadow:0 0 0 7px rgba(255,179,64,.18)}.prefeitura-marker.is-realizado{background:var(--green)}.prefeitura-fullscreen{position:fixed;inset:0;z-index:2000;width:100vw!important;margin:0!important;padding:18px;background:var(--bg)}.prefeitura-fullscreen .prefeitura-header,.prefeitura-fullscreen .prefeitura-bottom-grid{display:none}.prefeitura-fullscreen .prefeitura-command-grid{height:calc(100vh - 180px);grid-template-columns:1fr 390px}.prefeitura-fullscreen .prefeitura-map-card,.prefeitura-fullscreen .prefeitura-side{min-height:100%}.prefeitura-fullscreen .prefeitura-map{height:calc(100vh - 288px)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:999px}*::-webkit-scrollbar-thumb{background:linear-gradient(#5f839a,#35556b);border-radius:999px;border:2px solid rgba(6,23,36,.9)}@keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.45}}@keyframes detail-in{from{transform:translateX(18px);opacity:0}to{transform:none;opacity:1}}@media(max-width:1180px){.prefeitura-kpis{grid-template-columns:repeat(2,1fr)}.prefeitura-command-grid{grid-template-columns:1fr}.prefeitura-side{min-height:auto}.prefeitura-progress{grid-template-columns:1fr}.prefeitura-header{grid-template-columns:1fr}.prefeitura-live{text-align:left}}@media(max-width:720px){.prefeitura-shell{width:calc(100vw - 16px);margin:8px auto 24px}.prefeitura-header,.prefeitura-progress,.prefeitura-map-card,.prefeitura-side{border-radius:22px}.prefeitura-kpis,.prefeitura-bottom-grid,.prefeitura-side-metrics,.prefeitura-detail-metrics,.prefeitura-scenarios{grid-template-columns:1fr}.prefeitura-map{height:430px}.prefeitura-map-toolbar{height:auto;align-items:flex-start;flex-direction:column}.prefeitura-controls{justify-content:flex-start}.prefeitura-detail{inset:8px;width:auto}}
.prefeitura-login-shell{min-height:100vh;width:min(760px,calc(100vw - 32px));margin:0 auto;display:grid;place-items:center;padding:32px 0}.prefeitura-login-card{width:100%;padding:42px;display:grid;gap:20px}.prefeitura-login-card p{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:#8fdcff}.prefeitura-login-card h1{margin:0;font-size:clamp(34px,6vw,68px);line-height:.96;letter-spacing:-.07em}.prefeitura-login-card>span{color:var(--muted);font-size:17px;max-width:560px}.prefeitura-login-card form{display:grid;gap:14px;margin-top:8px}.prefeitura-login-card label{display:grid;gap:8px}.prefeitura-login-card small{font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.prefeitura-login-card input{height:58px;border-radius:18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:var(--text);padding:0 18px;font:inherit;font-weight:900;outline:0}.prefeitura-login-card input:focus{border-color:#8fdcff;box-shadow:0 0 0 4px rgba(143,220,255,.12)}.prefeitura-login-card button{height:58px;border:0;border-radius:999px;background:linear-gradient(135deg,#2179e9,#37b5ff);color:#fff;font:inherit;font-weight:1000;cursor:pointer}.prefeitura-login-card button:disabled{opacity:.7;cursor:wait}.prefeitura-login-message{border-radius:16px;padding:14px 16px;font-weight:900;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.prefeitura-login-message[data-type="success"]{background:rgba(54,214,129,.13);border-color:rgba(54,214,129,.35)}.prefeitura-login-message[data-type="error"]{background:rgba(255,90,102,.13);border-color:rgba(255,90,102,.35)}
.prefeitura-intelligence{margin-top:14px;padding:16px 20px;display:flex;align-items:center;gap:14px;overflow:hidden;position:relative}.prefeitura-intelligence:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);transform:translateX(-100%);animation:prefeitura-sheen 4.6s ease-in-out infinite}.prefeitura-intelligence i{width:38px;height:38px;border-radius:15px;display:grid;place-items:center;background:rgba(54,214,129,.16);color:#36d681}.prefeitura-intelligence strong{display:block;font-size:18px}.prefeitura-intelligence span{display:block;color:var(--muted);margin-top:3px}.prefeitura-intelligence[data-level="attention"] i{background:rgba(255,179,64,.16);color:#ffb340}.prefeitura-intelligence[data-level="excellent"] i{background:rgba(99,200,255,.16);color:#63c8ff}.prefeitura-map-card{min-height:740px}.prefeitura-map{height:640px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.09),inset 0 0 80px rgba(8,31,43,.55)}.prefeitura-map:after{content:"";position:absolute;inset:14px;border-radius:22px;pointer-events:none;background:radial-gradient(circle at 40% 42%,rgba(54,214,129,.08),transparent 22%),linear-gradient(180deg,rgba(255,255,255,.08),transparent 22%,transparent 75%,rgba(4,18,28,.2));mix-blend-mode:screen}.prefeitura-hull-ink{filter:drop-shadow(0 0 16px rgba(54,214,129,.42));animation:prefeitura-ink-grow .42s ease-out both}.prefeitura-marker{animation:prefeitura-marker-pulse 2.2s ease-in-out infinite}.prefeitura-marker.is-realizado{box-shadow:0 0 0 6px rgba(54,214,129,.2),0 0 18px rgba(54,214,129,.55)}.prefeitura-side-summary{border-radius:22px;padding:16px;background:linear-gradient(145deg,rgba(54,214,129,.13),rgba(99,200,255,.08));border:1px solid rgba(143,220,255,.18)}.prefeitura-side-summary p,.prefeitura-team-radar p{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;color:#8fdcff}.prefeitura-side-summary strong{font-size:38px;letter-spacing:-.06em}.prefeitura-side-summary small{display:block;color:var(--muted);font-weight:800;margin-top:8px}.prefeitura-mini-progress{height:10px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;margin-top:8px}.prefeitura-mini-progress i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#67e8f9,#36d681);transition:width .55s ease}.prefeitura-team-radar{border-radius:22px;padding:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}.prefeitura-team-radar>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.prefeitura-team-chip{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;border-radius:15px;padding:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.prefeitura-team-chip i{grid-row:1/3;width:10px;height:10px;border-radius:999px;background:#36d681;box-shadow:0 0 0 0 rgba(54,214,129,.6);animation:prefeitura-team-pulse 1.6s infinite}.prefeitura-team-chip strong{font-size:12px}.prefeitura-team-chip small{color:var(--muted);font-weight:800}.prefeitura-region{border:0;color:var(--text);text-align:left;background:rgba(255,255,255,.045);border-radius:14px;padding:10px;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease;border:1px solid transparent}.prefeitura-region:hover,.prefeitura-region.is-active{transform:translateY(-2px);background:rgba(99,200,255,.1);border-color:rgba(143,220,255,.28)}.prefeitura-event{transition:transform .18s ease,background .18s ease}.prefeitura-event:hover{transform:translateX(3px);background:rgba(143,220,255,.1)}.prefeitura-ops-footer{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin-top:14px;padding:14px 16px}.prefeitura-ops-footer span{display:grid;gap:4px;border-radius:16px;padding:10px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.prefeitura-ops-footer b{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.prefeitura-ops-footer strong{font-size:13px}.is-counting{animation:prefeitura-count-pop .35s ease}.is-replaying:before{content:"Replay da operação";position:fixed;left:50%;top:24px;transform:translateX(-50%);z-index:2500;border-radius:999px;padding:12px 18px;background:rgba(5,20,31,.82);border:1px solid rgba(143,220,255,.28);box-shadow:0 20px 60px rgba(0,0,0,.35);font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.is-replaying .prefeitura-map-card,.is-replaying .prefeitura-progress{box-shadow:0 0 0 1px rgba(143,220,255,.28),0 30px 100px rgba(54,214,129,.18)}.prefeitura-progress-bar{position:relative}.prefeitura-progress-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);transform:translateX(-100%);animation:prefeitura-sheen 3s ease-in-out infinite}@keyframes prefeitura-count-pop{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-2px) scale(1.045);text-shadow:0 0 20px rgba(143,220,255,.55)}100%{transform:none}}@keyframes prefeitura-marker-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes prefeitura-team-pulse{70%{box-shadow:0 0 0 9px rgba(54,214,129,0)}100%{box-shadow:0 0 0 0 rgba(54,214,129,0)}}@keyframes prefeitura-sheen{50%{transform:translateX(100%)}}@keyframes prefeitura-ink-grow{from{opacity:.1;filter:blur(3px) drop-shadow(0 0 0 rgba(54,214,129,0))}to{opacity:1;filter:blur(0) drop-shadow(0 0 16px rgba(54,214,129,.42))}}@media(max-width:1380px){.prefeitura-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.prefeitura-ops-footer{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.prefeitura-intelligence{align-items:flex-start}.prefeitura-team-radar>div,.prefeitura-ops-footer{grid-template-columns:1fr}.prefeitura-map{height:460px}.prefeitura-map-card{min-height:auto}}
.prefeitura-map{position:relative}.is-evidence-focus{animation:prefeitura-evidence-focus .72s ease}.is-replaying:after{content:"";position:fixed;inset:0;z-index:2300;pointer-events:none;background:radial-gradient(circle at 50% 45%,transparent 20%,rgba(2,10,16,.3));animation:prefeitura-replay-dim .4s ease both}.is-replaying:before{z-index:2501}@keyframes prefeitura-evidence-focus{0%{box-shadow:0 0 0 0 rgba(143,220,255,0)}45%{box-shadow:0 0 0 4px rgba(143,220,255,.2),0 26px 80px rgba(99,200,255,.22)}100%{box-shadow:var(--shadow)}}@keyframes prefeitura-replay-dim{from{opacity:0}to{opacity:1}}
.prefeitura-map-card{position:relative}.prefeitura-layer-panel{position:absolute;right:24px;top:92px;z-index:760;display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:8px;width:min(430px,calc(100vw - 60px));padding:12px;border-radius:20px}.prefeitura-layer-panel[hidden]{display:none}.prefeitura-layer-panel label{display:flex;align-items:center;gap:9px;min-height:34px;padding:8px 10px;border-radius:13px;background:rgba(255,255,255,.055);font-size:12px;font-weight:900;color:var(--muted);cursor:pointer}.prefeitura-layer-panel input{accent-color:#36d681}.prefeitura-speed,.prefeitura-time-machine{height:36px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08);padding:0 10px;color:var(--text);font-weight:900}.prefeitura-speed select,.prefeitura-time-machine input{border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-weight:900;max-width:126px}.prefeitura-time-machine input::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}.prefeitura-timeline-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}.prefeitura-timeline-filters button{height:28px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);color:var(--muted);font-size:11px;font-weight:900;cursor:pointer}.prefeitura-timeline-filters button.is-active,.prefeitura-timeline-filters button:hover{color:#04131f;background:#8fdcff;border-color:transparent}.prefeitura-ops-footer{grid-template-columns:repeat(10,minmax(0,1fr))}.prefeitura-today-pulse{animation:prefeitura-radar-ping 1.8s ease-out infinite}.prefeitura-marker:after{content:"";position:absolute;inset:-8px;border-radius:999px;border:1px solid currentColor;opacity:.28;animation:prefeitura-radar-ping 2.4s ease-out infinite}.prefeitura-marker{position:relative;color:#36d681}.prefeitura-marker.is-pendente{color:#ffb340}.prefeitura-fullscreen .prefeitura-layer-panel{top:82px}.is-replaying .prefeitura-event:first-child{box-shadow:0 0 0 1px rgba(54,214,129,.35),0 18px 50px rgba(54,214,129,.16)}@keyframes prefeitura-radar-ping{0%{transform:scale(.72);opacity:.42}80%,100%{transform:scale(2.15);opacity:0}}@media(max-width:1380px){.prefeitura-ops-footer{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:720px){.prefeitura-layer-panel{left:14px;right:14px;top:118px;width:auto;grid-template-columns:1fr}.prefeitura-speed,.prefeitura-time-machine{width:100%;justify-content:center}.prefeitura-ops-footer{grid-template-columns:1fr}}
/* V3.1 — mapa como protagonista */
.prefeitura-shell{width:min(1960px,calc(100vw - 24px));margin:12px auto 24px}.prefeitura-header{min-height:82px;padding:14px 18px}.prefeitura-header h1{font-size:clamp(22px,1.85vw,34px)}.prefeitura-logo{width:46px;height:46px;border-radius:15px}.prefeitura-logo-img{width:58px}.prefeitura-intelligence{margin-top:10px;padding:12px 16px}.prefeitura-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:10px}.prefeitura-kpi{min-height:104px;padding:12px 14px;border-radius:22px}.prefeitura-kpi i{width:30px;height:30px;border-radius:12px;margin-bottom:8px}.prefeitura-kpi strong{font-size:clamp(26px,2.2vw,42px)}.prefeitura-kpi svg{height:20px;bottom:8px;right:10px}.prefeitura-progress{margin-top:10px;padding:12px 18px;grid-template-columns:260px 1fr}.prefeitura-progress strong{font-size:34px}.prefeitura-command-grid{margin-top:10px;grid-template-columns:minmax(0,1fr) 410px;align-items:stretch}.prefeitura-map-card{min-height:calc(100vh - 370px);padding:10px;border-radius:30px}.prefeitura-map-toolbar{height:auto;min-height:54px;padding:0 2px 8px}.prefeitura-map-toolbar h2{font-size:22px}.prefeitura-map{height:calc(100vh - 456px);min-height:760px;border-radius:25px}.prefeitura-map-caption{position:absolute;left:22px;bottom:18px;z-index:500;padding:8px 10px;border-radius:999px;background:rgba(4,18,28,.62);backdrop-filter:blur(14px);box-shadow:0 14px 40px rgba(0,0,0,.22)}.prefeitura-side{min-height:calc(100vh - 370px);max-height:calc(100vh - 370px);padding:12px;border-radius:30px;background:linear-gradient(145deg,rgba(20,45,63,.62),rgba(7,24,36,.5));box-shadow:0 18px 70px rgba(0,0,0,.3)}.prefeitura-side-summary{padding:13px;border-radius:20px}.prefeitura-side-summary strong{font-size:32px}.prefeitura-search label{height:44px}.prefeitura-team-radar{padding:12px}.prefeitura-side-metrics{gap:8px}.prefeitura-side-metrics div{min-height:72px;padding:11px;border-radius:17px}.prefeitura-side-metrics strong{font-size:20px;margin-top:5px}.prefeitura-timeline{display:flex;flex-direction:column;min-height:0}.prefeitura-timeline>div{max-height:none;overflow:auto;flex:1}.prefeitura-event{padding:10px;border-radius:16px}.prefeitura-context-strip{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:10px;margin-top:10px}.prefeitura-ranking,.prefeitura-projection{min-height:112px;padding:13px;border-radius:24px}.prefeitura-ranking div[data-prefeitura-quadras]{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.prefeitura-region{grid-template-columns:58px 1fr 48px;padding:8px;border-radius:13px}.prefeitura-scenarios{gap:8px}.prefeitura-scenarios span{padding:12px;border-radius:16px}.prefeitura-scenarios strong{font-size:22px}.prefeitura-ops-toggle{display:flex;align-items:center;justify-content:center;gap:9px;width:max-content;margin:10px auto 0;height:40px;padding:0 16px;border:1px solid rgba(255,255,255,.14);color:var(--text);font-weight:1000;cursor:pointer}.prefeitura-ops-toggle:hover,.prefeitura-ops-toggle[aria-expanded="true"]{border-color:rgba(143,220,255,.42);background:linear-gradient(145deg,rgba(20,63,82,.82),rgba(7,28,42,.78))}.prefeitura-ops-footer{overflow:hidden;transition:max-height .22s ease,opacity .18s ease,margin .18s ease,padding .18s ease;max-height:190px}.prefeitura-ops-footer.is-collapsed{max-height:0;opacity:0;margin-top:0;padding-top:0;padding-bottom:0;border-color:transparent;pointer-events:none}.prefeitura-fullscreen{padding:10px}.prefeitura-fullscreen .prefeitura-header,.prefeitura-fullscreen .prefeitura-kpis,.prefeitura-fullscreen .prefeitura-progress,.prefeitura-fullscreen .prefeitura-context-strip,.prefeitura-fullscreen .prefeitura-ops-toggle,.prefeitura-fullscreen .prefeitura-ops-footer{display:none}.prefeitura-fullscreen .prefeitura-command-grid{height:calc(100vh - 20px);grid-template-columns:1fr 380px;margin-top:0}.prefeitura-fullscreen .prefeitura-map-card,.prefeitura-fullscreen .prefeitura-side{min-height:100%;max-height:100%;background:linear-gradient(145deg,rgba(20,45,63,.48),rgba(7,24,36,.36));backdrop-filter:blur(18px)}.prefeitura-fullscreen .prefeitura-map{height:calc(100vh - 112px);min-height:0}.prefeitura-fullscreen .prefeitura-side{position:absolute;right:18px;top:18px;bottom:18px;width:380px;z-index:650}.prefeitura-fullscreen .prefeitura-map-card{grid-column:1/3}.prefeitura-fullscreen .prefeitura-map-caption{bottom:20px}.prefeitura-detail{background:linear-gradient(145deg,rgba(20,45,63,.72),rgba(7,24,36,.68))}@media(max-width:1500px){.prefeitura-map{min-height:680px}.prefeitura-side,.prefeitura-map-card{min-height:calc(100vh - 350px);max-height:none}.prefeitura-command-grid{grid-template-columns:minmax(0,1fr) 390px}}@media(max-width:1180px){.prefeitura-command-grid{grid-template-columns:1fr}.prefeitura-map-card,.prefeitura-side{min-height:auto;max-height:none}.prefeitura-map{height:680px;min-height:0}.prefeitura-context-strip{grid-template-columns:1fr}.prefeitura-ranking div[data-prefeitura-quadras]{grid-template-columns:1fr 1fr}}@media(max-width:720px){.prefeitura-shell{width:calc(100vw - 12px);margin:6px auto 18px}.prefeitura-kpis{grid-template-columns:1fr 1fr}.prefeitura-kpi{min-height:96px}.prefeitura-progress{grid-template-columns:1fr}.prefeitura-map{height:72vh;min-height:520px}.prefeitura-map-caption{position:static;margin-top:8px;border-radius:18px;flex-wrap:wrap}.prefeitura-side{border-radius:22px}.prefeitura-ranking div[data-prefeitura-quadras]{grid-template-columns:1fr}.prefeitura-ops-toggle{width:100%}.prefeitura-fullscreen .prefeitura-side{position:relative;right:auto;top:auto;bottom:auto;width:auto}.prefeitura-fullscreen .prefeitura-command-grid{grid-template-columns:1fr;height:auto}.prefeitura-fullscreen .prefeitura-map-card{grid-column:auto}.prefeitura-fullscreen .prefeitura-map{height:78vh}}
/* Ajuste Cinema: painel de operação lateral, não sobreposto ao mapa */
.prefeitura-fullscreen .prefeitura-command-grid{grid-template-columns:minmax(0,1fr) 380px;height:calc(100vh - 20px);align-items:stretch}.prefeitura-fullscreen .prefeitura-map-card{grid-column:auto;min-height:100%;max-height:100%}.prefeitura-fullscreen .prefeitura-side{position:relative;right:auto;top:auto;bottom:auto;width:auto;min-height:100%;max-height:100%;z-index:auto}.prefeitura-fullscreen .prefeitura-map{height:calc(100vh - 112px);min-height:0}@media(max-width:720px){.prefeitura-fullscreen .prefeitura-command-grid{grid-template-columns:1fr;height:auto}.prefeitura-fullscreen .prefeitura-side{position:relative;width:auto;min-height:auto;max-height:none}.prefeitura-fullscreen .prefeitura-map{height:78vh}}
/* Atualizados hoje: pulso fixo no ponto, sem deslocamento por transform SVG */
.prefeitura-today-pulse{animation:prefeitura-today-glow 1.8s ease-in-out infinite!important;transform:none!important;transform-origin:center!important}.leaflet-interactive.prefeitura-today-pulse{transform:none!important}@keyframes prefeitura-today-glow{0%,100%{stroke-opacity:.88;fill-opacity:.10;stroke-width:2}50%{stroke-opacity:.42;fill-opacity:.22;stroke-width:5}}
.prefeitura-croqui-marker{width:34px;height:34px;border-radius:14px;display:grid;grid-template-columns:1fr;place-items:center;background:linear-gradient(145deg,rgba(180,92,255,.96),rgba(94,61,255,.88));border:2px solid rgba(255,255,255,.9);box-shadow:0 0 0 7px rgba(180,92,255,.16),0 14px 34px rgba(20,8,45,.36);color:#fff;font-size:14px}.prefeitura-croqui-marker b{position:absolute;right:-6px;top:-7px;min-width:17px;height:17px;border-radius:999px;display:grid;place-items:center;background:#0b1724;border:1px solid rgba(255,255,255,.72);font-size:10px;line-height:1}
.prefeitura-photo-marker{width:32px;height:32px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,179,64,.98),rgba(255,116,64,.88));border:2px solid rgba(255,255,255,.9);box-shadow:0 0 0 7px rgba(255,179,64,.16),0 14px 34px rgba(45,20,8,.35);color:#fff;font-size:13px}.prefeitura-photo-marker b{position:absolute;right:-6px;top:-7px;min-width:17px;height:17px;border-radius:999px;display:grid;place-items:center;background:#0b1724;border:1px solid rgba(255,255,255,.72);font-size:10px;line-height:1}.prefeitura-team-marker{width:42px;height:42px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(54,214,129,.96),rgba(37,128,246,.88));border:2px solid rgba(255,255,255,.92);box-shadow:0 0 0 8px rgba(54,214,129,.15),0 14px 36px rgba(6,20,36,.42);color:#fff;font-weight:1000;font-size:13px}.prefeitura-team-marker i{position:absolute;right:1px;top:1px;width:10px;height:10px;border-radius:999px;background:#36d681;box-shadow:0 0 14px #36d681;animation:prefeitura-team-pulse 1.4s infinite}.prefeitura-team-marker strong{letter-spacing:.02em}

/* Timeline operacional: manter visível no painel lateral imersivo */
.prefeitura-side{display:grid;grid-template-rows:auto auto auto auto minmax(240px,1fr);overflow:hidden}
.prefeitura-timeline{display:flex;flex-direction:column;min-height:240px;overflow:hidden}
.prefeitura-timeline>p{flex:0 0 auto}
.prefeitura-timeline>.prefeitura-timeline-filters{flex:0 0 auto;overflow:visible}
.prefeitura-timeline>[data-prefeitura-timeline]{display:grid;gap:10px;flex:1;min-height:180px;max-height:none;overflow:auto;padding-right:4px}
@media(max-width:1180px){.prefeitura-side{display:flex;overflow:visible}.prefeitura-timeline{min-height:280px}.prefeitura-timeline>[data-prefeitura-timeline]{min-height:210px}}

/* Rodapé operacional: valores compostos em uma linha, sem mini-cards internos */
.prefeitura-ops-footer>span{display:grid;gap:4px;border-radius:16px;padding:10px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.prefeitura-ops-footer strong{display:flex;align-items:baseline;gap:4px;white-space:nowrap;font-size:13px;line-height:1.15}
.prefeitura-ops-footer strong span{display:inline!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;min-height:0!important;color:inherit!important}
.prefeitura-ops-footer b{line-height:1.1}
@media(min-width:721px){.prefeitura-ops-footer>span{min-height:74px}}

/* Timeline operacional: não cortar dentro do painel lateral */
.prefeitura-side{overflow:auto!important;align-content:start}
.prefeitura-timeline{min-height:320px!important;overflow:visible!important}
.prefeitura-timeline>[data-prefeitura-timeline]{min-height:260px!important;max-height:360px!important;overflow:auto!important}
.prefeitura-timeline>.prefeitura-timeline-filters{min-height:auto!important;max-height:none!important;overflow:visible!important}
.prefeitura-fullscreen .prefeitura-side{overflow:auto!important}
.prefeitura-fullscreen .prefeitura-timeline{min-height:300px!important}
.prefeitura-fullscreen .prefeitura-timeline>[data-prefeitura-timeline]{min-height:240px!important;max-height:none!important}

/* Feed operacional inteligente */
.prefeitura-feed{min-height:0!important;display:flex!important;flex-direction:column;gap:10px;overflow:visible!important}
.prefeitura-feed-head{display:grid;gap:4px}.prefeitura-feed-head p{margin:0}.prefeitura-feed-head strong{display:flex;align-items:center;gap:8px;font-size:13px}.prefeitura-feed-head strong i{width:9px;height:9px;border-radius:999px;background:#36d681;box-shadow:0 0 16px #36d681;animation:pulse-dot 1.6s infinite}.prefeitura-feed-head span{color:var(--muted);font-size:12px;font-weight:800}.prefeitura-feed-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.prefeitura-feed-summary span{display:grid;gap:2px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.045);padding:8px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.prefeitura-feed-summary b{color:var(--text);font-size:16px;letter-spacing:0}.prefeitura-feed>[data-prefeitura-timeline]{display:grid!important;gap:8px;min-height:auto!important;max-height:none!important;overflow:visible!important}.prefeitura-feed-open{height:38px;border:1px solid rgba(143,220,255,.26);border-radius:15px;background:rgba(143,220,255,.1);color:#8fdcff;font-weight:1000;cursor:pointer}.prefeitura-feed-open:hover{background:rgba(143,220,255,.18)}
.prefeitura-feed-event{width:100%;display:grid!important;grid-template-columns:32px 46px minmax(0,1fr);gap:9px;align-items:center;text-align:left;color:var(--text);border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.055);padding:10px;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.prefeitura-feed-event:hover{transform:translateY(-1px);background:rgba(143,220,255,.095);border-color:rgba(143,220,255,.26);box-shadow:0 14px 34px rgba(0,0,0,.18)}.prefeitura-feed-event>i{width:32px;height:32px;border-radius:12px;display:grid;place-items:center;background:rgba(54,214,129,.14);color:#36d681}.prefeitura-feed-event time{font-weight:1000;color:#8fdcff;font-size:12px}.prefeitura-feed-event span{min-width:0}.prefeitura-feed-event span strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.prefeitura-feed-event span span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px;margin-top:2px}.prefeitura-feed-event em{grid-column:3;border:1px solid rgba(143,220,255,.2);border-radius:999px;width:max-content;padding:4px 8px;color:#8fdcff;font-size:10px;font-style:normal;font-weight:1000}.prefeitura-feed-event.is-critical>i{background:rgba(255,82,82,.16);color:#ff6b6b}.prefeitura-feed-event.is-photo>i{background:rgba(255,179,64,.16);color:#ffb340}.prefeitura-feed-event.is-croqui>i{background:rgba(181,140,255,.18);color:#b58cff}.prefeitura-feed-event.is-sync>i{background:rgba(103,232,249,.14);color:#67e8f9}.prefeitura-feed-event.is-team>i,.prefeitura-feed-event.is-region>i{background:rgba(99,200,255,.15);color:#63c8ff}.prefeitura-feed-event.is-empty{cursor:default;opacity:.82}.prefeitura-feed-event.is-empty:hover{transform:none;box-shadow:none}
.prefeitura-feed-drawer[hidden]{display:none}.prefeitura-feed-drawer{position:fixed;inset:0;z-index:2600;display:block}.prefeitura-feed-scrim{position:absolute;inset:0;background:rgba(1,8,14,.28);backdrop-filter:blur(3px);animation:prefeitura-feed-fade .16s ease}.prefeitura-feed-panel{position:absolute;right:18px;top:18px;bottom:18px;width:min(720px,40vw);min-width:420px;padding:16px;display:flex;flex-direction:column;gap:12px;animation:prefeitura-feed-slide .18s ease}.prefeitura-feed-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.prefeitura-feed-panel header p{margin:0 0 5px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;color:#8fdcff}.prefeitura-feed-panel h2{margin:0;font-size:30px;letter-spacing:-.05em}.prefeitura-feed-panel header span{color:var(--muted);font-weight:800}.prefeitura-feed-panel header button{width:38px;height:38px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:var(--text);cursor:pointer}.prefeitura-feed-search{height:46px;border-radius:17px;display:flex;align-items:center;gap:10px;padding:0 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}.prefeitura-feed-search input{width:100%;border:0;background:transparent;outline:0;color:var(--text);font:inherit;font-weight:800}.prefeitura-feed-drawer-filters{display:flex;gap:7px;flex-wrap:wrap}.prefeitura-feed-drawer-filters button{height:30px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);color:var(--muted);font-size:11px;font-weight:900;cursor:pointer}.prefeitura-feed-drawer-filters button.is-active,.prefeitura-feed-drawer-filters button:hover{color:#04131f;background:#8fdcff;border-color:transparent}.prefeitura-feed-full-list{display:grid;gap:9px;overflow:auto;padding-right:5px;min-height:0}.prefeitura-feed-full-list .prefeitura-feed-event{grid-template-columns:38px 58px minmax(0,1fr);padding:12px}.prefeitura-feed-full-list .prefeitura-feed-event>i{width:38px;height:38px;border-radius:14px}.prefeitura-feed-full-list .prefeitura-feed-event span strong{font-size:14px}.prefeitura-feed-full-list .prefeitura-feed-event span span{font-size:12px}@keyframes prefeitura-feed-fade{from{opacity:0}to{opacity:1}}@keyframes prefeitura-feed-slide{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}
@media(max-width:1180px){.prefeitura-feed-panel{width:min(520px,calc(100vw - 28px));min-width:0;right:14px;left:auto}.prefeitura-feed-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.prefeitura-feed-panel{inset:0;width:auto;border-radius:0}.prefeitura-feed-full-list .prefeitura-feed-event,.prefeitura-feed-event{grid-template-columns:34px 48px minmax(0,1fr)}.prefeitura-feed-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Painel inteligente contextual */
.prefeitura-side{display:flex!important;flex-direction:column!important;gap:12px!important;overflow:hidden!important;align-content:normal!important}.prefeitura-context-head{display:grid;gap:4px;flex:0 0 auto}.prefeitura-context-head p{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;color:#8fdcff}.prefeitura-context-head strong{font-size:18px;letter-spacing:-.03em}.prefeitura-context-head span{color:var(--muted);font-size:12px;font-weight:800}.prefeitura-side-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;flex:0 0 auto}.prefeitura-side-tabs button{height:38px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);color:var(--muted);font-size:11px;font-weight:1000;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .16s ease,color .16s ease,border-color .16s ease}.prefeitura-side-tabs button.is-active,.prefeitura-side-tabs button:hover{background:rgba(143,220,255,.14);border-color:rgba(143,220,255,.32);color:#fff}.prefeitura-side-panel{display:none;min-height:0;flex:1;overflow:auto}.prefeitura-side-panel.is-active{display:flex;flex-direction:column;gap:12px}.prefeitura-side-panel>.prefeitura-feed,.prefeitura-side-panel>.prefeitura-team-radar,.prefeitura-side-panel>.prefeitura-alert-feed{flex:1;min-height:0}.prefeitura-side-panel .prefeitura-team-radar>div{overflow:auto}.prefeitura-side-panel[data-side-panel="indicadores"]{gap:12px}.prefeitura-side-panel[data-side-panel="indicadores"] .prefeitura-search{flex:0 0 auto}.prefeitura-side-panel[data-side-panel="indicadores"] .prefeitura-side-metrics{grid-template-columns:1fr 1fr}.prefeitura-feed{height:100%;overflow:hidden!important}.prefeitura-feed>[data-prefeitura-timeline]{flex:1!important;overflow:auto!important;min-height:0!important;max-height:none!important}.prefeitura-alert-feed{display:grid;align-content:start;gap:10px}.prefeitura-alert-card{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;padding:12px;border-radius:17px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}.prefeitura-alert-card>i{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:rgba(54,214,129,.14);color:#36d681}.prefeitura-alert-card strong{display:block}.prefeitura-alert-card small{display:block;color:var(--muted);font-weight:800;margin-top:3px}.prefeitura-alert-card.is-critical>i{background:rgba(255,82,82,.16);color:#ff6b6b}.prefeitura-alert-card.is-attention>i,.prefeitura-alert-card.is-pending>i{background:rgba(255,179,64,.16);color:#ffb340}.prefeitura-fullscreen .prefeitura-side{overflow:hidden!important}.prefeitura-fullscreen .prefeitura-side-panel{overflow:auto}
@media(max-width:720px){.prefeitura-side{overflow:visible!important}.prefeitura-side-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.prefeitura-side-panel{overflow:visible}.prefeitura-side-panel[data-side-panel="indicadores"] .prefeitura-side-metrics{grid-template-columns:1fr}}

/* Polimento premium V3.3 */
.prefeitura-map-view{height:36px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08);padding:0 10px;color:var(--text);font-weight:900}.prefeitura-map-view select{border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-weight:900;max-width:126px}.prefeitura-controls [data-prefeitura-live].is-active{background:linear-gradient(135deg,#1ebf70,#36d681);border-color:transparent;color:#04131f;box-shadow:0 0 24px rgba(54,214,129,.24)}.prefeitura-context-card{display:grid;gap:8px;border-radius:19px;padding:13px;background:linear-gradient(145deg,rgba(143,220,255,.1),rgba(54,214,129,.06));border:1px solid rgba(143,220,255,.16)}.prefeitura-context-card p{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:900;color:#8fdcff}.prefeitura-context-card strong{font-size:18px;letter-spacing:-.03em}.prefeitura-context-card small{color:var(--muted);font-weight:800}.prefeitura-context-card div{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid rgba(255,255,255,.08);padding-top:7px}.prefeitura-context-card div span{color:var(--muted);font-size:12px;font-weight:900}.prefeitura-context-card div i{color:#8fdcff;margin-right:5px}.prefeitura-context-card div b{font-size:12px}.prefeitura-feed-event.is-new{animation:prefeitura-feed-new .28s ease both;border-color:rgba(54,214,129,.5);box-shadow:0 0 0 1px rgba(54,214,129,.18),0 18px 44px rgba(54,214,129,.16)}.prefeitura-feed-event strong b{display:inline-flex;margin-left:7px;padding:2px 7px;border-radius:999px;background:rgba(54,214,129,.18);color:#68f0a2;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.prefeitura-hull-ink{animation:prefeitura-ink-grow .42s ease-out both,prefeitura-hull-breathe 3.4s ease-in-out infinite}.prefeitura-progress-bar i{position:relative;overflow:hidden}.prefeitura-progress-bar i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);animation:prefeitura-progress-sweep 2.8s ease-in-out infinite}@keyframes prefeitura-feed-new{from{opacity:.35;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes prefeitura-hull-breathe{0%,100%{filter:drop-shadow(0 0 12px rgba(54,214,129,.24))}50%{filter:drop-shadow(0 0 22px rgba(54,214,129,.48))}}@keyframes prefeitura-progress-sweep{0%{transform:translateX(-110%)}65%,100%{transform:translateX(110%)}}
@media(max-width:720px){.prefeitura-map-view{width:100%;justify-content:center}.prefeitura-map-view select{max-width:none}.prefeitura-controls [data-prefeitura-live]{width:100%}}

/* Portal Prefeitura: saída protegida */
.prefeitura-live button[data-prefeitura-logout]{grid-column:1/3;justify-self:end;height:34px;border-radius:13px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:var(--text);font-weight:1000;cursor:pointer;padding:0 12px;display:inline-flex;align-items:center;gap:7px}.prefeitura-live button[data-prefeitura-logout]:hover{background:rgba(255,82,82,.16);border-color:rgba(255,82,82,.38);color:#fff}.prefeitura-live button[data-prefeitura-logout]:disabled{opacity:.58;cursor:wait}

/* Dropdowns do portal: menu legível no tema premium */
.prefeitura-map-view select,.prefeitura-speed select{background:#10283a;color:#f5fbff;border-radius:10px}.prefeitura-map-view select option,.prefeitura-speed select option{background:#10283a;color:#f5fbff}.prefeitura-map-view select option:checked,.prefeitura-speed select option:checked{background:#2179e9;color:#fff}
