/* Bestiario v0.11 - Columnas + Archivo por numeros */
.entries-page-hero { position:relative; background:linear-gradient(180deg,var(--paper) 0%,rgba(var(--beige-rgb),.34) 100%); }
.entries-page-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:var(--line); }
.entries-page-hero-grid { display:grid; grid-template-columns:minmax(0,1.22fr) minmax(300px,.58fr); gap:clamp(42px,8vw,130px); align-items:end; }
.entries-page-hero h1 { max-width:950px; margin-top:18px; font-size:clamp(4.4rem,8vw,9rem); }
.entries-page-intro { display:grid; gap:30px; align-content:end; padding-bottom:10px; }
.entries-page-intro > p { max-width:520px; font-family:var(--serif); font-size:clamp(1.2rem,1.8vw,1.65rem); line-height:1.4; color:rgba(var(--ink-rgb),.66); }
.entries-page-count { display:flex; align-items:baseline; gap:10px; color:var(--wine); font-family:var(--serif); font-size:clamp(3.5rem,6vw,6.5rem); line-height:.85; }
.entries-page-count small { font-family:var(--sans); font-size:.67rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; color:rgba(var(--ink-rgb),.48); }
.entries-library { background:var(--paper); }
.entries-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(58px,6vw,90px) clamp(18px,2.2vw,34px); }
.entry-library-card { min-width:0; position:relative; }
.entry-library-image { position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background:var(--green); }
.entry-library-image::after { content:""; position:absolute; inset:0; border:1px solid rgba(var(--paper-rgb),0); transition:border-color .35s ease,inset .35s var(--ease); pointer-events:none; }
.entry-library-image img { width:100%; height:100%; object-fit:cover; transition:transform .75s var(--ease),filter .45s ease; }
.entry-library-card:hover .entry-library-image img { transform:scale(1.055); filter:saturate(.88) contrast(1.02); }
.entry-library-card:hover .entry-library-image::after { inset:12px; border-color:rgba(var(--paper-rgb),.58); }
.entry-library-fallback { width:100%; height:100%; display:grid; place-items:center; color:var(--beige); font-family:var(--serif); font-size:clamp(8rem,14vw,14rem); }
.entry-library-arrow { position:absolute; right:16px; top:16px; width:48px; height:48px; display:grid; place-items:center; border-radius:50%; background:var(--paper); color:var(--green); font-size:1.35rem; transform:translateY(-8px) rotate(-8deg); opacity:0; transition:opacity .28s ease,transform .38s var(--ease),background .28s ease,color .28s ease; }
.entry-library-card:hover .entry-library-arrow { opacity:1; transform:none; background:var(--wine); color:var(--paper); }
.entry-library-copy { padding:18px 2px 0; }
.entry-library-taxonomy { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-height:25px; font-size:.66rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.entry-library-taxonomy > a:first-child { color:var(--wine); }
.entry-number-chip { padding:4px 9px; border:1px solid rgba(var(--wine-rgb),.28); border-radius:999px; color:var(--wine); transition:background .25s ease,color .25s ease,border-color .25s ease; }
.entry-number-chip:hover { background:var(--wine); color:var(--paper); border-color:var(--wine); }
.entry-library-copy h2 { margin:12px 0 16px; font-size:clamp(2rem,2.8vw,3.25rem); line-height:1; }
.entry-library-copy h2 a { transition:color .25s ease; }
.entry-library-card:hover h2 a { color:var(--wine); }
.entry-library-meta { display:flex; justify-content:space-between; gap:14px; padding-top:13px; border-top:1px solid var(--line); font-size:.65rem; text-transform:uppercase; letter-spacing:.07em; color:rgba(var(--ink-rgb),.52); }
.entries-pagination { margin-top:clamp(60px,8vw,110px); display:flex; justify-content:center; }
.entries-pagination .nav-links { justify-content:center; }
.entries-library-ending { background:var(--green); color:var(--paper); padding:clamp(48px,6vw,82px) 0; }
.entries-library-ending-inner { display:grid; grid-template-columns:auto 1fr auto; gap:28px; align-items:center; }
.entries-library-ending p { font-family:var(--serif); font-size:clamp(1.65rem,2.8vw,3rem); line-height:1.05; }

.issues-archive-hero { position:relative; background:var(--paper); }
.issues-archive-hero::after { content:""; position:absolute; left:max(16px,calc((100vw - var(--wide))/2)); right:max(16px,calc((100vw - var(--wide))/2)); bottom:0; height:1px; background:var(--line); }
.issues-archive-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.62fr); gap:clamp(50px,9vw,145px); align-items:end; }
.issues-archive-hero h1 { max-width:880px; margin-top:16px; font-size:clamp(4.7rem,8.8vw,9.7rem); }
.issues-archive-intro { display:grid; gap:25px; padding-bottom:8px; }
.issues-archive-intro p { font-family:var(--serif); font-size:clamp(1.2rem,1.9vw,1.7rem); line-height:1.42; color:rgba(var(--ink-rgb),.64); }
.issues-archive-stage { background:var(--beige-2); overflow:hidden; }
.issues-slider-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:clamp(34px,5vw,66px); }
.issues-slider-heading h2 { margin-top:10px; }
.issues-slider-controls { display:flex; gap:9px; }
.issues-slider-controls button { width:50px; height:50px; border:1px solid rgba(var(--ink-rgb),.2); border-radius:50%; background:transparent; cursor:pointer; transition:background .25s ease,color .25s ease,transform .25s var(--ease); }
.issues-slider-controls button:hover { background:var(--wine); color:var(--paper); border-color:var(--wine); transform:translateY(-2px); }
.issues-slider-viewport { width:var(--wide); margin-inline:auto; overflow:hidden; }
.issues-slider-track { display:flex; gap:clamp(18px,2.4vw,34px); transition:transform .7s var(--ease); will-change:transform; }
.issue-archive-card { flex:0 0 clamp(320px,36vw,530px); min-width:0; }
.issue-archive-cover { position:relative; display:block; aspect-ratio:4/5; overflow:hidden; background:var(--green); box-shadow:0 22px 55px rgba(var(--shadow-base-rgb),.1); }
.issue-archive-cover picture,.issue-archive-cover img { width:100%; height:100%; display:block; }
.issue-archive-cover img { object-fit:cover; transition:transform .9s var(--ease),filter .45s ease; }
.issue-archive-cover::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 48%,rgba(var(--overlay-rgb),.8)); }
.issue-archive-card:hover .issue-archive-cover img { transform:scale(1.045); filter:saturate(.9); }
.issue-archive-fallback { width:100%; height:100%; display:grid; place-items:center; font-family:var(--serif); font-size:clamp(10rem,22vw,22rem); color:var(--beige); }
.issue-current-badge { position:absolute; z-index:3; top:18px; left:18px; padding:8px 11px; border-radius:999px; background:var(--wine); color:var(--paper); font-size:.6rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.issue-archive-overlay { position:absolute; z-index:2; left:22px; right:22px; bottom:20px; display:flex; justify-content:space-between; gap:20px; align-items:end; color:var(--paper); }
.issue-archive-overlay b { font-family:var(--serif); font-size:clamp(2.3rem,4vw,4.6rem); font-weight:500; line-height:.9; }
.issue-archive-overlay > span { font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; transform:translateX(-6px); opacity:.75; transition:transform .3s var(--ease),opacity .3s ease; }
.issue-archive-card:hover .issue-archive-overlay > span { transform:none; opacity:1; }
.issue-archive-card-copy { padding:18px 3px 0; }
.issue-archive-number { color:var(--wine); font-size:.67rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.issue-archive-card-copy h3 { margin:7px 0 8px; font-size:clamp(2.1rem,3.4vw,4rem); }
.issue-archive-card-copy p { color:rgba(var(--ink-rgb),.6); }
.issue-entry-count { display:block; margin-top:13px; padding-top:13px; border-top:1px solid var(--line); font-size:.62rem; text-transform:uppercase; letter-spacing:.08em; color:rgba(var(--ink-rgb),.48); }
.issues-slider-status { display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; margin-top:38px; color:var(--wine); font-size:.65rem; letter-spacing:.1em; }
.issues-slider-progress { height:2px; background:rgba(var(--ink-rgb),.12); overflow:hidden; }
.issues-slider-progress i { display:block; width:0; height:100%; background:var(--wine); }
.archive-explainer { background:var(--green); color:var(--paper); }
.archive-explainer-grid { position:relative; display:grid; grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr); gap:clamp(38px,7vw,100px); align-items:center; overflow:hidden; }
.archive-explainer-grid > div { position:relative; z-index:2; }
.archive-explainer h2 { margin-top:14px; max-width:800px; }
.archive-explainer p { position:relative; z-index:2; font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.8rem); color:rgba(var(--paper-rgb),.7); }
.archive-explainer-mark { position:absolute; right:28%; top:50%; transform:translateY(-50%); font-family:var(--serif); font-size:clamp(12rem,28vw,32rem); line-height:.7; color:rgba(var(--beige-rgb),.07); }

