/* ==========================================================================
   BASE & RESET (Typography, Smooth Scrolling, App-like Scrollbar)
   ========================================================================== */
* { margin: 0; padding: 0; box-sizing: border-box; }

html { 
    scroll-behavior: smooth; /* Smooth scrolling παντού */
}

body { 
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; 
    background-color: var(--md-sys-color-surface); 
    color: var(--md-sys-color-on-surface); 
    line-height: 1.5;
    display: flex; flex-direction: column; min-height: 100vh;
    /* "Butter" transition για το Dark Mode */
    transition: background-color var(--md-sys-motion-duration-medium) var(--md-sys-motion-easing-emphasized), 
                color var(--md-sys-motion-duration-medium) var(--md-sys-motion-easing-emphasized);
    -webkit-font-smoothing: antialiased;
}

main { flex: 1; }
.material-symbols-rounded { vertical-align: middle; display: inline-block; }

/* selection Color */
::selection { background: var(--md-sys-color-primary-container); color: var(--md-sys-color-on-primary-container); }

/* --- App-like Minimal Scrollbar (Εξαφανίζεται όταν δεν σκρολάρεις) --- */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { 
    background: var(--md-sys-color-surface-container-high); 
    border-radius: var(--md-sys-shape-corner-full); 
    border: 2px solid var(--md-sys-color-surface); 
    transition: background-color 0.3s;
}
::-webkit-scrollbar-thumb:hover { background: var(--md-sys-color-outline); }

/* --- Basic Media Elements (Rounded Images, Soft Shadow) --- */
img { 
    max-width: 100%; height: auto; 
    border-radius: var(--md-sys-shape-corner-medium); 
    transition: box-shadow var(--md-sys-motion-duration-short) ease, transform 0.2s ease;
}

/* --- Typography Classes --- */
.text-white { color: #ffffff !important; }
.headline-large { font-size: 32px; font-weight: 400; color: var(--md-sys-color-on-surface); margin-bottom: 8px; letter-spacing: -0.5px; }
.title-large { font-size: 22px; font-weight: 500; letter-spacing: -0.2px; }
.body-large { font-size: 16px; margin-bottom: 32px; color: var(--md-sys-color-on-surface); }
.body-medium { font-size: 14px; color: var(--md-sys-color-on-surface); opacity: 0.8; }
.display-large { font-size: 44px; line-height: 1.1; font-weight: 500; margin-bottom: 16px; letter-spacing: -1px; }

/* --- WP CLEANUP (Aggressive but Clean) --- */
#primary { width: 100% !important; max-width: 1400px !important; margin: 0 auto !important; padding: 24px; }
#secondary, .widget-area, .site-sidebar { display: none !important; }
.widget_search, .search-form, #searchform, form.search-form { display: none !important; visibility: hidden !important; opacity: 0 !important; height: 0 !important; width: 0 !important; overflow: hidden !important; pointer-events: none; }