/* Lenguaje visual compartido con Análisis de composición arquitectónica. */
:root{--paper:#fff;--ink:#0d0d0d;--ink-soft:#5c5c5c;--gris:#5c5c5c;--linea:#e5e5e5;--linea-fuerte:#0d0d0d;--campo:#f6f6f6;--fuente:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif}
/* Modo oscuro de las guías y la consulta de antecedentes (03/11/2026): las
   mismas variables con TOKENS_NCO_OSCURO (src/lib/tokens-nco.js). Sigue al
   sistema y obedece al botón de tema (data-theme); sólo en pantalla, porque
   la guía impresa es clara. Gana a los :root de cada página por
   especificidad. Las variables --g-* llevan los grises que estaban fijos. */
@media screen and (prefers-color-scheme:dark){:root[data-modo-oscuro]:not([data-theme="claro"]){--paper:#0A0C0B;--ink:#ECEDE7;--ink-soft:#A5AAA4;--gris:#A5AAA4;--linea:#2A2F2C;--linea-fuerte:#ECEDE7;--campo:#1B1F1D;--sello:#C9CCC5;--alerta:#F2877B;
 --g-subt:#C9CCC5;--g-borde:#686E68;--g-ficha:#131614;--g-tenue:#2A2F2C;--g-texto:#C9CCC5;--g-enlace:#ECEDE7;--g-aviso:#1B1F1D;--g-tarjeta:#131614;color-scheme:dark}}
@media screen{:root[data-modo-oscuro][data-theme="oscuro"]{--paper:#0A0C0B;--ink:#ECEDE7;--ink-soft:#A5AAA4;--gris:#A5AAA4;--linea:#2A2F2C;--linea-fuerte:#ECEDE7;--campo:#1B1F1D;--sello:#C9CCC5;--alerta:#F2877B;
 --g-subt:#C9CCC5;--g-borde:#686E68;--g-ficha:#131614;--g-tenue:#2A2F2C;--g-texto:#C9CCC5;--g-enlace:#ECEDE7;--g-aviso:#1B1F1D;--g-tarjeta:#131614;color-scheme:dark}}
body{background:var(--paper,#fff);color:var(--ink);font-family:var(--fuente);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{color:var(--ink-soft,#5c5c5c)}
h1{font-size:30px;font-weight:500;line-height:1.2;letter-spacing:.2px;margin:16px 0 10px}
h1 em{font-style:normal;font-weight:inherit}
h2{font-size:22px;font-weight:500;line-height:1.3}
h3{font-size:18px;font-weight:600}
.alcance-nacional,.consulta .aviso{border:0;border-left:2px solid var(--ink);background:transparent;padding:0 0 0 14px;margin:22px 0;font-size:13px;line-height:1.6;color:var(--ink-soft)}
.alcance-nacional strong,.consulta .aviso strong{color:var(--ink)}
.alcance-nacional p{max-width:78ch;margin:8px 0}
.detalle-alcance{margin:14px 0 0}
.detalle-alcance summary{cursor:pointer;font-size:12px;letter-spacing:.4px;color:var(--ink);padding:8px 0}
.detalle-alcance[open] summary{margin-bottom:10px}
.responsabilidades{font-size:13px;line-height:1.6;border-top:1px solid var(--ink);margin:24px 0}
.responsabilidades>div{grid-template-columns:minmax(150px,1fr) 2.5fr;padding:14px 0;gap:20px}
.responsabilidades dt{font-weight:500;color:var(--ink)}
.responsabilidades dd{color:var(--ink-soft)}
button{font-family:var(--fuente)}
:where(a,button,summary):focus-visible{outline:2px solid var(--ink);outline-offset:4px}
/* Guías con preguntas y fichas de ruta. */
.guia-rutas>header{max-width:880px;padding:28px 22px 20px;border-bottom:1px solid var(--ink)}
.guia-rutas>main{max-width:880px;padding:28px 22px 64px}
.guia-rutas>nav{max-width:836px}
.guia-rutas nav button{font-size:12px;letter-spacing:.4px;text-transform:none;padding:14px 16px;color:var(--ink-soft);min-height:44px}
.guia-rutas .firma{font-size:11px;letter-spacing:2.5px}
.guia-rutas .subt{font-size:16px;max-width:680px;color:var(--g-subt,#2e2e2e)}
.guia-rutas .pregunta{font-style:normal;font-weight:500;font-size:22px}
.guia-rutas .opciones{max-width:100%;gap:12px}
.guia-rutas .opciones button{border:1px solid var(--g-borde,#d5d5d5);padding:16px 18px;font-size:16px}
.guia-rutas .opciones button:hover{border-color:var(--ink)}
.guia-rutas .ficha-cab{background:var(--g-ficha,#fafafa)}
.guia-rutas .titulo-seccion{font-weight:500;font-size:22px}
.guia-rutas .btn-imprimir{font-size:12px;letter-spacing:0;text-transform:none;min-height:40px}
/* Etapas constructivas: misma escala de lectura que la herramienta. */
.guia-etapas .hoja{max-width:880px;padding:0 22px 64px}
.guia-etapas header{padding-top:28px}
.guia-etapas h1{font-size:30px;font-weight:500;margin:28px 0 12px;line-height:1.2}
.guia-etapas .cuadro{border-top:0;padding-top:0}
.guia-etapas .bajada{font-size:17px;max-width:680px}
.guia-etapas .bajada+p{font-size:15px;max-width:680px}
.guia-etapas .escala{margin-top:28px;padding-top:16px}
.guia-etapas .etapa{border-top:1px solid var(--ink);margin-top:28px}
.guia-etapas .etapa-cabecera{grid-template-columns:56px 1fr 24px;gap:14px;padding:22px 0 12px;min-height:64px}
.guia-etapas .etapa-titulo{font-size:22px;font-weight:500;line-height:1.3}
.guia-etapas .etapa-resumen{margin-left:70px;font-size:15px;max-width:680px}
.guia-etapas .etapa-cuerpo{margin-left:70px}
.guia-etapas .bloque p,.guia-etapas .bloque li{font-size:16px}
.guia-etapas .tick{min-height:44px;width:32px}
.guia-etapas .controles{gap:18px;flex-wrap:wrap}
.guia-etapas .controles button{font-size:12px;letter-spacing:0;text-transform:none;min-height:44px}
/* Consulta de fuentes oficiales. */
.consulta main{max-width:880px;padding:0 22px 64px}
.consulta header{padding-top:28px}
.consulta header>p:first-child{font-size:11px;letter-spacing:2px;color:var(--ink-soft)}
.consulta .tarjeta,.consulta section{border:0;border-top:1px solid var(--ink);padding:24px 0;margin:24px 0}
.consulta .tarjetas{gap:28px}
.consulta .tarjetas .tarjeta{margin:0}
.consulta .tarjeta p{font-size:15px;color:var(--ink-soft)}
.consulta button{border:1px solid var(--ink,#0d0d0d);border-radius:0;font-size:12px;background:var(--paper,white);color:var(--ink);min-height:40px}
.consulta dt{font-size:14px;font-weight:500}
.consulta dd{font-size:15px;color:var(--ink-soft);margin-bottom:20px}
.consulta .fecha,.consulta footer{font-size:13px;color:var(--ink-soft)}
@media(max-width:600px){
.guia-rutas>nav{margin:0 22px}
.responsabilidades>div{grid-template-columns:1fr;gap:5px;padding:12px 0}
.guia-etapas .etapa-cuerpo,.guia-etapas .etapa-resumen{margin-left:0}
.guia-etapas .etapa-cabecera{grid-template-columns:42px 1fr 20px;gap:10px}
.guia-etapas .etapa-titulo{font-size:20px}
.guia-rutas .membrete{gap:6px}
h1,.guia-etapas h1{font-size:28px}
.consulta .tarjetas{grid-template-columns:1fr}
}
@media print{
.detalle-alcance>summary{display:none}
.detalle-alcance::details-content{content-visibility:visible}
.detalle-alcance>*:not(summary){display:block!important}
.alcance-nacional,.consulta .aviso{font-size:9pt}
.responsabilidades>div{grid-template-columns:1fr 3fr}
.guia-etapas .etapa-cuerpo{margin-left:0}
.consulta main{max-width:none;padding:0}
}

/* Sin cuenta se lee, no se imprime (decisión del titular del 01/10/2026).
   /herramientas/registro-guias.js pone data-nco-impresion en <html> cuando
   la cuenta aceptó los términos de esta guía. Sin él, imprimir sólo saca
   este aviso; si el script no carga, la guía tampoco se imprime. */
@media print{
html:not([data-nco-impresion]) body>*{display:none!important}
html:not([data-nco-impresion]) body::before{content:"Para imprimir esta guía, inicie sesión con su cuenta y firme en ella los Términos de Uso y Deslinde. Leerla en pantalla no lo requiere. — NCO — Taller de Arquitectura";display:block;padding:2cm;font:14pt/1.5 Georgia,'Times New Roman',serif;color:#0D0D0D}
}
