/* MINKIARDS — Story Mode 3D · Roccaravindola (HUD, pannelli, joystick, minimappa) */
#screen-s3d{background:#05030f;overflow:hidden}
#screen-s3d .s3-root{position:absolute;inset:0;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;font-family:var(--font-b)}
.s3-cv{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:none}
.s3-blur .s3-cv{filter:blur(2.6px) saturate(1.2)}
.s3-vig{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,rgba(0,0,0,0) 55%,rgba(5,3,20,.55) 100%)}
.s3-night .s3-vig{background:radial-gradient(ellipse at center,rgba(0,0,0,0) 40%,rgba(3,2,16,.7) 100%)}
.s3-load{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:radial-gradient(800px 500px at 50% 30%,#2a1160,#07061a);font-family:var(--font-h);font-size:26px;letter-spacing:1px;color:var(--gold);z-index:30}
.s3-top{position:absolute;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));display:flex;gap:8px;align-items:stretch;z-index:8;pointer-events:none}
.s3-top>*{pointer-events:auto}
.s3-ib{flex:none;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:rgba(18,10,46,.78);backdrop-filter:blur(8px);color:#fff;font-size:20px;font-weight:900;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.4)}
.s3-ib:active{transform:scale(.94)}
.s3-obj{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:5px 12px;border-radius:16px;border:1px solid rgba(255,200,61,.55);background:linear-gradient(135deg,rgba(40,24,90,.86),rgba(18,10,46,.86));backdrop-filter:blur(8px);color:#fff;text-align:left;box-shadow:0 6px 22px rgba(0,0,0,.45),0 0 18px rgba(255,200,61,.15)}
.s3-obj .s3-arr{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#3b2300;font-style:normal;font-weight:900;font-size:18px;box-shadow:0 0 12px rgba(255,200,61,.6)}
.s3-obj span{flex:1;min-width:0;display:flex;flex-direction:column}
.s3-obj small{font-size:9px;letter-spacing:1.2px;color:var(--gold);font-weight:900}
.s3-obj b{font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s3-obj em{flex:none;font-style:normal;font-weight:900;font-size:13px;color:var(--cyan)}
.s3-chips{position:absolute;left:max(8px,env(safe-area-inset-left));top:calc(max(8px,env(safe-area-inset-top)) + 52px);display:flex;gap:5px;flex-wrap:wrap;max-width:calc(100% - 140px);z-index:7;pointer-events:none}
.s3-chips span{padding:3px 9px;border-radius:999px;background:rgba(14,8,36,.72);border:1px solid var(--line);font-size:11.5px;font-weight:800;backdrop-filter:blur(6px);white-space:nowrap}
.s3-mini{position:absolute;right:max(8px,env(safe-area-inset-right));top:calc(max(8px,env(safe-area-inset-top)) + 54px);width:112px;height:112px;border-radius:50%;z-index:7;box-shadow:0 6px 22px rgba(0,0,0,.5),0 0 0 2px rgba(10,6,30,.8);transition:width .25s,height .25s,top .25s,right .25s;cursor:pointer}
.bigmap .s3-mini{width:min(78vw,78vh,420px);height:min(78vw,78vh,420px);right:50%;top:50%;margin:calc(min(78vw,78vh,420px)/-2) calc(min(78vw,78vh,420px)/2) 0 0;z-index:12;border-radius:50%}
.s3-wanted{position:absolute;left:max(8px,env(safe-area-inset-left));top:calc(max(8px,env(safe-area-inset-top)) + 96px);display:none;flex-direction:column;gap:2px;padding:6px 11px;border-radius:12px;z-index:7;font-size:12px;border:1px solid #fbbf24;background:rgba(180,83,9,.92);box-shadow:0 4px 14px rgba(0,0,0,.45);max-width:190px}
.s3-wanted.on{display:flex}.s3-wanted.l2{background:rgba(153,27,27,.92);border-color:#f87171;animation:s3pulse 1s infinite}
.s3-wanted b{font-weight:900;letter-spacing:.6px}.s3-wanted small{font-size:10.5px;opacity:.9;font-weight:700}
.s3-dia{display:flex;gap:4px}.s3-dia i{width:11px;height:11px;transform:rotate(45deg);border:2px solid #fff;border-radius:2px;display:block}.s3-dia i.f{background:#fff}
@keyframes s3pulse{50%{box-shadow:0 0 0 4px rgba(248,113,113,.35)}}
.s3-badge{position:absolute;right:max(8px,env(safe-area-inset-right));top:calc(max(8px,env(safe-area-inset-top)) + 172px);display:none;padding:4px 10px;border-radius:999px;background:rgba(22,14,52,.85);border:1px solid var(--green);font-size:14px;z-index:7}
.s3-badge.on{display:block}.s3-badge b{font-size:12px;color:var(--green)}
.s3-hint{position:absolute;left:50%;bottom:calc(32% + 10px);transform:translateX(-50%);padding:7px 14px;border-radius:12px;background:rgba(8,4,26,.7);font-size:12.5px;font-weight:800;color:#e9e4ff;z-index:6;pointer-events:none;transition:opacity .8s;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis}
.s3-hint.off{opacity:0}
.s3-stam{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) + 12px);transform:translateX(-50%);width:130px;height:8px;border-radius:6px;background:rgba(0,0,0,.5);border:1px solid var(--line);z-index:6;opacity:0;transition:opacity .3s;overflow:hidden}
.s3-stam.on{opacity:1}.s3-stam i{display:block;height:100%;background:linear-gradient(90deg,#3dff9a,#27e1ff);border-radius:6px}
.s3-joy{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:calc(env(safe-area-inset-bottom) + 20px);width:118px;height:118px;border-radius:50%;background:radial-gradient(circle,rgba(160,140,255,.18),rgba(160,140,255,.06));border:2px solid rgba(190,170,255,.45);z-index:9;touch-action:none;display:none}
.s3-joyk{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7,#9b7bffcc);border:2px solid #fff8;box-shadow:0 4px 14px rgba(0,0,0,.5);pointer-events:none}
.s3-acts{position:absolute;right:max(10px,env(safe-area-inset-right));bottom:calc(env(safe-area-inset-bottom) + 22px);display:flex;flex-direction:column-reverse;gap:10px;z-index:9}
.s3-acts button{width:50px;height:50px;border-radius:16px;border:1px solid var(--line);background:rgba(18,10,46,.8);backdrop-filter:blur(8px);color:#fff;font-size:22px;font-weight:900;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.s3-acts button.on{background:linear-gradient(135deg,var(--violet),var(--pink));border-color:#fff}
.s3-acts button:active{transform:scale(.93)}
.s3-run{display:none}
@media (pointer:coarse),(max-width:760px){.s3-run{display:block}.s3-hint{bottom:calc(170px + env(safe-area-inset-bottom))}}
.s3-prompt{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) + 150px);transform:translate(-50%,16px);width:min(94vw,470px);z-index:10;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.s3-prompt.on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
@media (min-width:761px) and (pointer:fine){.s3-prompt{bottom:70px}.s3-hint{bottom:150px}}
.s3-pc{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:18px;background:rgba(3,4,18,.97);border:2px solid var(--c,#a78bfa);box-shadow:0 8px 28px rgba(0,0,0,.6),0 0 22px color-mix(in srgb,var(--c,#a78bfa) 40%,transparent)}
.s3-pc>i{flex:none;font-style:normal;font-size:30px;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--c,#a78bfa) 25%,#10082a)}
.s3-pc div{flex:1;min-width:0}.s3-pc b{display:block;font-size:15px;font-weight:900}.s3-pc small{display:block;font-size:11.5px;font-weight:700;color:var(--mut);line-height:1.3}
.s3-dlg{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);transform:translate(-50%,20px);width:min(96vw,640px);z-index:14;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;padding:14px 16px 12px;border-radius:20px;background:rgba(3,4,18,.97);border:1px solid var(--line);box-shadow:0 10px 36px rgba(0,0,0,.65)}
.s3-dlg.on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.s3-dn{display:inline-block;padding:3px 12px;border-radius:999px;background:var(--c,#a78bfa);color:#10062a;font-weight:900;font-size:13px;margin-bottom:8px;box-shadow:0 0 14px color-mix(in srgb,var(--c) 55%,transparent)}
.s3-dt{font-size:15.5px;font-weight:700;line-height:1.45;min-height:46px;margin-bottom:8px}
.s3-dnx{display:block;margin-left:auto}
.s3-b{position:absolute;left:0;top:0;max-width:200px;padding:6px 10px;border-radius:12px 12px 12px 3px;background:rgba(255,255,255,.97);color:#1a1030;font-weight:800;font-size:12px;line-height:1.3;border:2px solid var(--c,#a78bfa);opacity:0;transition:opacity .25s;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.4);will-change:transform}
.s3-b.on{opacity:1}.s3-bub{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}
.s3-ov{position:absolute;inset:0;z-index:20;pointer-events:none}
.s3-pn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(5,3,20,.62);backdrop-filter:blur(5px);pointer-events:auto;animation:s3in .22s}
@keyframes s3in{from{opacity:0}}
.s3-card,.s3-bo .s3-card{position:relative;width:min(500px,100%);max-height:90%;overflow:auto;padding:18px 16px;border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),rgba(18,10,46,.94);border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.6);animation:s3pop .25s cubic-bezier(.2,1.3,.4,1)}
@keyframes s3pop{from{transform:scale(.92);opacity:0}}
.s3-card h3{margin:0 0 8px;font-family:var(--font-h);font-size:26px;letter-spacing:1px;color:var(--gold)}.s3-card h4{margin:14px 0 6px;color:var(--cyan);font-size:13px;letter-spacing:1px;text-transform:uppercase}
.s3-x{position:absolute;right:10px;top:8px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.08);color:#fff;font-size:20px;font-weight:900;line-height:1}
.s3-who{display:inline-block;padding:3px 12px;border-radius:999px;background:var(--c,#a78bfa);color:#10062a;font-weight:900;font-size:13px;margin-bottom:8px}
.s3-q{font-size:16px;font-weight:800;line-height:1.45;margin:6px 0 12px}
.s3-facts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.s3-facts span{padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-size:12px;font-weight:800}
.s3-list{display:grid;gap:8px;margin:6px 0}
.s3-li{display:flex;flex-direction:column;gap:2px;text-align:left;padding:11px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:#fff;font-weight:900;font-size:14px}
.s3-li small{font-weight:700;color:var(--mut);font-size:11.5px}.s3-li:hover{border-color:var(--cyan)}.s3-li.on{border-color:var(--green);background:rgba(61,255,154,.12)}.s3-li.bad{border-color:var(--red);background:rgba(255,71,87,.15)}.s3-li:disabled{opacity:.45}
.s3-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.05);margin-bottom:6px}.s3-row.act{border:1px solid var(--green)}
.s3-row>i{font-style:normal;font-size:28px;flex:none;width:38px;text-align:center}.s3-row div{flex:1;min-width:0}.s3-row b{display:block;font-size:13.5px}.s3-row small{display:block;font-size:11px;color:var(--mut);font-weight:700;line-height:1.3}
.s3-ans{display:none;margin:6px 0 10px;padding:10px 12px;border-radius:14px;background:rgba(167,139,250,.14);border:1px solid #a78bfa;font-weight:700;font-size:14px;line-height:1.5}.s3-ans.on{display:block;animation:s3in .25s}
.s3-chipsq{display:flex;flex-wrap:wrap;gap:6px}.s3-chipsq .chip{cursor:pointer}
.s3-fcs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
.s3-fc{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;border-radius:20px;border:2px solid var(--c);background:linear-gradient(170deg,color-mix(in srgb,var(--c) 30%,#10082a),#10082a);color:#fff;text-align:center;box-shadow:0 0 24px color-mix(in srgb,var(--c) 35%,transparent);transition:transform .15s}
.s3-fc:hover{transform:translateY(-4px) scale(1.02)}.s3-fc i{font-style:normal;font-size:46px}.s3-fc b{font-size:17px}.s3-fc small{font-weight:800;color:var(--gold)}.s3-fc em{font-style:normal;font-size:11px;color:var(--mut);font-weight:700;line-height:1.35}.s3-fc span{margin-top:4px;padding:2px 10px;border-radius:999px;background:var(--c);color:#10062a;font-weight:900;font-size:12px}
@media (max-width:420px){.s3-fcs{grid-template-columns:1fr}.s3-fc{flex-direction:row;flex-wrap:wrap;justify-content:center}}
.s3-pol{font-family:var(--font-h);font-size:26px;color:#60a5fa;letter-spacing:1px;margin-bottom:6px}
.s3-thief .s3-who{background:#ff4d6d;color:#fff}
.s3-fade{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none;transition:opacity .9s;z-index:25;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}
.s3-fade.on{opacity:.84}.s3-fade p{margin:0;font-family:var(--font-h);font-size:clamp(26px,6vw,46px);letter-spacing:1.5px;color:#fff;text-shadow:0 0 24px var(--pink);opacity:0;transition:opacity 1s}.s3-fade.msg p{opacity:1}
.s3-skip{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:calc(env(safe-area-inset-bottom) + 16px);z-index:30}
.s3-bo{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(5,3,20,.7);backdrop-filter:blur(6px);animation:s3in .25s}
.s3-bo.s3-dark{background:radial-gradient(900px 600px at 50% 30%,rgba(60,10,70,.9),#02010a)}
.s3-cn{text-align:center;display:grid;gap:12px;justify-items:center}.s3-cs{font-family:var(--font-h);font-size:30px;color:var(--pink);letter-spacing:1px}.s3-ct{font-size:17px;font-weight:700;line-height:1.55;margin:0}.s3-ct.note{color:var(--mut);font-size:14px}
.s3-bets{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.s3-bets .chip{cursor:pointer;min-width:44px;text-align:center}.s3-bets .chip.on{background:linear-gradient(135deg,var(--violet),var(--pink));border-color:#fff}
.s3-wheel{position:relative;width:240px;margin:6px auto 10px}.s3-wheel i{position:absolute;left:50%;top:-12px;transform:translateX(-50%);font-style:normal;font-size:28px;z-index:2;color:#fff;text-shadow:0 2px 6px #000}.s3-wheel canvas{border-radius:50%;box-shadow:0 0 0 5px #fff3,0 10px 30px rgba(0,0,0,.5)}
.s3-dice{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;font-size:32px;margin:8px 0}.s3-dice small{font-size:12px;color:var(--mut)}.s3-dice div{min-height:44px}
.s3-mem{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.s3-mem button{aspect-ratio:1;border-radius:14px;border:1px solid var(--line);background:linear-gradient(135deg,var(--violet),#2a1160);color:#fff;font-size:30px;font-weight:900}.s3-mem button.f{background:#fff2}.s3-mem button.ok{background:rgba(61,255,154,.25);border-color:var(--green)}
.s3-arena{position:relative;height:230px;border-radius:16px;border:1px dashed var(--line);background:rgba(255,255,255,.04);margin:8px 0;overflow:hidden}.s3-tgt{position:absolute;width:52px;height:52px;border-radius:14px;border:2px solid var(--gold);background:rgba(255,200,61,.2);font-size:28px;animation:s3pop .2s}
.s3-fish{margin:8px 0}.s3-water{position:relative;height:120px;border-radius:16px;background:linear-gradient(#5ec3f2,#1c6ab8);overflow:hidden}.s3-water i{position:absolute;left:50%;top:30%;font-style:normal;font-size:26px;transition:top .4s}.s3-water i.cast{top:55%;animation:s3bob 1.2s infinite}
@keyframes s3bob{50%{transform:translateY(5px)}}
.s3-card .note{color:var(--mut);font-weight:700;font-size:13px;line-height:1.45}.s3-card .optrow{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.s3-card .btn{margin-top:4px}
@media (max-width:760px){.s3-mini{width:96px;height:96px}.s3-chips{max-width:calc(100% - 118px)}}
@media (min-width:1000px){.s3-mini{width:150px;height:150px}.s3-chips{max-width:calc(100% - 190px)}.s3-obj{max-width:520px;margin:0 auto}}
@media (pointer:coarse),(max-width:760px){.s3-joy{display:block}}

/* ===== Story Mode 3D v2 (livello gameplay) ===== */
#screen-s3d .s3-wv{position:absolute;inset:0;touch-action:none;outline:none}
#screen-s3d .s3-wv canvas{display:block;width:100%;height:100%;touch-action:none}
#screen-s3d .s3-load{display:none}
#screen-s3d .s3-load.on{display:flex}
#screen-s3d .s3-load>div{display:grid;gap:10px;justify-items:center;text-align:center;padding:20px}
#screen-s3d .s3-load b{font-family:var(--font-h);font-size:clamp(24px,5vw,38px);letter-spacing:1.5px;color:var(--gold)}
#screen-s3d .s3-load small{color:var(--mut);font-weight:700;font-size:14px}
#screen-s3d .s3-load u{display:block;width:min(260px,70vw);height:8px;border-radius:6px;background:rgba(255,255,255,.12);overflow:hidden}
#screen-s3d .s3-load u i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--violet),var(--pink),var(--gold));transition:width .3s}
#screen-s3d .s3-miniw{position:absolute;right:max(8px,env(safe-area-inset-right));top:calc(max(8px,env(safe-area-inset-top)) + 54px);width:118px;height:118px;z-index:7}
#screen-s3d .s3-miniw .s3-mini{position:static;width:100%;height:100%;border-radius:50%;box-shadow:0 6px 22px rgba(0,0,0,.55);cursor:pointer;display:block}
#screen-s3d .s3-minib{position:absolute;left:0;right:0;bottom:-26px;display:none;justify-content:center;gap:6px}
#screen-s3d .s3-minib button{padding:3px 9px;border-radius:999px;border:1px solid var(--line);background:rgba(18,10,46,.85);color:#fff;font-size:11px;font-weight:900}
#screen-s3d.bigmap .s3-minib{display:flex}
#screen-s3d.bigmap .s3-miniw{width:min(84vw,70vh,400px);height:min(84vw,70vh,400px);right:50%;top:50%;transform:translate(50%,-50%);z-index:30}
#screen-s3d.mmhid .s3-miniw{display:none}
#screen-s3d .s3-tip{position:absolute;right:max(8px,env(safe-area-inset-right));top:calc(max(8px,env(safe-area-inset-top)) + 178px);z-index:6;text-align:right;font-size:11px;font-weight:800;line-height:1.5;color:#e9e4ff;text-shadow:0 1px 4px #000;pointer-events:none}
#screen-s3d.bigmap .s3-tip{display:none}
#screen-s3d .s3-jf{position:absolute;left:50%;top:38%;transform:translateX(-50%);padding:6px 14px;border-radius:999px;background:rgba(8,4,26,.8);border:1px solid var(--line);font-weight:900;font-size:13px;opacity:0;transition:opacity .2s;z-index:9;pointer-events:none;text-align:center}
#screen-s3d .s3-jf.on{opacity:1}
#screen-s3d .s3-toast{position:absolute;left:50%;top:calc(max(8px,env(safe-area-inset-top)) + 62px);transform:translate(-50%,-8px);max-width:min(92vw,520px);padding:9px 16px;border-radius:14px;background:rgba(22,14,52,.94);border:1px solid var(--line);font-weight:800;font-size:13.5px;line-height:1.4;text-align:center;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:40;box-shadow:0 8px 24px rgba(0,0,0,.5)}
#screen-s3d .s3-toast.on{opacity:1;transform:translate(-50%,0)}
#screen-s3d .s3-chips{max-width:calc(100% - 150px)}
#screen-s3d .s3-chap{display:flex;flex-direction:column;gap:3px;min-width:150px}
#screen-s3d .s3-chap u{display:block;height:5px;border-radius:4px;background:rgba(255,255,255,.14);overflow:hidden}
#screen-s3d .s3-chap u i{display:block;height:100%;background:linear-gradient(90deg,#3dff9a,#ffc83d);transition:width .4s}
#screen-s3d .s3-stam{width:150px;height:auto;display:block;background:none;border:0;opacity:0;transition:opacity .25s;pointer-events:none;text-align:center}
#screen-s3d .s3-stam.on{opacity:1}
#screen-s3d .s3-stam b{display:block;font-size:10px;letter-spacing:1px;font-weight:900;margin-bottom:2px;text-shadow:0 1px 3px #000}
#screen-s3d .s3-stam u{display:block;height:8px;border-radius:6px;background:rgba(0,0,0,.55);border:1px solid var(--line);overflow:hidden}
#screen-s3d .s3-stam u i{display:block;height:100%;width:100%;border-radius:6px;transition:background .2s}
#screen-s3d .s3-joy{display:none}
@media (pointer:coarse),(max-width:760px){#screen-s3d .s3-joy{display:block}#screen-s3d .s3-tip{display:none}}
#screen-s3d .s3-acts button[hidden]{display:none}
#screen-s3d .s3-camb{display:none}
@media (pointer:coarse){#screen-s3d .s3-camb{display:block}}
#screen-s3d .s3-dbt{display:flex;gap:8px;justify-content:space-between}
#screen-s3d .s3-pc .btn{flex:none;white-space:nowrap}

#screen-s3d .cine,#screen-s3d.cine{}
#screen-s3d .s3-root.cine .s3-top,#screen-s3d .s3-root.cine .s3-chips,#screen-s3d .s3-root.cine .s3-miniw,#screen-s3d .s3-root.cine .s3-joy,#screen-s3d .s3-root.cine .s3-acts,#screen-s3d .s3-root.cine .s3-tip,#screen-s3d .s3-root.cine .s3-hint,#screen-s3d .s3-root.cine .s3-prompt,#screen-s3d .s3-root.cine .s3-stam{display:none}
#screen-s3d .s3-fade{transition:opacity .6s}
#screen-s3d .s3-skip{position:absolute}
.s3-avp{position:relative;height:120px;width:70px;margin:0 auto 6px}
.s3-avp i{position:absolute;left:21px;top:0;width:28px;height:14px;border-radius:14px 14px 4px 4px}
.s3-avp u{position:absolute;left:23px;top:10px;width:24px;height:24px;border-radius:50%}
.s3-avp b{position:absolute;left:10px;top:36px;width:50px;height:44px;border-radius:12px 12px 6px 6px}
.s3-avp s{position:absolute;left:16px;top:80px;width:38px;height:38px;border-radius:4px 4px 8px 8px}
.s3-sw{display:flex;gap:8px;flex-wrap:wrap}
.s3-sw button{width:32px;height:32px;border-radius:50%;border:2px solid transparent;box-shadow:0 0 0 1px #fff3}
.s3-sw button.on{border-color:#fff;box-shadow:0 0 12px #fff8}
.s3-chipsq .chip.on{background:linear-gradient(135deg,var(--violet),var(--pink));border-color:#fff}
.s3-nodeco{display:none}
.s3-chipsq .chip{color:#fff}
.s3-bar{position:relative;height:26px;border-radius:13px;background:rgba(255,255,255,.1);border:1px solid var(--line);margin:12px 0;overflow:hidden}
.s3-bar i{position:absolute;left:38%;width:24%;top:0;bottom:0;background:rgba(61,255,154,.45)}
.s3-bar b{position:absolute;top:0;bottom:0;width:6px;margin-left:-3px;background:#fff;border-radius:3px;left:0}
#screen-s3d .s3-gt{background:rgba(180,83,9,.9);border-color:#fbbf24}

/* ---- rifinitura UX Story 3D ---- */
.s3-obj b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15;font-size:13px}
@media (max-width:760px){.s3-prompt{width:auto;left:12px;right:74px;transform:translate(0,16px)}.s3-prompt.on{transform:translate(0,0)}}
.s3-prompt.on .s3-pc{animation:s3pop .35s cubic-bezier(.2,.9,.25,1.25) both}
.s3-prompt.on [data-p]{animation:s3pulse 1.6s ease-in-out infinite}
@keyframes s3pop{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
@keyframes s3pulse{50%{box-shadow:0 0 0 7px rgba(255,200,61,.22),0 0 22px rgba(255,200,61,.55)}}
.s3-pn .s3-card{animation:s3card .36s cubic-bezier(.2,.9,.25,1.12) both}
@keyframes s3card{from{opacity:0;transform:translateY(26px) scale(.95)}to{opacity:1;transform:none}}
.s3-li{transition:transform .15s,background .2s,border-color .2s}.s3-li:hover{transform:translateX(4px);border-color:rgba(255,200,61,.6)}.s3-li:active{transform:scale(.98)}
.s3-dlg.on{animation:s3dlg .32s cubic-bezier(.2,.9,.25,1.1) both}
@keyframes s3dlg{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
.s3-dt.typing::after{content:"▍";margin-left:2px;color:var(--gold);animation:s3blink .7s steps(1) infinite}
@keyframes s3blink{50%{opacity:0}}
.s3-load .s3-tip2{max-width:320px;font-family:'Nunito',system-ui;font-size:13px;font-weight:700;letter-spacing:0;color:#cbbff0;opacity:.9;min-height:2.6em;transition:opacity .4s}
.s3-keys{position:absolute;left:14px;bottom:14px;z-index:8;display:none;gap:6px 12px;flex-wrap:wrap;max-width:360px;padding:8px 12px;border-radius:12px;background:rgba(10,6,30,.66);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);font-size:11.5px;font-weight:700;color:#d9d0f5;pointer-events:none;transition:opacity 1s}
.s3-keys.off{opacity:0}
.s3-keys kbd{font-family:inherit;font-weight:900;padding:1px 6px;border-radius:5px;background:rgba(255,255,255,.16);color:#fff;margin-right:3px}
@media (pointer:fine) and (min-width:761px){.s3-keys{display:flex}}
@media (prefers-reduced-motion:reduce){.s3-prompt.on [data-p]{animation:none}}
.s3-li{position:relative}
.s3-li .s3-ft{position:absolute;right:10px;top:50%;translate:0 -50%;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:18px;background:linear-gradient(135deg,#ffb100,#ffe36b);color:#3b2300;box-shadow:0 4px 14px rgba(255,200,61,.5);transition:transform .15s}
.s3-li .s3-ft:hover{transform:scale(1.12)}.s3-li .s3-ft:active{transform:scale(.92)}
.s3-li:has(.s3-ft){padding-right:58px}
.s3-root.night .s3-wv canvas{filter:brightness(1.35) contrast(1.06) saturate(1.1)}

.s3-ans{max-height:34vh;overflow:auto}.s3-me{margin:6px 0 2px auto;max-width:82%;padding:6px 10px;border-radius:14px 14px 4px 14px;background:rgba(255,200,61,.18);border:1px solid rgba(255,200,61,.6);font-size:13px;text-align:right}
.s3-nn{margin:2px auto 6px 0;max-width:92%;padding:8px 11px;border-radius:14px 14px 14px 4px;background:rgba(167,139,250,.16);border:1px solid #a78bfa}
.s3-nf{display:flex;gap:6px;margin-top:8px}.s3-ni{flex:1;min-width:0;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.35);color:#fff;font:700 14px system-ui}
