/* Estilos exclusivos: publico/plano-diretor.html */


/* REGRA GLOBAL FINAL: frontend sem negrito */
html body,
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6,
html body label, html body legend,
html body button, html body input, html body select, html body textarea, html body option,
html body p, html body span, html body small, html body a,
html body strong, html body b,
html body th, html body td, html body li,
html body [role="button"], html body [role="tab"], html body [class*="title"],
html body [class*="label"], html body [class*="heading"], html body [class*="caption"] {
  font-weight: 400 !important;
}
/* Mantem somente o peso estrutural exigido por fontes de icones. */
html body .fa, html body .fas, html body .fa-solid,
html body [class^="fa-"], html body [class*=" fa-"] {
  font-weight: 900 !important;
}
html body .far, html body .fa-regular {
  font-weight: 400 !important;
}

/* PADRAO PUBLICO DE MODAL 20260713: compacto, galeria centralizada e fechamento vermelho */
.portal-modal-window .portal-modal-content {
  padding: 16px 18px 18px;
}

.portal-modal-window .portal-modal-head {
  margin-bottom: 8px;
  padding-right: 42px;
}

.portal-modal-window .portal-modal-head-top {
  gap: 8px;
  margin-bottom: 6px;
}

.portal-modal-window .portal-modal-head h3 {
  margin-top: 6px;
  font-size: 25px;
  line-height: 1.12;
}

.portal-modal-window .portal-detail-meta {
  margin-top: 7px;
}

.portal-modal-window .portal-detail-section {
  margin-top: 10px;
  padding-top: 10px;
}

.portal-modal-window .portal-detail-section h4 {
  margin-bottom: 6px;
  font-size: 15px;
}

.portal-modal-window .portal-detail-text {
  line-height: 1.45;
}

.portal-modal-window .portal-detail-grid {
  gap: 7px;
}

.portal-modal-window .portal-detail-item {
  gap: 3px;
  padding: 8px 9px;
  border-radius: 10px;
}

.portal-modal-window .portal-modal-layout.has-gallery {
  align-items: center;
}

.portal-modal-window .portal-modal-gallery {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
}

.portal-modal-window .portal-modal-gallery-card {
  width: 100%;
  min-height: 0;
}

.portal-modal-window .portal-modal-gallery-stage {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10 !important;
  height: auto;
  min-height: 0;
}

.portal-modal-window .portal-modal-gallery-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

.portal-modal-window .portal-modal-gallery-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center;
}

.portal-modal-window .portal-modal-gallery-dots {
  margin-top: 0;
  padding: 10px 0;
  background: transparent;
}

.portal-modal-window .portal-modal-close {
  background: #fff1f1;
  color: #cf2323;
  border: 1px solid #f2c4c4;
}

.portal-modal-window .portal-modal-close:hover {
  background: #fde6e6;
  color: #b91919;
}

@media (max-width: 900px) {
  .portal-modal-window .portal-modal-content {
    padding: 14px;
  }

  .portal-modal-window .portal-modal-layout.has-gallery {
    align-items: start;
  }

  .portal-modal-window .portal-modal-gallery-stage {
    aspect-ratio: 16 / 10 !important;
  }
}

@media (max-width: 560px) {
  .portal-modal-window .portal-modal-head h3 {
    font-size: 22px;
  }

  .portal-modal-window .portal-modal-gallery-stage {
    aspect-ratio: 4 / 3 !important;
  }
}


