.folder-float{--ff-w: 200px;--ff-h: 148px;--ff-r: 14px;--ff-tab: 14px;--ff-back: #3f3f46;--ff-front: #52525b;--ff-paper: #f5f5f5;--ff-item: #f5f5f5;--ff-item-ink: #18181b;--ff-label: #f5f5f5;--ff-spread: 180px;--ff-lift: 26px;--ff-angle: 34deg;--ff-rest: 16deg;--ff-open: .52s;--ff-close: 312ms;--ff-stagger: 45ms;--ff-n: 6;--ff-spring: cubic-bezier(.34, 1.57, .64, 1);--ff-ease-out: cubic-bezier(.23, 1, .32, 1);position:relative;display:inline-block;width:var(--ff-w);padding-top:var(--ff-tab);font-family:inherit;font-size:13px;font-weight:500;line-height:1}.folder-float__folder{position:relative;width:var(--ff-w);height:var(--ff-h)}.folder-float__back{position:absolute;inset:0;z-index:0;border-radius:var(--ff-r);background:var(--ff-back);transform:perspective(600px) rotateX(8deg);transform-origin:50% 100%}.folder-float__back:before{content:"";position:absolute;top:calc(-1 * var(--ff-tab));left:0;width:42%;height:calc(var(--ff-tab) + var(--ff-r));border-radius:var(--ff-r) var(--ff-r) 0 0;background:inherit}.folder-float__paper{position:absolute;top:10%;z-index:1;right:8%;left:8%;height:50%;border-radius:6px;background:var(--ff-paper);opacity:0;transform:translateY(10px);transition:transform var(--ff-close) var(--ff-ease-out),opacity var(--ff-close) ease}.folder-float__front{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;height:76%;padding:14px 16px;box-sizing:border-box;border-radius:var(--ff-r);background:linear-gradient(180deg,color-mix(in srgb,var(--ff-front) 92%,#fff),var(--ff-front) 60%);color:var(--ff-label);box-shadow:0 -10px 24px #00000047;transform:perspective(600px) rotateX(calc(-1 * var(--ff-rest)));transform-origin:50% 100%;transition:transform var(--ff-open) var(--ff-ease-out)}.folder-float__label{font-size:13px;font-weight:500}.folder-float__sub{font-size:11px;opacity:.55}.folder-float__trigger{position:absolute;right:0;bottom:0;left:0;z-index:3;height:76%;margin:0;padding:0;border:0;border-radius:var(--ff-r);background:transparent;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}.folder-float[data-open] .folder-float__front{transform:perspective(600px) rotateX(calc(-1 * var(--ff-angle)))}.folder-float[data-open] .folder-float__paper{opacity:1;transform:translateY(0);transition:transform var(--ff-open) var(--ff-ease-out),opacity .2s ease}.folder-float__items{position:absolute;top:var(--ff-tab);left:50%;z-index:1;width:0;height:0}.folder-float[data-open] .folder-float__items:before{content:"";position:absolute;top:calc(-1 * (var(--ff-lift) + 120px));left:calc(-1 * (var(--ff-spread) + 100px));width:calc(2 * var(--ff-spread) + 200px);height:calc(var(--ff-lift) + 120px)}.folder-float__item{position:absolute;top:0;left:50%;margin:0;padding:0 14px;height:34px;border:0;border-radius:17px;background:var(--ff-item);color:var(--ff-item-ink);font:inherit;white-space:nowrap;box-shadow:0 4px 12px #00000024;cursor:pointer;outline:none;opacity:0;transform:translate(-50%,44px) scale(.6);transform-origin:50% 50%;pointer-events:none;-webkit-tap-highlight-color:transparent;transition:transform var(--ff-close) var(--ff-ease-out) calc((var(--ff-n) - 1 - var(--i)) * var(--ff-stagger) * .5),opacity .16s ease calc((var(--ff-n) - 1 - var(--i)) * var(--ff-stagger) * .5 + var(--ff-close) * .45),scale .16s var(--ff-ease-out)}.folder-float[data-open] .folder-float__item{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y)) rotate(var(--r)) scale(1);pointer-events:auto;transition:transform var(--ff-open) var(--ff-spring) calc(var(--i) * var(--ff-stagger)),opacity .16s ease calc(var(--i) * var(--ff-stagger)),scale .16s var(--ff-ease-out)}.folder-float[data-live] .folder-float__item{cursor:grab;transition:scale .16s var(--ff-ease-out)}.folder-float__item[data-drag]{cursor:grabbing}@media(hover:hover)and (pointer:fine){.folder-float[data-open] .folder-float__item:hover{scale:1.05}}.folder-float[data-open] .folder-float__item:active{scale:.97}.folder-float__item[data-pop]{animation:folder-float-pop .32s var(--ff-ease-out)}.folder-float__drift{display:block;animation:folder-float-drift 3.2s ease-in-out infinite;animation-delay:calc(var(--i) * -.7s);animation-play-state:paused}.folder-float[data-open] .folder-float__drift{animation-play-state:running}.folder-float[data-physics] .folder-float__drift,.folder-float[data-live] .folder-float__drift{animation:none}@keyframes folder-float-drift{0%,to{translate:0 0}50%{translate:0 -3px}}@keyframes folder-float-pop{30%{scale:1.1}to{scale:1}}@media(prefers-reduced-motion:reduce){.folder-float__front,.folder-float__paper{transition:opacity .2s ease}.folder-float[data-open] .folder-float__front{transform:perspective(600px) rotateX(calc(-1 * var(--ff-rest)))}.folder-float__paper{transform:none!important}.folder-float__item{transition:opacity .2s ease}.folder-float[data-open] .folder-float__item{transition:opacity .2s ease calc(var(--i) * var(--ff-stagger))}.folder-float__drift{animation:none}}.micro-slats{position:relative;width:100%;height:100%;overflow:hidden}.jazz-cats{margin:32px 0;text-align:center;border-top:1px solid #87535a44;padding-top:32px}.jazz-cats h3{font-size:36px}.cat-choices,.jazz-controls{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:18px 0}.jazz-cats button{font:inherit;color:#55343b;border:1px solid #87535a66;border-radius:8px;background:#e9d9c2;padding:10px 16px;cursor:pointer}.cat-choices button[aria-pressed=true]{background:#754854;color:#fff0d9}.jazz-board{position:relative;height:380px;overflow:hidden;border-radius:14px;background:#24212d;--energy:0}.jazz-board:focus-visible{outline:3px solid #87535a}.audio-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,#ffd99c66,transparent 70%);opacity:var(--energy);mix-blend-mode:screen}.jazz-hud{position:absolute;inset:16px 18px auto;display:flex;justify-content:space-between;color:#fff1d7;font-family:monospace;pointer-events:none}.jazz-board .jazz-note{position:absolute;width:52px;height:52px;padding:0;transform:translate(-50%,-50%);border-radius:50%;background:#f2d5ab;color:#624154;font-size:24px;z-index:2;touch-action:manipulation}.jazz-note span{position:absolute;inset:0;border:2px solid #fff0d9;border-radius:50%;transform:scale(var(--ring));pointer-events:none;opacity:.7}.jazz-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:18px;flex-direction:column;background:#26212b66;color:#fff1d7}.jazz-overlay b{font-size:clamp(22px,5vw,36px);font-style:italic}.running-cat{position:absolute;width:96px;height:96px;pointer-events:none;z-index:4;background-image:url(/assets/running-cats.png);background-size:400% 200%;transform:translate(-65%,-75%);animation:cat-run .5s steps(4) infinite;opacity:0}.running-cat.cat-1{background-position-y:100%}@keyframes cat-run{to{background-position-x:133.333%}}.jazz-feedback{min-height:44px}.jazz-cats small{display:block;line-height:1.8;font-size:12px}.jazz-controls button:disabled{opacity:.4;cursor:default}@media(pointer:fine){.jazz-board,.jazz-board button{cursor:none}}@media(max-width:600px){.jazz-board{height:340px}.running-cat{width:80px;height:80px}.cat-choices button{font-size:12px}}@media(prefers-reduced-motion:reduce){.running-cat{animation:none}.audio-glow{display:none}}#irisPlayground{grid-column:1/-1;width:min(850px,100%);margin:0 auto}.jazz-cats{width:100%}.jazz-board .jazz-note{background:#ffe3a0;color:#392b4b;border:2px solid #fff4d5;box-shadow:0 0 0 4px #35243eaa,0 0 20px #ffdc9055}.jazz-board .jazz-note:active{background:#8ce7df;color:#213e45;box-shadow:0 0 0 5px #fff2ce,0 0 28px #92fff0}.jazz-board .jazz-note:focus-visible{outline:3px solid #8ce7df;outline-offset:6px}.running-cat:after{content:"";position:absolute;inset:25%;border:3px solid #92e5de;border-radius:50%;opacity:0}.pointer-tap .running-cat:after{animation:cat-tap .4s ease-out}.beat-caught .running-cat{filter:drop-shadow(0 0 6px #9dfff0)}@keyframes cat-tap{0%{opacity:1;transform:scale(.6);box-shadow:0 0 12px #a2fff1}to{opacity:0;transform:scale(1.8)}}@media(prefers-reduced-motion:reduce){.pointer-tap .running-cat:after{animation:none}.jazz-board .jazz-note:active{outline:4px solid #8ce7df}}.jazz-board{height:480px}.jazz-board>.micro-slats{opacity:.38}.rhythm-lanes{position:absolute;inset:50px 0 0;display:grid;grid-template-columns:repeat(4,1fr)}.jazz-board .rhythm-lane{position:relative;border:0;border-right:1px solid #e7d2b32e;border-radius:0;background:linear-gradient(0deg,#ab82a815,transparent);padding:0;touch-action:manipulation}.jazz-board .rhythm-lane:active{background:#8ce7df30}.receptor{position:absolute;top:calc((78% - 11.5%) / .895);left:50%;transform:translate(-50%,-50%);width:56px;height:56px;display:grid;place-items:center;border:3px solid #ffe3a0;border-radius:50%;color:#fff0cd;background:#3c2c48;box-shadow:0 0 15px #ffe3a044}.judgement-line{position:absolute;left:0;right:0;top:78%;height:2px;background:#ffe3a0;box-shadow:0 0 8px #ffe3a0;pointer-events:none}.falling-note{position:absolute;transform:translate(-50%,-50%);width:42px;height:20px;border-radius:50%;background:#a2ede0;border:2px solid #eafff7;box-shadow:0 0 15px #9be8d4;pointer-events:none;z-index:2}.judgement{position:absolute;left:0;right:0;top:30%;color:#ffe3a0;text-shadow:0 2px 8px #231e2b;font-size:36px;font-weight:700;pointer-events:none}.judgement.good{color:#a2ede0;font-size:29px}.judgement.miss{color:#e2a6b5;font-size:24px}.judgement small{font-size:14px;color:#fff1d7}.jazz-overlay{z-index:3}.sound-credit{opacity:.65;margin-top:16px}.sound-credit a{color:inherit}@media(max-width:600px){.jazz-board{height:410px}.receptor{width:46px;height:46px}.falling-note{width:35px}}.rhythm-lanes{inset:0}.receptor{top:78%}.jazz-hud{z-index:2}.jazz-board .rhythm-lane:focus-visible{outline:2px solid #a2ede0;outline-offset:-4px}.question-folder-stage{position:relative;isolation:isolate;text-align:center;padding-top:12px;margin:0 0 15px}.question-folder-stage[data-open]{padding-top:136px}.question-folder-stage .folder-float__trigger{border:0;background:transparent;padding:0}.question-folder-stage .folder-float__item{font-size:12px;letter-spacing:0;box-shadow:0 3px 9px #35202124}.question-folder-stage .folder-float__items:before{pointer-events:none}.question-folder-stage .folder-float__item:nth-child(odd){--x:-54px!important}.question-folder-stage .folder-float__item:nth-child(2n){--x:54px!important}.question-folder-stage .folder-float__item:nth-child(-n+2){--y:-86px!important}.question-folder-stage .folder-float__item:nth-child(n+3){--y:-42px!important}.archive-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:16px 0}.archive-tabs button,.lab-reset{font:inherit;font-size:13px;border:1px solid #87535a66;background:#eadcc9;color:#55343b;padding:10px 14px;border-radius:5px;cursor:pointer}.archive-tabs button[aria-pressed=true]{background:#754854;color:#fff0d9}.iris-lab{grid-column:1/-1;width:min(780px,100%);margin:32px auto 70px;padding:24px;border:1px solid #87535a44;background:#d7c5b750;box-sizing:border-box;border-radius:10px;text-align:center}.iris-lab h3{font-size:30px;margin:12px}.iris-lab p{font-size:14px}.slat-board{height:300px;position:relative;border-radius:12px;overflow:hidden;background:#302a34;touch-action:pan-y}.game-layer{position:absolute;inset:0;pointer-events:none}.game-layer button{pointer-events:auto;cursor:pointer;min-width:48px;min-height:48px}.waypoint{position:absolute;transform:translate(-50%,-50%);border:1px solid #ffebca;color:#fff0d9;background:#765264;border-radius:50%;font-size:18px}.waypoint:disabled{opacity:.4;cursor:default}.waypoint[data-done=true]{opacity:1;background:#b18b65}.beat-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80px;height:80px;border-radius:50%;background:#e4d1ac;color:#493d48;border:2px solid #fff3d5;font:inherit}.pulsing{animation:beatflash .75s ease-out}.swatches{height:100%;display:flex;align-items:center;justify-content:center;gap:16px}.swatches button{border:2px solid #fff1dd;border-radius:8px;color:#211b20;font:inherit;font-size:13px;padding:22px 12px}.lab-status{min-height:48px}.lab-instruction{min-height:42px}@keyframes beatflash{0%{box-shadow:0 0 0 18px #fff2c96b;filter:brightness(1.8)}to{box-shadow:0 0 0 0 transparent;filter:brightness(1)}}@media(max-width:600px){.iris-lab{padding:14px}.slat-board{height:260px}.swatches{gap:8px}.swatches button{padding:20px 8px}.archive-tabs button{padding:9px 10px}}@media(prefers-reduced-motion:reduce){.pulsing{animation:none;outline:4px solid #fff1dd}}
