:root{
  --bg:#0f0a18; --surface:#1a1426; --surface-2:#221a30; --fg:#fbf7ff; --muted:#a99cb8; --border:#2c2438;
  --primary:#d6336c; --accent:#f59f00; --grad:linear-gradient(135deg,#d6336c,#f59f00);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body{background-image:radial-gradient(ellipse at top,rgba(214,51,108,.12),transparent 50%),radial-gradient(ellipse at bottom right,rgba(245,159,0,.08),transparent 50%);background-attachment:fixed}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;letter-spacing:-.02em}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.velvet-skip{position:absolute;left:-9999px}.velvet-skip:focus{left:1rem;top:1rem;background:var(--surface);padding:.5rem 1rem;border-radius:.5rem;z-index:100}
.velvet-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:rgba(26,20,38,.7);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.velvet-logo{display:flex;align-items:center;gap:.5rem;font-weight:900;font-family:'Space Grotesk'}
.velvet-logo span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.6rem;background:var(--grad);color:#fff}
.velvet-nav ul{list-style:none;display:flex;gap:.25rem;padding:0;margin:0}
.velvet-nav a{padding:.5rem .75rem;border-radius:.5rem;color:var(--muted);font-size:.85rem;font-weight:500}
.velvet-nav a:hover{background:var(--surface);color:var(--fg)}
.velvet-search{margin-left:auto;flex:1;max-width:32rem}
.velvet-search input{width:100%;padding:.65rem 1rem;border-radius:9999px;border:0;background:var(--surface);color:var(--fg);font-size:.85rem}
.velvet-main{max-width:1600px;margin:0 auto;padding:1.5rem}
.velvet-hero{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:1.5rem;padding:2.5rem;margin-bottom:2rem;background:linear-gradient(180deg,var(--surface),var(--bg))}
.velvet-hero .eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:700;margin:0 0 .5rem}
.velvet-hero h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 .5rem}
.velvet-hero .lead{color:var(--muted);margin:0;max-width:38rem}
.velvet-section{margin:2rem 0}
.velvet-section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}
.velvet-section-title{font-size:1.4rem;margin:2rem 0 1rem}
.velvet-link{background:transparent;border:0;color:var(--accent);font-weight:600;cursor:pointer;padding:.25rem .5rem}
.velvet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem 1rem}
.velvet-grid-shorts{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.velvet-row{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem}
.velvet-card{display:flex;flex-direction:column;gap:.5rem}
.velvet-thumb{position:relative;display:block;aspect-ratio:16/9;border-radius:1rem;overflow:hidden;background:var(--surface)}
.velvet-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.velvet-thumb:hover img{transform:scale(1.04)}
.velvet-duration{position:absolute;bottom:.5rem;right:.5rem;background:rgba(0,0,0,.8);padding:.15rem .4rem;border-radius:.3rem;font-size:.7rem;font-weight:600}
.velvet-badge-short{position:absolute;top:.5rem;right:.5rem;background:var(--grad);padding:.15rem .4rem;border-radius:.3rem;font-size:.6rem;font-weight:800;color:#fff}
.velvet-card h3{font-size:.95rem;margin:0;line-height:1.3}
.velvet-meta{font-size:.75rem;color:var(--muted);margin:0}
.velvet-short{position:relative;flex:0 0 160px;aspect-ratio:9/16;border-radius:1rem;overflow:hidden;background:var(--surface);display:block}
.velvet-short img{width:100%;height:100%;object-fit:cover}
.velvet-short-title{position:absolute;bottom:.5rem;left:.5rem;right:2.5rem;font-size:.7rem;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.8)}
.velvet-watch{max-width:1100px;margin:0 auto}
.velvet-embed{position:relative;aspect-ratio:16/9;border-radius:1rem;overflow:hidden;background:#000}
.velvet-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.velvet-embed-placeholder{display:grid;place-items:center;aspect-ratio:16/9;background:var(--surface);border-radius:1rem;color:var(--muted);font-size:.85rem;padding:1rem;text-align:center}
.velvet-desc{color:var(--muted);font-size:.9rem;line-height:1.6;margin:1rem 0}
.velvet-termblock{margin:1.25rem 0}
.velvet-termblock h3{font-size:.9rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin:0 0 .5rem}
.velvet-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}
.velvet-chips li{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:9999px;overflow:hidden}
.velvet-chip{padding:.4rem .75rem;font-size:.8rem;color:var(--fg)}
.velvet-chip:hover{color:var(--accent)}
.velvet-chip-save{background:transparent;border:0;color:var(--muted);padding:.4rem .55rem;cursor:pointer;font-size:.9rem;border-left:1px solid var(--border)}
.velvet-chip-save.is-saved{color:var(--accent)}
.velvet-empty{color:var(--muted);font-size:.8rem;padding:.25rem 0;list-style:none}
.velvet-saved-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}
.velvet-saved-groups h3{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin:0 0 .5rem}
.velvet-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border-radius:9999px;border:1px solid var(--border);background:var(--surface);color:var(--fg);font-weight:600;cursor:pointer;font-size:.85rem;margin-top:.75rem}
.velvet-btn-primary{background:var(--grad);border:0;color:#fff}
.velvet-btn.is-saved{background:var(--surface-2);color:var(--accent)}
.velvet-tax-header{padding:2rem 0;border-bottom:1px solid var(--border);margin-bottom:1.5rem}
.velvet-tax-header .eyebrow{color:var(--accent);font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700}
.velvet-tax-header h1{font-size:2.5rem;margin:.25rem 0}
.velvet-tax-meta{color:var(--muted);font-size:.85rem;margin:.5rem 0 0}
.velvet-footer{margin-top:3rem;border-top:1px solid var(--border);padding:2rem 1.25rem;color:var(--muted);font-size:.8rem}
.velvet-footer-inner{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.pagination,.nav-links{display:flex;gap:.4rem;justify-content:center;margin:2rem 0;grid-column:1/-1}
.page-numbers{padding:.5rem .8rem;border-radius:.5rem;background:var(--surface);color:var(--fg);font-size:.85rem}
.page-numbers.current{background:var(--grad);color:#fff;font-weight:700}
