.arcade-note-container{position:absolute;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:10}.arcade-note-tail{position:absolute;bottom:50%;left:0;right:0;background-color:var(--v-cyan);opacity:.8;z-index:5;border:1px solid rgba(255,255,255,.1);image-rendering:pixelated}.arcade-note-head{width:100%;height:100%;background-color:var(--v-cyan);border:1px solid rgba(255,255,255,.6);box-sizing:border-box;display:flex;align-items:center;justify-content:center}.landing-zone-active{border:2px solid var(--v-cyan);box-shadow:0 0 15px var(--v-cyan);border-radius:4px}.arcade-holo-view{position:relative;width:100%;height:100%;display:flex;flex-direction:column;gap:10px;padding:10px 16px;overflow:hidden;background:radial-gradient(circle at 52% 30%,rgba(56,197,162,.14),transparent 28%),radial-gradient(circle at 78% 64%,rgba(255,46,144,.12),transparent 30%),linear-gradient(180deg,#071018,#040a0e 48%,#020405)}.arcade-holo-view:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,46,144,.08),transparent 18%,transparent 82%,rgba(56,197,162,.07)),repeating-linear-gradient(0deg,transparent 0 44px,rgba(255,255,255,.018) 45px);mix-blend-mode:screen}.arcade-holo-damage-flash{position:absolute;inset:0;z-index:180;pointer-events:none;opacity:var(--damage-opacity, .65);background:radial-gradient(circle at 50% 58%,transparent 0 38%,rgba(255,31,44,.22) 72%,rgba(255,0,30,.72) 100%),linear-gradient(90deg,rgba(255,0,38,.42),transparent 18%,transparent 82%,rgba(255,0,38,.42));mix-blend-mode:screen;animation:arcadeDamageFlash .62s ease-out forwards}.arcade-holo-damage-flash:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,transparent 0 46%,rgba(255,30,40,.12) 49%,transparent 53%),linear-gradient(90deg,transparent 0 46%,rgba(255,30,40,.1) 49%,transparent 53%);filter:blur(2px)}.arcade-holo-topbar,.arcade-holo-transport,.arcade-holo-inspector{border:1px solid rgba(255,255,255,.09);background:#050b10c2;box-shadow:0 18px 60px #00000061,inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.arcade-holo-topbar{position:relative;z-index:30;display:grid;grid-template-columns:1.1fr 1.1fr 1fr .62fr auto;gap:0;min-height:78px;border-radius:12px;overflow-y:auto}.arcade-holo-topcell,.arcade-holo-beat{padding:12px 20px;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}.arcade-holo-topcell span,.arcade-holo-beat span,.arcade-holo-inspector>span,.arcade-holo-transport-stat span{color:#ffffff85;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.arcade-holo-topcell strong{color:#f7f4ee;font-size:clamp(1.18rem,2.2vw,2rem);line-height:1}.arcade-holo-topcell.compact strong{color:var(--v-pink);font-size:2.1rem}.arcade-holo-topcell small,.arcade-holo-inspector-title small{color:#ffffffad;font-size:.88rem}.arcade-holo-beat{min-width:116px}.arcade-holo-beat div{display:flex;gap:8px}.arcade-holo-beat i{width:10px;height:10px;border-radius:50%;background:#ffffff21}.arcade-holo-beat i.active{background:var(--v-cyan);box-shadow:0 0 18px var(--v-cyan)}.arcade-holo-main{position:relative;z-index:4;flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(560px,1fr) 280px;gap:18px;align-items:stretch}.arcade-holo-stage{position:relative;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}.arcade-holo-stage.hit-impact{animation:arcadeStageHit .22s cubic-bezier(.14,.82,.22,1)}.arcade-holo-stage.miss-impact{animation:arcadeStageMiss .28s cubic-bezier(.16,.76,.24,1)}.arcade-holo-tunnel-shell{position:relative;width:min(76vw,920px);height:100%;min-height:360px;max-height:calc(100vh - 215px);border-radius:22px;overflow:hidden;perspective:1400px;background:radial-gradient(ellipse at 50% 20%,rgba(56,197,162,.2),transparent 36%),linear-gradient(180deg,#38c5a2bd,#020405f0);box-shadow:inset 0 0 90px #38c5a212,inset 0 0 130px #ff2e900f}.arcade-holo-tunnel-shell.hit-impact{animation:arcadeTunnelHit .22s cubic-bezier(.14,.82,.22,1)}.arcade-holo-tunnel-shell.miss-impact{animation:arcadeTunnelMiss .28s cubic-bezier(.16,.76,.24,1)}.arcade-holo-side-wall{position:absolute;top:4%;bottom:5%;width:24%;opacity:.58;pointer-events:none;background:repeating-linear-gradient(180deg,transparent 0 28px,rgba(255,255,255,.045) 29px 30px),linear-gradient(90deg,rgba(255,46,144,.18),transparent)}.arcade-holo-side-wall.left{left:0;clip-path:polygon(0 0,76% 12%,50% 100%,0 100%)}.arcade-holo-side-wall.right{right:0;transform:scaleX(-1);clip-path:polygon(0 0,76% 12%,50% 100%,0 100%)}.arcade-holo-depth-lines{position:absolute;inset:7% 17% 12%;pointer-events:none;background:linear-gradient(100deg,transparent 0 48%,rgba(56,197,162,.44) 49%,transparent 50%),linear-gradient(80deg,transparent 0 48%,rgba(56,197,162,.44) 49%,transparent 50%),repeating-linear-gradient(180deg,transparent 0 44px,rgba(56,197,162,.14) 45px 46px);opacity:.58;transform:perspective(1100px) rotateX(56deg);transform-origin:50% 100%}.arcade-holo-vanish{position:absolute;top:8%;left:50%;width:360px;height:230px;transform:translate(-50%);pointer-events:none;background:radial-gradient(ellipse,rgba(56,197,162,.28),transparent 68%);filter:blur(20px)}.arcade-holo-grid-plane{position:absolute;left:50%;bottom:3%;z-index:8;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(24,minmax(0,1fr));gap:6px;width:min(70vh,610px);max-width:76%;aspect-ratio:8 / 24;padding:10px;border-radius:18px;border:1px solid rgba(56,197,162,.18);background:linear-gradient(180deg,#04090d9e,#010202f2);box-shadow:0 40px 80px #000000ad,0 0 48px #38c5a214,inset 0 0 30px #000000e6;transform:translate(-50%) rotateX(56deg);transform-origin:50% 100%;transform-style:preserve-3d;overflow:hidden}.arcade-holo-hand-divider{position:absolute;top:1.5%;bottom:1.5%;left:50%;width:1px;transform:translate(-50%);background:linear-gradient(180deg,transparent,rgba(255,255,255,.16) 18%,rgba(56,197,162,.24) 50%,rgba(255,255,255,.16) 82%,transparent);opacity:.42;pointer-events:none;z-index:4}.arcade-static-cell.arcade-target-cell{position:relative;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--target-color) 62%,transparent)}.arcade-static-cell.arcade-target-cell:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;transform:translate(-50%,-50%);background:color-mix(in srgb,var(--target-color) 45%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--target-color) 60%,transparent);pointer-events:none;animation:arcadeTargetBreath var(--target-pulse-duration, 1.1s) ease-in-out infinite}@keyframes arcadeTargetBreath{0%,to{opacity:.42;transform:translate(-50%,-50%) scale(.86)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.14)}}.arcade-static-cell.arcade-active-target-cell:after{width:11px;height:11px;background:#f7f4ee;box-shadow:0 0 12px var(--v-cyan),0 0 22px color-mix(in srgb,var(--v-cyan) 68%,transparent)}.arcade-static-cell.arcade-ghost-cell{background:#ffffff05!important;border-color:#38c5a20b!important;box-shadow:none!important}.arcade-holo-chord-geometry{position:absolute;inset:0;z-index:1;transform:translateZ(-8px);transform-style:flat;width:100%;height:100%;pointer-events:none;overflow:visible}.arcade-geometry-hint{position:relative;z-index:12;align-self:flex-start;margin:8px 0 0;color:#ffffff94;font-size:.62rem;font-weight:800;letter-spacing:.12em}.arcade-harmonic-link{fill:none;pointer-events:none}.arcade-holo-grid-plane.hit-impact{animation:arcadeGridHit .22s cubic-bezier(.14,.82,.22,1)}.arcade-holo-grid-plane.miss-impact{animation:arcadeGridMiss .28s cubic-bezier(.16,.76,.24,1)}.arcade-holo-note-pad{position:absolute;z-index:24;pointer-events:none;overflow:visible;aspect-ratio:1 / 1;border-radius:0;border:0;background:transparent;box-shadow:none;transform:translateZ(22px);transition:opacity .08s linear,border-color .08s linear,box-shadow .08s linear}.arcade-holo-note-pad.arcade-hand-left .arcade-note-head{border-color:#ffd36a}.arcade-holo-note-pad.arcade-hand-right .arcade-note-head{border-color:#38c5a2}.arcade-holo-note-pad.arcade-hand-left:before,.arcade-holo-note-pad.arcade-hand-right:before{opacity:.72;height:3px}.arcade-holo-note-pad.arcade-hand-left:before{background:#ffd36a;box-shadow:0 0 12px #ffd36abf}.arcade-holo-note-pad.arcade-hand-right:before{background:#38c5a2;box-shadow:0 0 12px #38c5a2bf}.arcade-note-phase{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;color:#071018;font-size:clamp(7px,.58vw,10px);font-weight:900;letter-spacing:.06em;line-height:1;pointer-events:none;text-shadow:0 0 5px rgba(255,255,255,.8)}.arcade-holo-note-pad[data-phase=hold] .arcade-note-phase{color:#f7f4ee;text-shadow:0 0 5px rgba(0,0,0,.9)}.arcade-holo-note-pad[data-phase=release] .arcade-note-phase{color:#ffd36a}.arcade-note-stem{position:absolute;left:50%;bottom:calc(50% + 10px);width:8px;height:calc(var(--duration-cells, 1) * 100%);min-width:8px;border-radius:999px;transform:translate(-50%) scaleY(var(--consumption-ratio, 1));transform-origin:bottom center;z-index:0;background:color-mix(in srgb,var(--chord-color) 68%,white 32%);box-shadow:0 0 8px color-mix(in srgb,var(--chord-color) 60%,transparent)}.arcade-note-head{position:absolute;left:50%;bottom:50%;width:18px;height:18px;min-width:18px;border-radius:6px;transform:translate(-50%);background:var(--chord-color);border:1px solid rgba(255,255,255,.7);box-shadow:0 0 10px var(--chord-color),0 0 2px #ffffffe6;z-index:1;opacity:var(--crossing-fade, 1);transition:opacity .05s linear}.arcade-note-hand{position:absolute;left:50%;bottom:calc(50% + 13px);transform:translate(-50%);color:#071018;font-size:9px;line-height:1;font-weight:900;letter-spacing:0;text-shadow:0 0 4px rgba(255,255,255,.65);pointer-events:none;z-index:2}.arcade-hand-left .arcade-note-hand{color:#ffd36a}.arcade-hand-right .arcade-note-hand{color:#38c5a2}.arcade-holo-note-pad:before{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;opacity:0;pointer-events:none;background:#ffffffdb;box-shadow:0 0 14px #ffffffe6,0 0 28px var(--chord-color);transition:opacity .08s linear}.arcade-holo-note-pad:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:var(--release-warning, 0);background:radial-gradient(circle at 50% 76%,rgba(255,255,255,.34),transparent 20%),linear-gradient(180deg,#ff54300d,#ff2a1ed1);mix-blend-mode:screen;transition:opacity .08s linear}.arcade-holo-magnetic-link{position:absolute;z-index:0;pointer-events:none;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--chord-color) 88%,white 12%),color-mix(in srgb,var(--chord-color) 58%,transparent) 44%,#ffffff0d);box-shadow:0 0 calc(12px + 20px * var(--urgency, 0)) color-mix(in srgb,var(--chord-color) 62%,transparent),0 0 calc(18px + 30px * var(--urgency, 0)) color-mix(in srgb,var(--chord-color) 30%,transparent),inset 0 0 12px #ffffff2e;mix-blend-mode:screen;filter:blur(.2px) saturate(calc(1 + var(--urgency, 0) * .55));transform:translateZ(8px) scaleX(calc(.72 + var(--urgency, 0) * .28));transform-origin:50% 100%}.arcade-holo-magnetic-link:before,.arcade-holo-magnetic-link:after,.arcade-holo-magnetic-link i,.arcade-holo-magnetic-link b{content:"";position:absolute;pointer-events:none}.arcade-holo-magnetic-link:before{inset:0 -55%;border-radius:999px;background:radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.36),color-mix(in srgb,var(--chord-color) 36%,transparent) 36%,transparent 72%);filter:blur(7px)}.arcade-holo-magnetic-link:after{inset:0 44%;border-radius:inherit;background:linear-gradient(180deg,#ffffffeb,color-mix(in srgb,var(--chord-color) 76%,white 8%) 42%,#ffffff47);box-shadow:0 0 12px #ffffff85}.arcade-holo-magnetic-link i{left:50%;bottom:-8px;width:150%;aspect-ratio:1;border-radius:50%;transform:translate(-50%) scale(calc(.72 + var(--urgency, 0) * .32));background:radial-gradient(circle,rgba(255,255,255,.82),color-mix(in srgb,var(--chord-color) 70%,transparent) 38%,transparent 70%);filter:blur(4px)}.arcade-holo-magnetic-link b{left:50%;top:-4px;width:105%;height:8px;border-radius:999px;transform:translate(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);opacity:calc(.2 + var(--urgency, 0) * .62)}.arcade-holo-magnetic-link.held{box-shadow:0 0 calc(18px + 26px * var(--urgency, 0)) color-mix(in srgb,var(--chord-color) 72%,transparent),0 0 calc(26px + 38px * var(--urgency, 0)) color-mix(in srgb,var(--chord-color) 38%,transparent),inset 0 0 16px #ffffff3d}.arcade-holo-magnetic-link.release-soon{background:linear-gradient(180deg,color-mix(in srgb,#FFD36A 72%,white 16%),color-mix(in srgb,#FFD36A 58%,transparent) 44%,#ffd36a0f);box-shadow:0 0 calc(18px + 28px * var(--urgency, 0)) #ffd36a8f,0 0 calc(26px + 38px * var(--urgency, 0)) #ffd36a47,inset 0 0 16px #ffffff38}.arcade-holo-magnetic-link.release-now{background:linear-gradient(180deg,color-mix(in srgb,#ff3f35 78%,white 14%),#ff3f358f 44%,#ff3f3514);box-shadow:0 0 30px #ff3f35a8,0 0 54px #ff3f3557,inset 0 0 18px #ffffff3d;animation:magneticReleasePulse .16s linear infinite alternate}.arcade-holo-magnetic-link.urgent{animation:magneticLinkPulse .24s linear infinite alternate}.arcade-holo-magnetic-link.consuming{box-shadow:0 0 28px color-mix(in srgb,var(--chord-color) 76%,transparent),0 0 52px color-mix(in srgb,var(--chord-color) 42%,transparent),inset 0 0 18px #ffffff42}.arcade-holo-note-pad.sustained{border-color:color-mix(in srgb,var(--chord-color) 70%,white 18%);box-shadow:0 0 22px var(--chord-color),0 18px 34px #0000007a,inset 0 -28px 36px color-mix(in srgb,var(--chord-color) 34%,transparent)}.arcade-holo-note-pad.held{filter:saturate(1.14);box-shadow:0 0 30px var(--chord-color),0 0 54px color-mix(in srgb,var(--chord-color) 36%,transparent),0 18px 34px #0000007a,inset 0 -28px 36px color-mix(in srgb,var(--chord-color) 34%,transparent)}.arcade-holo-note-pad.release-soon{border-color:#ffffffe6;box-shadow:0 0 30px #ff3828,0 0 58px color-mix(in srgb,#ff3828 54%,var(--chord-color)),0 18px 34px #0000007a,inset 0 -28px 36px #ff372461}.arcade-holo-note-pad.overheld{border-color:#fffffff2;background:radial-gradient(circle at 45% 38%,rgba(255,255,255,.42),transparent 16%),linear-gradient(180deg,#ff6b5d,#ff2f2f 46%,#7a0808);box-shadow:0 0 34px #ff3434,0 0 70px #ff343480,0 18px 34px #00000080,inset 0 -28px 38px #ffffff2e;animation:holoOverheldPulse .22s linear infinite alternate}.arcade-holo-note-pad.played{filter:saturate(.9)}.arcade-holo-note-pad.consuming{border-color:color-mix(in srgb,var(--chord-color) 54%,white 38%);box-shadow:0 0 26px var(--chord-color),0 0 44px color-mix(in srgb,var(--chord-color) 30%,transparent),0 18px 34px #0000007a,inset 0 -18px 30px color-mix(in srgb,var(--chord-color) 42%,transparent)}.arcade-holo-note-pad.consuming:before{opacity:.95}.arcade-holo-note-pad.held.played{filter:saturate(1.14)}.arcade-holo-note-pad.late{animation:holoLatePulse .32s linear infinite alternate}.arcade-holo-note-pad.timing-early{border-color:color-mix(in srgb,#38C5A2 62%,white 12%);box-shadow:0 0 calc(16px * var(--impact-strength, 1)) color-mix(in srgb,#38C5A2 72%,transparent),0 14px 28px #00000073,inset 0 -18px 28px color-mix(in srgb,#38C5A2 28%,transparent)}.arcade-holo-note-pad.timing-late{border-color:color-mix(in srgb,#FFD36A 62%,white 12%);box-shadow:0 0 calc(16px * var(--impact-strength, 1)) color-mix(in srgb,#FFD36A 72%,transparent),0 14px 28px #00000073,inset 0 -18px 28px color-mix(in srgb,#FFD36A 28%,transparent)}.arcade-holo-note-pad.impact-hit{animation:holoImpactPop .22s cubic-bezier(.14,.82,.22,1) both}.arcade-holo-note-pad.impact-hit:before{opacity:1;animation:holoImpactLine .22s ease-out forwards}.arcade-holo-note-pad.impact-miss{animation:holoImpactMiss .24s cubic-bezier(.16,.76,.24,1) both}.arcade-holo-note-pad.impact-miss:before{opacity:1;background:linear-gradient(90deg,transparent,rgba(255,68,68,.96),transparent);box-shadow:0 0 12px #ff4444e6,0 0 24px #f449;animation:holoImpactLine .2s ease-out forwards}.arcade-holo-note-pad.impact-miss:after{opacity:1;background:radial-gradient(circle at 50% 76%,rgba(255,94,94,.4),transparent 22%),linear-gradient(180deg,#ff412d14,#ff2819d6)}.arcade-holo-hit-burst{position:absolute;z-index:90;pointer-events:none;display:grid;place-items:center;animation:holoHitCell .46s cubic-bezier(.18,.9,.22,1) forwards}.arcade-holo-hit-burst:before,.arcade-holo-hit-burst:after,.arcade-holo-hit-burst i,.arcade-holo-hit-burst b{content:"";position:absolute;inset:4px;border-radius:8px}.arcade-holo-hit-burst:before{border:2px solid var(--chord-color);box-shadow:0 0 22px var(--chord-color),inset 0 0 16px color-mix(in srgb,var(--chord-color) 58%,transparent);animation:holoHitRing .46s ease-out forwards}.arcade-holo-hit-burst:after{background:radial-gradient(circle,color-mix(in srgb,var(--chord-color) 82%,white 12%),transparent 62%);filter:blur(8px);animation:holoHitFlash .28s ease-out forwards}.arcade-holo-hit-burst i{inset:-8px;border:1px solid color-mix(in srgb,var(--chord-color) 68%,white 12%);opacity:.75;animation:holoHitShockwave .56s ease-out forwards}.arcade-holo-hit-burst b{inset:-5px 1px auto;height:9px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.94) 18%,var(--chord-color) 50%,rgba(255,255,255,.94) 82%,transparent);box-shadow:0 0 14px #ffffffb8,0 0 28px var(--chord-color),0 8px 22px color-mix(in srgb,var(--chord-color) 42%,transparent);animation:holoContactEdge .42s ease-out forwards}.arcade-holo-hit-burst.perfect:before{border-color:#f7f4ee;box-shadow:0 0 26px #f7f4ee,0 0 42px var(--chord-color),inset 0 0 20px var(--chord-color)}.arcade-holo-hit-burst.early:before{border-color:#38c5a2;box-shadow:0 0 calc(18px * var(--burst-strength, 1)) #38c5a2f2,inset 0 0 18px #38c5a280}.arcade-holo-hit-burst.early:after{background:radial-gradient(circle,rgba(56,197,162,.88),transparent 62%)}.arcade-holo-hit-burst.early i,.arcade-holo-hit-burst.early b{border-color:#38c5a2f0}.arcade-holo-hit-burst.late:before{border-color:#ffd36a;box-shadow:0 0 calc(18px * var(--burst-strength, 1)) #ffd36af2,inset 0 0 18px #ffd36a80}.arcade-holo-hit-burst.late:after{background:radial-gradient(circle,rgba(255,211,106,.88),transparent 62%)}.arcade-holo-hit-burst.late i,.arcade-holo-hit-burst.late b{border-color:#ffd36af0}.arcade-holo-inspector{position:relative;z-index:20;align-self:center;min-height:340px;max-height:calc(100vh - 245px);overflow:hidden;padding:24px;border-radius:14px}.arcade-holo-inspector-title{display:flex;align-items:baseline;gap:10px;margin:12px 0 14px}.arcade-holo-inspector-title strong{color:#f7f4ee;font-size:2.35rem;line-height:1}.arcade-holo-note-list{display:flex;gap:8px;flex-wrap:wrap}.arcade-holo-note-list i{display:inline-flex;min-width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(255,46,144,.44);color:var(--v-pink);font-style:normal;font-size:.8rem;font-weight:800}.arcade-holo-preview-stack{display:grid;gap:12px}.arcade-holo-side-preview{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:12px;align-items:center;padding:12px;border-radius:12px;background:linear-gradient(135deg,#ffffff0e,#ffffff05),#0003;border:1px solid rgba(255,255,255,.08)}.arcade-holo-side-preview span{display:block;color:#ffffff85;font-size:.64rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.arcade-holo-side-preview strong{display:block;margin-top:6px;color:#f7f4ee;font-size:1.55rem;line-height:1}.arcade-holo-side-preview small{display:block;margin-top:5px;color:#ffffffa3;font-size:.7rem;line-height:1.2}.arcade-holo-divider{height:1px;margin:22px 0;background:#ffffff14}.arcade-holo-mini-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;width:168px;padding:8px;margin-top:12px;border-radius:10px;background:#00000052;border:1px solid rgba(255,255,255,.08)}.arcade-holo-mini-grid.tiny{width:112px;gap:3px;padding:6px;margin-top:0}.arcade-holo-mini-grid.side{width:96px;gap:3px;padding:6px;margin-top:0;border-color:color-mix(in srgb,var(--chord-color) 38%,rgba(255,255,255,.08));box-shadow:0 0 18px color-mix(in srgb,var(--chord-color) 22%,transparent)}.arcade-holo-mini-grid.approach{width:176px;gap:5px;padding:9px;margin-top:3px;background:#00000038;border-color:color-mix(in srgb,var(--chord-color) 42%,transparent);box-shadow:0 0 34px color-mix(in srgb,var(--chord-color) 28%,transparent)}.arcade-holo-mini-pad{aspect-ratio:1;border-radius:3px;background:#ffffff17;border:1px solid rgba(255,255,255,.06)}.arcade-holo-mini-pad.active{background:var(--chord-color);border-color:#ffffffbd;box-shadow:0 0 14px var(--chord-color)}.arcade-holo-empty-shape{display:grid;place-items:center;width:96px;aspect-ratio:1;border-radius:10px;border:1px dashed rgba(255,255,255,.12);color:#ffffff52;font-size:.62rem;font-weight:850;text-transform:uppercase}.arcade-holo-status{display:grid;gap:10px;margin:14px 0 0}.arcade-holo-status div{display:flex;align-items:center;justify-content:space-between;gap:16px}.arcade-holo-status dt{color:#ffffff73;font-size:.72rem;text-transform:uppercase}.arcade-holo-status dd{margin:0;color:#fffc;font-size:.78rem;font-weight:800}.arcade-holo-status dd.online{color:var(--v-cyan)}.arcade-holo-status dd.offline{color:var(--v-pink)}.arcade-holo-transport{position:relative;z-index:30;min-height:68px;border-radius:12px;display:grid;grid-template-columns:130px 94px 86px minmax(170px,220px) repeat(3,minmax(72px,1fr));align-items:center;gap:14px;padding:10px 18px;overflow:hidden}.arcade-holo-metronome-host{height:58px;min-width:0;display:flex;align-items:center;overflow:hidden}.arcade-holo-metronome-host>*{transform:scale(.72);transform-origin:left center}.arcade-holo-play,.arcade-holo-primary{border:0;border-radius:999px;color:#071018;background:linear-gradient(135deg,var(--v-pink),#FF2E90);box-shadow:0 0 28px #ff2e9085;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.arcade-holo-play{min-height:48px}.arcade-holo-reset{min-height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffffbd;font-weight:850;text-transform:uppercase}.arcade-holo-transport-stat{min-width:0}.arcade-holo-transport-stat strong{display:block;margin-top:4px;color:#f7f4ee;font-size:1.12rem}.arcade-holo-start-overlay{position:absolute;inset:0;z-index:120;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:#030608d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.arcade-holo-kicker{color:var(--v-cyan);font-size:.72rem;font-weight:900;letter-spacing:.28em;text-transform:uppercase}.arcade-holo-start-overlay h2{margin:12px 0 24px;color:#f7f4ee;font-size:clamp(1.8rem,5vw,3.6rem);letter-spacing:.02em}.arcade-holo-start-overlay h2 span{color:var(--v-cyan);text-shadow:0 0 28px rgba(56,197,162,.58)}.arcade-holo-lesson-picker{width:min(380px,90%);margin-bottom:20px}.arcade-holo-primary{padding:16px 44px}@keyframes feedbackFloat{0%{transform:translateY(0) scale(.5);opacity:1}20%{transform:translateY(-20px) scale(1.2);opacity:1}to{transform:translateY(-60px) scale(1);opacity:0}}@keyframes holoHitCell{0%{opacity:1;transform:translateZ(40px) scale(.86)}42%{opacity:1;transform:translateZ(64px) scale(1.12)}to{opacity:0;transform:translateZ(30px) scale(1.32)}}@keyframes holoHitRing{0%{opacity:1;transform:scale(.72)}to{opacity:0;transform:scale(1.9)}}@keyframes holoHitFlash{0%{opacity:.92;transform:scale(.74)}to{opacity:0;transform:scale(1.42)}}@keyframes holoHitShockwave{0%{opacity:.8;transform:scale(.62)}to{opacity:0;transform:scale(2.25)}}@keyframes holoContactEdge{0%{opacity:1;transform:scaleX(.28) translateY(0)}42%{opacity:1;transform:scaleX(1.12) translateY(-1px)}to{opacity:0;transform:scaleX(1.34) translateY(-5px)}}@keyframes arcadeDamageFlash{0%{opacity:var(--damage-opacity, .65);transform:scale(1)}22%{opacity:calc(var(--damage-opacity, .65) * .72);transform:scale(1.006)}to{opacity:0;transform:scale(1.018)}}@keyframes particleOut{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(18px,-42px) scale(0);opacity:0}}@keyframes holoLatePulse{0%{filter:saturate(1);transform:translateZ(22px) scale(1)}to{filter:saturate(1.4);transform:translateZ(30px) scale(1.04)}}@keyframes holoOverheldPulse{0%{filter:saturate(1.2);transform:translateZ(24px) scale(1)}to{filter:saturate(1.8);transform:translateZ(34px) scale(1.035)}}@keyframes holoImpactPop{0%{filter:saturate(1.05) brightness(1);transform:translateZ(22px) scale(1) skew(0)}48%{filter:saturate(1.22) brightness(1.16);transform:translateZ(30px) scale(1.045) skew(-1.6deg)}to{filter:saturate(1.02) brightness(1.02);transform:translateZ(24px) scale(1.01) skew(0)}}@keyframes holoImpactMiss{0%{filter:saturate(1.08) brightness(1);transform:translateZ(22px) scale(1) skew(0)}35%{filter:saturate(1.42) brightness(1.14);transform:translateZ(28px) scale(.98) skew(2.2deg)}to{filter:saturate(1.12) brightness(1.02);transform:translateZ(22px) scale(1.015) skew(0)}}@keyframes holoImpactLine{0%{opacity:0;transform:scaleX(.58)}to{opacity:1;transform:scaleX(1)}}@keyframes arcadeStageHit{0%{transform:translate(0) translateY(0) scale(1);filter:brightness(1)}36%{transform:translate(-1px) translateY(1px) scale(1.003);filter:brightness(1.06)}to{transform:translate(0) translateY(0) scale(1);filter:brightness(1)}}@keyframes arcadeStageMiss{0%{transform:translate(0) translateY(0) scale(1);filter:brightness(1)}30%{transform:translate(1.8px) translateY(.8px) scale(1.004);filter:brightness(1.12)}to{transform:translate(0) translateY(0) scale(1);filter:brightness(1)}}@keyframes arcadeTunnelHit{0%{transform:perspective(1100px) translateZ(0) scale(1);box-shadow:inset 0 0 90px #38c5a212,inset 0 0 130px #ff2e900f}32%{transform:perspective(1100px) translateZ(0) scale(1.004);box-shadow:inset 0 0 110px #38c5a21f,inset 0 0 150px #ff2e9017}to{transform:perspective(1100px) translateZ(0) scale(1)}}@keyframes arcadeTunnelMiss{0%{transform:perspective(1100px) translateZ(0) scale(1)}36%{transform:perspective(1100px) translateZ(0) scale(.997)}to{transform:perspective(1100px) translateZ(0) scale(1)}}@keyframes arcadeGridHit{0%{transform:translate(-50%) rotateX(60deg) translateY(0) scale(1);box-shadow:0 40px 80px #000000ad,0 0 48px #38c5a214,inset 0 0 30px #000000e6}40%{transform:translate(-50%) rotateX(60deg) translateY(-1px) scale(1.008);box-shadow:0 44px 88px #000000b3,0 0 64px #38c5a22e,inset 0 0 38px #ffffff0f}to{transform:translate(-50%) rotateX(60deg) translateY(0) scale(1)}}@keyframes arcadeGridMiss{0%{transform:translate(-50%) rotateX(60deg) translateY(0) scale(1);box-shadow:0 40px 80px #000000ad,0 0 48px #38c5a214,inset 0 0 30px #000000e6}42%{transform:translate(-50%) rotateX(60deg) translateY(1px) scale(.996);box-shadow:0 44px 88px #000000bd,0 0 78px #ff002629,inset 0 0 44px #ff002624}to{transform:translate(-50%) rotateX(60deg) translateY(0) scale(1)}}@keyframes magneticLinkPulse{0%{filter:blur(.2px) saturate(1.35) brightness(1);transform:translateZ(8px) scaleX(.94)}to{filter:blur(.1px) saturate(1.75) brightness(1.18);transform:translateZ(12px) scaleX(1.04)}}@keyframes magneticReleasePulse{0%{filter:blur(.1px) saturate(1.55) brightness(1.02);transform:translateZ(8px) scaleX(.98)}to{filter:blur(0) saturate(2) brightness(1.22);transform:translateZ(12px) scaleX(1.08)}}@media(max-width:1040px){.arcade-holo-main{grid-template-columns:1fr}.arcade-holo-inspector{display:none}.arcade-holo-topbar{grid-template-columns:repeat(2,1fr)}.arcade-holo-beat{display:none}.arcade-holo-transport{grid-template-columns:repeat(3,1fr)}}.arcade-focused .arcade-holo-topbar{grid-template-columns:.8fr .8fr minmax(260px,1.5fr) auto}.arcade-focused .arcade-feedback strong{font-size:clamp(18px,1.6vw,25px);color:#38c5a2}.arcade-focused .arcade-feedback small{color:#38c5a2;font-size:13px;line-height:1.5}.arcade-focused .arcade-feedback[data-state=success] strong{color:#38c5a2}.arcade-focused .arcade-feedback[data-state=correct] strong{color:#ffd36a}.arcade-focused .arcade-holo-topcell>small{max-width:100%}.arcade-focused .arcade-holo-stage,.arcade-focused .arcade-holo-tunnel-shell,.arcade-focused .arcade-holo-grid-plane{animation:none!important}.arcade-focused .arcade-holo-note-pad,.arcade-focused .arcade-holo-note-pad:before,.arcade-focused .arcade-holo-note-pad:after{animation:none!important;filter:none!important}.arcade-focused .arcade-holo-note-pad{transform:translateZ(12px)!important;background:transparent!important;border:0!important;box-shadow:none!important}.arcade-focused .arcade-holo-note-pad:before,.arcade-focused .arcade-holo-note-pad:after{display:none}.arcade-focused .arcade-holo-note-pad.held.focus-current{border:2px solid #F7F4EE!important}.arcade-focused .arcade-holo-note-pad.focus-next{pointer-events:none}.arcade-focused .arcade-holo-inspector{align-self:start;margin-top:20px}.arcade-focused .arcade-reading-guide{color:#38c5a2;font-size:13px;line-height:1.6}.arcade-focused .arcade-reading-guide b{color:#38c5a2}.arcade-focused .arcade-section-feedback{color:#ffd36a;font-size:14px}.arcade-focused .arcade-holo-side-wall,.arcade-focused .arcade-holo-depth-lines,.arcade-focused .arcade-holo-vanish{opacity:.25}@media(max-width:1100px){.arcade-focused .arcade-holo-topbar{grid-template-columns:1fr 1fr}.arcade-focused .arcade-feedback{grid-column:1 / -1}.arcade-focused .arcade-holo-beat{display:none}}.arcade-focused .arcade-last-result{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;min-height:32px;padding:8px 16px;color:#38c5a2;background:#081d18;border:1px solid #164C3E;border-radius:8px}.arcade-focused .arcade-last-result span{color:#38c5a2;font-size:12px}.arcade-focused .arcade-last-result strong{font-size:14px;font-weight:500}.arcade-run-summary{display:grid;gap:5px;padding:10px 14px;border:1px solid rgba(56,197,162,.45);border-radius:10px;background:#38c5a2d1}.arcade-run-summary span,.arcade-run-summary small{color:#38c5a2;font-size:12px}.arcade-run-summary strong{color:#f7f4ee;font-size:14px}.arcade-run-summary button{justify-self:start;margin-top:4px;padding:5px 10px;border:1px solid var(--v-cyan);border-radius:6px;color:var(--v-cyan);background:transparent;cursor:pointer}.arcade-focused{grid-template-rows:auto auto minmax(0,1fr) auto}.arcade-holo-transport.arcade-holo-transport--practice{grid-template-columns:110px 86px 78px minmax(150px,200px) minmax(190px,230px) repeat(2,minmax(60px,1fr));gap:12px;overflow:visible}@media(max-width:1100px){.arcade-holo-transport.arcade-holo-transport--practice{grid-template-columns:repeat(3,1fr)}}@font-face{font-family:Antonio;src:url(./antonio-latin-wght-normal-BpusS9o4.woff2) format("woff2");font-weight:100 700;font-display:swap}@font-face{font-family:Montserrat;src:url(./montserrat-latin-wght-normal-l_AIctKy.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{--dfw-bg: #071018;--dfw-bg-soft: #0E1A24;--dfw-line: #16283A;--dfw-pink: #FF2E90;--dfw-teal: #38C5A2;--dfw-gold: #FFD36A;--dfw-text: #F7F4EE;--dfw-muted: #AEB7BF;--font-head: "Antonio", "Arial Narrow", Impact, sans-serif;--font-family: "Montserrat", system-ui, sans-serif;--bg-color: var(--dfw-bg);--text-color: var(--dfw-text);--accent-color: var(--dfw-teal);--v-pink: var(--dfw-pink);--v-cyan: var(--dfw-teal);--v-purple: var(--dfw-pink);--v-blue: var(--dfw-teal);--v-yellow: var(--dfw-gold);--v-orange: var(--dfw-gold);--v-magenta: var(--dfw-pink);--pad-off: var(--dfw-bg-soft);--pad-on: var(--dfw-pink);--pad-correct: var(--dfw-teal);--dfw-error: #FF3B3B;--pad-incorrect: var(--dfw-error);--pad-root: var(--dfw-teal);--pad-scale: rgba(56, 197, 162, .45);--surface-low: #0B1620;--surface-mid: var(--dfw-bg-soft);--surface-high: #16283A;--glass-bg: rgba(14, 26, 36, .72);--glass-border: rgba(247, 244, 238, .1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .6)}body{margin:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;min-width:320px;min-height:100vh}#root{width:100%;height:100vh;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--font-head);font-weight:700;text-transform:uppercase;letter-spacing:.02em;line-height:.95}.dfw-display{font-family:var(--font-head);font-weight:700;text-transform:uppercase;line-height:.9}.dfw-display-thin{font-family:var(--font-head);font-weight:200;text-transform:uppercase;letter-spacing:.08em;color:var(--dfw-muted)}button{font-family:inherit;cursor:pointer;background:var(--pad-off);border:1px solid var(--dfw-line);color:var(--dfw-text);padding:8px 16px;border-radius:8px;transition:all .2s}button:hover{border-color:var(--accent-color)}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@keyframes glow{0%,to{box-shadow:0 0 20px #38c5a24d}50%{box-shadow:0 0 30px #38c5a299}}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(./montserrat-cyrillic-ext-400-normal-Xqov12YL.woff2) format("woff2"),url(./montserrat-cyrillic-ext-400-normal-DRPPeomZ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(./montserrat-cyrillic-400-normal-BPq32Q8K.woff2) format("woff2"),url(./montserrat-cyrillic-400-normal-jEs4Tk-Z.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(./montserrat-vietnamese-400-normal-D4oHqQTd.woff2) format("woff2"),url(./montserrat-vietnamese-400-normal-BeEscFYY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(./montserrat-latin-ext-400-normal-B8bwfy6Y.woff2) format("woff2"),url(./montserrat-latin-ext-400-normal-BffdBkAA.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(./montserrat-latin-400-normal-BLhwKU8k.woff2) format("woff2"),url(./montserrat-latin-400-normal-xItZbAXg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.lp-shell{box-sizing:border-box;width:100%;height:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:34px;padding:64px 24px 28px;color:var(--dfw-text);background:repeating-linear-gradient(to bottom,rgba(255,46,144,.05) 0 1px,transparent 1px 14px) top / 100% 120px no-repeat,var(--dfw-bg)}.lp-head{text-align:center}.lp-kicker{font:600 11px var(--font-family);letter-spacing:3px;text-transform:uppercase;color:var(--dfw-teal)}.lp-title{margin:8px 0 6px;font:700 64px/.9 var(--font-head);text-transform:uppercase}.lp-sub{font:400 14px var(--font-family);color:var(--dfw-muted)}.lp-track{display:flex;align-items:flex-start;justify-content:safe center;gap:0;margin:0;padding:24px 12px 8px;box-sizing:border-box;width:100%;list-style:none;max-width:100%;overflow-x:auto}.lp-step{position:relative;flex:0 1 132px;min-width:92px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.lp-link{position:absolute;top:36px;right:calc(50% + 40px);width:calc(100% - 80px);height:3px;border-radius:2px;background:var(--dfw-line)}.lp-step.played .lp-link{background:#38c5a280}.lp-node{width:72px;height:72px;margin-bottom:8px;border-radius:50%;border:2px solid #23394B;background:var(--dfw-bg-soft);color:var(--dfw-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .16s ease,border-color .16s,box-shadow .16s,background .16s}.lp-glyph{font:700 30px var(--font-head);line-height:1}.lp-chords .lp-node{width:60px;height:60px;margin:6px 0 14px;border-style:dashed}.lp-chords .lp-glyph{font:700 24px var(--font-family)}.lp-full .lp-node{width:88px;height:88px;margin:-8px 0 8px;border-color:#ff2e908c}.lp-full .lp-glyph{font-size:36px;color:var(--dfw-pink)}.lp-step.played .lp-node{border-color:var(--dfw-teal);color:var(--dfw-teal)}.lp-step.selected .lp-node{transform:scale(1.08);border-color:var(--dfw-pink);background:var(--dfw-pink);color:var(--dfw-bg);box-shadow:0 0 0 6px #ff2e902e,0 0 30px #ff2e908c}.lp-step.selected.lp-full .lp-glyph{color:var(--dfw-bg)}.lp-node:focus-visible{outline:2px solid var(--dfw-teal);outline-offset:4px}.lp-label{font:600 10px var(--font-family);letter-spacing:2px;text-transform:uppercase;color:#6c8ba1}.lp-name{font:700 18px/1.05 var(--font-head);text-transform:uppercase;color:var(--dfw-muted);max-width:100%;padding:0 4px;box-sizing:border-box}.lp-step.selected .lp-name{color:var(--dfw-text)}.lp-best{font:700 12px var(--font-family);color:var(--dfw-teal)}.lp-detail{box-sizing:border-box;width:min(680px,100%);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;border:1px solid var(--dfw-line);border-radius:16px;background:linear-gradient(to bottom,#ff2e901a,#07101800 70%),var(--dfw-bg-soft)}.lp-detail-title{margin:6px 0 4px;font:700 36px/.95 var(--font-head);text-transform:uppercase}.lp-detail-text{margin:0;font:400 14px var(--font-family);color:var(--dfw-muted)}.lp-go{flex:0 0 auto;padding:14px 30px;border:0;border-radius:999px;background:var(--dfw-pink);color:var(--dfw-bg);font:700 22px var(--font-head);letter-spacing:2px;text-transform:uppercase;cursor:pointer;box-shadow:0 0 24px #ff2e9073}.lp-go:focus-visible{outline:2px solid var(--dfw-teal);outline-offset:3px}.lp-hint{margin:0;font:400 12px var(--font-family);color:#6c8ba1}@media(max-width:640px){.lp-title{font-size:44px}.lp-track{justify-content:flex-start}.lp-detail{flex-direction:column;align-items:flex-start}}.lp-shell{container-type:inline-size}@container (max-width: 960px){.lp-step{min-width:76px}.lp-node{width:56px;height:56px}.lp-glyph{font-size:24px}.lp-chords .lp-node{width:46px;height:46px;margin:5px 0 13px}.lp-chords .lp-glyph{font-size:19px}.lp-full .lp-node{width:68px;height:68px;margin:-6px 0 6px}.lp-full .lp-glyph{font-size:28px}.lp-link{top:28px;right:calc(50% + 32px);width:calc(100% - 64px)}.lp-label{font-size:9px;letter-spacing:1px}.lp-name{font-size:15px}}@keyframes lc-missing{0%{stroke-opacity:1;fill-opacity:.18}to{stroke-opacity:.35;fill-opacity:.04}}@keyframes lc-frame{0%{stroke-opacity:1}to{stroke-opacity:.35}}@keyframes lc-got-it{0%{transform:scale(.96)}50%{transform:scale(1.03)}to{transform:scale(1)}}.lc-missing{animation:lc-missing .7s ease-in-out infinite alternate}.lc-frame{animation:lc-frame .8s ease-in-out infinite alternate}.lc-ok{transform-box:fill-box;transform-origin:center;animation:lc-got-it .45s ease-out}.lc-btn:hover:not(:disabled){border-color:#ff2e90;color:#f7f4ee}.lc-btn:focus-visible{outline:2px solid #38C5A2;outline-offset:2px}.lc-btn:disabled{opacity:.45;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.lc-missing,.lc-frame,.lc-ok{animation:none}}.lesson-preparation{box-sizing:border-box;width:100%;max-width:1180px;height:calc(100vh - 40px);overflow:auto;padding:18px;color:#38c5a2}.execution-module:has(>.lesson-preparation){box-sizing:border-box}.preparation-heading h1{margin:6px 0;font-size:clamp(24px,2.6vw,32px);overflow-wrap:anywhere}.preparation-heading>p{margin:8px 0;font-size:13px}.preparation-heading>p:not(.preparation-eyebrow),.preparation-card-heading>div>p:last-child{color:#b6bfc6;line-height:1.6}.preparation-eyebrow{color:var(--v-cyan);font-size:11px;font-weight:700;letter-spacing:1.8px}.preparation-layout{display:inline-block;color:#38c5a2;border:1px solid #364855;border-radius:6px;padding:5px 8px;font-size:10px;letter-spacing:1px;line-height:1.5}.preparation-workspace{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.7fr);align-items:start;gap:20px;margin:16px 0}.preparation-chords{display:grid;gap:8px;min-width:0}.preparation-chords button{display:grid;gap:7px;padding:15px;text-align:left;border:1px solid #30404C;border-radius:10px;background:#0b261f;line-height:1.5;overflow-wrap:anywhere}.preparation-chords button small{color:#38c5a2;font-size:10px;letter-spacing:1px}.preparation-chords button[aria-current]{border-color:var(--v-orange);background:#40351b;box-shadow:inset 3px 0 var(--v-orange)}.preparation-card{min-width:0;border:1px solid #30404C;border-radius:16px;padding:16px;background:#09211b}.preparation-card-heading{display:flex;align-items:start;flex-wrap:wrap;justify-content:space-between;gap:10px}.preparation-card-heading>div:first-child{flex:1 1 150px}.preparation-card h2{font-size:22px;margin:6px 0;overflow-wrap:anywhere}.preparation-card-heading p{margin:5px 0}.preparation-instrument{width:min(100%,32vh,400px);margin:10px auto 0}.preparation-instrument svg{display:block;width:100%;height:auto}.preparation-pad-number{fill:#c2cacf;font-size:2.4px;font-family:inherit}.preparation-pad-note{fill:#f7f4ee;font-size:2.7px;text-anchor:middle;font-weight:700;font-family:inherit}.preparation-pad-finger{fill:#f7f4ee;font-size:2.1px;text-anchor:middle;font-weight:700;font-family:inherit}.preparation-pad-target rect{fill:#6c592d;stroke:#ffd36a;stroke-width:.55}.preparation-pad-invalid rect{stroke:#ffd36a;stroke-dasharray:1 1}.preparation-pad-held rect{fill:#185445;stroke:#38c5a2;stroke-width:.7}.preparation-grid-caption{color:#38c5a2;font-size:10px;line-height:1.5;text-align:center}.preparation-audition{display:flex;flex:0 1 245px;align-items:center;gap:8px;flex-wrap:wrap}.preparation-audition span,.preparation-guide-status,.preparation-actions p{font-size:12px;color:#b6bfc6;line-height:1.6}.preparation-guide-status button{margin:8px}.preparation-warning{background:#493c1e;color:#ffd36a;border:1px solid #FFD36A;border-radius:10px;padding:12px 16px;margin:14px 0;font-size:12px;line-height:1.6}.preparation-warning p{margin:5px 0}.preparation-content-warning{padding:9px 12px}.preparation-content-warning summary{cursor:pointer}.preparation-chord-navigation,.preparation-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;margin-top:20px}.preparation-actions{position:sticky;bottom:-18px;z-index:2;align-items:center;padding:10px 84px 14px 0;border-top:1px solid #2D3C47;background:#071914}.preparation-chord-navigation{margin:8px 0 0}.preparation-chord-navigation button{flex:1;padding:8px;font-size:11px;text-align:center}.preparation-actions p{flex:1 1 180px}.lesson-preparation button{min-height:42px}.lesson-preparation .preparation-primary{background:var(--v-cyan);color:#071018;font-weight:800;border-color:var(--v-cyan)}.lesson-preparation button:disabled{opacity:.42;cursor:not-allowed}.lesson-preparation button:focus-visible{outline:3px solid #F7F4EE;outline-offset:3px}.section-preview-card{max-width:760px;margin:18px auto}.section-preview-progress{display:flex;align-items:center;gap:12px;font-size:12px;color:#38c5a2}.section-preview-progress progress{flex:1;min-width:0;height:8px;accent-color:var(--v-cyan)}@media(max-width:880px){.preparation-workspace{grid-template-columns:1fr}.preparation-chords{display:flex;overflow-x:auto;padding:3px 3px 10px}.preparation-chords>button{flex:0 0 190px}.preparation-chord-navigation{flex:0 0 190px;margin:0;align-content:start}.preparation-actions>button{flex:1 1 200px}}.practice-controls{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0}.practice-controls__row{display:grid;grid-template-columns:40px 22px minmax(72px,1fr) 22px;align-items:center;gap:5px}label.practice-controls__row{grid-template-columns:40px minmax(0,1fr) auto;cursor:pointer}.practice-controls__label,.practice-controls__note,.practice-controls__passes{color:#ffffff85;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.practice-controls__step,.practice-controls__value,.practice-controls select{height:22px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#ffffff0a;color:#f7f4ee;font-size:.72rem;font-weight:800;padding:0 6px;cursor:pointer;min-width:0}.practice-controls__step{padding:0;line-height:1}.practice-controls__step:disabled{opacity:.3;cursor:default}.practice-controls__value{font-variant-numeric:tabular-nums;white-space:nowrap}.practice-controls select{width:100%;text-overflow:ellipsis}.practice-controls select.is-on{border-color:var(--v-cyan, #38C5A2);color:var(--v-cyan, #38C5A2)}.practice-controls--slow .practice-controls__value{border-color:var(--v-yellow, #FFD36A);color:var(--v-yellow, #FFD36A)}.practice-controls__passes{color:var(--v-cyan, #38C5A2);letter-spacing:.02em}.practice-controls__note{position:absolute;left:0;top:-16px;font-size:.58rem;color:var(--v-yellow, #FFD36A);white-space:nowrap}.mix-volumes{display:flex;flex-direction:column;gap:4px;min-width:0}.mix-volumes__row{display:grid;grid-template-columns:40px minmax(60px,1fr) 34px;align-items:center;gap:8px;cursor:pointer}.mix-volumes__label,.mix-volumes__value{color:#ffffff85;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.mix-volumes__value{color:#f7f4ee;letter-spacing:.02em;text-align:right;font-variant-numeric:tabular-nums}.mix-volumes input[type=range]{width:100%;min-width:0;margin:0;accent-color:var(--accent-color, #FF2E90)}.mix-volumes--sidebar .mix-volumes__label{color:#425868}.mix-volumes--sidebar .mix-volumes__value{color:#6e8ca2}.play-stage{--ps-bg: #071018;--ps-surface: #0E1A24;--ps-line: #172A38;--ps-pink: #FF2E90;--ps-teal: #38C5A2;--ps-text: #F7F4EE;--ps-muted: #AEB7BF;--ps-dim: #8796A2;--ps-pad: clamp(30px, min(5.4cqw, calc((100cqh - 230px) / 8.9)), 64px);--ps-gap: calc(var(--ps-pad) * .13);width:100%;display:flex;flex-direction:column;gap:14px;color:var(--ps-text);font-family:Montserrat,sans-serif}.ps-progress{display:flex;flex-direction:column;gap:6px;padding:0 4px}.ps-sections{display:flex;gap:6px}.ps-section{height:6px;border-radius:3px;background:#1c2e3b;overflow:hidden}.ps-section span{display:block;height:100%;background:var(--ps-teal)}.ps-section.active span{background:var(--ps-pink)}.ps-progress-text{display:flex;justify-content:space-between;font-size:12px;color:var(--ps-muted)}.ps-progress-text b{color:var(--ps-text)}.ps-main{display:flex;align-items:center;justify-content:center;gap:clamp(20px,3vw,48px)}.ps-board{display:flex;gap:10px}.ps-rows{display:flex;flex-direction:column;gap:var(--ps-gap)}.ps-rows span,.ps-cols span{font-size:12px;font-weight:600;color:var(--ps-dim)}.ps-rows span{height:var(--ps-pad);display:flex;align-items:center;width:14px}.ps-cols{display:grid;grid-template-columns:repeat(8,var(--ps-pad));gap:var(--ps-gap);margin-top:8px}.ps-cols span{text-align:center}.ps-grid{display:grid;grid-template-columns:repeat(8,var(--ps-pad));grid-auto-rows:var(--ps-pad);gap:var(--ps-gap)}.ps-pad{position:relative;border-radius:calc(var(--ps-pad) * .19);box-sizing:border-box;background:var(--ps-surface);border:1px solid var(--ps-line);display:flex;align-items:center;justify-content:center}.ps-coord{position:absolute;left:5px;top:3px;font-size:9px;font-weight:600;color:var(--ps-dim)}.ps-finger{font-family:Antonio,sans-serif;font-size:calc(var(--ps-pad) * .5);font-weight:700;line-height:1}.ps-word{font-family:Antonio,sans-serif;font-size:calc(var(--ps-pad) * .22);font-weight:700;letter-spacing:1px;text-align:center;line-height:1}.ps-next-finger{position:absolute;right:4px;bottom:2px;font-size:9px;font-weight:700;color:var(--ps-teal)}.ps-next{border:2px dashed var(--ps-teal)}.ps-next .ps-finger{color:var(--ps-teal);font-weight:400;font-size:calc(var(--ps-pad) * .38)}.ps-approach{border:2px solid var(--ps-pink);background:rgba(255,46,144,calc(.12 + .3 * var(--approach, 0)))}.ps-approach .ps-finger{color:var(--ps-pink)}.ps-ring{position:absolute;border:3px solid var(--ps-pink);border-radius:calc(var(--ps-pad) * .22);pointer-events:none}.ps-now{background:var(--ps-pink);border-color:transparent;box-shadow:0 0 20px #ff2e90b3,0 0 50px #ff2e904d}.ps-now .ps-finger,.ps-now .ps-word{color:#071018}.ps-now .ps-coord{color:#071018b3}.ps-now.ps-flash{box-shadow:0 0 0 calc(var(--ps-pad) * .12) #38c5a266,0 0 36px #38c5a2b3}.ps-missed{border:2px solid #4A5C69}.ps-missed .ps-word{color:var(--ps-muted);font-weight:400}.ps-wrong{border:2px solid var(--ps-text)}.ps-cross{font-size:calc(var(--ps-pad) * .6);line-height:1;color:var(--ps-text)}.ps-aside{width:clamp(220px,26vw,380px);display:flex;flex-direction:column;gap:12px}.ps-kicker{font-size:12px;letter-spacing:3px;color:var(--ps-muted);font-weight:600}.ps-chord{display:flex;align-items:baseline;gap:12px}.ps-chord strong{font-family:Antonio,sans-serif;font-size:clamp(64px,8vw,128px);line-height:1;font-weight:700;color:var(--ps-pink)}.ps-chord span{font-family:Antonio,sans-serif;font-size:clamp(22px,2.6vw,40px);font-weight:200;letter-spacing:2px}.ps-sub{font-size:14px;color:var(--ps-muted)}.ps-hold{font-size:14px}.ps-hold b{color:var(--ps-teal)}.ps-divider{height:1px;background:#1c2e3b}.ps-upnext{display:flex;gap:16px;align-items:center}.ps-upnext strong{display:block;font-family:Antonio,sans-serif;font-size:clamp(24px,2.6vw,36px);font-weight:700;color:var(--ps-teal);letter-spacing:1px}.ps-mini{display:grid;grid-template-columns:repeat(8,10px);grid-auto-rows:10px;gap:3px}.ps-mini i{border-radius:2px;background:var(--ps-line)}.ps-mini i.on{background:var(--ps-teal)}.ps-timeline{position:relative;height:112px;flex-shrink:0;border-radius:14px;background:#0b1620;border:1px solid #14232F;overflow:hidden}.ps-timeline-label{position:absolute;right:16px;bottom:4px;font-size:11px;letter-spacing:3px;color:var(--ps-muted);font-weight:600}.ps-tick{position:absolute;top:30px;height:56px;width:1px;background:var(--ps-line)}.ps-tick.bar{top:24px;height:70px;background:#2a3b48}.ps-block{position:absolute;top:28px;height:60px;box-sizing:border-box;border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:var(--ps-surface);border:1px solid #2A3B48}.ps-block strong{font-family:Antonio,sans-serif;font-size:26px;font-weight:700;letter-spacing:1px;line-height:1}.ps-block small{font-size:11px;font-weight:600;color:var(--ps-muted);white-space:nowrap}.ps-block.past{background:#10202b;border-color:#1c2e3b}.ps-block.past strong{color:var(--ps-dim)}.ps-block.past small{color:var(--ps-teal)}.ps-block.past.missed small{color:var(--ps-muted)}.ps-block.now{border:none;background:linear-gradient(90deg,rgba(255,46,144,.35) 0 var(--held),var(--ps-pink) var(--held) 100%);box-shadow:0 0 22px #ff2e9073}.ps-block.now strong,.ps-block.now small{color:#071018}.ps-block.next{background:#38c5a21f;border:2px solid var(--ps-teal)}.ps-block.next strong{color:var(--ps-teal)}.ps-nowline{position:absolute;top:18px;bottom:20px;width:4px;margin-left:-2px;border-radius:2px;background:var(--ps-pink);box-shadow:0 0 16px var(--ps-pink)}.ps-nowline span{position:absolute;bottom:-19px;left:50%;transform:translate(-50%);font-family:Antonio,sans-serif;font-size:14px;font-weight:700;letter-spacing:2px;color:var(--ps-pink)}.arcade-play-main{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;border-radius:16px;container-type:size}.arcade-holo-view{box-sizing:border-box}.arcade-holo-view .arcade-holo-transport{min-height:0;padding:4px 16px;flex-shrink:0}.arcade-holo-view .arcade-holo-metronome-host{height:44px}.ps-pad{transition:transform .12s ease-out,filter .12s ease-out}.ps-pad:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--row, transparent);opacity:.28;pointer-events:none;transition:background-color .6s ease}.ps-pad.ps-now:after{opacity:0}.ps-pad.ps-pressed{transform:scale(.9);filter:brightness(.82);transition:transform .04s ease-in,filter .04s ease-in}.ps-pad:before{content:"";position:absolute;inset:-3px;border-radius:inherit;border:3px solid transparent;opacity:0;pointer-events:none}.ps-hit-perfect:before{border-color:var(--ps-teal);animation:ps-impact .32s ease-out forwards}.ps-hit-early:before,.ps-hit-late:before{border-color:var(--dfw-gold, #FFD36A);animation:ps-impact .32s ease-out forwards}.ps-wrong.ps-pressed{border-color:#ff4d4d}.ps-wrong.ps-pressed .ps-cross{color:#ff4d4d}.ps-wrong.ps-pressed:before{border-color:#ff4d4d;animation:ps-impact .32s ease-out forwards}@keyframes ps-impact{0%{opacity:.95;transform:scale(.92)}to{opacity:0;transform:scale(1.14)}}.ps-now.ps-flash{box-shadow:0 0 14px #38c5a273}@media(prefers-reduced-motion:reduce){.ps-pad:before{animation:none!important}}.ps-block.single{padding:4px 6px;align-items:center}.ps-block.single strong{font-size:20px}.ps-timeline.two-lanes .ps-block.lane-r{top:20px;height:42px;padding-block:4px}.ps-timeline.two-lanes .ps-block.lane-r strong{font-size:20px}.ps-timeline.two-lanes .ps-block.lane-r small{display:none}.ps-timeline.two-lanes .ps-block.lane-l{top:66px;height:30px;padding:2px 6px;border-color:var(--lane, #2A3B48)}.ps-timeline.two-lanes .ps-block.lane-l strong{font-size:16px;color:var(--lane, var(--ps-text))}.ps-timeline.two-lanes .ps-block.lane-l.now{background:var(--lane, var(--ps-pink));box-shadow:none}.ps-timeline.two-lanes .ps-block.lane-l.now strong{color:#071018}.ps-timeline.two-lanes .ps-block.lane-l.past{opacity:.5}.arcade-view-toggle{font:600 11px Montserrat,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--dfw-text, #F7F4EE);background:#0e1a24e6;border:1px solid #1C2E3B;border-radius:999px;padding:7px 14px;cursor:pointer;white-space:nowrap}.view-seg{display:inline-flex;gap:4px;padding:4px;background:#071018e6;border:1px solid #1C2E3B;border-radius:12px}.view-seg button{display:inline-flex;align-items:center;gap:8px;font:700 12px Montserrat,sans-serif;letter-spacing:1.2px;text-transform:uppercase;padding:9px 14px;border-radius:9px;border:0;background:transparent;color:#aeb7bf;cursor:pointer;white-space:nowrap}.view-seg button.view-seg__help{color:#ffd36a;box-shadow:inset 0 0 0 1px #ffd36a80}.view-seg button.on{background:#38c5a2;color:#071018;box-shadow:none;cursor:default}.view-seg button:focus-visible{outline:2px solid #FFD36A;outline-offset:2px}.view-seg__ico{width:16px;height:12px;display:inline-grid;grid-template-columns:repeat(3,1fr);gap:2px}.view-seg__ico i{background:currentColor;border-radius:1px}.arcade-view-toggle--to-flat{color:#ffd36a;border-color:#ffd36a8c;background:#071018d9}.arcade-view-toggle--to-flat:hover{border-color:#ffd36a}.arcade-view-toggle:focus-visible{outline:2px solid #FFD36A;outline-offset:2px}.ps-board{position:relative}.ps-view-switch{position:absolute;left:calc(100% + 18px);top:0;z-index:2}.zs-display .arcade-view-toggle{padding:6px 12px;margin-right:8px}.zone-stage .ps-main{align-items:stretch;flex:1 1 auto}.zs-box{position:relative;flex:1 1 auto;min-width:0;height:clamp(300px,calc(100cqh - 70px),760px);overflow:hidden;border-radius:14px;background:radial-gradient(ellipse at 50% 80%,#0f1e2a,#071018 70%)}.zs-scene{position:absolute;left:50%;top:70%;width:0;height:0;perspective:900px;perspective-origin:50% -60%;transition:transform .9s ease}.zs-rig{position:absolute;transform-style:preserve-3d;transition:transform .9s ease}.zs-pad,.zs-tile,.zs-marker{position:absolute;width:52px;height:52px;border-radius:10px;box-sizing:border-box}.zs-pad{background:var(--ps-surface);border:1px solid var(--ps-line);display:flex;align-items:center;justify-content:center;transition:opacity .3s}.zs-dim{opacity:.16}.zs-coord{position:absolute;left:5px;top:3px;font-size:9px;font-weight:600;color:var(--ps-dim)}.zs-finger{font-family:Antonio,sans-serif;font-weight:700;font-size:26px;color:#071018}.zs-word{position:absolute;bottom:4px;left:0;right:0;text-align:center;font:700 10px Antonio,sans-serif;letter-spacing:1px}.zs-now{background:var(--ps-pink);border-color:transparent;box-shadow:0 0 22px #ff2e90bf,0 0 50px #ff2e904d}.zs-now .zs-coord{color:#071018b3}.zs-now .zs-word{color:#071018}.zs-flash{box-shadow:0 0 0 7px #38c5a273,0 0 40px #38c5a2cc}.zs-missed{border:2px solid #4A5C69}.zs-missed .zs-word{color:var(--ps-muted);font-weight:400}.zs-wrong{border:2px solid var(--ps-text)}.zs-cross{font-size:32px;line-height:1;color:var(--ps-text)}.zs-zone{position:absolute;box-sizing:border-box;border:1px solid rgba(56,197,162,.35);border-radius:16px;background:#38c5a20a;transition:all .9s ease}.zs-lanes{position:absolute;display:grid;gap:8px;pointer-events:none;transition:all .9s ease}.zs-lanes i{border-radius:10px 10px 0 0;background:linear-gradient(to top,#38c5a21a,#38c5a200);border-left:1px solid rgba(56,197,162,.12);border-right:1px solid rgba(56,197,162,.12)}.zs-marker{border:2px dashed var(--ps-teal);pointer-events:none}.zs-marker.close{border:3px solid var(--ps-pink)}.zs-tile{display:flex;align-items:flex-end;justify-content:center;padding-bottom:12px;transform:translateZ(3px);font:700 24px Antonio,sans-serif;line-height:1;color:#071018;background:linear-gradient(to top,var(--ps-teal) 0,var(--ps-teal) 52px,rgba(56,197,162,.45) 52px);box-shadow:0 0 18px #38c5a280}.zs-tile.close{background:linear-gradient(to top,var(--ps-pink) 0,var(--ps-pink) 52px,rgba(255,46,144,.45) 52px);box-shadow:0 0 24px #ff2e90b3}.zs-tile.held{background:#ff2e9066;box-shadow:0 0 18px #ff2e9080}.zs-footprint,.zs-chord{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.zs-footprint{transform:translateZ(1px)}.zs-chord{transform:translateZ(3px)}.zs-slot-ring{fill:var(--ps-teal)}.zs-slot-fill{fill:var(--ps-teal);stroke:var(--ps-teal);opacity:.1}.zs-footprint.close .zs-slot-ring{fill:var(--ps-pink)}.zs-footprint.close .zs-slot-fill{fill:var(--ps-pink);stroke:var(--ps-pink);opacity:.12}.zs-chord-head{fill:var(--ps-teal);stroke:var(--ps-teal);filter:drop-shadow(0 0 10px rgba(56,197,162,.6))}.zs-chord-tail{fill:var(--ps-teal);stroke:var(--ps-teal);opacity:.32}.zs-chord.close .zs-chord-head{fill:var(--ps-pink);stroke:var(--ps-pink);filter:drop-shadow(0 0 12px rgba(255,46,144,.7))}.zs-chord.close .zs-chord-tail{fill:var(--ps-pink);stroke:var(--ps-pink);opacity:.3}.zs-chord.held .zs-chord-head{fill:var(--ps-pink);stroke:var(--ps-pink);opacity:.28;filter:none}.zs-chord.held .zs-chord-tail{fill:var(--ps-pink);stroke:var(--ps-pink);opacity:.3}.zs-chord text{font:700 24px Antonio,sans-serif;fill:#071018;text-anchor:middle;dominant-baseline:central}.zs-shape,.zs-path{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.zs-shape polygon{fill:#38c5a21a;stroke:var(--ps-teal);stroke-width:3;stroke-linejoin:round}.zs-shape.close polygon,.zs-shape.held polygon{fill:#ff2e901f;stroke:var(--ps-pink)}.zs-shape.held polygon{stroke-width:4}.zs-tag{position:absolute;left:0;top:0;white-space:nowrap;font:700 30px Antonio,sans-serif;letter-spacing:1px;color:var(--ps-teal);text-shadow:0 0 12px rgba(7,16,24,.9);pointer-events:none;transform-origin:50% 100%}.zs-tag.close,.zs-tag.held{color:var(--ps-pink)}.zs-sym{font-family:Montserrat,sans-serif;font-weight:700;margin-right:6px}.zs-path{transform:translateZ(1px)}.zs-path polyline{fill:none;stroke:var(--ps-teal);stroke-width:3;stroke-dasharray:2 8;stroke-linecap:round;stroke-linejoin:round}.zs-path circle{fill:#071018;stroke:var(--ps-teal);stroke-width:2}.zs-path text{font:700 13px Montserrat,sans-serif;fill:var(--ps-teal);text-anchor:middle;dominant-baseline:central}.zs-path .first circle{fill:var(--ps-pink);stroke:var(--ps-pink)}.zs-path .first text{fill:#071018}.zs-options{position:absolute;left:14px;bottom:14px;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.zs-options__kicker{color:#ffffff80;font:800 10px Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-right:4px}.zs-display{display:flex;align-items:center;gap:6px}.zs-display button{font:600 11px Montserrat,sans-serif;letter-spacing:1px;color:var(--ps-muted);background:#0e1a24d9;border:1px solid var(--ps-line);border-radius:999px;padding:7px 14px;cursor:pointer}.zs-display button.on{color:#071018;background:var(--ps-teal);border-color:var(--ps-teal)}.zs-fb-pending{background:#ff2e901f;border:3px solid var(--ps-pink);box-shadow:none;animation:zs-pending .5s ease-in-out infinite alternate}.zs-fb-pending .zs-finger{color:var(--ps-pink)}.zs-fb-released{background:#4a5c69;border:2px dashed var(--ps-text);box-shadow:none}.zs-fb-released .zs-finger,.zs-fb-released .zs-word{color:var(--ps-text)}.zs-fb-missed{background:#2a3b48;box-shadow:none}@keyframes zs-pending{0%{box-shadow:0 0 #ff2e9099}to{box-shadow:0 0 0 8px #ff2e9000}}.zs-burst{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;transform:translateZ(4px)}.zs-burst polygon{fill:none;stroke:var(--ps-teal);transform-box:fill-box;transform-origin:center;animation:zs-burst .8s ease-out forwards}@keyframes zs-burst{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}.zs-tag.locked{color:var(--ps-teal)}.zs-tag.bad{color:var(--ps-muted);animation:zs-shake .35s ease-in-out infinite}@keyframes zs-shake{0%,to{margin-left:0}25%{margin-left:-5px}75%{margin-left:5px}}.zs-offzone{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:2;padding:6px 14px;border-radius:999px;border:2px solid var(--ps-text);background:#071018e6;font:700 13px Montserrat,sans-serif;letter-spacing:1px;color:var(--ps-text)}.zs-repeat-ring{fill:var(--ps-teal)}.zs-chord.close .zs-repeat-ring{fill:var(--ps-pink)}.zs-chord.repeat .zs-chord-tail{opacity:.2}.zs-gap-ring{fill:var(--ps-teal);opacity:.55}.zs-chord.close .zs-gap-ring{fill:var(--ps-pink)}.zs-map{position:absolute;left:12px;top:150px;z-index:2;pointer-events:none}.zs-map rect{fill:#142634}.zs-map rect.next{fill:var(--ps-teal)}.zs-map rect.now{fill:var(--ps-pink)}.zs-map rect.zone{fill:none;stroke:var(--ps-text);stroke-width:1;opacity:.8;transition:all .9s ease}.zs-fuse{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;transform:translateZ(2px)}.zs-fuse line{stroke:#f7f4ee;stroke-linecap:round}.zs-fuse-lane{stroke-width:2;opacity:calc(.18 + .12 * var(--pulse, 0))}.zs-fuse-lit{stroke-width:3;opacity:calc(.55 + .45 * var(--pulse, 0))}.zs-fuse-mark{fill:var(--dfw-gold, #FFD36A)}.zs-fuse-end{fill:#f7f4ee;opacity:calc(.55 + .45 * var(--pulse, 0))}.zs-fuse .rank-1{opacity:.5}.zs-fuse .rank-2{opacity:.28}.zs-fuse .rank-1 line,.zs-fuse .rank-2 line{stroke-width:1.5}.zs-chord-head,.zs-tile,.zs-now{filter:brightness(calc(1 + .35 * var(--pulse, 0)))}.zs-chord.close .zs-chord-head{filter:brightness(calc(1 + .35 * var(--pulse, 0))) drop-shadow(0 0 12px rgba(255,46,144,.7))}.zs-trail{stroke:var(--ps-teal);stroke-linecap:round;opacity:.55}.zs-chord.close .zs-trail,.zs-chord.held .zs-trail{stroke:var(--ps-pink);opacity:.7}.zs-trail-bar{position:absolute;width:10px;border-radius:5px;background:var(--ps-teal);opacity:.55;transform:translateZ(2px);pointer-events:none}.zs-trail-bar.close,.zs-trail-bar.held{background:var(--ps-pink)}.zs-tile{background:var(--ps-teal);padding-bottom:0;align-items:center}.zs-tile.close{background:var(--ps-pink)}.zs-tag.inside{font-size:22px;line-height:1;color:#071018;text-shadow:none;transform-origin:50% 100%}.zs-tag.inside.held{color:#071018}.zs-run{position:absolute;left:0;top:0;overflow:visible;transform:translateZ(3px);pointer-events:none}.zs-run-ring{fill:var(--ps-teal);opacity:.8}.zs-run.close .zs-run-ring{fill:var(--ps-pink)}.zs-chord-head{opacity:.62}.zs-tag.inside,.zs-tag.inside.held{color:#f7f4ee;text-shadow:0 1px 6px rgba(7,16,24,.85)}.zs-flash{box-shadow:0 0 0 3px #38c5a2b3}.zs-burst polygon{animation:zs-burst .35s ease-out forwards}@keyframes zs-burst{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.06)}}.zs-tag.inside.locked{color:var(--ps-teal);text-shadow:0 1px 6px rgba(7,16,24,.9)}.zs-tag.inside.locked.early,.zs-tag.inside.locked.late{color:var(--dfw-gold, #FFD36A)}.zone-stage{--zs-left: rgba(247, 244, 238, .55)}.zs-zone.left{border-color:var(--zs-left)}.zs-pad:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--row, transparent);opacity:.28;transition:background-color .6s ease;pointer-events:none}.zs-pad.zs-now:after{opacity:0}.zs-bass{margin-top:18px;display:flex;flex-direction:column;gap:4px}.zs-bass strong{font:700 44px Antonio,sans-serif;color:var(--ps-text);line-height:1}.zs-verdict-anchor{position:absolute;left:0;top:0;transform-origin:50% 0;pointer-events:none}.zs-verdict{white-space:nowrap;padding:2px 14px;border-radius:999px;background:#071018d1;font:700 30px Antonio,sans-serif;letter-spacing:3px;color:var(--ps-teal);text-shadow:0 0 12px rgba(56,197,162,.4);animation:zs-verdict .8s ease-out forwards}.zs-verdict.early,.zs-verdict.late{color:var(--dfw-gold, #FFD36A);text-shadow:0 0 12px rgba(255,211,106,.35)}@keyframes zs-verdict{0%{opacity:0}12%{opacity:1}70%{opacity:1}to{opacity:0}}.zs-first-ring{fill:none;stroke:var(--ps-pink);stroke-width:5;filter:drop-shadow(0 0 8px rgba(255,46,144,.6))}.zs-first-ring.left{filter:none}.zs-tile.rowed span{color:#071018}.zs-pad{transition:opacity .3s,transform .12s ease-out,filter .12s ease-out}.zs-pad.zs-pressed{transform:translateZ(-9px) scale(.9);filter:brightness(.82);transition:opacity .3s,transform .04s ease-in,filter .04s ease-in}.zs-pad:before{content:"";position:absolute;inset:-3px;border-radius:13px;border:3px solid transparent;opacity:0;pointer-events:none}.zs-hit-perfect:before{border-color:var(--ps-teal);animation:zs-impact .32s ease-out forwards}.zs-hit-early:before,.zs-hit-late:before{border-color:var(--dfw-gold, #FFD36A);animation:zs-impact .32s ease-out forwards}.zs-wrong.zs-pressed{border-color:#ff4d4d}.zs-wrong.zs-pressed .zs-cross{color:#ff4d4d}.zs-wrong.zs-pressed:before{border-color:#ff4d4d;animation:zs-impact .32s ease-out forwards}@keyframes zs-impact{0%{opacity:.95;transform:scale(.92)}to{opacity:0;transform:scale(1.14)}}.zs-flash{box-shadow:0 0 14px #38c5a273}@media(prefers-reduced-motion:reduce){.zs-pad:before{animation:none!important}}.zs-bass-finger{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:700 18px Antonio,sans-serif;color:var(--ps-text);background:#0e1a24e6;border:1px solid var(--zs-left, rgba(247, 244, 238, .55))}.live-acc{--acc: var(--dfw-muted, #AEB7BF);position:absolute;top:66px;left:14px;z-index:30;min-width:116px;padding:7px 10px 8px;background:#071018d1;border:1px solid #1C2E3B;border-radius:10px;font-family:Montserrat,sans-serif;pointer-events:none}.live-acc--good{--acc: var(--dfw-teal, #38C5A2)}.live-acc--risk{--acc: var(--dfw-gold, #FFD36A)}.live-acc--lost{--acc: #FF4D4D}.live-acc__main{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.live-acc__label,.live-acc__section span{color:#ffffff85;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.live-acc__value{color:var(--acc);font:700 1.25rem/1 Antonio,Montserrat,sans-serif;font-variant-numeric:tabular-nums}.live-acc__bar{position:relative;height:4px;margin-top:6px;background:#ffffff14;border-radius:2px}.live-acc__fill{position:absolute;inset:0 auto 0 0;background:var(--acc);border-radius:2px;transition:width .25s ease-out}.live-acc__mark{position:absolute;top:-2px;bottom:-2px;width:1px;background:#f7f4eeb3}.live-acc__section{display:flex;justify-content:space-between;gap:10px;margin-top:6px}.live-acc__section strong{color:var(--acc);font-size:.78rem;font-variant-numeric:tabular-nums}.live-acc__section span{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-acc__hint{margin-top:6px;max-width:150px;color:#ff4d4d;font-size:.62rem;font-weight:700;line-height:1.3}html,body,#root{height:100%;margin:0;background:#071018}.demo-shell{min-height:100vh;display:flex;flex-direction:column;background:#071018;color:#f7f4ee;font-family:Montserrat,sans-serif}.demo-bar{display:flex;align-items:center;gap:14px;padding:12px 20px;border-bottom:1px solid #112533;flex-wrap:wrap}.demo-logo{font-family:Antonio,Montserrat,sans-serif;font-weight:700;letter-spacing:3px;font-size:1.1rem;margin-right:auto}.demo-logo em{font-style:normal;color:#ff2e90;margin-left:6px}.demo-chip{font-size:.72rem;font-weight:700;letter-spacing:.5px;padding:5px 10px;border-radius:999px;border:1px solid #28353E;color:#a0acb4}.demo-chip-on{border-color:#38c5a2;color:#38c5a2}.demo-chip-off{color:#7d8a93}.demo-ghost{background:transparent;color:#a0acb4;border:1px solid #28353E;border-radius:999px;padding:6px 14px;font:700 .75rem Montserrat,sans-serif;cursor:pointer}.demo-ghost:hover{color:#f7f4ee;border-color:#38c5a2}.demo-stage{flex:1;position:relative;display:flex;justify-content:center;align-items:center;padding:20px;overflow:auto;touch-action:none;user-select:none;-webkit-user-select:none}.demo-stage [data-pad]{cursor:pointer}.demo-welcome{max-width:680px;margin:0 auto;padding:48px 20px 64px;display:flex;flex-direction:column;gap:18px}.demo-kicker{color:#38c5a2;font-weight:800;letter-spacing:3px;font-size:.72rem;margin:0}.demo-welcome h1{font-family:Antonio,Montserrat,sans-serif;font-size:clamp(2rem,6vw,3.2rem);line-height:1.05;margin:0;text-transform:uppercase}.demo-lead{color:#c9d1d6;font-size:1.05rem;line-height:1.5;margin:0}.demo-card{border:1px solid #112533;border-radius:18px;padding:18px 20px;background:#0a1620;display:flex;flex-direction:column;gap:10px}.demo-card h2{margin:0;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:#a0acb4}.demo-card p{margin:0;line-height:1.5}.demo-card .demo-ghost{align-self:flex-start}.demo-ok{color:#38c5a2}.demo-small{color:#8d9aa3;font-size:.85rem}.demo-start{align-self:flex-start;background:#ff2e90;color:#071018;border:none;border-radius:999px;padding:14px 28px;font:800 1rem Montserrat,sans-serif;letter-spacing:1px;cursor:pointer}.demo-start:disabled{opacity:.6;cursor:default}.demo-error{color:#ffd36a;margin:0}.demo-link{align-self:flex-start;background:none;border:none;padding:0;color:#38c5a2;font:700 .9rem Montserrat,sans-serif;cursor:pointer}.demo-link:hover{text-decoration:underline}.camino{max-width:920px;margin:0 auto;padding:48px 20px 72px;display:flex;flex-direction:column;gap:44px}.camino section{display:flex;flex-direction:column;gap:14px}.camino-hero{gap:18px!important}.camino-hero h1{font-family:Antonio,Montserrat,sans-serif;font-size:clamp(2.2rem,7vw,3.8rem);line-height:1.02;margin:0;text-transform:uppercase}.camino-h2{margin:0;font-size:.8rem;letter-spacing:3px;text-transform:uppercase;color:#ff2e90}.camino h3{margin:0;font-size:1.05rem}.camino p{margin:0;line-height:1.5;color:#c9d1d6}.camino-steps,.camino-course{list-style:none;margin:0;padding:0;display:grid;gap:12px}.camino-steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.camino-num{width:30px;height:30px;border-radius:50%;background:#38c5a2;color:#071018;font-weight:800;display:grid;place-items:center}.camino-lesson{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:14px 18px;border:1px solid #112533;border-radius:16px;background:#0a1620;opacity:.7}.camino-lesson.is-open,.camino-lesson.is-done{opacity:1;border-color:#38c5a2}.camino-lesson.is-more{opacity:.5;border-style:dashed}.camino-badge{width:36px;height:36px;border-radius:50%;border:1px solid #28353E;display:grid;place-items:center;font-weight:800;font-size:.95rem}.is-done .camino-badge,.is-open .camino-badge{background:#38c5a2;border-color:#38c5a2;color:#071018}.camino-tag{font-size:.7rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#38c5a2}.camino-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.camino-benefit h3{font-family:Antonio,Montserrat,sans-serif;font-size:1.5rem;text-transform:uppercase;line-height:1.1}.camino-index{font-family:Antonio,Montserrat,sans-serif;color:#ff2e90;font-weight:700;letter-spacing:2px}.camino .camino-proof{color:#38c5a2;font-size:.85rem;border-top:1px solid #112533;padding-top:10px;margin-top:auto}.camino-cta{border-color:#ff2e90;gap:14px!important}.camino-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}@media(max-width:640px){.camino-benefits{grid-template-columns:1fr}}@media(max-width:520px){.camino-lesson{grid-template-columns:36px 1fr}.camino-tag{grid-column:2}}
