/* Diagnóstico Vivienda Comfacasanare — estilos del Módulo 1
   Todo está bajo .dvc-app para no interferir con el tema de WordPress. */

.dvc-app{
  --dvc-verde-900:#16281f;
  --dvc-verde-700:#1e3b2f;
  --dvc-oro-600:#b98a2e;
  --dvc-oro-500:#d0a24a;
  --dvc-crema-100:#f7f3e8;
  --dvc-crema-50:#fbf9f3;
  --dvc-carbon-900:#23241f;
  --dvc-carbon-600:#54564c;
  --dvc-linea:#e2dcc9;
  --dvc-rojo:#b3402a;
  --dvc-ambar:#c3821a;
  --dvc-verde-ok:#2f6b47;
  --dvc-azul-futuro:#2f5f7a;

  max-width:560px;
  margin:0 auto;
  background:var(--dvc-crema-50);
  color:var(--dvc-carbon-900);
  font-family:'Public Sans', system-ui, sans-serif;
  line-height:1.5;
  border:1px solid var(--dvc-linea);
  border-radius:14px;
  overflow:hidden;
}
.dvc-app *{ box-sizing:border-box; }
.dvc-app h1, .dvc-app h2, .dvc-app h3{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600; margin:0 0 .4em 0; letter-spacing:-.01em;
}
.dvc-topbar{ padding:16px 20px 12px; border-bottom:1px solid var(--dvc-linea); }
.dvc-progreso{ height:3px; background:var(--dvc-linea); border-radius:2px; overflow:hidden; }
.dvc-progreso > div{ height:100%; background:var(--dvc-oro-600); transition:width .35s ease; }
.dvc-main{ padding:26px 20px 36px; }
.dvc-paso{ animation: dvc-aparece .25s ease; }
@keyframes dvc-aparece{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

.dvc-subtitulo{ color:var(--dvc-carbon-600); margin-bottom:20px; }
.dvc-eyebrow{ color:var(--dvc-oro-600); font-weight:600; font-size:.78rem; margin-bottom:8px; display:block; }

.dvc-opciones{ display:flex; flex-direction:column; gap:10px; margin-top:16px; }
.dvc-opcion{
  display:flex; align-items:center; justify-content:space-between; gap:12px; text-align:left;
  padding:16px 18px; border:1px solid var(--dvc-linea); background:#fff; border-radius:10px;
  font-family:inherit; font-size:1rem; color:inherit; cursor:pointer;
  transition:border-color .15s ease, background .15s ease;
}
.dvc-opcion:hover{ border-color:var(--dvc-oro-600); }
.dvc-opcion.dvc-activa{ border-color:var(--dvc-verde-700); background:var(--dvc-crema-100); }
.dvc-opcion .dvc-flecha{ color:var(--dvc-carbon-600); font-size:1.1rem; flex:none; }

.dvc-secundaria{ margin-top:20px; padding-top:16px; border-top:1px dashed var(--dvc-linea); font-size:.92rem; }
.dvc-secundaria button{ background:none; border:none; padding:0; color:var(--dvc-verde-700); font:inherit; font-weight:600; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }

.dvc-app fieldset{ border:none; padding:0; margin:0 0 20px 0; }
.dvc-app legend{ font-weight:600; margin-bottom:8px; font-size:.98rem; }
.dvc-campo{ display:block; margin-bottom:16px; }
.dvc-campo span{ display:block; font-size:.88rem; color:var(--dvc-carbon-600); margin-bottom:6px; }
.dvc-app input[type=text], .dvc-app input[type=email], .dvc-app input[type=tel], .dvc-app input[type=date]{
  width:100%; padding:12px 14px; border:1px solid var(--dvc-linea); border-radius:8px; background:#fff; color:inherit; font:inherit; font-size:1rem;
}
.dvc-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width:420px){ .dvc-grid2{ grid-template-columns:1fr; } }

.dvc-checkbox{ display:flex; gap:10px; align-items:flex-start; font-size:.88rem; color:var(--dvc-carbon-600); margin-bottom:12px; }
.dvc-checkbox input{ margin-top:3px; flex:none; }

