/* Direction: after-dark cinema — inked charcoal, violet marquee glow, condensed display type */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  color-scheme: dark;
  --canvas: #0a0a10;
  --surface: #15151d;
  --surface-2: #1d1d27;
  --border: #2b2b38;
  --border-strong: #545458;
  --ink: #f3f1ec;
  --muted: #a4a1b4;
  --accent: #8b5cf6;
  --accent-hover: #7c3aed;
  --accent-ink: #0a0a10;
  --accent-text: #c3aaff;
  --accent-strong: #d6c5ff;
  --accent-soft: #221c3a;
  --accent-border: #4c3f7a;
  --success: #34d399;
  --success-ink: #ffffff;
  --success-soft: #13362e;
  --success-strong: #34d399;
  --warning: #fbbf24;
  --warning-ink: #ffffff;
  --warning-soft: #3f3214;
  --warning-strong: #fbbf24;
  --danger: #f87171;
  --danger-ink: #ffffff;
  --danger-soft: #3e2125;
  --danger-strong: #f87171;
  --chart-1: #8b5cf6;
  --chart-2: #fc53a9;
  --chart-3: #c16317;
  --chart-4: #999f18;
  --chart-5: #119579;
  --chart-6: #23a7de;

  --font-display: "Anton", "Arial Narrow", sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
  --display-weight: 400;
  --display-tracking: 0.01em;
  --radius-card: 18px;
  --radius-btn: 999px;
  --shadow-card: 0 20px 45px -20px rgba(0,0,0,0.6);
  --x-on-photo: #f3f1ec;
  --gradient-hero: linear-gradient(180deg, rgba(10,10,16,0) 0%, rgba(10,10,16,0.75) 65%, #0a0a10 100%);
  --gradient-glow: radial-gradient(60% 60% at 50% 0%, rgba(139,92,246,0.35) 0%, rgba(10,10,16,0) 70%);
  --font-mono: "JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-sans: "Inter", system-ui, sans-serif;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="light"] {
  color-scheme: light;
  --canvas: #ffffff;
  --surface: #ffffff;
  --surface-2: #f3f3f3;
  --border: #ddddde;
  --border-strong: #b6b6b7;
  --ink: #0a0a10;
  --muted: #6c6c70;
  --accent: #8b5cf6;
  --accent-hover: #764ed1;
  --accent-ink: #0a0a10;
  --accent-text: #764ed0;
  --accent-strong: #764ed0;
  --accent-soft: #efe8fe;
  --accent-border: #cbb6fb;
  --success: #34d399;
  --success-ink: #0a0a10;
  --success-soft: #e7faf3;
  --success-strong: #1d7656;
  --warning: #fbbf24;
  --warning-ink: #0a0a10;
  --warning-soft: #fff7e5;
  --warning-strong: #8d6b14;
  --danger: #f87171;
  --danger-ink: #0a0a10;
  --danger-soft: #feeeee;
  --danger-strong: #a44b4b;
  --chart-1: #8b5cf6;
  --chart-2: #f64da4;
  --chart-3: #a45003;
  --chart-4: #939908;
  --chart-5: #117962;
  --chart-6: #129fd5;
}

/* app.css — PRISM landing page: film-grain texture and marquee ticker */

.grain-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.06;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.poster-card {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.poster-card:hover {
  transform: translateY(-6px);
}

@keyframes marquee-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.marquee-track {
  display: flex;
  width: max-content;
  animation: marquee-scroll 32s linear infinite;
}
html.reduced-motion .marquee-track {
  animation: none;
}
