/**
 * Base: html, body, reset, tipografia
 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

html {
    overflow-x: hidden;
    width: 100%;
    height: 100%;
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background: var(--bg-primary);
    color: var(--text-primary);
    transition: background 0.00075s ease, color 0.00075s ease;
    padding-top: calc(env(safe-area-inset-top) + var(--header-height, 65px));
    overflow-x: hidden;
    width: 100%;
    margin: 0;
    padding-left: 0;
    padding-right: 0;
}

/* Mobile: tap immediato, nessun ritardo 300ms */
button, .modern-button, .event-card, a[onclick], [onclick] {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}
button:active, .modern-button:active { opacity: 0.9; }
@media (hover: none) {
    .event-card, button, .modern-button { transition: none !important; }
    .glass, [class*="backdrop-blur"] { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

/* Smooth transitions for all interactive elements */
* {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
