/* La paleta mezcla azul institucional, rojo dominicano y un fondo de papel. */
.etc-provenance{margin:1.5rem 0;padding:1rem 1.2rem;border:1px solid #b9cade;border-radius:12px;background:#eef5fb}.etc-provenance p{margin:.35rem 0}
.etc-code-meta{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0}.etc-code-meta>*{padding:.45rem .7rem;border-radius:999px;background:#e8eef5}.etc-code-tools{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin:1.2rem 0}.etc-code-tools label{display:grid;gap:.4rem;font-weight:800}.etc-code-tools input{min-height:48px;padding:.7rem;border:1px solid #8795a5;border-radius:8px}.etc-code-layout{display:grid;grid-template-columns:minmax(220px,35%) 1fr;gap:1rem;min-height:420px}.etc-code-results{display:grid;align-content:start;gap:.4rem;max-height:620px;overflow:auto}.etc-code-results button{text-align:left;padding:.7rem;border:1px solid #c8d2df;border-radius:8px;background:#fff;color:#15324f;cursor:pointer}.etc-code-results button:hover,.etc-code-results button:focus{border-color:#073b72;background:#eef5fb}.etc-code-reader{padding:1.2rem;border-radius:12px;background:#f7f4ed;max-height:620px;overflow:auto}.etc-code-reader h3{margin-top:0;color:#073b72}.etc-code-reader p{white-space:pre-wrap}@media(max-width:700px){.etc-code-tools,.etc-code-layout{grid-template-columns:1fr}.etc-code-results{max-height:300px}}
.etc-reader-tools{position:sticky;top:0;z-index:5;display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;padding:.65rem;margin:1rem 0;border:1px solid #d7dde5;border-radius:12px;background:rgba(255,255,255,.96)}.etc-reader-tools button,.etc-code-topics button,.etc-article-actions button,.etc-code-tools>button{padding:.55rem .75rem;border:1px solid #7890aa;border-radius:8px;background:#fff;color:#073b72;font-weight:700;cursor:pointer}.etc-compare-topic,.etc-archive-search{display:grid;gap:.4rem;max-width:520px;margin:1rem 0;font-weight:800}.etc-archive-search input{min-height:48px;padding:.7rem;border:1px solid #8795a5;border-radius:8px}.etc-pdf-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.2rem}.etc-pdf-compare iframe{width:100%;height:70vh;min-height:520px;border:1px solid #8795a5;border-radius:10px;background:#fff}.etc-code-tools{grid-template-columns:2fr repeat(3,1fr) auto}.etc-code-topics{display:flex;gap:.45rem;flex-wrap:wrap;margin:1rem 0}.etc-article-actions{display:flex;justify-content:flex-end;gap:.45rem;position:sticky;top:0;background:#f7f4ed;padding-bottom:.5rem}.etc-high-contrast{--etc-blue:#001f3f;--etc-red:#7a0015;--etc-ink:#000}.etc-high-contrast .etc-section{border-color:#000}.etc-roomy{line-height:1.85}.etc-roomy p{margin-bottom:1.4em}@media(max-width:900px){.etc-code-tools{grid-template-columns:1fr 1fr}.etc-pdf-compare{grid-template-columns:1fr}.etc-pdf-compare iframe{height:60vh}}@media print{.etc-reader-tools,.etc-jumps,.etc-code-results,.etc-code-tools,.etc-code-topics,.etc-pdf-compare{display:none!important}.etc-code-layout{display:block}.etc-code-reader{max-height:none;overflow:visible}}
.etc-primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.15rem;border:0;border-radius:10px;background:#073b72;color:#fff;font-weight:900;cursor:pointer}.etc-primary-action:hover,.etc-primary-action:focus{background:#0a4f93}.etc-pagination{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:1.2rem}/* El atributo hidden debe ganar al display:flex para que el paginador no ocupe espacio cuando hay diez resultados o menos. */.etc-pagination[hidden]{display:none!important}.etc-pagination button{min-height:44px;padding:.55rem .9rem;border:1px solid #7890aa;border-radius:8px;background:#fff;color:#073b72;font-weight:800;cursor:pointer}.etc-pagination button:disabled,.etc-article-actions button:disabled{cursor:not-allowed;opacity:.48}.etc-pagination span{font-weight:800}.etc-page-turn{transform-origin:left center;animation:etc-page-turn .42s ease both}@keyframes etc-page-turn{0%{opacity:.3;transform:perspective(900px) rotateY(-7deg) translateX(10px)}100%{opacity:1;transform:perspective(900px) rotateY(0) translateX(0)}}@media(prefers-reduced-motion:reduce){.etc-page-turn{animation:none!important}html:focus-within{scroll-behavior:auto}}
.etc-shell{--etc-blue:#073b72;--etc-red:#b31b34;--etc-ink:#182334;--etc-paper:#f7f4ed;max-width:1180px;margin:0 auto;color:var(--etc-ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.etc-shell *{box-sizing:border-box}.etc-hero{padding:clamp(2rem,6vw,5rem);color:#fff;border-radius:24px;background:linear-gradient(135deg,#052b55 0%,#0a4d8c 60%,#8f1830 100%);box-shadow:0 18px 50px rgba(6,42,80,.2)}.etc-hero h1{margin:.25rem 0 .75rem;color:#fff;font-size:clamp(2.4rem,6vw,5rem);line-height:.95}.etc-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800}.etc-notice{padding:1rem 1.2rem;border-left:4px solid #f2c14e;background:rgba(255,255,255,.12);border-radius:6px}.etc-jumps{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0}.etc-jumps a,.etc-doc-links a,.etc-source{padding:.75rem 1rem;border-radius:999px;background:var(--etc-blue);color:#fff!important;text-decoration:none;font-weight:700}.etc-section{padding:clamp(2rem,5vw,4rem) 0;border-bottom:1px solid #d7dde5}.etc-section h2{margin:.2rem 0 1rem;font-size:clamp(1.8rem,4vw,3rem)}.etc-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.etc-filter{max-width:360px;margin:1.5rem 0}.etc-filter label,.etc-pickers label{display:grid;gap:.45rem;font-weight:800}.etc-shell select{width:100%;min-height:48px;padding:.65rem;border:1px solid #8795a5;border-radius:8px;background:#fff;color:var(--etc-ink)}.etc-change-list{display:grid;gap:1rem}.etc-change{overflow:hidden;border:1px solid #d7dde5;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(7,59,114,.07)}.etc-change header{display:flex;justify-content:space-between;padding:.85rem 1.1rem;color:#fff;background:var(--etc-blue)}.etc-two{display:grid;grid-template-columns:1fr 1fr}.etc-two>div{padding:1rem 1.2rem}.etc-two>div+div{border-left:1px solid #d7dde5;background:#f0f6fb}.etc-two h3{margin:0 0 .5rem;font-size:1rem}.etc-plain{margin:0;padding:1rem 1.2rem;background:#fff7dc;border-top:1px solid #eadba4}.etc-compare{padding-left:clamp(1rem,4vw,3rem);padding-right:clamp(1rem,4vw,3rem);background:var(--etc-paper);border-radius:20px}.etc-pickers{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:1rem}.etc-swap{min-height:48px;padding:.7rem 1rem;border:0;border-radius:8px;background:var(--etc-red);color:#fff;font-weight:800;cursor:pointer}.etc-doc-links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.2rem}.etc-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}.etc-timeline article,.etc-law-grid article{display:grid;gap:.45rem;padding:1rem;border:1px solid #d7dde5;border-radius:12px;background:#fff}.etc-timeline strong{font-size:1.5rem;color:var(--etc-red)}.etc-timeline span{font-size:.88rem}.etc-law-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.etc-law-grid h3{margin:0;color:var(--etc-blue)}.etc-method{margin:2rem 0;padding:1.5rem;border-radius:16px;background:#101b2a;color:#eaf1f7}.etc-method h2{color:#fff}@media(max-width:700px){.etc-two,.etc-pickers{grid-template-columns:1fr}.etc-two>div+div{border-left:0;border-top:1px solid #d7dde5}.etc-heading{align-items:start;flex-direction:column}.etc-swap{width:100%}}
.etc-legislative-history,.etc-article-plain,.etc-article-comparison{margin:1rem 0;padding:1rem 1.2rem;border:1px solid #c9d6e4;border-radius:12px;background:#f4f8fc}.etc-legislative-history h3,.etc-article-plain h4{margin-top:0;color:var(--etc-blue)}.etc-article-tags{font-weight:800;color:var(--etc-red)}.etc-article-comparison summary{cursor:pointer;font-weight:800;color:var(--etc-blue)}.etc-article-comparison[open] summary{margin-bottom:1rem}.etc-article-comparison p{white-space:pre-line}
.etc-code-history-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin:1.2rem 0}.etc-code-history-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:1rem;border:1px solid #c9d6e4;border-radius:14px;background:#f8fafc}.etc-code-history-grid article>span{padding:.3rem .6rem;border-radius:999px;background:#073b72;color:#fff;font-weight:900}.etc-code-history-grid h3{margin:.35rem 0;color:#073b72}.etc-code-history-grid a{margin-top:auto;font-weight:800}.etc-code-history-status{margin:.7rem 0 0;color:#8c1932;font-size:.78rem;font-weight:900;text-transform:uppercase}
@media(max-width:1000px){.etc-code-history-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.etc-code-history-grid{grid-template-columns:1fr}}
.etc-hero h2{margin:.25rem 0 .75rem;color:#fff;font-size:clamp(2.4rem,6vw,5rem);line-height:.95}

/*
 * Esta página funciona como una aplicación: se libera del ancho editorial del
 * periódico, pero las demás páginas conservan intacta la plantilla del tema.
 */
.etc-app-page #whn-main{padding-block:0;background:#f2f5f8}
.etc-app-page #whn-main>.whn-container{max-width:none;padding-inline:0}
.etc-app-page .whn-page>.whn-breadcrumbs,.etc-app-page .whn-page>.whn-single__header,.etc-app-page .whn-page>.whn-comments{display:none}
.etc-app-page .whn-page>.whn-content{max-width:none;margin:0;padding:0;font-size:1rem;line-height:1.6}
.etc-app-page .whn-content p,.etc-app-page .whn-content ul,.etc-app-page .whn-content ol{text-align:left;hyphens:none}

/*
 * La retícula separa navegación y trabajo. En pantallas amplias la barra queda
 * visible; en móvil se convierte en una fila desplazable y no roba espacio.
 */
.etc-shell{display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:clamp(1rem,2.5vw,2.5rem);max-width:1600px;padding:0 clamp(1rem,3vw,3rem) 3rem;background:#f2f5f8}
.etc-shell>.etc-hero{grid-column:1/-1;margin:clamp(1rem,3vw,2.5rem) 0 0}
.etc-shell>.etc-jumps{grid-column:1;grid-row:2 / span 20;align-self:start}
.etc-shell>.etc-content-notice,.etc-shell>.etc-reader-tools,.etc-shell>.etc-section,.etc-shell>.etc-method{grid-column:2;min-width:0}
.etc-hero{border-radius:28px;padding:clamp(2rem,5vw,4.5rem);background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.16),transparent 26%),linear-gradient(125deg,#041f3d 0%,#073b72 62%,#a71930 100%)}
.etc-hero-status,.etc-hero-actions{display:flex;flex-wrap:wrap;gap:.6rem}
.etc-hero-status span{padding:.4rem .7rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.1);font-size:.78rem;font-weight:750}
.etc-hero-lead{max-width:760px;font-size:clamp(1.05rem,2vw,1.35rem)}
.etc-hero-actions{margin:1.5rem 0}
.etc-hero-actions a{padding:.75rem 1rem;border-radius:10px;background:#fff;color:#073b72!important;text-decoration:none;font-weight:800}
.etc-hero-actions a:first-child{background:#ffd15c;color:#182334!important}
.etc-hero .etc-notice{max-width:900px;margin-bottom:0}

/*
 * El aviso editorial vive fuera de la portada para que nadie lo confunda con
 * texto decorativo. El color ámbar permite reconocerlo antes de leer cualquier
 * explicación preparada por nuestro equipo con apoyo de IA.
 */
.etc-content-notice{width:fit-content;max-width:760px;align-self:start;justify-self:start;height:auto;margin:1.25rem 0 0;padding:.85rem 1rem;border:2px solid #d49a00;border-left-width:6px;border-radius:12px;background:#fff5cf;color:#352600;box-shadow:0 4px 14px rgba(88,62,0,.08)}
.etc-content-notice h2{margin:0 0 .65rem;color:#352600;font-size:clamp(1.25rem,2vw,1.6rem)}
.etc-content-notice p{margin:.4rem 0}

.etc-jumps{position:sticky;top:5.5rem;display:grid;gap:.35rem;margin:1.25rem 0;padding:1rem;border:1px solid #d9e1ea;border-radius:16px;background:#fff;box-shadow:0 8px 30px rgba(8,42,75,.07)}
.etc-jumps p{margin:0 0 .4rem;padding:.2rem .65rem;color:#5f6c7a;font-size:.75rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.etc-jumps a{display:block;padding:.72rem .8rem;border-radius:9px;background:transparent;color:#25394d!important;text-decoration:none;font-weight:720}
.etc-jumps a:hover,.etc-jumps a:focus,.etc-jumps a[aria-current="location"]{background:#eaf2fa;color:#073b72!important}
.etc-reader-tools{position:relative;top:auto;z-index:1;margin:1.25rem 0 0;box-shadow:0 6px 20px rgba(8,42,75,.06)}
.etc-section{scroll-margin-top:8rem;padding:clamp(2rem,4vw,3.5rem);margin-top:1.25rem;border:1px solid #dce3ea;border-radius:20px;background:#fff;box-shadow:0 8px 28px rgba(8,42,75,.05)}
.etc-compare{background:#f7f4ed}
.etc-code-layout{grid-template-columns:minmax(260px,32%) minmax(0,1fr)}
.etc-code-reader{background:#fffdf8;border:1px solid #e1d9c9}
.etc-method{margin:1.25rem 0 0}

/* Las tabletas conservan comparación útil; los teléfonos priorizan lectura. */
@media(max-width:1000px){.etc-shell{grid-template-columns:1fr}.etc-shell>.etc-hero,.etc-shell>.etc-jumps,.etc-shell>.etc-content-notice,.etc-shell>.etc-reader-tools,.etc-shell>.etc-section,.etc-shell>.etc-method{grid-column:1}.etc-shell>.etc-jumps{grid-row:auto}.etc-jumps{position:sticky;top:0;z-index:8;display:flex;flex-wrap:nowrap;overflow-x:auto;padding:.55rem;margin:.75rem 0;border-radius:12px}.etc-jumps p{display:none}.etc-jumps a{flex:0 0 auto;white-space:nowrap}.etc-reader-tools{position:relative;top:auto;margin-top:0}.etc-code-layout{grid-template-columns:1fr}.etc-code-results{max-height:320px}}
@media(max-width:600px){.etc-shell{padding-inline:.65rem}.etc-hero{margin-top:.65rem!important;padding:1.5rem;border-radius:18px}.etc-hero h2{font-size:2.35rem}.etc-hero-status span:nth-child(3){display:none}.etc-hero-actions{display:grid}.etc-section{padding:1.1rem;margin-top:.75rem;border-radius:14px}.etc-reader-tools strong{width:100%}.etc-code-tools{grid-template-columns:1fr}.etc-pdf-compare iframe{min-height:420px}.etc-method{border-radius:14px}}

/*
 * Las novedades aparecen en orden cronológico antes del archivo. Cada tarjeta
 * separa fecha, estado y acción para no confundir publicación con vigencia.
 */
.etc-latest{background:linear-gradient(180deg,#fff 0%,#f4f8fc 100%)}
.etc-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.etc-latest-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:1.2rem;border:1px solid #cfdbe8;border-radius:14px;background:#fff}
.etc-latest-grid h3{margin:.35rem 0 .55rem;color:var(--etc-blue)}
.etc-latest-grid a{margin-top:auto;font-weight:800}
.etc-date{margin:.75rem 0 0!important;color:#5a6672;font-size:.86rem;font-weight:750}
.etc-status{display:inline-flex;padding:.32rem .62rem;border-radius:999px;font-size:.76rem;font-weight:850}
.etc-status-current{color:#075b35;background:#dff5e9}
.etc-validity{padding:1rem 1.2rem;border-left:4px solid #14824d;border-radius:8px;background:#e9f7ef}
.etc-validity-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1.2rem 0}
.etc-validity-timeline article{display:grid;gap:.4rem;padding:1rem;border:1px solid #d7dde5;border-radius:12px;background:#f8fafc}
.etc-validity-timeline span{color:#607080;font-size:.78rem;font-weight:800;text-transform:uppercase}
.etc-notice-warning{color:#5b3a00;background:#fff3cd;border-left-color:#e2a900}
.etc-pdf-single{margin-top:1.2rem}
.etc-pdf-single iframe{display:block;width:100%;height:72vh;min-height:560px;border:1px solid #8795a5;border-radius:12px;background:#fff}
@media(max-width:900px){.etc-latest-grid{grid-template-columns:1fr}.etc-validity-timeline{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.etc-validity-timeline{grid-template-columns:1fr}.etc-pdf-single iframe{min-height:460px;height:65vh}}

/* El aviso acompaña cada interpretación para que no dependa de haber leído la portada. */
.etc-plain small,.etc-ai-warning{display:block;margin-top:.65rem;padding-top:.6rem;border-top:1px solid rgba(111,82,0,.22);color:#66521e;font-size:.78rem;font-weight:700;line-height:1.45}

/*
 * Los controles se agrupan y saltan de línea según el ancho disponible. Esto
 * evita que la barra de lectura desborde o deje espacios grandes en móviles.
 */
.etc-reader-group{display:inline-flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.etc-reader-label{font-size:.84rem;font-weight:800;color:#46596d}
.etc-reader-tools button[aria-pressed="true"]{color:#fff;background:var(--etc-blue);border-color:var(--etc-blue);box-shadow:0 0 0 2px rgba(12,75,135,.18)}

/*
 * El modo oscuro usa colores diseñados para lectura; no invierte la pantalla,
 * porque invertir también dañaría documentos, imágenes y colores de estado.
 */
.etc-dark{--etc-blue:#8fc5ff;--etc-red:#ff8294;--etc-ink:#edf4fb;--etc-paper:#182333;color-scheme:dark;color:#edf4fb;background:#0f1722}
.etc-dark .etc-section,.etc-dark .etc-reader-tools,.etc-dark .etc-jumps,.etc-dark .etc-change,.etc-dark .etc-timeline article,.etc-dark .etc-law-grid article,.etc-dark .etc-latest-grid article,.etc-dark .etc-validity-timeline article{color:#edf4fb;background:#182333;border-color:#405064}
.etc-dark .etc-code-reader,.etc-dark .etc-two>div+div,.etc-dark .etc-article-actions,.etc-dark select,.etc-dark input,.etc-dark .etc-reader-tools button,.etc-dark .etc-code-tools>button,.etc-dark .etc-code-topics button{color:#edf4fb;background:#111b28;border-color:#60748d}
.etc-dark .etc-content-notice{color:#fff3be;background:#3a300d;border-color:#d9ab25}
.etc-dark .etc-content-notice h2,.etc-dark .etc-reader-label,.etc-dark .etc-date,.etc-dark .etc-validity-timeline span{color:#fff3be}
.etc-dark .etc-validity{color:#dff8e9;background:#143425}.etc-dark .etc-notice-warning{color:#fff3be;background:#3a300d}
.etc-dark .etc-status-current{color:#bff2d5;background:#17482e}
.etc-dark .etc-reader-tools button[aria-pressed="true"]{color:#07111d;background:#8fc5ff;border-color:#8fc5ff}

/* La alineación afecta el texto informativo, nunca los botones ni los menús. */
.etc-app-page .etc-shell.etc-align-left :where(.etc-section,.etc-method,.etc-content-notice) :where(p,li){text-align:left}
.etc-app-page .etc-shell.etc-align-center :where(.etc-section,.etc-method,.etc-content-notice) :where(p,li){text-align:center}
.etc-app-page .etc-shell.etc-align-justify :where(.etc-section,.etc-method,.etc-content-notice) :where(p,li){text-align:justify}
.etc-app-page .etc-shell.etc-align-right :where(.etc-section,.etc-method,.etc-content-notice) :where(p,li){text-align:right}

@media(max-width:600px){.etc-reader-group{width:100%}.etc-reader-tools>button[data-etc-print]{width:100%}}

/*
 * Algunas piezas internas tenían fondos claros y colores fijados por el tema
 * general del periódico. Estas reglas completan el modo oscuro para que títulos,
 * datos legislativos y explicaciones conserven contraste dentro de cada tarjeta.
 */
.etc-dark .etc-section :where(h2,h3,h4,h5,strong,label),.etc-dark .etc-method :where(h2,h3,h4,strong){color:#f4f8fc}
.etc-dark .etc-jumps p{color:#c7d5e3}
.etc-dark .etc-provenance,.etc-dark .etc-legislative-history{color:#edf4fb;background:#203247;border-color:#536a82}
.etc-dark .etc-provenance :where(p,strong),.etc-dark .etc-legislative-history :where(p,strong,span){color:inherit}
.etc-dark .etc-plain,.etc-dark .etc-article-plain{color:#fff3be;background:#3b310f;border-color:#d9ab25}
.etc-dark .etc-plain :where(strong,small),.etc-dark .etc-ai-warning{color:#fff3be;border-color:rgba(255,243,190,.35)}
.etc-dark .etc-code-meta :where(strong,span){color:#eaf2f8;background:#26394d;border-color:#60748d}
.etc-dark .etc-code-results button{color:#eaf2f8;background:#1b2b3d;border-color:#526a83}
.etc-dark .etc-code-results button:hover,.etc-dark .etc-code-results button:focus{color:#07111d;background:#a9d2ff}
.etc-dark :where(.etc-section,.etc-method) a:not(.etc-source):not(.etc-primary-action){color:#a9d2ff}

/* Separa ambos comparadores sin crear una tarjeta de altura fija o huecos vacíos. */
.etc-procedure-compare{margin-top:2rem;padding-top:1.75rem;border-top:2px solid #d7e2ed}
.etc-dark .etc-procedure-compare{border-color:#536a82}