.dvc-acciones{ display:flex; gap:10px; margin-top:24px; }
.dvc-btn{ font:inherit; font-weight:600; font-size:1rem; padding:14px 22px; border-radius:9px; border:1px solid transparent; cursor:pointer; }
.dvc-btn-primario{ background:var(--dvc-verde-700); color:#fdfbf5; flex:1; }
.dvc-btn-primario:hover{ background:var(--dvc-verde-900); }
.dvc-btn-primario:disabled{ opacity:.45; cursor:not-allowed; }
.dvc-btn-fantasma{ background:transparent; color:var(--dvc-carbon-600); border-color:var(--dvc-linea); }

.dvc-aviso{ background:var(--dvc-crema-100); border-left:3px solid var(--dvc-oro-600); padding:12px 14px; border-radius:4px; font-size:.86rem; color:var(--dvc-carbon-600); margin-top:6px; }

.dvc-tarjeta{ background:#fff; border:1px solid var(--dvc-linea); border-radius:12px; padding:20px; margin-bottom:16px; }
.dvc-tarjeta h3{ font-size:1.05rem; margin-bottom:14px; }
.dvc-datos-lista{ display:grid; grid-template-columns:1fr 1fr; gap:14px 16px; }
.dvc-datos-lista div span{ display:block; font-size:.78rem; color:var(--dvc-carbon-600); margin-bottom:2px; }
.dvc-datos-lista div strong{ font-size:.95rem; }

.dvc-chip{ display:inline-flex; align-items:center; gap:7px; padding:6px 12px; border-radius:100px; font-size:.85rem; font-weight:600; }
.dvc-chip .dvc-punto{ width:7px; height:7px; border-radius:50%; }
.dvc-chip-rojo{ background:rgba(179,64,42,.12); color:var(--dvc-rojo); } .dvc-chip-rojo .dvc-punto{ background:var(--dvc-rojo); }
.dvc-chip-ambar{ background:rgba(195,130,26,.14); color:var(--dvc-ambar); } .dvc-chip-ambar .dvc-punto{ background:var(--dvc-ambar); }
.dvc-chip-verde{ background:rgba(47,107,71,.13); color:var(--dvc-verde-ok); } .dvc-chip-verde .dvc-punto{ background:var(--dvc-verde-ok); }
.dvc-chip-gris{ background:var(--dvc-crema-100); color:var(--dvc-carbon-600); } .dvc-chip-gris .dvc-punto{ background:var(--dvc-carbon-600); }
.dvc-chip-azul{ background:rgba(47,95,122,.13); color:var(--dvc-azul-futuro); } .dvc-chip-azul .dvc-punto{ background:var(--dvc-azul-futuro); }

.dvc-plazo-fechas{ display:flex; gap:24px; margin-top:14px; flex-wrap:wrap; }
.dvc-plazo-fechas div span{ display:block; font-size:.78rem; color:var(--dvc-carbon-600); }
.dvc-plazo-fechas div strong{ font-size:1rem; }

.dvc-revisar{ margin:0; padding-left:20px; }
.dvc-revisar li{ margin-bottom:8px; font-size:.95rem; }

.dvc-semaforos{ display:flex; flex-direction:column; gap:10px; }
.dvc-semaforo-fila{ display:flex; align-items:center; justify-content:space-between; font-size:.92rem; padding:8px 0; border-bottom:1px solid var(--dvc-linea); }
.dvc-semaforo-fila:last-child{ border-bottom:none; }

.dvc-cta-final{ background:var(--dvc-verde-700); color:#fbf9f3; border-radius:12px; padding:22px; margin-bottom:16px; }
.dvc-cta-final h3{ color:#fbf9f3; }
.dvc-cta-final p{ color:#d7dfd6; font-size:.92rem; margin-bottom:16px; }
.dvc-cta-final a.dvc-btn-primario{ background:var(--dvc-oro-600); color:var(--dvc-verde-900); display:block; text-align:center; text-decoration:none; }
.dvc-cta-final a.dvc-btn-primario:hover{ background:var(--dvc-oro-500); }

.dvc-encabezado .dvc-saludo{ color:var(--dvc-carbon-600); font-size:.95rem; margin-bottom:2px; }
