/* Estilos propios de diagnostico.html — externalizados desde el <style>
   en linea, que la CSP de produccion bloquea (style-src 'self'). */

.dg-hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-block:clamp(112px,14vh,160px) clamp(34px,5vh,56px);
  background:radial-gradient(ellipse 62% 86% at 78% 20%,rgba(63,217,155,.13),transparent 60%),
             linear-gradient(180deg,var(--void),var(--aubergine));
  border-bottom:1px solid var(--line);}
.dg-hero h1{font-family:var(--display);font-weight:700;letter-spacing:-.035em;
  font-size:clamp(2rem,4.8vw,3.4rem);line-height:1.05;max-width:19ch;text-wrap:balance;}
.dg-hero .lede{margin-top:20px;font-size:clamp(1.04rem,2vw,1.24rem);
  color:var(--bone-dim);max-width:56ch;line-height:1.55;}
.dg-meta{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:28px;
  font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;color:var(--bone-faint);}
.dg-meta b{color:var(--viridian);font-weight:400;}

.dg-wrap{padding-block:clamp(40px,6vh,72px);}
.dg-prog{position:sticky;top:76px;z-index:20;background:var(--void);
  padding-block:16px;border-bottom:1px solid var(--line);margin-bottom:34px;}
.dg-bar{height:3px;background:var(--line);overflow:hidden;}
.dg-fill{height:100%;width:0;background:var(--viridian);
  transition:width .5s cubic-bezier(.22,.61,.36,1);}
.dg-step{margin-top:11px;display:flex;justify-content:space-between;
  font-family:var(--mono);font-size:.71rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--bone-faint);}
.dg-step b{color:var(--heliotrope);font-weight:400;}

.dg-area{margin-bottom:44px;}
.dg-area > header{margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line);}
.dg-area .k{font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--heliotrope);}
.dg-area h2{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.6vw,1.72rem);
  letter-spacing:-.025em;margin-top:11px;}
.dg-area > header p{margin-top:9px;color:var(--bone-dim);max-width:64ch;font-size:.96rem;}

.dg-q{background:var(--card);border:1px solid var(--line);padding:24px 26px 26px;
  margin-bottom:13px;}
.dg-q > p{font-family:var(--display);font-weight:700;font-size:1.06rem;
  letter-spacing:-.015em;line-height:1.4;}
.dg-ops{display:grid;gap:8px;margin-top:16px;}
.dg-op{display:flex;align-items:flex-start;gap:12px;padding:13px 16px;
  border:1px solid var(--line);cursor:pointer;color:var(--bone-dim);font-size:.94rem;
  transition:border-color .3s var(--ease),background .3s var(--ease),color .3s var(--ease);}
.dg-op:hover{border-color:var(--line-strong);color:var(--bone);}
.dg-op input{appearance:none;width:16px;height:16px;border:1px solid var(--line-strong);
  border-radius:50%;flex:none;margin-top:3px;transition:all .25s var(--ease);}
.dg-op input:checked{border-color:var(--viridian);
  box-shadow:inset 0 0 0 4px var(--viridian);}
.dg-op:has(input:checked){border-color:rgba(63,217,155,.42);
  background:rgba(63,217,155,.05);color:var(--bone);}
.dg-op input:focus-visible{outline:2px solid var(--heliotrope);outline-offset:3px;}
.dg-nota{margin-top:14px;padding-left:14px;border-left:2px solid var(--line-strong);
  font-size:.86rem;color:var(--bone-faint);line-height:1.55;}

.dg-cierre{background:var(--card-2);border:1px solid var(--line-strong);
  border-top:3px solid var(--viridian);padding:clamp(28px,4vw,44px);margin-top:40px;}
.dg-cierre h2{font-family:var(--display);font-weight:700;
  font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.03em;}
.dg-cierre p{margin-top:13px;color:var(--bone-dim);max-width:58ch;}
.dg-form{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.dg-form input{flex:1 1 240px;padding:14px 16px;background:var(--void);
  border:1px solid var(--line-strong);color:var(--bone);font:inherit;font-size:.96rem;}
.dg-form input:focus{outline:none;border-color:var(--viridian);}
.dg-form input::placeholder{color:var(--bone-faint);}
.dg-form button{flex:none;}
.dg-form button:disabled{opacity:.4;cursor:not-allowed;}
.dg-priv{margin-top:14px;font-size:.84rem;color:var(--bone-faint);}

/* resultado */
.dg-res{display:none;}
.dg-res.on{display:block;}
.dg-nivel{text-align:center;padding:clamp(30px,5vw,52px) 0 clamp(24px,4vw,40px);}
.dg-nivel .k{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--bone-faint);}
.dg-score{font-family:var(--display);font-weight:700;font-size:clamp(4rem,13vw,7.5rem);
  line-height:1;letter-spacing:-.05em;margin-top:12px;font-variant-numeric:tabular-nums;}
.dg-score span{font-size:.32em;color:var(--bone-faint);letter-spacing:-.02em;}
.dg-etq{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.4vw,2.2rem);
  letter-spacing:-.03em;margin-top:6px;}
.n-ember{color:var(--ember);} .n-amethyst{color:var(--amethyst);}
.n-ice{color:var(--ice);} .n-viridian{color:var(--viridian);}
.dg-nivel > p{margin:18px auto 0;max-width:58ch;color:var(--bone-dim);line-height:1.6;}

.dg-radar{display:grid;gap:26px;align-items:center;margin-top:34px;}
@media(min-width:820px){.dg-radar{grid-template-columns:auto 1fr;gap:44px;}}
.dg-radar svg{width:min(340px,100%);height:auto;overflow:visible;}
.dg-tabla{display:grid;gap:2px;}
.dg-fila{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;gap:14px;
  align-items:center;padding:13px 0;border-bottom:1px solid var(--line);}
.dg-fila .n{font-size:.96rem;}
.dg-fila .b{height:5px;background:var(--line);overflow:hidden;}
.dg-fila .b i{display:block;height:100%;background:var(--heliotrope);}
.dg-fila .p{font-family:var(--mono);font-size:.85rem;color:var(--bone-dim);
  font-variant-numeric:tabular-nums;min-width:42px;text-align:right;}
.dg-fila.peor .b i{background:var(--ember);}
.dg-fila.peor .n{color:var(--ember);}

.dg-plan{margin-top:38px;}
.dg-plan h3{font-family:var(--display);font-weight:700;font-size:1.3rem;
  letter-spacing:-.025em;margin-bottom:18px;}
.dg-acciones{display:grid;gap:11px;counter-reset:ac;}
.dg-acc{counter-increment:ac;display:grid;grid-template-columns:auto 1fr;gap:16px;
  background:var(--card);border:1px solid var(--line);padding:18px 22px;}
.dg-acc::before{content:counter(ac,decimal-leading-zero);font-family:var(--mono);
  font-size:.76rem;color:var(--viridian);padding-top:2px;}
.dg-acc b{font-weight:600;display:block;margin-bottom:5px;}
.dg-acc span{color:var(--bone-dim);font-size:.93rem;line-height:1.55;}

@media print{
  .site-header,.dg-prog,.dg-form,.no-print{display:none !important;}
  body{background:#fff;color:#16101f;}
}
@media (prefers-reduced-motion:reduce){.dg-fill,.dg-op,.dg-op input{transition:none;}}
