/* --- Premium Typography --- */
body {
    font-family: 'Heebo', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    /* Re-affirm Heebo */
    letter-spacing: -0.01em;
    /* Tighter, more editorial */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3 {
    letter-spacing: -0.03em;
    /* Tighter headings */
}

/* --- Aurora Background --- */
body.light-theme-aurora {
    background:
        radial-gradient(at 0% 0%, hsla(253, 16%, 7%, 1) 0, transparent 50%),
        radial-gradient(at 50% 0%, hsla(225, 39%, 30%, 1) 0, transparent 50%),
        radial-gradient(at 100% 0%, hsla(339, 49%, 30%, 1) 0, transparent 50%);
    background-size: 200% 200%;
    animation: aurora 15s ease infinite;
}

/* Redefine light mode bg to be more interesting than plain white */
body:not(.darkmode) {
    background-color: #f8f9fc;
    background-image:
        radial-gradient(circle at 15% 50%, rgba(135, 81, 254, 0.08), transparent 25%),
        radial-gradient(circle at 85% 30%, rgba(255, 94, 94, 0.08), transparent 25%);
    background-attachment: fixed;
}

body.darkmode {
    background-color: #0f0c29;
    background-image:
        linear-gradient(to right, #0f0c29, #302b63, #24243e);
}

/* --- Glassmorphism --- */
.app__header {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 20px;
    padding: 20px;
    /* Adjust for floating look */
    border: 1px solid rgba(255, 255, 255, 0.2);
    /* Subtle glass border */
}

body:not(.darkmode) .app__header {
    background: rgba(255, 255, 255, 0.6);
}

body.darkmode .app__header {
    background: rgba(0, 0, 0, 0.4);
    border-color: rgba(255, 255, 255, 0.1);
}