/* BRASAS / Biblioteca editorial v2.7 · extiende el sistema existente */
.library-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:36px}
.library-count-note{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}
.library-section-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:38px;flex-wrap:wrap}
.library-section-heading>div{max-width:630px}
.library-section-heading h2{font-size:clamp(2rem,4.7vw,3.35rem);margin-top:12px}
.library-section-heading h2 em{font-style:italic;color:var(--ember)}
.library-section-heading>p{color:var(--smoke);max-width:38ch;line-height:1.55;font-size:1rem}
.library-feature-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.library-feature-card{display:flex;flex-direction:column;min-height:350px;border:1px solid var(--hairline);background:#1d1a17;padding:26px 25px}
.library-feature-top{display:flex;align-items:center;justify-content:space-between;color:var(--ember);font-size:20px}
.library-feature-top .eyebrow{font-size:.62rem;letter-spacing:.13em}
.library-feature-body{padding-top:64px;flex:1}
.library-feature-cat{text-transform:uppercase;letter-spacing:.13em;color:var(--smoke);font-size:.69rem}
.library-feature-body h3{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.5rem,2.2vw,2.15rem);letter-spacing:-.035em;line-height:1.17;margin:13px 0 14px}
.library-feature-body>p:last-child{font-size:.92rem;line-height:1.58;color:var(--cream-soft)}
.library-feature-link{display:flex;gap:12px;justify-content:space-between;border-top:1px solid var(--hairline);padding-top:15px;margin-top:28px;font-size:.85rem;font-weight:600;color:var(--ember-light)}
.library-feature-link:focus-visible,.library-journey-card a:focus-visible,.library-article a:focus-visible,.library-substack-link:focus-visible,.library-controls input:focus-visible,.library-controls select:focus-visible,.library-filter:focus-visible,#library-load-more:focus-visible,#library-reset:focus-visible{outline:2px solid var(--residual);outline-offset:4px}
.library-feature-link:hover,.library-journey-card a:hover{color:var(--ember)}
.library-journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.library-journey-card{border:1px solid var(--hairline);padding:34px 30px 26px;background:#1a1715}
.library-journey-card h3{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.55rem,2.5vw,2rem);letter-spacing:-.035em;margin:15px 0 12px;line-height:1.18}
.library-journey-card>p:not(.eyebrow){color:var(--cream-soft);font-size:.93rem;max-width:48ch}
.library-journey-card ol{list-style:none;margin-top:28px;border-top:1px solid var(--hairline)}
.library-journey-card li{display:flex;align-items:baseline;gap:17px;border-bottom:1px solid var(--hairline-soft);padding:14px 0}
.library-journey-step{font-size:.72rem;color:var(--smoke);font-variant-numeric:tabular-nums}
.library-journey-card li a{flex:1;display:flex;justify-content:space-between;gap:15px;color:var(--cream);font-size:.9rem;line-height:1.35}
.library-journey-card li a span{color:var(--ember)}
.library-archive{background:var(--cream);color:var(--carbon);padding:94px 0 118px}
.library-archive .eyebrow{color:var(--residual)}
.library-archive .library-section-heading h2 em{color:var(--residual)}
.library-archive .library-section-heading>p{color:#62594f}
.library-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:15px;align-items:end}
.library-controls label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.08em;margin-bottom:9px;color:#5b4c41}
.library-search-box{display:flex;gap:11px;align-items:center;padding:0 17px;border:1px solid #a99d89;background:#fffdf9;color:#57493a;height:52px}
.library-search-box:focus-within{border-color:var(--residual)}
.library-search-box input{width:100%;border:0;outline:none;background:transparent;font-family:inherit;font-size:1rem;color:var(--carbon)}
.library-controls select{width:100%;height:52px;background:#fffdf9;border:1px solid #a99d89;border-radius:0;color:var(--carbon);padding:0 12px;font:inherit;font-size:.85rem}
.library-filters{display:flex;gap:7px;flex-wrap:wrap;padding:23px 0 26px;border-bottom:1px solid #cfc2ae}
.library-filter{font:inherit;font-size:.76rem;padding:8px 12px;border:1px solid #c0b39f;background:transparent;color:#47382d;cursor:pointer;transition:background .18s,color .18s}
.library-filter span{font-size:.68rem;opacity:.68;margin-left:6px;font-variant-numeric:tabular-nums}
.library-filter.is-active,.library-filter[aria-pressed="true"]{background:var(--carbon);border-color:var(--carbon);color:var(--cream)}
.library-filter:hover:not(.is-active){background:#e1d4c0}
.library-results-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 14px;flex-wrap:wrap}
#library-result-count{font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;color:#6b5d4e;font-variant-numeric:tabular-nums}
.library-substack-link{font-size:.83rem;font-weight:600;color:#503323;border-bottom:1px solid #b4a48c;padding-bottom:3px}
.library-substack-link span{color:var(--residual)}
.library-article-list{border-top:1px solid #cfc2ae}
.library-article{display:grid;grid-template-columns:54px minmax(0,1fr);gap:25px;border-bottom:1px solid #cfc2ae;padding:24px 10px 27px 0}
.library-article[hidden],.library-empty[hidden],#library-load-more[hidden]{display:none!important}
.library-article-index{font-family:'Fraunces',Georgia,serif;font-size:.96rem;color:#806c57;font-variant-numeric:tabular-nums;padding-top:5px}
.library-article-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.11em;font-size:.64rem;font-weight:600;color:#765d48}
.library-article-meta time{color:#817366}
.library-carta-label{border:1px solid #ae9583;padding:2px 7px;color:var(--residual)}
.library-article h3{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:clamp(1.35rem,2.6vw,1.72rem);line-height:1.25;letter-spacing:-.02em;margin:7px 0 7px}
.library-article h3 a{transition:color .2s}
.library-article h3 a:hover{color:var(--residual)}
.library-article-arrow{font:500 .95rem 'Albert Sans',system-ui,sans-serif;color:var(--residual);padding-left:5px}
.library-article-main>p{font-size:.91rem;line-height:1.55;max-width:82ch;color:#5c5148}
.library-more{text-align:center;margin-top:34px}
#library-load-more,#library-reset{border:1px solid var(--carbon);background:transparent;color:var(--carbon);padding:12px 20px;cursor:pointer;font:600 .91rem 'Albert Sans',system-ui,sans-serif}
#library-load-more:hover,#library-reset:hover{background:var(--carbon);color:var(--cream)}
.library-empty{padding:46px 0;text-align:center}
.library-empty h3{font:600 1.8rem 'Fraunces',Georgia,serif}
.library-empty p{margin:10px 0 24px}
.library-noscript{margin-top:20px;color:var(--residual);font-size:.85rem}
@media(max-width:800px){.library-feature-grid{grid-template-columns:1fr}.library-feature-card{min-height:250px}.library-feature-body{padding-top:30px}.library-journey-grid{grid-template-columns:1fr}.library-article{grid-template-columns:38px minmax(0,1fr);gap:15px}}
@media(max-width:570px){.library-archive{padding:68px 0}.library-controls{grid-template-columns:1fr}.library-section-heading{gap:16px}.library-journey-card{padding:25px 21px}.library-feature-card{padding:23px 21px}.library-article{padding-right:0}.library-article h3{font-size:1.34rem}.library-article-main>p{font-size:.875rem}.library-filter{font-size:.73rem;padding:8px 9px}.library-results-heading{align-items:flex-start}}

/* v2.11.3 — Transparencia y accesibilidad de la búsqueda */
.library-search-help{font-size:.74rem;color:#6b5d4e;line-height:1.48;margin-top:8px;max-width:60ch}
.library-results-info{display:flex;flex-direction:column;gap:5px}
.library-active-criteria{font-size:.79rem;line-height:1.45;color:#665547;max-width:75ch}
.library-results-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.library-clear-filters{cursor:pointer;font:600 .8rem 'Albert Sans',system-ui,sans-serif;color:var(--residual);background:transparent;border:1px solid #ab9885;padding:9px 13px}
.library-clear-filters:not(:disabled):hover{background:var(--carbon);color:var(--cream)}
.library-clear-filters:disabled{opacity:.48;cursor:default}
.library-clear-filters:focus-visible{outline:2px solid var(--residual);outline-offset:3px}
@media(max-width:570px){.library-results-actions{width:100%;justify-content:space-between;gap:10px}.library-search-help{font-size:.75rem}}
