#slammy-dock{position:fixed;left:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:240;font:14px/1.45 system-ui,sans-serif;color:#171717}#slammy-dock *{box-sizing:border-box}#slammy-dock [hidden]{display:none!important}#slammy-dock button,#slammy-dock input{font:inherit}#slammy-dock button{cursor:pointer;min-height:44px;border:1px solid #ccc;border-radius:12px;background:#fff;color:#171717;padding:10px 14px;text-align:left}#slammy-dock button:focus-visible,#slammy-dock input:focus-visible{outline:3px solid #e30613;outline-offset:2px}#slammy-launch{display:flex;align-items:center;gap:9px;background:#171717!important;color:#fff!important;border:2px solid #efc000!important;border-radius:22px!important;padding:3px 15px 3px 4px!important;box-shadow:0 5px 20px #0003}#slammy-launch .slammy-sprite{width:58px;height:58px;background:#fff;border-radius:16px;overflow:hidden}#slammy-unread{background:#e30613;color:white;padding:2px 7px;border-radius:20px;font-size:12px}#slammy-panel{position:absolute;bottom:82px;left:0;width:min(420px,calc(100vw - 36px));max-height:min(700px,calc(100dvh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid #bbb;border-radius:20px;box-shadow:0 12px 55px #0003;overflow:hidden}#slammy-panel header{display:flex;align-items:center;gap:10px;background:#efc000;padding:12px 16px;border-bottom:3px solid #171717}#slammy-panel header strong{font-size:20px}#slammy-close{margin-left:auto}#slammy-body{overflow:auto;padding:18px;overscroll-behavior:contain}#slammy-body h2{font-size:23px;line-height:1.2;margin:0 0 12px}#slammy-body p{margin:8px 0 15px}#slammy-body .slammy-sprite{width:135px;height:135px;margin:0 auto 10px}#slammy-choices{display:grid;gap:8px}#slammy-choices button:hover{border-color:#171717;background:#fff9cf}#slammy-answer{white-space:pre-wrap}#slammy-compose{display:flex;gap:6px;padding:12px;border-top:1px solid #ddd}#slammy-input{min-width:0;width:100%;border:1px solid #aaa;border-radius:10px;padding:10px}#slammy-compose button{background:#171717;color:white}#slammy-dock small{display:block;color:inherit;font-size:12px}#slammy-dock .slammy-secondary{color:#555;font-size:12px;margin-top:16px}body.slammy-ready #chatfab,body.slammy-ready .lab-cw-fab{display:none!important}body.slammy-welcome ~ #slammy-dock #slammy-panel{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(580px,calc(100vw - 28px));max-height:calc(100dvh - 32px)}body.slammy-welcome ~ #slammy-dock:before{content:"";position:fixed;inset:0;background:#0007;z-index:-1}#slammy-dock button:disabled{opacity:.6;cursor:wait}@media(max-width:500px){#slammy-dock{left:12px;bottom:max(12px,env(safe-area-inset-bottom))}#slammy-panel{width:calc(100vw - 24px)}#slammy-launch .slammy-sprite{width:48px;height:48px}}

#slammy-hub{position:fixed;inset:0;z-index:245;background:#f7f7f7;color:#171717;overflow:auto;font:15px/1.5 system-ui,sans-serif}#slammy-hub header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:20px;background:#171717;color:#efc000}#slammy-hub h1{margin:0;font-size:25px}#slammy-hub nav{display:flex;gap:8px;flex-wrap:wrap;padding:18px;background:#efc000}#slammy-hub button{min-height:44px;padding:10px 15px;border:1px solid #aaa;border-radius:10px;cursor:pointer;background:#fff;color:#171717;font:inherit}#slammy-hub main{max-width:1100px;margin:auto;padding:24px}#slammy-hub article{border:1px solid #ddd;border-radius:12px;background:#fff;padding:14px;margin-bottom:12px}#slammy-hub article p{margin:3px 0}#slammy-hub button:focus-visible{outline:3px solid #e30613;outline-offset:2px}

#slammy-hub .hub-mascot{width:150px;height:150px;float:right;margin:0 0 20px 20px}@media(max-width:500px){#slammy-hub .hub-mascot{float:none;margin:0 auto 16px}}

/* Home v9 is a root iframe at the maximum stacking level. The single entry follows it. */
#slammy-dock,#slammy-hub{z-index:2147483647}body.slammy-ready #segnalaFab{display:none!important}

#slammy-launch{width:68px;min-height:68px;padding:4px!important;position:relative;border-radius:50%!important;justify-content:center}#slammy-launch>strong{display:none}#slammy-launch .slammy-sprite{width:54px;height:54px;border-radius:50%}#slammy-unread{position:absolute;right:-4px;top:-4px;border:2px solid white}#slammy-launch:focus-visible{outline:3px solid #e30613;outline-offset:3px}

