/* List pages (Calendario, Lecturas) · Estación. Loaded after session.css; the pages carry 'session-page list-page'. */
.list-page .list-hero { padding:8px 0 28px; }
.list-page .list-hero h1 { margin:0 0 14px; font-size:clamp(3rem,9vw,6rem); line-height:1.05; font-weight:900; letter-spacing:-.02em; }
.list-page .list-hero p { max-width:62ch; margin:0; font-size:19px; line-height:1.7; color:var(--muted); }
.list-back { margin-bottom:24px; }

.list-tools { display:flex; flex-wrap:wrap; align-items:center; gap:12px 32px; margin:0 0 16px; padding:16px 0; border-top:1px solid var(--hair); }
.list-count { margin:0 auto 0 0; font-size:19px; font-weight:700; font-variant-numeric:tabular-nums; }
.list-tools label { display:inline-flex; align-items:center; gap:12px; color:var(--muted); font-size:15px; }
.list-tools select { min-height:48px; padding:0 12px; background:#fbfcf8; color:var(--ink); border:1px solid var(--muted); border-radius:2px; font:500 17px var(--jp); }
.list-tools select:focus-visible { outline:3px solid var(--rail); outline-offset:2px; }

.rows { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,34rem),1fr)); gap:16px; margin-top:8px; }
.rowlink { --muted:#4a5148; display:grid; grid-template-columns:5.5rem minmax(0,1fr) auto; gap:4px 20px; align-items:baseline; padding:22px 24px; background:var(--tone, #fbfcf8); border:1px solid var(--hair-strong); border-radius:2px; color:inherit; text-decoration:none; transition:border-color .2s var(--ease); }
.rowlink:nth-child(3n+1) { --tone:#fbfcf8; }
.rowlink:nth-child(3n+2) { --tone:#e7edda; }
.rowlink:nth-child(3n+3) { --tone:#cfdcbf; }
.rowlink:hover { border-color:var(--rail); }
.rowlink:hover h2 { color:var(--rail); }
.rowlink:focus-visible { outline:3px solid var(--rail); outline-offset:3px; }
.rowlink .id { font-size:17px; font-weight:900; font-variant-numeric:tabular-nums; line-height:1.5; }
.rowlink .id small { display:block; font-size:15px; font-weight:400; color:var(--muted); }
.rowlink h2 { margin:0; font-size:21px; font-weight:700; line-height:1.4; letter-spacing:0; }
.rowlink .note { margin:4px 0 0; color:var(--muted); line-height:1.6; }
.rowlink .meta { margin:6px 0 0; font-size:15px; color:var(--muted); }
.rowlink .side { text-align:right; font-size:15px; color:var(--muted); font-variant-numeric:tabular-nums; white-space:nowrap; }
.rowlink .badge { display:inline-flex; align-items:center; min-height:28px; padding:0 12px; border:2px solid var(--rail); border-radius:14px; color:var(--rail); font-size:15px; font-weight:700; }
.rows-note { max-width:70ch; margin:32px 0 0; color:var(--muted); line-height:1.7; }
.rows-note a { color:var(--rail); font-weight:700; text-underline-offset:.3em; }

@media (max-width:900px) {
  .rowlink { grid-template-columns:4.5rem minmax(0,1fr); padding:18px 16px; gap:4px 14px; }
  .rowlink .side { grid-column:2; text-align:left; white-space:normal; }
  .list-tools select { width:100%; }
  .list-tools label { width:100%; justify-content:space-between; }
}
