:root{--ink: #4a5560;--ink-soft: #97a0ad;--periwinkle: #7e87d8;--periwinkle-dark: #6b74cc;--blue: #5d6fd6;--blue-dark: #4f60c4;--accent-ink: #2f6b34;--shadow: 0 8px 24px rgba(80, 90, 130, .22);--shadow-soft: 0 4px 14px rgba(80, 90, 130, .16);--radius: 20px}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;font-family:Nunito,Avenir Next,Segoe UI,system-ui,sans-serif;background:linear-gradient(180deg,#8e9be0,#f3a6c0 55%,#ffd9a8);-webkit-user-select:none;user-select:none;color:var(--ink)}#scene{position:fixed;inset:0;width:100vw;height:100vh;display:block;touch-action:none}#hud{position:fixed;inset:0;pointer-events:none}#hud>*{pointer-events:auto}.lvl-pill{position:absolute;top:12px;left:12px;height:42px;box-sizing:border-box;display:flex;align-items:center;gap:8px;background:#fff;padding:0 10px 0 13px;border-radius:999px;box-shadow:var(--shadow)}.lvl-col{display:flex;flex-direction:column;gap:3px}.lvl-text{display:flex;align-items:baseline;gap:6px}.lvl-text .cap{font-size:10px;font-weight:800;color:var(--ink-soft)}.lvl-num{font-size:18px;font-weight:900;color:var(--ink);line-height:1}.lvl-glyph{display:flex;align-items:center;justify-content:center}.cash-pill{position:absolute;top:12px;right:12px;height:42px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right;background:#fff;padding:0 14px;border-radius:999px;box-shadow:var(--shadow)}.cash-pill .idle{font-size:10px;font-weight:800;color:var(--ink-soft)}.cash-pill .cash{font-size:18px;font-weight:900;color:var(--accent-ink);line-height:1.1}.quest-banner{position:absolute;top:64px;left:12px;width:208px;background:#fff;border-radius:14px;box-shadow:var(--shadow-soft);padding:9px 11px;display:flex;flex-direction:column;gap:4px;transform-origin:23px 23px}.quest-banner.intro{animation:questBannerIn .26s cubic-bezier(.25,1.3,.45,1) both}@keyframes questBannerIn{0%{opacity:0;transform:scale(.22)}45%{opacity:1}to{opacity:1;transform:scale(1)}}.quest-banner.outro{animation:questBannerOut .18s cubic-bezier(.5,0,.75,.4) both;pointer-events:none}@keyframes questBannerOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.22)}}.q-top{display:flex;align-items:center;gap:7px}.q-collapse{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#7e87d824;color:var(--periwinkle);cursor:pointer;transition:background .15s,transform .08s ease}.q-collapse:hover{background:#7e87d842}.q-collapse:active{transform:scale(.9)}.q-title{flex:1 1 auto;min-width:0;font-weight:900;font-size:13px;color:var(--ink)}.q-reward{font-weight:900;font-size:13px;color:var(--accent-ink);white-space:nowrap}.q-desc{line-height:1.25}.q-bar{height:6px;border-radius:999px;background:#7e87d833;overflow:hidden}.q-bar>div{height:100%;background:var(--periwinkle);border-radius:999px;transition:width .3s ease}.q-label{align-self:flex-end}.q-claim{border:none;border-radius:12px;padding:7px;font-weight:900;font-size:13px;cursor:pointer;background:#c8ccd6;color:#fff;transition:transform .08s ease,background .15s}.q-claim.ready{background:var(--accent-ink)}.q-claim:disabled{cursor:default}.q-claim.ready:active{transform:scale(.97)}.quest-bubble{position:absolute;top:64px;left:12px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#fff;box-shadow:var(--shadow-soft);color:var(--periwinkle);cursor:pointer;transition:transform .1s ease,background .2s,color .2s}.quest-bubble:hover{transform:scale(1.06)}.quest-bubble:active{transform:scale(.94)}.quest-bubble.ready{background:#f5c33b;color:#fff;animation:questPulse 1.4s ease-in-out infinite}@keyframes questPulse{0%,to{box-shadow:0 0 #f5c33b8c,var(--shadow-soft);transform:scale(1)}50%{box-shadow:0 0 0 9px #f5c33b00,var(--shadow-soft);transform:scale(1.07)}}.dock{position:absolute;top:50%;right:10px;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;background:var(--periwinkle);padding:10px 7px;border-radius:999px;box-shadow:var(--shadow)}.dock-btn{width:42px;height:42px;border:none;border-radius:50%;background:var(--periwinkle-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .08s ease,background .15s ease}.dock-btn svg{width:21px;height:21px}.dock-btn:hover{background:#7a83d4}.dock-btn:active{transform:scale(.92)}.dock-btn.active{background:#fff}.dock-btn.active svg path,.dock-btn.active svg rect,.dock-btn.active svg ellipse,.dock-btn.active svg circle{fill:var(--periwinkle)}.dock-btn.active svg [stroke]{stroke:var(--periwinkle)}.dock-btn.cam-toggle{margin-top:5px;position:relative;background:#6a73c8}.dock-btn.cam-toggle:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:24px;height:2px;border-radius:2px;background:#ffffff59}.panel{position:absolute;top:50%;right:74px;transform:translateY(-50%);width:188px;max-height:64vh;display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:11px 11px 9px;border:2px solid #cfe9f5;transform-origin:right center}.panel.intro{animation:panelInRight .26s cubic-bezier(.25,1.3,.45,1) both}@keyframes panelInRight{0%{opacity:0;transform:translateY(-50%) translate(22px)}40%{opacity:1}to{opacity:1;transform:translateY(-50%) translate(0)}}.panel.outro{animation:panelOutRight .2s cubic-bezier(.3,.8,.4,1) both;pointer-events:none}@keyframes panelOutRight{0%{opacity:1;transform:translateY(-50%) translate(0)}60%{opacity:0}to{opacity:0;transform:translateY(-50%) translate(22px)}}.panel-head{padding:1px 3px 9px;border-bottom:1.5px solid #eef2f8;margin-bottom:9px}.head-row{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.head-name{font-size:15px;font-weight:900;color:var(--ink)}.head-price{font-size:14px;font-weight:900;color:var(--accent-ink);white-space:nowrap}.muted{color:var(--ink-soft);font-weight:700}.small{font-size:12px}.flower-head{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:4px 12px;align-items:center}.head-glyph{grid-row:span 2}.head-name .muted{font-size:13px}.head-actions{grid-column:1 / -1;display:flex;gap:8px;margin-top:8px}.pri-btn{flex:1;border:none;border-radius:14px;padding:9px;background:var(--blue);color:#fff;font-weight:900;font-size:15px;cursor:pointer;display:flex;flex-direction:column;gap:1px;transition:transform .08s ease,background .15s}.pri-btn.alt{flex:0 0 96px;background:#8a93dc}.pri-btn:hover{background:var(--blue-dark)}.pri-btn:active{transform:scale(.96)}.pri-sub{font-size:11px;font-weight:800;opacity:.85}.panel-empty{padding:22px 8px 18px;text-align:center;line-height:1.5}.panel-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow-y:auto;overflow-x:hidden;padding:1px 2px;scrollbar-width:thin}.item{position:relative;min-width:0;border:none;border-radius:13px;background:#f1f4fb;padding:7px 5px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;transition:transform .08s ease,background .15s,box-shadow .15s}.item:hover{background:#e9eefa}.item:active{transform:scale(.95)}.item.selected{background:#fff;box-shadow:inset 0 0 0 2.5px var(--periwinkle)}.item.locked{cursor:not-allowed;background:#eef0f5}.item-icon{height:26px;display:flex;align-items:center;justify-content:center}.item-icon svg{width:24px;height:24px}.item-name{font-size:11px;font-weight:800;color:var(--ink);min-width:0;max-width:100%;text-align:center;overflow-wrap:anywhere;line-height:1.2}.item-price{font-size:10px;font-weight:800;color:var(--ink-soft)}.lock{position:absolute;inset:0;background:#eef0f5c7;border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:900;color:#9aa3b2;font-size:13px}.dc-backdrop{position:absolute;inset:0;background:#3c46642e;display:flex;align-items:center;justify-content:center}.dc-card{width:min(300px,84vw);background:#fff;border-radius:24px;border:2px solid #cfe9f5;box-shadow:var(--shadow);padding:16px;display:flex;flex-direction:column;gap:10px}.wb-card{width:min(320px,86vw);background:#fff;border-radius:24px;border:2px solid #cfe9f5;box-shadow:var(--shadow);padding:24px 22px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;animation:wb-pop .34s cubic-bezier(.2,1.2,.4,1)}.wb-title{font-size:23px;font-weight:900;color:var(--ink)}.wb-body{font-size:14px;font-weight:700;color:var(--ink-soft);line-height:1.55}.wb-amount{font-size:28px;font-weight:900;color:var(--accent-ink);margin:2px 0 6px}.wb-btn{border:none;border-radius:16px;padding:12px 36px;background:var(--blue);color:#fff;font-weight:900;font-size:17px;cursor:pointer;transition:transform .08s ease,background .15s}.wb-btn:hover{background:var(--blue-dark)}.wb-btn:active{transform:scale(.96)}@keyframes wb-pop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.dc-head{display:flex;justify-content:space-between;align-items:baseline}.dc-name{font-size:20px;font-weight:900;color:var(--ink)}.dc-lvl{font-size:13px;font-weight:800;color:var(--ink-soft)}.dc-preview{height:150px;border-radius:16px;background:radial-gradient(circle at 50% 45%,#eafaf0,#d4eee0);display:flex;align-items:center;justify-content:center}.dc-stats{display:flex;gap:18px;font-weight:800;color:var(--ink-soft);font-size:14px;padding:0 2px}.dc-qty{align-self:flex-end;margin-bottom:-6px;border:none;background:#eef0f8;color:var(--ink);font-weight:900;font-size:13px;padding:5px 14px;border-radius:999px;cursor:pointer}.dc-qty:active{transform:scale(.94)}.dc-btn{border:none;border-radius:16px;padding:12px;font-weight:900;font-size:17px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:1px;transition:transform .08s ease,filter .15s}.dc-btn:active{transform:scale(.97)}.dc-sub{font-size:12px;font-weight:800;opacity:.85}.dc-upgrade{background:var(--blue);color:#fff}.dc-upgrade:hover{background:var(--blue-dark)}.dc-harvest{background:#c8ccd6;color:#fff}.dc-harvest.ready{background:var(--accent-ink);cursor:pointer}.dc-harvest:disabled{cursor:default}.dc-maxed{text-align:center;font-weight:900;color:var(--accent-ink);padding:8px}.dc-remove{border:none;background:none;color:var(--ink-soft);font-weight:800;font-size:13px;cursor:pointer;padding:2px}.dc-remove:hover{color:#d6585f}.picker{width:min(330px,88vw);max-height:78vh;overflow-y:auto;background:#fff;border-radius:22px;border:3px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(150deg,var(--periwinkle),#7fd4e6);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:var(--shadow);padding:14px 12px;scrollbar-width:thin}.picker-title{text-align:center;font-size:18px;font-weight:900;color:var(--ink);padding:4px 0 10px;border-bottom:2px solid #eef0f5;margin-bottom:6px}.picker-list{display:flex;flex-direction:column}.pick-row{display:flex;align-items:center;gap:12px;width:100%;border:none;background:none;padding:10px 6px;border-bottom:1px solid #f0f2f6;cursor:pointer;text-align:left;border-radius:12px;transition:background .12s}.pick-row:last-child{border-bottom:none}.pick-row:hover:not(.locked){background:#f4f6fd}.pick-row:active:not(.locked){transform:scale(.99)}.pick-row.locked{cursor:not-allowed}.pick-icon{position:relative;flex:0 0 38px;height:38px;display:flex;align-items:center;justify-content:center}.pick-lock{position:absolute;right:-2px;bottom:-2px;background:#9aa3b2;color:#fff;font-size:10px;font-weight:900;border-radius:999px;padding:0 5px;line-height:15px}.pick-mid{flex:1;min-width:0}.pick-name{font-size:16px;font-weight:900;color:var(--ink)}.pick-stats{display:flex;gap:14px;font-size:12px;font-weight:800;color:var(--ink-soft);margin-top:1px}.pick-price{font-size:16px;font-weight:900;color:var(--ink);white-space:nowrap}.pick-price.muted{color:var(--ink-soft)}.toast{position:absolute;top:84px;left:50%;transform:translate(-50%);background:#fff;padding:12px 20px;border-radius:var(--radius);box-shadow:var(--shadow);font-weight:800;color:var(--accent-ink);opacity:0;transition:opacity .4s ease;max-width:80vw;text-align:center}.toast.show{opacity:1}.coin{position:absolute;transform:translate(-50%,-50%);font-weight:900;font-size:17px;color:var(--accent-ink);text-shadow:0 1px 0 rgba(255,255,255,.9);pointer-events:none;animation:coinrise .9s ease-out forwards}@keyframes coinrise{0%{opacity:0;transform:translate(-50%,-30%) scale(.8)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-160%) scale(1.05)}}@keyframes shakeRed{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.cash-pill.reject{animation:shakeRed .45s ease;box-shadow:0 0 0 3px #e2574e,var(--shadow)}.cash-pill.reject .cash{color:#e2574e}.pulse{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px;border-radius:50%;border:3px solid #e2574e;pointer-events:none;animation:pulseFade .5s ease-out forwards}@keyframes pulseFade{0%{opacity:.9;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(1.7)}}#hud>.menu-backdrop{position:absolute;inset:0;pointer-events:none}.item-menu{position:absolute;pointer-events:auto;transform:translate(-50%,-130%);display:flex;gap:8px;background:#fff;padding:8px;border-radius:999px;box-shadow:var(--shadow);border:2px solid #cfe9f5}.menu-btn{width:44px;height:44px;border:none;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .08s ease,background .15s}.menu-btn:hover{background:var(--blue-dark)}.menu-btn:active{transform:scale(.92)}.menu-btn.mid{background:var(--periwinkle)}.menu-btn.mid:hover{background:var(--periwinkle-dark)}#hud>.cam-layer{position:absolute;inset:0;pointer-events:none}.cam-vf{position:absolute;inset:0;pointer-events:none}.cam-corner{position:absolute;width:46px;height:46px;border:3px solid rgba(255,255,255,.92);filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.cam-tl{top:26px;left:26px;border-right:none;border-bottom:none}.cam-tr{top:26px;right:26px;border-left:none;border-bottom:none}.cam-bl{bottom:26px;left:26px;border-right:none;border-top:none}.cam-br{bottom:26px;right:26px;border-left:none;border-top:none}.cam-reticle{position:absolute;top:50%;left:50%;width:54px;height:54px;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.75);border-radius:4px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.cam-reticle:before,.cam-reticle:after{content:"";position:absolute;background:#ffffffd9}.cam-reticle:before{top:50%;left:35%;right:35%;height:2px;transform:translateY(-50%)}.cam-reticle:after{left:50%;top:35%;bottom:35%;width:2px;transform:translate(-50%)}.cam-rec{position:absolute;top:34px;left:84px;display:flex;align-items:center;gap:7px}.cam-rec-dot{width:11px;height:11px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 6px #ff4d4de6;animation:camRec 1.4s steps(1,end) infinite}@keyframes camRec{0%,50%{opacity:1}50.01%,to{opacity:.15}}.cam-rec-label{color:#fff;font-size:13px;font-weight:800;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.cam-date{position:absolute;bottom:34px;right:84px;color:#ffae3b;font-family:Courier New,monospace;font-size:17px;font-weight:700;letter-spacing:1px;text-shadow:0 0 5px rgba(255,150,30,.85),0 1px 1px rgba(0,0,0,.5)}.cam-flash{position:absolute;inset:0;background:#fff;opacity:0}.cam-flash.fire{animation:camFlash .45s ease-out}@keyframes camFlash{0%{opacity:0}8%{opacity:.85}to{opacity:0}}.cam-bar{position:absolute;bottom:30px;left:50%;transform:translate(-50%);pointer-events:auto}.cam-shutter{position:relative;width:74px;height:74px;padding:0;border:none;border-radius:50%;background:radial-gradient(circle at 50% 35%,#dfe2ee,#c3c7da,#9aa0bb);box-shadow:0 4px 10px #00000059,inset 0 0 0 3px #ffffff8c,inset 0 -3px 5px #5a5f7d99;display:flex;align-items:center;justify-content:center;cursor:pointer}.cam-shutter-core{width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#eceefa,#cfd3e6 55%,#a7adc8);box-shadow:inset 0 1px 3px #fff9,inset 0 -2px 5px #5a5f7da6,0 1px 2px #00000040;transition:transform .08s ease,box-shadow .08s ease}.cam-shutter:hover .cam-shutter-core{background:radial-gradient(circle at 50% 40%,#f0f1fc,#d6daf0 55%,#aeb4d6)}.cam-shutter:active .cam-shutter-core{transform:scale(.9);box-shadow:inset 0 2px 6px #5a5e82b3}.cam-exit{position:absolute;left:100%;top:50%;margin-left:22px;transform:translateY(-50%);width:50px;height:50px;padding:0;border:none;border-radius:50%;background:radial-gradient(circle at 50% 35%,#6b7180,#4a5560 60%,#353d47);box-shadow:0 3px 8px #0006,inset 0 0 0 2px #ffffff2e,inset 0 -2px 4px #0006;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .08s ease,filter .15s}.cam-exit:hover{filter:brightness(1.18)}.cam-exit:active{transform:translateY(-50%) scale(.92)}.store-badge{position:absolute;top:4px;right:4px;background:var(--accent-ink);color:#fff;font-size:10px;font-weight:900;border-radius:999px;padding:1px 6px;line-height:15px}.settings-row-static{cursor:default}.settings-row-static:hover{background:#f6f7fd}.audio-inline{display:flex;align-items:center;gap:8px;color:var(--periwinkle)}.audio-inline.muted{color:#9aa3b2}.audio-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer;transition:transform .1s ease}.audio-btn:hover{transform:scale(1.08)}.audio-btn:active{transform:scale(.92)}.audio-vol{width:110px;margin:0;-webkit-appearance:none;appearance:none;height:4px;border-radius:2px;background:#dfe2f3;outline:none}.audio-vol::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--periwinkle);border:2px solid #fff;box-shadow:0 1px 3px #0003;cursor:pointer}.audio-vol::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--periwinkle);border:2px solid #fff;cursor:pointer}.settings-ctl{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;align-items:flex-end;gap:8px;color:var(--periwinkle)}.settings-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#fff;box-shadow:var(--shadow-soft);color:inherit;cursor:pointer;transition:transform .25s ease}.settings-btn:hover{transform:rotate(45deg)}.settings-btn:active{transform:scale(.94)}.settings-card{width:min(340px,88vw);background:#fff;border-radius:24px;border:2px solid #cfe9f5;box-shadow:var(--shadow);padding:18px 18px 16px;display:flex;flex-direction:column;gap:12px;animation:wb-pop .34s cubic-bezier(.2,1.2,.4,1)}.settings-head{display:flex;align-items:center;justify-content:space-between}.settings-title{font-size:20px;font-weight:900;color:var(--ink)}.settings-close{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:50%;color:var(--ink-soft);cursor:pointer;transition:background .12s}.settings-close:hover{background:#eef0fb}.settings-list{display:flex;flex-direction:column;gap:6px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;border:none;background:#f6f7fd;border-radius:14px;padding:13px 14px;font:inherit;cursor:pointer;transition:background .12s}.settings-row:hover{background:#eef0fb}.settings-row-label{font-size:15px;font-weight:800;color:var(--ink)}.settings-row-value{font-size:15px;font-weight:800;color:var(--periwinkle);max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rename-card{width:min(320px,86vw);background:#fff;border-radius:24px;border:2px solid #cfe9f5;box-shadow:var(--shadow);padding:22px 20px 18px;display:flex;flex-direction:column;gap:14px;animation:wb-pop .34s cubic-bezier(.2,1.2,.4,1)}.rename-title{font-size:21px;font-weight:900;color:var(--ink);text-align:center}.rename-form{display:flex;flex-direction:column;gap:14px}.rename-actions{display:flex;gap:10px}.rename-cancel,.rename-save{flex:1;border:none;border-radius:14px;padding:12px;font:inherit;font-weight:900;font-size:16px;cursor:pointer;transition:transform .08s ease,background .15s}.rename-cancel{background:#eef0fb;color:var(--ink)}.rename-cancel:hover{background:#e3e6f7}.rename-save{background:var(--blue);color:#fff}.rename-save:hover{background:var(--blue-dark)}.rename-cancel:active,.rename-save:active{transform:scale(.97)}.tutorial-layer{position:fixed;inset:0;z-index:45;pointer-events:none}.tut-ring{position:absolute;border-radius:50%;border:3px solid #f5c33b;box-shadow:0 0 0 3px #f5c33b59,0 0 18px 4px #f5c33b80;animation:tutPulse 1.3s ease-in-out infinite}@keyframes tutPulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.12);opacity:.55}}.tut-drag{position:absolute;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle,#ffe28f,#f5c33b 60%,#f5c33b00);box-shadow:0 0 12px 4px #f5c33b8c}.tut-card{position:absolute;left:50%;bottom:26px;transform:translate(-50%);width:min(360px,86vw);background:#ffffffeb;backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);border:2px solid #cfe9f5;border-radius:18px;box-shadow:var(--shadow);padding:14px 16px 12px;display:flex;flex-direction:column;gap:6px;text-align:center;pointer-events:auto;animation:welcome-pop .4s cubic-bezier(.2,1.1,.4,1) both}.tut-step{font-size:11px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--periwinkle)}.tut-text{font-size:16px;font-weight:800;color:var(--ink);line-height:1.35}.tut-skip{align-self:center;margin-top:4px;border:none;background:transparent;color:var(--ink-soft);font:inherit;font-size:12px;font-weight:700;text-decoration:underline;cursor:pointer}.tut-skip:hover{color:var(--ink)}.tut-card.done .tut-skip{margin-top:8px;text-decoration:none;background:var(--blue);color:#fff;border-radius:12px;padding:9px 22px;font-size:14px}.tut-card.done .tut-skip:hover{background:var(--blue-dark);color:#fff}.dock-btn.gated{opacity:.35;cursor:default}.welcome-screen{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:radial-gradient(135% 115% at 50% 42%,#3c466e00 38%,#30385c57);opacity:1;transition:opacity 1.6s ease}.welcome-screen.leaving{opacity:0;pointer-events:none}.welcome-card{width:min(380px,88vw);padding:32px 30px 26px;border-radius:28px;background:#ffffffd1;backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);border:2px solid rgba(255,255,255,.7);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;animation:welcome-pop .6s cubic-bezier(.2,1.1,.4,1) both}.welcome-mark{margin-bottom:2px;line-height:0;filter:drop-shadow(0 4px 8px rgba(110,116,204,.28))}.welcome-title{margin:0;font-size:30px;font-weight:900;letter-spacing:.2px;color:var(--ink)}.welcome-sub{margin:0 0 14px;font-size:15px;font-weight:700;color:var(--ink-soft)}.welcome-form{width:100%;display:flex;flex-direction:column;gap:12px}.welcome-input{width:100%;padding:14px 16px;border-radius:16px;border:2px solid #d7dcf3;background:#fff;font:inherit;font-size:17px;font-weight:700;color:var(--ink);text-align:center;outline:none;transition:border-color .15s,box-shadow .15s}.welcome-input::placeholder{color:var(--ink-soft);font-weight:600}.welcome-input:focus{border-color:var(--periwinkle);box-shadow:0 0 0 4px #7e87d82e}.welcome-btn{width:100%;border:none;border-radius:16px;padding:14px;background:var(--blue);color:#fff;font-weight:900;font-size:18px;cursor:pointer;transition:transform .08s ease,background .15s,opacity .15s}.welcome-btn:hover:not(:disabled){background:var(--blue-dark)}.welcome-btn:active:not(:disabled){transform:scale(.97)}.welcome-btn:disabled{opacity:.5;cursor:default}@keyframes welcome-pop{0%{transform:translateY(14px) scale(.94);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
