/* Effetti globali (applicati a <html> e <body>) */

/* Zoom testo */
html {
    --ab-zoom: 1; /* Valore predefinito */
    font-size: calc(100% * var(--ab-zoom));
}

body.ab-underline a { 
    text-decoration: underline !important; 
}
body.ab-dyslexia :where(p, li, span, div, a, h1, h2, h3, h4, h5, h6, td, th) {
    font-family: 'OpenDyslexic' !important;
    letter-spacing: -0.08em !important;
}

/* Evidenziazione cursore */
body.ab-highlight-cursor *:not(body, section, div):hover {
    background-color: rgba(255, 255, 0, 0.3) !important;
    outline: 1px solid rgba(255, 255, 0, 0.6) !important;
    outline-offset: 2px !important;
}

/* Cursore grande */
html.ab-big-cursor, 
html.ab-big-cursor * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="38" height="51.53" viewBox="0 0 38 51.53"><path fill="%23ed8c00" stroke="%23633800" stroke-width="2.5" d="M5.73,50.03c-0.15,0-0.31-0.02-0.46-0.07-0.59-0.19-1-0.72-1.04-1.34L1.5,3.08c-0.04-0.62,0.31-1.2,0.88-1.46,0.19-0.09,0.4-0.13,0.61-0.13,0.39,0,0.78,0.16,1.07,0.45l32.02,32.51c0.43,0.43,0.55,1.09,0.31,1.65-0.24,0.55-0.78,0.9-1.37,0.9-0.01,0-17.62-0.6-17.62-0.6L10.5,50.3c-0.29,0.36-0.72,0.56-1.17,0.56Z"/></svg>') 4 4, auto !important;
}
html.ab-big-cursor :where(a, button, input, textarea, select), html.ab-big-cursor :where(a, button, input, textarea, select) * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="39.7" height="52" viewBox="0 0 39.7 52"><path fill="%2300d4ea" stroke="%2303465b" stroke-width="2.5" d="M14.12,50.67c-0.49,0-0.93-0.26-1.18-0.68-0.06-0.09-5.46-9.47-9.08-16.38-2.23-4.25-2.88-6.57-2.29-8.26,0.53-1.53,1.94-2.17,2.98-2.63,0.31-0.14,0.65-0.21,1.01-0.21,0.49,0,1.81,0,4.48,2.64V5.35c0-2.32,1.95-4,4.63-4,2.22,0,4.03,1.79,4.03,4v8.54c0.77-0.41,1.64-0.63,2.55-0.63,1.46,0,2.83,0.57,3.87,1.6,0.54,0.54,0.89,1.22,1.01,1.95,0.52-0.21,1.08-0.32,1.66-0.32,1.18,0,2.3,0.46,3.14,1.3,0.88,0.88,1.37,2.05,1.37,3.3v0.08c0.49-0.17,1-0.26,1.53-0.26,1.24,0,2.4,0.48,3.29,1.36,0.79,0.79,1.22,1.84,1.22,2.95v13.33c0,2.02-0.47,4.04-1.38,5.84l-2.76,5.52c-0.23,0.46-0.7,0.75-1.22,0.75H14.12Z"/></svg>') 4 4, pointer !important;
}

/* Riduci animazioni */
html.ab-reduce-motion *,
html.ab-reduce-motion *::before,
html.ab-reduce-motion *::after {
    animation-delay: -1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    background-attachment: initial !important;
    scroll-behavior: auto !important;
    transition-delay: 0s !important;
    transition-duration: 0s !important;
}
/* Nasconde gli iframe che probabilmente contengono animazioni (es. Lottie) */
html.ab-reduce-motion iframe[src*="lottie"] {
    display: none !important;
}

/* Rende invisibili i canvas, spesso usati per animazioni decorative, senza alterare il layout */
html.ab-reduce-motion canvas {
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Rimuovi immagini */
html.ab-remove-images :where(img, picture, svg, video):not(.ab-widget *):not(#CookiebotWidget *):not([class*="logo"]):not([id*="logo"]):not([class*="icon"]):not([id*="icon"]):not([class*="icona"]):not([id*="icona"]) {
    display: none !important;
}
/* Escludi anche gli sfondi per gli stessi widget */
html.ab-remove-images [style*="background-image"]:not(.ab-widget *):not(#CookiebotWidget *):not([class*="logo"]):not([id*="logo"]):not([class*="icon"]):not([id*="icon"]):not([class*="icona"]):not([id*="icona"]) {
    background-image: none !important;
}
