/* Fase 2 — consistência visual, imagens e refinamento responsivo */

:root{
  --mdp-blue-deep:#082d48;
  --mdp-blue-soft:#eaf0f4;
  --mdp-burgundy:#981e2d;
  --mdp-paper:#fffdfa;
  --mdp-shadow-soft:0 12px 30px rgba(8,45,72,.08);
}

/* Fallback editorial para posts sem imagem destacada ou com mídia ausente */
.mdp-image-placeholder{
  position:relative;
  display:flex;
  width:100%;
  height:100%;
  min-height:100%;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  gap:5px;
  overflow:hidden;
  padding:18px;
  background:
    radial-gradient(circle at 82% 18%,rgba(179,138,74,.28),transparent 26%),
    linear-gradient(135deg,#082d48 0%,#102f45 54%,#541c27 100%);
  color:#fff;
}
.mdp-image-placeholder:before{
  content:"";
  position:absolute;
  width:160px;
  height:160px;
  right:-52px;
  top:-62px;
  border:1px solid rgba(255,255,255,.18);
  transform:rotate(34deg);
}
.mdp-image-placeholder:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:14px;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.5),transparent);
}
.mdp-placeholder-mark{
  position:relative;
  z-index:1;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2rem,4vw,4.1rem);
  font-weight:900;
  line-height:.82;
  letter-spacing:-.08em;
}
.mdp-image-placeholder small{
  position:relative;
  z-index:1;
  color:#ead7ad;
  font-family:"Inter",sans-serif;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.13em;
}
.mdp-fallback-image{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Hero mais editorial e legível */
.mdp-analysis-day{
  border-radius:3px;
  box-shadow:var(--mdp-shadow-soft);
}
.mdp-analysis-day-image .mdp-image-placeholder{
  justify-content:center;
  padding:42px;
}
.mdp-analysis-day-image .mdp-placeholder-mark{
  font-size:clamp(5rem,11vw,9rem);
  opacity:.26;
}
.mdp-analysis-day-image .mdp-image-placeholder small{
  opacity:.72;
}
.mdp-analysis-day-copy{
  text-shadow:0 1px 1px rgba(0,0,0,.16);
}
.mdp-analysis-day h1 a,
.mdp-stakes-story h2 a,
.mdp-radar-card h3 a{
  text-decoration-thickness:1px;
}
.mdp-analysis-day h1 a:hover{
  text-decoration-color:rgba(255,255,255,.55);
}

/* Agora na Política */
.mdp-now{
  box-shadow:0 8px 24px rgba(8,45,72,.045);
}
.mdp-now-item{
  transition:background .16s ease;
}
.mdp-now-item:hover{
  background:#f6f8fa;
}
.mdp-now-item h3{
  text-wrap:balance;
}

/* O que está em jogo */
.mdp-stakes{
  box-shadow:0 8px 24px rgba(8,45,72,.04);
}
.mdp-stakes-image .mdp-placeholder-mark{
  font-size:3rem;
}
.mdp-stakes-story h2{
  text-wrap:balance;
}

/* Radar consistente mesmo quando o post não possui imagem */
.mdp-radar-card{
  transition:background .18s ease,transform .18s ease;
}
.mdp-radar-card:hover{
  background:#f8fafb;
  transform:translateY(-1px);
}
.mdp-radar-image .mdp-image-placeholder{
  padding:12px;
}
.mdp-radar-image .mdp-placeholder-mark{
  font-size:2.4rem;
}
.mdp-radar-image .mdp-image-placeholder small{
  font-size:.48rem;
}
.mdp-radar-card h3{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
}

/* Blocos editoriais abaixo da dobra */
.analysis-feature,.election-feature,.spotlight-card,.city-column{
  box-shadow:0 6px 18px rgba(8,45,72,.035);
}
.analysis-image .mdp-image-placeholder,
.election-image .mdp-image-placeholder,
.spotlight-image .mdp-image-placeholder{
  min-height:100%;
}
.analysis-copy h3,.election-copy h3,.spotlight-copy h4{
  text-wrap:balance;
}
.headline-row h3,.election-item h3,.column-story h3,.city-story h4,.dual-story h3{
  text-wrap:pretty;
}

/* Miniaturas locais e Brasil/Paraná nunca deixam buracos */
.city-thumb,.dual-thumb{
  background:#e6ebee;
}
.city-thumb .mdp-image-placeholder,
.dual-thumb .mdp-image-placeholder{
  padding:8px;
}
.city-thumb .mdp-placeholder-mark,
.dual-thumb .mdp-placeholder-mark{
  font-size:1.55rem;
}
.city-thumb .mdp-image-placeholder small,
.dual-thumb .mdp-image-placeholder small{
  display:none;
}

/* Separação entre grandes seções */
.analysis-section,.elections-section,.local-editorial-section,.cities-section,.national-section{
  position:relative;
}
.analysis-section:before,.elections-section:before,.local-editorial-section:before,.cities-section:before,.national-section:before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:min(calc(100% - 32px),var(--wrap));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--line) 12%,var(--line) 88%,transparent);
}

/* Links e acessibilidade */
a:focus-visible,button:focus-visible{
  outline:3px solid #b38a4a;
  outline-offset:3px;
  border-radius:2px;
}
.mdp-editorial-nav a,
.mdp-now-more,
.section-link,
.spotlight-more{
  text-decoration:none;
}
.mdp-editorial-nav a:hover,
.mdp-now-more:hover,
.section-link:hover,
.spotlight-more:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}

/* Tablets */
@media(max-width:1000px){
  .mdp-analysis-day-image .mdp-placeholder-mark{font-size:7rem}
  .mdp-analysis-day-copy{width:min(90%,780px)}
}

/* Celular */
@media(max-width:700px){
  .mdp-phase1-lead{gap:16px}
  .mdp-analysis-day{min-height:430px}
  .mdp-analysis-day-copy{min-height:430px;padding:26px 22px}
  .mdp-analysis-day-image .mdp-image-placeholder{padding:24px}
  .mdp-analysis-day-image .mdp-placeholder-mark{font-size:5.5rem}
  .mdp-analysis-day h1{font-size:clamp(2rem,9.2vw,2.7rem);line-height:.98}
  .mdp-analysis-deck{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .mdp-now-item{grid-template-columns:48px 1fr;padding:13px 15px}
  .mdp-stakes-story>div{padding:21px 20px}
  .mdp-stakes-story h2{font-size:1.55rem}
  .mdp-radar-card{padding:14px 12px}
  .mdp-radar-card h3{-webkit-line-clamp:3}
  .analysis-copy,.election-copy,.spotlight-copy{padding:17px}
}

/* Telefones estreitos */
@media(max-width:460px){
  .wrap{width:min(calc(100% - 24px),var(--wrap))}
  .mdp-masthead{padding-block:18px}
  .mdp-wordmark-main{font-size:2.45rem}
  .mdp-wordmark-sub{font-size:1.32rem}
  .mdp-phase1-strip-inner{padding-block:9px}
  .mdp-analysis-day,.mdp-analysis-day-copy{min-height:410px}
  .mdp-analysis-day-copy{padding:22px 18px}
  .mdp-analysis-day h1{font-size:2rem}
  .mdp-why{margin-top:15px;padding-top:13px}
  .mdp-radar-image{aspect-ratio:16/8.4}
  .section-tight{padding-block:24px}
}
