:root {
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #07080b;
  color: #f8f8fb;
  font-synthesis: none;
  --surface: rgba(18, 19, 25, 0.82);
  --surface-solid: #121319;
  --surface-soft: #1a1c24;
  --line: rgba(255, 255, 255, 0.09);
  --muted: #9699a8;
  --accent: #ff4f82;
  --accent-2: #8d6bff;
  --success: #70e0a2;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: #07080b; }
body { margin: 0; min-height: 100vh; overflow-x: hidden; background: radial-gradient(circle at 50% -10%, #1b1426 0, #090a0e 42%, #07080b 100%); }
button, input { font: inherit; }
button { color: inherit; }
a { color: inherit; }
.hidden { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.ambient { position: fixed; border-radius: 999px; filter: blur(120px); opacity: .14; pointer-events: none; z-index: 0; }
.ambient-one { width: 520px; height: 520px; left: -280px; top: 220px; background: var(--accent); }
.ambient-two { width: 600px; height: 600px; right: -320px; top: 80px; background: var(--accent-2); }

.site-header, main, footer { position: relative; z-index: 1; }
.site-header { max-width: 1180px; margin: 0 auto; padding: 28px 28px; display: flex; justify-content: space-between; align-items: center; }
.brand { display: inline-flex; gap: 12px; align-items: center; text-decoration: none; }
.brand-mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: linear-gradient(135deg, var(--accent), var(--accent-2)); box-shadow: 0 10px 40px rgba(255, 79, 130, .25); font-weight: 900; }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 16px; letter-spacing: .04em; }
.brand small { margin-top: 2px; color: var(--muted); font-size: 11px; }
.phase-pill, .count-badge, .verified-badge, .rights-note { border: 1px solid var(--line); background: rgba(255,255,255,.04); border-radius: 999px; }
.phase-pill { padding: 9px 14px; color: #cbcdd8; font-size: 12px; }

main { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.hero { padding: 110px 0 90px; max-width: 850px; margin: 0 auto; text-align: center; }
.eyebrow { margin: 0 0 12px; color: var(--accent); font-size: 11px; font-weight: 800; letter-spacing: .18em; }
.hero h1 { margin: 0; font-size: clamp(58px, 10vw, 112px); line-height: .88; letter-spacing: -.075em; font-weight: 850; }
.hero h1 span { color: transparent; background: linear-gradient(100deg, #fff 10%, #ff7aa1 46%, #a88aff 88%); -webkit-background-clip: text; background-clip: text; }
.hero-copy { max-width: 660px; margin: 34px auto 38px; color: #b6b8c3; line-height: 1.7; font-size: 17px; }
.search-shell { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 9px 9px 9px 18px; border: 1px solid rgba(255,255,255,.14); border-radius: 22px; background: rgba(17,18,24,.82); backdrop-filter: blur(20px); box-shadow: 0 30px 90px rgba(0,0,0,.35); }
.search-shell:focus-within { border-color: rgba(255,79,130,.65); box-shadow: 0 0 0 4px rgba(255,79,130,.08), 0 30px 90px rgba(0,0,0,.35); }
.search-icon { color: var(--muted); font-size: 25px; transform: rotate(-18deg); }
.search-shell input { min-width: 0; border: 0; outline: 0; background: transparent; color: #fff; font-size: 17px; padding: 14px 0; }
.search-shell input::placeholder { color: #747784; }
.search-shell button { border: 0; border-radius: 15px; background: linear-gradient(135deg, var(--accent), #e24391); padding: 14px 22px; font-weight: 750; cursor: pointer; box-shadow: 0 12px 30px rgba(255,79,130,.24); }
.search-shell button:hover { transform: translateY(-1px); }
.search-status { min-height: 24px; color: var(--muted); font-size: 13px; }

.content-section { padding: 40px 0 100px; }
.section-heading, .subsection-heading { display: flex; justify-content: space-between; gap: 20px; align-items: flex-end; }
.section-heading { margin-bottom: 24px; }
.section-heading h2, .subsection-heading h3 { margin: 0; letter-spacing: -.03em; }
.section-heading h2 { font-size: clamp(28px, 5vw, 44px); }
.count-badge { min-width: 40px; padding: 8px 12px; text-align: center; color: #d7d8df; }
.results-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 16px; }
.result-card { width: 100%; display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 18px; text-align: left; padding: 14px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); cursor: pointer; backdrop-filter: blur(16px); transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.result-card:hover { transform: translateY(-3px); border-color: rgba(255,79,130,.42); background: rgba(24,25,33,.95); }
.result-cover-wrap { position: relative; width: 112px; aspect-ratio: 2 / 3; overflow: hidden; border-radius: 15px; background: linear-gradient(145deg, #2a1b31, #181925); }
.result-cover, .cover-frame img { width: 100%; height: 100%; object-fit: cover; display: block; }
.result-cover-fallback, .cover-fallback { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(255,255,255,.12); font-size: 48px; font-weight: 900; background: linear-gradient(145deg, rgba(255,79,130,.25), rgba(141,107,255,.2)); }
.result-body { min-width: 0; padding: 5px 4px 4px 0; display: flex; flex-direction: column; }
.result-meta { color: var(--accent); text-transform: uppercase; font-size: 10px; letter-spacing: .14em; font-weight: 800; }
.result-title { margin: 9px 0 8px; font-size: 24px; letter-spacing: -.04em; }
.result-description { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.result-footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 14px; color: #d7d8df; font-size: 12px; }
.result-arrow { color: var(--accent); font-size: 20px; }

.back-button { margin: 0 0 20px; border: 0; background: transparent; color: var(--muted); cursor: pointer; padding: 8px 0; }
.back-button:hover { color: #fff; }
.work-panel { display: grid; grid-template-columns: minmax(230px, 310px) minmax(0, 1fr); gap: clamp(30px, 6vw, 74px); padding: clamp(22px, 4vw, 48px); border: 1px solid var(--line); border-radius: 34px; background: rgba(14,15,20,.82); backdrop-filter: blur(24px); box-shadow: 0 40px 120px rgba(0,0,0,.34); }
.cover-frame { position: relative; aspect-ratio: 2 / 3; overflow: hidden; border-radius: 22px; background: #181921; box-shadow: 0 25px 60px rgba(0,0,0,.35); }
.verified-badge { margin-top: 14px; padding: 11px; text-align: center; color: var(--success); font-size: 12px; }
.work-kicker { color: var(--accent); font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .12em; }
.dot { color: #51535e; margin: 0 7px; }
.work-content > h2 { margin: 13px 0 0; font-size: clamp(42px, 7vw, 76px); line-height: .98; letter-spacing: -.065em; }
.original-title { margin: 10px 0 0; color: #777a88; font-size: 15px; }
.work-description { margin: 28px 0; color: #b4b6c1; line-height: 1.75; max-width: 760px; }
.facts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; }
.fact { padding: 15px; border-radius: 17px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.055); }
.fact dt { color: #737683; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.fact dd { margin: 7px 0 0; font-size: 14px; font-weight: 650; }
.subsection { margin-top: 42px; }
.subsection-heading { margin-bottom: 16px; }
.subsection-heading h3 { font-size: 23px; }
.rights-note { padding: 7px 10px; color: #d3b878; font-size: 10px; }
.offer-list, .external-list, .release-list { display: grid; gap: 10px; }
.release-row { display: grid; grid-template-columns: minmax(100px, .7fr) minmax(0, 1.4fr) auto; align-items: center; gap: 16px; padding: 15px 17px; border-radius: 17px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.release-number { font-weight: 800; letter-spacing: -.02em; }
.release-details { color: var(--muted); font-size: 12px; }
.release-state { justify-self: end; padding: 7px 10px; border-radius: 999px; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; border: 1px solid var(--line); }
.release-state.verified { color: var(--success); background: rgba(112,224,162,.07); }
.release-state.candidate { color: #d3b878; background: rgba(211,184,120,.07); }
.capability-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.capability { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 15px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.025); }
.capability strong { font-size: 12px; }
.capability span { font-size: 11px; }
.capability.allowed span { color: var(--success); }
.capability.denied span { color: #ef8d9f; }
.offer, .external-id { display: grid; grid-template-columns: minmax(130px, .9fr) minmax(0, 1.5fr) auto; align-items: center; gap: 16px; padding: 15px 17px; border-radius: 17px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.offer-provider, .external-provider { font-weight: 750; }
.offer-details, .external-value { color: var(--muted); font-size: 12px; }
.offer a, .external-id a { text-decoration: none; color: var(--accent); font-size: 12px; }
.offer a:hover, .external-id a:hover { text-decoration: underline; }
.reader-gate { margin-top: 42px; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 22px; border: 1px dashed rgba(255,255,255,.15); border-radius: 22px; background: linear-gradient(110deg, rgba(255,79,130,.07), rgba(141,107,255,.05)); }
.reader-gate h3 { margin: 0 0 8px; }
.reader-gate p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.reader-gate button { flex: 0 0 auto; border: 1px solid var(--line); border-radius: 13px; padding: 12px 17px; background: rgba(255,255,255,.04); color: #747784; }

footer { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 28px 0 40px; border-top: 1px solid var(--line); color: #656874; font-size: 12px; text-align: center; }

@media (max-width: 760px) {
  .site-header { padding: 20px; }
  .phase-pill { display: none; }
  main { width: min(100% - 24px, 1180px); }
  .hero { padding: 80px 0 60px; }
  .hero h1 { font-size: clamp(56px, 18vw, 82px); }
  .search-shell { grid-template-columns: auto 1fr; }
  .search-shell button { grid-column: 1 / -1; width: 100%; }
  .work-panel { grid-template-columns: 1fr; padding: 18px; border-radius: 24px; }
  .cover-column { max-width: 260px; margin: 0 auto; width: 100%; }
  .offer, .external-id, .release-row { grid-template-columns: 1fr; gap: 6px; }
  .release-state { justify-self: start; }
  .reader-gate { align-items: flex-start; flex-direction: column; }
}
