/* TrairiObras 3.36.24.93.35 · 9367
   Hotfix visual pós-9366: remove faixa lateral duplicada, corrige contraste dos temas
   e isola o Mapa Legal dos estilos globais para manter sua cartografia estável. */

/* 1) Layout desktop: a sidebar é fixa e NÃO participa do fluxo. O main desloca uma única vez. */
@media (min-width:761px){
  .app-shell.refined-shell-9366{display:block!important;position:relative!important;width:100%!important;min-width:0!important;overflow-x:clip!important}
  .sidebar.refined-sidebar-9366{position:fixed!important;inset:0 auto 0 0!important;width:var(--sidebar-w)!important;min-width:var(--sidebar-w)!important;max-width:var(--sidebar-w)!important;height:100dvh!important;overflow:hidden!important;z-index:1000!important}
  .sidebar.refined-sidebar-9366 nav{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin}
  .main.refined-main-9366{display:block!important;position:relative!important;margin:0 0 0 var(--sidebar-w)!important;padding:0!important;width:auto!important;max-width:none!important;min-width:0!important}
  .content.refined-content-9366{margin:0!important;width:100%!important;max-width:none!important}
}

/* 2) Verde: branco continua como contraste/identidade, mas não é usado como fundo de botão primário. */
html[data-theme="verde"]{
  --accent:#2de49b;
  --accent-hover:#54ebb0;
  --accent-soft:rgba(45,228,155,.12);
  --accent-ink:#04261b;
  --signal:#2de49b;
}
html[data-theme="verde"] .btn.primary,
html[data-theme="verde"] button.primary,
html[data-theme="verde"] .action-primary-9366,
html[data-theme="verde"] input[type="submit"].primary{
  background:var(--accent)!important;border-color:var(--accent)!important;color:var(--accent-ink)!important;text-shadow:none!important
}
html[data-theme="verde"] .btn.primary:hover,
html[data-theme="verde"] button.primary:hover,
html[data-theme="verde"] .action-primary-9366:hover{background:var(--accent-hover)!important;border-color:var(--accent-hover)!important;color:var(--accent-ink)!important}

/* 3) Superfícies legadas: o tema controla fundo, texto e borda em conjunto. */
html[data-theme] .content .panel,
html[data-theme] .content .metric,
html[data-theme] .content .module-card,
html[data-theme] .content .req-action-card,
html[data-theme] .content .process-summary>div,
html[data-theme] .content .document-first-help,
html[data-theme] .content .process-owner-box,
html[data-theme] .content .collapsible-summary,
html[data-theme] .content .list-item,
html[data-theme] .content .ad-card{
  background:var(--surface-1)!important;color:var(--text-1)!important;border-color:var(--stroke)!important
}
html[data-theme] .content h1,
html[data-theme] .content h2,
html[data-theme] .content h3,
html[data-theme] .content h4,
html[data-theme] .content strong,
html[data-theme] .content dd{color:var(--text-1)}
html[data-theme] .content p,
html[data-theme] .content small,
html[data-theme] .content dt,
html[data-theme] .content .muted,
html[data-theme] .content .muted-9366{color:var(--text-2)!important}
html[data-theme] .content input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
html[data-theme] .content select,
html[data-theme] .content textarea{
  background:var(--surface-2)!important;color:var(--text-1)!important;border-color:var(--stroke)!important
}
html[data-theme] .content input::placeholder,
html[data-theme] .content textarea::placeholder{color:var(--text-3)!important;opacity:1}
html[data-theme] .content table{background:var(--surface-1)!important;color:var(--text-1)!important}
html[data-theme] .content th{background:var(--surface-2)!important;color:var(--text-2)!important;border-color:var(--stroke)!important}
html[data-theme] .content td{color:var(--text-1)!important;border-color:color-mix(in srgb,var(--stroke) 72%,transparent)!important}
html[data-theme] .content tbody tr:hover td{background:var(--surface-2)!important}
html[data-theme] .content .btn:not(.primary){background:var(--surface-2)!important;color:var(--text-1)!important;border-color:var(--stroke)!important}

/* 4) Mapa Legal: controles técnicos permanecem em paleta clara isolada.
      O mapa/canvas não recebe filtro, opacidade nem transformação do tema. */
