:root {
    --obsidian: #00050A;
    --sol-gold: #D4AF37;
    --gold-light: #f0d060;
    --gold-deep: #8B6914;
    --ash: #1A1C1E;
    --dawn: #f0ead6;
    --cyan: #00f5ff;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: var(--obsidian);
    color: var(--dawn);
    font-family: 'Sora', sans-serif;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
}

/* Noise overlay — subtle film texture */
body::after {
    content: '';
    position: fixed;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 9999;
}

canvas {
    display: block;
}

/* Glass morphism — matches brand panel style */
.glass-card {
    background: rgba(0, 5, 10, 0.65);
    backdrop-filter: blur(40px) saturate(180%);
    -webkit-backdrop-filter: blur(40px) saturate(180%);
}

/* Hide scrollbar */
::-webkit-scrollbar {
    width: 0;
    background: transparent;
}

/* Email input autofill override */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
    -webkit-text-fill-color: rgba(240, 234, 214, 0.7);
    -webkit-box-shadow: 0 0 0px 1000px #00050A inset;
    transition: background-color 5000s ease-in-out 0s;
    font-family: 'Sora', sans-serif;
}

input::placeholder {
    color: rgba(240, 234, 214, 0.12);
}
