:root{--surface-deep: #04050a;--surface-0: #07080d;--surface-1: #0e1018;--surface-2: #171a25;--surface-3: #232736;--ink-strong: #f5f7fb;--ink: #c7cddb;--ink-muted: #8e97ab;--ink-faint: #666e80;--brand: #e01e2b;--brand-bright: #ff4a56;--card-accent: var(--brand-bright);--line: #1f2433;--line-strong: #2e3447;--focus: #7cc4ff;--art-ratio: 4 / 3;--art-wash: grayscale(1) contrast(1.18) brightness(.82);--art-wash-hover: grayscale(.35) contrast(1.1) brightness(1.06);--art-origin: 50% 50%;--art-zoom: 1;--art-tint: .72;--art-scrim: linear-gradient( to top, var(--surface-1) 5%, color-mix(in srgb, var(--surface-1) 84%, transparent) 34%, color-mix(in srgb, var(--surface-1) 10%, transparent) 68%, transparent );--page-gradient: radial-gradient(120% 60% at 50% -10%, color-mix(in srgb, var(--brand) 16%, transparent), transparent 60%), radial-gradient(70% 45% at 8% 4%, color-mix(in srgb, var(--focus) 7%, transparent), transparent 64%), linear-gradient(180deg, var(--surface-1) 0%, var(--surface-0) 46%, var(--surface-deep) 100%);--font-ui: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-display: "Segoe UI Semibold", "Segoe UI", system-ui, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-md: .9375rem;--text-lg: clamp(1.0625rem, .98rem + .4vw, 1.25rem);--text-xl: clamp(1.5rem, 1.2rem + 1.5vw, 2.25rem);--text-2xl: clamp(2rem, 1.5rem + 2.6vw, 3.25rem);--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.55;--tracking-wide: .08em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-pill: 999px;--shadow-text: 0 1px 12px rgb(0 0 0 / .8);--shadow-1: 0 1px 2px rgb(0 0 0 / .4);--shadow-2: 0 8px 24px -8px rgb(0 0 0 / .65);--shadow-3: 0 18px 44px -12px rgb(0 0 0 / .75);--dur-fast: .12s;--dur-mid: .2s;--ease-out: cubic-bezier(.2, .7, .3, 1);--page-max: 1240px;--page-gutter: clamp(var(--space-4), 4vw, var(--space-7));--card-min: 15rem}@media (max-width: 36rem){:root{--card-min: 9.5rem}}@media (prefers-reduced-motion: reduce){:root{--dur-fast: 0ms;--dur-mid: 0ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--surface-0);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-md);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;background-image:var(--page-gradient);background-repeat:no-repeat;background-attachment:fixed}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--radius-sm)}.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}.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);z-index:10;transform:translateY(-200%);padding:var(--space-2) var(--space-4);background:var(--brand);color:#fff;font-weight:600;border-radius:var(--radius-sm);transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.page{max-width:var(--page-max);margin-inline:auto;padding-inline:var(--page-gutter)}.masthead{padding-block:var(--space-7) var(--space-5);text-align:center}.masthead__logo{width:auto;height:3.25rem;margin-inline:auto;margin-bottom:var(--space-4);border-radius:var(--radius-sm)}.masthead__eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-muted)}.masthead__eyebrow:before{content:"";width:.5rem;height:.5rem;border-radius:var(--radius-pill);background:var(--brand-bright);box-shadow:0 0 0 4px #e01e2b33}.masthead__title{margin-block:var(--space-3) var(--space-2);font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--ink-strong)}.masthead__lede{max-width:46ch;margin-inline:auto;color:var(--ink-muted);font-size:var(--text-lg);line-height:var(--leading-snug)}.controls{position:sticky;top:0;z-index:5;padding-block:var(--space-4);background:color-mix(in srgb,var(--surface-0) 78%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.field{position:relative;display:flex;align-items:center;max-width:34rem;margin-inline:auto}.field__icon{position:absolute;left:var(--space-4);color:var(--ink-faint);pointer-events:none}.field__input{width:100%;padding:var(--space-3) var(--space-6) var(--space-3) var(--space-7);background:var(--surface-1);border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-strong);font:inherit;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field__input::placeholder{color:var(--ink-faint)}.field__input:hover{border-color:var(--ink-faint)}.field__input:focus{border-color:var(--focus);box-shadow:0 0 0 4px #7cc4ff26;outline:none}.field__hint{position:absolute;right:var(--space-3);display:grid;place-items:center;min-width:1.75rem;height:1.75rem;padding-inline:var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-faint);font-size:var(--text-xs);font-family:inherit;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.field__hint:hover{color:var(--ink-strong)}.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-4)}.chip{padding:var(--space-1) var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:transparent;color:var(--ink-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.chip:hover{color:var(--ink-strong);border-color:var(--ink-faint)}.chip[aria-pressed=true]{background:var(--ink-strong);border-color:var(--ink-strong);color:var(--surface-0);font-weight:600}.resultbar{margin-top:var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--ink-faint)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min),1fr));grid-auto-rows:1fr;gap:var(--space-4);padding-bottom:var(--space-6)}.card{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:transform var(--dur-mid) var(--ease-out),border-color var(--dur-mid) var(--ease-out),box-shadow var(--dur-mid) var(--ease-out)}.card:hover,.card:focus-visible{transform:translateY(-3px);border-color:color-mix(in srgb,var(--card-accent) 55%,var(--line));box-shadow:var(--shadow-3)}.card__art{position:relative;aspect-ratio:var(--art-ratio);overflow:hidden;isolation:isolate;background:var(--surface-2)}.card__art:not(.card__art--has-bg){background:linear-gradient(158deg,color-mix(in srgb,var(--card-accent) 26%,var(--surface-0)) 0%,color-mix(in srgb,var(--card-accent) 8%,var(--surface-0)) 52%,var(--surface-1) 100%)}.card__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scale(var(--art-zoom));transform-origin:var(--art-origin);filter:var(--art-wash);transition:filter var(--dur-mid) var(--ease-out),transform var(--dur-mid) var(--ease-out)}.card__wash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--card-accent);mix-blend-mode:color;opacity:var(--art-tint);transition:opacity var(--dur-mid) var(--ease-out)}.card__art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:radial-gradient(130% 95% at 50% 6%,color-mix(in srgb,var(--card-accent) 30%,transparent),transparent 64%);mix-blend-mode:screen}.card__art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:var(--art-scrim)}.card:hover .card__bg,.card:focus-visible .card__bg{transform:scale(calc(var(--art-zoom) * 1.04));filter:var(--art-wash-hover)}.card:hover .card__wash,.card:focus-visible .card__wash{opacity:calc(var(--art-tint) * .5)}.card__badge{position:absolute;z-index:5;top:var(--space-3);right:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--brand);color:#fff;font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase}.card__body{display:flex;flex-direction:column;flex:1;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4)}.card__title{position:absolute;z-index:4;left:var(--space-4);right:var(--space-4);bottom:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);line-height:var(--leading-tight);color:var(--ink-strong);text-shadow:var(--shadow-text)}.card__tagline{font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--ink-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__tags{display:flex;flex-wrap:nowrap;gap:var(--space-1);margin-top:auto;padding-top:var(--space-2);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none}.card__tags::-webkit-scrollbar{display:none}.card__tag{flex:none;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-faint);font-size:var(--text-xs);white-space:nowrap}.card__cta:first-child,.card__tagline+.card__cta{margin-top:auto}.card__cta{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);color:var(--card-accent);font-size:var(--text-sm);font-weight:600}.card__cta span:last-child{transition:transform var(--dur-fast) var(--ease-out)}.card:hover .card__cta span:last-child{transform:translate(3px)}.empty{padding-block:var(--space-8);text-align:center}.empty__title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink-strong)}.empty__body{margin-top:var(--space-2);color:var(--ink-muted)}.button{margin-top:var(--space-5);padding:var(--space-3) var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--ink-strong);font:inherit;font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out)}.button:hover{border-color:var(--ink-faint)}.footer{padding-block:var(--space-6) var(--space-7);border-top:1px solid var(--line);color:var(--ink-faint);font-size:var(--text-sm);text-align:center}body[data-locked=true] .skip-link,body[data-locked=true] .masthead,body[data-locked=true] .controls,body[data-locked=true] main,body[data-locked=true] .footer{display:none}.gate[hidden]{display:none}.gate{display:grid;place-items:center;min-height:100svh;padding:var(--page-gutter)}.gate__panel{display:grid;justify-items:center;gap:var(--space-4);width:min(28rem,100%);padding:var(--space-7) var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-3);text-align:center}.gate__panel:focus{outline:none}.gate__panel:focus-visible{outline:2px solid var(--focus);outline-offset:var(--space-1)}.gate__logo{width:3.5rem;height:auto}.gate__title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-tight);color:var(--ink-strong)}.gate__lede{margin:0;font-size:var(--text-md);line-height:var(--leading-normal);color:var(--ink)}.gate__button{min-height:2.75rem;margin-block:var(--space-2)}.gate__error{margin:0;padding:var(--space-3) var(--space-4);border:1px solid var(--brand);border-radius:var(--radius-md);background:color-mix(in srgb,var(--brand) 14%,transparent);font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--ink-strong)}.gate__note{margin:0;font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--ink-faint)}.footer__session{margin-block-start:var(--space-3);font-size:var(--text-xs);color:var(--ink-faint)}.footer__signout{border:0;padding:0;background:none;font:inherit;color:var(--ink-muted);text-decoration:underline;cursor:pointer}.footer__signout:hover{color:var(--ink-strong)}.footer__signout:focus-visible{outline:2px solid var(--focus);outline-offset:var(--space-1);border-radius:var(--radius-sm)}
