.app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#96d4f3;background-image:linear-gradient(in oklab 180deg, #fff4d9 0%, #ffe2ae 12.5%, #ffc99b 25%, #f9b2a4 37.5%, #e4aec4 50%, #c0b6dd 62.5%, #9cbfe8 75%, #84c5ef 87.5%, #96d4f3 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#0f1326;background-image:linear-gradient(in oklab 180deg, #010102 0%, #05060d 10%, #0a0d1a 18%, #0f1326 25%, #12162a 32%, #12162a 48%, #161c34 62%, #1c233e 76%, #232b4c 88%, #2b3460 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=starlight] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#0a1330;background-image:linear-gradient(in oklab 180deg, #16294f 0%, #111e3e 40%, #0b1531 74%, #060c20 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=cyberbloom] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#170b10;background-image:none;background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=blackcat] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#2e0b12;background-image:linear-gradient(in oklab 180deg, #4d1622 0%, #42121c 35%, #3a0f17 65%, #2e0b12 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=light][data-sky=snow] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#e8edf5;background-image:linear-gradient(#aab6d3 0,#c7d0e4 280px,#dde3ee 560px,#e8edf5 860px 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=light][data-sky=sunset] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#f7ebe3;background-image:linear-gradient(#d78fa3 0,#efa874 300px,#f8d7b2 580px,#f7ebe3 860px 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=meadow] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#2c3223;background-image:linear-gradient(in oklab 180deg, #4a5238 0%, #414a33 22%, #3b432f 45%, #363d2b 70%, #2c3223 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=blossom] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#33232c;background-image:linear-gradient(in oklab 180deg, #54394a 0%, #43303b 45%, #2f2029 100%);background-repeat:no-repeat;background-size:100% 100%}:is(:root[data-theme][data-sky=plainLight] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)),:root[data-theme][data-sky=plainDark] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page))){background:var(--bg)}:root[data-theme=rain] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#79828f;background-image:linear-gradient(#1d2127 0%,#262b33 7%,#333941 15%,#424953 26%,#4f5761 40%,#5c646f 56%,#69717c 72%,#727b86 88%,#79828f 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=rain] :is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page) .slicer-topbar h1{color:#eef1f5}.game-menu-card{background:var(--surface);border-radius:var(--r-xl);min-height:440px;box-shadow:var(--shadow-md);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:32px;display:flex;position:relative}.game-menu-card h2{margin:0;font-size:26px}.game-menu-card p{color:var(--ink-soft);max-width:400px;margin:0 0 12px;font-weight:600;line-height:1.5}.game-menu-card .catcher-pool-count,.game-menu-card .game-pool-count{margin:0;font-size:13px}.game-menu-card .game-pool-warning{max-width:400px;color:var(--orange-dark,var(--orange));margin:0;font-size:12.5px;font-weight:700}.game-menu-card .lesson-step-actions{justify-content:center}@media (width<=520px){.game-menu-card{min-height:400px;padding:24px 16px}}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.game-menu-card>.btn-primary:last-child,.game-menu-card>.tt-setup-actions:last-child,.salon-menu-card>.salon-menu-go:last-child{bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:3;align-self:stretch;position:sticky}.game-menu-card>.btn-primary:last-child:before,.game-menu-card>.tt-setup-actions:last-child:before,.salon-menu-card>.salon-menu-go:last-child:before{content:"";background:linear-gradient(to bottom, transparent, var(--surface));pointer-events:none;height:22px;position:absolute;bottom:100%;left:0;right:0}.salon-menu-card>.salon-menu-go:last-child:before{background:linear-gradient(to bottom, transparent, var(--salon-cream,#fff7f1))}.game-menu-card>.tt-setup-actions:last-child{background:var(--surface)}}@media (width<=440px){.slicer-topbar{gap:10px}.slicer-topbar>.lesson-shell-back,.slicer-topbar>.slicer-stat{flex:none}.slicer-topbar>.slicer-stat{white-space:nowrap;padding:7px 12px;font-size:13px}.page .slicer-topbar h1{overflow-wrap:break-word;min-width:0;font-size:clamp(18px,5.4vw,24px);line-height:1.15;flex:0 auto!important}}.night-stars{pointer-events:none;z-index:0;width:100vw;height:220px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.app-main:has(.home-page) .night-stars{display:none}.night-star{color:#fff6dd;-webkit-user-select:none;user-select:none;opacity:var(--op,.6);text-shadow:0 0 6px #fffae6,0 0 16px #ffdc8ce6,0 0 30px #e7c2648c;animation:night-star-twinkle var(--dur,3.2s) ease-in-out infinite;animation-delay:var(--delay,0s);line-height:1;position:absolute}@keyframes night-star-twinkle{0%,to{opacity:var(--op,.6)}50%{opacity:calc(var(--op,.6) * .22)}}@media (prefers-reduced-motion:reduce){.night-star{animation:none}}.global-raindrops{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.app-main:has(.home-page) .global-raindrops{display:none}.global-raindrop{background:linear-gradient(#0000,#5a6c8ae6)}.starlight-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;inset:0 auto 0 50%;overflow:hidden}.starlight-grain{opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.starlight-star,.starlight-sparkle,.starlight-ribbon,.starlight-dust{display:block;position:absolute}.starlight-star svg,.starlight-sparkle svg{fill:#fbfeff;width:100%;height:auto;display:block}.starlight-star{transform:rotate(var(--tilt,0deg));filter:drop-shadow(0 0 6px #bef0fff2)drop-shadow(0 0 26px #78d2f5bf);animation:starlight-breathe var(--dur,7s) ease-in-out var(--delay,0s) infinite alternate}.starlight-sparkle{filter:drop-shadow(0 0 4px #c8f5fff2)drop-shadow(0 0 14px #78d2f5b3);animation:starlight-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate}.starlight-star.starlight-warm svg{fill:#fff3d0}.starlight-star.starlight-warm{filter:drop-shadow(0 0 6px #ffe9b0f2)drop-shadow(0 0 24px #f0c878b3)}@keyframes starlight-breathe{0%{opacity:.55;transform:rotate(var(--tilt,0deg)) scale(.9)}to{opacity:1;transform:rotate(var(--tilt,0deg)) scale(1.06)}}@keyframes starlight-twinkle{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1.1)}}.starlight-ribbon{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1));animation:starlight-drift var(--dur,22s) ease-in-out var(--delay,0s) infinite alternate}.starlight-ribbon svg{stroke:#cdeeff;stroke-width:6px;opacity:.6;filter:drop-shadow(0 0 4px #aaebff99)drop-shadow(0 0 11px #5ac3f066);width:100%;height:auto;display:block}@keyframes starlight-drift{0%{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1)) translate(-14px, 8px);opacity:.45}to{transform:rotate(calc(var(--tilt,0deg) + 5deg)) scaleX(var(--flip,1)) translate(14px, -8px);opacity:.75}}.starlight-dust{animation:starlight-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#eafaff;border-radius:50%;box-shadow:0 0 6px #b4f0ffe6}.starlight-dust.starlight-warm{background:#ffeec4;box-shadow:0 0 6px #ffe4a0e6}.starlight-ribbon svg,.starlight-blossom svg{fill:none}.starlight-blossom{transform:rotate(var(--tilt,0deg));animation:starlight-bloom var(--dur,18s) ease-in-out var(--delay,0s) infinite alternate;display:block;position:absolute}.starlight-blossom svg{stroke:#dff7ff;stroke-width:2.6px;filter:drop-shadow(0 0 4px #bef0ffe6)drop-shadow(0 0 14px #6ecdf5b3);width:100%;height:auto;display:block}@keyframes starlight-bloom{0%{transform:rotate(var(--tilt,0deg)) translateY(8px);opacity:.55}to{transform:rotate(calc(var(--tilt,0deg) + 8deg)) translateY(-8px);opacity:.92}}.starlight-long{z-index:-1;opacity:.85}@media (prefers-reduced-motion:reduce){.starlight-star,.starlight-sparkle,.starlight-ribbon,.starlight-dust,.starlight-blossom{animation:none}}.blossom-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.blossom-fall{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.blossom-grain{opacity:.14;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.blossom-ribbon,.blossom-flower,.blossom-dust,.blossom-falling{display:block;position:absolute}.blossom-ribbon{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1));animation:blossom-drift var(--dur,24s) ease-in-out var(--delay,0s) infinite alternate;filter:drop-shadow(0 0 5px #ffc4debf)drop-shadow(0 0 18px #f096be73);--loop-left:0px;width:min(17vw,240px);height:auto;animation-name:none}@media (width>=900px) and (height>=501px){.blossom-ribbon{--loop-left:calc(var(--nav-w) / 2)}}.blossom-ribbon.is-right svg{transform:scaleX(-1)}.blossom-loop-glow{stroke:#f6b4d02e;stroke-width:12px;filter:blur(5px)}.blossom-ribbon .path-strand-s1{stroke-width:9px;stroke:#f6bcd2}.blossom-ribbon .path-strand-g1{stroke-width:7.4px;stroke:#4a3441}.blossom-ribbon .path-strand-s2{stroke-width:5.4px;stroke:#f9cadc}.blossom-ribbon .path-strand-g2{stroke-width:4px;stroke:#4e3645}.blossom-ribbon .path-strand-s3{stroke-width:2.4px;stroke:#fbd6e4}.blossom-ribbon .path-strand-g3{stroke-width:1.4px;stroke:#533a49}.blossom-ribbon .path-strand-s4{stroke-width:.7px;stroke:#ffe8f1}.blossom-ribbon svg{width:100%;height:100%;display:block}.blossom-ribbon svg path{vector-effect:non-scaling-stroke}.blossom-ribbon-strand{stroke:#fbd3e4;stroke-width:1.3px}.blossom-ribbon-strand.s1{stroke:#ffe6f0;stroke-width:1.1px;opacity:.9}.blossom-ribbon-strand.s2{stroke:#f4b5cf;stroke-width:1.2px;opacity:.8}@keyframes blossom-drift{0%{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1)) translate(-16px, 10px);opacity:.55}to{transform:rotate(calc(var(--tilt,0deg) + 4deg)) scaleX(var(--flip,1)) translate(16px, -10px);opacity:.85}}.blossom-flower{transform:rotate(var(--tilt,0deg));filter:drop-shadow(0 0 4px #ffcde2e6)drop-shadow(0 0 16px #f096be99);animation:blossom-bloom var(--dur,12s) ease-in-out var(--delay,0s) infinite alternate}.blossom-flower svg{width:100%;height:auto;display:block}.blossom-petal-fill{fill:#f9c9dc}.blossom-heart{fill:#e98bb0}.blossom-stamen{stroke:#e98bb0;stroke-width:1.3px;stroke-linecap:round}.blossom-anther{fill:#fff0f6}@keyframes blossom-bloom{0%{transform:rotate(var(--tilt,0deg)) scale(.9);opacity:.6}to{transform:rotate(calc(var(--tilt,0deg) + 14deg)) scale(1.05);opacity:.95}}.blossom-dust{animation:blossom-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#ffe3ee;border-radius:50%;box-shadow:0 0 6px #ffbedae6}@keyframes blossom-twinkle{0%{opacity:.2}to{opacity:.9}}.blossom-falling{filter:drop-shadow(0 0 4px #ffc8e0cc);animation:blossom-fall var(--dur,18s) linear var(--delay,0s) infinite;top:-30px}.blossom-falling svg{fill:#f9cadd;opacity:.85;width:100%;height:auto;display:block}@keyframes blossom-fall{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:1}50%{transform:translate(var(--sway,40px), 55vh) rotate(calc(var(--spin,360deg) / 2))}92%{opacity:1}to{transform:translate(0, 110vh) rotate(var(--spin,360deg));opacity:0}}@media (prefers-reduced-motion:reduce){.blossom-ribbon,.blossom-flower,.blossom-dust{animation:none}.blossom-fall{display:none}}.blossom-ribbon svg{opacity:.55}.meadow-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.meadow-bokeh,.meadow-flower,.meadow-mote{display:block;position:absolute}.meadow-bokeh{background:radial-gradient(circle, var(--c) 0%, color-mix(in srgb, var(--c) 70%, transparent) 40%, transparent 70%);filter:blur(26px);opacity:.85;animation:meadow-drift var(--dur,30s) ease-in-out var(--delay,0s) infinite alternate;border-radius:50%}@keyframes meadow-drift{0%{transform:translate(-30px,20px)scale(.95)}to{transform:translate(30px,-20px)scale(1.06)}}.meadow-grain{opacity:.12;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;inset:0}.meadow-flower{transform:scaleX(var(--flip,1));transform-origin:55% 95%;filter:drop-shadow(0 0 3px #fffcd6e6)drop-shadow(0 0 12px #ececa080);animation:meadow-flower-sway var(--dur,9s) ease-in-out var(--delay,0s) infinite alternate}.meadow-flower svg{width:100%;height:auto;display:block}.meadow-dots{stroke:#fbf8e2;stroke-width:3px;stroke-dasharray:.1 5}.meadow-dots-fine{stroke-width:2.4px;stroke-dasharray:.1 3.6}.meadow-dots-sparse{stroke-width:3px;stroke-dasharray:.1 8;opacity:.85}.meadow-glint{stroke:#e6f04a;stroke-width:2.6px;stroke-dasharray:.1 13;stroke-dashoffset:4px;opacity:.9}@keyframes meadow-flower-sway{0%{transform:scaleX(var(--flip,1)) rotate(-2deg)}to{transform:scaleX(var(--flip,1)) rotate(2.5deg)}}.meadow-mote{animation:meadow-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#f7f3d6;border-radius:50%;box-shadow:0 0 6px #faf6c8d9}.meadow-mote-warm{background:#eaf06a;box-shadow:0 0 6px #e6f064cc}@keyframes meadow-twinkle{0%{opacity:.15}to{opacity:.85}}@media (prefers-reduced-motion:reduce){.meadow-bokeh,.meadow-flower,.meadow-mote{animation:none}}.cyber-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.cyber-defs{position:absolute}.cyber-piece{transform:rotate(var(--rot,0deg)) scaleX(var(--flip,1));filter:drop-shadow(0 0 6px #ff8cc873)drop-shadow(0 0 22px #78d2e633);opacity:.9;animation:cyber-flicker var(--dur,10s) ease-in-out var(--delay,0s) infinite;display:block;position:absolute}.cyber-piece svg{width:100%;height:auto;display:block;overflow:visible}@keyframes cyber-flicker{0%,to{opacity:.9}48%{opacity:.9}50%{opacity:.65}52%{opacity:.9}}.cyber-scan{background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 3px);position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.cyber-piece{animation:none}}.cyber-piece-small{opacity:.72}.blackcat-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.blackcat-defs{position:absolute}.blackcat-velvet{background-image:radial-gradient(closest-side,#7a223266,#7a223200),radial-gradient(closest-side,#16040957,#16040900),radial-gradient(closest-side,#681c2a42,#681c2a00);background-position:8% 0,72% 320px,38% 820px;background-size:900px 700px,1150px 950px,760px 1300px;position:absolute;inset:0}.blackcat-sparkle{filter:drop-shadow(0 0 3px #ffd6828c);animation:blackcat-glint var(--dur,6s) ease-in-out var(--delay,0s) infinite;display:block;position:absolute}.blackcat-sparkle svg{width:100%;height:100%;display:block}@keyframes blackcat-glint{0%,to{opacity:.7;transform:scale(.82)}50%{opacity:1;transform:scale(1.06)}}.blackcat-glints{position:absolute;top:0;left:0;overflow:visible}.blackcat-twinkle{animation:blackcat-twinkle var(--dur,5s) ease-in-out var(--delay,0s) infinite}@keyframes blackcat-twinkle{0%,to{opacity:.25}50%{opacity:.95}}.blackcat-peek{left:6px;bottom:calc(var(--bottom-nav-h,0px) - 4px);pointer-events:none;z-index:0;width:clamp(88px,22vw,150px);position:fixed}@media (width>=900px) and (height>=501px){.blackcat-peek{left:calc(var(--nav-w) + 14px);bottom:-6px}}.blackcat-peek svg{width:100%;height:auto;display:block;overflow:visible}.blackcat-body{fill:#0c0708;stroke:#8e1d2b;stroke-width:3px;stroke-linejoin:round}.blackcat-whiskers path{fill:none;stroke:#0c0708;stroke-width:3.2px;stroke-linecap:round}.blackcat-eye ellipse{fill:#fbf7f2}.blackcat-pupils ellipse{fill:#0c0708}.blackcat-nose{fill:#fbf7f2}.blackcat-eye{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite blackcat-blink}.blackcat-pupils{animation:13s ease-in-out infinite blackcat-glance}@keyframes blackcat-blink{0%,93%,to{transform:scaleY(1)}95.5%{transform:scaleY(.08)}}@keyframes blackcat-glance{0%,38%,to{transform:translate(0)}44%,58%{transform:translate(-6px)}66%,84%{transform:translate(6px)}}.blackcat-pupils ellipse{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite blackcat-blink}@media (prefers-reduced-motion:reduce){.blackcat-sparkle,.blackcat-twinkle,.blackcat-eye,.blackcat-pupils,.blackcat-pupils ellipse{animation:none}}.snow-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.snow-heaven{background:linear-gradient(#aab6d3 0%,#b6c1db 16%,#c7d0e4 34%,#d7deeb 56%,#e3e8f2 78%,#e8edf500 100%);height:860px;position:absolute;top:0;left:0;right:0;overflow:hidden}.snow-aurora{filter:blur(34px);border-radius:50%;display:block;position:absolute}.snow-aurora-a{background:radial-gradient(#7eceb86b,#0000 70%);width:70%;height:240px;top:-110px;left:34%;transform:rotate(-9deg)}.snow-aurora-b{--dur:34s;background:radial-gradient(#b2a0e657,#0000 70%);width:56%;height:210px;top:-40px;left:54%;transform:rotate(6deg)}.snow-aurora-c{--dur:40s;background:radial-gradient(#78c6d238,#0000 70%);width:40%;height:150px;top:-90px;left:-8%;transform:rotate(-4deg)}@keyframes snow-aurora{0%{opacity:.75;translate:-30px}to{opacity:1;translate:30px 10px}}.snow-rays{background:repeating-linear-gradient(112deg,#0000 0 70px,#ffffff1a 70px 104px,#0000 104px 190px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 50%,#0000 92%);mask-image:linear-gradient(#000 0% 50%,#0000 92%)}.snow-star{filter:drop-shadow(0 0 1.5px #4660968c)drop-shadow(0 0 8px #fffffff2)drop-shadow(0 0 26px #d6e8ffd9);width:clamp(70px,11vw,124px);animation:6s ease-in-out infinite alternate snow-star;position:absolute;top:96px;right:13%}.snow-star svg{fill:#fdfeff;width:100%;height:auto;display:block}.snow-star-small{opacity:.8;width:clamp(30px,4vw,46px);animation-duration:4.5s;top:180px;left:24%;right:auto}@keyframes snow-star{0%{opacity:.85;transform:scale(.94)}to{opacity:1;transform:scale(1.04)}}.snow-firs{opacity:.94;filter:blur(.3px);width:min(46vw,460px);position:absolute;top:330px}.snow-firs svg{width:100%;height:auto;display:block;overflow:visible}.snow-firs-left{left:-3%}.snow-firs-right{top:380px;right:-3%}.snow-fir-bough{fill:#c1cbdf}.snow-fir-snow{fill:#f4f7fb}.snow-fir-far{opacity:.55;filter:blur(.8px)}.snow-drift{fill:#e9eef6}.snow-hill-top{display:none}@media (width<=899px){.snow-hill-top{display:block;top:calc(266px + min(46vw,460px)/1.05263)}}.snow-deer-top{width:clamp(96px,12vw,136px);position:absolute;top:632px;left:11%}.snow-deer-top svg,.snow-deer svg{width:100%;height:auto;display:block;overflow:visible}.snow-deer-zzz{animation:3.8s ease-in-out infinite snow-deer-zzz}@keyframes snow-deer-zzz{0%,to{opacity:.95;transform:translateY(0)}50%{opacity:.55;transform:translateY(-2.5px)}}.snow-deer-flake{transform-box:fill-box;transform-origin:50%;animation:6s linear infinite snow-deer-flake}@keyframes snow-deer-flake{to{transform:translate(19px,-2px)rotate(360deg)}}.snow-defs{position:absolute}.snow-bands-sky{background:repeating-linear-gradient(#e8edf5 0,#d8dfec 169px,#c1cbe1 377px,#aeb9d5 585px,#b2bdd7 741px,#c4cde2 923px,#dbe1ee 1118px,#e8edf5 1300px);position:absolute;bottom:0;left:0;right:0}.snow-bands-sky:before{content:"";background:repeating-linear-gradient(112deg,#0000 0 70px,#ffffff17 70px 104px,#0000 104px 190px);position:absolute;inset:0;-webkit-mask-image:repeating-linear-gradient(#0000 0 156px,#000 468px 806px,#0000 1118px 1300px);mask-image:repeating-linear-gradient(#0000 0 156px,#000 468px 806px,#0000 1118px 1300px)}.snow-band{content-visibility:auto;height:1410px;position:absolute;left:0;right:0}.snow-band-aurora{background:radial-gradient(46% 42% at 38%,#7eceb866,#0000),radial-gradient(40% 38% at 66% 46%,#b2a0e652,#0000);border-radius:50%;width:78%;height:300px;display:block;position:absolute}.snow-band-aurora-left{left:calc(-10% + var(--shift,0%));transform:rotate(-7deg)}.snow-band-aurora-right{right:calc(-10% + var(--shift,0%));transform:rotate(6deg)}.snow-band-star{filter:drop-shadow(0 0 6px #fffffff2)drop-shadow(0 0 16px #d6e8ffbf);display:block;position:absolute}.snow-band-star svg{fill:#fdfeff;width:100%;height:auto;display:block}.snow-band-star-small{opacity:.8;animation-duration:4.5s}.snow-hill{height:320px;position:absolute;left:0;right:0}.snow-hill-land{width:100%;height:100%;position:absolute;inset:0}.snow-band .snow-hill{bottom:0}.snow-band-firs{opacity:.94;width:min(46vw,460px);position:absolute;bottom:146px}.snow-band-firs svg{width:100%;height:auto;display:block;overflow:visible}.snow-band-firs-left{left:-3%}.snow-band-firs-right{right:-3%}.snow-deer{width:clamp(84px,10.5vw,124px);position:absolute;bottom:150px}.snow-deer-left{left:calc(min(46vw,460px)/3.33333)}.snow-deer-right{right:calc(min(46vw,460px)/3.33333)}@media (width>=900px) and (height>=501px){.snow-deer-right{right:calc(var(--nav-w) / 2 + min(46vw, 460px) * .3)}}.snow-glint{will-change:opacity;width:3px;height:3px;animation:snow-glint var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#fff;border-radius:50%;display:block;position:absolute;box-shadow:0 0 5px #fffffff2,0 0 2px #7896c899}@keyframes snow-glint{0%{opacity:.1}to{opacity:.9}}.snow-fall{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.snow-flake{opacity:.95;will-change:transform, opacity;animation:snow-fall var(--dur,14s) linear var(--delay,0s) infinite;background:#fff;border-radius:50%;display:block;position:absolute;top:-24px;box-shadow:0 0 2px #40568680,0 0 6px #ffffffd9}.snow-flake-soft{opacity:.7;box-shadow:0 0 3px #40568659,0 0 9px #fffffff2}.snow-flake-crystal{box-shadow:none;background:0 0;border-radius:0}.snow-flake-crystal svg{width:100%;height:100%;display:block;overflow:visible}.snow-flake-crystal path{fill:none;stroke:#fff;stroke-width:1.7px;stroke-linecap:round}.snow-crystal-halo path{stroke:#4056868c;stroke-width:3.4px}@keyframes snow-fall{0%{opacity:0;transform:translate(0)rotate(0)}6%{opacity:1}50%{transform:translate(var(--sway,30px), 55vh) rotate(calc(var(--spin,180deg) / 2))}94%{opacity:1}to{transform:translate(0, 112vh) rotate(var(--spin,180deg));opacity:0}}@media (prefers-reduced-motion:reduce){.snow-aurora,.snow-star,.snow-band-star,.snow-glint,.snow-deer-zzz,.snow-deer-flake{animation:none}.snow-fall{display:none}}@media (pointer:coarse){.chord-card-practice-actions .btn{min-height:44px}.accompaniment-chord-switch button,.accompaniment-filter button,.accompaniment-repeat button,.chord-category-options button,input[type=range]{min-height:40px}.chord-slot-button,.transpose-slot-button,.accompaniment-speed-btn{min-height:44px}.journey-week-days button{border-radius:999px;flex:1 1 0;width:auto;min-width:32px;max-width:44px;height:40px}.salon-charts-btn{min-height:40px}.salon-page.is-round .slicer-topbar .lesson-shell-back{width:40px;height:40px}}@media (width<=599px),(height<=500px){.navbar-bottom-link>span:last-child{letter-spacing:-.01em;font-size:11px}.lesson-node-chip{font-size:11px}.home-stat>div>span{font-size:clamp(11px,3.2vw,12px)}.chord-card-facts dt,.library-page-grid .chord-card-facts dt{font-size:11.5px}.accompaniment-maker-chords .chord-slot-label,.accompaniment-maker .accompaniment-maker-settings>.accompaniment-maker-slot,.accompaniment-maker .accompaniment-maker-settings>.accompaniment-maker-slot>span,.fp-chart-count,.is-dense .fp-chart-count,.maker-guide-slot span,.arpeggio-step small,.game-card-score span,.packager-option,.lesson-complete-fb-label,.lesson-complete-highlight-badge,.pack-card-odds-chip,.pack-card-badge,.collectible-card-rarity,.collectible-card-pack{font-size:11px}.collection-grid .collectible-card-name{font-size:11.5px}.collection-grid .collectible-card-rarity,.lineup-worn,.lineup-rarity,.lineup-dupes,.progress-card-flag,.progress-bar-row-tag,.journey-chord span,.journey-week-stats span,.achievement-badge-earned-mark,.achievement-badge-progress-label,.achievement-badge-how{font-size:11px}.profile-achievements-grid .achievement-badge-title{font-size:12px}.profile-achievements-grid .achievement-badge-earned-mark,.profile-achievements-grid .achievement-badge-progress-label{font-size:11px}.profile-achievements-grid .achievement-badge-how{letter-spacing:.02em;white-space:normal;font-size:11px}.profile-achievements-grid .achievement-badge-desc{font-size:11.5px}.profile-achievements-grid .achievement-badge-date,.profile-achievements-grid .achievement-badge-reward{font-size:11px}}@media (width<=420px){.profile-achievements-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=360px){.journey-week-days{gap:4px}}.cloud-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;padding:20px 24px;display:flex}.cloud-card .profile-section-title{margin:0 0 4px}.cloud-card-sub{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:600}.cloud-email{color:var(--ink-faint);font-weight:500}.cloud-card-who{align-items:center;gap:14px;min-width:0;display:flex}.cloud-avatar{border-radius:50%;flex:none;width:44px;height:44px}.cloud-status{color:var(--ink-faint);align-items:center;gap:7px;margin:6px 0 0;font-size:12.5px;font-weight:600;display:inline-flex}.cloud-status:empty{display:none}.cloud-status-dot{background:var(--ink-faint);border-radius:50%;flex:none;width:8px;height:8px}.cloud-status-synced{color:var(--green)}.cloud-status-synced .cloud-status-dot{background:var(--green)}.cloud-status-pending .cloud-status-dot,.cloud-status-syncing .cloud-status-dot{background:var(--gold);animation:1s ease-in-out infinite cloud-pulse}.cloud-status-offline{color:var(--orange-dark)}.cloud-status-offline .cloud-status-dot{background:var(--orange)}.cloud-status-error{color:var(--red)}.cloud-status-error .cloud-status-dot{background:var(--red)}@keyframes cloud-pulse{50%{opacity:.35}}.cloud-signin{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.google-web-button{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:999px;min-height:44px;overflow:hidden}.google-web-button iframe{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.cloud-error{color:var(--red);margin:0;font-size:13px;font-weight:600}@media (width<=640px){.cloud-card{flex-direction:column;align-items:stretch}.cloud-signin{align-items:stretch}}.navbar-account{color:var(--ink-faint);align-items:center;gap:7px;min-width:0;margin-top:10px;font-size:12px;font-weight:600;display:flex}.navbar-account a{color:inherit;text-decoration:underline}.navbar-account-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navbar-copyright{color:var(--ink-faint);margin:10px 0 0;font-size:11px}.cloud-card{flex-wrap:wrap}.cloud-actions{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.cloud-delete-link{color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:13px;font-weight:700;text-decoration:underline}.cloud-delete-confirm{border-radius:var(--r-md);background:color-mix(in srgb, var(--red) 8%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--red) 35%, transparent);flex:1 0 100%;padding:14px 16px}.cloud-delete-title{color:var(--ink);margin:0 0 4px;font-weight:800}.cloud-delete-buttons{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.cloud-delete-btn{background:var(--red);color:#fff;box-shadow:0 4px 0 color-mix(in srgb, var(--red) 60%, #000)}@media (pointer:coarse){.cloud-delete-link{min-height:40px}}@media (width<=640px){.cloud-actions{align-items:stretch}}.cloud-legal{color:var(--ink-faint);margin:6px 0 0;font-size:12.5px;font-weight:600}.cloud-legal a{color:var(--gold-dark);padding-block:10px;font-weight:800}.cloud-signin-buttons{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.apple-signin-btn{color:#fff;cursor:pointer;background:#000;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:min(320px,100%);min-height:40px;padding:0 18px;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15.5px;font-weight:500;display:inline-flex}.apple-signin-btn svg{fill:currentColor;flex:none;width:16px;height:16px;margin-top:-2px}.apple-signin-btn:disabled{opacity:.6;cursor:default}:root[data-theme=dark] .apple-signin-btn{color:#000;background:#fff}.cloud-apple-note{max-width:320px;color:var(--ink-faint);margin:0;font-size:12.5px;font-weight:600;line-height:1.4}.cloud-apple-note strong{color:var(--ink-soft)}@media (width<=640px){.cloud-signin-buttons{align-items:stretch}.apple-signin-btn{width:100%}.cloud-apple-note{max-width:none}}.google-signin-btn{color:#3c4043;letter-spacing:.25px;cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:999px;grid-template-columns:18px 1fr 18px;align-items:center;gap:8px;width:min(320px,100%);min-height:40px;margin:2px 0;padding:0 12px;font-family:Roboto,Google Sans,Arial,sans-serif;font-size:14px;font-weight:500;display:grid}.google-signin-btn svg{width:18px;height:18px}@media (hover:hover){.google-signin-btn:hover{background:#f8faff;border-color:#d2e3fc}}@media (width<=640px){.google-signin-btn{width:100%}}.terms-ask-backdrop{z-index:100;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:#080a148c;animation:.2s both terms-ask-fade;display:grid;position:fixed;inset:0;overflow-y:auto}@keyframes terms-ask-fade{0%{opacity:0}}.terms-ask{border-radius:var(--r-xl,22px);background:var(--surface);width:100%;min-width:0;max-width:380px;color:var(--ink);box-shadow:var(--shadow-lg);text-align:center;outline:none;flex-direction:column;align-items:center;gap:12px;margin:auto;padding:24px 22px 14px;display:flex}.terms-ask h2{margin:0}.terms-ask p{color:var(--ink-soft);text-wrap:pretty;margin:0;font-weight:600;line-height:1.5}.terms-ask a{color:var(--gold-dark);font-weight:800}.terms-ask .google-web-button,.terms-ask .apple-signin-btn{margin-top:4px}.terms-ask .terms-ask-status{color:var(--ink-faint);font-size:13px}.terms-ask-cancel{min-height:40px;color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 18px;font-size:14px;font-weight:800}@media (hover:hover){.terms-ask-cancel:hover{color:var(--ink)}}@media (prefers-reduced-motion:reduce){.terms-ask-backdrop{animation:none}}.cloud-signin-or{width:min(320px,100%);color:var(--ink-faint);align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;display:flex}.cloud-signin-or:before,.cloud-signin-or:after{content:"";background:var(--line);flex:1;height:1px}.email-signin{flex-direction:column;gap:8px;width:min(320px,100%);display:flex}.email-signin-label{color:var(--ink-soft);font-size:13px;font-weight:800}.email-signin-input{box-sizing:border-box;border:2px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--ink);font-family:var(--font-body);border-radius:999px;padding:10px 16px;font-size:16px;font-weight:600}.email-signin-input:focus{border-color:var(--gold);outline:none}.email-signin-input[aria-invalid=true]{border-color:var(--red)}.email-signin-code{letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.email-signin-code::placeholder{color:var(--ink-faint);opacity:.45}.email-signin-btn{padding:11px 22px;font-size:15px}.email-signin-sent{color:var(--ink-soft);overflow-wrap:anywhere;margin:0;font-size:13.5px;font-weight:600;line-height:1.45}.email-signin-sent strong{color:var(--ink)}.email-signin-links{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;display:flex}.email-signin-link{min-height:32px;color:var(--gold-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:13px;font-weight:800;text-decoration:underline}.email-signin-link:disabled{color:var(--ink-faint);cursor:default;text-decoration:none}.email-signin-hint{color:var(--ink-faint);margin:0;font-size:12.5px;font-weight:600}@media (pointer:coarse){.email-signin-link{min-height:40px}}@media (width<=640px){.cloud-signin-or,.email-signin{width:100%}}.posture-points{text-align:left;color:var(--ink-soft);gap:8px;margin:0;padding:0;font-size:14px;line-height:1.45;list-style:none;display:grid}.posture-points li{overflow-wrap:anywhere}.posture-points strong{color:var(--ink)}.posture-tips{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;max-width:520px;margin:0 auto 14px}.posture-tips-toggle{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:var(--r-md);background:0 0;border:0;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:700;display:flex}.posture-tips-toggle:focus-visible{outline:3px solid var(--path-accent,var(--gold));outline-offset:2px}.posture-tips-chevron{color:var(--ink-soft);margin-left:auto}.posture-tips-panel{padding:0 14px 12px}.posture-drawing{max-width:640px;margin:0 auto 10px}.posture-views{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:10px;display:flex}.posture-view{flex-direction:column;flex:280px;align-items:center;gap:4px;min-width:0;max-width:360px;display:flex}.posture-view-front{flex-basis:230px;max-width:300px}.posture-view svg{background:#fffdf9;border-radius:12px;width:100%;height:auto;display:block;box-shadow:0 0 0 1.5px #281e1e2e}.posture-view-name{color:var(--ink-soft);font-size:12px;font-weight:700}.posture-hand{fill:#f3d2b6;stroke:#3a2a24;stroke-width:2px;stroke-linejoin:round}.posture-digit-ink{fill:none;stroke:#3a2a24;stroke-width:17px;stroke-linecap:round;stroke-linejoin:round}.posture-digit{fill:none;stroke:#f3d2b6;stroke-width:13px;stroke-linecap:round;stroke-linejoin:round}.posture-line{fill:none;stroke:#3a2a24;stroke-width:1.6px;stroke-linecap:round}.posture-line-faint{stroke-opacity:.6}.posture-white-key{fill:#fffdf8;stroke:#6e6259;stroke-width:1.5px}.posture-key-edge{stroke:#6e6259;stroke-width:1.2px}.posture-black-key{fill:#241c1c}.posture-piano{fill:#d9cdbf;stroke:#6e6259;stroke-width:1.2px}.posture-guide{stroke:#2f8f66;stroke-width:1.5px;stroke-dasharray:5 4}.posture-ball{fill:#2f8f6614;stroke:#2f8f66;stroke-width:1.6px;stroke-dasharray:5 4}.posture-pointer{fill:none;stroke:#6e6259;stroke-width:1.2px}.posture-touch{fill:#2f8f66}.posture-label{font:700 13px var(--font-body);fill:#3a2a24}.quest-notice-region{top:calc(env(safe-area-inset-top,0px) + 12px);z-index:5;pointer-events:none;width:min(360px,100% - 96px);position:absolute;right:16px}.quest-notice{pointer-events:auto;border-radius:var(--r-lg);border:1.5px solid var(--gold-dark);background:var(--surface);box-shadow:var(--shadow-lg);color:var(--ink);align-items:center;gap:10px;padding:8px 8px 8px 12px;animation:.25s ease-out quest-notice-in;display:flex}@keyframes quest-notice-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.quest-notice-icon{flex:none;font-size:22px;line-height:1}.quest-notice-text{flex:1;gap:1px;min-width:0;display:grid}.quest-notice-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);font-size:10.5px;font-weight:800}:root[data-theme=dark] .quest-notice-eyebrow{color:var(--gold)}.quest-notice-text strong{overflow-wrap:anywhere;font-size:14px;line-height:1.25}.quest-notice-reward{color:var(--ink-soft);align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.quest-notice-collect{background:linear-gradient(180deg, var(--gold-light,#f6dc8f), var(--gold));color:#1b1718;min-height:40px;font:800 14px var(--font-body);cursor:pointer;border:0;border-radius:999px;flex:none;padding:0 14px}.quest-notice-close{width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;font-size:14px;font-weight:800}@media (hover:hover){.quest-notice-close:hover{background:var(--bg-soft);color:var(--ink)}}@media (width<=760px){.quest-notice-region{top:calc(env(safe-area-inset-top,0px) + 8px);width:auto;left:68px;right:8px}.quest-notice{gap:8px;padding:6px 6px 6px 10px}.quest-notice-icon{font-size:18px}.quest-notice-text strong{font-size:13px}.quest-notice-collect{min-height:36px;padding:0 12px;font-size:13px}}@media (prefers-reduced-motion:reduce){.quest-notice{animation:none}}