.plano-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 14px}.plano-toolbar input{width:min(520px,100%);height:44px;border:1px solid #cbdced;border-radius:10px;padding:0 14px;font-size:15px}.plano-toolbar span{color:#60758b}.plano-lista{display:grid;gap:12px;padding-bottom:28px}.plano-card{display:flex;align-items:center;gap:18px;border:1px solid #d5e2ef;border-radius:14px;background:#fff;padding:16px 18px;box-shadow:0 8px 24px rgba(14,54,89,.06)}.plano-card-main{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(420px,1fr);align-items:center;gap:20px;flex:1;min-width:0}.plano-card h3{margin:5px 0 4px;color:#0d4d86;font-size:19px}.plano-card p{margin:0;color:#5f7184;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plano-badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:#eaf8f2;color:#087252;font-size:12px}.plano-meta{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:8px}.plano-meta span,.plano-detail-grid span{border:1px solid #dbe7f2;border-radius:10px;padding:8px 10px;color:#263f56}.plano-meta small,.plano-detail-grid small{display:block;color:#0e4f88;margin-bottom:3px}.plano-detalhes{height:42px;padding:0 18px;border:0;border-radius:10px;background:#0b6fa4;color:#fff;cursor:pointer;white-space:nowrap}.plano-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:rgba(8,31,54,.68)}.plano-modal-box{width:min(1100px,96vw);max-height:calc(100vh - 40px);display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.34)}.plano-modal-box>header{display:flex;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #dbe7f2}.plano-modal-box h3{margin:6px 0 2px;color:#0d4d86;font-size:24px}.plano-modal-box header p{margin:0;color:#64788d}.plano-modal-box header button{flex:0 0 42px;height:42px;border:1px solid #f2c4c4;border-radius:10px;background:#fff1f1;color:#c92525;font-size:20px;cursor:pointer}.plano-modal-scroll{overflow-y:auto;overscroll-behavior:contain;padding:18px 22px 24px}.plano-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.plano-detail-section{border-top:1px solid #dbe7f2;margin-top:16px;padding-top:14px}.plano-detail-section h4{margin:0 0 8px;color:#0d4d86;font-size:17px}.plano-detail-section p{white-space:pre-wrap;line-height:1.55;color:#334d64}.plano-detail-section>a{color:#0b6fa4}.plano-files{display:grid;gap:8px}.plano-files a{display:flex;align-items:center;gap:10px;border:1px solid #dbe7f2;border-radius:10px;padding:10px 12px;color:#25435d;text-decoration:none}.plano-files a span{padding:5px 7px;border-radius:7px;background:#eaf4ff;color:#0b6fa4;font-size:11px}.plano-files a b{margin-left:auto;color:#0b6fa4}.plano-modal-open{overflow:hidden!important}@media(max-width:900px){.plano-card-main{grid-template-columns:1fr}.plano-meta{grid-template-columns:repeat(2,1fr)}.plano-detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.plano-toolbar,.plano-card{align-items:stretch;flex-direction:column}.plano-toolbar span{text-align:right}.plano-meta,.plano-detail-grid{grid-template-columns:1fr}.plano-detalhes{width:100%}.plano-modal{padding:8px}.plano-modal-box{max-height:calc(100vh - 16px)}}

/* PADRAO VISUAL INDIVIDUAL PLANO DIRETOR 20260713 */
body[data-page="plano-diretor"] {
  --pd-azul:#0b4d88;
  --pd-azul-escuro:#083f73;
  --pd-verde:#0a9868;
  --pd-vermelho:#c63c31;
  --pd-borda:#d5e2ee;
  --pd-fundo:#f3f7fb;
  --pd-campo:#f8fbfd;
  --pd-texto:#143b64;
  --pd-muted:#667b8f;
}
body[data-page="plano-diretor"] .public-content {
  background:var(--pd-fundo);
  padding:22px 0 34px;
}
body[data-page="plano-diretor"] .public-content > .container,
body[data-page="plano-diretor"] main.public-content .container {
  width:min(1320px,calc(100% - 32px));
  margin-inline:auto;
}
body[data-page="plano-diretor"] .public-content input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body[data-page="plano-diretor"] .public-content select {
  height:36px!important;
  min-height:36px!important;
  padding:0 12px!important;
  border:1px solid var(--pd-borda)!important;
  border-radius:8px!important;
  background:var(--pd-campo)!important;
  color:var(--pd-texto)!important;
  font-size:14px!important;
  box-sizing:border-box!important;
}
body[data-page="plano-diretor"] .public-content textarea {
  min-height:86px!important;
  padding:10px 12px!important;
  border:1px solid var(--pd-borda)!important;
  border-radius:8px!important;
  background:var(--pd-campo)!important;
  color:var(--pd-texto)!important;
  font-size:14px!important;
  line-height:1.4!important;
  box-sizing:border-box!important;
}
body[data-page="plano-diretor"] .public-content button,
body[data-page="plano-diretor"] .public-content .btn,
body[data-page="plano-diretor"] .public-content a[class*="btn"],
body[data-page="plano-diretor"] .public-content [role="button"] {
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:9px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  font-size:14px!important;
  line-height:1!important;
  box-sizing:border-box!important;
}
body[data-page="plano-diretor"] .public-content button svg,
body[data-page="plano-diretor"] .public-content .btn svg,
body[data-page="plano-diretor"] .public-content button i,
body[data-page="plano-diretor"] .public-content .btn i {
  width:16px!important;
  height:16px!important;
  font-size:16px!important;
  flex:0 0 16px!important;
}
body[data-page="plano-diretor"] .public-content form,
body[data-page="plano-diretor"] .public-content .card,
body[data-page="plano-diretor"] .public-content [class$="-card"],
body[data-page="plano-diretor"] .public-content [class*="-card "] {
  border-color:var(--pd-borda)!important;
  border-radius:14px!important;
}
body[data-page="plano-diretor"] .public-content table {
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid var(--pd-borda);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
body[data-page="plano-diretor"] .public-content th,
body[data-page="plano-diretor"] .public-content td {
  padding:10px 12px!important;
  border-bottom:1px solid #e4edf4!important;
  font-size:13px!important;
}
body[data-page="plano-diretor"] .portal-modal-window,
body[data-page="plano-diretor"] [class$="-modal-box"],
body[data-page="plano-diretor"] [class*="-modal-box "] {
  width:min(1320px,calc(100vw - 32px))!important;
  max-width:none!important;
  max-height:calc(100vh - 24px)!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
body[data-page="plano-diretor"] .portal-modal-close,
body[data-page="plano-diretor"] [class*="modal"] button[aria-label*="Fechar"],
body[data-page="plano-diretor"] [class*="modal"] button[aria-label*="fechar"] {
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  padding:0!important;
  border-radius:10px!important;
}
body[data-page="plano-diretor"] .portal-modal-gallery-prev,
body[data-page="plano-diretor"] .portal-modal-gallery-next,
body[data-page="plano-diretor"] [class*="modal"] [class*="prev"],
body[data-page="plano-diretor"] [class*="modal"] [class*="next"] {
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  border:1px solid rgba(11,77,136,.24)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--pd-azul)!important;
  box-shadow:0 4px 12px rgba(11,77,136,.14)!important;
}
@media(max-width:760px) {
  body[data-page="plano-diretor"] .public-content > .container,
  body[data-page="plano-diretor"] main.public-content .container {width:min(100% - 20px,1320px)}
  body[data-page="plano-diretor"] .public-content button,
  body[data-page="plano-diretor"] .public-content .btn,
  body[data-page="plano-diretor"] .public-content a[class*="btn"] {min-height:38px!important;padding-inline:13px!important}
}
