:root{
  --bg:#07070b;--bg2:#0b0c14;--panel:rgba(15,16,28,.72);--panel2:rgba(20,18,38,.82);--text:#f8f8fc;--muted:#a7a8b6;
  --purple:#9d4dff;--purple2:#6c39ff;--blue:#28a6ff;--cyan:#35e4ff;--line:rgba(173,121,255,.22);--danger:#ff3d7f;
  --shadow:0 22px 70px rgba(0,0,0,.45);--radius:24px;--max:1200px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% 0%,#141024 0,#08080e 38%,#060609 100%);color:var(--text);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.shell{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.section-pad{padding:92px 0}.section-tight{padding:18px 0 42px}.grain{position:fixed;inset:0;pointer-events:none;z-index:-2;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E")}.aurora{position:fixed;width:46vw;height:46vw;border-radius:50%;filter:blur(90px);opacity:.13;z-index:-3;pointer-events:none}.aurora-a{background:#8f3bff;top:-18vw;left:-12vw}.aurora-b{background:#006dff;right:-18vw;top:30vh}.glass{background:linear-gradient(180deg,rgba(18,18,34,.82),rgba(10,11,19,.72));border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),var(--shadow);backdrop-filter:blur(18px)}
.topbar{position:sticky;top:14px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin-top:14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(7,7,12,.74);backdrop-filter:blur(18px);box-shadow:0 12px 36px rgba(0,0,0,.25)}.brand{display:flex;align-items:center;gap:10px;font-family:Orbitron,sans-serif;font-weight:800}.brand img{width:38px;height:38px;object-fit:contain;border-radius:10px}.brand-accent{color:#9d65ff}.desktop-nav{display:flex;gap:28px;color:#c6c6d1;font-size:14px}.desktop-nav a:hover{color:#fff}.top-actions{display:flex;gap:10px;align-items:center}.icon-btn{width:42px;height:42px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);display:grid;place-items:center;cursor:pointer}.menu-btn{display:none;gap:4px;padding:10px}.menu-btn span{display:block;width:18px;height:2px;background:#fff;border-radius:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:15px;padding:13px 18px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:.25s transform,.25s box-shadow,.25s background}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#9c49ff,#5c44ff 58%,#158eff);box-shadow:0 13px 34px rgba(122,69,255,.28)}.btn-secondary{background:rgba(255,255,255,.06);border-color:rgba(141,100,255,.28)}.btn-ghost{background:transparent;border-color:rgba(255,255,255,.12);color:#ddd}
.menu-overlay{position:fixed;inset:0;background:rgba(2,2,7,.72);backdrop-filter:blur(10px);z-index:90;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:.3s}.menu-overlay.open{opacity:1;pointer-events:auto}.menu-window{width:min(920px,100%);max-height:88vh;overflow:auto;border:1px solid rgba(168,106,255,.32);border-radius:30px;padding:24px;background:linear-gradient(145deg,rgba(19,15,36,.96),rgba(6,9,18,.96));box-shadow:0 40px 120px rgba(0,0,0,.7),0 0 80px rgba(117,57,255,.16);transform:perspective(1200px) rotateX(-8deg) scale(.94) translateY(20px);transition:.4s cubic-bezier(.2,.75,.2,1)}.menu-overlay.open .menu-window{transform:perspective(1200px) rotateX(0) scale(1) translateY(0)}.menu-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.menu-head h2{font-size:30px;margin:6px 0 0}.close-btn{font-size:27px}.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.menu-grid a{position:relative;padding:18px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));display:grid;grid-template-columns:44px 1fr;gap:3px 10px;transform-style:preserve-3d;transition:.25s}.menu-grid a:hover{transform:perspective(700px) rotateX(3deg) rotateY(-3deg) translateY(-3px);border-color:rgba(163,101,255,.5);box-shadow:0 18px 36px rgba(87,45,180,.18)}.menu-grid a>span{grid-row:1/3;color:#8f72ff;font:700 13px Orbitron}.menu-grid b{font:700 17px Orbitron}.menu-grid small{color:var(--muted)}
.hero{min-height:76vh;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(169,98,255,.25);background:rgba(125,61,255,.08);padding:8px 12px;border-radius:999px;color:#d7c7ff;font:600 12px Orbitron;letter-spacing:.12em}.pulse-dot{width:7px;height:7px;background:#9d50ff;border-radius:50%;box-shadow:0 0 0 0 rgba(157,80,255,.6);animation:pulse 2s infinite}.hero h1{font:800 clamp(60px,8vw,116px)/.9 Orbitron;margin:28px 0 16px;letter-spacing:-.06em}.hero h1 span{background:linear-gradient(135deg,#b36cff,#6946ff 55%,#2ab4ff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-slogan{font:700 clamp(20px,2.3vw,29px) Orbitron;letter-spacing:.12em;color:#d9c9ff;margin:0 0 20px}.hero-text{max-width:680px;color:#b1b2c1;font-size:18px;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.quick-socials{display:flex;flex-wrap:wrap;gap:16px;margin-top:25px;font-size:13px;color:#8f91a5}.quick-socials a:hover{color:#fff}.hero-orbit{display:grid;place-items:center}.logo-orbit-card{position:relative;width:min(480px,90vw);aspect-ratio:1;border-radius:38%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(137,55,255,.22),rgba(8,8,15,.6) 55%,rgba(5,6,10,.3));border:1px solid rgba(167,93,255,.18);box-shadow:inset 0 0 80px rgba(89,42,199,.1),0 30px 90px rgba(0,0,0,.5);transition:transform .15s ease}.logo-orbit-card img{width:72%;filter:drop-shadow(0 0 28px rgba(157,69,255,.72));position:relative;z-index:3}.ring{position:absolute;inset:9%;border:1px solid rgba(129,102,255,.25);border-radius:50%;animation:spin 14s linear infinite}.ring-two{inset:18%;border-style:dashed;animation-direction:reverse;animation-duration:20s}.orbit-caption{position:absolute;bottom:8%;font:600 10px Orbitron;letter-spacing:.22em;color:#786f91}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.status-card{border-radius:22px;padding:22px;min-height:170px}.mini-label,.eyebrow{font:700 11px Orbitron;letter-spacing:.18em;color:#a688ff}.status-card h3{font:700 21px Orbitron;margin:14px 0 10px}.status-card p{color:var(--muted);line-height:1.55;margin:0}.text-link{display:inline-block;margin-top:15px;color:#bfa7ff;font-weight:700}.countdown{font:700 18px Orbitron;color:#fff;margin-top:15px}.section-head{display:grid;grid-template-columns:1fr minmax(280px,480px);gap:40px;align-items:end;margin-bottom:30px}.section-head h2,.community-panel h2,.about-card h2,.admin-preview h2{font:800 clamp(34px,5vw,60px)/1.02 Orbitron;margin:9px 0 0;letter-spacing:-.035em}.section-head>p{color:var(--muted);line-height:1.7;margin:0}.platform-grid,.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.platform-card{padding:24px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:#0c0e17;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;transition:.25s}.platform-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;filter:blur(55px);opacity:.18;top:-100px;right:-50px}.platform-card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.2)}.platform-card b{font:700 25px Orbitron}.platform-card span{color:var(--muted)}.platform-card i{font-style:normal;margin-top:20px;color:#d6d6df}.twitch:before{background:#9146ff}.kick:before{background:#53fc18}.youtube:before{background:#ff0033}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.empty-state{grid-column:1/-1;border:1px dashed rgba(166,113,255,.25);background:rgba(255,255,255,.025);border-radius:24px;padding:46px 28px;text-align:center}.empty-state h3{font:700 22px Orbitron;margin:12px 0 8px}.empty-state p{color:var(--muted);max-width:620px;margin:0 auto 18px;line-height:1.6}.empty-icon{font-size:30px;color:#a77bff}.schedule-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.schedule-item,.news-card,.video-card,.sponsor-card,.gallery-card{border:1px solid var(--line);background:var(--panel);border-radius:22px;padding:22px}.community-panel{border-radius:30px;padding:34px;display:grid;grid-template-columns:1fr .95fr;gap:32px;align-items:center}.community-panel>div>p{color:var(--muted);line-height:1.7}.community-actions{display:grid;gap:12px}.mini-card{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px;background:rgba(255,255,255,.035);text-align:left}.mini-card b{font:700 15px Orbitron}.mini-card p{color:var(--muted);margin:8px 0 0}.interactive{cursor:pointer}.support-card{padding:24px;border:1px solid rgba(255,255,255,.08);border-radius:23px;background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.018));min-height:190px}.support-card span{font:700 11px Orbitron;color:#987cff}.support-card h3{font:700 22px Orbitron}.support-card p{color:var(--muted);line-height:1.6}.support-card.featured{border-color:rgba(161,87,255,.4);box-shadow:0 16px 46px rgba(83,42,170,.14)}.benefits{margin-top:14px;border-radius:24px;padding:26px}.benefits h3{font:700 22px Orbitron}.benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.benefit-grid>div{padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:16px}.benefit-grid p{color:var(--muted);line-height:1.55}.benefit-grid code{color:#c9b7ff}.about-card{border-radius:30px;padding:36px;display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.about-card p{color:var(--muted);line-height:1.8;font-size:17px}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.form-card,.contact-side{border-radius:24px;padding:24px}.form-card{display:grid;gap:15px}.form-card label,.modal-card label{display:grid;gap:8px;color:#d7d7df;font-weight:600}.form-card input,.form-card textarea,.form-card select,.modal-card input,.modal-card textarea{width:100%;padding:14px;border-radius:13px;border:1px solid rgba(255,255,255,.1);background:#080a12;color:#fff;outline:none}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.modal-card input:focus,.modal-card textarea:focus{border-color:#8759ff;box-shadow:0 0 0 3px rgba(135,89,255,.1)}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important;font-weight:400!important;color:var(--muted)!important}.check input{width:auto!important;margin-top:3px}.contact-side{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-side h3{font:800 35px Orbitron;margin:10px 0}.contact-side p{color:var(--muted);line-height:1.7}.form-status{min-height:20px;color:#bca9ff}.admin-preview{border-radius:30px;padding:34px}.admin-preview>div:first-child p{color:var(--muted);line-height:1.7}.admin-modules{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.admin-modules span{padding:9px 12px;border-radius:999px;background:rgba(146,86,255,.1);border:1px solid rgba(159,97,255,.22);font-size:12px}.legal-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.legal-tab{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);padding:10px 14px;border-radius:999px;cursor:pointer}.legal-tab.active{background:rgba(136,78,255,.16);border-color:rgba(154,98,255,.45)}.legal-content{border-radius:24px;padding:28px}.legal-content h3{font:700 24px Orbitron}.legal-content p,.legal-content li{color:var(--muted);line-height:1.75}.footer{border-top:1px solid rgba(255,255,255,.07);padding:38px 0 70px;display:grid;gap:24px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:46px;height:46px;object-fit:contain}.footer-brand b{font:700 18px Orbitron}.footer-brand span{display:block;color:#8d8e9f;font-size:11px;letter-spacing:.12em;margin-top:4px}.footer-links{display:flex;flex-wrap:wrap;gap:18px;color:#bfc0cb}.footer-links button{background:none;border:0;color:inherit;padding:0;cursor:pointer}.footer>p{color:#777988;font-size:12px;max-width:900px}
.dusy-fab{position:fixed;right:22px;bottom:22px;z-index:70;border:1px solid rgba(180,126,255,.4);background:linear-gradient(145deg,rgba(18,14,33,.96),rgba(11,12,22,.96));box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 28px rgba(129,66,255,.18);border-radius:999px;padding:10px 15px 10px 10px;display:flex;align-items:center;gap:8px;cursor:pointer}.dusy-fab span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#9a4fff,#247cff)}.dusy-panel{position:fixed;right:20px;bottom:78px;width:min(390px,calc(100vw - 24px));height:min(570px,calc(100vh - 120px));z-index:80;border:1px solid rgba(170,110,255,.32);border-radius:25px;background:rgba(8,9,16,.96);box-shadow:0 30px 90px rgba(0,0,0,.6);backdrop-filter:blur(18px);display:flex;flex-direction:column;transform:translateY(20px) scale(.96);opacity:0;pointer-events:none;transition:.25s}.dusy-panel.open{transform:none;opacity:1;pointer-events:auto}.dusy-head{display:flex;justify-content:space-between;padding:16px;border-bottom:1px solid rgba(255,255,255,.07)}.dusy-head>div{display:flex;gap:10px;align-items:center}.dusy-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#8d4cff,#1f88ff)}.dusy-head small{display:block;color:#898b9a;margin-top:2px}.dusy-messages{flex:1;overflow:auto;padding:15px;display:flex;flex-direction:column;gap:10px}.bot-msg,.user-msg{max-width:85%;padding:11px 13px;border-radius:16px;line-height:1.45;font-size:14px}.bot-msg{align-self:flex-start;background:#141426;border:1px solid rgba(160,103,255,.17)}.user-msg{align-self:flex-end;background:linear-gradient(135deg,#7f42f0,#3945e8)}.quick-chips{padding:0 12px 10px;display:flex;gap:6px;overflow:auto}.quick-chips button{white-space:nowrap;border:1px solid rgba(255,255,255,.09);background:#0e101a;color:#c8c8d2;border-radius:999px;padding:8px 10px;cursor:pointer;font-size:12px}.dusy-form{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.07)}.dusy-form input{flex:1;min-width:0;border:1px solid rgba(255,255,255,.09);background:#0a0c14;color:#fff;border-radius:12px;padding:11px}.dusy-form button{border:0;border-radius:12px;background:#7547ee;color:#fff;font-weight:700;padding:0 14px}.modal{position:fixed;inset:0;z-index:100;background:rgba(2,2,6,.76);display:grid;place-items:center;padding:16px;opacity:0;pointer-events:none;transition:.2s}.modal.open{opacity:1;pointer-events:auto}.modal-card{position:relative;width:min(520px,100%);border-radius:24px;padding:25px;max-height:90vh;overflow:auto}.modal-close{position:absolute;right:14px;top:14px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.05);color:#fff;font-size:21px;cursor:pointer}.modal-card h3{font:700 25px Orbitron}.modal-card form{display:grid;gap:14px}.cookie-banner{position:fixed;left:50%;bottom:18px;z-index:95;transform:translateX(-50%);width:min(920px,calc(100% - 24px));border-radius:22px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.cookie-banner p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap}.cookie-row{display:flex!important;justify-content:space-between;align-items:center!important;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07)}.cookie-row span small{display:block;color:var(--muted);margin-top:4px}.cookie-row input{width:auto!important}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.tilt-card{transform-style:preserve-3d}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(157,80,255,0)}100%{box-shadow:0 0 0 0 rgba(157,80,255,0)}}
@media(max-width:900px){.desktop-nav{display:none}.menu-btn{display:grid}.hero{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-copy{text-align:center}.hero-text{margin-inline:auto}.hero-actions,.quick-socials{justify-content:center}.hero-orbit{margin-top:12px}.status-grid,.platform-grid,.support-grid,.content-grid{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:14px}.community-panel,.about-card,.contact-layout{grid-template-columns:1fr}.benefit-grid{grid-template-columns:1fr}.schedule-grid{grid-template-columns:1fr}.menu-grid{grid-template-columns:1fr}.hide-mobile{display:none}.section-pad{padding:70px 0}.cookie-banner{grid-template-columns:1fr}.cookie-actions{justify-content:flex-end}}
@media(max-width:560px){.shell{width:min(100% - 20px,var(--max))}.topbar{top:8px;margin-top:8px}.hero h1{font-size:clamp(52px,17vw,78px)}.hero-slogan{font-size:15px}.hero-text{font-size:15px}.logo-orbit-card{width:90vw}.menu-window{padding:16px;border-radius:24px}.menu-grid a{padding:15px}.section-pad{padding:58px 0}.section-head h2,.community-panel h2,.about-card h2,.admin-preview h2{font-size:34px}.community-panel,.admin-preview,.about-card{padding:24px}.dusy-fab b{display:none}.dusy-fab{padding-right:10px}.cookie-actions .btn{flex:1;min-width:120px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.tilt-card{transform:none!important}}

/* Dusy action links */
.dusy-action{display:inline-flex;align-items:center;justify-content:center;margin-top:8px;padding:11px 16px;border-radius:14px;background:linear-gradient(135deg,#8b3dff,#267dff);color:#fff!important;text-decoration:none!important;font-weight:800;box-shadow:0 8px 24px rgba(126,74,255,.25);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.dusy-action:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(126,74,255,.38);filter:brightness(1.06)}
.dusy-action:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* V4: il banner cookie deve sparire davvero dopo una scelta. */
.cookie-banner[hidden], .cookie-banner.dismissed{display:none !important;}

/* DUSONDTV FINAL — 3D / layered motion */
.menu-window{overflow:hidden;isolation:isolate;transform-style:preserve-3d;will-change:transform}.menu-window>*:not(.menu-ambient):not(.menu-depth-grid){position:relative;z-index:3}.menu-ambient{position:absolute;width:380px;height:380px;border-radius:50%;filter:blur(75px);opacity:.22;pointer-events:none;z-index:0;animation:menuFloat 8s ease-in-out infinite alternate}.menu-ambient-a{left:-120px;top:-150px;background:#7d32ff}.menu-ambient-b{right:-110px;bottom:-170px;background:#167dff;animation-delay:-3s}.menu-depth-grid{position:absolute;inset:-25%;z-index:1;pointer-events:none;opacity:.14;background-image:linear-gradient(rgba(150,90,255,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(67,122,255,.25) 1px,transparent 1px);background-size:42px 42px;transform:perspective(700px) rotateX(67deg) translateY(32%);transform-origin:center bottom;mask-image:linear-gradient(to top,#000,transparent 72%)}.menu-overlay.open .menu-grid a{animation:menuCardIn .52s cubic-bezier(.2,.82,.2,1) both}.menu-overlay.open .menu-grid a:nth-child(1){animation-delay:.04s}.menu-overlay.open .menu-grid a:nth-child(2){animation-delay:.08s}.menu-overlay.open .menu-grid a:nth-child(3){animation-delay:.12s}.menu-overlay.open .menu-grid a:nth-child(4){animation-delay:.16s}.menu-overlay.open .menu-grid a:nth-child(5){animation-delay:.20s}.menu-overlay.open .menu-grid a:nth-child(6){animation-delay:.24s}.menu-overlay.open .menu-grid a:nth-child(7){animation-delay:.28s}.menu-overlay.open .menu-grid a:nth-child(8){animation-delay:.32s}.menu-overlay.open .menu-grid a:nth-child(9){animation-delay:.36s}.menu-overlay.open .menu-grid a:nth-child(10){animation-delay:.40s}.menu-grid a::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(155,92,255,.19),transparent 42%);opacity:0;transition:.2s;pointer-events:none}.menu-grid a:hover::after{opacity:1}.menu-grid a b,.menu-grid a small,.menu-grid a>span{transform:translateZ(22px)}.dusy-panel{overflow:hidden}.dusy-panel::before{content:"";position:absolute;inset:0 0 auto;height:120px;background:radial-gradient(circle at 22% 0,rgba(143,74,255,.18),transparent 60%);pointer-events:none}.dusy-head{position:relative;z-index:2;background:rgba(8,9,16,.72);backdrop-filter:blur(18px)}.dusy-mark{font:900 17px Orbitron;color:#fff;text-shadow:0 0 13px #a35cff;transform:skew(-6deg);display:grid;place-items:center}.dusy-avatar{box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 0 25px rgba(135,70,255,.35)}.dusy-avatar .dusy-mark{font-size:20px}.dusy-head em{font:700 9px Orbitron;font-style:normal;color:#c9a8ff;border:1px solid rgba(178,118,255,.35);padding:3px 5px;border-radius:999px;margin-left:5px;vertical-align:2px}.dusy-online{width:9px;height:9px;border-radius:50%;background:#3fe68e;box-shadow:0 0 10px #3fe68e;margin-left:-4px;align-self:flex-end;margin-bottom:5px}.bot-msg{position:relative}.bot-msg b{color:#fff}.dusy-messages{scroll-behavior:smooth}.dusy-action{width:100%;box-sizing:border-box}.dusy-subtle{font-size:11px;color:#86899a;margin-top:7px;display:block}.dusy-typing{display:flex;align-items:center;gap:5px;width:max-content}.dusy-typing i{width:6px;height:6px;background:#9c71ff;border-radius:50%;animation:typing 1s infinite ease-in-out}.dusy-typing i:nth-child(2){animation-delay:.12s}.dusy-typing i:nth-child(3){animation-delay:.24s}.cookie-banner{animation:cookieIn .45s cubic-bezier(.2,.8,.2,1)}.cookie-banner.removing{animation:cookieOut .28s ease forwards}@keyframes menuFloat{to{transform:translate3d(35px,22px,0) scale(1.08)}}@keyframes menuCardIn{from{opacity:0;transform:perspective(800px) translateY(28px) rotateX(-10deg) scale(.96)}to{opacity:1;transform:perspective(800px) translateY(0) rotateX(0) scale(1)}}@keyframes typing{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-4px);opacity:1}}@keyframes cookieIn{from{opacity:0;transform:translate(-50%,25px) scale(.98)}to{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes cookieOut{to{opacity:0;transform:translate(-50%,30px) scale(.97)}}@media(prefers-reduced-motion:reduce){.menu-ambient,.menu-overlay.open .menu-grid a,.cookie-banner,.dusy-typing i{animation:none!important}.menu-window,.menu-grid a,.dusy-panel{transition:none!important}}


/* CHI SONO + SETUP — DusondTV */
.about-profile{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:34px;padding:34px;overflow:hidden;border-radius:30px}
.about-profile::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-170px;top:-190px;background:radial-gradient(circle,rgba(37,191,255,.18),rgba(119,62,255,.09) 42%,transparent 70%);pointer-events:none}
.about-profile-copy{position:relative;z-index:2}
.about-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;border:1px solid rgba(80,210,255,.24);background:rgba(29,167,216,.08);color:#aeeaff;font:700 11px Orbitron;letter-spacing:.12em}
.about-profile h3{font:800 clamp(28px,4vw,48px)/1.05 Orbitron;margin:18px 0 22px;letter-spacing:-.035em}
.about-profile h3 span{background:linear-gradient(135deg,#ba79ff,#43d6ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.about-profile p{color:#c4c6d2;line-height:1.78;font-size:16px;max-width:790px}
.about-pill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:26px 0}
.about-pill-grid span{padding:13px 14px;border-radius:16px;border:1px solid rgba(101,199,255,.14);background:linear-gradient(145deg,rgba(61,206,255,.055),rgba(134,70,255,.045));font-weight:700;color:#edf8ff}
.about-quote{display:flex;flex-direction:column;gap:5px;padding:18px;border-left:3px solid #56d7ff;background:linear-gradient(90deg,rgba(48,191,245,.09),transparent);border-radius:0 16px 16px 0}
.about-quote b{font:700 16px Orbitron}.about-quote span{color:#bfeeff}
.about-profile-mark{position:relative;z-index:2;display:flex;min-height:310px;align-items:center;justify-content:center;flex-direction:column;gap:14px}
.about-profile-mark img{width:min(300px,80%);filter:drop-shadow(0 0 30px rgba(147,69,255,.4)) drop-shadow(0 0 54px rgba(47,189,255,.12))}
.about-profile-mark span{font:700 10px Orbitron;letter-spacing:.18em;color:#8edfff}
.setup-wrap{margin-top:54px}.setup-head{margin-bottom:20px}
.setup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.setup-card{position:relative;display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:20px;min-height:118px;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.setup-card::after{content:"";position:absolute;inset:auto -25% -70% 25%;height:100%;background:radial-gradient(circle,rgba(62,207,255,.09),transparent 66%);pointer-events:none}
.setup-card:hover{transform:translateY(-4px);border-color:rgba(79,209,255,.3);box-shadow:0 22px 48px rgba(0,0,0,.35),0 0 34px rgba(62,133,255,.07)}
.setup-card.setup-featured{border-color:rgba(100,203,255,.28);background:linear-gradient(145deg,rgba(21,35,53,.82),rgba(20,13,40,.82))}
.setup-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,rgba(119,68,255,.25),rgba(39,189,255,.17));border:1px solid rgba(139,198,255,.17);font-size:20px}
.setup-card small{display:block;color:#77d8ff;font:700 9px Orbitron;letter-spacing:.13em;margin:2px 0 7px}
.setup-card b{display:block;font:700 14px/1.35 Orbitron;color:#f8f8ff}
.setup-card p{margin:7px 0 0;color:#9499a9;font-size:12px;line-height:1.5}
@media(max-width:980px){.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-profile{grid-template-columns:1fr}.about-profile-mark{min-height:230px}.about-profile-mark img{width:min(240px,62%)}}
@media(max-width:600px){.about-profile{padding:22px}.about-pill-grid,.setup-grid{grid-template-columns:1fr}.about-profile h3{font-size:30px}.setup-card{min-height:auto}}

.admin-invite-notice{margin:18px auto;padding:14px 16px;max-width:760px;border:1px solid rgba(92,205,255,.2);border-radius:16px;background:rgba(18,26,43,.78);display:flex;flex-direction:column;gap:5px}
.admin-invite-notice strong{color:#eaf8ff}.admin-invite-notice span{color:#9da8b8;font-size:13px;line-height:1.5}

/* FINAL: Dusy avatar + robust cookie visibility */
.cookie-banner[hidden]{display:none!important}
.dusy-fab-img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid rgba(117,214,255,.35);box-shadow:0 0 18px rgba(100,93,255,.35)}
.dusy-avatar{overflow:hidden!important;padding:0!important;background:#0a0b12!important}
.dusy-avatar img{width:100%;height:100%;object-fit:cover;display:block}


/* DUSY — rifinitura presentazione */
.dusy-panel{overflow:hidden}
.dusy-messages{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0;
  scrollbar-width:thin;
  scrollbar-color:rgba(126,82,238,.45) transparent;
}
.dusy-messages::-webkit-scrollbar{width:7px}
.dusy-messages::-webkit-scrollbar-track{background:transparent}
.dusy-messages::-webkit-scrollbar-thumb{background:rgba(126,82,238,.45);border-radius:999px}
.quick-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  gap:7px!important;
  padding:4px 12px 10px!important;
  max-width:100%;
}
.quick-chips button{
  white-space:normal!important;
  flex:0 1 auto;
  line-height:1.15;
  min-height:32px;
}
.bot-msg,.user-msg{overflow-wrap:anywhere;word-break:normal}
.dusy-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:8px;
  margin-right:5px;
  text-decoration:none;
}
@media(max-width:520px){
  .dusy-panel{right:8px;bottom:72px;width:calc(100vw - 16px);height:min(650px,calc(100vh - 90px));border-radius:20px}
  .bot-msg,.user-msg{max-width:92%}
  .quick-chips button{font-size:11px;padding:7px 9px}
}


/* Rifinitura emoji / simboli Dusy */
.dusy-panel,
.dusy-panel button,
.dusy-panel input,
.dusy-panel .bot-msg,
.dusy-panel .user-msg,
.dusy-action{
  font-family: Inter, "Segoe UI", "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", system-ui, sans-serif;
}
.dusy-action{
  gap:6px;
}

.dusy-messages{scrollbar-gutter:stable}
.dusy-messages::-webkit-scrollbar-thumb:hover{background:rgba(126,82,238,.68)}

/* Nasconde solo la scrollbar della pagina, mantenendo lo scorrimento */
html { scrollbar-width: none; -ms-overflow-style: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { width: 0; height: 0; display: none; }


/* RELEASE PUBBLICAZIONE — mobile e metriche reali */
.real-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.real-stat{padding:20px;border-radius:20px;min-height:125px}
.real-stat small{display:block;font:700 9px Orbitron;letter-spacing:.12em;color:#80dfff}
.real-stat b{display:block;font:800 clamp(25px,4vw,38px) Orbitron;margin:10px 0 7px;color:#fff}
.real-stat span{display:block;color:#8f96a8;font-size:12px;line-height:1.45}
.setup-icon{font:800 9px/1 Orbitron!important;letter-spacing:.04em;color:#d9f5ff}
@media(max-width:900px){.real-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
  html,body{overflow-x:hidden}
  .shell{width:min(100% - 22px,1180px)}
  .topbar{width:calc(100% - 16px);padding:10px 12px}
  .hero{padding-top:124px}
  .hero-copy h1{font-size:clamp(42px,15vw,68px)}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn{width:100%;justify-content:center}
  .status-grid,.platform-grid,.content-grid,.schedule-grid,.support-grid,.community-grid{grid-template-columns:1fr!important}
  .real-stats-grid{grid-template-columns:1fr 1fr;gap:9px}
  .real-stat{padding:15px;min-height:110px}
  .menu-window{width:calc(100% - 14px);max-height:calc(100dvh - 18px);overflow-y:auto}
  .menu-grid{grid-template-columns:1fr!important}
  .menu-grid a{min-height:74px}
  .dusy-fab{right:10px;bottom:12px}
  .cookie-banner{width:calc(100% - 14px)!important;bottom:7px!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .cookie-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:7px}
  .cookie-actions .btn,.cookie-actions button{width:100%}
  .legal-shell{padding:15px}
  .legal-tabs{display:flex;overflow-x:auto;gap:7px}
  .legal-tab{white-space:nowrap}
  .about-profile-mark{display:none}
  .footer-inner{display:grid;gap:14px}
  .footer-links{display:flex;flex-wrap:wrap}
}


/* FIX FINALE: Control Deck scorrevole su mobile/touch */
.menu-overlay{align-items:center;overflow:hidden}
.menu-window{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
@media(max-width:640px){
  .menu-overlay{display:block;padding:9px;overflow:hidden}
  .menu-window{width:100%;height:calc(100dvh - 18px);max-height:none;margin:0;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;touch-action:pan-y}
  .menu-head{position:sticky;top:-1px;z-index:5;padding:8px 0 12px;background:linear-gradient(180deg,rgba(19,15,36,.99) 75%,rgba(19,15,36,0))}
  .menu-grid{padding-bottom:28px}
}


/* === MOBILE LEGAL + FLOATING UI POLISH 24-08-2026 === */
@media (max-width: 700px) {
  html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  /* Legal area full width and readable */
  .legal-shell,
  .legal-section,
  .legal-card,
  .legal-content,
  .privacy-section,
  .cookie-policy,
  .terms-section {
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  .legal-shell p,
  .legal-shell li,
  .legal-section p,
  .legal-section li,
  .legal-card p,
  .legal-card li,
  .legal-content p,
  .legal-content li {
    font-size: 16px !important;
    line-height: 1.7 !important;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .legal-shell h2,
  .legal-section h2,
  .legal-card h2,
  .legal-content h2 {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.15 !important;
  }

  .legal-tabs {
    width: 100% !important;
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  .legal-tabs::-webkit-scrollbar { display: none; }

  .legal-tab,
  .legal-tabs button,
  .legal-tabs a {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  /* Remove decorative side columns/rails on narrow screens */
  .legal-shell::before,
  .legal-shell::after,
  .legal-card::before,
  .legal-card::after,
  .privacy-section::before,
  .privacy-section::after {
    display: none !important;
  }

  /* Floating helpers: keep away from text */
  .dusy-fab {
    right: 10px !important;
    bottom: 12px !important;
    transform: scale(.92);
    transform-origin: bottom right;
  }

  .floating-tools,
  .quick-tools,
  .accessibility-tools {
    right: 8px !important;
    top: auto !important;
    bottom: 88px !important;
  }

  /* Control deck / modal should scroll on touch */
  .menu-window,
  .control-deck,
  .control-deck-panel,
  .menu-panel {
    width: calc(100% - 14px) !important;
    max-width: none !important;
    max-height: calc(100dvh - 14px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .menu-grid,
  .control-deck-grid {
    grid-template-columns: 1fr !important;
  }
}