.issue-empty-state { max-width:900px; padding:clamp(55px,8vw,100px) 0; }
.issue-empty-state h2 { margin:14px 0 18px; }
.issue-empty-state p { font-family:var(--serif); font-size:1.25rem; color:rgba(var(--ink-rgb),.62); }
.article-taxonomy-line { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.article-number-link { display:inline-flex; align-items:center; padding:5px 10px; border:1px solid rgba(var(--wine-rgb),.28); border-radius:999px; color:var(--wine); font-size:.64rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; transition:background .25s ease,color .25s ease; }
.article-number-link:hover { background:var(--wine); color:var(--paper); }

@media (max-width:980px) {
  .entries-page-hero-grid,.issues-archive-hero-grid { grid-template-columns:1fr; gap:30px; }
  .entries-page-intro,.issues-archive-intro { max-width:700px; }
  .entries-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .entries-library-ending-inner { grid-template-columns:1fr auto; }
  .entries-library-ending .eyebrow { grid-column:1/-1; }
  .archive-explainer-grid { grid-template-columns:1fr; }
  .archive-explainer-mark { right:4%; }
}

@media (max-width:680px) {
  .entries-page-hero,.issues-archive-hero { padding-top:55px; }
  .entries-page-hero h1,.issues-archive-hero h1 { font-size:clamp(3.35rem,16vw,5.2rem); line-height:.92; overflow-wrap:anywhere; }
  .entries-page-count { font-size:3.5rem; }
  .entries-grid { grid-template-columns:1fr; gap:52px; }
  .entry-library-image { aspect-ratio:4/3; }
  .entry-library-arrow { opacity:1; transform:none; width:42px; height:42px; }
  .entry-library-copy h2 { font-size:clamp(2rem,9vw,3rem); }
  .entry-library-meta { align-items:flex-start; flex-direction:column; gap:5px; }
  .entries-library-ending-inner { grid-template-columns:1fr; }
  .entries-library-ending .button { justify-self:start; }
  .issues-slider-heading { align-items:center; }
  .issues-slider-heading h2 { font-size:clamp(2.6rem,12vw,4rem); }
  .issues-slider-controls button { width:44px; height:44px; }
  .issues-slider-viewport { width:100%; padding-left:20px; }
  .issues-slider-track { gap:14px; }
  .issue-archive-card { flex-basis:82vw; max-width:390px; }
  .issue-archive-overlay { left:16px; right:16px; bottom:16px; }
  .issue-archive-overlay > span { display:none; }
  .issue-archive-card-copy h3 { font-size:2.55rem; }
  .issues-slider-status { width:calc(100% - 40px); }
  .archive-explainer-mark { right:-20%; font-size:17rem; }
}

/* v0.12 - Columnas independientes */
.entry-type-chip { display:inline-flex; align-items:center; padding:4px 9px; border:1px solid rgba(var(--green-rgb),.24); border-radius:999px; color:var(--green); background:rgba(var(--beige-rgb),.18); }
.entry-library-card:hover .entry-type-chip { border-color:rgba(var(--wine-rgb),.32); color:var(--wine); }
