.episode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 25px}
.episode-card{min-width:0}
.card-art{position:relative;background:#252922}
.card-art>a{display:block;overflow:hidden}
.sleeve{aspect-ratio:.84;position:relative;display:flex;flex-direction:column;justify-content:space-between;background:var(--sleeve,#ced9a4);color:#131a14;padding:20px 19px 18px 28px;overflow:hidden;isolation:isolate;border:1px solid #ffffff20;box-shadow:inset 9px 0 #0002}
.sleeve::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#00000008 3px,#00000008 4px);pointer-events:none;z-index:3}
.tone-0{--sleeve:#f6a482}.tone-1{--sleeve:#e5d870}.tone-2{--sleeve:#9cbed5}.tone-3{--sleeve:#b5cba2}.tone-4{--sleeve:#dcadbf}.tone-5{--sleeve:#dedacb}
.sleeve-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;font-size:6px;letter-spacing:1px;font-weight:900;line-height:1.6;position:relative;z-index:1}
.sleeve-top>span:first-child{max-width:90px}
.sleeve-top>span:last-child{white-space:nowrap;border:1px solid #131a1460;padding:2px 3px;font-size:5px}
.sleeve-title{font:400 clamp(25px,3vw,42px)/1.01 var(--display);text-transform:uppercase;letter-spacing:.2px;overflow-wrap:anywhere;position:relative;z-index:2;margin-top:30px;max-width:100%}
.sleeve-lines{position:absolute;right:-60px;top:27%;width:250px;height:250px;border:1px solid #131a1440;border-radius:50%;z-index:0;background:repeating-radial-gradient(circle at center,transparent 0,transparent 16px,#131a1428 16px,#131a1428 17px);transform:rotate(-30deg) scaleY(.7)}
.tone-0 .sleeve-lines,.tone-4 .sleeve-lines{border:0;border-radius:0;background:repeating-linear-gradient(125deg,transparent,transparent 15px,#131a1425 15px,#131a1425 17px);transform:rotate(15deg)}
.tone-1 .sleeve-lines,.tone-5 .sleeve-lines{border-radius:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 9px,#131a1438 9px,#131a1438 10px);transform:skewY(-26deg);top:25%;right:-90px}
.sleeve-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:34px;padding-top:14px;border-top:1px solid #131a1450;font-size:7px;font-weight:800;letter-spacing:.8px;position:relative;z-index:1;gap:10px}
.sleeve-bottom>span:last-child{text-align:right;line-height:1.6;font-size:6px}
.sleeve-spine{position:absolute;left:2px;top:25px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:5px;font-weight:900;letter-spacing:1.4px;color:#131a1480}
.card-art .sleeve{transition:transform .3s}
.card-art:hover .sleeve{transform:scale(1.025)}
.card-play{position:absolute;bottom:15px;right:15px;border:1px solid #ffffff40;border-radius:50%;width:43px;height:43px;display:flex;align-items:center;justify-content:center;background:#121812;color:white;transition:transform .2s,background .2s;box-shadow:0 4px 12px #0003}
.card-play svg{width:23px;height:23px}
.card-play:hover{background:var(--yellow);color:#10110f;transform:scale(1.07)}
.card-favorite{position:absolute;right:10px;top:38px;background:#10110fc9;border-radius:50%;color:var(--paper);width:32px;height:32px}
.card-favorite svg{width:16px;height:16px}
.restored-tag{position:absolute;left:20px;bottom:16px;font-size:6px;letter-spacing:1px;background:#10110f;color:var(--paper);padding:5px 6px;max-width:calc(100% - 85px);line-height:1.5}
.card-meta{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:.7px;margin:15px 0 8px;gap:8px}
.card-meta svg{width:11px;height:11px}
.episode-card h3{font-size:15px;line-height:1.5}
.episode-card h3 a:hover{color:var(--yellow)}
.catalog-page{padding-block:56px 80px;min-height:70vh}
.page-intro{margin-bottom:36px}
.page-intro h1{font-size:64px;margin:10px 0 18px}
.page-intro>p{font-size:13px;line-height:1.8;color:var(--muted)}
.filters{padding:22px;background:var(--panel);border:1px solid var(--line);display:grid;grid-template-columns:1fr 1.1fr;gap:18px;margin-bottom:24px}
.search-field{display:flex;align-items:center;gap:12px;border-bottom:1px solid #525847;padding:8px 3px}
.search-field svg{color:var(--yellow);width:18px}
.search-field input{width:100%;min-width:0;background:transparent;color:var(--paper);border:0;font-size:13px;outline-offset:3px}
.search-field input::placeholder{color:#989e8d}
.filter-controls{display:flex;align-items:center;gap:8px}
.filter-controls label{flex:1;min-width:0}
.filter-controls select{width:100%;background:#24291f;border:1px solid #3e4534;padding:11px 8px;color:var(--paper);font-size:11px;max-width:100%}
.filter-chips{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.chip{border:1px solid #424937;background:transparent;padding:8px 11px;font-size:10px;color:#c3c8b8;border-radius:3px}
.chip.is-active{border-color:var(--yellow);background:#ffea0014;color:var(--yellow)}
.reset-filters{background:none;border:0;color:var(--muted);font-size:10px;margin-left:auto;text-decoration:underline;text-underline-offset:3px}
.results-line{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 0;font-size:11px}
.results-line>span{color:var(--muted);font-size:10px}
.load-more{text-align:center;padding-top:40px}
.load-more p{font-size:10px;color:var(--muted);margin-top:14px}
.detail-page{padding-block:35px 20px}
.back-link{color:var(--muted);margin-bottom:35px}
.detail-layout{display:grid;grid-template-columns:.7fr 1.4fr;gap:72px;align-items:center}
.detail-cover{max-width:350px;width:100%;transform:rotate(-3deg);margin:0 15px 10px}
.detail-cover .sleeve-title{font-size:50px}
.detail-copy h1{font-size:clamp(40px,4.5vw,64px);margin:15px 0 20px}
.episode-description{font-size:14px;color:var(--muted);line-height:1.9;margin:22px 0 26px;max-width:600px}
.detail-actions{display:flex;gap:12px;flex-wrap:wrap}
.detail-secondary{display:flex;gap:25px;margin-top:24px;flex-wrap:wrap;color:var(--muted)}
.detail-secondary .text-link{font-size:10px}
.detail-secondary .text-link[aria-pressed=true]{color:var(--mint)}
.episode-facts{display:flex;gap:30px;border-top:1px solid var(--line);padding-top:24px;margin-top:32px;flex-wrap:wrap;font-size:10px}
.episode-facts dt{color:var(--muted);margin-bottom:8px}
.episode-facts dd{margin:0}
.about-page{padding-block:65px 90px}
.about-page h1{margin-top:15px}
.about-body{max-width:690px;margin-top:40px}
.about-body p{font-size:14px;color:var(--muted);line-height:1.95;margin:16px 0}
.about-body p.lead{font-size:21px;color:var(--paper);line-height:1.7}
.about-body h2{font-size:29px;margin-top:38px}
.breadcrumbs{padding-top:25px;font-size:10px;color:var(--muted)}
.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:7px;line-height:1.8}
.breadcrumbs li+li::before{content:'›';margin-right:7px;color:#737969}
.breadcrumbs a:hover,.catalog-context a:hover{color:var(--yellow)}
.season-links{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:22px}
.season-links a{font-size:10px;border:1px solid var(--line);padding:8px 10px}
.season-links a[aria-current]{color:var(--yellow);border-color:var(--yellow)}
.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px}
.pagination a{padding:9px;min-width:33px;border:1px solid var(--line);font-size:12px}
.pagination a[aria-current]{background:var(--yellow);border-color:var(--yellow);color:var(--bg)}
.catalog-context{padding-bottom:50px}
.catalog-context h2{font-size:28px;max-width:750px}
.catalog-context p,.episode-context,.nojs-note{font-size:12px;line-height:1.9;color:var(--muted);margin-top:18px;max-width:850px}
.catalog-context a{text-decoration:underline;text-underline-offset:3px}
.page-number{color:var(--muted);font-size:.65em}
