:root {
    --font-main: 'Stack Sans Text', sans-serif;
    
    /* Theme: Pure Dark Only */
    --bg-color: #0a0a0a;
    --text-color: #ffffffee;
    --text-muted: #666666;
    --input-label: #aaaaaa;
    --input-placeholder: #555555;
    --accent-color: #333333;
    --accent-glow: rgba(255, 255, 255, 0.1);
    --dot-past: #222222;
    --dot-future: #444444;
    --dot-event: #ffffff;
    --sidebar-bg: #111111;
    --modal-bg: rgba(20, 20, 20, 0.95);
    --border-radius: 12px;
    
    /* Kanban Colors */
    --status-todo: #444444;
    --status-working: #ffbb33;
    --status-done: #00C851;
    
    /* Extended Colors - Loader, Modals, Notifications */
    --loader-dot-bg: #333333;
    --loader-dot-active: #ffffff;
    --loader-text: #666666;
    --modal-confirm-bg: #151515;
    --sheet-bg: #1c1c1e;
    --notification-bg: #1a1a1a;
    --notification-border: #333333;
    --error-color: #ff3366;
    --danger-color: #ff4444;
    --danger-bg: rgba(255, 50, 50, 0.1);
    --danger-border: rgba(255, 50, 50, 0.3);
    
    /* Z-Index Scale */
    --z-base: 1;
    --z-dropdown: 100;
    --z-sticky: 150;
    --z-overlay: 200;
    --z-sheet-overlay: 299;
    --z-sheet: 300;
    --z-modal: 301;
    --z-tooltip: 400;
    --z-notification: 500;
    --z-loader: 9999;
    
    /* Animation Timing */
    --transition-fast: 0.15s;
    --transition-normal: 0.2s;
    --transition-slow: 0.3s;
    --ease-out-expo: cubic-bezier(0.2, 0.8, 0.2, 1);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    background-color: var(--bg-color, #0a0a0a);
    color: var(--text-color, #ffffffee);
    font-family: var(--font-main, 'Stack Sans Text', sans-serif);
    overflow: hidden;
    height: 100vh;
    width: 100vw;
}

/* Canvas Layers */
#bg-canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

/* Utilities */
.hidden { display: none !important; }

/* SEO Hidden Content - visually hidden but accessible */
.seo-content {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Priority Picker Popover */
.priority-picker-popover {
    position: fixed;
    width: 120px;
}

/* Reduced Motion - Accessibility */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* Global Dragging Cursor Override */
body.dragging-active,
body.dragging-active * {
    cursor: grabbing !important;
}
