/* Comandi nativi, focus visibile, preferenze esplicite; nessuna promessa di conformità automatica. */
.gu-skip-content{position:fixed;left:12px;top:10px;z-index:2147483646;background:#fff;color:#142e4c;padding:13px 18px;border:3px solid #142e4c;border-radius:8px;transform:translateY(-160%)}.gu-skip-content:focus{transform:none}
body.gauss-unified :is(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #111!important;outline-offset:3px!important;box-shadow:0 0 0 6px #ffe58a!important}
body.gauss-unified :is(a,button,input,textarea,select,summary){scroll-margin-block:100px 90px}
.gu-accessibility{position:fixed;left:12px;bottom:12px;z-index:2147483000;font:15px/1.5 system-ui,sans-serif;color:#152e4c;max-width:calc(100vw - 24px)}.gu-accessibility>summary{display:list-item;list-style-position:inside;cursor:pointer;background:#142f4c;color:#fff;padding:10px 15px;min-height:44px;border:2px solid #fff;border-radius:11px;box-shadow:0 3px 13px #102b4a30;font-weight:750}.gu-accessibility-panel{position:absolute;bottom:56px;left:0;width:330px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#152e4c;border:2px solid #234c70;border-radius:15px;box-shadow:0 10px 35px #112c4930;padding:19px}.gu-accessibility-panel h2{font:750 20px/1.3 system-ui,sans-serif;color:#152e4c;margin:0 0 8px}.gu-accessibility-panel p{font-size:14px;margin:0 0 12px}.gu-accessibility-panel label{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600;color:#152e4c;margin:0}.gu-accessibility-panel input[type=checkbox]{appearance:auto;width:21px;height:21px;min-width:21px;accent-color:#164e75}.gu-accessibility-panel select{width:100%;min-height:44px;font:15px system-ui,sans-serif;background:#fff;color:#152e4c;border:1px solid #67829a;border-radius:8px;padding:9px;margin-bottom:9px}.gu-accessibility-panel button{font:700 14px system-ui,sans-serif;min-height:44px;width:100%;border:1px solid #234c70;border-radius:8px;background:#eff4f8;color:#152e4c;padding:10px;margin:12px 0}.gu-accessibility-panel small{font-size:12px;line-height:1.5;display:block}.gu-accessibility-panel #gu-pref-status{font-size:12px;margin:0 0 9px}
/* Contrasto predefinito delle schede compatte. */
body.gauss-unified :is(.gauss-impact .gi-card p,#gauss-percorso .card p,#gauss-orientamento .gauss-info-card p,.gab .gab-card p,#gauss-contatti .gc-card p){color:#42586b!important}
body.gauss-unified :is(#gauss-modulistica .gm-open,.gab .gab-card a,.gmt-docs>p>a:after){color:#fff!important}
body.gauss-unified :is(.gauss-impact .gi-btn,#gauss-percorso .btn,#gauss-orientamento .gauss-button,.gab .gab-button,.gc-btn,.gm-open){min-height:44px!important}
/* Alto contrasto: i colori semantici vengono sostituiti da colori espliciti. */
html.gu-pref-contrast body.gauss-unified,html.gu-pref-contrast body.gauss-unified #page,html.gu-pref-contrast body.gauss-unified #page :not(img):not(svg):not(svg *){background-color:#fff!important;background-image:none!important;color:#111!important;border-color:#333!important;text-shadow:none!important;box-shadow:none!important}
html.gu-pref-contrast body.gauss-unified #page a{color:#003b85!important;text-decoration:underline!important;text-decoration-thickness:2px!important}
html.gu-pref-contrast body.gauss-unified #page :is(button,input,select,textarea,summary,[role=button]){background:#fff!important;color:#111!important;border:2px solid #222!important}
html.gu-pref-contrast body.gauss-unified #page :is(.gi-btn,.gauss-button,.btn,.gm-open,.gc-btn,.gab-button,.gab-card a,.gu-forum-contact){background:#111!important;color:#fff!important;border:2px solid #111!important}
html.gu-pref-contrast body.gauss-unified #page :is(.hero,.gauss-hero,.gi-hero,.gab-hero,.gmt-hero,.gc-hero,.gm-hero,.gu-forum-hero)::before,html.gu-pref-contrast body.gauss-unified #page :is(.hero,.gauss-hero,.gi-hero,.gab-hero,.gmt-hero,.gc-hero,.gm-hero,.gu-forum-hero)::after{display:none!important}
html.gu-pref-contrast body.gauss-unified #page .gmt-docs>p>a:after{background:#111!important;color:#fff!important}
html.gu-pref-links #page a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important}
html.gu-pref-spacing #page :is(p,li,dd,dt,label,span,a,h1,h2,h3,h4,h5,h6,td,th,input,textarea,select){line-height:1.5!important;letter-spacing:.12em!important;word-spacing:.16em!important}
html.gu-pref-spacing #page p{margin-bottom:2em!important}
html.gu-pref-spacing #page :is(.gi-card,.card,.gauss-info-card,.gab-card,.gc-card,.gm-doc,.gm-cat,.gi-hero,.gauss-hero,.hero,.gc-hero,.gab-hero,.gmt-hero,.gm-hero){height:auto!important;max-height:none!important;overflow:visible!important}
html.gu-pref-motion *,html.gu-pref-motion *::before,html.gu-pref-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* Ingrandimento: il layout si distende senza ritagliare il testo. */
html.gu-pref-enlarged #page :is(.gi-grid-hero,.gi-workflow,.gi-split,.gi-cards,.gauss-hero,.gauss-cards,.gauss-nova,.gauss-point-grid,.grid,.gm-list,.gm-cats,.gab-hero,.gab-grid,.gc-grid,.gc-location,.gmt-docs){grid-template-columns:1fr!important}
html.gu-pref-enlarged #page :is(.gi-card,.card,.gauss-info-card,.gab-card,.gc-card,.gm-doc,.gm-cat,.gi-hero,.gauss-hero,.hero,.gc-hero,.gab-hero,.gmt-hero,.gm-hero){height:auto!important;max-height:none!important;overflow:visible!important}
html.gu-pref-enlarged #page :is(.gm-search,.gm-reset){height:auto!important}
html.gu-pref-enlarged #page .gi-card{display:block!important}
html.gu-pref-enlarged #page .gi-card .gi-icon{margin-bottom:12px!important}
html.gu-pref-enlarged #page .gm-doc{display:block!important}
html.gu-pref-enlarged #page .gm-fileicon{margin-bottom:12px!important}
html.gu-pref-enlarged #page .main-header-menu>.menu-item>.menu-link{white-space:normal!important;height:auto!important}
@media(prefers-reduced-motion:reduce){body.gauss-unified *,body.gauss-unified *::before,body.gauss-unified *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.gu-accessibility>summary,.gu-accessibility-panel{border:2px solid ButtonText!important;forced-color-adjust:auto}body.gauss-unified a:focus-visible{outline:3px solid Highlight!important}}
@media print{.gu-accessibility,.gu-skip-content{display:none!important}}
