:root {
    --bg: #0b1020;
    --bg-soft: #131a30;
    --card: #18213d;
    --text: #eef3ff;
    --muted: #a9b5d1;
    --accent: #7c9cff;
    --accent-2: #70e1c8;
    --border: rgba(255,255,255,.08);
    --shadow: 0 20px 50px rgba(0,0,0,.25);
}
* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: linear-gradient(180deg, #0a0f1e 0%, #101a33 100%);
    color: var(--text);
}
a { color: inherit; text-decoration: none; }
.container { width: min(1240px, calc(100% - 32px)); margin: 0 auto; }
.hero {
    padding: 72px 0 40px;
    background: radial-gradient(circle at top right, rgba(124,156,255,.25), transparent 35%), radial-gradient(circle at top left, rgba(112,225,200,.12), transparent 32%);
}
.hero__content { display: flex; justify-content: space-between; gap: 24px; align-items: end; flex-wrap: wrap; }
.eyebrow { color: var(--accent-2); text-transform: uppercase; letter-spacing: .2em; font-size: 12px; }
h1 { font-size: clamp(36px, 7vw, 64px); margin: 0 0 12px; }
.hero__text { max-width: 760px; color: var(--muted); font-size: 18px; line-height: 1.6; margin: 0; }
.hero__stats { display: flex; gap: 16px; flex-wrap: wrap; }
.stat-card {
    min-width: 180px;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 20px;
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow);
}
.stat-card span { display: block; color: var(--muted); margin-bottom: 8px; }
.stat-card strong { font-size: 34px; }
.main-content { padding: 20px 0 80px; }
.media-section { margin-top: 40px; }
.section-header { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 20px; }
.section-header h2 { margin: 0; font-size: 28px; }
.section-count { color: var(--muted); background: rgba(255,255,255,.05); border: 1px solid var(--border); padding: 8px 12px; border-radius: 999px; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; }
.card {
    display: flex;
    flex-direction: column;
    background: rgba(255,255,255,.04);
    border: 1px solid var(--border);
    border-radius: 22px;
    overflow: hidden;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    box-shadow: var(--shadow);
}
.card:hover { transform: translateY(-4px); border-color: rgba(124,156,255,.5); }
.card__poster-wrap { position: relative; aspect-ratio: 2 / 3; background: #0f162c; }
.card__poster { width: 100%; height: 100%; object-fit: cover; display: block; }
.rating {
    position: absolute; top: 12px; right: 12px; background: rgba(10, 16, 32, .88); border: 1px solid var(--border);
    padding: 8px 10px; border-radius: 999px; font-weight: 700; color: #ffd36d;
}
.card__body { padding: 16px; }
.card__body h3 { margin: 0 0 10px; font-size: 18px; }
.meta-row { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 14px; margin-bottom: 10px; }
.card__body p { margin: 0; color: #d7def1; line-height: 1.5; font-size: 14px; }
.empty-state {
    border: 1px dashed var(--border); border-radius: 18px; padding: 24px; color: var(--muted); background: rgba(255,255,255,.03);
}
code { background: rgba(255,255,255,.08); padding: 2px 6px; border-radius: 8px; }
@media (max-width: 700px) {
    .hero { padding-top: 48px; }
    .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
