/* Shared font variables */
:root {
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    --font-heading: 'Work Sans', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    /* Theme Colors - Dark Mode (default) */
    --carbon-black: #000000;
    --paper-white: #FCFCFC;
    --soft-shadow-grey: #D9D9D9;
    --gunmetal: #2F2F32;
    --highlight-sand: #E5D9C7;
    --body-text: #F7F7F7;
    --bg-color: #000000;
    --text-color: #F7F7F7;
    --text-secondary: #D9D9D9;
}

/* Light Mode */
body.light-mode {
    --bg-color: #FCFCFC;
    --text-color: #2F2F32;
    --text-secondary: #555555;
    --carbon-black: #FCFCFC;
    --paper-white: #000000;
    --soft-shadow-grey: #555555;
    --gunmetal: #2F2F32;
    --body-text: #2F2F32;
}

html, body {
    font-family: var(--font-primary);
    -webkit-font-smoothing: antialiased;
    background: var(--bg-color) !important;
    color: var(--text-color) !important;
    transition: background-color 0.3s ease, color 0.3s ease;
}
/* Custom scrollbar */
::-webkit-scrollbar { width: 12px; }
::-webkit-scrollbar-track { background: var(--carbon-black); }
::-webkit-scrollbar-thumb { background: var(--gunmetal); border-radius: 6px; border: 2px solid var(--carbon-black); }
::-webkit-scrollbar-thumb:hover { background: #3A3A3D; }
* { scrollbar-width: thin; scrollbar-color: var(--gunmetal) var(--carbon-black); }
/* Skip link */
.skip-link {
    position: absolute; top: -40px; left: 0; background: #f2f2f2; color: #000; padding: 8px 16px;
    text-decoration: none; font-weight: 600; z-index: 100;
}
.skip-link:focus {
    top: 16px; left: 16px; background: #fff; color: #000; border-radius: 4px; padding: 10px 14px;
    border: 1px solid #0002; box-shadow: 0 2px 8px #0006; position: fixed; width: auto; height: auto;
}
/* ...existing code... */