/* Em Nível Molecular | Identidade editorial v3 — apenas interface */
:root {
  --enm3-ink: #10263f;
  --enm3-deep: #102e59;
  --enm3-blue: #2757c7;
  --enm3-mist: #f4f8ff;
  --enm3-line: #dfebf9;
}
#inicio.enm3-home { padding-top: 1.1rem; }
.enm3-home .enm3-hero {
  /* Cabeçalho original: área branca, sem moldura azul, gradientes ou círculos decorativos. */
  position: relative;
  margin-bottom: 1.65rem;
  padding: 2.6rem 0 2rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.enm3-home .enm3-hero h1 { color: var(--enm3-deep); letter-spacing: -.045em; max-width: 700px; }
.enm3-home .enm3-hero p { max-width: 670px; }
.enm3-eyebrow, .enm3-section-kicker, .enm3-dashboard-eyebrow {
  color: var(--enm3-blue) !important; font-size: .77rem !important;
  font-weight: 800 !important; letter-spacing: .14em; text-transform: uppercase;
  margin: 0 0 .65rem !important;
}
.enm3-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.65rem; }
.enm3-btn {
  min-height: 44px; padding: .72rem 1.18rem; border: 1px solid transparent;
  border-radius: 10px; font: inherit; font-size: .94rem; font-weight: 750;
  color: white; background: var(--enm3-blue); cursor: pointer;
  box-shadow: 0 8px 20px rgba(39,87,199,.13); transition: transform .16s ease, box-shadow .16s ease;
}
.enm3-btn:hover { transform: translateY(-1px); box-shadow: 0 12px 23px rgba(39,87,199,.18); }
.enm3-btn:focus-visible { outline: 3px solid #85b6ff; outline-offset: 2px; }
.enm3-btn--outline { background: white; color: var(--enm3-deep); border-color: #c9d9ef; box-shadow: none; }
.enm3-btn--text { background: transparent; color: var(--enm3-blue); box-shadow: none; border-color: #d5e2f3; }
.enm3-home .enm3-hero .enm3-hero-note { margin-top: 1.2rem; color: #57708f; font-size: .86rem; }
.enm3-home .hero-logo { width: min(100%, 300px); border-radius: 20px; box-shadow: none; }
.enm3-feature {
  display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  gap: 0; border: 1px solid var(--enm3-line); background: white;
  border-radius: 24px; overflow: hidden; margin: .5rem 0 2.25rem;
  box-shadow: 0 12px 34px rgba(16,46,89,.055);
}
.enm3-feature[hidden] { display: none; }
.enm3-feature-info { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: .85rem; padding: clamp(1.6rem, 3vw, 3rem); }
.enm3-pill { color: #12459b; background: #e9f1ff; font-size: .72rem; letter-spacing: .09em; font-weight: 800; padding: .35rem .65rem; border-radius: 999px; }
.enm3-feature-category { margin: 0; font-weight: 750; color: var(--enm3-blue); font-size: .86rem; }
.enm3-feature h2 { color: var(--enm3-ink); font-family: 'IBM Plex Serif', serif; font-size: clamp(1.65rem, 2.4vw, 2.55rem); line-height: 1.24; margin: 0; }
.enm3-feature-summary { color: #536780; margin: 0; max-width: 700px; }
.enm3-feature-footer { margin-top: .35rem; display: flex; align-items: center; flex-wrap: wrap; gap: 1.1rem; }
.enm3-feature-footer span { color: #73849a; font-size: .84rem; }
.enm3-feature-cover { position: relative; min-height: 330px; background: linear-gradient(135deg,#d7e8ff,#8eb8e8); }
.enm3-feature-cover img { display: block; position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; }
.enm3-feature-no-image { grid-template-columns: 1fr; }
.enm3-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.1rem; }
.enm3-section-heading h2 { margin: 0 !important; color: var(--enm3-deep); }
.enm3-topics { margin-bottom: 2.3rem; }
.enm3-topics-list { display: flex; flex-wrap: wrap; gap: .7rem; }
.enm3-btn--topic { background: #f6f9fe; box-shadow: none; color: #284a76; border: 1px solid #dce7f5; border-radius: 999px; padding: .58rem .9rem; min-height: 40px; }
.enm3-topics-empty { color: #63758f; }
.enm3-recent .posts-grid .post-card { border-radius: 18px; border-color: #e1e9f3; box-shadow: 0 8px 25px rgba(16,46,89,.035); }
.enm3-recent .posts-grid .post-image { border-radius: 12px; }
.enm3-recent { margin-bottom: 2.2rem; }
/* Painel: os controles originais e suas IDs permanecem intactos */
.enm3-admin .admin-panel-header { background: linear-gradient(112deg, #102b53, #234b80); border-radius: 18px; padding: 1.6rem 1.8rem; color: #fff; margin-bottom: 1.35rem; }
.enm3-admin .admin-panel-header h3 { color: #fff; margin: .15rem 0 .25rem; font-size: clamp(1.45rem, 2vw, 2rem); }
.enm3-admin .admin-panel-header p { color: #d7e7ff; margin-bottom: 0; }
.enm3-admin .admin-panel-header .enm3-dashboard-eyebrow { color: #a8cdfa !important; }
.enm3-dashboard { border: 1px solid var(--enm3-line); border-radius: 18px; padding: 1.25rem; background: #f8fbff; margin-bottom: 1.4rem; }
.enm3-dashboard-header { display: flex; align-items: center; justify-content: space-between; gap: .85rem; margin-bottom: 1.15rem; }
.enm3-dashboard-header h4 { font-size: 1.4rem; font-weight: 750; color: var(--enm3-deep); margin: 0; }
.enm3-metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .8rem; }
.enm3-metric-card { background: white; border: 1px solid #e0e9f5; border-radius: 14px; padding: 1.05rem; min-width: 0; }
.enm3-metric-title { font-size: .86rem; color: #566a86; margin: 0; font-weight: 650; }
.enm3-metric-value { display: block; font-size: clamp(1.5rem,2vw,2.15rem); color: var(--enm3-deep); font-weight: 850; margin: .32rem 0; line-height: 1.15; font-variant-numeric: tabular-nums; }
.enm3-metric-detail { display: block; color: #7186a0; font-size: .76rem; }
.enm3-shortcuts { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: .95rem; }
.enm3-shortcuts .enm3-btn { min-height: 36px; padding: .45rem .8rem; font-size: .84rem; }
.enm3-admin .admin-subnav { gap: .45rem; margin-bottom: 1.4rem; }
.enm3-admin .admin-tab-link { border-radius: 10px; }
.enm3-admin .admin-tab-link.active { color: white; background: #2757c7; border-color: #2757c7; }
.enm3-admin-search-row { display: grid; grid-template-columns: minmax(160px,1fr) minmax(140px, .5fr) auto; gap: .65rem; align-items: center; margin: 1rem 0 .85rem; }
.enm3-admin-search, .enm3-admin-filter { display: block; width: 100%; min-width: 0; padding: .67rem .78rem; border: 1px solid #cddced; border-radius: 10px; background: white; color: #213d60; font: inherit; font-size: .87rem; }
.enm3-admin-result { color: #62768d; font-size: .8rem; white-space: nowrap; }
.enm3-admin .admin-post-item[hidden] { display: none !important; }
@media (max-width: 980px) {
  .enm3-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .enm3-feature { grid-template-columns: 1fr; }
  .enm3-feature-cover { min-height: 220px; max-height: 320px; }
  .enm3-feature-cover img { position: static; min-height: 220px; max-height: 320px; }
}
@media (max-width: 700px) {
  #inicio.enm3-home { padding-top: .65rem; }
  .enm3-home .enm3-hero { padding: 1.65rem 0 1.5rem; border-radius: 0; gap: 1.3rem; }
  .enm3-home .hero-logo { max-width: 165px; }
  .enm3-feature { border-radius: 16px; }
  .enm3-feature-info { padding: 1.4rem; }
  .enm3-feature-footer { align-items: stretch; }
  .enm3-feature-footer button { width: 100%; }
  .enm3-section-heading { align-items: flex-start; flex-wrap: wrap; }
  .enm3-dashboard-header { flex-direction: column; align-items: stretch; }
  .enm3-dashboard-header button { width: 100%; }
  .enm3-admin .admin-panel-header { padding: 1.25rem; }
  .enm3-admin-search-row { grid-template-columns: 1fr; }
  .enm3-shortcuts .enm3-btn { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .enm3-btn { transition: none; }
}
