/* generated by build.mjs — edit themes/themes.mjs instead */
:root {
  --bg: #170309;
  --bg-gradient: radial-gradient(70% 50% at 50% 0%, rgba(255,61,110,0.16), transparent 60%), radial-gradient(60% 45% at 85% 100%, rgba(255,206,60,0.10), transparent 65%);
  --surface: rgba(43,7,20,0.82);
  --ink: #ffeef2;
  --ink-dim: #bb8296;
  --accent: #ff3d6e;
  --accent-2: #ffce3c;
  --on-accent: #26030c;
  --line: rgba(255,61,110,0.26);
  --sign-ink: #ff3d6e;
  --sign-tracking: 0.08em;
  --sign-shadow: 0 0 30px rgba(255,61,110,0.45);
  --card-radius: 10px;
  --grain-opacity: 0.06;
  --font-display: "Anton", Georgia, serif;
  --font-body: "Hind", system-ui, -apple-system, sans-serif;
  --grain-url: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
      .sequins{position:absolute;inset:0;opacity:.22;
        background:radial-gradient(circle 1.5px at 22px 22px, #ff3d6e88 1px, transparent 1.2px) 0 0/44px 44px}
      .rays{position:absolute;left:50%;top:-10vh;width:70vw;height:60vh;transform:translateX(-50%);
        background:conic-gradient(from 0deg at 50% 0%, transparent 0 18deg, rgba(255,61,110,.08) 18deg 36deg, transparent 36deg 54deg, rgba(255,206,60,.06) 54deg 72deg, transparent 72deg 90deg, rgba(255,61,110,.06) 90deg 108deg, transparent 108deg 126deg, rgba(255,206,60,.05) 126deg 144deg, transparent 144deg 360deg);
        animation:ray 28s linear infinite}
      @keyframes ray{to{transform:translateX(-50%) rotate(360deg)}}
      .glitter b{position:absolute;bottom:-4vh;left:var(--x);width:7px;height:7px;border-radius:50%;background:#ff3d6e66;animation:glitter 10s linear infinite;animation-delay:var(--d)}
      @keyframes glitter{to{transform:translate(-12px,-114vh);opacity:0}}
