/* TDDC · Salud respiratoria — estilos (namespaced tddc-resp-*).
   Identidad: marino #1F4E79, acento oro #B0894F, texto #333, titulares Roboto. */
.tddc-resp-wrap{
  --azul:#1f4e79;--azul-osc:#0c3b6e;--rosa:#B0894F;--rosa-osc:#7D5F2E;
  --tinta:#333;--gris:#5b6b73;--linea:#e2e6ee;--fondo:#f6f7fb;
  --bien:#3e7c59;--bien-bg:#eef4f0;--medio:#c08a3e;--medio-bg:#fbf5ea;
  --alto:#b0485b;--alto-bg:#fbeef1;--muyalto:#b0344b;--radio:6px;
  max-width:640px;margin:0 auto;color:var(--tinta);
  font-family:-apple-system,"system-ui","Segoe UI",Roboto,Arial,sans-serif;line-height:1.5;
}
.tddc-resp-wrap *{box-sizing:border-box}
.tddc-resp-card{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:22px;box-shadow:0 6px 24px rgba(12,59,110,.07)}
.tddc-resp-h1,.tddc-resp-h2,.tddc-resp-h3{font-family:Roboto,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--azul-osc);margin:.2em 0 .1em}
.tddc-resp-h1{font-size:1.5rem;font-weight:600;line-height:1.15;color:var(--azul)}
.tddc-resp-h2{font-size:1.1rem;margin-bottom:.6em}
.tddc-resp-h3{font-size:.98rem;margin:0 0 4px}
.tddc-resp-sub{color:var(--gris);font-size:.92rem;margin:0 0 14px}
.tddc-resp-tag{display:inline-block;font-size:.75rem;background:#F4EEE0;color:var(--rosa-osc);border-radius:var(--radio);padding:2px 10px;margin-bottom:6px}
.tddc-resp-progress{height:6px;background:var(--linea);border-radius:var(--radio);margin:14px 0 20px;overflow:hidden}
.tddc-resp-bar{height:100%;background:var(--azul);width:0;transition:width .3s}
.tddc-resp-label{display:block;font-weight:600;margin:14px 0 6px}
.tddc-resp-hint{font-weight:400;color:var(--gris);font-size:.85rem;margin:2px 0 0}
.tddc-resp-wrap input[type=number]{width:100%;padding:11px;border:1px solid var(--linea);border-radius:var(--radio);font-size:1rem;background:#fff}
.tddc-resp-seg{display:flex;gap:8px;flex-wrap:wrap}
.tddc-resp-seg.col{flex-direction:column}
.tddc-resp-seg button{flex:1;min-width:110px;padding:11px;border:1px solid var(--linea);background:#fff;border-radius:var(--radio);cursor:pointer;font-size:.95rem;color:var(--tinta);text-align:left}
.tddc-resp-seg button[aria-pressed=true],.tddc-resp-seg button[aria-checked=true]{border-color:var(--azul);background:#e9f0f7;color:var(--azul-osc);font-weight:600}
.tddc-resp-seg button:focus-visible,.tddc-resp-wrap input:focus-visible,.tddc-resp-btn:focus-visible,.tddc-resp-link:focus-visible,.tddc-resp-cita:focus-visible{outline:2px solid var(--azul-osc);outline-offset:2px}
.tddc-resp-seg[aria-invalid=true]{outline:2px solid var(--muyalto);outline-offset:2px;border-radius:var(--radio)}
.tddc-resp-wrap input[aria-invalid=true]{border-color:var(--muyalto)}
.tddc-resp-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}
.tddc-resp-btn{padding:12px 18px;border-radius:var(--radio);border:1px solid var(--azul);background:var(--azul);color:#fff;font-size:1rem;cursor:pointer;font-weight:600}
.tddc-resp-btn.sec{background:#fff;color:var(--azul-osc)}
.tddc-resp-aviso{border-left:4px solid var(--alto);background:var(--alto-bg);padding:12px 14px;border-radius:var(--radio);margin:10px 0}
.tddc-resp-aviso.urgente{border-color:var(--muyalto);background:#fdf0f3}
.tddc-resp-nivel{display:flex;align-items:center;gap:12px;padding:16px;border-radius:var(--radio);margin:8px 0 14px;border:2px solid}
.tddc-resp-nivel .ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}
.tddc-resp-nivel .ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tddc-resp-nivel .txt{flex:1 1 auto;min-width:0}
.tddc-resp-nivel .txt strong{display:block;font-size:1.1rem}
.tddc-resp-nivel.n-bien{border-color:var(--bien);background:var(--bien-bg);color:var(--bien)}
.tddc-resp-nivel.n-medio{border-color:var(--medio);background:var(--medio-bg);color:var(--medio)}
.tddc-resp-nivel.n-alto{border-color:var(--alto);background:var(--alto-bg);color:var(--alto)}
.tddc-resp-nivel .txt{color:var(--tinta)}
.tddc-resp-bloque{border:1px solid var(--linea);border-radius:var(--radio);padding:14px;margin:12px 0}
.tddc-resp-bloque ul{margin:6px 0;padding-left:20px}
.tddc-resp-bloque li{margin:3px 0;font-size:.92rem}
.tddc-resp-novalid{border:2px solid var(--medio);background:var(--medio-bg);border-radius:var(--radio);padding:12px 14px;margin:8px 0 14px;font-size:.92rem;display:flex;gap:10px;align-items:flex-start;color:var(--medio)}
.tddc-resp-novalid .ico{flex:0 0 auto;line-height:1.2;display:inline-flex}
.tddc-resp-novalid .ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tddc-resp-novalid>span:last-child{color:var(--tinta)}
.tddc-resp-novalid strong{display:block;margin-bottom:2px}
.tddc-resp-alarma{border-left:4px solid var(--muyalto);background:#fdeef1;padding:12px 14px;border-radius:var(--radio);margin:10px 0;font-size:.9rem}
.tddc-resp-alarma ul{margin:6px 0;padding-left:20px}
.tddc-resp-alarma li{margin:3px 0}
.tddc-resp-disc{font-size:.85rem;color:var(--gris);border-top:1px solid var(--linea);padding-top:12px;margin-top:14px}
.tddc-resp-cta{margin-top:16px;padding:14px;border:1px solid var(--rosa);border-radius:var(--radio);background:#F7F2E8}
.tddc-resp-cta strong{color:var(--rosa-osc)}
.tddc-resp-cita{display:inline-block;margin-top:8px;padding:9px 16px;background:var(--rosa);color:#14212B;border-radius:var(--radio);text-decoration:none;font-weight:600;font-size:.92rem}
.tddc-resp-consult{font-size:.85rem;color:var(--gris);margin:10px 0 0}
.tddc-resp-pie{text-align:center;color:var(--gris);font-size:.8rem;margin-top:12px}
.tddc-resp-err{border-left:4px solid var(--muyalto);background:#fdeef1;color:#7a1b2c;padding:11px 14px;border-radius:var(--radio);margin:0 0 12px;font-size:.92rem;font-weight:600}
.tddc-resp-link{color:var(--rosa);text-decoration:underline}
.tddc-resp-link:hover{color:var(--rosa-osc)}
.tddc-resp-hide{display:none}
.tddc-resp-preview-flag{background:#fff3cd;border:1px solid #e0c766;color:#7a5b00;font-size:.82rem;padding:8px 12px;border-radius:var(--radio);margin:0 auto 10px;max-width:640px;text-align:center}
.tddc-resp-aviso{max-width:640px;margin:10px auto}
@media print{.tddc-resp-nav,.tddc-resp-cta,.tddc-resp-progress,.tddc-resp-preview-flag{display:none}.tddc-resp-card{border:none;box-shadow:none}}
