/* STEP 9 — Wallpaper 1280x1024 virtuali: ripetuto, non deformato e mai perso su schermi larghi. */
html body,html[data-theme="light"] body{background-color:#101010!important;background-image:linear-gradient(rgba(0,0,0,.50),rgba(0,0,0,.50)),radial-gradient(rgba(0,0,0,.22) .85px,transparent 1px),url('/assets/branding/wallpaper.jpg')!important;background-size:100% 100%,4px 4px,1280px 1024px!important;background-repeat:no-repeat,repeat,repeat!important;background-position:center,0 0,center top!important;background-attachment:fixed,fixed,fixed!important}
/* Stesso oscuramento per entrambi i temi, senza pregiudicare contrasto dei testi */
.search-wrap{background:linear-gradient(115deg,color-mix(in srgb,var(--panel) 85%,#ffffff 15%),color-mix(in srgb,var(--panel) 94%,#bdbdbd 6%))!important;border:1px solid color-mix(in srgb,var(--line) 62%,#eeeeee 38%)!important;box-shadow:0 4px 19px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.12)!important;min-height:53px}
.search-wrap:focus-within{border-color:var(--red)!important;box-shadow:0 0 0 2px rgba(214,38,48,.14),0 7px 22px rgba(0,0,0,.24)!important}
.search-wrap input{font-family:Arial,Helvetica,sans-serif;font-weight:400!important;letter-spacing:.01em}
.search-wrap input::placeholder{font-family:'Courier New',Courier,monospace!important;font-weight:400!important;font-size:clamp(11px,1vw,13px);letter-spacing:0;color:color-mix(in srgb,var(--ink) 72%,transparent)!important;opacity:1}
/* Un fondo opaco per i contenuti mantiene leggibili testo e vignette sul wallpaper. */
.tag-panel{background:color-mix(in srgb,var(--bg) 94%,transparent)!important}
.search-dock{background:color-mix(in srgb,var(--bg) 96%,transparent)!important}
.more{font-size:10.5px!important;letter-spacing:.10em!important;padding:9px 15px!important;font-weight:650!important}
/* Dialog anti-bot */
.contact-gate{border:0;padding:0;background:transparent;color:var(--ink);width:min(430px,calc(100vw - 32px));max-width:100%;overflow:visible}
.contact-gate::backdrop{background:rgba(0,0,0,.76);backdrop-filter:blur(8px)}
.contact-gate-card{position:relative;padding:29px;border-radius:19px;background:var(--panel);border:1px solid var(--line);box-shadow:0 26px 80px rgba(0,0,0,.55)}
.contact-gate-eyebrow{font-size:10px;letter-spacing:.15em;color:var(--red);font-weight:800}
.contact-gate h2{font-size:25px;line-height:1.2;margin:13px 0 11px;letter-spacing:-.025em}
.contact-gate p{font-size:14px;line-height:1.55;color:var(--ink);margin:0 0 17px}
.contact-gate form{display:grid;gap:11px}
.contact-gate input{width:100%;border-radius:9px;border:1px solid var(--line);padding:13px;background:var(--bg);color:var(--ink);outline-offset:3px;text-align:center}
.contact-gate form button{border:0;border-radius:9px;background:var(--red);color:white;padding:12px;font-weight:800;font-size:12px;letter-spacing:.12em}
.contact-gate-close{position:absolute;top:12px;right:13px;background:transparent;border:0;color:var(--ink);font-size:26px}
.contact-gate .contact-gate-error{min-height:20px;margin:10px 0 0;color:#e55d67;font-size:12px}
@media(max-width:650px){html body,html[data-theme="light"] body{background-size:100% 100%,4px 4px,960px 768px!important;background-attachment:scroll,scroll,scroll!important}.search-wrap{gap:6px;padding:7px 9px}.search-wrap input::placeholder{font-size:10.5px}.result-count{font-size:9px}.contact-gate-card{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){.contact-gate *{transition:none!important}}
