/* Main CSS Entry Point */
/* ===== CORE IMPORTS ===== */
@import url('base/variables.css');

/* ===== COMPONENT IMPORTS ===== */
@import url('components/buttons.css');
@import url('components/cards.css');
@import url('components/forms.css');
@import url('components/navigation.css');
@import url('components/project-cards.css');
@import url('components/theme-switcher.css');
@import url('components/brush-cursor.css');

/* ===== LAYOUT IMPORTS ===== */
@import url('layout/grid.css');
@import url('layout/sections.css');
@import url('layout/footer.css');

/* ===== THEME IMPORTS ===== */
@import url('themes/dark.css');
@import url('themes/cyberpunk.css');
@import url('themes/cozy.css');
/* @import url('themes/luxury.css'); REMOVED */
/* @import url('themes/minimal.css'); REMOVED */
@import url('themes/effects/theme-effects.css');

/* ===== UTILITIES IMPORTS ===== */
@import url('utilities/animations.css');
@import url('utilities/responsive.css');

/* ===== ESSENTIAL BASE STYLES ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    /* Prevent rubber-banding on scroll */
    overscroll-behavior: none;
}

body {
    font-family: var(--font-sans);
    background: var(--bg-primary);
    color: var(--text-primary);
    line-height: 1.6;
    font-weight: 400;
    overflow-x: hidden;
    
    /* CRITICAL FIX: Locks horizontal scrolling/swiping logic 
       so user can only scroll vertically (pan-y). 
       This prevents page wobble when interacting with effects. */
    touch-action: pan-y;
    overscroll-behavior-x: none;
}

.container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 40px;
}

/* Ensure all elements are visible by default */
body * {
    visibility: visible;
    opacity: 1;
}

[data-aos] {
    visibility: visible;
    opacity: 1;
}