/* generated by build.mjs — edit themes/themes.mjs instead */
:root {
  --bg: #100d07;
  --bg-gradient: radial-gradient(70% 55% at 50% 105%, rgba(233,180,76,0.22), transparent 62%), radial-gradient(80% 60% at 50% 0%, rgba(134,160,111,0.10), transparent 60%);
  --surface: rgba(28,23,13,0.78);
  --ink: #f7efdf;
  --ink-dim: #b09d84;
  --accent: #e9b44c;
  --accent-2: #86a06f;
  --on-accent: #191204;
  --line: rgba(233,180,76,0.22);
  --sign-ink: #e9b44c;
  --sign-tracking: 0.14em;
  --sign-shadow: 0 0 38px rgba(233,180,76,0.35);
  --card-radius: 3px;
  --card-border: 1px solid rgba(233,180,76,0.26);
  --grain-opacity: 0.05;
  --vignette: radial-gradient(115% 95% at 50% 55%, transparent 50%, rgba(0,0,0,0.55) 100%);
  --font-display: "Marcellus", Georgia, serif;
  --font-body: "Karla", 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");
}
      .mandala{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
        width:min(760px,105vw);opacity:.75;animation:turn 120s linear infinite}
      @keyframes turn{to{transform:translate(-50%,-50%) rotate(360deg)}}
      .diya{position:absolute;left:6vw;bottom:5vh;width:min(220px,26vw);opacity:.95;
        filter:drop-shadow(0 -6px 46px rgba(255,180,60,.45))}
      .petals b{position:absolute;top:-6vh;left:var(--x);width:11px;height:7px;
        border-radius:60% 40%;background:#e9b44c55;
        animation:fall2 16s linear infinite;animation-delay:var(--d)}
      @keyframes fall2{to{transform:translate(24px,118vh) rotate(200deg);opacity:0}}
      @media(max-width:640px){.mandala{opacity:.4}}