/* The mascot is the sole external launcher, with expression driven by actual UI state. */
#slammy-launch{width:94px;min-height:108px;padding:0!important;flex-direction:column;gap:0;background:transparent!important;border:0!important;box-shadow:none;border-radius:18px!important;filter:drop-shadow(0 4px 4px #0002)}
#slammy-launch .slammy-sprite{width:94px;height:94px;background:transparent!important;border-radius:0;overflow:visible}
#slammy-launch>strong{display:block;font-size:11px;line-height:18px;color:#fff;background:#171717;padding:0 10px;border-radius:20px;margin-top:-4px;letter-spacing:.3px}
#slammy-unread{top:4px;right:2px;filter:none}
#slammy-panel{bottom:124px;border:1px solid #ded9cf;border-radius:24px;box-shadow:0 20px 70px #0003}
#slammy-panel header{padding:10px 14px;background:linear-gradient(125deg,#ffe45c,#efc000);gap:12px;border-bottom:1px solid #e4bf00}
#slammy-panel header .slammy-header-portrait{width:56px;height:56px;background:#fff9;border-radius:16px;overflow:hidden}
#slammy-panel header strong{font-size:18px;letter-spacing:.2px}#slammy-mood{font-size:11px!important;margin-top:2px;color:#403500!important}
#slammy-close{font-size:12px!important;border:0!important;background:#fff9!important;border-radius:20px!important;min-height:36px!important}
#slammy-body{background:linear-gradient(#fffdf5,#fff 140px);padding:20px}#slammy-body h2{font-size:23px;letter-spacing:-.5px}#slammy-body p{color:#555;line-height:1.6}
#slammy-choices{gap:9px}#slammy-choices button{border:1px solid #e7e3da;border-radius:14px;padding:13px 15px;font-weight:600;box-shadow:0 2px 5px #00000005}#slammy-choices button:first-child{background:#fff7cf;border-color:#e7cf74}
#slammy-compose{background:#fffdf7;padding:13px}#slammy-input{border-color:#ddd3bc;border-radius:14px}#slammy-compose button{border-radius:14px;font-weight:700}
#slammy-dock[data-mood='working'] .slammy-frame,#slammy-dock[data-mood='working'] .slammy-frame::after{animation-iteration-count:infinite}
@media(max-width:500px){#slammy-launch{width:78px;min-height:92px}#slammy-launch .slammy-sprite{width:78px;height:78px}#slammy-panel{bottom:108px;max-height:calc(100dvh - 136px)}#slammy-body{padding:16px}#slammy-body h2{font-size:21px}}

#slammy-dock{left:auto;right:18px}#slammy-panel{left:auto;right:0}body.slammy-welcome ~ #slammy-dock #slammy-panel{right:auto}#slammy-alert{position:absolute;right:100%;bottom:28px;min-width:150px;max-width:190px;background:#e30613;color:#fff;font-size:12px;font-weight:700;line-height:1.4;padding:10px 12px;border-radius:14px 14px 2px 14px;margin-right:5px;box-shadow:0 5px 18px #0002;filter:none;text-align:left}#slammy-idea{width:100%;padding:14px;border:1px solid #d8ccad;border-radius:12px;resize:vertical;font:inherit;margin:5px 0 12px}#slammy-body>button{margin:5px 8px 0 0}@media(max-width:500px){#slammy-dock{left:auto;right:12px}#slammy-alert{min-width:140px;max-width:165px;font-size:11px}}


/* dg-slammy-pedana-2026-09-22: la mascotte non è più «appesa in aria». Poggia su una pedana attaccata al bordo,
   con la sua ombra a terra e il nome sulla pedana (prima copriva le scarpe). La forma del personaggio non cambia. */
#slammy-dock{bottom:0!important;right:20px!important;transition:opacity .25s ease,transform .25s ease}
#slammy-launch{width:120px;min-height:132px!important;padding:0 0 30px!important;filter:none;justify-content:flex-end}
#slammy-launch::before{content:"";position:absolute;left:6px;right:6px;bottom:0;height:34px;background:#171717;border-radius:60px 60px 0 0}
#slammy-launch::after{content:"";position:absolute;left:30px;right:30px;bottom:26px;height:10px;border-radius:50%;background:radial-gradient(closest-side,#00000059,#0000);pointer-events:none}
#slammy-launch .slammy-sprite{width:92px;height:92px;position:relative;z-index:1;margin-bottom:-2px;transform-origin:50% 100%;animation:slammy-respiro 4.6s ease-in-out infinite!important/* dg-slammy-respiro-2026-09-22 */}
#slammy-launch>strong{display:block;position:absolute;left:0;right:0;bottom:7px;z-index:2;margin:0;padding:0;background:transparent;color:#ffd000;text-align:center;font:800 10.5px/1 system-ui,sans-serif;letter-spacing:.06em}
#slammy-launch:hover .slammy-sprite,#slammy-launch:focus-visible .slammy-sprite{animation:slammy-saltello .6s ease-out!important}
@keyframes slammy-respiro{0%,100%{transform:scale(1,1)}50%{transform:scale(1.012,.988)}}
@keyframes slammy-saltello{0%{transform:translateY(0)}40%{transform:translateY(-8px)}100%{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#slammy-launch .slammy-sprite{animation:none!important}}
#slammy-unread{top:10px!important;right:14px!important}
/* l'avviso diventa un fumetto bianco che esce da lei e se ne va da solo */
#slammy-alert{background:#fff!important;color:#202328!important;border:1px solid #e4e6ea;border-radius:12px!important;box-shadow:0 8px 24px #0002;bottom:56px!important;margin-right:12px!important;font-weight:600!important;transition:opacity .3s ease}
#slammy-alert::after{content:"";position:absolute;right:-7px;bottom:16px;width:12px;height:12px;background:#fff;border-right:1px solid #e4e6ea;border-top:1px solid #e4e6ea;transform:rotate(45deg)}
#slammy-alert.slammy-alert-via{opacity:0;pointer-events:none}
#slammy-panel{bottom:140px}
@media(max-width:500px){#slammy-launch{width:104px;min-height:118px!important;padding-bottom:26px!important}#slammy-launch .slammy-sprite{width:80px;height:80px}#slammy-panel{bottom:124px}}