.map-immersive-page .content.refined-content-9366{padding:0!important;overflow:hidden!important}
.map-immersive-page .ml2-shell{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}
.map-immersive-page .ml2-main,
.map-immersive-page .ml2-map,
.map-immersive-page #legalMap{width:100%!important;max-width:none!important;min-width:0!important}
.map-immersive-page #legalMap,
.map-immersive-page #legalMap canvas,
.map-immersive-page .maplibregl-canvas{filter:none!important;opacity:1!important;transform-origin:0 0}
.map-immersive-page .ml2-side,
.map-immersive-page .ml2-inspector,
.map-immersive-page .ml2-search-overlay,
.map-immersive-page .ml336-modal-card,
.map-immersive-page .map-config-dialog{
  color-scheme:light!important;background:#fff!important;color:#26384f!important;border-color:#d8e0ea!important
}
.map-immersive-page .ml2-side *,
.map-immersive-page .ml2-inspector *,
.map-immersive-page .ml2-search-overlay *,
.map-immersive-page .ml336-modal-card *,
.map-immersive-page .map-config-dialog *{color-scheme:light}
.map-immersive-page .ml2-side input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
.map-immersive-page .ml2-side select,
.map-immersive-page .ml2-side textarea,
.map-immersive-page .ml2-inspector input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
.map-immersive-page .ml2-inspector select,
.map-immersive-page .ml2-inspector textarea,
.map-immersive-page .ml2-search-overlay input,
.map-immersive-page .ml2-search-overlay select{
  background:#fff!important;color:#1d2939!important;border-color:#d8e0ea!important;box-shadow:none!important
}
.map-immersive-page .ml2-btn,
.map-immersive-page .ml324-zone-tools button,
.map-immersive-page .ml337-lineage-toggle,
.map-immersive-page .ml341-doc-actions button,
.map-immersive-page .ml341-doc-open{
  background:#fff!important;color:#26384f!important;border-color:#d8e0ea!important
}
.map-immersive-page .ml2-btn.active{background:#eaf3ff!important;color:#1558a5!important;border-color:#9fc3ef!important}
.map-immersive-page .ml2-title,
.map-immersive-page .ml2-toolbar strong,
.map-immersive-page .ml324-zone-head strong,
.map-immersive-page .ml324-zone-copy b,
.map-immersive-page .ml336-layer-group-title{color:#1f3148!important}
.map-immersive-page .ml2-sub,
.map-immersive-page .ml2-note,
.map-immersive-page .ml2-leg,
.map-immersive-page .ml2-check,
.map-immersive-page .ml324-zone-copy small{color:#66758a!important}
.map-immersive-page .maplibregl-popup-content{color-scheme:light!important;background:#fff!important;color:#172033!important}
.map-immersive-page .maplibregl-popup-content *{color:#172033}
.map-immersive-page .maplibregl-popup-tip{filter:none!important}

/* 5) Cabeçalho do mapa não pode esmagar a cartografia em desktop. */
@media (min-width:1160px){
  .map-immersive-page .refined-topbar-9366{min-height:86px!important;padding:10px 16px!important}
  .map-immersive-page .topbar-heading{min-width:250px;max-width:390px}
  .map-immersive-page .topbar-heading h1{font-size:20px!important}
  .map-immersive-page .topbar-heading p{font-size:9px!important}
  .map-immersive-page .refined-top-actions-9366{flex-wrap:wrap!important;row-gap:5px!important}
  .map-immersive-page .refined-global-search-9366,.map-immersive-page .municipal-header-9366{display:none!important}
  .map-immersive-page .content.refined-content-9366{height:calc(100dvh - 86px)!important}
  .map-immersive-page .ml2-shell{height:100%!important;min-height:0!important}
  .map-immersive-page .ml2-map{height:100%!important;min-height:0!important}
}

/* 6) Tablet/mobile: sem faixa lateral e sem largura de desktop residual. */
@media (max-width:760px){
  .app-shell.refined-shell-9366{display:block!important;width:100%!important;overflow-x:hidden!important}
  .main.refined-main-9366{margin:0!important;width:100%!important;max-width:100%!important}
  .content.refined-content-9366{width:100%!important;max-width:100%!important}
  .map-immersive-page .content.refined-content-9366{height:auto!important}
}
