@font-face{font-family:Jua;src:url(/assets/Jua-Regular-D4ox_bSL.ttf)format("truetype");font-display:swap}@font-face{font-family:Galmuri11;src:url(/assets/Galmuri11-Bold-QdFGsJ3v.woff2)format("woff2");font-weight:700;font-display:swap}:root{--af-grass:#7bc47f;--af-grass-deep:#5ba46a;--af-sky:#aedcf0;--af-cream:#fff8e7;--af-wood:#8b6f47;--af-wood-deep:#6e5638;--af-coral:#ff9e7d;--af-amber:#ffb86b;--af-ink:#4a3a28;--af-line:color-mix(in srgb, var(--af-wood) 26%, var(--af-cream));--af-line-strong:color-mix(in srgb, var(--af-wood) 42%, var(--af-cream));--af-shadow:color-mix(in srgb, var(--af-ink) 18%, transparent);--af-shadow-strong:color-mix(in srgb, var(--af-ink) 30%, transparent);--spring:cubic-bezier(.34, 1.56, .64, 1);--bg-top:var(--af-sky);--bg-bottom:#d9eff8;--panel-bg:color-mix(in srgb, var(--af-cream) 90%, transparent);--panel-bg-strong:var(--af-cream);--panel-border:var(--af-line);--panel-border-strong:color-mix(in srgb, var(--af-line-strong) 30%, var(--af-wood));--track-bg:color-mix(in srgb, var(--af-wood) 16%, var(--af-cream));--text:var(--af-ink);--text-dim:color-mix(in srgb, var(--af-wood) 58%, var(--af-ink));--text-faint:color-mix(in srgb, var(--af-wood) 78%, var(--af-ink));--judge-perfect:#3fbfd4;--cyan:#1f7c8c;--green:#407d45;--gold:#96601f;--red:#b3462a;--gray:#6e6152;--glow-cyan:color-mix(in srgb, var(--judge-perfect) 42%, transparent);--glow-gold:color-mix(in srgb, var(--af-amber) 65%, transparent);--glow-red:color-mix(in srgb, var(--af-coral) 50%, transparent);--focus-ring:color-mix(in srgb, var(--af-coral) 40%, transparent);--btn-shadow-cream:var(--panel-border-strong);--btn-shadow-leaf:color-mix(in srgb, var(--af-grass-deep) 75%, var(--af-ink));--btn-shadow-coral:color-mix(in srgb, var(--af-coral) 65%, var(--af-ink));--radius-lg:22px;--radius-md:16px;--radius-sm:12px;--font-body:"Jua", Pretendard, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-pixel:"Galmuri11", var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{min-height:100vh;margin:0;padding:0}body{background:radial-gradient(ellipse 120% 90% at 50% -10%, var(--bg-top), var(--bg-bottom) 65%);color:var(--text);font-family:var(--font-body);font-synthesis:none;word-break:keep-all;overflow-wrap:break-word;background-attachment:fixed;line-height:1.5}body:before{content:"";z-index:-1;pointer-events:none;background:url(/assets/backdrop-B5RY7z6S.webp) bottom/cover no-repeat;position:fixed;inset:0}@media (orientation:portrait){body:before{background-image:url(/assets/backdrop-portrait-jXoM57EC.webp)}}body:after{content:"";z-index:30;pointer-events:none;opacity:.55;background:url(/assets/grain-BuDhjUcp.webp);position:fixed;inset:0}#app{min-height:100vh}h1,h2,h3{letter-spacing:.01em;color:var(--text);margin:0 0 .5em;font-weight:800}h1{font-size:1.6rem}h2{font-size:1.25rem}p{color:var(--text-dim);margin:.4em 0}a{color:var(--cyan)}label{color:var(--text-dim);margin-right:.4em;font-size:.85rem;font-weight:700}select,input[type=number],input[type=file]{background:color-mix(in srgb, var(--af-cream) 94%, var(--af-amber));border:2.5px solid var(--panel-border-strong);color:var(--text);border-radius:var(--radius-sm);padding:7px 10px;font-family:inherit;font-size:.9rem;font-weight:700;transition:border-color .15s,box-shadow .15s,background .15s}select:focus,input:focus{border-color:var(--af-coral);box-shadow:0 0 0 3px var(--focus-ring);outline:none}input[type=number]{width:4.5em}button{background:var(--af-cream);border:3px solid var(--panel-border-strong);color:var(--af-ink);box-shadow:0 4px 0 var(--btn-shadow-cream);letter-spacing:.4px;cursor:pointer;transition:transform .25s var(--spring), box-shadow .2s, border-color .2s, background .2s;border-radius:999px;padding:9px 18px;font-family:inherit;font-size:.9rem;font-weight:800}button:hover:not(:disabled){border-color:var(--af-coral);background:color-mix(in srgb, var(--af-coral) 12%, var(--af-cream));box-shadow:0 6px 0 var(--btn-shadow-cream);transform:translateY(-2px)}button:active:not(:disabled){box-shadow:0 1px 0 var(--btn-shadow-cream);transform:translateY(2px)}button:focus-visible{outline:3px solid var(--af-coral);outline-offset:2px}button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}#calib-save-btn,#gp-resume-btn{width:100%;color:var(--af-ink);background:var(--af-grass);border:3px solid var(--af-grass-deep);box-shadow:0 4px 0 var(--btn-shadow-leaf);border-radius:999px;margin-top:8px;padding:14px;font-size:1.05rem;font-weight:800;display:block}#calib-save-btn:hover:not(:disabled),#gp-resume-btn:hover:not(:disabled){background:color-mix(in srgb, var(--af-grass) 88%, var(--af-cream));border-color:var(--af-grass-deep);box-shadow:0 6px 0 var(--btn-shadow-leaf);transform:translateY(-2px)}#calib-save-btn:active:not(:disabled),#gp-resume-btn:active:not(:disabled){box-shadow:0 1px 0 var(--btn-shadow-leaf)}#calib-save-btn:disabled,#gp-resume-btn:disabled{box-shadow:0 4px 0 var(--btn-shadow-leaf)}#gp-exit-btn{border-color:var(--af-coral);box-shadow:0 4px 0 var(--btn-shadow-coral)}#gp-exit-btn:hover:not(:disabled){border-color:var(--red);background:color-mix(in srgb, var(--af-coral) 20%, var(--af-cream));box-shadow:0 6px 0 var(--btn-shadow-coral), 0 0 0 3px var(--glow-red)}#gp-exit-btn:active:not(:disabled){box-shadow:0 1px 0 var(--btn-shadow-coral)}.gameplay-screen,.settings-screen,.calibration-screen,.tuner-screen,.results-screen{max-width:880px;margin:0 auto;padding:28px 24px 60px}.settings-screen,.calibration-screen,.tuner-screen,.results-screen{filter:drop-shadow(0 10px 16px var(--af-shadow));border:20px solid #0000;border-image:url(/assets/panel-BhREc373.webp) 48 44 fill/20px 18px round;margin:24px auto;padding:14px 20px 24px}.settings-screen :is(.tuner-screen,.calibration-screen){filter:none;border:0;border-image:;margin:0;padding:0}.gp-progress-track,.results-bar-track,.tuner-level-bar-track{border:5px solid #0000;border-width:5px 10px;border-image:url(/assets/gauge-Z8akQ-l9.webp) 24 42 22 fill/5px 10px;height:18px;overflow:hidden}.gameplay-screen{max-width:none;height:100vh;padding:0;position:relative;overflow:hidden}#gp-setup:before,#gp-setup:after{content:"";z-index:-1;aspect-ratio:415/960;pointer-events:none;background:url(/assets/trees-left-DRtWRFD6.webp) 0 100%/contain no-repeat;height:min(62vh,560px,70vw);position:absolute;bottom:0}#gp-setup:before{left:0}#gp-setup:after{aspect-ratio:438/960;background-image:url(/assets/trees-right-o9n82yJL.webp);background-position:100% 100%;right:0}#gp-canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block;position:absolute;inset:0}#gp-header{z-index:10;pointer-events:none;position:absolute;top:0;left:0}#gp-header h1{aspect-ratio:640/404;white-space:nowrap;width:144px;color:var(--af-ink);text-shadow:0 2px 0 color-mix(in srgb, var(--af-cream) 45%, transparent);background:url(/assets/sign-D5W45xlX.webp) 50%/100% 100% no-repeat;place-items:center;margin:0;padding:26px 10px 0;font-size:1.35rem;line-height:1;display:grid}#gp-sidebar{z-index:20;width:52px;box-shadow:none;pointer-events:none;background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;padding:0;display:flex;position:absolute;top:96px;left:46px;overflow:visible}#gp-sidebar>*{pointer-events:auto}#gp-sidebar #gp-capo-row,#gp-sidebar #gp-status,#gp-sidebar #gp-error{text-shadow:0 1px 0 color-mix(in srgb, var(--af-cream) 85%, transparent), 0 0 6px color-mix(in srgb, var(--af-cream) 70%, transparent)}#gp-settings-btn,#gp-sheet-import-btn{justify-content:center;align-items:center;width:52px;height:52px;padding:0;font-size:1.3rem;line-height:1;display:flex}#gp-accompaniment-toggle,#gp-settings-btn,#gp-sheet-import-btn{box-shadow:0 3px 0 color-mix(in srgb, var(--af-ink) 22%, transparent);background:url(/assets/badge-DK-GPapD.webp) 50%/100% 100% no-repeat;border:0;border-radius:50%}#gp-sidebar .instrument-buttons{border:16px solid #0000;border-image:url(/assets/board-w4TnHpPy.webp) 56 fill/16px round;flex-direction:column;gap:6px;padding:2px}#gp-sidebar .instrument-btn{box-shadow:none;background:url(data:image/webp;base64,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) 50%/100% 100% no-repeat;border:0;border-radius:10px}#gp-sidebar .instrument-btn.active{box-shadow:0 0 0 3px var(--af-coral), 0 0 0 5px var(--af-ink)}#gp-sidebar .instrument-btn,#gp-accompaniment-toggle{justify-content:center;align-items:center;width:52px;height:52px;padding:0;font-size:1.35rem;line-height:1;display:flex}#gp-sidebar #gp-status:empty,#gp-sidebar #gp-error:empty{display:none}#gp-sidebar #gp-status,#gp-sidebar #gp-error{align-self:flex-start;width:max-content;max-width:240px;font-size:.8rem}#gp-sidebar #gp-capo-row{flex-direction:column;align-items:center;gap:2px;display:flex}#gp-sidebar #gp-capo-row label{margin:0;font-size:.72rem}#gp-sidebar #gp-capo-input{text-align:center;padding:4px 6px;width:52px!important}.hud-toggle{box-shadow:0 2px 0 var(--btn-shadow-cream);border-width:2px;padding:2px 10px;font-size:.95rem;line-height:1.4}.hud-toggle.active{background:var(--af-grass);border-color:var(--af-grass-deep);box-shadow:0 2px 0 var(--btn-shadow-leaf)}#gp-setup{z-index:15;flex-direction:column;gap:4px;max-height:100vh;padding:0 20px 38px;display:flex;position:absolute;bottom:0;left:0;right:0}#gp-setup.starting .record-flow{pointer-events:none;opacity:.75}.instrument-buttons{flex-wrap:wrap;gap:6px;display:flex}.instrument-btn{padding:7px 12px;font-size:.85rem}.sidebar-icon{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:64%;height:64%;display:block}#gp-accompaniment-toggle{position:relative}#gp-accompaniment-toggle:not(.active) .sidebar-icon{filter:grayscale();opacity:.45}#gp-accompaniment-toggle:not(.active):after{content:"";background:var(--af-coral);height:4px;box-shadow:0 0 0 1px var(--af-ink);pointer-events:none;border-radius:2px;margin-top:-2px;position:absolute;top:50%;left:20%;right:20%;transform:rotate(-45deg)}.instrument-btn.active{background:var(--af-grass);border-color:var(--af-grass-deep);color:var(--af-ink);box-shadow:0 4px 0 var(--btn-shadow-leaf)}.instrument-btn.active:hover:not(:disabled){background:color-mix(in srgb, var(--af-grass) 88%, var(--af-cream));border-color:var(--af-grass-deep);box-shadow:0 6px 0 var(--btn-shadow-leaf)}.instrument-btn.active:active:not(:disabled){box-shadow:0 1px 0 var(--btn-shadow-leaf)}.instrument-slot{display:block;position:relative}.keyboard-mode-toggle{width:24px;height:24px;box-shadow:0 2px 0 var(--btn-shadow-cream);z-index:1;border-width:2px;border-radius:999px;padding:0;font-size:.8rem;line-height:1;position:absolute;bottom:-5px;right:-7px}.keyboard-mode-toggle:hover:not(:disabled){box-shadow:0 3px 0 var(--btn-shadow-cream);transform:none}.touch-mode-toggle{top:-5px;bottom:auto}.keyboard-mode-toggle.active{background:var(--af-grass);border-color:var(--af-grass-deep);box-shadow:0 2px 0 var(--btn-shadow-leaf)}.speed-steps{border:10px solid #0000;border-image:url(/assets/board-w4TnHpPy.webp) 56 fill/10px round;flex-direction:row;justify-content:center;align-self:center;gap:2px;margin-bottom:4px;padding:0 2px;display:flex}.speed-step{font-family:var(--font-pixel);letter-spacing:0;color:var(--af-cream);box-shadow:none;text-shadow:1px 0 0 var(--af-ink), -1px 0 0 var(--af-ink), 0 1px 0 var(--af-ink), 0 -1px 0 var(--af-ink), 0 2px 0 var(--af-ink);background:0 0;border:none;border-radius:6px;padding:3px 7px;font-size:11px}.speed-step:hover:not(:disabled){color:var(--af-amber);box-shadow:none;background:0 0;transform:none}.speed-step:active:not(:disabled){box-shadow:none;transform:none}.speed-step.active,.speed-step.active:hover:not(:disabled){color:var(--af-ink);background:var(--af-cream);box-shadow:inset 0 0 0 2px var(--af-coral);text-shadow:none}.keyboard-hint{white-space:nowrap;max-width:100%;font-family:var(--font-pixel);font-variant-numeric:tabular-nums;color:var(--text-dim);border:10px solid #0000;border-image:url(/assets/panel-BhREc373.webp) 48 44 fill/10px 9px round;flex:none;align-self:center;margin:0;padding:0 6px;font-size:11px;line-height:1.6;overflow-x:auto}#gp-error{color:var(--red);font-size:.85rem;font-weight:800}#gp-status{color:var(--cyan);font-size:.85rem;font-weight:700}#gp-start-hint{color:var(--text-dim);text-align:center;text-shadow:0 1px 0 var(--af-cream), 0 0 4px var(--af-cream), 0 0 8px var(--af-cream);flex:none;margin:0;font-size:.72rem;line-height:1.35}#gp-auto-calib{background:var(--track-bg);border:2px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:inset 0 2px 8px var(--af-shadow);margin:4px 0;padding:16px}#gp-countdown{z-index:25;font-family:var(--font-pixel);color:var(--gold);-webkit-text-stroke:6px color-mix(in srgb, var(--af-cream) 88%, transparent);paint-order:stroke fill;text-shadow:0 6px 18px var(--af-shadow);pointer-events:none;justify-content:center;align-items:center;margin:0;font-size:clamp(4rem,18vh,11rem);font-weight:700;line-height:1;display:flex;position:absolute;inset:0}.record-flow{perspective:900px;touch-action:none;cursor:grab;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:none;flex:none;height:176px;position:relative;overflow:visible}.record-flow:focus-visible{border-radius:var(--radius-md);box-shadow:inset 0 0 0 3px var(--focus-ring)}.record-flow.dragging{cursor:grabbing}.record-flow-item{will-change:transform, opacity;width:148px;height:148px;margin:-74px 0 0 -74px;transition:transform .28s,opacity .28s;position:absolute;top:50%;left:50%}.record-flow.dragging .record-flow-item{transition:none}@media (prefers-reduced-motion:reduce){.record-flow-item{transition:none}}.record-flow-item.selected .record-disc{box-shadow:0 0 0 4px var(--glow-gold), 0 10px 26px var(--af-shadow-strong);cursor:pointer}.record-play-cue{background:var(--af-grass);border:3px solid var(--af-grass-deep);box-shadow:0 3px 0 var(--btn-shadow-leaf);color:var(--af-ink);letter-spacing:.3px;white-space:nowrap;pointer-events:none;border-radius:999px;padding:3px 12px;font-size:.72rem;font-weight:800;display:none;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.record-flow-item.selected .record-play-cue{display:block}.record-flow-item.selected .record-disc:hover .record-play-cue{background:color-mix(in srgb, var(--af-grass) 88%, var(--af-cream));box-shadow:0 5px 0 var(--btn-shadow-leaf)}.record-disc{background:repeating-radial-gradient(circle at center, color-mix(in srgb, var(--af-cream) 10%, transparent) 0px, color-mix(in srgb, var(--af-cream) 10%, transparent) 1px, color-mix(in srgb, var(--af-ink) 30%, transparent) 2px, color-mix(in srgb, var(--af-ink) 30%, transparent) 5px), radial-gradient(circle at center, var(--af-wood-deep), var(--af-ink) 70%);border:3px solid var(--af-line);width:100%;height:100%;box-shadow:0 8px 22px var(--af-shadow);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.record-disc:after{content:"";background:var(--af-cream);width:12px;height:12px;box-shadow:0 0 0 2px color-mix(in srgb, var(--af-ink) 45%, transparent);border-radius:50%;position:absolute}.cover-art-slot{background:color-mix(in srgb, var(--af-sky) 40%, var(--af-cream));border:2.5px dashed var(--panel-border-strong);border-radius:50%;justify-content:center;align-items:center;width:56%;height:56%;display:flex;position:relative;overflow:hidden}.cover-art-slot:has(img){border:3px solid var(--panel-border-strong)}.cover-art-slot img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cover-art-placeholder{color:var(--text-faint);opacity:.7;font-size:1.8rem}.record-flow-info{text-align:center;border:14px solid #0000;border-image:url(/assets/panel-BhREc373.webp) 48 44 fill/14px 13px round;flex-wrap:wrap;flex:none;justify-content:center;align-self:center;align-items:baseline;gap:2px 10px;padding:1px 10px;display:flex}.record-flow-info h3{margin:0;font-size:1rem}.record-flow-info p{margin:0}.song-custom-badge{letter-spacing:.6px;background:var(--af-amber);color:var(--af-ink);border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:800;display:inline-block}#gp-song-title{color:var(--text)}.song-stars{color:var(--gold);letter-spacing:3px;text-shadow:0 1px 0 color-mix(in srgb, var(--af-cream) 80%, transparent);margin:0}.song-stars .star{display:inline-block;position:relative}.song-stars .star-half-fill{width:50%;position:absolute;top:0;left:0;overflow:hidden}.song-meta{color:var(--text-faint);font-family:var(--font-pixel);margin:0;font-size:11px}.carousel-counter{text-align:center;color:var(--text-faint);font-family:var(--font-pixel);font-variant-numeric:tabular-nums;margin:0;font-size:11px}#gp-hud{z-index:15;width:min(1100px,100vw - 24px);filter:drop-shadow(0 6px 10px var(--af-shadow));border:14px solid #0000;border-image:url(/assets/panel-BhREc373.webp) 48 44 fill/14px 13px round;flex-direction:column;gap:6px;padding:2px 8px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}#gp-hud>div{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.hud-stat{color:var(--text-dim);white-space:nowrap;font-size:.85rem}.hud-stat b{font-family:var(--font-pixel);font-variant-numeric:tabular-nums;vertical-align:-2px;margin-left:4px;font-size:22px;font-weight:700}#gp-hud-title{color:var(--text);white-space:nowrap;font-weight:800}.gp-progress-track{flex:1;min-width:120px}#gp-hud-progress{background:linear-gradient(to bottom, color-mix(in srgb, var(--af-cream) 45%, transparent) 0 35%, transparent 35%), linear-gradient(90deg, var(--af-grass), var(--af-grass-deep));border-radius:3px;width:0%;height:100%;transition:width .15s linear}#gp-hud-accuracy{color:var(--gold)}#gp-hud-combo{color:var(--cyan)}#gp-hud-offset{color:var(--text-dim);font-variant-numeric:tabular-nums}#gp-hud-offset.gp-offset-warning{color:var(--gold);font-weight:800}#gp-hud-mic-level{color:var(--text-faint);font-size:.85rem}#gp-hud-warning{color:var(--gold);font-weight:800;animation:1.2s ease-in-out infinite gp-pulse}@keyframes gp-pulse{0%,to{opacity:1}50%{opacity:.5}}#gp-pause-overlay{background:color-mix(in srgb, var(--af-cream) 60%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:fixed;inset:0}#gp-pause-overlay h2{color:var(--af-cream);text-shadow:2px 0 0 var(--af-ink), -2px 0 0 var(--af-ink), 0 2px 0 var(--af-ink), 0 -2px 0 var(--af-ink), 0 3px 0 var(--af-ink);border:14px solid #0000;border-image:url(/assets/board-w4TnHpPy.webp) 56 fill/14px round;margin-bottom:8px;padding:0 18px;font-size:1.6rem}#gp-pause-overlay>button{width:min(320px,90vw)}#gp-pause-overlay>div{width:min(320px,90vw);filter:drop-shadow(0 6px 10px var(--af-shadow));text-align:center;border:14px solid #0000;border-image:url(/assets/panel-BhREc373.webp) 48 44 fill/14px 13px round;margin:6px 0;padding:4px}#gp-loop-status{color:var(--text-faint);margin-top:6px;font-size:.8rem;display:block}.settings-header{align-items:center;gap:16px;margin-bottom:8px;display:flex}.settings-header h1{margin:0}.settings-subnav{border-bottom:2px dashed var(--panel-border);gap:8px;margin:16px 0 20px;padding-bottom:12px;display:flex}.settings-subnav button{box-shadow:none;color:var(--text-dim);background:0 0;border:3px solid #0000}.settings-subnav button:hover:not(:disabled){border-color:var(--af-coral);background:color-mix(in srgb, var(--af-coral) 12%, transparent);box-shadow:none}.settings-subnav button.active{background:var(--af-cream);border-color:var(--af-grass-deep);color:var(--af-ink)}.settings-subnav button.active:hover:not(:disabled){background:var(--af-cream);border-color:var(--af-grass-deep)}.settings-midi-row{background:var(--panel-bg);border:2px solid var(--panel-border);border-radius:var(--radius-md);flex-direction:column;gap:8px;margin-top:20px;padding:14px 16px;display:flex}#settings-midi-status{color:var(--cyan);margin:0}#settings-midi-status.settings-midi-error{color:var(--red);font-weight:800}.tuner-device-row,.calibration-row{background:var(--panel-bg);border:2px solid var(--panel-border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:14px 16px;display:flex}.tuner-device-hint{color:var(--text-faint);font-size:.75rem}.tuner-warning{color:var(--gold)}.tuner-error,.calibration-error{color:var(--red);font-weight:800}.tuner-level-meter{align-items:center;gap:10px;margin-bottom:20px;display:flex}.tuner-level-bar-track{flex:1}.tuner-level-bar-fill{background:linear-gradient(90deg, var(--af-grass), var(--af-grass-deep));border-radius:3px;width:0%;height:100%;transition:width .1s linear}.tuner-display{text-align:center;background:var(--panel-bg-strong);border:3px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:0 10px 26px var(--af-shadow);padding:32px}.tuner-note-name{color:var(--cyan);text-shadow:0 3px 0 color-mix(in srgb, var(--af-cream) 80%, transparent), 0 0 18px var(--glow-cyan);font-size:3.5rem;font-weight:800}.tuner-cents{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:1.2rem}.tuner-hint{text-align:center;color:var(--text-dim)}.calibration-hint{color:var(--text-dim);font-size:.9rem}.calibration-status{color:var(--cyan)}.calibration-saved{color:var(--gold);font-weight:800}.calibration-result{background:var(--panel-bg-strong);border:3px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:0 10px 26px var(--af-shadow);margin-top:16px;padding:20px}.calibration-result strong{color:var(--gold);font-size:1.3rem;font-weight:800}.results-screen h1{color:var(--text)}.results-accuracy{font-family:var(--font-pixel);color:var(--gold);text-shadow:0 3px 0 color-mix(in srgb, var(--af-cream) 80%, transparent);margin:0;font-size:44px;font-weight:700}.results-distribution{background:var(--panel-bg-strong);border:3px solid var(--panel-border);border-radius:var(--radius-md);box-shadow:0 8px 22px var(--af-shadow);flex-direction:column;gap:8px;margin:16px 0;padding:16px 20px;display:flex}.results-distribution-row{grid-template-columns:64px 1fr 40px;align-items:center;gap:10px;display:grid}.results-distribution-row:first-child span:first-child{color:var(--cyan)}.results-distribution-row:nth-child(2) span:first-child{color:var(--green)}.results-distribution-row:nth-child(3) span:first-child{color:var(--gold)}.results-distribution-row:nth-child(4) span:first-child{color:var(--red)}.results-distribution-row:nth-child(5) span:first-child{color:var(--gray)}.results-bar-fill{background:currentColor;border-radius:3px;height:100%}.results-distribution-row:first-child .results-bar-fill{background:var(--judge-perfect)}.results-distribution-row:nth-child(2) .results-bar-fill{background:var(--af-grass)}.results-distribution-row:nth-child(3) .results-bar-fill{background:var(--af-amber)}.results-distribution-row:nth-child(4) .results-bar-fill{background:var(--af-coral)}.results-distribution-row:nth-child(5) .results-bar-fill{background:#a6957e}.results-recalibrate-warning{color:var(--gold);font-weight:800}.results-screen ul{flex-direction:column;gap:4px;margin:8px 0;padding:0;list-style:none;display:flex}.results-screen li{background:var(--panel-bg);border:2px solid var(--panel-border);border-radius:var(--radius-sm);color:var(--text-dim);padding:8px 12px}@media (width<=640px){.settings-screen,.calibration-screen,.tuner-screen,.results-screen{border-width:14px;border-image-width:14px 13px;margin:10px 8px;padding:10px 8px 24px}.gameplay-screen{padding:0}#gp-sidebar{flex-flow:wrap;align-items:center;gap:6px;width:auto;padding:0;inset:80px 8px auto}#gp-sidebar .instrument-buttons{flex-direction:row}#gp-setup{padding:0 10px 36px}#gp-hud{border-width:10px;border-image-width:10px 9px;top:6px}#gp-hud>div{gap:6px 12px}.gp-progress-track{min-width:60px}.record-flow{height:148px}.record-flow-item{width:120px;height:120px;margin:-60px 0 0 -60px}#gp-header h1{width:120px;padding-top:22px;font-size:1.1rem}.tuner-note-name{font-size:2.4rem}.results-accuracy{font-size:33px}.results-distribution-row{grid-template-columns:56px 1fr 32px}}@media (prefers-reduced-motion:reduce){button,select,input,.gp-progress-track,#gp-hud-progress,.tuner-level-bar-fill{transition-duration:10ms}#gp-hud-warning{animation:none}}.copyright{display:none}#app:has(#gp-setup:not([hidden])) .copyright{white-space:nowrap;color:#fffffff2;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-size:12px;font-weight:500;font-family:var(--font-body);z-index:40;pointer-events:none;background:#00000073;border-radius:999px;padding:4px 12px;display:inline-block;position:fixed;bottom:6px;left:50%;transform:translate(-50%)}.copyright__mail{vertical-align:-2px;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px;margin-right:3px;display:inline-block}@media (width<=420px){.copyright{white-space:normal}}
