.chord-select,.tuning-input,#scale-library-select,#tonic-note-select,.preset-select{font-family:var(--font-family);background-color:var(--secondary-color);color:var(--text-color);border:2px solid var(--secondary-color);padding:.3rem 2rem .3rem 1rem;border-radius:20px;font-size:.95rem;cursor:pointer;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .3s ease;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E0E1DD%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right .8rem center;background-size:.65em auto;height:36px;box-sizing:border-box;display:flex;align-items:center}[data-theme=light] .chord-select,[data-theme=light] .tuning-input,[data-theme=light] #scale-library-select,[data-theme=light] #tonic-note-select,[data-theme=light] .preset-select{background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231B263B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E)}.custom-select-trigger:not(.logic-mode-trigger):after{content:"";width:.8em;height:.8em;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E0E1DD%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-size:contain;background-position:center;opacity:.5;flex-shrink:0;margin-left:.5rem}[data-theme=light] .custom-select-trigger:not(.logic-mode-trigger):after{background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231B263B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E)}.group-visual .group-title{--gt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.7'/%3E%3Ccircle cx='12' cy='12' r='2.3'/%3E%3Ccircle cx='12' cy='5.8' r='1.15'/%3E%3Ccircle cx='17.37' cy='8.9' r='1.15'/%3E%3Ccircle cx='17.37' cy='15.1' r='1.15'/%3E%3Ccircle cx='12' cy='18.2' r='1.15'/%3E%3Ccircle cx='6.63' cy='15.1' r='1.15'/%3E%3Ccircle cx='6.63' cy='8.9' r='1.15'/%3E%3C/svg%3E")}.group-export .group-title{--gt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V4'/%3E%3Cpath d='m8.5 7.5 3.5-3.5 3.5 3.5'/%3E%3Cpath d='M4 13v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5'/%3E%3C/svg%3E")}.theme-eco .mini-handpan-svg.show-texture.material-black .handpan-body{fill:url(#grad-black)}.theme-eco .mini-handpan-svg.show-texture.material-metal .handpan-body{fill:url(#grad-metal)}.theme-eco .mini-handpan-svg.show-texture.material-walnut .handpan-body{fill:url(#grad-walnut)}.theme-eco .mini-handpan-svg.show-texture.material-beech .handpan-body{fill:url(#grad-beech)}.theme-eco .mini-handpan-svg.show-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.hands-mode-color .note-group.hand-split .note-hand-outline,.hands-mode-text .note-group.hand-split .note-hand-outline,.hands-mode-precise .note-group.hand-split .note-hand-outline,.partition-main-handpan.hands-mode-visible .note-group.hand-split .note-hand-outline{stroke:url(#splitHandGradient);opacity:1}.note-text-bg{fill:url(#noteTextBgGradient);pointer-events:none}.highlight-both{stroke:url(#grad-learn-both)!important;stroke-width:4px!important;filter:drop-shadow(0 0 10px rgba(255,255,255,.8))!important;opacity:1!important}.mini-handpan-svg.show-texture .handpan-body{fill:url(#grad-neotone)}.mini-handpan-svg.show-texture.material-neotone .handpan-body{fill:url(#grad-neotone)}.mini-handpan-svg.show-texture.material-black .handpan-body{fill:url(#grad-black)}.mini-handpan-svg.show-texture.material-white .handpan-body{fill:url(#grad-white)}.mini-handpan-svg.show-texture.material-look-steel .handpan-body{fill:url(#grad-steel)}.mini-handpan-svg.show-texture.material-metal .handpan-body{fill:url(#grad-metal)}.mini-handpan-svg.show-texture.material-walnut .handpan-body{fill:url(#pattern-walnut)}.mini-handpan-svg.show-texture.material-beech .handpan-body{fill:url(#pattern-beech)}.mini-handpan-svg.show-texture.material-oak .handpan-body{fill:url(#pattern-oak)}.mini-handpan-svg.show-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.mini-handpan-svg.show-texture.material-metal-realistic .handpan-body{fill:url(#pattern-metal-realistic)}.mini-handpan-svg.show-texture.material-neotone-walnut .handpan-body{fill:url(#pattern-neotone-walnut)}.mini-handpan-svg.show-texture.material-metal-new .handpan-body{fill:url(#pattern-metal-new)}.mini-handpan-svg.show-texture.material-hetre-new .handpan-body{fill:url(#pattern-hetre-new)}.mini-handpan-svg.show-texture.material-noyer-new .handpan-body{fill:url(#pattern-noyer-new)}.theme-eco .partition-main-handpan.force-texture.material-neotone .handpan-body{fill:url(#grad-neotone)}.theme-eco .partition-main-handpan.force-texture.material-black .handpan-body{fill:url(#grad-black)}.theme-eco .partition-main-handpan.force-texture.material-metal .handpan-body{fill:url(#grad-metal)}.theme-eco .partition-main-handpan.force-texture.material-walnut .handpan-body{fill:url(#pattern-walnut)}.theme-eco .partition-main-handpan.force-texture.material-beech .handpan-body{fill:url(#pattern-beech)}.theme-eco .partition-main-handpan.force-texture.material-oak .handpan-body{fill:url(#pattern-oak)}.theme-eco .partition-main-handpan.force-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.theme-eco .partition-main-handpan.force-texture.material-metal-realistic .handpan-body{fill:url(#pattern-metal-realistic)}.theme-eco .partition-main-handpan.force-texture.material-neotone-walnut .handpan-body{fill:url(#pattern-neotone-walnut)}.theme-eco .partition-main-handpan.force-texture.material-metal-new .handpan-body{fill:url(#pattern-metal-new)}.theme-eco .partition-main-handpan.force-texture.material-hetre-new .handpan-body{fill:url(#pattern-hetre-new)}.theme-eco .partition-main-handpan.force-texture.material-noyer-new .handpan-body{fill:url(#pattern-noyer-new)}.theme-eco .mini-handpan-svg.show-texture .handpan-body{fill:url(#grad-neotone)}.tuto-pointer-arrow path{fill:none;stroke:#ef4444;stroke-width:3px;stroke-linecap:round;marker-end:url(#arrowhead-red)}.mobile-nav-bar,.mobile-fab,.mobile-menu-toggle-btn,.mobile-menu-dropdown,.panel-fab,.panel-fab .panel-fab-close,#panel-fab-backdrop{display:none}.controls-header{flex-wrap:nowrap}.main-navigation-bar{flex-shrink:0;flex-wrap:nowrap}.main-navigation-bar>.nav-tab{flex-shrink:0;white-space:nowrap}.main-navigation-bar>.nav-tab .nav-tab-label{white-space:nowrap;overflow:visible}.controls-header.header-compact .main-navigation-bar>.nav-tab{display:none!important}.controls-header.header-compact .mobile-menu-toggle-btn{display:inline-flex!important}.mobile-menu-toggle-btn{align-items:center;gap:.55rem;background:#22d3ee14;border:1px solid rgba(34,211,238,.25);border-radius:14px;padding:.4rem .75rem;color:var(--text-color);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease;touch-action:manipulation}.mobile-menu-toggle-btn:active,.mobile-menu-toggle-btn[aria-expanded=true]{background:#22d3ee2e;border-color:#22d3ee73}.hamburger-icon{display:inline-flex;flex-direction:column;justify-content:space-between;width:18px;height:14px}.hamburger-icon span{display:block;height:2px;background:currentColor;border-radius:1px;transition:transform .2s ease,opacity .15s ease}.mobile-menu-toggle-btn[aria-expanded=true] .hamburger-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle-btn[aria-expanded=true] .hamburger-icon span:nth-child(2){opacity:0}.mobile-menu-toggle-btn[aria-expanded=true] .hamburger-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu-current{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem}.mobile-menu-current-icon{font-size:1.05rem;line-height:1}.mobile-menu-current-label{max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:auto;min-width:180px;background:var(--primary-color, #0D1B2A);border:1px solid rgba(34,211,238,.35);border-radius:14px;box-shadow:0 12px 32px #00000073;padding:.35rem;z-index:700;flex-direction:column;gap:.15rem;animation:mobileMenuDropIn .16s ease-out}.mobile-menu-dropdown.open{display:flex!important}@keyframes mobileMenuDropIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-menu-item{display:flex;align-items:center;gap:.7rem;background:transparent;border:none;color:var(--text-color);padding:.65rem .8rem;border-radius:10px;font-family:inherit;font-size:.92rem;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease;min-height:44px;touch-action:manipulation}.mobile-menu-item:active,.mobile-menu-item:hover{background:#22d3ee1f}.mobile-menu-item.active{background:#22d3ee2e;color:var(--highlight-color, #22D3EE);font-weight:700}.mobile-menu-item .mmi-icon{font-size:1.25rem;line-height:1;flex-shrink:0;width:24px;text-align:center}[data-theme=light] .mobile-menu-dropdown{background:#fff;border-color:#2563eb4d;box-shadow:0 12px 32px #0000002e}[data-theme=light] .mobile-menu-toggle-btn{background:#2563eb14;border-color:#2563eb40;color:#1b263b}[data-theme=light] .mobile-menu-item.active{color:#2563eb;background:#2563eb1f}.mobile-menu-item .mmi-icon,.mobile-menu-current-icon{display:none!important}.mobile-menu-current,.mobile-menu-current-label,.mobile-menu-item,.mmi-label{font-family:Poppins,sans-serif;font-weight:500;letter-spacing:normal;text-transform:none}.mobile-menu-current,.mobile-menu-current-label{font-size:.9rem}.mobile-menu-item,.mmi-label{font-size:.95rem}.mobile-menu-item,.mobile-menu-current{gap:0!important}.mobile-menu-item.active,.mobile-menu-item.active .mmi-label{font-weight:800;color:var(--highlight-color, #22D3EE)}.scroll-to-top-btn{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0));width:44px;height:44px;border-radius:50%;background:var(--highlight-color, #22D3EE);color:#0d1b2a;border:none;box-shadow:0 4px 14px #00000059,0 0 0 1px #ffffff14;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(8px) scale(.9);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:800;touch-action:manipulation}.scroll-to-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.scroll-to-top-btn:hover{transform:translateY(-2px) scale(1.05)}.scroll-to-top-btn:active{transform:scale(.92)}[data-theme=light] .scroll-to-top-btn{background:#2563eb;color:#fff}@media(max-width:1023px){.workspace-grid{flex-direction:column!important;gap:.75rem!important;padding:.5rem!important}.main-column,#right-sidebar{width:100%!important;flex:none!important;max-width:100%!important}#handpan-container{width:75%!important;max-width:520px!important;margin:0 auto}body:not(.rs-overlay-mode) #right-sidebar{position:relative;max-height:55vh;overflow-y:auto;overflow-x:hidden;border-top:2px solid var(--current-outline-color, #FFC80088);border-radius:16px 16px 0 0;padding:.6rem .8rem 1rem;background:var(--primary-color);scroll-behavior:smooth}body:not(.rs-overlay-mode) #right-sidebar:before{content:"";display:block;width:44px;height:4px;background:var(--secondary-color, #1E3A56);border-radius:2px;margin:4px auto 8px;opacity:.6}body.rs-overlay-mode .workspace-grid{flex-direction:column!important}body.rs-overlay-mode .main-column{width:100%!important;max-width:100%!important;flex:1 1 100%!important;padding-right:0!important}body.rs-overlay-mode #handpan-container{width:78%!important;max-width:560px!important;margin:0 auto}body.rs-overlay-mode #right-sidebar{position:fixed!important;top:0;right:0;bottom:0;left:auto!important;width:min(320px,86vw)!important;max-width:86vw!important;min-width:0!important;flex:none!important;max-height:100vh!important;height:100vh!important;max-height:100dvh!important;height:100dvh!important;margin:0!important;padding:calc(3rem + env(safe-area-inset-top,0)) calc(.7rem + env(safe-area-inset-right,0)) calc(1rem + env(safe-area-inset-bottom,0)) .7rem!important;background:var(--primary-color);border-left:1px solid var(--current-outline-color, #FFC80088);border-radius:16px 0 0 16px;box-shadow:-10px 0 30px #00000073;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:1200;transform:translate(100%);will-change:transform}body.rs-ready.rs-overlay-mode #right-sidebar{transition:transform .28s cubic-bezier(.2,.8,.2,1)}body.rs-overlay-mode.rs-overlay-open #right-sidebar{transform:translate(0)}body.rs-overlay-mode #right-sidebar.collapsed{min-width:0!important;width:min(320px,86vw)!important;flex:none!important;padding:3rem .7rem 1rem!important;background:var(--primary-color)!important;border:none!important;border-left:1px solid var(--current-outline-color, #FFC80088)!important}body.rs-overlay-mode #right-sidebar.collapsed>*:not(.sidebar-toggle-btn){display:revert!important}body.rs-overlay-mode #right-sidebar *{max-width:100%}body.rs-overlay-mode #right-sidebar .controls,body.rs-overlay-mode #right-sidebar .control-group{min-width:0!important}body.rs-overlay-mode .sidebar-toggle-btn{position:fixed!important;top:50%;right:0;left:auto!important;transform:translateY(-50%);width:26px;height:68px;border-radius:12px 0 0 12px;background:var(--primary-color);border:1px solid var(--current-outline-color, #FFC80088);border-right:none;box-shadow:-4px 0 12px #00000040;z-index:1201}body.rs-overlay-mode.rs-overlay-open .sidebar-toggle-btn{right:min(320px,86vw)}body.rs-overlay-mode .sidebar-toggle-btn svg{transform:rotate(0)}body.rs-overlay-mode.rs-overlay-open .sidebar-toggle-btn svg{transform:rotate(180deg)}#rs-overlay-backdrop{display:none;position:fixed;inset:0;background:#0006;z-index:1150;opacity:0;transition:opacity .2s ease}body.rs-overlay-mode.rs-overlay-open #rs-overlay-backdrop{display:block;opacity:1}body.rs-overlay-mode #right-sidebar:before{display:none}#toolbox{padding:.4rem .6rem!important}.controls-header{gap:.4rem!important;flex-wrap:wrap!important}.main-navigation-bar{gap:.2rem!important}.toolbox-footer-tools{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem!important;align-items:stretch;overflow:visible!important}#toolbox .tool-group{flex:initial;min-width:0!important;width:100%;box-sizing:border-box}#toolbox .group-visual{grid-column:1 / -1;min-width:0!important}#toolbox .group-visual .group-content{flex-wrap:wrap!important;justify-content:flex-start;min-width:0!important}#toolbox .group-content{min-width:0!important}#toolbox .material-select{max-width:100%}.chord-rows-wrapper,#chord-rows-wrapper{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:6px}.chord-rows-wrapper>.control-group,#chord-rows-wrapper>.control-group{scroll-snap-align:start;flex:0 0 auto}button,.tool-button,.modifier-btn,.nav-tab,.segment-btn{min-height:40px;min-width:40px}.icon-btn{min-width:40px;min-height:40px}.chord-actions-group .play-chord-button,.chord-actions-group .show-path-button,.chord-actions-group .bonus-notes-button{min-height:40px;min-width:32px}.chord-actions-group{gap:.15rem}header h1{font-size:1.6rem!important;margin-block:.4rem!important}header .subtitle,header .byline{font-size:.8rem!important;margin-block:0!important}#tutorial-card{max-width:90vw!important;width:90vw!important}#tuto-content{font-size:.88rem!important;line-height:1.45!important}}@media(max-width:640px){#btn-fullscreen{display:none!important}header{padding:.4rem .4rem .2rem!important}header h1{font-size:1.05rem!important;margin:0!important;line-height:1.1!important}header .subtitle,header .byline,header .powered-by{display:none!important}}@media(max-width:1023px){.controls-header{align-items:center!important;gap:.4rem!important;padding:.3rem .4rem!important}.main-navigation-bar{position:relative;flex:0 0 auto;justify-content:flex-start}.right-header-controls{flex:1 1 auto;justify-content:flex-end!important;gap:.3rem!important}.right-header-controls #btn-toggle-toolbox{padding:.4rem .55rem!important}.theme-slider-wrapper,.header-left{display:none!important}#btn-launch-tutorial{padding:.4rem .55rem!important;font-size:1.1rem!important}}@media(max-width:640px){.right-header-controls>#btn-language,.right-header-controls #btn-toggle-toolbox span:not(.toggle-icon){display:none!important}.right-header-controls{gap:6px!important}.workspace-grid{padding:.3rem!important;gap:.4rem!important}#handpan-container{width:70%!important;max-width:78vw!important;margin:0 auto}.model-toggle-aligned-right{gap:.3rem!important;padding:.25rem .5rem!important;font-size:.72rem!important}.model-toggle-label{font-size:.7rem!important;white-space:nowrap}.model-toggle-label sup{font-size:.55rem}.model-toggle-switch{transform:scale(.85)}#right-sidebar{position:fixed!important;bottom:0;left:0;right:0;z-index:500;max-height:75vh;background:var(--primary-color);border-radius:18px 18px 0 0;box-shadow:0 -6px 24px #0006;transform:translateY(calc(100% - 44px));transition:transform .25s cubic-bezier(.2,.8,.2,1);padding:0 .8rem 1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0));will-change:transform}#right-sidebar:before{content:"";display:block;width:50px;height:5px;background:var(--highlight-color, #22D3EE);border-radius:3px;margin:8px auto 6px;opacity:.7;cursor:grab}#right-sidebar.mobile-open{transform:translateY(0);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}#right-sidebar:not(.mobile-open):after{content:"↑ Panneau accords";display:block;text-align:center;font-size:.75rem;color:var(--text-color);opacity:.6;font-weight:600;margin-bottom:4px}.mobile-nav-bar{display:none!important}body{padding-bottom:env(safe-area-inset-bottom,0)}.toolbox-footer-tools{display:none}.toolbox-footer-tools:not(.collapsed){display:grid!important;grid-template-columns:1fr!important;gap:.5rem!important;padding:.5rem!important;max-height:60vh;overflow-y:auto;overflow-x:hidden!important}#toolbox .tool-group{width:100%;min-width:0!important;box-sizing:border-box;align-items:stretch}#toolbox .group-visual,#toolbox .group-visual .group-content,#toolbox .group-content{min-width:0!important}#toolbox .group-visual .group-content{flex-wrap:wrap!important;justify-content:flex-start}#toolbox .material-select{width:100%;max-width:100%}.modifier-btn{min-width:44px;min-height:44px;padding:.4rem!important}.chord-actions-group .play-chord-button,.chord-actions-group .show-path-button,.chord-actions-group .bonus-notes-button{min-width:32px;min-height:40px;padding:0!important}.control-group{min-width:110px}.partition-modal-content{width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important}.partition-editor-body{flex-direction:column!important}.partition-settings{width:100%!important;max-width:100%!important;max-height:40vh!important;overflow-y:auto;border-right:none!important;border-bottom:1px solid rgba(255,255,255,.1)}.partition-preview-container{width:100%!important;flex:1}.partition-editor-header{flex-wrap:wrap!important;gap:.4rem!important;padding:.5rem!important}.partition-editor-header .header-actions{flex-wrap:wrap!important;gap:.3rem!important;justify-content:center!important;flex:1 1 100%}.language-modal-content,.modal-content{width:95vw!important;max-width:95vw!important}#tutorial-card.visible{position:fixed!important;bottom:calc(10px + env(safe-area-inset-bottom,0))!important;left:50%!important;top:auto!important;transform:translate(-50%)!important;width:92vw!important;max-width:92vw!important;max-height:60vh!important;overflow-y:auto!important}#tutorial-card.arrow-top:after,#tutorial-card.arrow-bottom:after,#tutorial-card.arrow-left:after,#tutorial-card.arrow-right:after{display:none!important}#tutorial-spotlight{box-shadow:0 0 0 9999px #0006!important}.panel-title,.group-title{font-size:.85rem!important}.control-group-label{font-size:.78rem!important}}@media(max-width:380px){.nav-tab{padding:.3rem .4rem!important;font-size:.7rem!important}.mobile-nav-bar button{font-size:.62rem}.mobile-nav-bar button .icon{font-size:1.2rem}header h1{font-size:.95rem!important}}@media(hover:none)and (pointer:coarse){.control-group .chord-modifiers-wrapper{opacity:1!important;visibility:visible!important;transform:none!important}button,.tool-button,a{touch-action:manipulation}button:active,.tool-button:active,.nav-tab:active{opacity:.7}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:fullscreen .workspace-grid,body.app-fullscreen .workspace-grid{height:calc(100vh - 90px);height:calc(100dvh - 90px);overflow:auto}:fullscreen header,body.app-fullscreen header{padding:.3rem!important}:fullscreen header h1,body.app-fullscreen header h1{font-size:1.4rem!important}html,body{overflow-x:hidden;padding-bottom:env(safe-area-inset-bottom,0)}@media(pointer:coarse){button,.tool-button,.modifier-btn,.nav-tab,.segment-btn,.icon-btn,.mobile-menu-item,select,.material-select,.atlas-ton,.library-tab-btn{min-height:44px}button,.tool-button,.modifier-btn,.segment-btn,.icon-btn{min-width:44px}.chord-actions-group .play-chord-button,.chord-actions-group .show-path-button,.chord-actions-group .bonus-notes-button{min-height:44px;min-width:34px}button,.tool-button,.nav-tab,.segment-btn,.icon-btn,.mobile-menu-item,.modifier-btn,.sidebar-toggle-btn,a{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;touch-action:manipulation}}@media(hover:none)and (pointer:coarse){.bonus-notes-button:not(.disabled){opacity:.85}.nav-tab{opacity:.85}.nav-tab.active,.atlas-custom-toggle,.atlas-back,.acreate-back,.acreate-exit,.acreate-modal-cancel,.acreate-slot .acreate-slot-play,.legal-modal-close{opacity:1}}@media(pointer:coarse){input,select,textarea,.material-select{font-size:16px!important}}@media(min-width:1024px)and (max-width:1200px)and (pointer:coarse)and (orientation:landscape){.workspace-grid{gap:.75rem!important;padding:.5rem calc(.5rem + env(safe-area-inset-right,0)) .5rem calc(.5rem + env(safe-area-inset-left,0))!important}#handpan-container{max-width:100%!important}.toolbox-footer-tools:not(.collapsed){display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem!important;overflow-x:hidden!important}#toolbox .tool-group{min-width:0!important}#toolbox .group-visual{grid-column:1 / -1;min-width:0!important}#toolbox .group-content{min-width:0!important}}@media(min-width:1024px)and (pointer:coarse)and (orientation:landscape){.workspace-grid{flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;max-width:100%!important}main #right-sidebar:not(.collapsed){display:flex!important;flex:0 0 clamp(280px,32%,400px)!important;min-width:280px!important;max-width:400px!important;transform:none!important;visibility:visible!important}.main-column{min-width:0!important}#right-sidebar .sidebar-toggle-btn{display:flex!important;position:absolute!important;left:-24px!important;top:1.2rem!important;width:24px!important;min-width:24px!important;height:60px!important;min-height:0!important}}@media(pointer:coarse){.modal-content,.language-modal-content,.partition-modal-content{max-height:100dvh;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.partition-settings,.partition-preview-container,.acoustic-chords-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}body.rs-overlay-mode .sidebar-toggle-btn{width:30px;height:76px}}@media(orientation:portrait)and (max-width:1024px){.workspace-grid{flex-direction:column!important}.main-column{width:100%!important;max-width:100%!important;flex:1 1 100%!important;min-width:0!important;padding-right:0!important}body.panel-open .workspace-grid{z-index:500!important}.panel-fab{display:inline-flex!important;align-items:center;justify-content:center;position:fixed;top:var(--fab-top, 25%);right:calc(.6rem + env(safe-area-inset-right,0));width:44px;height:44px;border-radius:12px;background:var(--primary-color);border:1px solid var(--current-outline-color, #FFC80088);color:var(--current-outline-color, #FFC800);box-shadow:0 4px 14px #00000052;z-index:1301;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .15s ease,background-color .2s ease}body.panel-open .panel-fab{top:calc(.6rem + env(safe-area-inset-top,0))!important}.panel-fab:active{transform:scale(.94)}.panel-fab .panel-fab-open{display:block}.panel-fab .panel-fab-close,body.panel-open .panel-fab .panel-fab-open{display:none}body.panel-open .panel-fab .panel-fab-close{display:block}main #right-sidebar,body.rs-overlay-mode #right-sidebar,#right-sidebar.mobile-open,main #right-sidebar.collapsed{position:fixed!important;inset:0 0 0 auto!important;width:min(360px,88vw)!important;max-width:88vw!important;min-width:0!important;height:100vh!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;flex:none!important;display:flex!important;flex-direction:column!important;padding:calc(3.2rem + env(safe-area-inset-top,0)) calc(.8rem + env(safe-area-inset-right,0)) calc(1rem + env(safe-area-inset-bottom,0)) .8rem!important;background:var(--primary-color)!important;border:none!important;border-left:1px solid var(--current-outline-color, #FFC80088)!important;border-radius:16px 0 0 16px!important;box-shadow:-10px 0 30px #00000073!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:1300!important;transform:translate(100%)!important;transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;visibility:visible!important}body.panel-open main #right-sidebar,body.panel-open #right-sidebar.mobile-open,body.panel-open main #right-sidebar.collapsed{transform:translate(0)!important}main #right-sidebar.collapsed>*:not(.sidebar-toggle-btn){display:revert!important}#right-sidebar *{max-width:100%}#right-sidebar .controls,#right-sidebar .control-group{min-width:0!important}.sidebar-toggle-btn{display:none!important}#right-sidebar:before,#right-sidebar:after{display:none!important}.toolbox-footer-tools:not(.collapsed){display:grid!important;grid-template-columns:1fr 1fr!important;gap:.35rem!important;padding:.4rem!important}#toolbox .group-palette{order:1!important}#toolbox .group-export{order:2!important}#toolbox .group-visual{order:3!important;grid-column:1 / -1!important}#toolbox .group-experimental{order:4!important;grid-column:1 / -1!important}#toolbox .tool-group{min-height:0!important;padding:.25rem .4rem!important;gap:.1rem!important;border-radius:12px!important}#toolbox .toolbox-footer-tools>:is(.group-palette,.group-export,#vessel-toolbox-island){gap:.5rem!important;padding:.3rem .6rem!important}#toolbox .tool-group .group-title{font-size:.6rem!important;margin-bottom:0!important;letter-spacing:.03em!important}#toolbox .group-content{gap:.25rem!important;row-gap:.15rem!important}#toolbox .group-visual{padding-left:.4rem!important;padding-right:.4rem!important}#toolbox .group-visual .sub-group{gap:.1rem!important;margin:0!important}#toolbox .setting-label-small,#toolbox .control-group-label{font-size:.6rem!important;margin:0 0 1px!important;line-height:1.05!important}#toolbox .setting-row,#toolbox .segment-row{margin:0!important}#panel-fab-backdrop{display:block!important;position:fixed;inset:0;background:#00000080;z-index:1290;opacity:0;pointer-events:none;transition:opacity .2s ease}body.panel-open #panel-fab-backdrop{opacity:1;pointer-events:auto}}@media(orientation:landscape)and (max-height:500px)and (max-width:1100px){header{display:none!important}body #toolbox{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:.45rem!important;padding:.2rem .4rem!important}.appmode-topbar{flex:0 0 auto!important;width:auto!important;margin:0!important;padding:0!important;gap:.35rem!important;min-height:0!important}.controls-header{flex:1 1 auto!important;min-width:0!important;flex-wrap:nowrap!important;border-bottom:none!important;width:auto!important}#toolbox button,#toolbox .segment-btn,#toolbox .icon-btn,#toolbox .nav-tab,#toolbox .appmode-btn{min-height:28px!important}.appmode-switch{padding:2px!important}.appmode-btn{padding:.1rem .5rem!important;font-size:.7rem!important}.appmode-icon{width:14px!important;height:14px!important}#toolbox .appmode-topbar .feedback-header-row{position:static!important;transform:none!important}#toolbox .feedback-header-btn{height:28px!important;padding:0 .45rem!important}.feedback-header-btn .fhb-label,.feedback-header-btn .fhb-beta{display:none!important}.controls-header{padding:0!important;gap:2px!important}.main-navigation-bar{gap:.6rem!important;margin:0!important}.nav-tab{padding:.15rem 0!important;font-size:.74rem!important;gap:.25rem!important}.nav-tab .hs-ico{width:15px!important;height:15px!important}.right-header-controls>button,.right-header-controls #btn-toggle-toolbox{padding:.2rem .45rem!important}.right-header-controls{flex-wrap:nowrap!important;flex:0 0 auto!important;gap:4px!important}.right-header-controls #btn-toggle-toolbox span:not(.toggle-icon){display:none!important}#toolbox .toolbox-footer-tools{display:none!important}#toolbox .toolbox-footer-tools:not(.collapsed){display:grid!important;position:absolute!important;top:calc(100% - 2px)!important;left:.4rem!important;right:.4rem!important;width:auto!important;box-sizing:border-box!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:.4rem!important;padding:.5rem!important;max-height:calc(100vh - 70px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;background:var(--primary-color)!important;border:1px solid var(--current-outline-color, #FFC80088)!important;border-radius:14px!important;box-shadow:0 12px 30px #00000080!important;z-index:900!important}#toolbox .tool-group{min-width:0!important;width:auto!important}#toolbox .group-visual,#toolbox .group-experimental{grid-column:1 / -1!important}#toolbox .group-content{min-width:0!important;flex-wrap:wrap!important}body{--ls-head: 84px;--ls-peek: 26px}body{overflow:hidden!important}body main{height:100vh!important;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}body .content-wrapper{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;gap:0!important;height:auto!important}body #toolbox{flex:0 0 auto!important}body.rs-overlay-mode .workspace-grid,body .workspace-grid{flex:1 1 auto!important;min-height:0!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:.35rem!important;padding:.25rem calc(.25rem + env(safe-area-inset-right,0)) .25rem calc(.25rem + env(safe-area-inset-left,0))!important;height:auto!important}body.rs-overlay-mode .main-column,body .main-column{flex:1 1 auto!important;width:auto!important;max-width:none!important;min-width:0!important;padding-right:0!important;height:100%!important;max-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body.rs-overlay-mode #handpan-container,body #handpan-container{--ls-pan-top: 0px;flex:0 0 auto!important;align-self:center!important;height:calc(100% - var(--ls-peek) - var(--ls-pan-top))!important;aspect-ratio:1 / 1!important;width:auto!important;max-width:100%!important;margin:var(--ls-pan-top) auto 0!important}body #handpan-container.palette-compact,body #handpan-container.palette-full{--ls-pan-top: 26px}#midi-instructions{max-height:86px!important;overflow-y:auto;overscroll-behavior:contain;font-size:.78rem!important;flex:0 0 auto!important}main #right-sidebar,body.rs-overlay-mode #right-sidebar,#right-sidebar.mobile-open,main #right-sidebar.collapsed{position:relative!important;inset:auto!important;transform:none!important;transition:none!important;flex:0 0 clamp(230px,38%,320px)!important;width:auto!important;min-width:0!important;max-width:40%!important;height:100%!important;max-height:100%!important;margin:0!important;padding:.3rem .45rem calc(.4rem + env(safe-area-inset-bottom,0)) .45rem!important;display:flex!important;flex-direction:column!important;background:var(--primary-color)!important;border:none!important;border-left:1px solid var(--current-outline-color, #FFC80088)!important;border-radius:12px 0 0 12px!important;box-shadow:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:auto!important;visibility:visible!important}main #right-sidebar.collapsed>*:not(.sidebar-toggle-btn){display:revert!important}#right-sidebar *{max-width:100%}#right-sidebar .controls,#right-sidebar .control-group{min-width:0!important}.sidebar-toggle-btn{display:none!important}#right-sidebar:before,#right-sidebar:after{display:none!important}.panel-fab,#panel-fab-backdrop,#rs-overlay-backdrop,.mobile-nav-bar{display:none!important}body{padding-bottom:0}.partition-modal-content{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;border-radius:0!important}.partition-editor-header{padding:.25rem .5rem!important;gap:.4rem!important}.partition-editor-header h3{font-size:.8rem!important;white-space:nowrap!important}}@media(orientation:landscape)and (max-height:500px)and (max-width:1100px){body.spm-on #handpan-container{height:auto!important;aspect-ratio:auto!important;width:min(100%,62vh)!important;margin:0 auto!important;align-self:center!important}body.spm-on main #right-sidebar,body.spm-on #right-sidebar.mobile-open,body.spm-on main #right-sidebar.collapsed{position:fixed!important;inset:0 0 0 auto!important;width:min(340px,70vw)!important;max-width:70vw!important;flex:none!important;height:100vh!important;height:100dvh!important;max-height:100dvh!important;padding:calc(2.6rem + env(safe-area-inset-top,0)) calc(.7rem + env(safe-area-inset-right,0)) calc(.8rem + env(safe-area-inset-bottom,0)) .7rem!important;border-radius:16px 0 0 16px!important;box-shadow:-10px 0 30px #00000073!important;z-index:1300!important;transform:translate(100%)!important;transition:transform .28s cubic-bezier(.2,.8,.2,1)!important}body.spm-on.panel-open main #right-sidebar,body.spm-on.panel-open #right-sidebar.mobile-open,body.spm-on.panel-open main #right-sidebar.collapsed{transform:translate(0)!important}body.spm-on .panel-fab{display:inline-flex!important;align-items:center;justify-content:center;position:fixed;top:calc(54px + env(safe-area-inset-top,0));right:calc(6px + env(safe-area-inset-right,0));width:40px;height:40px;border-radius:11px;background:var(--primary-color);border:1px solid var(--current-outline-color, #FFC80088);color:var(--current-outline-color, #FFC800);box-shadow:0 4px 14px #00000052;z-index:1301;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}body.spm-on .panel-fab .panel-fab-open{display:block}body.spm-on .panel-fab .panel-fab-close,body.spm-on.panel-open .panel-fab .panel-fab-open{display:none}body.spm-on.panel-open .panel-fab .panel-fab-close{display:block}body.spm-on #panel-fab-backdrop{display:block!important;position:fixed;inset:0;background:#00000080;z-index:1290;opacity:0;pointer-events:none;transition:opacity .2s ease}body.spm-on.panel-open #panel-fab-backdrop{opacity:1;pointer-events:auto}}@media(max-width:767px){body #handpan-container{margin-top:0!important;margin-bottom:0!important}}@media(max-width:767px){body #handpan-container .appmode-switch{display:none!important}body:not(.app-acoustic) #model-toggle-row{display:none!important}body:not(.app-acoustic) .model-toggle-title,body:not(.app-acoustic) .model-toggle-pill{display:none!important}}@media(max-width:640px){.main-navigation-bar #mobile-menu-toggle{width:100%!important;min-height:48px!important;justify-content:center!important;font-size:1rem!important}}@media(max-width:640px){body #chord-rows-wrapper.timeline-horizontal{width:100%!important;max-width:100%!important;margin:6px 0 14px!important;padding:6px 12px 12px!important;justify-content:flex-start!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;scroll-padding-left:12px!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 10px,#000 calc(100% - 28px),transparent 100%);scrollbar-width:thin!important;scrollbar-color:var(--current-outline-color, #FFC800) transparent}body #chord-rows-wrapper.timeline-horizontal::-webkit-scrollbar{height:4px}body #chord-rows-wrapper.timeline-horizontal::-webkit-scrollbar-track{background:transparent}body #chord-rows-wrapper.timeline-horizontal::-webkit-scrollbar-thumb{background:var(--current-outline-color, #FFC800);border-radius:999px}body #chord-rows-wrapper.timeline-horizontal>.control-group{flex:0 0 152px!important;width:152px!important;min-width:152px!important;max-width:152px!important;padding:8px 6px!important;gap:8px!important;border-radius:14px!important;scroll-snap-align:start!important;scroll-snap-stop:always;margin:0!important}body #chord-rows-wrapper.timeline-horizontal>.control-group:first-child,body #chord-rows-wrapper.timeline-horizontal>.control-group:last-child{border-radius:14px!important}body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger{width:100%!important;max-width:100%!important;height:54px!important;min-height:54px!important;padding:0 8px!important;border-radius:14px!important;overflow:hidden!important}body #chord-rows-wrapper.timeline-horizontal .logic-trigger-container,body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger>div,body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger span{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}body #chord-rows-wrapper.timeline-horizontal .logic-trigger-container{gap:1px!important}body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger .logic-trigger-title,body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger span:first-child{font-size:.7rem!important;line-height:1.15!important}body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger .logic-trigger-chord,body #chord-rows-wrapper.timeline-horizontal .custom-select-trigger span:last-child{font-size:.92rem!important;line-height:1.1!important}body #chord-rows-wrapper.timeline-horizontal .chord-actions-row{justify-content:center!important}body #chord-rows-wrapper.timeline-horizontal .chord-actions-group{gap:2px!important;row-gap:4px!important;flex-wrap:wrap!important;justify-content:center!important;overflow:visible!important;max-width:100%!important}body #chord-rows-wrapper.timeline-horizontal .chord-actions-group>button{flex:0 0 auto!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;border-radius:12px!important;padding:0!important}body #chord-rows-wrapper.timeline-horizontal .chord-actions-group>button svg{width:20px!important;height:20px!important}body #chord-rows-wrapper.timeline-horizontal .btn-swap-physical{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;font-size:1rem!important}body #chord-rows-wrapper.timeline-horizontal .chord-label{font-size:.7rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;opacity:.9!important}body #chord-rows-wrapper.timeline-horizontal .chord-modifiers-wrapper{position:static!important;grid-area:mods!important;width:100%!important;margin:0!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;box-shadow:none!important}body #chord-rows-wrapper.timeline-horizontal .chord-modifiers{position:static!important;width:100%!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;grid-template-columns:1fr 1fr!important;gap:4px!important}body #chord-rows-wrapper.timeline-horizontal .chord-modifiers:before{display:none!important}body #chord-rows-wrapper.timeline-horizontal .chord-modifiers .modifier-btn{width:100%!important;min-width:0!important;min-height:44px!important;font-size:.64rem!important;padding:0 2px!important}body #chord-rows-wrapper.timeline-horizontal .chord-slot-inv{font-size:.55rem!important;max-width:100%!important}}@media(min-width:1024px)and (max-width:1300px){main,.workspace-grid{max-width:100%}main #right-sidebar:not(.collapsed){flex:0 1 clamp(250px,28vw,360px)!important;min-width:250px!important;max-width:360px}#right-sidebar .controls,#right-sidebar .control-group,#right-sidebar .group-content,#right-sidebar select,#right-sidebar .material-select{min-width:0!important;max-width:100%}.main-column{min-width:0!important}}@media(pointer:coarse){#handpan-container .note-group{touch-action:none}#note-palette button,#note-palette [role=button],.tonic-flower,.anchor-wheel,#floating-palette-wrapper button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}#settings-dropdown{max-height:min(72vh,620px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media(min-width:641px)and (max-width:1023px){.partition-modal-content{width:96vw!important;max-width:96vw!important;height:94dvh!important;max-height:94dvh!important;margin:0 auto!important;border-radius:14px!important}.modal-content,.language-modal-content{width:min(92vw,720px)!important;max-width:92vw!important;max-height:88dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.partition-editor-header{position:relative!important;flex-wrap:wrap!important;row-gap:.35rem!important;padding:.55rem 7rem .55rem .9rem!important}.partition-editor-header h3{font-size:1.05rem!important;line-height:1.25!important;flex:0 1 auto!important}.partition-editor-header .header-actions{flex-wrap:wrap!important;gap:.45rem!important;justify-content:flex-start!important}.partition-editor-header .export-hint{display:none!important}#close-partition-modal{position:absolute!important;top:.4rem!important;right:3.6rem!important;z-index:999991!important;width:44px!important;height:44px!important;min-width:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.9rem!important;opacity:.9}}@media(max-height:799px){#settings-dropdown,#account-dropdown{max-height:calc(100dvh - 250px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media(max-width:1023px){.tuto-hotspot{min-width:0!important;min-height:0!important;width:22px!important;height:22px!important}}@media(pointer:coarse){.rec-click-row .rec-check{min-height:44px;display:inline-flex;align-items:center;gap:8px}.rec-click-row .rec-check input[type=checkbox]{width:20px;height:20px}}@media(max-width:1023px){#toolbox .group-visual .group-content .palette-sec{height:auto;min-height:44px;padding:0 .8rem;border-radius:999px;gap:7px}#toolbox .group-visual .group-content .palette-sec.sec-docked{border-radius:14px 14px 0 0}#toolbox .group-visual .group-content .palette-sec .sec-ico{font-size:.95rem}#toolbox .group-visual .group-content .palette-sec .sec-txt{font-size:.66rem}#toolbox .group-visual .group-content .palette-sec .sec-caret{font-size:.8rem}#toolbox .group-visual .group-content{row-gap:.5rem;column-gap:.6rem}#toolbox .group-visual .sub-group.column-layout{align-items:flex-start}#toolbox .group-visual .setting-label-small{white-space:normal;text-align:left;line-height:1.15;max-width:100%}#toolbox .order-check{min-height:36px}#toolbox .order-check .order-check-pill{height:34px;padding:0 .9rem}#toolbox .order-check .order-check-txt{font-size:.68rem}#toolbox .order-check .order-check-hint{font-size:.6rem}#toolbox .material-select{min-height:44px}}.controls-header>.right-header-controls{margin-left:auto}:root{--bg-color: #0D1B2A;--primary-color: #1B263B;--secondary-color: #415A77;--highlight-color: #22D3EE;--text-color: #E0E1DD;--font-family: "Poppins", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--note-default-fill: #415a7780;--note-default-stroke: #0D1B2A;--note-text-color: #ffffff;--shadow-light: rgba(224, 225, 221, .05);--shadow-dark: rgba(0, 0, 0, .7);--chakra-c: #DC2626;--chakra-cs: #EF4444;--chakra-d: #EA580C;--chakra-ds: #F97316;--chakra-e: #EAB308;--chakra-f: #16A34A;--chakra-fs: #22C55E;--chakra-g: #0EA5E9;--chakra-gs: #38BDF8;--chakra-a: #0806FF;--chakra-as: #5050FF;--chakra-b: #EB00FF;--chakra-bg-c: rgba(220, 38, 38, .6);--chakra-bg-cs: rgba(239, 68, 68, .3);--chakra-bg-d: rgba(234, 88, 12, .6);--chakra-bg-ds: rgba(249, 115, 22, .3);--chakra-bg-e: rgba(234, 179, 8, .6);--chakra-bg-f: rgba(22, 163, 74, .6);--chakra-bg-fs: rgba(34, 197, 94, .3);--chakra-bg-g: rgba(14, 165, 233, .6);--chakra-bg-gs: rgba(56, 189, 248, .3);--chakra-bg-a: rgba(8, 6, 255, .6);--chakra-bg-as: rgba(80, 80, 255, .3);--chakra-bg-b: rgba(235, 0, 255, .6);--chakra-grad-c: linear-gradient(to top, rgba(220, 38, 38, .4), rgba(220, 38, 38, .9));--chakra-grad-cs: linear-gradient(to top, rgba(239, 68, 68, .3), rgba(239, 68, 68, .7));--chakra-grad-d: linear-gradient(to top, rgba(234, 88, 12, .4), rgba(234, 88, 12, .9));--chakra-grad-ds: linear-gradient(to top, rgba(249, 115, 22, .3), rgba(249, 115, 22, .7));--chakra-grad-e: linear-gradient(to top, rgba(234, 179, 8, .4), rgba(234, 179, 8, .9));--chakra-grad-f: linear-gradient(to top, rgba(22, 163, 74, .4), rgba(22, 163, 74, .9));--chakra-grad-fs: linear-gradient(to top, rgba(34, 197, 94, .3), rgba(34, 197, 94, .7));--chakra-grad-g: linear-gradient(to top, rgba(14, 165, 233, .4), rgba(14, 165, 233, .9));--chakra-grad-gs: linear-gradient(to top, rgba(56, 189, 248, .3), rgba(56, 189, 248, .7));--chakra-grad-a: linear-gradient(to top, rgba(8, 6, 255, .4), rgba(8, 6, 255, .9));--chakra-grad-as: linear-gradient(to top, rgba(80, 80, 255, .3), rgba(80, 80, 255, .7));--chakra-grad-b: linear-gradient(to top, rgba(235, 0, 255, .4), rgba(235, 0, 255, .9));--hand-color-right: #EF4444;--hand-color-left: #3B82F6;--gold-color: #FFD700;--gold-gradient: linear-gradient(45deg, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);--current-outline-color: #FFFFFF}:root{--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--fs-title: 1.05rem;--fs-section: .92rem;--fs-body: .85rem;--fs-label: .78rem;--fs-micro: .7rem;--r-sm: 8px;--r-md: 12px;--r-pill: 999px;--h-control: 34px;--h-control-sm: 28px;--h-transport: 44px;--surface-bg: rgba(255, 255, 255, .04);--surface-border: rgba(255, 255, 255, .1);--surface-pad: var(--sp-3);--ctl-active-bg: var(--highlight-color);--ctl-active-fg: var(--primary-color)}[data-theme=light]{--surface-bg: rgba(0, 0, 0, .03);--surface-border: rgba(0, 0, 0, .08)}body.outline-white{--current-outline-color: #FFFFFF}body.outline-black{--current-outline-color: #000000}body.outline-gold{--current-outline-color: var(--gold-color)}[data-theme=light]{--bg-color: #F0F2F5;--primary-color: #FFFFFF;--secondary-color: #E4E6EB;--highlight-color: #5ccb5f;--text-color: #1B263B;--shadow-light: rgba(0, 0, 0, .05);--shadow-dark: rgba(0, 0, 0, .1);--note-default-fill: #E4E6EB;--note-default-stroke: #CCCCCC}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);line-height:1.6;transition:background-color .3s ease,color .3s ease}:root[data-vision=deuteranopia]{--chakra-c: #C9445F;--chakra-cs: #F28677;--chakra-d: #993B00;--chakra-ds: #FFAD0A;--chakra-e: #9B8500;--chakra-f: #2A6240;--chakra-fs: #77C3A8;--chakra-g: #355685;--chakra-gs: #31A7FF;--chakra-a: #7D2CFA;--chakra-as: #DCABE2;--chakra-b: #9F6A9F;--chakra-bg-c: rgba(201, 68, 95, .6);--chakra-bg-cs: rgba(242, 134, 119, .3);--chakra-bg-d: rgba(153, 59, 0, .6);--chakra-bg-ds: rgba(255, 173, 10, .3);--chakra-bg-e: rgba(155, 133, 0, .6);--chakra-bg-f: rgba(42, 98, 64, .6);--chakra-bg-fs: rgba(119, 195, 168, .3);--chakra-bg-g: rgba(53, 86, 133, .6);--chakra-bg-gs: rgba(49, 167, 255, .3);--chakra-bg-a: rgba(125, 44, 250, .6);--chakra-bg-as: rgba(220, 171, 226, .3);--chakra-bg-b: rgba(159, 106, 159, .6);--chakra-grad-c: linear-gradient(to top, rgba(201, 68, 95, .4), rgba(201, 68, 95, .9));--chakra-grad-cs: linear-gradient(to top, rgba(242, 134, 119, .3), rgba(242, 134, 119, .7));--chakra-grad-d: linear-gradient(to top, rgba(153, 59, 0, .4), rgba(153, 59, 0, .9));--chakra-grad-ds: linear-gradient(to top, rgba(255, 173, 10, .3), rgba(255, 173, 10, .7));--chakra-grad-e: linear-gradient(to top, rgba(155, 133, 0, .4), rgba(155, 133, 0, .9));--chakra-grad-f: linear-gradient(to top, rgba(42, 98, 64, .4), rgba(42, 98, 64, .9));--chakra-grad-fs: linear-gradient(to top, rgba(119, 195, 168, .3), rgba(119, 195, 168, .7));--chakra-grad-g: linear-gradient(to top, rgba(53, 86, 133, .4), rgba(53, 86, 133, .9));--chakra-grad-gs: linear-gradient(to top, rgba(49, 167, 255, .3), rgba(49, 167, 255, .7));--chakra-grad-a: linear-gradient(to top, rgba(125, 44, 250, .4), rgba(125, 44, 250, .9));--chakra-grad-as: linear-gradient(to top, rgba(220, 171, 226, .3), rgba(220, 171, 226, .7));--chakra-grad-b: linear-gradient(to top, rgba(159, 106, 159, .4), rgba(159, 106, 159, .9))}:root[data-vision=protanopia]{--chakra-c: #D92B4C;--chakra-cs: #FFA0AB;--chakra-d: #9A5104;--chakra-ds: #DDAD81;--chakra-e: #908702;--chakra-f: #4B8863;--chakra-fs: #4BC916;--chakra-g: #0A75C6;--chakra-gs: #70C6E9;--chakra-a: #744E78;--chakra-as: #EC89FF;--chakra-b: #4725F7;--chakra-bg-c: rgba(217, 43, 76, .6);--chakra-bg-cs: rgba(255, 160, 171, .3);--chakra-bg-d: rgba(154, 81, 4, .6);--chakra-bg-ds: rgba(221, 173, 129, .3);--chakra-bg-e: rgba(144, 135, 2, .6);--chakra-bg-f: rgba(75, 136, 99, .6);--chakra-bg-fs: rgba(75, 201, 22, .3);--chakra-bg-g: rgba(10, 117, 198, .6);--chakra-bg-gs: rgba(112, 198, 233, .3);--chakra-bg-a: rgba(116, 78, 120, .6);--chakra-bg-as: rgba(236, 137, 255, .3);--chakra-bg-b: rgba(71, 37, 247, .6);--chakra-grad-c: linear-gradient(to top, rgba(217, 43, 76, .4), rgba(217, 43, 76, .9));--chakra-grad-cs: linear-gradient(to top, rgba(255, 160, 171, .3), rgba(255, 160, 171, .7));--chakra-grad-d: linear-gradient(to top, rgba(154, 81, 4, .4), rgba(154, 81, 4, .9));--chakra-grad-ds: linear-gradient(to top, rgba(221, 173, 129, .3), rgba(221, 173, 129, .7));--chakra-grad-e: linear-gradient(to top, rgba(144, 135, 2, .4), rgba(144, 135, 2, .9));--chakra-grad-f: linear-gradient(to top, rgba(75, 136, 99, .4), rgba(75, 136, 99, .9));--chakra-grad-fs: linear-gradient(to top, rgba(75, 201, 22, .3), rgba(75, 201, 22, .7));--chakra-grad-g: linear-gradient(to top, rgba(10, 117, 198, .4), rgba(10, 117, 198, .9));--chakra-grad-gs: linear-gradient(to top, rgba(112, 198, 233, .3), rgba(112, 198, 233, .7));--chakra-grad-a: linear-gradient(to top, rgba(116, 78, 120, .4), rgba(116, 78, 120, .9));--chakra-grad-as: linear-gradient(to top, rgba(236, 137, 255, .3), rgba(236, 137, 255, .7));--chakra-grad-b: linear-gradient(to top, rgba(71, 37, 247, .4), rgba(71, 37, 247, .9))}:root[data-vision=tritanopia]{--chakra-c: #E60438;--chakra-cs: #FF7852;--chakra-d: #8B3E00;--chakra-ds: #E3BA86;--chakra-e: #A27904;--chakra-f: #65853C;--chakra-fs: #A2C793;--chakra-g: #0E8DD3;--chakra-gs: #14CEFF;--chakra-a: #0055BB;--chakra-as: #BC88FD;--chakra-b: #7927BB;--chakra-bg-c: rgba(230, 4, 56, .6);--chakra-bg-cs: rgba(255, 120, 82, .3);--chakra-bg-d: rgba(139, 62, 0, .6);--chakra-bg-ds: rgba(227, 186, 134, .3);--chakra-bg-e: rgba(162, 121, 4, .6);--chakra-bg-f: rgba(101, 133, 60, .6);--chakra-bg-fs: rgba(162, 199, 147, .3);--chakra-bg-g: rgba(14, 141, 211, .6);--chakra-bg-gs: rgba(20, 206, 255, .3);--chakra-bg-a: rgba(0, 85, 187, .6);--chakra-bg-as: rgba(188, 136, 253, .3);--chakra-bg-b: rgba(121, 39, 187, .6);--chakra-grad-c: linear-gradient(to top, rgba(230, 4, 56, .4), rgba(230, 4, 56, .9));--chakra-grad-cs: linear-gradient(to top, rgba(255, 120, 82, .3), rgba(255, 120, 82, .7));--chakra-grad-d: linear-gradient(to top, rgba(139, 62, 0, .4), rgba(139, 62, 0, .9));--chakra-grad-ds: linear-gradient(to top, rgba(227, 186, 134, .3), rgba(227, 186, 134, .7));--chakra-grad-e: linear-gradient(to top, rgba(162, 121, 4, .4), rgba(162, 121, 4, .9));--chakra-grad-f: linear-gradient(to top, rgba(101, 133, 60, .4), rgba(101, 133, 60, .9));--chakra-grad-fs: linear-gradient(to top, rgba(162, 199, 147, .3), rgba(162, 199, 147, .7));--chakra-grad-g: linear-gradient(to top, rgba(14, 141, 211, .4), rgba(14, 141, 211, .9));--chakra-grad-gs: linear-gradient(to top, rgba(20, 206, 255, .3), rgba(20, 206, 255, .7));--chakra-grad-a: linear-gradient(to top, rgba(0, 85, 187, .4), rgba(0, 85, 187, .9));--chakra-grad-as: linear-gradient(to top, rgba(188, 136, 253, .3), rgba(188, 136, 253, .7));--chakra-grad-b: linear-gradient(to top, rgba(121, 39, 187, .4), rgba(121, 39, 187, .9))}:root[data-vision=maxcontrast]{--chakra-c: #AB4155;--chakra-cs: #F67C96;--chakra-d: #B47168;--chakra-ds: #E7B68E;--chakra-e: #715110;--chakra-f: #43872C;--chakra-fs: #72B125;--chakra-g: #305685;--chakra-gs: #68C7E2;--chakra-a: #8E00FF;--chakra-as: #B789FF;--chakra-b: #9675A6;--chakra-bg-c: rgba(171, 65, 85, .6);--chakra-bg-cs: rgba(246, 124, 150, .3);--chakra-bg-d: rgba(180, 113, 104, .6);--chakra-bg-ds: rgba(231, 182, 142, .3);--chakra-bg-e: rgba(113, 81, 16, .6);--chakra-bg-f: rgba(67, 135, 44, .6);--chakra-bg-fs: rgba(114, 177, 37, .3);--chakra-bg-g: rgba(48, 86, 133, .6);--chakra-bg-gs: rgba(104, 199, 226, .3);--chakra-bg-a: rgba(142, 0, 255, .6);--chakra-bg-as: rgba(183, 137, 255, .3);--chakra-bg-b: rgba(150, 117, 166, .6);--chakra-grad-c: linear-gradient(to top, rgba(171, 65, 85, .4), rgba(171, 65, 85, .9));--chakra-grad-cs: linear-gradient(to top, rgba(246, 124, 150, .3), rgba(246, 124, 150, .7));--chakra-grad-d: linear-gradient(to top, rgba(180, 113, 104, .4), rgba(180, 113, 104, .9));--chakra-grad-ds: linear-gradient(to top, rgba(231, 182, 142, .3), rgba(231, 182, 142, .7));--chakra-grad-e: linear-gradient(to top, rgba(113, 81, 16, .4), rgba(113, 81, 16, .9));--chakra-grad-f: linear-gradient(to top, rgba(67, 135, 44, .4), rgba(67, 135, 44, .9));--chakra-grad-fs: linear-gradient(to top, rgba(114, 177, 37, .3), rgba(114, 177, 37, .7));--chakra-grad-g: linear-gradient(to top, rgba(48, 86, 133, .4), rgba(48, 86, 133, .9));--chakra-grad-gs: linear-gradient(to top, rgba(104, 199, 226, .3), rgba(104, 199, 226, .7));--chakra-grad-a: linear-gradient(to top, rgba(142, 0, 255, .4), rgba(142, 0, 255, .9));--chakra-grad-as: linear-gradient(to top, rgba(183, 137, 255, .3), rgba(183, 137, 255, .7));--chakra-grad-b: linear-gradient(to top, rgba(150, 117, 166, .4), rgba(150, 117, 166, .9))}:root[data-vision=deuteranopia] .note-text,:root[data-vision=protanopia] .note-text,:root[data-vision=tritanopia] .note-text,:root[data-vision=maxcontrast] .note-text,:root[data-vision=deuteranopia] .note-number-text,:root[data-vision=protanopia] .note-number-text,:root[data-vision=tritanopia] .note-number-text,:root[data-vision=maxcontrast] .note-number-text{paint-order:stroke fill;stroke:#000000b8;stroke-width:2.4px;stroke-linejoin:round}:root[data-vision=deuteranopia] #handpan-container .note-circle-base,:root[data-vision=protanopia] #handpan-container .note-circle-base,:root[data-vision=tritanopia] #handpan-container .note-circle-base,:root[data-vision=maxcontrast] #handpan-container .note-circle-base{stroke-width:3px}:root{--hps-accent: #818cf8;--hps-accent-2: #d946ef;--hps-accent-on: #a855f7;--hps-ctl-bg: rgba(128, 128, 128, .1);--hps-ctl-bg-hover: rgba(129, 140, 248, .22);--hps-ctl-border: rgba(128, 128, 128, .28);--hps-ctl-fg: inherit}.hps-btn,.melodyed-btn,.rain-btn,.accompanist-widget .aw-btn{box-sizing:border-box;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--h-control);padding:0 var(--sp-3);line-height:1;white-space:nowrap;border-radius:var(--r-sm);border:1px solid var(--hps-ctl-border);background:var(--hps-ctl-bg);color:var(--hps-ctl-fg);font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.hps-btn:hover,.melodyed-btn:hover,.rain-btn:hover,.accompanist-widget .aw-btn:hover{background:var(--hps-ctl-bg-hover)}.hps-btn:active,.melodyed-btn:active,.rain-btn:active,.accompanist-widget .aw-btn:active{transform:scale(.95)}.hps-btn:disabled,.melodyed-btn:disabled,.rain-btn:disabled{opacity:.35;cursor:default;transform:none}.hps-btn:disabled:hover,.melodyed-btn:disabled:hover,.rain-btn:disabled:hover{background:var(--hps-ctl-bg)}.hps-btn:focus-visible,.melodyed-btn:focus-visible,.rain-btn:focus-visible{outline:2px solid var(--hps-accent);outline-offset:2px}.hps-btn.hps-btn-icon{min-width:var(--h-control);padding:0 6px}.hps-btn.is-on,.hps-btn.active,.melodyed-toggle.active,.rain-toggle.active,.melodyed-tool.active,.accompanist-widget .aw-play.aw-on{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-on));color:#fff;border-color:transparent;box-shadow:0 3px 10px #818cf859}.hps-btn.hps-btn-primary{min-height:var(--h-transport);min-width:var(--h-transport);border-radius:var(--r-pill);background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));color:#fff;border-color:transparent;box-shadow:0 4px 14px #818cf866}.hps-btn.hps-btn-primary:hover{filter:brightness(1.08);background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2))}.hps-segbar,.melodyed-colortoggle,.melodyed-notation,.melodyed-tools,.rain-colortoggle,.rain-notation{display:inline-flex;align-items:stretch;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--hps-ctl-border)}.hps-seg,.melodyed-seg,.rain-seg{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:var(--h-control);padding:0 var(--sp-3);line-height:1;white-space:nowrap;border:none;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease}.hps-seg:hover,.melodyed-seg:hover,.rain-seg:hover{background:var(--hps-ctl-bg-hover)}.hps-seg.active,.melodyed-seg.active,.rain-seg.active{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-on));color:#fff}.hps-segbar.hps-segbar-dense .hps-seg,.melodyed-notation .melodyed-seg,.rain-notation .rain-seg{padding:0 10px;font-size:var(--fs-body)}.hps-segbar.hps-segbar-auto{flex-wrap:wrap;max-width:100%;min-width:0;vertical-align:middle;gap:1px;background:var(--hps-ctl-border)}.hps-segbar.hps-segbar-auto .hps-seg{flex:1 1 auto;min-width:0;background:var(--hps-ctl-bg);font-size:var(--fs-body)}.hps-segbar.hps-segbar-auto .hps-seg:hover{background:var(--hps-ctl-bg-hover)}.hps-segbar.hps-segbar-auto .hps-seg.active{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-on));color:#fff}@media(max-width:480px){.hps-segbar.hps-segbar-auto .hps-seg{min-height:44px;padding:0 10px}}.hps-stepper{display:inline-flex;align-items:center;gap:2px;min-height:var(--h-control);padding:0 4px;border-radius:var(--r-sm);border:1px solid var(--hps-ctl-border);background:var(--hps-ctl-bg)}.hps-stepper .hps-stepper-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--r-sm);background:transparent;color:inherit;font:inherit;font-size:1rem;font-weight:700;line-height:1;cursor:pointer;transition:background .12s ease,transform .06s ease}.hps-stepper .hps-stepper-btn:hover{background:var(--hps-ctl-bg-hover)}.hps-stepper .hps-stepper-btn:active{transform:scale(.9)}.hps-stepper .hps-stepper-val,.accompanist-widget .aw-bpm-val{min-width:34px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.hps-stepper .hps-stepper-label,.accompanist-widget .aw-bpm-label{font-size:var(--fs-micro);font-weight:700;opacity:.65;letter-spacing:.04em;text-transform:uppercase;padding-left:2px}.hps-lcd{display:inline-flex;align-items:center;gap:var(--sp-3);min-height:var(--h-control);padding:0 var(--sp-3);border-radius:var(--r-md);border:1px solid rgba(129,140,248,.3);background:#0c0a1873;box-shadow:inset 0 1px 6px #00000059;font-variant-numeric:tabular-nums}[data-theme=light] .hps-lcd{background:#fff9;border-color:#6d28d942;box-shadow:inset 0 1px 4px #0000000f}.hps-lcd .hps-lcd-field{display:inline-flex;align-items:center;gap:5px}.hps-lcd .hps-lcd-cap{font-size:var(--fs-micro);font-weight:700;opacity:.55;letter-spacing:.05em;text-transform:uppercase}.hps-lcd .hps-stepper{border-color:transparent;background:transparent;padding:0}.hps-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px var(--sp-3);padding:7px 10px;border-radius:var(--r-md);background:var(--surface-bg);border:1px solid var(--surface-border)}.hps-bar-group{display:inline-flex;align-items:center;gap:6px}.hps-bar-spacer{flex:1 1 auto}.hps-bar-lbl{font-size:var(--fs-micro);font-weight:700;opacity:.7;text-transform:uppercase;letter-spacing:.04em}.hps-drawer{flex:0 0 auto;border-radius:var(--r-md);border:1px solid var(--surface-border);background:var(--surface-bg);overflow:hidden}.hps-drawer-head{display:flex;align-items:center;gap:var(--sp-2, 8px);width:100%;min-height:var(--h-control);padding:4px 10px;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}.hps-drawer-head:hover{background:var(--hps-ctl-bg)}.hps-drawer-title{font-weight:700;font-size:var(--fs-body)}.hps-drawer-sum{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-label);opacity:.7;font-variant-numeric:tabular-nums}.hps-drawer-chevron{opacity:.6;transition:transform .2s ease;font-size:.8rem}.hps-drawer.is-open .hps-drawer-chevron{transform:rotate(180deg)}.hps-drawer-body{display:none;flex-wrap:wrap;align-items:center;gap:8px var(--sp-3);padding:4px 10px 10px}.hps-drawer.is-open .hps-drawer-body{display:flex}.hps-select,.hps-bar select,.hps-drawer select,.melodyed-inspector select,.rain-controls select,.accompanist-widget .aw-groove{box-sizing:border-box;min-height:var(--h-control);padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--hps-ctl-border);background:var(--hps-ctl-bg);color:inherit;font:inherit;cursor:pointer}.hps-check,.melodyed-check,.accompanist-widget .aw-count{box-sizing:border-box;display:inline-flex;align-items:center;gap:5px;min-height:var(--h-control);font-size:var(--fs-body);cursor:pointer;white-space:nowrap}.hps-check input,.melodyed-check input,.accompanist-widget .aw-count input{accent-color:var(--hps-accent);cursor:pointer}html,body{height:100%;margin:0;padding:0}.optimizer-btn{margin:10px;padding:8px 16px;background-color:var(--highlight-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.no-optimization-found{animation:flash-red .5s ease-out}@keyframes flash-red{0%{background-color:transparent}50%{background-color:#ef44444d}to{background-color:transparent}}#app{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100vh;height:100dvh;padding:calc(.25rem + env(safe-area-inset-top,0)) calc(1rem + env(safe-area-inset-right,0)) calc(1rem + env(safe-area-inset-bottom,0)) calc(1rem + env(safe-area-inset-left,0));text-align:center;transition:justify-content .3s ease,padding .3s ease}header{margin-top:0;padding-top:0}header h1{font-size:clamp(2.2rem,6vw,3rem);color:var(--text-color);margin-top:0;margin-bottom:.15rem;font-weight:600;line-height:1.05}header{--header-action-gutter: 0px}header:has(.appmode-topbar){--header-action-gutter: 214px}header h1,header .byline{max-width:max(9rem,calc(100% - 2 * var(--header-action-gutter)));margin-inline:auto}header:has(.appmode-topbar) h1{font-size:clamp(1.1rem,calc((100vw - 2rem - 2 * var(--header-action-gutter)) / 16.2),3rem)!important}header .byline{color:var(--highlight-color);margin-top:0;margin-bottom:.75rem;font-style:italic;transition:opacity .5s ease}header h2{font-size:clamp(1.8rem,5vw,2.5rem);color:var(--text-color);margin-bottom:.5rem;font-weight:400}header p{font-size:clamp(.9rem,2.5vw,1.1rem);margin-bottom:2rem}main{width:100%;max-width:1500px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;flex:1}.content-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;height:100%}.workspace-grid{display:flex;flex-direction:column;gap:1rem;width:100%;height:100%;position:relative;z-index:150}.inversion-lines{position:absolute;bottom:2px;left:50%;transform:translate(-50%);display:flex;gap:4px;height:2px}.inversion-line{width:12px;height:2px;background-color:#fffc;border-radius:1px}[data-theme=light] .inversion-line{background-color:#000c}.inversion-hover-btn{background:transparent;border:.5px solid var(--current-outline-color);color:var(--current-outline-color);border-radius:12px;padding:4px 8px;font-size:.85rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;white-space:nowrap;width:100%;box-sizing:border-box}.inversion-hover-btn:hover{background-color:var(--current-outline-color);color:var(--primary-color)}.inversion-dropdown-menu{position:absolute;background:rgba(var(--surface-color-rgb),.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:.5px solid var(--current-outline-color);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;z-index:1000;box-shadow:0 4px 12px #0003;min-width:150px;color:var(--current-outline-color)}.inversion-dropdown-item{background:transparent;border:none;color:var(--text-color);padding:6px 12px;text-align:left;font-size:.8rem;cursor:pointer;border-radius:4px;transition:background-color .2s}.inversion-dropdown-item:hover{background:#ffd70033}.inversion-dropdown-item.active{color:var(--current-outline-color);font-weight:700}#right-sidebar{position:relative;transition:width .3s ease,min-width .3s ease,transform .3s ease,flex-basis .3s ease;border-left:1px solid transparent;flex-basis:300px;flex-shrink:0;height:100%;display:flex;flex-direction:column}main #right-sidebar.collapsed{min-width:30px!important;width:30px!important;flex:0 0 30px!important;padding:0!important;border:1px solid rgba(212,175,55,.45)!important;background:linear-gradient(180deg,#ffffff12,#ffffff04)!important;margin-left:2px!important;border-radius:10px!important;height:100%!important;transition:border-color .2s ease,box-shadow .2s ease}main #right-sidebar.collapsed:hover{border-color:var(--current-outline-color)!important;box-shadow:0 0 14px #d4af3738}[data-theme=light] main #right-sidebar.collapsed{background:linear-gradient(180deg,#0000000b,#00000003)!important}#right-sidebar.collapsed:after{content:"PANNEAU";position:absolute;top:46px;left:50%;transform:translate(-50%);writing-mode:vertical-rl;font-family:var(--font-family, "Poppins", sans-serif);font-size:.58rem;font-weight:600;letter-spacing:.32em;color:var(--current-outline-color);opacity:.55;pointer-events:none;user-select:none}#right-sidebar.collapsed:hover:after{opacity:.9}#right-sidebar.collapsed>*:not(.sidebar-toggle-btn){display:none!important}.sidebar-toggle-btn{position:absolute;left:-24px;top:1.2rem;width:24px;height:60px;background:transparent;border:1px solid var(--current-outline-color);border-right:none;border-radius:12px 0 0 12px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;color:var(--current-outline-color);transition:background-color .2s,color .2s;box-shadow:-4px 0 10px #0000001a}.sidebar-toggle-btn:hover{background:var(--current-outline-color);color:var(--primary-color)}.sidebar-toggle-btn svg{transform:rotate(180deg);transition:transform .3s ease}#right-sidebar.collapsed .sidebar-toggle-btn svg{transform:rotate(0)}#right-sidebar.collapsed .sidebar-toggle-btn{left:0;top:0;width:100%;height:100%;border:none;border-radius:10px;background:transparent;box-shadow:none;align-items:flex-start;justify-content:center;padding-top:.9rem;color:var(--current-outline-color)}#right-sidebar.collapsed .sidebar-toggle-btn:hover{background:#d4af371a;color:var(--current-outline-color)}.main-column{display:flex;flex-direction:column;gap:0;flex:2;width:100%;min-width:0;justify-content:flex-start;position:relative;transition:flex .3s ease,width .3s ease;padding-right:16px}#handpan-container{position:relative;z-index:1;transition:margin-top .3s cubic-bezier(.4,0,.2,1);width:65%;max-width:480px;margin:0 auto}#handpan-container.palette-off{margin-top:-1rem}#handpan-container.palette-compact{margin-top:60px}#handpan-container.palette-full{margin-top:0}body.app-acoustic.acoustic-creating.acoustic-duo #handpan-container{margin-top:120px}.sidebar{flex:1;display:flex;flex-direction:column;gap:1.5rem;width:100%;justify-content:flex-start}footer{margin-top:auto;padding-top:6rem;font-size:.9rem;opacity:.7;transition:opacity .5s ease}@media(min-width:1024px){#app{padding:2rem 1rem}.content-wrapper{flex-direction:column;align-items:center}.workspace-grid{flex-direction:row;align-items:stretch}.sidebar{width:auto;max-width:400px}}@media(max-width:1023px){#app{padding-left:0;padding-right:0}main{max-width:none}header,.sidebar,footer{padding-left:1rem;padding-right:1rem}}@media print{:root{--bg-color: #ffffff;--text-color: #000000;--primary-color: #ffffff;--secondary-color: #cccccc}body{background-color:#fff;color:#000}#app{padding:0;display:block;height:auto}.toolbox-footer-tools,#language-selector,.mode-switcher,#toolbox,#image-exporter,.modal-overlay{display:none!important}.content-wrapper{display:block;width:100%}.workspace-grid{display:flex;flex-direction:column;align-items:center;width:100%;gap:2rem}.main-column{width:100%;flex:none;display:block;margin-bottom:2rem}#handpan-container{width:100%;max-width:600px;margin:0 auto;break-inside:avoid}body.printing-no-footer footer{display:none!important}.sidebar{display:none;width:100%;max-width:800px;break-inside:avoid}body.printing-chords .sidebar{display:block!important}body.printing-chords .sidebar .controls{box-shadow:none;border:1px solid #ddd;background-color:#fff}body.printing-chords #scale-library-panel,body.printing-chords #song-manager,body.printing-chords .header-actions,body.printing-chords .chord-actions-group,body.printing-chords .drag-handle,body.printing-chords .degree-checkbox,body.printing-chords .chord-logic-actions{display:none!important}body.printing-chords #chords-container{display:flex!important;flex-wrap:wrap}body.printing-chords .control-group{border-bottom:1px solid #eee;page-break-inside:avoid}body.printing-chords .chord-select{border:1px solid #000;background-color:#fff;color:#000;appearance:none;background-image:none;padding-right:.5rem}body.printing-numbers .note-number-text{opacity:1!important;fill:#000!important}}#btn-optimize-layout{position:relative;top:-50px;z-index:10}.app-hidden{visibility:hidden;opacity:0;pointer-events:none}body.presentation-mode ::-webkit-scrollbar{display:none!important}body.presentation-mode .help-trigger-small,body.presentation-mode #handpan-resize-handle,body.presentation-mode footer,body.presentation-mode .byline,body.presentation-mode .theme-slider-wrapper,body.presentation-mode #btn-launch-tutorial,body.presentation-mode #texture-editor-overlay{opacity:0!important;pointer-events:none!important;transition:opacity .5s ease}body.presentation-mode #app{justify-content:center;height:100vh;padding-top:0;padding-bottom:0}body.presentation-mode header{margin-top:0}div#app:nth-of-type(1)>main:nth-of-type(1)>div:nth-of-type(1)>div:nth-of-type(2)>div#right-sidebar:nth-of-type(2)>div#chords-container:nth-of-type(5){border:.5px solid var(--current-outline-color)!important}div#app:nth-of-type(1)>main:nth-of-type(1)>div:nth-of-type(1)>div:nth-of-type(2)>div#right-sidebar:nth-of-type(2)>div#scale-library-panel:nth-of-type(4){border:.5px solid var(--current-outline-color)!important}div#app:nth-of-type(1)>main:nth-of-type(1)>div:nth-of-type(1)>div:nth-of-type(2)>div#right-sidebar:nth-of-type(2)>div#midi-settings-panel:nth-of-type(1){border:.5px solid var(--current-outline-color)!important}.mode-creation #song-manager{display:none!important}#right-sidebar.mode-library #scale-library-panel{border-bottom:none!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;margin-bottom:0!important;padding-bottom:.5rem!important}#right-sidebar.mode-library #chords-container{border-top:none!important;border-top-left-radius:0!important;border-top-right-radius:0!important;margin-top:0!important;padding-top:.5rem!important;box-shadow:inset 0 1px #ffffff14!important}.chord-select,.tuning-input,#scale-library-select,#tonic-note-select,.preset-select{font-family:var(--font-family);background-color:var(--secondary-color);color:var(--text-color);border:2px solid var(--secondary-color);padding:.3rem 2rem .3rem 1rem;border-radius:20px;font-size:.95rem;cursor:pointer;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .3s ease;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E0E1DD%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right .8rem center;background-size:.65em auto;height:36px;box-sizing:border-box;display:flex;align-items:center}.mode-library .chord-type-select:not(#scale-library-select):not(#tonic-note-select){cursor:default;pointer-events:none;font-size:.75rem;background-image:none;padding-right:1rem}.mode-library #scale-library-panel,.mode-library #chords-container{display:flex!important;flex-direction:column;overflow:visible!important}.mode-library #scale-library-panel{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1rem;margin-bottom:1rem}[data-theme=light] .chord-select,[data-theme=light] .tuning-input,[data-theme=light] #scale-library-select,[data-theme=light] #tonic-note-select,[data-theme=light] .preset-select{background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231B263B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E)}.tuning-input{text-align:center}.tuning-input::-webkit-outer-spin-button,.tuning-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tuning-input[type=number]{-moz-appearance:textfield}.chromakeys-title-wrapper{display:flex;align-items:center;gap:.8rem;flex:1;min-width:0}.title-icon{font-size:1.8rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.title-text-group{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.title-main{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;opacity:.8;font-weight:600}.title-rainbow{font-size:1.4rem;font-weight:800;font-family:Poppins,sans-serif;letter-spacing:.5px;background:linear-gradient(to right,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.enharmonic-toggle-container{display:flex;background-color:var(--secondary-color);border-radius:20px;padding:1px;border:1px solid var(--highlight-color);height:32px;box-sizing:border-box;align-items:center;margin-left:.2rem;flex-shrink:0}.enharmonic-btn{background:transparent;border:none;color:var(--text-color);padding:0 6px;height:100%;border-radius:18px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .2s;min-width:24px}.enharmonic-btn:hover{background-color:#ffffff1a}.enharmonic-btn.active{background-color:var(--highlight-color);color:var(--primary-color)}.magic-wand-icon{width:16px;height:16px}.tooltip-container{position:relative;display:inline-block}.info-circle-btn{width:24px;height:24px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.3);color:#ffffffb3;font-weight:700;font-size:.85rem;cursor:help;display:flex;align-items:center;justify-content:center;transition:all .2s}.info-circle-btn:hover{background:#ffffff1a;color:#fff;border-color:#fff}[data-theme=light] .info-circle-btn{border-color:#0003;color:#00000080}[data-theme=light] .info-circle-btn:hover{color:#000;border-color:#000}.tooltip-content{visibility:hidden;width:220px;background-color:var(--primary-color);color:var(--text-color);text-align:left;border-radius:12px;padding:1rem;position:absolute;z-index:100;top:135%;right:0;opacity:0;transition:opacity .3s,transform .3s;border:1px solid var(--highlight-color);box-shadow:0 10px 30px #00000080;font-size:.8rem;line-height:1.4;transform:translateY(-10px);pointer-events:none}.tooltip-container:hover .tooltip-content{visibility:visible;opacity:1;transform:translateY(0)}.app-tooltip{position:fixed;top:-9999px;left:-9999px;z-index:2147483000;max-width:270px;background:var(--primary-color, #0D1B2A);color:var(--text-color, #E6EBF2);border:1px solid var(--highlight-color, #22D3EE);border-radius:10px;padding:.55rem .7rem;font-family:var(--font-family, "Poppins", sans-serif);font-size:.78rem;font-weight:500;line-height:1.45;text-align:left;box-shadow:0 10px 30px #00000080;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease}.app-tooltip.visible{opacity:1;transform:translateY(0)}.app-tooltip:after{content:"";position:absolute;left:var(--tip-arrow-x, 50%);width:9px;height:9px;background:var(--primary-color, #0D1B2A);border:1px solid var(--highlight-color, #22D3EE);transform:translate(-50%) rotate(45deg)}.app-tooltip[data-placement=top]:after{bottom:-5px;border-top:none;border-left:none}.app-tooltip[data-placement=bottom]:after{top:-5px;border-bottom:none;border-right:none}.app-tooltip svg{vertical-align:-2px}[data-theme=light] .app-tooltip{background:#fff;color:#1b263b}[data-theme=light] .app-tooltip:after{background:#fff}.theme-slider-wrapper{display:flex;align-items:center;justify-content:center;gap:8px}.theme-icon-label{color:gold!important;display:flex;align-items:center;justify-content:center}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--secondary-color);transition:.4s;border-radius:24px;border:1px solid var(--highlight-color)}.slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--highlight-color)}input:focus+.slider{box-shadow:0 0 1px var(--highlight-color)}input:checked+.slider:before{transform:translate(20px)}#chords-container .chord-select{display:none!important}.custom-select-trigger{display:none;background-color:var(--secondary-color);color:var(--text-color);border:2px solid var(--secondary-color);padding:.3rem 1rem;border-radius:20px;font-size:.95rem;cursor:pointer;width:100%;flex-direction:row;justify-content:space-between;align-items:center;position:relative;font-weight:500;min-height:auto;text-align:left;transition:background-color .2s,border-color .2s;height:36px;box-sizing:border-box;white-space:nowrap;overflow:visible;text-overflow:ellipsis}.custom-select-trigger>div:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.custom-select-trigger:not(.logic-mode-trigger):after{content:"";width:.8em;height:.8em;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E0E1DD%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-size:contain;background-position:center;opacity:.5;flex-shrink:0;margin-left:.5rem}[data-theme=light] .custom-select-trigger:not(.logic-mode-trigger):after{background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231B263B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E)}.custom-dropdown-menu{display:none;position:absolute;top:110%;left:-20%;width:140%;max-height:400px;overflow-y:auto;background:#1b263bcc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:2px solid var(--highlight-color);border-radius:16px;z-index:200;box-shadow:0 10px 40px #000000e6;padding:.8rem;color:var(--highlight-color)}.custom-menu-none{width:100%;text-align:left;background:#ffffff1a;border-radius:8px;color:var(--text-color);cursor:pointer;font-weight:700;font-size:.7rem;margin-bottom:.5rem;border:1px dashed var(--secondary-color);padding:.4rem .4rem .4rem 1rem}.logic-col-info .item-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;flex-shrink:0}.chord-selection-area{display:flex;flex-direction:column;flex:1;gap:.2rem;min-width:0;position:relative}.inversion-menu-container{position:absolute;top:100%;left:50%;transform:translate(-50%);display:none;z-index:20;padding-top:4px}.chord-row-main:hover .inversion-menu-container{display:flex}.mode-logic .inversion-menu-container{display:none!important}.inversion-menu{display:flex;gap:2px}.chord-modifiers{display:flex;gap:.2rem;padding-left:.5rem}.modifier-btn{background:transparent;border:none;color:#ffffff80;border-radius:8px;padding:.2rem .4rem;font-size:clamp(.55rem,8cqw,.75rem);cursor:pointer;transition:all .2s;font-weight:600}.modifier-btn.active{background-color:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);font-weight:600}.modifier-btn.active-seventh{background-color:#3b82f6;color:#fff;border-color:#3b82f6;font-weight:600}#appearance-help-overlay,#chords-help-overlay{position:absolute;top:20px;left:50%;transform:translate(-50%);width:90%;max-width:600px;max-height:85vh;overflow-y:auto;background-color:#0d1b2afa;backdrop-filter:blur(10px);border:1px solid #EF4444;border-radius:16px;padding:1.5rem;z-index:500;box-shadow:0 20px 50px #000c;display:flex;flex-direction:column;animation:fadeIn .3s ease-out}#appearance-help-overlay.hidden,#chords-help-overlay.hidden{display:none}[data-theme=light] #appearance-help-overlay,[data-theme=light] #chords-help-overlay{background-color:#fffffffa;border-color:#ef4444;color:#000}.help-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.3rem}.help-header h3{margin:0;color:#ef4444;font-size:1.2rem}.close-help-btn{background:none;border:none;color:var(--text-color);font-size:1.5rem;cursor:pointer;padding:0 .5rem}.close-help-btn:hover{color:#ef4444}.help-section-title{font-size:.85rem;text-transform:uppercase;color:var(--highlight-color);margin-bottom:.4rem;font-weight:700;letter-spacing:1px}.enharmonic-toggle-wrapper.alterations-corner-toggle{position:absolute;top:8px;right:12px;z-index:2}.tonic-flower{--flower-size: 88px;--flower-petal-radius: 32px;--flower-petal-size: 36px;--flower-trigger-size: 60px;position:relative;width:var(--flower-trigger-size);height:var(--flower-trigger-size);margin:0 auto;overflow:visible}#tonic-flower-backdrop{position:fixed;inset:0;z-index:999998;background:transparent;opacity:0;pointer-events:none}#tonic-flower-backdrop.visible{opacity:1;pointer-events:auto}.tonic-flower[data-state=open]:after{content:"";position:absolute;width:calc(var(--flower-size, 88px) * 2 + var(--flower-petal-size, 36px) + 30px);height:calc(var(--flower-size, 88px) * 2 + var(--flower-petal-size, 36px) + 30px);top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 50% 50%,#000000d9 30%,#000000b3 60%,#0000);backdrop-filter:blur(8px) saturate(.8);-webkit-backdrop-filter:blur(8px) saturate(.8);box-shadow:0 0 40px #0009,inset 0 0 0 1px #d4b06233;z-index:-1;pointer-events:none;animation:tonicHaloIn .2s ease-out}@keyframes tonicHaloIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tonic-flower-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:var(--flower-trigger-size);height:var(--flower-trigger-size);border-radius:50%;background:var(--secondary-color, #1E3A56);border:2px solid var(--highlight-color, #22D3EE);color:var(--text-color, #fff);font-family:inherit;font-size:1.05rem;font-weight:700;padding:4px;box-sizing:border-box;cursor:pointer;z-index:3;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease;box-shadow:0 0 #22d3ee00;touch-action:manipulation}.tonic-flower[data-state=closed] .tonic-flower-center[data-has-tonic=true],.tonic-flower-center[data-has-tonic=true]{background:var(--current-tonic-color, var(--secondary-color));border-color:#ffffffd9;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}.tonic-flower-center:hover{transform:translate(-50%,-50%) scale(1.06);box-shadow:0 0 0 4px #22d3ee2e}.tonic-flower[data-state=open] .tonic-flower-center{box-shadow:0 0 0 6px #22d3ee47}.tonic-flower-current{pointer-events:none;font-variant-numeric:tabular-nums;font-size:inherit;line-height:1}.tonic-flower-center:not([data-has-tonic=true]) .tonic-flower-current{font-size:.78rem;letter-spacing:0}.tonic-flower-petals{position:absolute;inset:0;pointer-events:none;overflow:visible}.tonic-flower[data-state=open] .tonic-flower-petals{pointer-events:auto}.tonic-flower-petal{position:absolute;top:50%;left:50%;width:var(--flower-petal-size);height:var(--flower-petal-size);margin:calc(var(--flower-petal-size) / -2) 0 0 calc(var(--flower-petal-size) / -2);border-radius:50%;background:var(--petal-color, #888);border:2px solid rgba(255,255,255,.85);color:#fff;font-family:inherit;font-weight:700;font-size:.78rem;cursor:pointer;box-shadow:0 2px 6px #0006;transform:translate(0) scale(0);opacity:0;transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .2s ease,box-shadow .15s ease;will-change:transform,opacity;text-shadow:0 1px 2px rgba(0,0,0,.6);user-select:none;touch-action:manipulation}.tonic-flower[data-state=open] .tonic-flower-petal{transform:rotate(var(--angle)) translateY(calc(var(--flower-size) * -1)) rotate(calc(var(--angle) * -1));opacity:1}.tonic-flower-petal:hover{transform:rotate(var(--angle)) translateY(calc(var(--flower-size) * -1)) rotate(calc(var(--angle) * -1)) scale(1.18);box-shadow:0 4px 14px #00000080;z-index:4}.tonic-flower-petal.active{box-shadow:0 0 0 3px #fff,0 0 14px var(--petal-color, #fff);z-index:4}.tonic-flower-petal.active:after{content:"✓";position:absolute;top:-4px;right:-4px;background:#fff;color:var(--petal-color, #000);border-radius:50%;width:14px;height:14px;font-size:9px;line-height:14px;text-align:center;box-shadow:0 0 4px #00000080}.tonic-flower[data-state=open] .tonic-flower-petal{transition-delay:calc(var(--petal-index, 0) * 18ms)}[data-theme=light] .tonic-flower-center{background:#fff;color:#1b263b;border-color:#2563eb}[data-theme=light] .tonic-flower-center[data-has-tonic=true]{background:var(--current-tonic-color, #2563EB);color:#fff;border-color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.4)}[data-theme=light] .tonic-flower-petal{border-color:#0009;color:#fff}@media(max-width:640px){.tonic-flower{--flower-size: 78px;--flower-petal-size: 32px;--flower-trigger-size: 56px}.tonic-flower-petal{font-size:.72rem}}#tonic-note-select{text-align:center;text-align-last:center}.option-root-C{background-color:var(--chakra-bg-c);color:#fff}.option-root-Cs{background-color:var(--chakra-bg-cs);color:#fff}.option-root-D{background-color:var(--chakra-bg-d);color:#fff}.option-root-Ds{background-color:var(--chakra-bg-ds);color:#fff}.option-root-E{background-color:var(--chakra-bg-e);color:#fff}.option-root-F{background-color:var(--chakra-bg-f);color:#fff}.option-root-Fs{background-color:var(--chakra-bg-fs);color:#fff}.option-root-G{background-color:var(--chakra-bg-g);color:#fff}.option-root-Gs{background-color:var(--chakra-bg-gs);color:#fff}.option-root-A{background-color:var(--chakra-bg-a);color:#fff}.option-root-As{background-color:var(--chakra-bg-as);color:#fff}.option-root-B{background-color:var(--chakra-bg-b);color:#fff}#btn-display-off.active{background-color:#ef4444;color:#fff}.vertical-separator{width:1px;height:24px;background-color:var(--secondary-color);margin:0 .5rem}.display-mode-switcher .segment-btn{padding:0 .8rem;font-size:.75rem}#btn-language{font-size:1.2rem;display:flex;align-items:center;justify-content:center}#btn-fullscreen{display:flex;align-items:center;justify-content:center;color:var(--text-color, #fff);transition:transform .15s ease,background .15s ease}#btn-fullscreen:hover{transform:scale(1.05);background:#22d3ee26}#btn-fullscreen:active{transform:scale(.95)}#btn-fullscreen svg{pointer-events:none}:fullscreen body,body.app-fullscreen{background:#000!important}:fullscreen #app,body.app-fullscreen #app{width:100vw;height:100vh;overflow:auto}.language-modal-content{background-color:var(--primary-color);border:1px solid var(--highlight-color);border-radius:16px;padding:1.5rem;width:90%;max-width:400px;box-shadow:0 20px 50px #00000080;position:relative;display:flex;flex-direction:column;gap:1rem;animation:modalPop .15s ease-out}@keyframes modalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}[data-theme=light] .language-modal-content{background-color:#fff;color:#000;border-color:#ccc}.language-options{display:flex;flex-direction:column;gap:.8rem}.lang-option-btn{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--secondary-color);border:1px solid transparent;border-radius:12px;color:var(--text-color);cursor:pointer;transition:all .2s ease;font-size:1.1rem;font-weight:500;text-align:left}[data-theme=light] .lang-option-btn{background-color:#f0f0f0;color:#333}.lang-option-btn:hover{background-color:var(--highlight-color);color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.lang-flag{font-size:1.8rem;line-height:1}.lang-code-chip{font-size:.9rem;font-weight:800;letter-spacing:.5px;opacity:.65;min-width:1.8rem;text-align:center;font-variant-numeric:tabular-nums;line-height:1}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}[data-theme=light] .modal-header{border-bottom-color:#0000001a}.modal-header h2{margin:0;font-size:1.2rem;color:var(--highlight-color)}.close-modal-btn{background:none;border:none;color:var(--text-color);font-size:1.5rem;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity .2s}.close-modal-btn:hover{opacity:1;color:#ef4444}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;backdrop-filter:blur(5px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:overlayFadeInPlace .2s ease-out}@keyframes overlayFadeInPlace{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.modal-overlay{animation:none}}.anchor-required-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(3px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:anchorOverlayFade .18s ease-out;cursor:pointer}.anchor-required-modal{background:linear-gradient(180deg,#2a1a1a,#1a0f0f);color:#fff;padding:1.5rem 2rem;border-radius:16px;max-width:440px;width:90%;text-align:center;box-shadow:0 20px 60px #ef444440,0 0 0 2px #ef444480,inset 0 1px #ffffff1a;cursor:default;animation:anchorOverlayFade .18s ease-out}@keyframes anchorOverlayFade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.anchor-required-overlay,.anchor-required-modal,.anchor-required-modal .anchor-icon{animation:none}}.anchor-required-modal .anchor-icon{font-size:2.5rem;margin-bottom:.5rem;display:block;animation:anchorIconBounce 1.2s ease-in-out infinite}@keyframes anchorIconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.anchor-required-modal h3{font-size:1.4rem;margin:0 0 .5rem;color:#ffd9d9;font-weight:700}.anchor-required-modal p{font-size:1rem;margin:0 0 .75rem;color:#e5e5e5;line-height:1.45}.anchor-required-modal .anchor-hint{font-size:.85rem;color:#b8b8b8;font-style:italic;margin-top:.75rem;opacity:.85}.anchor-required-skip{display:block;margin:1rem auto 0;padding:6px 14px;background:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#b8b8b8;font:inherit;font-size:.82rem;cursor:pointer;opacity:.75;transition:opacity .15s ease,border-color .15s ease}.anchor-required-skip:hover{opacity:1;border-color:#ffffff59}.anchor-arrow{position:fixed;z-index:10000;pointer-events:none;width:80px;height:80px;animation:anchorArrowPulse 1s ease-in-out infinite}@keyframes anchorArrowPulse{0%,to{transform:scale(1) translate(0)}50%{transform:scale(1.15) translateY(-4px)}}.anchor-arrow svg{width:100%;height:100%;filter:drop-shadow(0 0 8px rgba(239,68,68,.85)) drop-shadow(0 0 14px rgba(239,68,68,.55))}.tonic-flower.anchor-target-pulse{animation:anchorTargetPulse 1.4s ease-in-out infinite;border-radius:50%}@keyframes anchorTargetPulse{0%,to{box-shadow:0 0 #ef4444e6,0 0 0 4px #ef444400}50%{box-shadow:0 0 0 8px #ef444400,0 0 0 4px #ef4444e6}}.scale-preview-comet{position:absolute;top:0;left:0;width:18px;height:18px;transform:translate(-50%,-50%);pointer-events:none;z-index:5000;opacity:0;transition:opacity .3s ease,left .3s linear,top .3s linear;will-change:left,top,opacity}.scale-preview-comet.active{opacity:1}.scale-preview-comet-head{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#FFFFFF 0%,#FFF5C0 25%,#FFD700 50%,rgba(255,200,0,.5) 75%,transparent 100%);box-shadow:0 0 8px #fff,0 0 16px #ffeb80,0 0 24px #ffc800b3,0 0 36px #ffb40066;animation:cometHeadPulse .5s ease-in-out infinite alternate}@keyframes cometHeadPulse{0%{transform:scale(.85)}to{transform:scale(1.15)}}.scale-preview-comet-trail{position:absolute;top:0;left:0;width:16px;height:16px;margin:-8px 0 0 -8px;pointer-events:none;z-index:4999;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.9) 0%,rgba(255,235,128,.7) 40%,rgba(255,200,0,.4) 70%,transparent 100%);box-shadow:0 0 8px #fff9,0 0 16px #ffc80066;animation:cometTrailFade .7s ease-out forwards;will-change:transform,opacity}@keyframes cometTrailFade{0%{opacity:.95;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}to{opacity:0;transform:scale(.3)}}.note-group.scale-preview-next-note{filter:drop-shadow(0 0 6px #FFEB80) drop-shadow(0 0 12px rgba(255,215,0,.85)) drop-shadow(0 0 20px rgba(255,200,0,.45));transition:filter .18s ease-in}#handpan-container.scale-preview-focus-active .note-group{opacity:.95;filter:saturate(0);transition:opacity .25s ease,filter .25s ease}#handpan-container.scale-preview-focus-active .note-group.scale-preview-current-note{opacity:1;filter:saturate(1) brightness(1.1)}#handpan-container.scale-preview-focus-active .note-group.scale-preview-next-note{opacity:1;filter:saturate(1) drop-shadow(0 0 6px #FFEB80) drop-shadow(0 0 12px rgba(255,215,0,.85)) drop-shadow(0 0 20px rgba(255,200,0,.45))}.btn-audio-preview.scale-preview-playing{background:linear-gradient(180deg,#ef444440,#dc262633)!important;color:#ff6b6b!important;border-color:#ef444480!important;box-shadow:inset 0 0 0 1px #ef44444d,0 0 12px #ef444466!important;animation:scalePreviewPlayingPulse 1.6s ease-in-out infinite}.btn-audio-preview.scale-preview-playing .btn-text{color:#ff6b6b;font-weight:700}@keyframes scalePreviewPlayingPulse{0%,to{box-shadow:inset 0 0 0 1px #ef44444d,0 0 12px #ef444466}50%{box-shadow:inset 0 0 0 1px #ef444480,0 0 20px #ef4444a6}}.save-scale-modal-content,.library-modal-content,.set-detail-modal-content,.scale-picker-modal-content,.import-tonic-modal-content{background:linear-gradient(180deg,#1a1f2a,#131722);border:1px solid var(--highlight-color);border-radius:16px;padding:1.2rem 1.4rem;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009;color:var(--text-color);position:relative;display:flex;flex-direction:column}.save-scale-modal-content,.import-tonic-modal-content{width:90%;max-width:460px}.library-modal-content{width:92%;max-width:800px}.set-detail-modal-content{width:90%;max-width:600px}.scale-picker-modal-content{width:90%;max-width:520px}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.6rem;margin-bottom:.8rem}.modal-header h2{font-size:1.2rem;margin:0;color:var(--text-color);font-weight:700}.save-modal-label{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.7rem;font-size:.85rem;font-weight:500;opacity:.9}.save-modal-label input,.save-modal-label textarea,.save-modal-label select{padding:.5rem .7rem;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#00000059;color:var(--text-color);font-family:inherit;font-size:.9rem;resize:vertical}.save-modal-label input:focus,.save-modal-label textarea:focus,.save-modal-label select:focus{outline:none;border-color:var(--highlight-color);box-shadow:0 0 0 2px #22d3ee33}.save-modal-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1rem}.library-modal-tabs.library-modal-tabs-modern{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1.2rem;border-bottom:none;padding:.4rem 0}.library-modal-tabs-modern .library-tab-btn{background:#ffffff06;border:1px solid rgba(255,255,255,.08);color:var(--text-color);padding:1.1rem .8rem;cursor:pointer;border-radius:14px;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:.75;position:relative;overflow:hidden}.library-modal-tabs-modern .library-tab-btn:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top,rgba(212,176,98,0),transparent 70%);transition:background .3s ease;pointer-events:none}.library-modal-tabs-modern .library-tab-btn:hover{opacity:1;background:#ffffff0d;border-color:#d4b0624d;transform:translateY(-1px)}.library-modal-tabs-modern .library-tab-btn:hover:before{background:radial-gradient(circle at top,rgba(212,176,98,.12),transparent 70%)}.library-modal-tabs-modern .library-tab-btn.active{opacity:1;background:linear-gradient(180deg,#d4b0622e,#d4b0620f);border-color:var(--highlight-color);color:var(--highlight-color);box-shadow:0 4px 16px #d4b0622e,inset 0 1px #ffffff1a}.library-modal-tabs-modern .library-tab-btn.active:before{background:radial-gradient(circle at top,rgba(212,176,98,.25),transparent 70%)}.library-modal-tabs-modern .lib-tab-icon{width:28px;height:28px;stroke-width:1.8;transition:transform .25s ease}.library-modal-tabs-modern .library-tab-btn:hover .lib-tab-icon{transform:scale(1.1)}.library-modal-tabs-modern .library-tab-btn.active .lib-tab-icon{transform:scale(1.05);filter:drop-shadow(0 0 8px rgba(212,176,98,.4))}.library-modal-tabs-modern .lib-tab-label{font-size:1.05rem;font-weight:700;letter-spacing:.2px;line-height:1.1}.library-modal-tabs-modern .library-tab-count{background:#ffffff14;padding:.15rem .6rem;border-radius:12px;font-size:.78rem;font-weight:700;min-width:28px;text-align:center;border:1px solid rgba(255,255,255,.1)}.library-modal-tabs-modern .library-tab-btn.active .library-tab-count{background:var(--highlight-color);color:#0a1f2a;border-color:var(--highlight-color);box-shadow:0 0 8px #d4b06266}@media(max-width:600px){.library-modal-tabs-modern .library-tab-btn{padding:.8rem .4rem;gap:.35rem}.library-modal-tabs-modern .lib-tab-label{font-size:.85rem}.library-modal-tabs-modern .lib-tab-icon{width:22px;height:22px}}.library-modal-tabs:not(.library-modal-tabs-modern){display:flex;gap:.4rem;margin-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.library-modal-tabs:not(.library-modal-tabs-modern) .library-tab-btn{background:transparent;border:none;color:var(--text-color);padding:.5rem .9rem;cursor:pointer;font-size:.95rem;font-weight:600;opacity:.6;border-bottom:2px solid transparent;transition:all .15s ease;display:flex;align-items:center;gap:.4rem}.library-modal-tabs:not(.library-modal-tabs-modern) .library-tab-btn:hover{opacity:.85}.library-modal-tabs:not(.library-modal-tabs-modern) .library-tab-btn.active{opacity:1;border-bottom-color:var(--highlight-color);color:var(--highlight-color)}.library-modal-actions{display:flex;gap:.5rem;margin-bottom:.8rem;flex-wrap:wrap}.library-modal-body{flex:1;overflow-y:auto;min-height:200px;max-height:60vh}.library-pane{display:block}.library-list{display:flex;flex-direction:column;gap:.5rem}.library-empty{text-align:center;opacity:.6;font-style:italic;padding:1.5rem;margin:0}.library-card{display:flex;align-items:center;gap:.6rem;padding:.7rem .9rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;transition:all .15s ease}.library-card:hover{background:#ffffff12;border-color:#ffffff2e}.library-card .card-main{flex:1;min-width:0}.library-card .card-title{font-size:1rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-card .card-meta{font-size:.78rem;opacity:.7;margin-top:.15rem}.library-card .card-actions{display:flex;gap:.3rem;flex-shrink:0;align-items:center;flex-wrap:wrap}.library-card .card-actions button{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:6px;padding:.35rem .55rem;font-size:.85rem;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.library-card .card-actions button:hover{background:#ffffff14;border-color:#ffffff4d}.library-card .card-actions button.btn-danger:hover{background:#ef444426;border-color:#ef4444;color:#fca5a5}.library-card .card-actions button.btn-with-label{padding:.4rem .7rem;font-weight:600}.library-card .card-actions button.btn-with-label .btn-label-text{font-size:.78rem;letter-spacing:.2px;white-space:nowrap}.library-card .card-actions button[data-action=export]:hover{background:#60a5fa1f;border-color:#60a5fa80;color:#93c5fd}.library-card .card-actions button[data-action=pdf]:hover{background:#d4b06226;border-color:var(--highlight-color);color:var(--highlight-color)}.library-card .card-actions-separator{width:1px;height:22px;background:#ffffff2e;margin:0 .35rem;flex-shrink:0}@media(max-width:700px){.library-card .card-actions-separator{width:100%;height:1px;margin:.3rem 0}}.library-card.draggable-item{cursor:grab}.library-card.draggable-item:active{cursor:grabbing}.library-card.dragging{opacity:.4}.library-card.drag-over{border-top:2px solid var(--highlight-color)}.library-card .drag-handle{color:#fff6;font-size:1.1rem;cursor:grab;user-select:none;padding:0 .3rem}#btn-record-demo.recording{background:linear-gradient(180deg,#ef444466,#dc26264d)!important;color:#ffb4b4!important;border-color:#ef4444!important;animation:btnRecordPulse 1.4s ease-in-out infinite}@keyframes btnRecordPulse{0%,to{box-shadow:0 0 #ef444480}50%{box-shadow:0 0 0 8px #ef444400}}body.scene-mode header,body.scene-mode #right-sidebar,body.scene-mode #chord-rows-wrapper,body.scene-mode #progression-arrow-container,body.scene-mode .compact-transport,body.scene-mode #learning-bar-container,body.scene-mode .controls-header,body.scene-mode .right-sidebar-toggle-handle,body.scene-mode #toggle-right-sidebar,body.scene-mode .scroll-to-top-btn,body.scene-mode #model-toggle-floating,body.scene-mode #handpan-mirror-toggle,body.scene-mode .toolbox-floating,body.scene-mode #toolbox-floating,body.scene-mode .left-sidebar,body.scene-mode #left-sidebar,body.scene-mode .modele-toggle-wrapper,body.scene-mode .model-toggle-block,body.scene-mode .toolbox-side,body.scene-mode #floating-palette-wrapper,body.scene-mode #overlay-wrapper,body.scene-mode #note-palette{display:none!important}body.scene-mode:not(.scene-progression-fullscreen):not(.scene-timeline-mode) .scene-hud{inset:50% 24px auto auto;transform:translateY(-50%);min-width:280px;max-width:340px}body.scene-mode #app{padding:0!important;height:100vh}body.scene-mode main{width:100vw;max-width:none;flex:1}body.scene-mode .workspace-grid{grid-template-columns:1fr!important;height:100vh}body.scene-mode #handpan-container{width:min(100vh,100vw)!important;height:min(100vh,100vw)!important;max-width:none;margin:0 auto!important;aspect-ratio:1 / 1}.scene-hud{position:fixed;bottom:18px;left:50%;transform:translate(-50%);background:linear-gradient(180deg,#141821f2,#0a0e16f2);border:1px solid rgba(212,176,98,.4);border-radius:14px;padding:.7rem 1.1rem;color:var(--text-color);z-index:8000;display:none;flex-direction:column;gap:.45rem;align-items:center;backdrop-filter:blur(8px);box-shadow:0 12px 30px #0009;min-width:320px;max-width:90vw}body.scene-mode .scene-hud{display:flex}.scene-hud .hud-line{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;justify-content:center;font-size:.9rem}.scene-hud .hud-title{font-weight:700;font-size:1.05rem;color:var(--highlight-color)}.scene-hud .hud-meta{opacity:.8;font-size:.85rem}.scene-hud .hud-meta-sep{opacity:.4;padding:0 .2rem}.scene-hud .hud-next{opacity:.8;font-size:.85rem;font-style:italic}.scene-hud .hud-actions{display:flex;gap:.45rem;margin-top:.2rem}.scene-hud .hud-actions button{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:var(--text-color);padding:.4rem .7rem;border-radius:8px;cursor:pointer;font-size:.85rem;transition:all .15s}.scene-hud .hud-actions button:hover{background:#ffffff29}.scene-hud .hud-actions button.hud-quit{background:#ef444426;border-color:#ef4444;color:#fca5a5}#btn-scene-mode{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:8px;padding:.35rem .6rem;cursor:pointer;transition:all .15s ease}#btn-scene-mode:hover{background:#ffffff14;border-color:var(--highlight-color)}.sidebar.mode-creation #creation-save-panel{display:flex!important}.btn-modern-icon{display:flex;align-items:center;justify-content:center;gap:.55rem;text-align:left;line-height:1.2;transition:all .18s ease}.btn-modern-icon .btn-svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor}.btn-modern-icon:hover .btn-svg{transform:scale(1.08)}.btn-modern-icon .btn-svg-record circle:nth-of-type(2){animation:pulseRecord 1.6s ease-in-out infinite}@keyframes pulseRecord{0%,to{opacity:1}50%{opacity:.5}}.sidebar.collapsed #creation-save-panel,#right-sidebar.collapsed #creation-save-panel{display:none!important}body:has(.sidebar.mode-library) .custom-select-trigger,body:has(.content-wrapper.mode-library) .custom-select-trigger{cursor:help;position:relative}body:has(.sidebar.mode-library) .custom-select-trigger:after,body:has(.content-wrapper.mode-library) .custom-select-trigger:after,body:has(.sidebar.mode-library) .custom-select-trigger.no-value:after,body:has(.content-wrapper.mode-library) .custom-select-trigger.no-value:after{display:none!important;content:none!important}.chord-help-indicator{position:absolute;right:6px;bottom:6px;width:18px;height:18px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.25);color:#ffffffb3;font-size:.72rem;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .18s ease,background .15s ease;z-index:5;padding:0;font-family:inherit}.custom-chord-wrapper:hover .chord-help-indicator,.control-group:hover .chord-help-indicator{opacity:1;pointer-events:auto}.chord-help-indicator:hover{background:var(--highlight-color);border-color:var(--highlight-color);color:#0a1f2a;transform:scale(1.1)}@media(hover:none),(pointer:coarse){.chord-help-indicator{opacity:1;pointer-events:auto}}.song-editor-modal-content{background:linear-gradient(180deg,#1a1f2a,#131722);border:1px solid var(--highlight-color);border-radius:16px;padding:1.2rem 1.4rem;width:95%;max-width:900px;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0009;color:var(--text-color);display:flex;flex-direction:column}.part-editor-modal-content{background:linear-gradient(180deg,#1a1f2a,#131722);border:1px solid var(--highlight-color);border-radius:16px;padding:1.2rem 1.4rem;width:92%;max-width:620px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009;color:var(--text-color);display:flex;flex-direction:column}.song-editor-body{gap:.8rem;display:flex;flex-direction:column}.song-editor-meta{display:flex;flex-wrap:wrap;gap:.6rem;align-items:stretch}.song-editor-section{margin-top:.4rem;padding:.7rem .8rem .9rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:10px}.song-editor-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.song-editor-section-header h3{font-size:1.05rem;margin:0;color:var(--highlight-color);font-weight:600}.song-parts-list{display:flex;flex-direction:column;gap:.4rem}.song-part-card{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--part-color, #60A5FA);border-radius:8px;transition:background .15s}.song-part-card:hover{background:#ffffff14}.song-part-card .part-name{font-weight:600;flex:0 0 auto;min-width:100px}.song-part-card .part-chords{flex:1;display:flex;gap:.25rem;flex-wrap:wrap;font-size:.85rem;opacity:.85}.song-part-card .chord-chip{background:#ffffff1a;padding:.15rem .5rem;border-radius:12px;font-weight:500;font-size:.8rem}.song-part-card .part-actions{display:flex;gap:.3rem;flex-shrink:0}.song-part-card .part-actions button{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:6px;padding:.3rem .5rem;font-size:.85rem;cursor:pointer;transition:all .15s}.song-part-card .part-actions button:hover{background:#ffffff14;border-color:#ffffff4d}.song-part-card .part-actions button.btn-danger:hover{background:#ef444426;border-color:#ef4444;color:#fca5a5}.song-structure-list{display:flex;flex-direction:column;gap:.35rem;min-height:60px}.song-structure-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--part-color, #60A5FA);border-radius:8px;cursor:grab;transition:background .15s}.song-structure-item:active{cursor:grabbing}.song-structure-item:hover{background:#ffffff12}.song-structure-item.dragging{opacity:.4}.song-structure-item.drag-over{border-top-color:var(--highlight-color)}.song-structure-item .struct-index{background:#ffffff1a;padding:.15rem .5rem;border-radius:12px;font-size:.78rem;font-weight:700;flex-shrink:0}.song-structure-item .struct-name{font-weight:600;flex:1}.song-structure-item .struct-info{font-size:.8rem;opacity:.7}.song-structure-item button.struct-remove{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:6px;padding:.25rem .5rem;cursor:pointer;font-size:.85rem;flex-shrink:0}.song-structure-item button.struct-remove:hover{background:#ef444426;border-color:#ef4444;color:#fca5a5}.song-structure-item .drag-handle{color:#fff6;user-select:none}.part-chord-list{display:flex;flex-direction:column;gap:.35rem}.part-chord-row{display:flex;gap:.5rem;align-items:center;padding:.4rem .5rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:8px}.part-chord-row .chord-index{background:#ffffff1a;padding:.15rem .5rem;border-radius:12px;font-weight:700;font-size:.78rem;min-width:28px;text-align:center}.part-chord-row select,.part-chord-row input{background:#00000059;color:var(--text-color);border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:.35rem .5rem;font-family:inherit;font-size:.9rem}.part-chord-row select.chord-degree-select{flex:1;min-width:120px}.part-chord-row input.chord-beats-input{width:60px;text-align:center}.part-chord-row .chord-beats-label{font-size:.8rem;opacity:.7}.part-chord-row button.chord-row-remove{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:6px;padding:.25rem .45rem;cursor:pointer;margin-left:auto}.part-chord-row button.chord-row-remove:hover{background:#ef444426;border-color:#ef4444;color:#fca5a5}.scene-songbook-panel{position:fixed;top:0;left:0;bottom:0;width:340px;z-index:7900;background:linear-gradient(180deg,#0f131cf5,#080b12fa);border-right:1px solid rgba(212,176,98,.4);box-shadow:8px 0 32px #0009;backdrop-filter:blur(8px);color:var(--text-color);flex-direction:column;transition:width .25s ease,transform .25s ease;display:none}body.scene-mode .scene-songbook-panel{display:flex}.scene-songbook-panel.collapsed{width:36px}.scene-songbook-panel.collapsed .songbook-body,.scene-songbook-panel.collapsed .songbook-footer,.scene-songbook-panel.collapsed .songbook-song-select{display:none}.scene-songbook-panel.collapsed .songbook-header{justify-content:center}.songbook-header{display:flex;gap:.5rem;align-items:center;padding:.6rem .7rem;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.songbook-song-select{flex:1;background:#0006;color:var(--text-color);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:.35rem .55rem;font-size:.9rem;font-weight:600;font-family:inherit}.songbook-icon-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-color);width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:1rem;flex-shrink:0;transition:all .15s}.songbook-icon-btn:hover{background:#ffffff1f;border-color:var(--highlight-color)}.songbook-body{flex:1;overflow-y:auto;padding:.5rem .5rem .8rem}.songbook-section{margin-bottom:.7rem}.songbook-section h4{font-size:.85rem;margin:0 0 .4rem;color:var(--highlight-color);font-weight:700;letter-spacing:.02em;padding:0 .3rem}.songbook-empty{font-size:.82rem;opacity:.55;font-style:italic;text-align:center;padding:.8rem;margin:0}.songbook-structure-list{display:flex;flex-direction:column;gap:.25rem}.songbook-structure-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-left:4px solid var(--part-color, #60A5FA);border-radius:6px;cursor:pointer;transition:all .15s}.songbook-structure-item:hover{background:#ffffff12}.songbook-structure-item.active{background:#d4b0622e;border-color:var(--highlight-color);box-shadow:inset 0 0 0 1px #d4b0624d}.songbook-structure-item .part-index{background:#ffffff1a;padding:.1rem .4rem;border-radius:8px;font-size:.7rem;font-weight:700;flex-shrink:0}.songbook-structure-item .part-name{flex:1;font-size:.88rem;font-weight:600}.songbook-structure-item .part-info{font-size:.72rem;opacity:.65;flex-shrink:0}.songbook-chords-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.45rem}.songbook-chord-card{position:relative;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--chord-color, #FFD700);border-radius:10px;padding:.4rem .4rem .5rem;display:flex;flex-direction:column;align-items:center}.songbook-chord-card .chord-card-index{position:absolute;top:4px;right:6px;background:var(--chord-color, #FFD700);color:#000;font-weight:800;font-size:.7rem;padding:.05rem .4rem;border-radius:10px;line-height:1.4}.chord-card-header{text-align:center;margin-bottom:.25rem}.chord-card-header .chord-degree{font-weight:700;color:var(--highlight-color);font-size:.85rem}.chord-card-header .chord-name{font-size:1.1rem;font-weight:800;color:#fff}.chord-card-svg{width:130px;height:130px;display:flex;align-items:center;justify-content:center}.chord-card-svg .mini-handpan-svg{display:block}.chord-card-footer{margin-top:.25rem;font-size:.72rem;opacity:.7;text-align:center}.songbook-footer{display:flex;gap:.4rem;padding:.6rem .7rem;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.songbook-nav-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:var(--text-color);padding:.5rem .7rem;border-radius:8px;cursor:pointer;font-size:.88rem;font-weight:600;transition:all .15s}.songbook-nav-btn:hover{background:#ffffff29;border-color:var(--highlight-color)}.songbook-next-btn{flex:1;background:linear-gradient(180deg,#22d3ee40,#14b8a633);border-color:#22d3ee66;color:#5eead4}.songbook-quit-btn{background:#ef444426;border-color:#ef4444;color:#fca5a5}@media(max-width:768px){.scene-songbook-panel{inset:auto 0 0;width:100%!important;max-height:60vh;border-right:none;border-top:1px solid rgba(212,176,98,.4);box-shadow:0 -8px 32px #0009}.scene-songbook-panel.collapsed{max-height:50px}}.songbook-toolbar{display:flex;gap:.4rem;padding:.4rem .7rem;border-bottom:1px solid rgba(255,255,255,.06);flex-wrap:wrap;align-items:center;flex-shrink:0}.songbook-toolbar-item{display:flex;align-items:center;gap:.3rem;font-size:.78rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.2rem .4rem}.songbook-toolbar-item select{background:transparent;color:var(--text-color);border:none;font-family:inherit;font-size:.78rem;cursor:pointer;outline:none}.songbook-toolbar-toggle{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:var(--text-color);padding:.3rem .55rem;border-radius:6px;cursor:pointer;font-size:.78rem;font-weight:600;transition:all .15s;opacity:.6}.songbook-toolbar-toggle:hover{opacity:.85;background:#ffffff14}.songbook-toolbar-toggle.active{opacity:1;background:#d4b06233;border-color:var(--highlight-color);color:var(--highlight-color)}.sidebar.mode-library #logic-listen-section,.content-wrapper.mode-library #logic-listen-section{display:none!important}.songbook-view-mode-group{display:inline-flex;align-items:stretch;background:#00000040;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:2px;gap:0;overflow:hidden}.songbook-view-mode-group .songbook-view-btn{border:none;border-radius:6px;margin:0;opacity:.5;background:transparent}.songbook-view-mode-group .songbook-view-btn:hover{opacity:.8;background:#ffffff0d}.songbook-view-mode-group .songbook-view-btn.active{opacity:1;background:var(--highlight-color);color:#0d1b2a;box-shadow:0 1px 6px #d4b06266}body.scene-progression-fullscreen.scene-mode #handpan-container{display:none!important}body.scene-progression-fullscreen.scene-mode .scene-songbook-panel{width:100vw!important;max-width:none;border-right:none}body.scene-progression-fullscreen.scene-mode .songbook-chords-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.8rem}body.scene-progression-fullscreen.scene-mode .songbook-chord-card{padding:.7rem .7rem .9rem}body.scene-progression-fullscreen.scene-mode .chord-card-svg{width:220px;height:220px}body.scene-progression-fullscreen.scene-mode .chord-card-header .chord-degree{font-size:1.2rem}body.scene-progression-fullscreen.scene-mode .chord-card-header .chord-name{font-size:1.6rem}body.scene-progression-fullscreen.scene-mode .scene-hud{inset:12px 16px auto auto;transform:none;flex-direction:row;align-items:center;gap:.6rem;padding:.4rem .7rem;min-width:0;max-width:70vw;border-radius:24px}body.scene-progression-fullscreen.scene-mode .scene-hud .hud-line{margin:0;gap:.4rem}body.scene-progression-fullscreen.scene-mode .scene-hud .hud-title{font-size:.95rem;white-space:nowrap}body.scene-progression-fullscreen.scene-mode .scene-hud .hud-meta,body.scene-progression-fullscreen.scene-mode .scene-hud .hud-meta-sep,body.scene-progression-fullscreen.scene-mode .scene-hud .hud-next{display:none}body.scene-progression-fullscreen.scene-mode .scene-hud .hud-actions{margin-top:0;gap:.3rem}body.scene-progression-fullscreen.scene-mode .scene-hud .hud-actions button{padding:.3rem .55rem;font-size:.82rem}.songbook-chord-card .chord-card-topbar{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:.25rem}.songbook-chord-card .chord-card-topbar .chord-card-index{position:static;background:var(--chord-color, #FFD700);color:#000;font-weight:800;font-size:.75rem;padding:.1rem .5rem;border-radius:10px;line-height:1.4}.songbook-chord-card .chord-card-play-btn{background:#ffffff1f;border:2px solid var(--chord-color, rgba(255, 255, 255, .35));color:var(--chord-color, var(--text-color));width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s;box-shadow:0 0 8px var(--chord-color, transparent)}.songbook-chord-card .chord-card-play-btn:hover{background:var(--chord-color, rgba(255, 255, 255, .18));color:#000;transform:scale(1.08);box-shadow:0 0 14px var(--chord-color, rgba(255, 255, 255, .4))}.songbook-chord-card .chord-card-label{margin-top:.35rem;text-align:center;line-height:1.2}.songbook-chord-card .chord-card-label .chord-degree{font-weight:800;font-size:.95rem}.songbook-chord-card .chord-card-label .chord-name{font-size:1.05rem;font-weight:700;color:#fff;margin-top:.1rem}body.scene-progression-fullscreen.scene-mode .chord-card-label .chord-degree{font-size:1.4rem}body.scene-progression-fullscreen.scene-mode .chord-card-label .chord-name{font-size:1.7rem}.songbook-chord-card .chord-card-header{display:none}.songbook-chord-card.playing{border-color:var(--chord-color, #FFD700);box-shadow:inset 0 0 0 2px var(--chord-color, #FFD700),0 0 24px var(--chord-color, rgba(255, 215, 0, .6));animation:songbook-card-pulse .6s ease-in-out infinite alternate;z-index:2}@keyframes songbook-card-pulse{0%{transform:scale(1);box-shadow:inset 0 0 0 2px var(--chord-color, #FFD700),0 0 18px var(--chord-color, rgba(255, 215, 0, .45))}to{transform:scale(1.04);box-shadow:inset 0 0 0 3px var(--chord-color, #FFD700),0 0 36px var(--chord-color, rgba(255, 215, 0, .85))}}.songbook-chord-card.playing.warning-last-beat{animation:songbook-card-warning .3s ease-in-out infinite alternate;border-color:#fbbf24}@keyframes songbook-card-warning{0%{transform:scale(1);box-shadow:inset 0 0 0 3px #fbbf24,0 0 28px #fbbf24e6}to{transform:scale(1.07);box-shadow:inset 0 0 0 4px #fcd34d,0 0 48px #fcd34d}}.songbook-playback-toolbar{border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.06);padding-top:.5rem}.songbook-play-mode-group{display:flex;gap:0;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden}.songbook-play-mode-btn{background:transparent;border:none;color:var(--text-color);padding:.32rem .6rem;cursor:pointer;font-size:.78rem;font-weight:600;opacity:.55;transition:all .15s}.songbook-play-mode-btn:hover{opacity:.85;background:#ffffff0f}.songbook-play-mode-btn.active{opacity:1;background:#d4b06233;color:var(--highlight-color)}.songbook-arpege-speed{flex:1;min-width:130px}.songbook-arpege-speed input[type=range]{flex:1;cursor:pointer;accent-color:var(--highlight-color)}#songbook-arpege-speed-label{font-size:.72rem;opacity:.7;min-width:42px;text-align:right}#songbook-play-sequence{background:linear-gradient(180deg,#22c55e4d,#16a34a40);border-color:#22c55e80;color:#86efac;font-weight:700}#songbook-play-sequence:hover{background:linear-gradient(180deg,#22c55e73,#16a34a66)}#songbook-play-sequence.active{background:linear-gradient(180deg,#ef444459,#dc26264d);border-color:#ef44448c;color:#fca5a5;animation:songbook-play-pulse 1.6s ease-in-out infinite}@keyframes songbook-play-pulse{0%,to{box-shadow:0 0 #ef444480}50%{box-shadow:0 0 0 10px #ef444400}}#handpan-container.metronome-pulse{animation:metronomePulse .18s ease-out}#handpan-container.metronome-pulse-accent{animation:metronomePulseAccent .25s ease-out}@keyframes metronomePulse{0%{box-shadow:0 0 #ffd700b3}50%{box-shadow:0 0 0 14px #ffd70066}to{box-shadow:0 0 #ffd70000}}@keyframes metronomePulseAccent{0%{box-shadow:0 0 #ef4444d9}50%{box-shadow:0 0 0 22px #ef444480}to{box-shadow:0 0 #ef444400}}.count-in-overlay{position:fixed;font-size:12rem;font-weight:900;line-height:1;color:var(--highlight-color);text-shadow:0 0 24px rgba(212,176,98,.85),0 0 48px rgba(212,176,98,.5);z-index:9000;pointer-events:none;opacity:0}.songbook-metronome-toolbar{border-top:1px solid rgba(255,255,255,.05)}.songbook-tempo-group{display:flex;align-items:center;gap:.25rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.15rem .25rem}.songbook-tempo-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-color);width:24px;height:24px;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1;padding:0;transition:all .15s}.songbook-tempo-btn:hover{background:#ffffff24;border-color:var(--highlight-color)}#songbook-tempo-display{min-width:30px;text-align:center;font-weight:700;font-size:.85rem;color:var(--highlight-color)}#songbook-metronome-toggle.active{background:#ef444433;border-color:#ef444480;color:#fca5a5}.songbook-toolbar-toggle,.songbook-toolbar-item,.songbook-play-mode-group,.songbook-tempo-group{min-height:var(--h-control);border-radius:var(--r-sm);box-sizing:border-box}.songbook-toolbar-toggle{display:inline-flex;align-items:center;justify-content:center}.songbook-play-mode-group .songbook-play-mode-btn{align-self:stretch;display:inline-flex;align-items:center}.songbook-play-mode-btn.active{opacity:1;background:var(--ctl-active-bg);color:var(--ctl-active-fg);font-weight:700}.songbook-metronome-toolbar #songbook-play-sequence{margin-left:auto}.songbook-play-big{min-height:var(--h-transport);padding-left:var(--sp-3);padding-right:var(--sp-3);font-size:var(--fs-label)}body.scene-timeline-mode .scene-songbook-panel{inset:auto 0 0;width:100vw!important;max-width:none;height:auto;max-height:28vh;border-right:none;border-top:1px solid rgba(212,176,98,.4);flex-direction:column}body.scene-timeline-mode .songbook-section:has(#songbook-chords-grid){display:none}body.scene-timeline-mode .songbook-section:has(#songbook-structure-list){flex-shrink:0;padding:.4rem .6rem}body.scene-timeline-mode .songbook-section:has(#songbook-structure-list) h4{display:none}body.scene-timeline-mode #songbook-structure-list{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:.4rem}body.scene-timeline-mode .songbook-structure-item{min-width:140px;flex-shrink:0}body.scene-timeline-mode #handpan-container{transform:scale(.55) translateY(-20px);transform-origin:50% 30%;transition:transform .3s ease}.timeline-satellite{position:fixed;top:50%;transform:translateY(-50%);width:220px;background:linear-gradient(180deg,#141821eb,#0a0e16f2);border:2px solid var(--chord-color, rgba(255, 255, 255, .15));border-radius:14px;padding:.6rem .6rem .7rem;z-index:7800;box-shadow:0 16px 40px #0009;backdrop-filter:blur(6px);display:none;flex-direction:column;align-items:center;color:var(--text-color);transition:transform .3s ease,opacity .3s ease}body.scene-timeline-mode .timeline-satellite{display:flex}.timeline-satellite-past{left:24px;opacity:.78}.timeline-satellite-future{right:24px}.timeline-satellite .satellite-role{font-size:.72rem;font-weight:700;text-transform:uppercase;opacity:.75;letter-spacing:.05em;margin-bottom:.3rem;color:var(--chord-color, var(--text-color))}.timeline-satellite .satellite-svg-wrap{width:160px;height:160px;display:flex;align-items:center;justify-content:center}.timeline-satellite .satellite-label{margin-top:.4rem;text-align:center}.timeline-satellite .satellite-degree{font-weight:800;font-size:.95rem}.timeline-satellite .satellite-name{font-size:1.4rem;font-weight:800;color:#fff;margin-top:.1rem}.timeline-satellite .satellite-empty{opacity:.45;font-style:italic;padding:3rem 1rem;text-align:center}.timeline-current-label{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:7900;background:linear-gradient(180deg,#141821f2,#0a0e16f7);border:2px solid var(--chord-color, var(--highlight-color));border-radius:12px;padding:.5rem 1rem;color:var(--text-color);box-shadow:0 0 24px #00000080,0 0 18px var(--chord-color, transparent);display:none;align-items:center;gap:.7rem;backdrop-filter:blur(6px)}body.scene-timeline-mode .timeline-current-label{display:flex}.timeline-current-label .cur-degree{font-weight:900;font-size:1.5rem}.timeline-current-label .cur-name{font-weight:800;font-size:1.5rem;color:#fff}.timeline-current-label .cur-info{font-size:.78rem;opacity:.7;border-left:1px solid rgba(255,255,255,.15);padding-left:.7rem}.note-group.timeline-chord-highlight .note-circle-base{fill:var(--chord-color, #FFD700)!important;stroke:#fff!important;stroke-width:4!important;filter:drop-shadow(0 0 12px var(--chord-color, #FFD700))}.note-group.timeline-chord-highlight{animation:timelineChordPulse .8s ease-in-out infinite alternate}@keyframes timelineChordPulse{0%{filter:drop-shadow(0 0 8px var(--chord-color, #FFD700))}to{filter:drop-shadow(0 0 18px var(--chord-color, #FFD700))}}body.scene-timeline-mode .scene-hud{inset:12px 16px auto auto;transform:none;flex-direction:row;padding:.4rem .7rem;border-radius:24px;min-width:0;max-width:50vw}body.scene-timeline-mode .scene-hud .hud-title{font-size:.95rem}body.scene-timeline-mode .scene-hud .hud-line.hud-next,body.scene-timeline-mode .scene-hud .hud-meta{display:none}@media(max-width:900px){.timeline-satellite{width:140px;top:auto;bottom:calc(28vh + 12px);transform:none}.timeline-satellite .satellite-svg-wrap{width:100px;height:100px}.timeline-satellite .satellite-name{font-size:1.1rem}}.controls,#image-exporter{position:relative;overflow:visible;display:flex;flex-direction:column;gap:.5rem;width:100%;background-color:var(--primary-color);padding:.8rem;border-radius:20px;box-shadow:inset 2px 2px 5px var(--shadow-dark),inset -2px -2px 5px var(--shadow-light);align-items:center;transition:box-shadow .3s ease;z-index:1;border:2px solid var(--current-outline-color)}.sidebar{position:relative;flex:1;display:flex;flex-direction:column;gap:1rem;width:100%;justify-content:flex-start}#chord-rows-wrapper{width:100%;display:flex;flex-direction:column;gap:0;overflow:visible!important}#chord-rows-wrapper.timeline-horizontal{width:100%;max-width:90%;margin:10px auto 20px;background-color:transparent!important;box-shadow:none!important;padding:0 0 5px;border:none;display:flex;flex-direction:row;flex-wrap:nowrap;overflow:visible;gap:4px;align-items:stretch;justify-content:center;scroll-snap-type:x mandatory;position:relative;z-index:10}#chord-rows-wrapper.timeline-horizontal .control-group{flex:1 1 auto;width:13.5%;min-width:0;max-width:160px;margin:0;border-radius:12px;backdrop-filter:blur(5px);padding:4px;position:relative;border:2px solid var(--current-outline-color);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto 1fr auto auto;grid-template-areas:"mods mods" "top top" "mid mid" "bot-label bot-swap" "inversions inversions";gap:4px;scroll-snap-align:center;z-index:1}#chord-rows-wrapper.timeline-horizontal .control-group:first-child{border-radius:12px 0 0 12px}#chord-rows-wrapper.timeline-horizontal .control-group:last-child{border-radius:0 12px 12px 0;border-right:none}#chord-rows-wrapper.timeline-horizontal .chord-row-main{display:contents}#chord-rows-wrapper.timeline-horizontal .chord-modifiers-wrapper{width:auto;opacity:0;visibility:hidden;transition:opacity .2s ease 1s,visibility 0s 1.2s;position:absolute;bottom:100%;left:-2px;right:-2px;transform:none;margin-bottom:4px;z-index:9999;background:transparent;padding:0;box-shadow:none;box-sizing:border-box}#chord-rows-wrapper.timeline-horizontal .control-group:hover .chord-modifiers-wrapper,#chord-rows-wrapper.timeline-horizontal .control-group.show-secondary-menus .chord-modifiers-wrapper{opacity:1;visibility:visible;transition:opacity .2s ease 0s,visibility 0s 0s}#chord-rows-wrapper.timeline-horizontal .chord-actions-row{grid-area:top;width:100%;display:flex;justify-content:center}#chord-rows-wrapper.timeline-horizontal .chord-actions-group{width:100%;display:flex;justify-content:center;align-items:center;gap:.2rem;padding:0;box-sizing:border-box;max-width:100%;overflow:hidden}#chord-rows-wrapper.timeline-horizontal .chord-actions-group>button{flex:0 1 auto;min-width:0}#chord-rows-wrapper.timeline-horizontal .chord-selection-area{grid-area:mid;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}#chord-rows-wrapper.timeline-horizontal .custom-chord-wrapper{width:100%;position:relative}#chord-rows-wrapper.timeline-horizontal .chord-label{grid-area:bot-label;text-align:center;font-size:.7rem;opacity:.8;align-self:center;margin:0;font-weight:600}.mode-logic #chord-rows-wrapper.timeline-horizontal .chord-label{text-align:center;grid-column:1 / -1;justify-self:center}#chord-rows-wrapper.timeline-horizontal .btn-swap-physical{grid-area:bot-swap;align-self:center;justify-self:end;margin:0;width:24px;height:24px;font-size:.9rem}.mode-logic #chord-rows-wrapper.timeline-horizontal .btn-swap-physical{display:none!important}#chord-rows-wrapper.timeline-horizontal .custom-select-trigger{padding:0 .2rem;height:48px;font-size:.8rem;flex-direction:column;justify-content:center;align-items:center;text-align:center;line-height:1.1;position:relative;width:100%}#chord-rows-wrapper.timeline-horizontal .custom-select-trigger>div{flex-direction:column;align-items:center;gap:0;width:100%}#chord-rows-wrapper.timeline-horizontal .custom-select-trigger span:first-child{font-size:.72rem;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}#chord-rows-wrapper.timeline-horizontal .custom-select-trigger span:last-child{font-size:.6rem;opacity:.8;line-height:1}#chord-rows-wrapper.timeline-horizontal .chord-modifiers{display:grid;grid-template-columns:1fr 1fr;justify-content:center;gap:.2rem;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility 0s;transition-delay:0s,0s,0s;z-index:50!important;pointer-events:auto}#chord-rows-wrapper.timeline-horizontal .chord-modifiers:before{content:"";position:absolute;top:100%;left:0;width:100%;height:15px;background:transparent}#chord-rows-wrapper.timeline-horizontal .control-group:hover .chord-modifiers,#chord-rows-wrapper.timeline-horizontal .control-group.show-secondary-menus .chord-modifiers,#chord-rows-wrapper.timeline-horizontal .chord-modifiers:hover{opacity:1;visibility:visible;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease,visibility 0s}#chord-rows-wrapper.timeline-mode-2{gap:6px;padding:5px 0 10px}#chord-rows-wrapper.timeline-mode-2 .control-group{border-radius:12px!important;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);box-shadow:0 4px 6px #0003;transition:transform .2s,background-color .2s;border-right:2px solid rgba(255,255,255,.1);padding:8px}#chord-rows-wrapper.timeline-mode-2 .control-group:hover{transform:translateY(-5px);background:#ffffff1a;z-index:20}#chord-rows-wrapper.timeline-mode-2 .control-group.playing-active{border-color:var(--highlight-color);background:#22d3ee1a;transform:translateY(-5px);z-index:20}#progression-arrow-container{display:none;width:100%;max-width:90%;margin:5px auto 20px;align-items:center;justify-content:center;gap:15px;opacity:1;transition:opacity .3s}#progression-arrow-container:hover{opacity:1}#chords-container.controls{gap:.75rem!important;padding:1rem!important}#harmony-controls,.compact-transport,#logic-text-switch-container,#chord-rows-wrapper:not(.timeline-horizontal),#progression-arrow-container,#learning-bar-container,.library-selectors-card,.library-preview-card{background:#ffffff06;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:.6rem .75rem;margin:0!important;transition:background .2s ease,border-color .2s ease}.section-card-with-step{position:relative;padding-top:1.4rem!important}.section-card-with-step:before{content:attr(data-step);position:absolute;top:-10px;left:12px;background:linear-gradient(135deg,#22d3ee,#67e8f9);color:#0d1b2a;font-size:.65rem;font-weight:800;padding:2px 8px;border-radius:12px;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 2px 8px #22d3ee4d;z-index:2}[data-theme=light] #harmony-controls,[data-theme=light] .compact-transport,[data-theme=light] #logic-text-switch-container,[data-theme=light] #progression-arrow-container,[data-theme=light] #learning-bar-container{background:#00000006;border-color:#0000000f}#harmony-controls:hover,.compact-transport:hover{background:#ffffff0a;border-color:#ffffff1a}.scale-mode-toggle{flex-direction:column!important;width:auto!important;min-width:110px;height:auto!important;align-self:center;padding:0!important;gap:0;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);overflow:hidden}.scale-mode-toggle .segment-btn{width:100%;padding:.55rem 1.1rem!important;font-size:.85rem!important;line-height:1.2;white-space:nowrap;border:none!important;border-radius:0!important;margin:0!important;box-shadow:none!important}.scale-mode-toggle .segment-btn+.segment-btn{border-top:1px solid rgba(255,255,255,.08)!important}.scale-mode-toggle .segment-btn#emotion-mode-major{transition:all .3s ease}.scale-mode-toggle .segment-btn#emotion-mode-major.active{background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;color:#0d1b2a!important;text-shadow:0 1px 2px rgba(255,255,255,.3);box-shadow:0 0 12px #fbbf2480,inset 0 1px 2px #fff6!important;border-color:#f59e0b!important}.scale-mode-toggle .segment-btn#emotion-mode-natural-minor{transition:all .3s ease}.scale-mode-toggle .segment-btn#emotion-mode-natural-minor.active{background:linear-gradient(135deg,#6366f1,#4338ca)!important;color:#f1f5f9!important;text-shadow:0 1px 2px rgba(0,0,0,.5);box-shadow:0 0 12px #6366f180,inset 0 1px 2px #ffffff26!important;border-color:#4338ca!important}body:has(#emotion-mode-major.active) #harmony-controls{background:linear-gradient(135deg,#fbbf240a,#ffffff06);border-color:#fbbf2426}body:has(#emotion-mode-natural-minor.active) #harmony-controls{background:linear-gradient(135deg,#6366f10a,#ffffff06);border-color:#6366f126}.progression-line{height:2px;flex:1;border-radius:2px;position:relative;background:#fff!important}.progression-line.left:after,.progression-line.right:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid #FFFFFF!important}.progression-title-text{font-size:.85rem;text-transform:uppercase;letter-spacing:2px;font-weight:700;white-space:nowrap;color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.5);opacity:1}[data-theme=light] .progression-line{background:#000!important}[data-theme=light] .progression-line.left:after,[data-theme=light] .progression-line.right:after{border-left-color:#000!important}[data-theme=light] .progression-title-text{color:#000!important}#overlay-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:150}.mode-library #chords-panel-title{display:none!important}.mode-library #chords-container .controls-header{border-bottom:none;justify-content:flex-end;padding-bottom:0;min-height:0}.mode-library #btn-chords-help{display:none!important}.sidebar.mode-library #chords-container{background:transparent!important;border:none!important;box-shadow:none!important;padding-top:0!important;margin-top:-.5rem!important;border-radius:0!important}.sidebar.mode-library #chords-container .controls-header,.mode-library .chord-modifiers-wrapper,.mode-library .btn-swap-physical,.mode-library .inversion-menu-container,body.midi-connect-mode .chord-modifiers-wrapper,body.midi-connect-mode .btn-swap-physical,body.midi-connect-mode .show-path-button,body.midi-connect-mode .play-chord-button,body.midi-connect-mode .inversion-menu-container,.mode-library .show-path-button.edit-custom-button{display:none!important}.sidebar:not(.mode-library) #scale-library-panel{display:none}.sidebar:not(.mode-logic) #harmony-controls,.sidebar:not(.mode-logic) .logic-separator{display:none!important}.sidebar.mode-logic #chords-panel-title{display:flex!important}.sidebar.mode-logic #chords-container .controls-header{border-bottom:none!important}.logic-text-switch-container{display:none}.sidebar.mode-logic .logic-text-switch-container{display:block;width:100%;margin-bottom:.3rem}.logic-text-switch{display:flex;background-color:var(--primary-color);border-radius:20px;padding:3px;gap:4px;border:1px solid var(--secondary-color);width:100%}.logic-switch-btn{flex:1;background:transparent;border:1px solid transparent;color:var(--text-color);padding:.5rem;font-size:.8rem;cursor:pointer;border-radius:16px;transition:all .2s;font-weight:500;opacity:.7}.logic-switch-btn:hover{opacity:1;background:#ffffff0d}.logic-text-switch:has(.logic-switch-btn[data-val=emotion].active) .logic-switch-btn[data-val=theory]{border:1px solid var(--highlight-color)}.logic-switch-btn.active{opacity:1;background-color:var(--highlight-color);color:#fff;font-weight:700;border-color:var(--highlight-color);box-shadow:0 0 10px #0003}#learning-bar-container{width:100%;display:flex;justify-content:center;margin:.5rem 0;position:relative;z-index:1}#handpan-container{position:relative;z-index:1}.creation-carousel{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.4rem;padding:4px 6px;border-radius:999px;background:#0f172adb;border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 24px #0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:40;max-width:92%;animation:cc-pop .18s ease-out}.creation-carousel[hidden]{display:none}@keyframes cc-pop{0%{opacity:0;transform:translate(-50%,6px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.creation-carousel .cc-arrow{flex:0 0 auto;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease;padding:0}.creation-carousel .cc-arrow:hover{background:#38bdf859}.creation-carousel .cc-arrow:active{transform:scale(.92)}.creation-carousel .cc-arrow:disabled{opacity:.3;cursor:default;background:#ffffff0d}.creation-carousel .cc-info{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:150px;padding:0 4px;color:#fff}.creation-carousel .cc-name{font-size:.82rem;font-weight:700;line-height:1.15;white-space:normal;max-width:240px}.creation-carousel .cc-notes{font-size:.7rem;font-weight:600;letter-spacing:.4px;color:#7dd3fc;margin-top:2px;max-width:240px;line-height:1.15;white-space:normal}.creation-carousel .cc-notes:empty{display:none}.creation-carousel .cc-pos{font-size:.68rem;opacity:.6;letter-spacing:.3px;margin-top:1px}.creation-carousel .cc-impossible{font-size:.64rem;color:#fbbf24;margin-top:2px;max-width:240px;line-height:1.1}.creation-carousel .cc-impossible[hidden]{display:none}.creation-carousel[data-cc-place=haut]{top:-6px;bottom:auto}.creation-carousel[data-cc-place=cote]{top:50%;bottom:auto;left:100%;transform:translate(12px,-50%);animation:none}.creation-carousel[data-cc-place=bas]{bottom:70px;z-index:60}.cc-place-switch{position:absolute;top:6px;right:6px;z-index:70;font-size:.66rem;font-weight:600;color:#cbd5e1;background:#0f172ad1;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:3px 9px;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,color .15s ease}.cc-place-switch:hover{background:#38bdf852;color:#fff}.cc-place-switch[hidden]{display:none}.chromakeys-title-group-compact{display:flex;align-items:center;gap:.4rem;margin-bottom:.1rem;justify-content:center;width:100%;flex-wrap:nowrap;min-width:0}.chromakeys-title-group-compact .title-rainbow{white-space:nowrap;overflow:visible}#toolbox{min-width:0}#toolbox .toolbox-section{min-width:0;flex-wrap:wrap}.chromakeys-title-group-compact .title-icon{font-size:1.1rem}.chromakeys-title-group-compact .title-text-wrapper{display:flex;flex-direction:column;line-height:1}.chromakeys-title-group-compact .title-rainbow{font-size:1rem;font-weight:800;font-family:Poppins,sans-serif;letter-spacing:.2px;background:linear-gradient(to right,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.compact-switcher{width:100%!important;margin-bottom:2px}.compact-switcher .segment-btn{padding:.1rem .3rem;font-size:.65rem;flex:1;min-height:22px}.learning-control-bar{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:#ffffff08;backdrop-filter:blur(5px);padding:.5rem;border-radius:12px;border:1px solid var(--secondary-color);width:100%}.learning-label{font-size:.75rem;font-weight:600;color:var(--text-color);opacity:.9;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;margin-bottom:2px}.learning-mode-switcher-global{width:100%;justify-content:space-between}.learning-mode-switcher-global .segment-btn{flex:1;font-size:.7rem;padding:.3rem .2rem}.pill-stop-btn{width:100%;background-color:#ef4444;color:#fff;border:2px solid white;padding:.3rem;border-radius:20px;font-size:.8rem;font-weight:800;cursor:pointer;transition:background-color .2s;white-space:nowrap;box-shadow:0 2px 8px #ef444466;margin-top:.2rem}.pill-stop-btn:hover{background-color:#dc2626}.pill-stop-btn.hidden{display:none}.logic-guide-overlay{display:none;position:absolute;top:70px;right:100%;width:800px;max-width:90vw;background-color:#0d1b2afa;border:1px solid var(--highlight-color);border-radius:16px;padding:1.5rem;z-index:10000;margin-right:1.5rem;box-shadow:0 10px 30px #00000080;backdrop-filter:blur(10px);animation:slideInRight .3s ease-out}[data-theme=light] .logic-guide-overlay{background-color:#fffffffa;border-color:var(--secondary-color)}.logic-guide-overlay.active{display:block}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.guide-content h4{margin-top:0;margin-bottom:.5rem;color:var(--highlight-color);font-size:1.1rem;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.3rem}.text-btn{background:var(--highlight-color);border:none;color:var(--primary-color);padding:.4rem 1rem;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;margin:.8rem auto 0;display:block;transition:all .2s;box-shadow:0 4px 10px #0000004d}.text-btn:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0006}.guide-close-x{position:absolute;top:15px;right:15px;background:none;border:2px solid #EF4444;color:#ef4444;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;cursor:pointer;transition:all .2s ease;line-height:1;z-index:10}.guide-close-x:hover{background-color:#ef4444;color:#fff;transform:rotate(90deg)}#toolbox{position:relative;width:100%;background-color:var(--primary-color);padding:.5rem .8rem;border-radius:20px;box-shadow:inset 2px 2px 5px var(--shadow-dark),inset -2px -2px 5px var(--shadow-light);display:flex;flex-direction:column;gap:.5rem;transition:box-shadow .3s ease;z-index:200;border:1px solid var(--current-outline-color)}[data-theme=light] .controls,[data-theme=light] #image-exporter,[data-theme=light] #toolbox{box-shadow:0 8px 20px #00000014,0 2px 6px #0000000d;border:1px solid var(--current-outline-color)}.main-navigation-bar{display:flex;align-items:center;gap:2.25rem;justify-content:center;flex:1;margin:0 1rem}.nav-tab{background:none;border:none;font-family:Poppins,sans-serif;font-size:1rem;font-weight:500;color:#fff;opacity:.7;cursor:pointer;transition:all .3s ease;position:relative;padding:.2rem 0;display:inline-flex;align-items:center;gap:.4rem}.nav-tab:hover{opacity:1;transform:translateY(-1px);text-shadow:0 0 10px rgba(255,255,255,.3)}.nav-tab.active{opacity:1;font-weight:800;background:linear-gradient(to right,#22d3ee,#fff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 4px rgba(0,0,0,.1)}.nav-tab.active:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:linear-gradient(to right,#22d3ee,#fff);border-radius:2px;box-shadow:0 0 10px #22d3ee80;animation:expandWidth .3s ease-out}@keyframes expandWidth{0%{width:0;left:50%}to{width:100%;left:0}}[data-theme=light] .nav-tab{color:#555}[data-theme=light] .nav-tab.active{background:linear-gradient(to right,#2563eb,#1b263b);-webkit-background-clip:text;background-clip:text}[data-theme=light] .nav-tab.active:after{background:linear-gradient(to right,#2563eb,#1b263b)}@media(max-width:1023px){#toolbox{padding-left:1rem;padding-right:1rem}}.controls-header{display:flex;flex-direction:row;align-items:center;width:100%;justify-content:space-between;padding-bottom:.4rem;padding-top:.3rem;gap:1rem;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;row-gap:.4rem}.right-header-controls{flex-wrap:wrap;justify-content:flex-end}.controls-title{font-weight:400;letter-spacing:.5px;line-height:1.2;margin:0;text-align:left;display:flex;align-items:center;gap:.25rem;flex-shrink:0;white-space:nowrap;flex-grow:0;font-family:Poppins,sans-serif}#scale-library-panel .controls-title,#chords-panel-title,#midi-settings-panel .controls-title,#creation-save-title,[data-theme=light] #scale-library-panel .controls-title,[data-theme=light] #chords-panel-title,[data-theme=light] #creation-save-title{color:var(--current-outline-color)!important}.toolbox-toggle-btn{background:#ffffff0d;border:1px solid var(--secondary-color);color:var(--text-color);border-radius:20px;padding:.3rem .8rem;font-size:.8rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;height:30px;white-space:nowrap}.toolbox-toggle-btn:hover{background:#ffffff26;border-color:var(--highlight-color)}.toolbox-toggle-btn .toggle-icon{width:14px;height:14px;transition:transform .3s ease}.logic-context-box{background-color:#0003;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.8rem;margin-top:.5rem;font-size:.85rem;line-height:1.4;color:var(--text-color);text-align:left}.logic-context-box p{margin:0 0 .5rem}.logic-context-box .context-learn-more-btn{display:block;width:100%;margin:.8rem auto 0;background:transparent;border:1px solid var(--highlight-color);color:var(--highlight-color);padding:.5rem;border-radius:12px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s;text-align:center;text-transform:uppercase;letter-spacing:.5px}.logic-context-box .context-learn-more-btn:hover{background:var(--highlight-color);color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 10px #0003}.destination-banner-container{width:100%;position:relative;margin-bottom:.3rem}.destination-banner{position:relative;width:100%;min-height:140px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at center,#1a1a2e,#000);box-shadow:0 4px 15px #00000080;border:1px solid rgba(255,255,255,.1);padding:.8rem 30px;perspective:1000px}.destination-banner:before{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(white 1px,transparent 1px);background-size:50px 50px;opacity:.3;pointer-events:none}.planet-container{position:absolute;width:200px;height:200px;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1;border-radius:50%;overflow:hidden;box-shadow:inset -20px -20px 50px #000000e6,0 0 20px #ffffff1a}.planet-visual{width:100%;height:100%;border-radius:50%;background-size:200% 100%;transition:transform .8s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.illustration-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;display:flex;justify-content:center;align-items:center}.destination-illustration{width:100px;height:100px;opacity:.15;fill:#fff;filter:drop-shadow(0 0 10px rgba(255,255,255,.5));transform:translateY(-5px);transition:all .5s ease-out}.banner-content{display:flex;flex-direction:column;align-items:center;gap:0;z-index:5;margin-bottom:0;width:100%}.banner-emoji{font-size:3.5rem;line-height:1;margin-bottom:.2rem;filter:drop-shadow(0 2px 5px rgba(0,0,0,.5));z-index:5;animation:floatEmoji 3s ease-in-out infinite}@keyframes floatEmoji{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.banner-text{font-size:1.8rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:3px;text-shadow:0 4px 8px rgba(0,0,0,.9),0 0 20px rgba(0,0,0,.8);text-align:center;line-height:1.1;margin-bottom:.3rem}#banner-subtext-container{margin-top:.5rem;position:relative;bottom:auto;font-size:.75rem;color:#fff;opacity:.95;text-transform:uppercase;letter-spacing:1px;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,1);background:#00000080;padding:.2rem .8rem;border-radius:20px;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2)}#btn-toggle-soundscape{position:absolute;top:8px;right:8px;z-index:10;background-color:#0006;border:1px solid rgba(255,255,255,.3);color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;backdrop-filter:blur(2px);font-size:.8rem}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background-color:#00000080;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:1rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(4px)}.nav-arrow.prev{left:8px}.nav-arrow.next{right:8px}.bg-dest-japan{background:radial-gradient(circle at 30% 30%,#ff9a9e,#fad0c4,#fad0c4,#2c3e50)}.bg-dest-orient{background:radial-gradient(circle at 70% 30%,#f6d365,#fda085)}.bg-dest-africa{background:radial-gradient(circle at 50% 50%,#d35400,#f39c12,#8e44ad)}.bg-dest-celtic{background:radial-gradient(circle at 20% 80%,#56ab2f,#a8e063)}.bg-dest-islands{background:radial-gradient(circle at 50% 50%,#4facfe,#00f2fe)}.bg-dest-eastern_europe{background:radial-gradient(circle at 50% 50%,#870000,#190a05)}.bg-dest-space{background:radial-gradient(circle at 50% 50%,#240b36,#c31432)}.bg-dest-americas{background:radial-gradient(circle at 30% 70%,#00c6ff,#0072ff)}.dest-japan{fill:#ff9a9e}.dest-orient{fill:#f6d365}.dest-africa{fill:#d35400}.dest-celtic{fill:#56ab2f}.dest-islands{fill:#4facfe}.dest-eastern_europe{fill:#ff5252}.dest-space{fill:#c31432}.dest-americas{fill:#00c6ff}.planet-rotate-out{animation:rotateOut .4s ease-in forwards}.planet-rotate-in{animation:rotateIn .4s ease-out forwards}@keyframes rotateOut{0%{transform:rotateY(0) scale(1);opacity:1}to{transform:rotateY(90deg) scale(.8);opacity:.5}}@keyframes rotateIn{0%{transform:rotateY(-90deg) scale(.8);opacity:.5}to{transform:rotateY(0) scale(1);opacity:1}}.compact-transport{display:flex;flex-direction:row;align-items:center;gap:var(--sp-1);background-color:transparent;padding:0;border:none;min-width:auto}.transport-row{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;background:#ffffff0d;border:1px solid var(--secondary-color);border-radius:16px;padding:6px 12px}.transport-separator{width:1px;height:24px;background-color:var(--secondary-color);margin:0 10px}.audio-hands-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;margin-bottom:4px}.playback-hand-switcher{transform:none!important;height:30px;overflow:hidden;display:flex;align-items:stretch}.playback-hand-switcher .segment-btn{padding:0 8px;min-width:24px;font-weight:700;height:100%;border-radius:0}.playback-hand-switcher .segment-btn:first-child{border-radius:18px 0 0 18px}.playback-hand-switcher .segment-btn:last-child{border-radius:0 18px 18px 0}.bpm-toggle-btn{background:transparent;border:1px solid var(--secondary-color);color:var(--text-color);border-radius:8px;padding:0 8px;height:30px;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s}.bpm-control-group{display:flex;align-items:center;background:#ffffff0d;border:1px solid var(--secondary-color);border-radius:8px;height:30px;overflow:hidden}.bpm-adjust-btn{background:transparent;border:none;color:var(--text-color);width:24px;height:100%;cursor:pointer;font-weight:700;display:flex;align-items:center;justify-content:center}.bpm-value-input{width:32px;background:transparent;border:none;color:var(--text-color);font-weight:600;font-size:.85rem;text-align:center;padding:0;margin:0;height:100%;-moz-appearance:textfield}.play-circle-btn{width:30px;height:30px;border-radius:50%;border:none;background-color:var(--highlight-color);color:var(--primary-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s;padding:0;margin-left:.1rem}.transport-row{flex-wrap:wrap;column-gap:var(--sp-2);row-gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md)}.transport-row>.audio-hands-wrapper{order:1}.transport-row>.transport-separator{order:2}.transport-row>.bpm-toggle-btn{order:3}.transport-row>.bpm-control-group{order:4}.transport-row>.play-circle-btn{order:5}.transport-row>.transport-separator{flex:1 0 100%;width:auto;height:0;margin:0;background:none;border-top:1px solid var(--secondary-color);opacity:.45}.transport-row>.bpm-toggle-btn,.transport-row>.bpm-control-group,.transport-row .playback-hand-switcher{height:var(--h-control)}.transport-row>.bpm-toggle-btn,.transport-row>.bpm-control-group{border-radius:var(--r-sm)}.transport-row>.play-circle-btn{width:var(--h-transport);height:var(--h-transport);margin-left:auto;flex:0 0 auto}.transport-row>.play-circle-btn svg{width:55%;height:55%;flex:0 0 auto}.test-mode-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#ffffff80;padding:.3rem .8rem;border-radius:12px;font-size:.75rem;cursor:pointer;transition:all .3s ease;font-weight:500;width:100%;display:block}.test-mode-btn:hover{border-color:#22d3ee;color:#22d3ee;background-color:#22d3ee0d}.test-mode-btn.active{background-color:#22d3ee;color:#1b263b;border-color:#22d3ee;font-weight:700;box-shadow:0 0 15px #22d3ee66;transform:scale(1.02)}.segmented-control{display:flex;background-color:var(--secondary-color);border-radius:20px;padding:2px;gap:2px;border:1px solid var(--highlight-color)}.segment-btn{background:transparent;border:none;color:var(--text-color);padding:.2rem .6rem;font-size:.75rem;cursor:pointer;border-radius:18px;transition:background-color .2s,color .2s;font-family:var(--font-family);white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:.2rem;height:30px;line-height:1}.segment-btn:hover:not(.active){background-color:#ffffff1a}[data-theme=light] .segment-btn:hover:not(.active){background-color:#0000000d}.segment-btn.active{background-color:var(--ctl-active-bg);color:var(--ctl-active-fg);font-weight:600}.header-niveau-group{display:flex;align-items:center;gap:6px}.header-niveau-group .header-niveau-label{font-size:.7rem;font-weight:600;color:var(--text-color);opacity:.85;white-space:nowrap}.header-niveau-group .niveau-switcher{padding:2px}.header-niveau-group .niveau-switcher .segment-btn{padding:.15rem .45rem;font-size:.95rem;height:26px}.header-left>.header-niveau-group,.right-header-controls>.theme-slider-wrapper,.right-header-controls>#btn-launch-tutorial,.right-header-controls>#btn-language,.right-header-controls>#btn-header-library,.right-header-controls>#btn-scene-mode,.right-header-controls>#btn-fullscreen{display:none}.header-left{display:flex;align-items:center;gap:8px;flex:0 0 auto}.settings-menu-wrap{position:relative;display:inline-flex}.settings-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:300;min-width:220px;padding:6px;background:var(--primary-color);border:1px solid var(--current-outline-color);border-radius:14px;box-shadow:0 12px 32px #00000059;display:flex;flex-direction:column;gap:2px}.settings-dropdown[hidden]{display:none}#settings-dropdown .settings-item{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;height:auto;padding:8px 10px;border:none;background:transparent;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.85rem;font-weight:600;border-radius:9px;text-align:left;white-space:nowrap}#settings-dropdown .settings-item:hover{background:#7f7f7f26}#settings-dropdown .settings-item .si-ico{font-size:1.1rem;line-height:1;display:inline-flex;width:20px;justify-content:center;flex:0 0 auto}#settings-dropdown .settings-item svg{width:18px;height:18px}#settings-dropdown .settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:9px}#settings-dropdown .settings-row-label{font-size:.85rem;font-weight:600;color:var(--text-color)}#settings-dropdown .settings-row .theme-slider-wrapper{display:flex!important}#settings-dropdown .diapason-row{display:block}#settings-dropdown .diapason-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}#settings-dropdown .diapason-info{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;border:1px solid rgba(127,127,127,.55);color:var(--text-color);opacity:.7;font-size:.68rem;font-weight:700;line-height:1;cursor:help;user-select:none;flex:0 0 auto}#settings-dropdown .diapason-info:hover,#settings-dropdown .diapason-info:focus-visible{opacity:1;border-color:var(--current-outline-color)}#settings-dropdown .diapason-seg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;width:100%;box-sizing:border-box;padding:3px;border-radius:11px;border:1px solid rgba(127,127,127,.28);background:#7f7f7f14}#settings-dropdown .diapason-seg-btn{border:none;border-radius:8px;background:transparent;padding:6px 4px;cursor:pointer;white-space:nowrap;color:var(--text-color);opacity:.8;font-family:var(--font-family);font-size:.78rem;font-weight:600;line-height:1;transition:background .15s ease,color .15s ease,opacity .15s ease}#settings-dropdown .diapason-seg-btn:hover{background:#7f7f7f26;opacity:1}#settings-dropdown .diapason-seg-btn.active{background:var(--highlight-color, #22D3EE);color:var(--primary-color, #0D1B2A);opacity:1;font-weight:700;box-shadow:0 1px 5px #22d3ee59}#settings-dropdown .diapason-custom{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;color:var(--text-color)}#settings-dropdown .diapason-custom[hidden]{display:none}#settings-dropdown .diapason-input{flex:1 1 auto;min-width:0;width:70px;padding:5px 8px;border-radius:8px;border:1px solid rgba(127,127,127,.4);background:#7f7f7f14;color:var(--text-color);font-family:var(--font-family);font-size:.82rem;font-weight:600}#settings-dropdown .diapason-input:focus{outline:none;border-color:var(--highlight-color, #22D3EE);background:#22d3ee14}#settings-dropdown .diapason-unit{opacity:.7;font-weight:600;flex:0 0 auto}#settings-dropdown .diapason-help{font-size:.68rem;line-height:1.3;opacity:.6;margin-top:5px;color:var(--text-color)}.settings-dropdown #btn-launch-tutorial{width:100%;height:auto;border-radius:9px;background:transparent;border:none;color:var(--text-color);justify-content:flex-start;font-size:.85rem;margin:0}.settings-dropdown #btn-launch-tutorial:hover{background:#7f7f7f26;color:var(--text-color);box-shadow:none}#toolbox{border-color:#d4af3752}[data-theme=light] #toolbox{border-color:#d4af376b}#toolbox .header-niveau-group .segmented-control,#toolbox .controls-header .toolbox-toggle-btn,#toolbox .controls-header .icon-btn{border:1px solid rgba(255,255,255,.1);background-color:#ffffff0b}#toolbox .controls-header .icon-btn{width:36px;height:36px;border-radius:11px}#toolbox .controls-header .toolbox-toggle-btn{border-radius:11px;height:36px}#toolbox .header-niveau-group .niveau-switcher{border-radius:11px;padding:3px}#toolbox .header-niveau-group .niveau-switcher .segment-btn{height:30px;border-radius:8px}#toolbox .controls-header .toolbox-toggle-btn:hover,#toolbox .controls-header .icon-btn:hover:not(:disabled){background-color:#ffffff1a;border-color:#fff3;color:var(--text-color);box-shadow:none}#toolbox .nav-tab.active:after{box-shadow:none;height:2px}.hs-ico{width:18px;height:18px;display:inline-block;vertical-align:middle;flex:0 0 auto;color:inherit}#toolbox .nav-tab .nav-tab-icon{display:inline-flex;align-items:center;color:var(--text-color)}#toolbox .nav-tab.active .nav-tab-icon{color:var(--highlight-color)}#toolbox .nav-tab .nav-tab-icon .hs-ico{width:17px;height:17px}#toolbox .header-niveau-group{flex-direction:column;align-items:center;gap:3px;padding:4px 7px 5px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0a}#toolbox .header-niveau-group .header-niveau-label{width:100%;text-align:center;font-weight:600;font-size:.62rem;letter-spacing:.05em;opacity:.82}#toolbox .header-niveau-group .niveau-switcher{border:none;background:transparent;padding:0;border-radius:0}#toolbox .header-niveau-group .niveau-switcher .segment-btn{display:inline-flex;align-items:center;gap:6px;height:auto;padding:5px 10px;border-radius:8px}#toolbox .header-niveau-group .seg-label{font-size:.72rem;font-weight:600;line-height:1}#toolbox .header-niveau-group .hs-ico{width:16px;height:16px}#toolbox .header-niveau-group .segment-btn.active{color:var(--primary-color)}#settings-dropdown .settings-item .si-ico-svg{width:18px;height:18px;flex:0 0 auto}header .appmode-topbar{position:absolute;top:0;right:0;width:auto;min-height:0;padding:0;margin:0;display:flex;align-items:center;justify-content:flex-end;z-index:6}header .appmode-topbar .feedback-header-row{position:static;display:flex;align-items:center}.feedback-header-btn{display:inline-flex;align-items:center;gap:.45rem;height:36px;padding:0 .85rem;border-radius:11px;border:1px solid rgba(212,175,55,.55);background:linear-gradient(180deg,#d4af372e,#d4af3717);color:var(--text-color);font-family:var(--font-family);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .1s ease}.feedback-header-btn:hover{background:linear-gradient(180deg,#d4af374d,#d4af3729);border-color:#d4af37d9;box-shadow:0 0 12px #d4af3747}.feedback-header-btn:active{transform:scale(.97)}.feedback-header-btn .fhb-emoji{font-size:1rem;line-height:1}.feedback-header-btn .fhb-label{line-height:1}.feedback-header-btn .fhb-beta{font-size:.6rem;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.06em;padding:2px 5px;border-radius:6px;background:var(--gold-color, #D4AF37);color:#1b263b}[data-theme=light] .feedback-header-btn{color:var(--text-color)}@media(max-width:720px){.feedback-header-btn .fhb-beta{display:none}.feedback-header-btn{height:44px;min-width:44px;padding:0 .7rem;gap:.35rem;border-radius:14px;border-color:#d4af37d9;background:linear-gradient(180deg,#d4af3757,#d4af372e);box-shadow:0 2px 10px #d4af374d}.feedback-header-btn .fhb-emoji{font-size:1.15rem}.feedback-header-btn .fhb-label{display:inline;font-size:.72rem;max-width:3.2rem;overflow:hidden;text-indent:-9999px;position:relative}.feedback-header-btn .fhb-label:after{content:"Avis";text-indent:0;position:absolute;left:0;top:0}.appmode-topbar.appmode-topbar--in-row{position:static;top:auto;right:auto;z-index:auto;display:inline-flex;align-items:center;width:auto;min-width:0;flex:0 0 auto}.appmode-topbar--in-row .feedback-header-btn{height:40px;min-width:40px;padding:0 .6rem;border-radius:12px}header .appmode-topbar{top:6px;right:8px;z-index:300}}#settings-dropdown .settings-niveau-group{width:100%;box-sizing:border-box;margin:2px 0}#settings-dropdown .settings-niveau-group+.settings-item{border-top:1px solid rgba(127,127,127,.18);border-radius:0 0 9px 9px;margin-top:6px;padding-top:10px}#settings-dropdown .settings-niveau-group .niveau-switcher{flex-direction:column;align-items:stretch;width:100%;gap:4px}#settings-dropdown .settings-niveau-group .niveau-switcher .segment-btn{width:100%;justify-content:flex-start;gap:10px}.account-menu-btn .hs-ico{width:19px;height:19px}.toolbox-footer-tools{display:flex;justify-content:safe center;align-items:stretch;flex-wrap:nowrap;gap:.6rem;margin-top:.15rem;width:100%;transition:opacity .3s ease,max-height .3s ease,margin .3s ease;max-height:500px;opacity:1;overflow-x:auto;overflow-y:hidden;padding-bottom:5px}.toolbox-footer-tools.collapsed{max-height:0;opacity:0;margin-top:0;padding:0;pointer-events:none}.tool-group{display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:linear-gradient(180deg,#ffffff0d,#ffffff04);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:.45rem .7rem .55rem;gap:.3rem;backdrop-filter:blur(5px);box-shadow:0 2px 10px #0000002e;height:auto;min-height:70px;position:relative;flex:0 0 auto;min-width:max-content}[data-theme=light] .tool-group{background:linear-gradient(180deg,#fff,#f7f9fc);border-color:#1b263b1f;box-shadow:0 2px 8px #1b263b14}.group-palette,[data-theme=light] .group-palette{background:linear-gradient(var(--primary-color),var(--primary-color)) padding-box,linear-gradient(to right,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7,#ec4899) border-box;border:2px solid transparent!important;padding-left:.7rem;padding-right:.7rem;min-width:max-content}.group-title{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;width:100%;font-size:.68rem;text-transform:uppercase;font-weight:700;color:var(--text-color);opacity:.95;letter-spacing:.09em;pointer-events:none;margin-bottom:.15rem}.group-title:before{content:"";display:none;width:15px;height:15px;flex:0 0 auto;background-color:var(--highlight-color);-webkit-mask:var(--gt-ico) center / contain no-repeat;mask:var(--gt-ico) center / contain no-repeat}.group-title:after{content:"";flex:1 1 0;min-width:12px;height:1px;background:linear-gradient(90deg,var(--highlight-color),transparent);opacity:.35}.group-visual .group-title{--gt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.7'/%3E%3Ccircle cx='12' cy='12' r='2.3'/%3E%3Ccircle cx='12' cy='5.8' r='1.15'/%3E%3Ccircle cx='17.37' cy='8.9' r='1.15'/%3E%3Ccircle cx='17.37' cy='15.1' r='1.15'/%3E%3Ccircle cx='12' cy='18.2' r='1.15'/%3E%3Ccircle cx='6.63' cy='15.1' r='1.15'/%3E%3Ccircle cx='6.63' cy='8.9' r='1.15'/%3E%3C/svg%3E")}.group-export .group-title{--gt-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V4'/%3E%3Cpath d='m8.5 7.5 3.5-3.5 3.5 3.5'/%3E%3Cpath d='M4 13v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5'/%3E%3C/svg%3E")}.group-visual .group-title:before,.group-export .group-title:before{display:inline-block}.group-content{display:flex;align-items:center;gap:.3rem;width:100%;justify-content:center;flex-grow:1;flex-wrap:wrap}.sub-group{display:flex;align-items:center;gap:.2rem}.sub-group.column-layout{flex-direction:column;align-items:center;justify-content:flex-end;gap:0}@media(max-width:1366px){.toolbox-footer-tools{flex-wrap:wrap}#toolbox .tool-group{flex:1 1 240px;min-width:0}#toolbox .group-visual{flex:0 1 auto;min-width:0}#toolbox .group-export{flex:0 0 auto;min-width:0}#toolbox .group-palette{flex:0 1 auto;min-width:0}}body.niveau-decouverte .group-visual .group-content .sub-group:not(.niveau-selector-group):not(.always-shown){display:none}body.niveau-decouverte .nav-tab[data-mode=creation],body.niveau-decouverte .mobile-menu-item[data-mode=creation],body.niveau-decouverte .nav-tab[data-mode=midi],body.niveau-decouverte .mobile-menu-item[data-mode=midi]{display:none!important}body.niveau-apprenti .group-visual .group-content .sub-group:not(.niveau-selector-group):not(.essential):not(.always-shown){display:none}.material-select{padding:0 1rem 0 .5rem;height:30px;font-size:.75rem;background-color:var(--secondary-color);border:1px solid var(--highlight-color);border-radius:14px;color:var(--text-color);cursor:pointer;background-position:right .2rem center;width:120px;max-width:120px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.material-select:focus,.material-select:active{width:120px;max-width:120px}.separator-vertical{width:1px;height:18px;background-color:var(--secondary-color);margin:0 .05rem;opacity:.4}.group-visual{margin-right:0;flex-grow:0;min-width:0;padding-left:.5rem;padding-right:.5rem}.group-export{flex-grow:0;min-width:max-content}.toolbox-footer-tools .icon-btn{border:1px solid rgba(255,255,255,.16);background-color:#ffffff0d;width:32px;height:32px;border-radius:9px;transition:background-color .15s ease,border-color .15s ease}.toolbox-footer-tools .icon-btn:hover{border-color:var(--highlight-color);background-color:#22d3ee1a}[data-theme=light] .toolbox-footer-tools .icon-btn{border-color:#1b263b2e;background-color:#1b263b0a}[data-theme=light] .toolbox-footer-tools .icon-btn:hover{border-color:var(--highlight-color);background-color:#5ccb5f1f}.setting-label-small{font-size:.7rem;text-transform:uppercase;font-weight:600;color:var(--text-color);opacity:.72;margin-bottom:2px;pointer-events:none;white-space:nowrap;letter-spacing:.04em}.palette-sec{display:inline-flex;align-items:center;justify-content:center;gap:.3em;flex:0 0 auto;align-self:center;height:30px;padding:0 .55rem;margin:0;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.22);color:var(--text-color);font-family:var(--font-family);cursor:pointer;transition:background .15s ease,border-color .15s ease}.palette-sec:hover{background:#ffffff1f}.palette-sec:not(.sec-collapsed){background:#22d3ee21;border-color:var(--highlight-color)}.palette-sec .sec-ico{font-size:.85rem;line-height:1}.palette-sec .sec-txt{font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-color);opacity:.8;line-height:1;white-space:nowrap}.palette-sec .sec-caret{font-size:.6rem;line-height:1;opacity:.7;transition:transform .18s ease}.palette-sec.sec-collapsed .sec-caret{transform:rotate(-90deg)}[data-theme=light] .palette-sec{border-color:#00000040;background:#0000000a}[data-theme=light] .palette-sec:hover{background:#00000017}[data-theme=light] .palette-sec:not(.sec-collapsed){border-color:var(--highlight-color);background:#22d3ee26}[data-theme=light] .palette-sec .sec-txt{color:#000}.group-visual .group-content .palette-sec{order:0}body:not(.niveau-decouverte) .group-visual .group-content:after{content:"";order:1;flex-basis:100%;height:0}.group-content .sub-group[data-sec]{order:2}body:not(.niveau-decouverte) .palette-chip[data-sec=hands].sec-collapsed~.sub-group[data-sec=hands],body:not(.niveau-decouverte) .palette-chip[data-sec=notation].sec-collapsed~.sub-group[data-sec=notation],body:not(.niveau-decouverte) .palette-chip[data-sec=traces].sec-collapsed~.sub-group[data-sec=traces],body:not(.niveau-decouverte) .palette-chip[data-sec=look].sec-collapsed~.sub-group[data-sec=look]{display:none}@keyframes palette-sec-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}body:not(.niveau-decouverte) .group-visual .group-content .sub-group[data-sec]{animation:palette-sec-reveal .22s ease}@media(prefers-reduced-motion:reduce){body:not(.niveau-decouverte) .group-visual .group-content .sub-group[data-sec]{animation:none}}.toolbox-tight .palette-sec{height:26px;padding:0 .4rem;gap:.22em}.toolbox-tight .palette-sec .sec-txt{font-size:.52rem}.toolbox-icons-only .palette-sec .sec-txt{display:none!important}.group-visual{--pal-card-border: rgba(34, 211, 238, .5);--pal-card-bg: rgba(34, 211, 238, .055)}[data-theme=light] .group-visual{--pal-card-border: rgba(92, 203, 95, .65);--pal-card-bg: rgba(92, 203, 95, .07)}.group-visual .group-content{position:relative}.group-visual .group-content .palette-sec,.group-visual .group-content .sub-group[data-sec]{position:relative;z-index:1}.pal-sec-frame{display:none}body:not(.niveau-decouverte) .group-visual .group-content.pal-open{padding:0 8px 10px}body:not(.niveau-decouverte) .group-visual .group-content.pal-open>.pal-sec-frame{display:block;position:absolute;left:0;right:0;top:var(--pal-panel-top, 34px);bottom:0;z-index:0;pointer-events:none;background:var(--pal-card-bg);border:1px solid var(--pal-card-border);border-top:none;border-radius:0 0 12px 12px;transition:top .18s ease}.pal-sec-frame:before,.pal-sec-frame:after{content:"";position:absolute;top:0;height:1px;background:var(--pal-card-border)}.pal-sec-frame:before{left:0;width:var(--pal-notch-l, 0px)}.pal-sec-frame:after{left:calc(var(--pal-notch-l, 0px) + var(--pal-notch-w, 0px));right:0}@media(prefers-reduced-motion:reduce){body:not(.niveau-decouverte) .group-visual .group-content.pal-open>.pal-sec-frame{transition:none}}body:not(.niveau-decouverte) .palette-sec.sec-docked,[data-theme=light] body:not(.niveau-decouverte) .palette-sec.sec-docked{border-radius:11px 11px 0 0;border-color:var(--pal-card-border);border-bottom-color:transparent;background:var(--pal-card-bg)}[data-theme=light] .palette-sec.sec-docked:not(.sec-collapsed){border-color:var(--pal-card-border);border-bottom-color:transparent;background:var(--pal-card-bg)}.palette-sec{transition:background .15s ease,border-color .15s ease,border-radius .15s ease}.group-visual .group-content{gap:.45rem .3rem}.group-visual .segment-btn{padding-left:.5rem;padding-right:.5rem}.play-order-legacy,.notation-legacy{display:none!important}.order-check{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:2px;margin-top:4px;cursor:pointer;user-select:none;-webkit-user-select:none}.order-check input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}.order-check .order-check-pill{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;height:28px;padding:0 .75rem;border-radius:999px;background:var(--secondary-color);border:1px solid var(--highlight-color);transition:background-color .2s ease,box-shadow .2s ease}.order-check:hover .order-check-pill{box-shadow:0 0 0 2px #22d3ee2e}.order-check input:focus-visible~.order-check-pill{box-shadow:0 0 0 2px var(--highlight-color)}.order-check .order-check-mark{width:0;opacity:0;overflow:hidden;font-size:.72rem;font-weight:800;line-height:1;color:var(--primary-color);transform:scale(.4);transition:width .18s ease,opacity .18s ease,transform .18s ease}.order-check .order-check-txt{font-size:.62rem;text-transform:uppercase;font-weight:600;color:var(--text-color);opacity:.85;white-space:nowrap;transition:color .2s ease,opacity .2s ease}.order-check input:checked~.order-check-pill{background:var(--highlight-color)}.order-check input:checked~.order-check-pill .order-check-mark{width:.85em;opacity:1;transform:none}.order-check input:checked~.order-check-pill .order-check-txt{color:var(--primary-color);opacity:1;font-weight:700}.order-check .order-check-hint{font-size:.56rem;font-style:italic;color:var(--text-color);opacity:.55;white-space:nowrap}.notes-overlay-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.3rem}.notes-overlay-row .order-check{margin-top:0}.notes-overlay-hint{display:block;margin-top:2px;text-align:center;font-size:.56rem;font-style:italic;color:var(--text-color);opacity:.55;white-space:nowrap}[data-theme=light] .notes-overlay-hint{color:#000}.order-check.pad-check .order-check-pill{border-style:dashed}.order-check.pad-check input:checked~.order-check-pill{border-style:solid}[data-theme=light] .order-check .order-check-txt,[data-theme=light] .order-check .order-check-hint{color:#000}[data-theme=light] .order-check:hover .order-check-pill{box-shadow:0 0 0 2px #5ccb5f40}[data-theme=light] .order-check input:checked~.order-check-pill .order-check-txt,[data-theme=light] .order-check input:checked~.order-check-pill .order-check-mark{color:#fff}@media(prefers-reduced-motion:reduce){.order-check .order-check-mark{transition:none}}.setting-label-small.niv-dec-only{display:none}body.niveau-decouverte .setting-label-small.niv-dec-only{display:inline}body.niveau-decouverte .setting-label-small.niv-plus-only,body.niveau-decouverte .group-visual .group-content .palette-sec{display:none}body.niveau-apprenti .group-visual .group-content .palette-sec:not(.essential):not(.always-shown){display:none}[data-theme=light] .setting-label-small{color:#000}.toolbox-footer-tools .palette-sec,.toolbox-more-panel .palette-sec{height:32px;padding:0 .7rem;gap:.4em;background:#ffffff0a;border-color:#ffffff2e}.toolbox-footer-tools .palette-sec:hover,.toolbox-more-panel .palette-sec:hover{background:#22d3ee14;border-color:#22d3ee73}.toolbox-footer-tools .palette-sec .sec-txt,.toolbox-more-panel .palette-sec .sec-txt{font-size:.62rem;letter-spacing:.07em}.palette-sec .sec-ico{display:inline-flex;align-items:center;color:var(--highlight-color)}.palette-sec .sec-ico .hs-ico{width:14px;height:14px}[data-theme=light] .toolbox-footer-tools .palette-sec,[data-theme=light] .toolbox-more-panel .palette-sec{background:#1b263b09;border-color:#1b263b38}[data-theme=light] .toolbox-footer-tools .palette-sec:hover,[data-theme=light] .toolbox-more-panel .palette-sec:hover{background:#5ccb5f1a;border-color:#5ccb5f8c}.toolbox-footer-tools .palette-sec:not(.sec-collapsed),.toolbox-more-panel .palette-sec:not(.sec-collapsed){background:#22d3ee21;border-color:var(--highlight-color)}[data-theme=light] .toolbox-footer-tools .palette-sec:not(.sec-collapsed),[data-theme=light] .toolbox-more-panel .palette-sec:not(.sec-collapsed){background:#5ccb5f26;border-color:var(--highlight-color)}.toolbox-footer-tools .segmented-control{background-color:#0d1b2a73;border-color:#ffffff24}.toolbox-footer-tools .segment-btn{min-height:32px}.toolbox-footer-tools .segment-btn.active{box-shadow:0 1px 7px #22d3ee61}[data-theme=light] .toolbox-footer-tools .segmented-control{background-color:#edeff3;border-color:#1b263b29}[data-theme=light] .toolbox-footer-tools .segment-btn.active{box-shadow:0 1px 7px #5ccb5f73}.toolbox-footer-tools .order-check .order-check-pill{background:#0d1b2a73;border-color:#ffffff40}.toolbox-footer-tools .order-check input:checked~.order-check-pill{background:var(--highlight-color);border-color:var(--highlight-color)}[data-theme=light] .toolbox-footer-tools .order-check .order-check-pill{background:#fff;border-color:#1b263b47}[data-theme=light] .toolbox-footer-tools .order-check input:checked~.order-check-pill{background:var(--highlight-color);border-color:var(--highlight-color)}.toolbox-footer-tools .material-select{height:32px;background-color:#0d1b2a73;border:1px solid rgba(255,255,255,.2);border-radius:10px}.toolbox-footer-tools .material-select:hover{border-color:var(--highlight-color)}[data-theme=light] .toolbox-footer-tools .material-select{background-color:#fff;border-color:#1b263b40}.toolbox-footer-tools .sub-group.column-layout{gap:3px}.toolbox-footer-tools :is(button,select,input[type=range]):focus-visible,.toolbox-more-panel :is(button,select,input[type=range]):focus-visible{outline:2px solid var(--highlight-color);outline-offset:2px}.chromakeys-title-group-compact .title-icon .hs-ico{width:16px;height:16px}@media(prefers-reduced-motion:reduce){.toolbox-footer-tools .palette-sec,.toolbox-footer-tools .icon-btn{transition:none}}.mode-switcher{display:flex;justify-content:center;gap:.5rem;margin-bottom:0rem;background-color:transparent;padding:0;width:100%}.scale-mode-toggle{display:flex;width:100%;height:36px}.btn-audio-preview{background-color:#22d3ee1a;border:1px solid var(--highlight-color);color:var(--text-color);padding:.6rem 1rem;border-radius:12px;width:100%;display:flex;align-items:center;justify-content:center;gap:.8rem;transition:all .2s ease;font-size:.9rem;font-weight:500}.sidebar.mode-logic #harmony-controls{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;width:100%;margin-bottom:0rem;align-items:start}#logic-preset-container{grid-column:1 / -1;order:10}.unified-control-group{display:flex;flex-direction:column;justify-content:flex-start;gap:.4rem;width:100%;align-items:center}.unified-control-group.mode-control label,.unified-control-group.tonic-control label{margin:0;padding-left:0;white-space:nowrap;text-align:center;width:100%;font-size:.75rem;font-weight:600;color:var(--text-color);opacity:.8}.progression-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;width:100%;margin-bottom:.3rem;padding-bottom:.3rem;border-bottom:1px solid var(--secondary-color);padding-left:.5rem;padding-right:.5rem}.mode-creation #chords-container .progression-header{display:none!important}#btn-optimize-layout{font-size:.8rem;padding:.3rem .6rem;white-space:nowrap;margin:.5rem auto;display:none}.mode-creation #btn-optimize-layout{display:block}.control-group{display:flex;align-items:center;gap:.3rem;padding:.3rem .5rem;border-radius:12px;background-color:#ffffff08;margin-bottom:.3rem;width:100%;flex-wrap:wrap;position:relative;border:.5px solid var(--current-outline-color)!important;overflow:visible;z-index:1;container-type:inline-size}.inversion-menu-container{grid-area:inversions;width:auto;opacity:0;visibility:hidden;transition:opacity .2s ease 1s,visibility 0s 1.2s;display:flex;flex-direction:column;align-items:stretch;gap:4px;margin-top:4px;padding:4px;border:1px solid #EAB308;border-radius:8px;background-color:var(--primary-color);box-shadow:0 4px 15px #00000080;position:absolute;top:100%;left:.5rem;right:.5rem;transform:none;z-index:9999;box-sizing:border-box}#chord-rows-wrapper.timeline-horizontal .inversion-menu-container{left:-2px;right:-2px}.control-group:hover .inversion-menu-container,.control-group.show-secondary-menus .inversion-menu-container{opacity:1;visibility:visible;transition:opacity .2s ease 0s,visibility 0s 0s}.inversion-modifiers{display:flex;gap:.2rem;width:100%;justify-content:center}.inversion-btn{width:100%;padding:2px 4px;font-size:clamp(.55rem,8cqw,.8rem);border-radius:4px;background:#ffffff0d;border:1px solid transparent;box-sizing:border-box;color:#eab308!important;transition:all .2s;white-space:nowrap;text-align:center}.inversion-btn:hover{background:#eab3081a!important}.inversion-btn.active{font-weight:700!important;background:#eab30833!important}.inversion-hover-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--text-color);cursor:pointer;transition:background .2s}.inversion-hover-btn:hover{background:#fff3}.chord-row-main{display:flex;flex-direction:column;flex:1;gap:.2rem;min-width:0}.chord-modifiers-wrapper{width:auto;opacity:0;visibility:hidden;transition:opacity .2s ease 1s,visibility 0s 1.2s;position:absolute;bottom:100%;left:.5rem;right:.5rem;transform:none;margin-bottom:4px;z-index:9999;box-sizing:border-box;background:transparent;padding:0;box-shadow:none}.control-group:hover .chord-modifiers-wrapper,.control-group.show-secondary-menus .chord-modifiers-wrapper{opacity:1;visibility:visible;transition:opacity .2s ease 0s,visibility 0s 0s}.chord-modifiers{display:grid;grid-template-columns:1fr 1fr;gap:.2rem;width:100%;background-color:var(--primary-color);padding:.4rem;border-radius:8px;box-shadow:0 -4px 15px #00000080;border:1px solid #FACC15;box-sizing:border-box}.modifier-btn{width:100%}.chord-actions-row{width:100%;display:flex;justify-content:center}.visual-mode-toggle{margin-bottom:.5rem;width:100%}.mode-logic .visual-mode-toggle{display:none!important}.play-chord-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;color:var(--text-color)}.play-chord-button:disabled{color:#fff3}.play-chord-button:not(:disabled):hover{color:var(--highlight-color)}.play-chord-icon{width:24px;height:24px;display:block}.play-chord-icon circle{fill:none;stroke:currentColor;stroke-width:2px;opacity:.8}.play-chord-icon path{fill:currentColor}.stop-icon,.playing .play-icon{display:none}.playing .stop-icon{display:initial}.show-path-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;transition:background-color .2s,transform .2s;flex-shrink:0}.show-path-button svg{width:18px;height:18px;fill:var(--text-color);transition:fill .2s}.show-path-button:hover{background-color:var(--secondary-color)}.show-path-button.selected{background-color:#22d3ee1a}.show-path-button.selected svg{fill:var(--highlight-color)}.show-path-button .icon-eye-closed{display:none}.show-path-button.selected .icon-eye-closed{display:block}.show-path-button.selected .icon-eye-open{display:none}.bonus-notes-button{display:none;background:none;border:none;cursor:pointer;padding:0;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;transition:background-color .2s,opacity .2s,filter .2s;flex-shrink:0;font-size:13px;line-height:1;opacity:.45;filter:grayscale(1)}.mode-logic .bonus-notes-button,.mode-creation .bonus-notes-button{display:flex}.bonus-notes-button:not(.disabled):hover{background-color:var(--secondary-color);opacity:.85}.bonus-notes-button.active{background-color:#22d3ee1f;opacity:1;filter:none}.bonus-notes-button.disabled{opacity:.22;filter:grayscale(1);cursor:not-allowed}.sidebar.mode-logic .chord-select{width:100%;pointer-events:none;background-image:none!important;padding-right:.5rem;appearance:none;-webkit-appearance:none;cursor:default}.sidebar.mode-logic .chord-select:disabled{opacity:1;background-color:var(--secondary-color);color:#fff!important;-webkit-text-fill-color:#FFFFFF;text-align:left;padding-left:1rem}#logic-footer{width:100%;margin-top:1rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;gap:.5rem}.tool-button{font-family:var(--font-family);background-color:var(--secondary-color);color:var(--text-color);border:1px solid var(--highlight-color);padding:.5rem 1rem;border-radius:20px;font-size:1rem;cursor:pointer;transition:background-color .2s,box-shadow .2s,border-color .2s,color .2s,opacity .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-align:center}.tool-button:hover:not(:disabled){background-color:var(--highlight-color);color:var(--primary-color)}.tool-button:disabled{background-color:var(--secondary-color);opacity:.6;cursor:not-allowed}.tool-button.selected,.tool-button.active{background-color:var(--highlight-color);box-shadow:0 0 15px var(--highlight-color);color:var(--primary-color)}.btn-swap-physical{display:none;padding:0;width:24px;height:24px;border-radius:50%;background-color:transparent;border:1px solid rgba(255,255,255,.2);color:#ffffff80;cursor:pointer;transition:all .2s;font-size:1rem;line-height:1;align-items:center;justify-content:center;margin-right:.5rem}.btn-swap-physical svg,.btn-swap-physical span{transform:none}.mode-creation .btn-swap-physical{display:flex}.mode-logic .btn-swap-physical{display:none!important}.btn-swap-physical:hover{color:#fff;background-color:#ffffff1a}.btn-swap-physical.swap-active{background-color:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);box-shadow:0 0 10px var(--highlight-color);animation:pulse 1s infinite}#eraser-tool.selected{background-color:#ef4444;border-color:#ef4444;color:#fff;box-shadow:0 0 15px #ef444499}.icon-btn{flex-shrink:0;padding:0;width:36px;height:36px;border-radius:12px}.icon-btn svg{width:18px;height:18px}.chord-selection-area{display:flex;flex-direction:column;flex:1;gap:.2rem;min-width:0;position:relative;width:100%}.chord-selection-area .custom-chord-wrapper,.chord-selection-area .custom-select-trigger{width:100%!important;display:flex!important;position:relative}.chord-type-select{width:100%;text-align:center;text-align-last:center}.mode-logic .edit-custom-button{display:none!important}body.niveau-decouverte .control-group .chord-modifiers-wrapper,body.niveau-apprenti .control-group .chord-modifiers-wrapper,body.niveau-decouverte.app-acoustic .mode-logic .chord-modifiers-wrapper,body.niveau-decouverte.app-acoustic .mode-library .chord-modifiers-wrapper,body.niveau-apprenti.app-acoustic .mode-logic .chord-modifiers-wrapper,body.niveau-apprenti.app-acoustic .mode-library .chord-modifiers-wrapper,body.niveau-decouverte .control-group:hover .chord-modifiers-wrapper,body.niveau-decouverte .control-group.show-secondary-menus .chord-modifiers-wrapper,body.niveau-apprenti .control-group:hover .chord-modifiers-wrapper,body.niveau-apprenti .control-group.show-secondary-menus .chord-modifiers-wrapper{display:none!important;opacity:0!important;visibility:hidden!important}body.niveau-decouverte .modifier-btn.btn-seventh-major,body.niveau-decouverte .modifier-btn.btn-seventh-minor,body.niveau-apprenti .modifier-btn.btn-seventh-major,body.niveau-apprenti .modifier-btn.btn-seventh-minor{display:none!important}.modifier-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#ffffff80;border-radius:12px;padding:.1rem .2rem;font-size:clamp(.55rem,8cqw,.7rem);cursor:pointer;transition:all .2s;height:24px;display:flex;align-items:center;justify-content:center;white-space:nowrap}[data-theme=light] .modifier-btn{border-color:#0003;color:#00000080}.modifier-btn:hover{border-color:var(--highlight-color);color:var(--highlight-color)}.modifier-btn.active,.modifier-btn.active-seventh{background-color:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);font-weight:600}.modifier-btn.unavailable{opacity:.3;filter:grayscale(1);cursor:default;font-weight:400}.modifier-btn.unavailable:hover{border-color:#ffffff26;color:#ffffff80;background-color:transparent}[data-theme=light] .modifier-btn.unavailable:hover{border-color:#00000026;color:#0006}#chords-panel-title span{font-weight:400!important}.help-mini-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#ffffff14;color:#ffffffd9;font-size:.75rem;font-weight:800;cursor:pointer;transition:all .15s;padding:0;line-height:1}.help-mini-btn:hover{background:var(--gold-color);color:#1a1410;border-color:var(--gold-color);transform:scale(1.1)}[data-theme=light] .help-mini-btn{border-color:#0000004d;background:#0000000d;color:#000000b3}.sidebar.mode-logic #harmony-controls .vocal-layout-control{grid-column:1 / -1;margin-top:.5rem;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.08)}.vocal-layout-label{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:0;white-space:nowrap;text-align:center;width:100%;font-size:.75rem;font-weight:600;color:var(--text-color);opacity:.9}.logic-layout-mode-toggle{width:100%;display:flex;gap:2px}.logic-layout-mode-toggle .segment-btn{flex:1;padding:.5rem .4rem;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logic-mode-help-modal-content{background:linear-gradient(180deg,#1a1f2a,#131722);border:1px solid var(--highlight-color);border-radius:16px;padding:1.2rem 1.4rem;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0009;color:var(--text-color);position:relative;display:flex;flex-direction:column;width:92%;max-width:680px}.logic-mode-help-modal-content .modal-body{line-height:1.55;font-size:.92rem}.logic-mode-help-modal-content h3{margin:18px 0 8px;font-size:1.05rem;color:var(--gold-color, #D4B062)}.logic-mode-help-modal-content p{margin:.5rem 0}.help-intro-card{background:#d4b0621a;border-left:3px solid var(--gold-color, #D4B062);padding:12px 14px;border-radius:8px;margin-bottom:14px}.help-mode-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;margin:10px 0;overflow:hidden;transition:border-color .2s}.help-mode-card[open]{border-color:#d4b06266;background:#d4b0620a}.help-mode-card summary{padding:10px 14px;cursor:pointer;font-size:1rem;list-style:none;user-select:none;display:flex;align-items:center;gap:6px;transition:background .15s}.help-mode-card summary::-webkit-details-marker{display:none}.help-mode-card summary:after{content:"▾";margin-left:auto;opacity:.6;transition:transform .2s}.help-mode-card[open] summary:after{transform:rotate(180deg)}.help-mode-card summary:hover{background:#ffffff0d}.help-mode-card .help-range{opacity:.6;font-weight:400;font-size:.88rem}.help-mode-content{padding:4px 14px 14px;font-size:.88rem;line-height:1.55}.help-mode-content p{margin:6px 0}.help-practical-steps{line-height:1.75;padding-left:22px}.help-practical-steps li{margin:4px 0}.help-tip-card{background:#22d3ee14;border-left:3px solid #22D3EE;padding:12px 14px;border-radius:8px;margin-top:16px;font-size:.9rem;line-height:1.55}.logic-mode-help-modal-content::-webkit-scrollbar{width:8px}.logic-mode-help-modal-content::-webkit-scrollbar-track{background:#0003;border-radius:4px}.logic-mode-help-modal-content::-webkit-scrollbar-thumb{background:#d4b06266;border-radius:4px}.logic-mode-help-modal-content::-webkit-scrollbar-thumb:hover{background:#d4b06299}@media(min-width:1025px){#toolbox .toolbox-footer-tools{flex-wrap:nowrap!important;overflow:clip!important;justify-content:flex-start}#toolbox .group-visual .group-content{flex-wrap:wrap}#toolbox .toolbox-footer-tools.toolbox-tight{gap:.3rem}.toolbox-tight .tool-group{padding:.2rem .3rem;gap:.1rem;min-height:64px}.toolbox-tight .group-visual,.toolbox-tight .group-palette{padding-left:.4rem;padding-right:.4rem}.toolbox-tight .group-content{gap:.15rem}.toolbox-tight .sub-group{gap:.1rem}.toolbox-tight .segment-btn{font-size:.68rem;padding:.2rem .35rem;min-height:26px}.toolbox-tight .setting-label-small{font-size:.6rem}.toolbox-tight .group-title{font-size:.62rem}.toolbox-tight .toolbox-footer-tools .icon-btn,.toolbox-tight .icon-btn{width:28px;height:28px}.toolbox-tight .material-select{width:96px;max-width:96px;height:28px}.toolbox-icons-only .setting-label-small,.toolbox-icons-only .group-title,.toolbox-icons-only .chromakeys-title-group-compact{display:none!important}.toolbox-icons-only .group-content,.toolbox-icons-only .tool-group{justify-content:center}}.toolbox-close-overlay{display:none}.toolbox-more-wrap{display:none;flex:0 0 auto;align-items:center;align-self:center;margin-left:.2rem}.toolbox-more-wrap.active{display:flex}.toolbox-more-btn{background:#ffffff0d;border:1px solid var(--current-outline-color, var(--secondary-color));color:var(--text-color);border-radius:14px;width:40px;height:40px;font-size:1.4rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease}.toolbox-more-btn:hover{background:#ffffff26;border-color:var(--highlight-color)}.toolbox-more-panel{position:fixed;z-index:4000;display:none;flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:.5rem;max-width:min(92vw,640px);padding:.6rem;background:var(--primary-color);border:1px solid var(--current-outline-color, var(--secondary-color));border-radius:16px;box-shadow:0 12px 32px #00000080}.toolbox-more-panel.open{display:flex}.toolbox-more-panel .tool-group{min-width:max-content}@media(pointer:coarse)and (max-width:1023px){#toolbox{position:relative}.toolbox-footer-tools:not(.collapsed){position:absolute;left:.5rem;right:.5rem;top:100%;margin-top:.35rem;z-index:3000;background:var(--primary-color);border:1px solid var(--current-outline-color, var(--secondary-color));border-radius:16px;box-shadow:0 14px 36px #0000008c;max-height:72vh;overflow-y:auto;overflow-x:hidden!important;padding:.7rem!important}.toolbox-footer-tools:not(.collapsed) .segment-btn,.toolbox-footer-tools:not(.collapsed) .icon-btn{min-height:44px}.toolbox-close-overlay{display:none;position:absolute;top:.4rem;right:.5rem;z-index:3001;width:40px;height:40px;border-radius:50%;border:1px solid var(--current-outline-color, var(--secondary-color));background:#00000040;color:var(--text-color);font-size:1.4rem;line-height:1;cursor:pointer}.toolbox-footer-tools:not(.collapsed) .toolbox-close-overlay{display:flex;align-items:center;justify-content:center}}.toolbox-footer-tools{justify-content:safe center}#toolbox .tool-group{align-items:center}#toolbox .tool-group .group-content{justify-content:center}#toolbox .tool-group .group-title{text-align:center;width:100%}#toolbox .tool-group .setting-row,#toolbox .tool-group .segment-row{justify-content:center}.toolbox-footer-tools.toolbox-scroll{overflow-x:auto!important}.pan-tilt-control{display:flex;flex-direction:column;align-items:stretch;gap:.3rem;min-width:132px}.pan-tilt-row{display:flex;align-items:center;gap:.35rem;padding:.2rem .4rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:8px}[data-theme=light] .pan-tilt-row{background:#0000000a;border-color:#0000001a}.pan-tilt-row .pan-tilt-ico{font-size:.85rem;line-height:1}.pan-tilt-row input[type=range]{flex:1;min-width:54px;cursor:pointer;accent-color:var(--highlight-color)}.pan-tilt-row output{min-width:2.6em;text-align:right;font-size:.62rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-color);opacity:.8}[data-theme=light] .pan-tilt-row output{color:#000}.pan-tilt-presets{flex-wrap:wrap;justify-content:center}.pan-tilt-presets .segment-btn{padding-left:.45rem;padding-right:.45rem;font-size:.6rem}.beta-tag{display:inline-block;margin-left:.25rem;padding:0 .3rem;border:1px solid var(--highlight-color);border-radius:999px;font-size:.5rem;font-weight:700;line-height:1.45;letter-spacing:.03em;text-transform:uppercase;color:var(--highlight-color);opacity:.75;vertical-align:middle;pointer-events:auto;cursor:help}.pal-card{display:contents}@media(min-width:640px){body:not(.niveau-decouverte) #toolbox .group-visual .group-content{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:10px!important;row-gap:10px!important;width:100%;min-width:0!important;padding:0!important}body:not(.niveau-decouverte) #toolbox .group-visual .group-content:after{display:none}body:not(.niveau-decouverte) #toolbox .group-visual .group-content>.pal-sec-frame{display:none!important}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card{display:block;min-width:0;padding:6px 9px 7px;border-radius:13px;background:linear-gradient(180deg,#ffffff10,#ffffff05);border:1px solid rgba(255,255,255,.11);box-shadow:0 1px 1px #0003,0 5px 14px #00000038;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card:hover{border-color:#22d3ee61;box-shadow:0 1px 1px #0003,0 8px 20px #00000047;transform:translateY(-1px)}[data-theme=light] body:not(.niveau-decouverte) #toolbox .group-visual .pal-card{background:linear-gradient(180deg,#fff,#f6f8fb);border-color:#1b263b21;box-shadow:0 1px 1px #1b263b0d,0 5px 14px #1b263b17}[data-theme=light] body:not(.niveau-decouverte) #toolbox .group-visual .pal-card:hover{border-color:#5ccb5f80;box-shadow:0 1px 1px #1b263b0d,0 8px 20px #1b263b24}@media(prefers-reduced-motion:reduce){body:not(.niveau-decouverte) #toolbox .group-visual .pal-card,body:not(.niveau-decouverte) #toolbox .group-visual .pal-card:hover{transition:none;transform:none}}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec{width:100%;height:auto;min-height:0;margin:0 0 5px;padding:0 0 5px;gap:7px;justify-content:flex-start;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.09);border-radius:0;cursor:default;pointer-events:none;animation:none}[data-theme=light] body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec{background:transparent;border:none;border-bottom:1px solid rgba(27,38,59,.1)}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec .sec-ico{width:22px;height:22px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#22d3ee24;color:var(--highlight-color)}[data-theme=light] body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec .sec-ico{background:#5ccb5f29}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec .sec-ico .hs-ico{width:14px;height:14px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec .sec-txt{font-size:.66rem;letter-spacing:.07em;opacity:.95}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec .sec-caret{display:none}body:not(.niveau-decouverte) .group-visual .group-content .pal-card>.sub-group[data-sec]{display:grid;grid-template-columns:var(--pal-lab, 82px) auto auto;grid-auto-flow:row dense;align-items:center;justify-content:start;align-content:start;column-gap:8px!important;row-gap:3px!important;margin:0 0 5px!important;width:100%;min-width:0}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group:last-child{margin-bottom:0!important}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group>*{grid-column:2;justify-self:start;min-width:0;max-width:100%}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group>.setting-label-small{grid-column:1;justify-self:end;text-align:right;white-space:normal;line-height:1.15;font-size:.62rem;margin:0;letter-spacing:.02em}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group:has(>.notes-overlay-row){display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;column-gap:8px!important;row-gap:3px!important}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group:has(>.notes-overlay-row)>.setting-label-small{flex:0 0 var(--pal-lab, 82px)}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group>.notes-overlay-row{flex:0 1 auto;justify-content:flex-start;gap:5px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.sub-group>.notes-overlay-hint{flex:1 0 100%;box-sizing:border-box;margin:0;padding-left:calc(var(--pal-lab, 82px) + 8px);text-align:left}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .order-check{margin-top:0}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .order-check .order-check-pill{height:26px;padding:0 .5rem}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .order-check .order-check-txt{font-size:.58rem}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .segment-btn{min-height:28px;padding:.2rem .42rem;font-size:.7rem}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .segmented-control{flex-wrap:wrap}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .material-select{height:28px;width:100%;max-width:100%}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .icon-btn{width:28px;height:28px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .pan-tilt-control{width:100%}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .fingering-open-btn{margin-top:0}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card[data-sec=hands]{--pal-lab: 64px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card[data-sec=notation]{--pal-lab: 82px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card[data-sec=traces]{--pal-lab: 58px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card[data-sec=look]{--pal-lab: 62px}body:not(.niveau-decouverte) .palette-chip[data-sec=hands].sec-collapsed~.sub-group[data-sec=hands],body:not(.niveau-decouverte) .palette-chip[data-sec=notation].sec-collapsed~.sub-group[data-sec=notation],body:not(.niveau-decouverte) .palette-chip[data-sec=traces].sec-collapsed~.sub-group[data-sec=traces],body:not(.niveau-decouverte) .palette-chip[data-sec=look].sec-collapsed~.sub-group[data-sec=look]{display:grid}body:not(.niveau-decouverte) #toolbox .palette-chip[data-sec=notation].sec-collapsed~.sub-group:has(>.notes-overlay-row){display:flex}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card>.palette-sec.sec-docked{border-radius:0;border:none;border-bottom:1px solid rgba(255,255,255,.09);background:transparent}body:not(.niveau-decouverte) #toolbox .group-visual .group-content.pal-open{padding:0!important}}@media(min-width:1024px){body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools{flex-wrap:wrap!important;overflow:visible!important;align-items:stretch;justify-content:center;row-gap:.5rem}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette{order:0;justify-content:center}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export{order:1;justify-content:center}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-visual{order:2;flex:1 0 100%;min-width:0!important;padding:.5rem .75rem .6rem}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-visual .group-title{margin-bottom:.35rem}}@media(min-width:1024px){body:not(.niveau-decouverte) #toolbox .group-visual .group-content{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1180px){body:not(.niveau-decouverte) #toolbox .group-visual .group-content{grid-template-columns:minmax(0,.8fr) minmax(0,1.75fr) minmax(0,1fr) minmax(0,1fr)}}header{position:relative;align-self:stretch;width:100%}#handpan-container .appmode-switch{position:absolute;top:0;right:0;z-index:60;padding:3px;gap:2px;background:#0d1b2ac7;border:1px solid var(--highlight-color);box-shadow:0 4px 14px #00000061;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}[data-theme=light] #handpan-container .appmode-switch{background:#ffffffe6;box-shadow:0 4px 14px #1b263b29}#handpan-container .appmode-switch .appmode-btn{font-size:.72rem;padding:4px 10px;gap:5px}#handpan-container .appmode-switch .appmode-icon{width:15px;height:15px}@media(max-width:767px){#handpan-container{margin-top:48px!important}#handpan-container .appmode-switch{inset:-44px auto auto 50%;transform:translate(-50%);white-space:nowrap}#handpan-container .appmode-switch .appmode-btn{min-height:34px;padding:3px 9px;font-size:.7rem}}body.presentation-mode #handpan-container .appmode-switch,body.presentation-mode header .appmode-topbar{opacity:0!important;pointer-events:none!important;transition:opacity .5s ease}@media(min-width:640px){body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .pan-tilt-control{gap:3px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .pan-tilt-row{gap:4px}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .pan-tilt-presets .segment-btn{min-height:24px;padding:.15rem .35rem;font-size:.66rem}body:not(.niveau-decouverte) #toolbox .group-visual .pal-card .pan3d-suspended-note{font-size:.55rem;line-height:1.2}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette,body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export{flex-direction:row;align-items:center;justify-content:center;gap:.6rem;min-height:0;padding:.3rem .75rem}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette{min-width:max-content}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .chromakeys-title-group-compact{margin-bottom:0!important;display:flex;align-items:center;gap:6px;width:auto;flex:0 0 auto;min-width:max-content}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .title-text-wrapper{display:flex;align-items:center}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export .group-title{width:auto;margin-bottom:0}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export .group-title:after{display:none}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export .sub-group{flex-direction:row;align-items:center;gap:6px;margin:0}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-export .setting-label-small{margin-bottom:0}}@media(min-width:1024px){body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette{padding:.25rem .85rem;flex:0 0 auto;min-width:max-content;width:auto;max-width:none}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .chromakeys-title-group-compact{display:flex;align-items:center;gap:7px}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .title-text-wrapper{display:flex;align-items:center}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .title-rainbow{white-space:nowrap}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .group-content{margin:0}body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .group-content,body:not(.niveau-decouverte) #toolbox .toolbox-footer-tools .group-palette .segmented-control{flex:0 0 auto;width:max-content;min-width:max-content}}#toolbox .group-palette .chromakeys-title-group-compact .title-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 auto;line-height:0}#toolbox .group-palette .chromakeys-title-group-compact .title-icon .hs-ico{display:block;width:17px;height:17px}@media(min-width:768px){#handpan-container .appmode-switch{display:none}}#handpan-container #lcd-group>rect:not(.lcd-chip){transition:stroke .18s ease,filter .18s ease}#handpan-container #lcd-group:hover>rect:not(.lcd-chip){stroke:var(--gold-color, #D4AF37);filter:drop-shadow(0 0 6px rgba(212,175,55,.55))}body.niveau-decouverte .pan-tilt-row>.pan3d-mirror-inline,body.niveau-apprenti .pan-tilt-row>.pan3d-mirror-inline{display:none}#toolbox #pan3d-view-block .pan-tilt-row>.pan3d-mirror-inline.icon-btn{flex:0 0 auto;width:22px;min-width:22px;height:22px;min-height:22px;padding:0;margin-left:2px;border-radius:6px}#toolbox #pan3d-view-block .pan-tilt-row>.pan3d-mirror-inline.icon-btn svg{width:13px;height:13px}@media(min-width:641px){#toolbox .toolbox-footer-tools :is(.group-palette,.group-export,#vessel-toolbox-island)>.group-title{width:auto;flex:0 0 auto;min-width:max-content}#toolbox .toolbox-footer-tools{display:flex!important;flex-wrap:wrap!important;column-gap:.6rem;row-gap:.5rem;justify-content:center;align-items:stretch}#toolbox .toolbox-footer-tools:not(.collapsed){max-height:1400px}#toolbox .toolbox-footer-tools>:is(.group-palette,.group-export,#vessel-toolbox-island){flex:0 1 auto;width:auto;min-width:max-content;flex-direction:row;align-items:center;justify-content:center;gap:.6rem;min-height:0;padding:.3rem .75rem}#toolbox .toolbox-footer-tools>.group-visual{flex:1 0 100%;width:100%;min-width:0!important;padding:.5rem .75rem .6rem}#toolbox .toolbox-footer-tools>:is(.group-palette,.group-export,#vessel-toolbox-island)>.group-content{flex:0 0 auto;width:auto;min-width:max-content;justify-content:center;gap:.6rem}#toolbox .toolbox-footer-tools>.group-export>.group-content>.sub-group{flex-direction:row;align-items:center;gap:6px;margin:0}#toolbox .toolbox-footer-tools>.group-export .setting-label-small{margin-bottom:0}#toolbox .toolbox-footer-tools>.group-export>.group-title:after{display:none}#toolbox #vessel-toolbox-island>.group-content{flex-wrap:wrap}#toolbox .toolbox-footer-tools>:is(.group-palette,.group-export,#vessel-toolbox-island){order:0}#toolbox .toolbox-footer-tools>.group-visual{order:1}}@media(max-width:640px){#toolbox #vessel-toolbox-island{flex-direction:column;align-items:center;justify-content:center;gap:.3rem}#toolbox .toolbox-footer-tools>#vessel-toolbox-island{grid-column:1 / -1}#toolbox .toolbox-footer-tools #vessel-toolbox-island>.group-title{width:100%;text-align:center;justify-content:center}#toolbox #vessel-toolbox-island>.group-content{flex-wrap:wrap;justify-content:center;gap:.4rem}#toolbox #vessel-toolbox-island .segmented-control{flex-wrap:wrap}#toolbox #vessel-toolbox-island .vsl-model-row{flex-wrap:wrap;justify-content:center}}@media(min-width:1025px){#toolbox .toolbox-footer-tools{overflow:visible!important}}.custom-chord-wrapper{position:relative;width:100%;min-width:0}.mode-creation .chord-select,.mode-logic .chord-select{display:none}#chords-container .chord-select,#chord-rows-wrapper.timeline-horizontal .chord-select{display:none!important}.custom-select-trigger{display:none;background-color:var(--secondary-color);color:var(--text-color);border:2px solid var(--secondary-color);padding:.3rem 1rem;border-radius:20px;font-size:.95rem;cursor:pointer;width:100%;flex-direction:row;justify-content:space-between;align-items:center;position:relative;font-weight:500;min-height:auto;text-align:left;transition:background-color .2s,border-color .2s;height:36px;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#chords-container .custom-select-trigger{display:flex!important}.custom-select-trigger.logic-mode-trigger{flex-direction:column;justify-content:center;text-align:center;padding:0;gap:0;line-height:normal}.logic-trigger-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:4px;line-height:1.2}.logic-trigger-title{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;line-height:1.2}.logic-trigger-chord{font-size:1.05rem;opacity:.95;font-weight:700;line-height:1}.mode-creation .custom-select-trigger,.mode-logic .custom-select-trigger{display:flex}.custom-select-trigger>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.custom-select-trigger.logic-mode-trigger:after{display:none}.custom-select-trigger:not(.logic-mode-trigger):after{display:none;content:"";width:.8em;height:.8em;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E0E1DD%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-size:contain;background-position:center;opacity:.5;position:absolute;right:10px;top:50%;transform:translateY(-50%) rotate(180deg)}.custom-select-trigger:not(.logic-mode-trigger).no-value:after{display:block}[data-theme=light] .custom-select-trigger:not(.logic-mode-trigger):after{background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231B263B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E)}.custom-dropdown-menu{display:none;position:fixed;top:0;left:0;width:320px;max-height:400px;overflow-y:auto;background-color:#1b263b;border:1px solid var(--secondary-color);border-radius:16px;z-index:100009!important;box-shadow:0 10px 40px #000000e6;padding:.8rem}.custom-dropdown-menu.open{display:flex;flex-direction:column;gap:.6rem}.tuto-highlighted+.custom-dropdown-menu,.tuto-lift-parent+.custom-dropdown-menu,.custom-dropdown-menu.tuto-lift-parent{z-index:100010!important}.custom-menu-header-row{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:.2rem;color:var(--highlight-color);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.custom-menu-header-row span{flex:1;text-align:center}.header-separator{width:1px;height:1.2rem;background-color:#fff;opacity:.3;margin:0 .5rem}.custom-menu-swap-header{display:flex;flex-direction:row;align-items:center;justify-content:center;padding:.5rem 0;color:#fff;opacity:.8;gap:.6rem}.custom-menu-swap-header .arrows-icon{font-size:1.2rem;line-height:1;font-weight:700}.custom-menu-swap-header .swap-text{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.row-separator{width:2px;background-color:#fffc;margin:0;flex-shrink:0}.custom-menu-none{width:100%;padding:.4rem;text-align:center;background:#ffffff1a;border-radius:8px;color:var(--text-color);cursor:pointer;font-weight:700;font-size:1rem;margin-bottom:.5rem;border:1px dashed var(--secondary-color)}.custom-menu-none:hover{background-color:var(--secondary-color);border-style:solid}.custom-menu-none.logic-none{padding:.3rem;background-color:#0000004d;border:1px solid rgba(255,255,255,.1);margin-bottom:0;margin-top:.5rem;display:flex;justify-content:center;align-items:center;gap:.5rem}.custom-menu-none.logic-none:hover{background-color:#ef444433;border-color:#ef444480;color:#fff}.custom-menu-row{display:flex;gap:0;border-radius:8px;overflow:hidden}.custom-menu-row[data-root=C]{background-color:#dc2626e6}.custom-menu-row[data-root="C#"]{background-color:#ef4444e6}.custom-menu-row[data-root=D]{background-color:#ea580ce6}.custom-menu-row[data-root="D#"]{background-color:#f97316e6}.custom-menu-row[data-root=E]{background-color:#eab308e6}.custom-menu-row[data-root=F]{background-color:#16a34ae6}.custom-menu-row[data-root="F#"]{background-color:#22c55ee6}.custom-menu-row[data-root=G]{background-color:#2563ebe6}.custom-menu-row[data-root="G#"]{background-color:#3b82f6e6}.custom-menu-row[data-root=A]{background-color:#7c3aede6}.custom-menu-row[data-root="A#"]{background-color:#8b5cf6e6}.custom-menu-row[data-root=B]{background-color:#d946efe6}.custom-menu-item{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 4px;line-height:normal;cursor:pointer;font-size:1rem;font-weight:700;color:#fff;transition:background-color .2s,transform .1s;text-shadow:0 1px 3px rgba(0,0,0,.9)}.custom-menu-item.logic-swap-item{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;padding:0;height:44px;overflow:hidden;gap:0;margin-top:4px}.custom-menu-item.logic-swap-item.restricted-conflict{opacity:.6;filter:grayscale(.5);cursor:not-allowed;background-color:#333!important}.custom-menu-item.logic-swap-item.restricted-conflict .item-chord{display:none}.restriction-warning{color:#ff5252;font-size:.65rem;font-weight:700;text-transform:uppercase;display:block;line-height:1;margin-left:auto;padding-left:.5rem;white-space:nowrap}.warning-icon{font-size:1.2rem!important;color:#ff5252;text-shadow:0 0 5px rgba(0,0,0,.5)}.logic-col-action{display:flex;align-items:center;justify-content:center;background-color:transparent;padding:0;flex:0 0 40px;border-left:1px solid rgba(255,255,255,.2);flex-shrink:0;order:2}.logic-col-action .swap-arrows{font-size:1.8rem;line-height:1;display:block}.logic-col-action .action-text{font-size:.7rem;text-transform:uppercase;font-weight:700;letter-spacing:.5px;line-height:1}.logic-col-info{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0 .1rem 0 .8rem;gap:.5rem;white-space:nowrap;overflow:hidden;order:1}.logic-col-info .item-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;white-space:normal;line-height:1.05;text-align:left;flex-shrink:1}.custom-menu-item.logic-swap-item:not(.restricted-conflict) .item-title{flex:1}.logic-col-info .item-chord{font-size:.95rem;font-weight:600;opacity:.95;background:#0003;padding:2px 6px;border-radius:6px;flex-shrink:0;margin-right:2px}.custom-menu-item.logic-swap-item.active-slot{border:2px solid white}.custom-menu-item.logic-swap-item.active-slot .logic-col-action{background-color:transparent;color:#fff}.custom-menu-item:hover{background-color:#ffffff4d;transform:scale(1.02);z-index:1}.custom-menu-item.disabled{pointer-events:none;opacity:.3;filter:grayscale(1);cursor:not-allowed;background-color:#333!important}.help-trigger-small{position:absolute;top:5px;right:5px;width:18px;height:18px;border-radius:50%;background-color:#ef4444;color:#fff;border:none;font-size:.7rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #0000004d;transition:transform .2s,background-color .2s;z-index:10}.help-trigger-small:hover{transform:scale(1.2);background-color:red}#appearance-help-overlay,#chords-help-overlay,#global-help-modal{position:absolute;top:20px;left:50%;transform:translate(-50%);width:90%;max-width:600px;max-height:85vh;background-color:#0d1b2afa;backdrop-filter:blur(10px);border:1px solid #EF4444;border-radius:16px;padding:0;z-index:10000;box-shadow:0 20px 50px #000c;display:flex;flex-direction:column;animation:fadeIn .3s ease-out;overflow:hidden}#appearance-help-overlay.hidden,#chords-help-overlay.hidden,#global-help-modal.hidden{display:none}[data-theme=light] #appearance-help-overlay,[data-theme=light] #chords-help-overlay,[data-theme=light] #global-help-modal{background-color:#fffffffa;border-color:#ef4444;color:#000}.help-header,.help-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:#0d1b2afa;border-bottom:1px solid rgba(255,255,255,.1)}[data-theme=light] .help-header,[data-theme=light] .help-modal-header{background-color:#fffffffa;border-bottom:1px solid rgba(0,0,0,.1)}.help-header h3,.help-modal-header h3{margin:0;color:#ef4444;font-size:1.3rem;font-weight:700}.close-help-btn,.guide-close-x{background:none;border:none;color:#ef4444;font-size:1.5rem;cursor:pointer;padding:0 .5rem;width:32px;height:32px;border-radius:50%;border:2px solid #EF4444;display:flex;align-items:center;justify-content:center;transition:all .2s;font-weight:700}.close-help-btn:hover,.guide-close-x:hover{background-color:#ef4444;color:#fff;transform:rotate(90deg)}.help-content-scrollable{flex:1;overflow-y:auto;padding:1.5rem}.help-section-title{font-size:.85rem;text-transform:uppercase;color:var(--highlight-color);margin-bottom:.4rem;font-weight:700;letter-spacing:1px;margin-top:1rem}.help-section-title:first-child{margin-top:0}.help-table{display:flex;flex-direction:column;gap:.4rem;width:100%}.help-row{display:flex;align-items:center;gap:.8rem;padding:.3rem .5rem;background-color:#ffffff08;border-radius:12px}[data-theme=light] .help-row{background-color:#00000008}.help-icon-cell{flex:0 0 60px;display:flex;justify-content:center;align-items:center;padding-top:0}.icon-mockup{width:36px;height:36px;background-color:var(--secondary-color);border:1px solid var(--highlight-color);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--text-color);font-weight:700}.segment-mockup{padding:.2rem .5rem;background-color:var(--highlight-color);color:var(--primary-color);border-radius:18px;font-size:.7rem;font-weight:600;white-space:nowrap}.text-mockup{font-size:.75rem;color:var(--highlight-color);border:1px solid rgba(255,255,255,.2);padding:.2rem .4rem;border-radius:12px}.dropdown-mockup{background-color:var(--secondary-color);border:1px solid var(--highlight-color);border-radius:14px;padding:.1rem .5rem;font-size:.7rem;color:var(--text-color)}.help-switch-container{display:flex;background:var(--secondary-color);border:1px solid var(--highlight-color);border-radius:14px;padding:2px;gap:2px;transform:scale(.9)}.help-switch-item{padding:.2rem .4rem;font-size:.65rem;color:var(--text-color);opacity:.7;border-radius:12px;white-space:nowrap}.help-switch-item.active{background:var(--highlight-color);color:var(--primary-color);opacity:1;font-weight:700}.help-pill-icon{width:32px;height:32px;border-radius:50%;background-color:var(--secondary-color);color:var(--text-color);display:flex;align-items:center;justify-content:center;font-size:1rem;border:1px solid transparent}.help-pill-icon.small{width:24px;height:24px;font-size:.8rem}.modifier-mockup-container{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;width:70px}.modifier-mockup{font-size:.6rem;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:2px 4px;border-radius:8px;white-space:nowrap}.help-control-group-mockup{display:flex;flex-direction:column;align-items:center;gap:4px;background:#ffffff0d;padding:4px 8px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.help-play-circle{width:20px;height:20px;background:#22d3ee;color:#1b263b;border-radius:50%;display:flex;align-items:center;justify-content:center}.help-text-cell{flex:1;line-height:1.3}.help-text-cell strong{display:inline-block;color:#ef4444;font-size:.9rem;margin-right:.3rem;margin-bottom:0}.help-text-cell p,.help-text-cell{font-size:.85rem;margin:0;line-height:1.3;opacity:.9;display:inline}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}body.tutorial-active #global-chord-menu,body.tutorial-active #global-help-modal{z-index:1000010!important}body.tutorial-active .modal-overlay{background-color:transparent!important;backdrop-filter:none!important}#btn-launch-tutorial{background:#ffffff1a;border:1px solid var(--highlight-color);color:var(--highlight-color);width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .2s ease;margin-right:10px;position:relative;z-index:100}#btn-launch-tutorial:hover{background:var(--highlight-color);color:var(--primary-color);box-shadow:0 0 10px var(--highlight-color)}.tuto-highlight-text{color:#ef4444;font-weight:800;text-shadow:0 0 10px rgba(239,68,68,.3)}.tuto-inline-icon{display:inline-block;vertical-align:middle;width:1.2em;height:1.2em;margin:0 2px;fill:currentColor;color:var(--highlight-color)}#tutorial-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:transparent;z-index:1000000;pointer-events:none;display:none}#tutorial-overlay.active{display:block}.tuto-mask{position:fixed;background:#000000bf;z-index:1000001;pointer-events:auto;display:none;transition:background .3s ease}body:not(.tutorial-active) .tuto-mask{display:none!important}#tutorial-spotlight{position:fixed;border:3px solid var(--highlight-color);border-radius:12px;pointer-events:none!important;transition:all .3s cubic-bezier(.25,.8,.25,1);z-index:1000002;display:none;box-sizing:border-box;will-change:transform,width,height,top,left}#tutorial-spotlight.pulsing:after{content:"";position:absolute;inset:-3px;border-radius:inherit;border:2px solid var(--highlight-color);animation:pulse-cyan-target 1.5s infinite;pointer-events:none!important}@keyframes pulse-cyan-target{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:0}to{transform:scale(1);opacity:0}}#tutorial-card{position:fixed;width:550px;max-width:90vw;background:#0d1b2afa;border:2px solid var(--current-outline-color);border-radius:20px;padding:1.5rem 2rem;box-shadow:0 10px 30px #000c;z-index:1000010!important;color:var(--text-color);transition:all .3s cubic-bezier(.2,.8,.2,1);opacity:0;display:none;will-change:transform,opacity;pointer-events:auto!important}#tutorial-card.visible{opacity:1;display:block}#tutorial-card.tuto-card-compact{width:380px!important;max-width:calc(100vw - 20px)!important;padding:.9rem 1.1rem}#tutorial-card.tuto-card-compact .tuto-progress-wrap{padding:6px 10px 4px}#tutorial-card.tuto-card-compact .tuto-header{margin-bottom:.6rem;padding-bottom:.5rem}#tutorial-card.tuto-card-compact .tuto-content{font-size:.78rem!important;line-height:1.35!important;margin-bottom:.8rem}#tutorial-card.tuto-card-compact .tuto-btn{padding:.45rem 1rem;font-size:.8rem}#tutorial-card.tuto-card-compact .tuto-controls{min-height:32px}#tutorial-card.tuto-card-compact .tuto-title{font-size:.95rem}#tutorial-card.tuto-card-banner{border-radius:14px;padding:.6rem 1rem}#tutorial-card.tuto-card-banner .tuto-progress-wrap{display:none}#tutorial-card.tuto-card-banner .tuto-content{margin-bottom:.5rem}#tutorial-card.tuto-card-over-spot:hover{opacity:.14}.tuto-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.8rem;gap:1rem;position:relative}.tuto-step-badge{background:var(--secondary-color);color:#fff;font-size:.8rem;font-weight:800;padding:4px 10px;border-radius:8px;text-transform:uppercase;border:1px solid rgba(255,255,255,.2);white-space:nowrap;flex-shrink:0}.tuto-title{font-size:1.1rem;font-weight:700;margin:0;color:var(--highlight-color);text-shadow:0 2px 4px rgba(0,0,0,.5);line-height:1.2;text-align:center;flex:1}.tuto-btn-close-header{background:transparent;border:1px solid #EF4444;color:#ef4444;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:.8rem;line-height:1;transition:all .2s;pointer-events:auto!important}.tuto-btn-close-header:hover{background:#ef4444;color:#fff}.tuto-content{font-size:.85rem;line-height:1.4;margin-bottom:1.5rem;color:#eee;font-weight:400;text-align:left}.tuto-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;min-height:40px}.tuto-btn{padding:.6rem 1.5rem;border-radius:25px;font-size:.9rem;font-weight:700;cursor:pointer!important;border:none;transition:all .2s;white-space:nowrap;pointer-events:auto!important}.tuto-btn-prev{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);margin-right:0}.tuto-btn-prev:hover{background:#fff3}.tuto-btn-extra{background:transparent;color:#fff;border:1px dashed rgba(255,255,255,.35);margin-right:auto;font-weight:600}.tuto-btn-extra:hover{background:#ffffff1f;border-style:solid}.tuto-btn-next{background:var(--highlight-color);color:var(--primary-color);box-shadow:0 4px 10px #0003}.tuto-btn-next:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0000004d}.tuto-btn-next.hidden{display:none}.tuto-decision-container{display:flex;flex-direction:column;gap:10px;width:100%}.tuto-btn-decision-primary{background:var(--highlight-color);color:var(--primary-color);padding:1rem;border-radius:12px;font-weight:800;text-transform:uppercase;cursor:pointer;border:none;box-shadow:0 4px 15px #0000004d;transition:transform .2s}.tuto-btn-decision-primary:hover{transform:translateY(-2px);background:#fff}.tuto-btn-decision-secondary{background:transparent;border:2px solid var(--secondary-color);color:#fff;padding:.8rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s}.tuto-btn-decision-secondary:hover{background:#ffffff1a;border-color:#fff}.tuto-pointer-arrow{position:fixed;pointer-events:none;z-index:1000015;overflow:visible}.tuto-pointer-arrow path{fill:none;stroke:#ef4444;stroke-width:3px;stroke-linecap:round;marker-end:url(#arrowhead-red)}.tuto-highlighted{opacity:1!important;filter:none!important;visibility:visible!important;pointer-events:auto!important}.tuto-highlighted *{pointer-events:auto!important}.tuto-action-required,.tuto-action-required *{cursor:pointer!important}.tuto-progress-wrap{padding:14px 20px 10px;border-bottom:1px solid rgba(255,255,255,.06)}.tuto-progress-track{position:relative;width:100%;height:6px;background:#ffffff14;border-radius:3px}.tuto-progress-track-fill{position:absolute;left:0;top:0;height:100%;width:0%;background:linear-gradient(90deg,#22d3ee,#67e8f9);border-radius:3px;transition:width .5s cubic-bezier(.25,.8,.25,1);box-shadow:0 0 8px #22d3ee66}.tuto-progress-milestones{position:absolute;top:0;left:0;width:100%;height:100%}.tuto-milestone{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;border-radius:50%;background:#0d1b2a;border:2px solid rgba(255,255,255,.2);transition:all .3s ease;z-index:2}.tuto-milestone.completed{border-color:#22d3ee;background:#22d3ee}.tuto-milestone.active{border-color:#67e8f9;background:#22d3ee;box-shadow:0 0 0 4px #22d3ee40;animation:tutoMilestonePulse 1.6s ease-in-out infinite}@keyframes tutoMilestonePulse{0%,to{box-shadow:0 0 0 4px #22d3ee40}50%{box-shadow:0 0 0 8px #22d3ee1a}}.tuto-progress-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px}.tuto-progress-section-name{font-size:.7rem;color:#67e8f9;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.tuto-progress-percent{font-size:.75rem;color:#fff9;font-weight:600;font-variant-numeric:tabular-nums}.tuto-labo-wip-badge{display:inline-block;background:#fbbf241f;border:1px solid rgba(251,191,36,.55);color:#fbbf24;font-size:.78rem;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.4px}.tuto-labo-notice{position:fixed;right:18px;bottom:18px;z-index:1000020;max-width:340px;background:#0d1b2afa;border:1px solid rgba(251,191,36,.55);border-radius:14px;padding:14px 38px 14px 16px;color:var(--text-color, #E0E1DD);font-size:.85rem;line-height:1.45;box-shadow:0 14px 40px #00000073}.tuto-labo-notice-close{position:absolute;top:8px;right:8px;background:transparent;border:none;color:inherit;font-size:1rem;cursor:pointer;opacity:.7}.tuto-labo-notice-close:hover{opacity:1}.tuto-debug-toast{position:fixed;left:18px;bottom:18px;z-index:1000030;max-width:420px;background:#7f1d1df5;border:1px solid #EF4444;border-radius:10px;padding:10px 14px;color:#fff;font-size:.8rem;box-shadow:0 10px 30px #00000080}.tuto-hotspot{position:fixed;width:18px;height:18px;padding:0;display:none;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(34,211,238,.55);background:#0d1b2ad9;color:#22d3ee;font-size:11px;font-weight:700;line-height:1;cursor:pointer;z-index:999990;opacity:.55;transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease}.tuto-hotspot.tuto-hotspot-visible{display:flex}.tuto-hotspot:hover,.tuto-hotspot:focus-visible{opacity:1;transform:scale(1.15);box-shadow:0 0 10px #22d3ee80;outline:none}.tuto-hotspot.tuto-hotspot-seen{opacity:.3;border-color:#e0e1dd59;color:#e0e1ddcc}.tuto-hotspot.tuto-hotspot-seen:hover,.tuto-hotspot.tuto-hotspot-seen:focus-visible{opacity:.95}body.tutorial-active .tuto-hotspot{display:none!important}#floating-palette-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:50}#note-palette{width:100%;height:100%;pointer-events:none}.sp-l-shape-tools{position:absolute;top:10px;left:10px;display:flex;flex-direction:row;align-items:flex-start;gap:6px;pointer-events:none;z-index:60}.sp-tools-vertical{display:flex;flex-direction:column;gap:6px;background-color:#0d1b2ad9;backdrop-filter:blur(8px);border-radius:10px;border:2px solid var(--current-outline-color);box-shadow:0 4px 20px #0006;padding:6px;pointer-events:auto}.sp-tools-horizontal{display:flex;flex-direction:row;gap:6px;background-color:#0d1b2ad9;backdrop-filter:blur(8px);border-radius:10px;border:2px solid var(--current-outline-color);box-shadow:0 4px 20px #0006;padding:6px;pointer-events:auto}[data-theme=light] .sp-tools-vertical,[data-theme=light] .sp-tools-horizontal{background-color:#ffffffd9;border-color:var(--current-outline-color)}.sp-l-shape-tools .sp-tool-btn,.sp-l-shape-tools .sp-octave-btn{width:50px;height:50px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-weight:700;font-size:24px}.sp-l-shape-tools .sp-tool-btn:hover,.sp-l-shape-tools .sp-octave-btn:hover{background:#ffffff26}.sp-l-shape-tools .sp-tool-btn.selected,.sp-l-shape-tools .sp-octave-btn.selected{background:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);box-shadow:0 0 8px #22d3ee33}.sp-arcs-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.sp-notes-arc,.sp-octaves-arc{position:absolute;top:50%;left:50%;width:0;height:0}.arc-layout .sp-note-key{position:absolute;top:50%;left:50%;width:44px;height:44px;margin-top:-22px;margin-left:-22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;transform:rotate(var(--arc-angle)) translateY(calc(-1 * var(--arc-radius, 220px))) rotate(calc(var(--arc-angle) * -1)) scale(var(--arc-scale, 1));transition:filter .3s,box-shadow .3s,scale .3s;box-shadow:0 4px 10px #00000080;pointer-events:auto;cursor:pointer;border:2px solid transparent}.arc-layout .sp-notes-arc.arc-3d .sp-note-key{transform:translate(var(--k-x, 0px),var(--k-y, 0px)) scale(var(--arc-scale, 1))}.arc-layout .sp-notes-arc.arc-3d .sp-note-key:hover{transform:translate(var(--k-hx, 0px),var(--k-hy, 0px)) scale(calc(var(--arc-scale, 1) * 1.1))}body.is-resizing .arc-layout .sp-note-key{transition:none!important}.arc-layout .sp-note-key:hover{filter:brightness(1.2);transform:rotate(var(--arc-angle)) translateY(calc(-1 * var(--arc-radius, 220px) - 5px)) rotate(calc(var(--arc-angle) * -1)) scale(calc(var(--arc-scale, 1) * 1.1))}.arc-layout .sp-left-col,.arc-layout .sp-right-col{display:none}#note-palette::-webkit-scrollbar{display:none}[data-theme=light] #note-palette{background-color:#fffffff2;border-color:#0000001a}.sp-left-col{display:flex;flex-direction:column;width:28px;flex-shrink:0;gap:2px;position:sticky;left:0;z-index:10}.sp-mode-btn-vertical{flex:1;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;font-size:.9rem;padding:0;transition:all .2s;min-height:0}.sp-mode-btn-vertical:hover{background:#ffffff26}.sp-mode-btn-vertical.active{background:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);box-shadow:0 0 8px #22d3ee33}.sp-right-col{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.sp-header-row{display:flex;align-items:stretch;gap:2px;height:28px}.sp-note-key{flex:1.5;min-width:36px;height:100%;border-radius:6px;border:2px solid transparent;box-sizing:border-box;font-weight:800;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s ease;color:#fff}.sp-note-key.sharp{flex:1;min-width:28px}.sp-header-tools-wrapper{display:flex;gap:2px;width:90px;flex-shrink:0;margin-left:2px}.sp-expand-btn{width:24px;background:#ffffff1a;border:none;color:var(--text-color);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;transition:background-color .2s;margin-left:2px;background:#22d3ee1a;border:1px solid rgba(34,211,238,.2)}.sp-expand-btn:hover{background:#22d3ee4d}.sp-expand-btn.active{background:var(--highlight-color);color:var(--primary-color)}.sp-top-tools{display:flex;gap:2px;flex:1}.sp-compact-row{display:flex;align-items:stretch;gap:2px;height:24px}.sp-octave-btn{flex:1;min-width:36px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-color);border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:700;padding:0;transition:all .2s;display:flex;align-items:center;justify-content:center}.sp-octave-btn:hover{background:#ffffff26}.sp-octave-btn.selected{background:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color)}.sp-bottom-tools-wrapper{width:90px;flex-shrink:0;display:flex;gap:2px;margin-left:2px}.sp-tool-btn{flex:1;height:100%;border-radius:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:var(--text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;transition:all .2s;padding:0}.sp-tool-btn svg{width:24px;height:24px}.sp-compact-row .sp-tool-btn{font-size:.8rem;border-radius:4px}.sp-compact-row .sp-tool-btn svg{width:14px;height:14px}.sp-tool-btn:hover{background:#ffffff26;border-color:#fff}.sp-tool-btn.selected{background:#ef4444;border-color:#ef4444;color:#fff}.sp-grid-container{display:flex;flex-direction:row;gap:2px;padding-top:0;width:100%}.sp-grid-column{display:flex;flex-direction:column;gap:2px;flex:1.5;min-width:36px}.sp-grid-column.sharp{flex:1;min-width:28px}.sp-grid-note{width:100%;height:24px;border-radius:4px;border:2px solid transparent;box-sizing:border-box;font-size:.75rem;font-weight:700;cursor:pointer;color:#fff;background-color:#ffffff1a;transition:transform .1s;display:flex;align-items:center;justify-content:center;padding:0}.sp-grid-note:hover{transform:scale(1.05);z-index:2}.sp-grid-note.selected{border:2px solid white;box-shadow:0 0 10px #fff;z-index:10}.sp-grid-note[data-fullnote$="2"]{filter:brightness(.75)}.sp-grid-note[data-fullnote$="3"]{filter:brightness(.85)}.sp-grid-note[data-fullnote$="4"]{filter:brightness(.95)}.sp-grid-tools{display:flex;flex-direction:column;gap:2px;width:90px;margin-left:2px;flex-shrink:0}.sp-grid-tool-btn{width:100%;height:24px;background:#ffffff0d;border:none;border-radius:4px;color:var(--text-color);cursor:pointer;display:flex;align-items:center;justify-content:center}.sp-grid-tool-btn:hover{background:#fff3}.sp-grid-tool-btn.selected{background:#ef4444;color:#fff}.sp-grid-tool-btn svg{width:14px;height:14px}.palette-mode-chakra .sp-note-key[data-note=C]{background:var(--chakra-c)}.palette-mode-chakra .sp-note-key[data-note="C#"]{background:var(--chakra-cs)}.palette-mode-chakra .sp-note-key[data-note=D]{background:var(--chakra-d)}.palette-mode-chakra .sp-note-key[data-note="D#"]{background:var(--chakra-ds)}.palette-mode-chakra .sp-note-key[data-note=E]{background:var(--chakra-e)}.palette-mode-chakra .sp-note-key[data-note=F]{background:var(--chakra-f)}.palette-mode-chakra .sp-note-key[data-note="F#"]{background:var(--chakra-fs)}.palette-mode-chakra .sp-note-key[data-note=G]{background:var(--chakra-g)}.palette-mode-chakra .sp-note-key[data-note="G#"]{background:var(--chakra-gs)}.palette-mode-chakra .sp-note-key[data-note=A]{background:var(--chakra-a)}.palette-mode-chakra .sp-note-key[data-note="A#"]{background:var(--chakra-as)}.palette-mode-chakra .sp-note-key[data-note=B]{background:var(--chakra-b)}.sp-note-key.selected{box-shadow:0 0 0 2px #fff,0 0 15px #ffffff80;z-index:10}.palette-mode-chakra .sp-grid-note[data-base=C]{background:var(--chakra-c);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base="C#"]{background:var(--chakra-cs);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=D]{background:var(--chakra-d);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base="D#"]{background:var(--chakra-ds);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=E]{background:var(--chakra-e);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=F]{background:var(--chakra-f);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base="F#"]{background:var(--chakra-fs);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=G]{background:var(--chakra-g);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base="G#"]{background:var(--chakra-gs);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=A]{background:var(--chakra-a);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base="A#"]{background:var(--chakra-as);border:1px solid rgba(255,255,255,.2)}.palette-mode-chakra .sp-grid-note[data-base=B]{background:var(--chakra-b);border:1px solid rgba(255,255,255,.2)}.palette-mode-piano .sp-note-key.natural{background:#fff;color:#000;border-bottom:3px solid #CCC}.palette-mode-piano .sp-note-key.sharp{background:#111;color:#fff;border:2px solid #FFFFFF}.palette-mode-chakra .sp-note-key.note-placed,.palette-mode-chakra .sp-grid-note.note-placed{border-color:#fff!important;box-shadow:0 0 8px #fffc;z-index:5}.palette-mode-piano .sp-note-key.note-placed[data-note=C],.palette-mode-piano .sp-grid-note.note-placed[data-base=C]{border-color:var(--chakra-c)!important;box-shadow:0 0 8px var(--chakra-c)}.palette-mode-piano .sp-note-key.note-placed[data-note="C#"],.palette-mode-piano .sp-grid-note.note-placed[data-base="C#"]{border-color:var(--chakra-cs)!important;box-shadow:0 0 8px var(--chakra-cs)}.palette-mode-piano .sp-note-key.note-placed[data-note=D],.palette-mode-piano .sp-grid-note.note-placed[data-base=D]{border-color:var(--chakra-d)!important;box-shadow:0 0 8px var(--chakra-d)}.palette-mode-piano .sp-note-key.note-placed[data-note="D#"],.palette-mode-piano .sp-grid-note.note-placed[data-base="D#"]{border-color:var(--chakra-ds)!important;box-shadow:0 0 8px var(--chakra-ds)}.palette-mode-piano .sp-note-key.note-placed[data-note=E],.palette-mode-piano .sp-grid-note.note-placed[data-base=E]{border-color:var(--chakra-e)!important;box-shadow:0 0 8px var(--chakra-e)}.palette-mode-piano .sp-note-key.note-placed[data-note=F],.palette-mode-piano .sp-grid-note.note-placed[data-base=F]{border-color:var(--chakra-f)!important;box-shadow:0 0 8px var(--chakra-f)}.palette-mode-piano .sp-note-key.note-placed[data-note="F#"],.palette-mode-piano .sp-grid-note.note-placed[data-base="F#"]{border-color:var(--chakra-fs)!important;box-shadow:0 0 8px var(--chakra-fs)}.palette-mode-piano .sp-note-key.note-placed[data-note=G],.palette-mode-piano .sp-grid-note.note-placed[data-base=G]{border-color:var(--chakra-g)!important;box-shadow:0 0 8px var(--chakra-g)}.palette-mode-piano .sp-note-key.note-placed[data-note="G#"],.palette-mode-piano .sp-grid-note.note-placed[data-base="G#"]{border-color:var(--chakra-gs)!important;box-shadow:0 0 8px var(--chakra-gs)}.palette-mode-piano .sp-note-key.note-placed[data-note=A],.palette-mode-piano .sp-grid-note.note-placed[data-base=A]{border-color:var(--chakra-a)!important;box-shadow:0 0 8px var(--chakra-a)}.palette-mode-piano .sp-note-key.note-placed[data-note="A#"],.palette-mode-piano .sp-grid-note.note-placed[data-base="A#"]{border-color:var(--chakra-as)!important;box-shadow:0 0 8px var(--chakra-as)}.palette-mode-piano .sp-note-key.note-placed[data-note=B],.palette-mode-piano .sp-grid-note.note-placed[data-base=B]{border-color:var(--chakra-b)!important;box-shadow:0 0 8px var(--chakra-b)}.palette-mode-piano .sp-note-key.selected[data-note=C],.palette-mode-piano .sp-grid-note.selected[data-base=C]{background:var(--chakra-c)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note="C#"],.palette-mode-piano .sp-grid-note.selected[data-base="C#"]{background:var(--chakra-cs)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=D],.palette-mode-piano .sp-grid-note.selected[data-base=D]{background:var(--chakra-d)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note="D#"],.palette-mode-piano .sp-grid-note.selected[data-base="D#"]{background:var(--chakra-ds)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=E],.palette-mode-piano .sp-grid-note.selected[data-base=E]{background:var(--chakra-e)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=F],.palette-mode-piano .sp-grid-note.selected[data-base=F]{background:var(--chakra-f)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note="F#"],.palette-mode-piano .sp-grid-note.selected[data-base="F#"]{background:var(--chakra-fs)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=G],.palette-mode-piano .sp-grid-note.selected[data-base=G]{background:var(--chakra-g)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note="G#"],.palette-mode-piano .sp-grid-note.selected[data-base="G#"]{background:var(--chakra-gs)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=A],.palette-mode-piano .sp-grid-note.selected[data-base=A]{background:var(--chakra-a)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note="A#"],.palette-mode-piano .sp-grid-note.selected[data-base="A#"]{background:var(--chakra-as)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-note-key.selected[data-note=B],.palette-mode-piano .sp-grid-note.selected[data-base=B]{background:var(--chakra-b)!important;color:#fff;border-color:#fff;filter:brightness(1.2)}.palette-mode-piano .sp-grid-note.natural{background:#fff;color:#000;border:2px solid #CCC}.palette-mode-piano .sp-grid-note.sharp{background:#111;color:#fff;border:2px solid #FFFFFF}.sp-note-key.playing,.sp-grid-note.playing{filter:brightness(1.5);transform:scale(1.1);z-index:20}@media(orientation:portrait)and (max-width:1024px){.content-wrapper.mode-creation #handpan-container{margin-top:96px}}@media(orientation:portrait)and (min-width:600px)and (max-width:1024px){.content-wrapper.mode-creation .sp-l-shape-tools{top:34%;bottom:auto}}svg.mini-handpan-svg[data-notes]{cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000d9;z-index:1000;display:flex;justify-content:center;align-items:center;padding:1rem;backdrop-filter:blur(5px);animation:modalOverlayFadeIn .18s ease-out}.modal-overlay.hidden{display:none}.partition-modal-content{background-color:var(--primary-color);border-radius:16px;border:1px solid var(--secondary-color);box-shadow:0 10px 40px #000000b3;width:95%;max-width:1200px;height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalContentSlideIn .22s cubic-bezier(.2,.7,.2,1);transform-origin:center center}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalContentSlideIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.partition-editor-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--bg-color);border-bottom:1px solid var(--secondary-color)}.partition-editor-header h3{margin:0;font-weight:600;color:var(--text-color)}.header-actions{display:flex;align-items:center;gap:1rem}.export-hint{display:flex;align-items:center;gap:8px;font-size:1.25rem;font-weight:700;color:#fff;white-space:nowrap;margin-right:2px;user-select:none}.export-hint-arrow{font-size:1.6rem;line-height:1;display:inline-block;color:#fff}.partition-editor-body{display:flex;flex:1;overflow:hidden;flex-direction:column;position:relative}@media(min-width:800px){.partition-editor-body{flex-direction:row}}@media(max-width:799px){.partition-editor-body{flex-direction:column-reverse}}.partition-settings{background-color:var(--primary-color);padding:1.5rem;overflow-y:auto;border-right:1px solid var(--secondary-color);display:flex;flex-direction:column;gap:1rem;flex-basis:350px;flex-shrink:0;transition:transform .3s cubic-bezier(.25,.8,.25,1),min-width .3s,padding .3s,opacity .3s,flex-basis .3s;position:relative;z-index:20}.toggle-panel-btn{position:absolute;top:1.2rem;left:350px;background:var(--primary-color);border:1px solid var(--secondary-color);border-left:none;color:var(--text-color);width:24px;height:60px;border-radius:0 12px 12px 0;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:left .3s cubic-bezier(.25,.8,.25,1),bottom .3s cubic-bezier(.25,.8,.25,1),background-color .2s,color .2s;z-index:70;box-shadow:4px 0 10px #0000001a;touch-action:manipulation}.toggle-panel-btn:hover{background:var(--secondary-color);color:var(--highlight-color)}.partition-editor-body.settings-collapsed .partition-settings{transform:translate(-100%);min-width:0;width:0;flex-basis:0;padding-left:0;padding-right:0;opacity:0;overflow:visible}.partition-editor-body.settings-collapsed .toggle-panel-btn{left:0;border-left:1px solid var(--secondary-color)}@media(max-width:799px){.partition-settings{flex-basis:auto;max-height:42%;border-right:none;border-bottom:1px solid var(--secondary-color);transition:max-height .3s cubic-bezier(.25,.8,.25,1),padding .3s,opacity .3s}.toggle-panel-btn{display:flex;top:auto;bottom:42%;left:50%;width:84px;height:26px;transform:translate(-50%);border:1px solid var(--secondary-color);border-bottom:none;border-radius:12px 12px 0 0;box-shadow:0 -4px 10px #0000001f}.partition-editor-body.settings-collapsed .partition-settings{transform:none;max-height:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;border-bottom:none}.partition-editor-body.settings-collapsed .toggle-panel-btn{left:50%;bottom:0;transform:translate(-50%);border-left:1px solid var(--secondary-color)}}@media(pointer:coarse){.toggle-panel-btn{min-width:44px}}@media(pointer:coarse)and (max-width:799px){.toggle-panel-btn{height:44px}}.partition-settings h4{margin-top:0;color:var(--highlight-color);border-bottom:1px solid var(--secondary-color);padding-bottom:.5rem}.partition-settings-group{background-color:var(--bg-color);border-radius:12px;padding:1rem;border:1px solid var(--secondary-color);display:flex;flex-direction:column;gap:.8rem}#partition-editor-modal{--part-card-border: rgba(34, 211, 238, .5);--part-card-bg: rgba(34, 211, 238, .055)}[data-theme=light] #partition-editor-modal{--part-card-border: rgba(92, 203, 95, .65);--part-card-bg: rgba(92, 203, 95, .07)}.part-sec{display:flex;flex-direction:column}.part-sec-chip{display:flex;align-items:center;gap:.45rem;width:100%;min-height:38px;padding:0 .8rem;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.22);color:var(--text-color);font-family:var(--font-family);cursor:pointer;text-align:left;transition:background .15s ease,border-color .15s ease,border-radius .15s ease}.part-sec-chip:hover{background:#ffffff1f}[data-theme=light] .part-sec-chip{border-color:#00000040;background:#0000000a}[data-theme=light] .part-sec-chip:hover{background:#00000017}.part-sec-chip .sec-ico{font-size:.95rem;line-height:1}.part-sec-chip .sec-txt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-color);opacity:.85;line-height:1.15}.part-sec-chip .sec-caret{margin-left:auto;font-size:.7rem;line-height:1;opacity:.7;transition:transform .18s ease}.part-sec-chip.sec-collapsed .sec-caret{transform:rotate(-90deg)}.part-sec:not(.sec-open) .part-sec-panel{display:none}.part-sec.sec-open .part-sec-chip{background:var(--part-card-bg);border-color:var(--part-card-border);border-bottom-color:transparent;border-radius:12px 12px 0 0}[data-theme=light] .part-sec.sec-open .part-sec-chip{background:var(--part-card-bg);border-color:var(--part-card-border);border-bottom-color:transparent}.part-sec.sec-open .part-sec-panel{background-color:var(--part-card-bg);border:1px solid var(--part-card-border);border-top:none;border-radius:0 0 12px 12px;animation:part-sec-reveal .22s ease}@keyframes part-sec-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.part-sec.sec-open .part-sec-panel{animation:none}}@media(pointer:coarse){.part-sec-chip{min-height:44px}}.settings-section-title{margin:0;font-size:.9rem;color:var(--highlight-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.2rem}.setting-row{display:flex;justify-content:space-between;align-items:center}.setting-row .label-group{display:flex;align-items:center;gap:.8rem}.setting-sub-row{margin-left:.5rem;margin-top:-.2rem;margin-bottom:.5rem}.setting-sub-row.help-text{font-style:italic;font-size:.8em;opacity:.7;margin-top:-.5rem;margin-bottom:.5rem}.setting-label{font-size:.95rem}.label-bold{font-weight:600}.partition-settings .material-select{width:auto!important;min-width:140px}#partition-editor-modal.mode-song #btn-export-batch,#partition-editor-modal.mode-song .export-separator,#partition-editor-modal.mode-song #row-handpan-notes-toggle,#partition-editor-modal.mode-song #row-diagrams-toggle,#partition-editor-modal.mode-song #part-opt-frames,#partition-editor-modal.mode-song #section-diagram-appearance,#partition-editor-modal.mode-song #part-opt-diagram-numbers,#partition-editor-modal.mode-song #part-opt-secondary-notes{display:none!important}#partition-editor-modal.mode-song .pill-group label:has(#part-opt-frames),#partition-editor-modal.mode-song .pill-group label:has(#part-opt-single-line-diagrams),#partition-editor-modal.mode-song .pill-group label:has(#part-opt-secondary-notes),#partition-editor-modal.mode-song .pill-group label:has(#part-opt-diagram-numbers){display:none!important}#partition-editor-modal.mode-song #legend-notes-option,#partition-editor-modal.mode-usersong #row-handpan-notes-toggle,#partition-editor-modal.mode-usersong #row-diagrams-toggle,#partition-editor-modal.mode-usersong #pill-single-line,#partition-editor-modal.mode-usersong #legend-notes-option{display:none!important}#partition-editor-modal.mode-instrument .part-sec[data-psec=diagrams],#partition-editor-modal.mode-instrument .part-sec[data-psec=legend]{display:none}.pill-group{display:flex;flex-wrap:wrap;gap:8px;width:100%}.pill-checkbox{cursor:pointer;user-select:none;flex:1 0 45%;min-width:100px}.pill-checkbox input{display:none}.pill-label{display:flex;justify-content:center;align-items:center;padding:.5rem .2rem;background-color:var(--primary-color);border:1px solid var(--secondary-color);border-radius:8px;font-size:.8rem;transition:all .2s ease;color:var(--text-color);text-align:center;width:100%}.pill-checkbox input:checked+.pill-label{background-color:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color);font-weight:600}.legend-control-bar{display:flex;align-items:stretch;background-color:var(--secondary-color);border-radius:16px;padding:2px;border:1px solid var(--highlight-color);flex-wrap:wrap}.legend-control-bar.centered{width:fit-content;margin:0 auto}.legend-btn{background:transparent;border:none;color:var(--text-color);padding:.5rem .6rem;font-size:.8rem;cursor:pointer;border-radius:14px;font-family:var(--font-family);transition:background-color .2s,color .2s;white-space:nowrap;flex:1;display:flex;align-items:center;justify-content:center;gap:.2rem}.legend-btn:hover{background-color:#ffffff1a}.legend-btn.active{background-color:var(--highlight-color);color:var(--primary-color);font-weight:600}.theme-toggle-btn{cursor:pointer;display:block;width:100%}.theme-toggle-btn input{display:none}.theme-toggle-content{background-color:var(--primary-color);border:2px solid var(--secondary-color);border-radius:12px;padding:.75rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.theme-toggle-content .icon{font-size:1.5rem}.theme-toggle-content .label{font-weight:600}.theme-toggle-btn input:checked+.theme-toggle-content{border-color:#22c55e;background-color:#22c55e1a}.partition-actions{margin-top:0}.export-buttons-grid{display:flex;flex-direction:column;gap:0}.export-separator{width:100%;height:1px;background-color:var(--secondary-color);margin:.5rem 0;opacity:.5}.view-mode-switch{display:flex;gap:.25rem;padding:.25rem;background-color:var(--secondary-color);border-radius:12px;width:100%}.view-mode-btn{flex:1;padding:.75rem .5rem;background-color:transparent;border:none;color:var(--text-color);font-family:var(--font-family);font-size:.85rem;border-radius:10px;cursor:pointer;transition:background-color .2s,color .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;position:relative;min-height:70px}.export-buttons-grid .view-mode-btn{flex-direction:row;justify-content:flex-start;padding-left:1rem;min-height:50px;background-color:var(--primary-color);border:1px solid transparent}.export-buttons-grid .view-mode-btn:hover{background-color:var(--secondary-color);border-color:var(--highlight-color)}.view-mode-btn svg{width:24px;height:24px;fill:currentColor;flex-shrink:0;opacity:.8}.view-mode-btn span{text-align:center;font-size:.8rem}.view-mode-btn.active{background-color:var(--highlight-color);color:var(--primary-color);font-weight:600}#part-section-layout .view-mode-btn{flex-direction:row;padding:.5rem;min-height:40px}#part-section-layout .view-mode-btn svg{width:18px;height:18px}.partition-preview-container{flex:1;background-color:#333;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:flex-grow .3s ease-in-out;min-width:0}.partition-scroll-area{flex:1;width:100%;height:100%;overflow:auto;display:block;padding:2rem;box-sizing:border-box}#partition-preview-wrapper{transform-origin:top center}#partition-scroll-frame{margin:0 auto;flex-shrink:0;position:relative;background-color:transparent;transition:width .2s,height .2s;display:flex;width:fit-content;flex-direction:column;gap:2rem}.zoom-controls{position:absolute;bottom:1rem;right:1rem;z-index:50;display:flex;flex-direction:column;align-items:center;gap:.3rem;background-color:#0009;padding:.5rem;border-radius:12px;backdrop-filter:blur(5px)}#zoom-level-text{color:#fff;font-size:.8rem;font-weight:600}.zoom-buttons-row{display:flex;gap:.5rem}.zoom-controls .icon-btn{background-color:var(--secondary-color);border:none}.partition-paper{background-color:var(--bg-color);width:210mm;height:297mm;box-shadow:0 0 20px #00000080;padding:10mm;box-sizing:border-box;transition:background-color .3s ease,color .3s ease;display:flex;flex-direction:column;color:var(--text-color);flex-shrink:0;transform-origin:top left;margin:0;overflow:hidden;position:relative}.partition-paper.sequence-mode{width:297mm!important;height:210mm!important}.partition-paper.song-page{height:auto;min-height:auto}.partition-paper.song-page .song-sheet-columns{height:auto;flex:0 0 auto}.partition-header{width:100%;text-align:center;margin-bottom:1rem}.partition-title{font-size:2.2rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;line-height:1.2;cursor:text}.partition-title:hover,.partition-author:hover{background-color:#ffffff1a;border-radius:4px}.partition-author{font-size:1.2rem;opacity:.8;margin-top:.2rem;font-style:italic;cursor:text}.partition-meter{display:inline-block;margin-top:.35rem;padding:1px 10px;font-size:.95rem;font-weight:700;letter-spacing:1px;line-height:1.3;opacity:.85;border:1px solid currentColor;border-radius:999px}.theme-eco .partition-meter{color:#000;opacity:.75}.partition-paper.mode-complete{display:flex;flex-direction:column}.partition-paper.mode-complete .partition-main-handpan{flex:0 1 45%!important;min-height:200px;margin-bottom:1rem}.partition-paper.mode-complete .partition-sequence-grid{flex:1 1 auto;height:auto!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;align-content:center!important;justify-content:center!important;gap:10px;margin-top:0}.partition-paper.mode-complete .partition-sequence-grid .partition-sequence-item{width:calc(25% - 10px)!important;max-width:calc(25% - 10px)!important;height:auto!important;aspect-ratio:auto!important;align-self:flex-start;justify-content:flex-start;flex:0 0 auto;gap:1px!important;padding:3px!important;break-inside:avoid;page-break-inside:avoid}.partition-paper.mode-complete .partition-sequence-item .mini-handpan-svg-container{width:100%;flex:0 0 auto;overflow:visible}.partition-paper.mode-complete .partition-sequence-item .mini-handpan-svg{width:100%;height:auto;max-height:none}.partition-paper.mode-complete .partition-sequence-item .partition-chord-item{margin:0;line-height:1.05}.partition-paper.mode-complete .partition-sequence-item .partition-chord-name{font-size:.9em;line-height:1.1}.partition-paper.mode-complete .partition-sequence-item .partition-chord-notes{font-size:.72em;opacity:.85}.partition-paper.mode-complete .partition-sequence-grid:not(.layout-7-items):has(.partition-sequence-item:nth-child(-n+3):last-child) .partition-sequence-item{width:calc(33.333% - 10px)!important;max-width:calc(33.333% - 10px)!important}.partition-paper.mode-complete .partition-sequence-grid.diagrams-single-line{flex-wrap:nowrap!important}.partition-paper.mode-complete .partition-sequence-grid.diagrams-single-line .partition-sequence-item{width:auto!important;max-width:none!important;flex:1 1 0px}.partition-main-handpan{flex:1;width:100%;display:flex;justify-content:center;align-items:center;min-height:0}.partition-main-handpan svg{max-width:100%;max-height:100%;height:auto;width:auto}.partition-main-handpan.notes-hidden .note-text{display:none!important}.partition-sequence-grid{display:flex;flex-wrap:wrap;justify-content:center;align-content:center;gap:4px;width:100%;height:100%;min-height:0;margin:0;padding:0}.partition-sequence-grid.hide-notes .note-text,.partition-sequence-grid.hide-notes .note-text-bg{display:none!important}.partition-sequence-item{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;box-sizing:border-box;border-radius:16px;padding:2px;transition:all .2s;width:auto;height:auto;flex-grow:0;flex-shrink:0;overflow:hidden}.partition-paper:not(.sequence-mode) .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item{width:calc(50% - 2px);height:calc(33.333% - 3px)}.partition-paper.sequence-mode .partition-sequence-grid.layout-7-items:not(.diagrams-single-line) .partition-sequence-item{width:calc(25% - 3px)!important;height:38%!important;max-height:none;flex-grow:0}.partition-paper:not(.sequence-mode) .partition-sequence-grid.layout-7-items:not(.diagrams-single-line) .partition-sequence-item{width:calc(50% - 2px)!important;height:calc(25% - 3px)!important;max-height:none;flex-grow:0}.partition-paper .partition-sequence-grid.layout-7-items{align-content:center;justify-content:center}.partition-paper.sequence-mode .partition-sequence-grid:not(.diagrams-single-line):not(.layout-7-items) .partition-sequence-item{width:calc(33.333% - 3px);height:calc(50% - 2px)}.partition-sequence-grid.diagrams-single-line{display:flex;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;height:auto!important;flex:0 0 auto;margin:auto 0;gap:4px}.diagrams-single-line .partition-sequence-item,.partition-paper.sequence-mode .diagrams-single-line .partition-sequence-item{width:auto;height:auto;flex:1 1 120px;min-width:100px;max-width:450px;aspect-ratio:1/1;padding:2px}.partition-paper.sequence-mode .diagrams-single-line{min-height:70%;align-items:center!important}.partition-paper.sequence-mode .diagrams-single-line .partition-sequence-item{max-height:90%;aspect-ratio:1 / 1;height:auto!important}.mini-handpan-svg.material-white .note-group.ghost-note .note-circle-base,.theme-eco .mini-handpan-svg .note-group.ghost-note .note-circle-base{stroke:#0000008c;stroke-width:3px}.partition-main-handpan.unplayed-empty .note-circle-base{stroke:#0009!important;stroke-width:2.5px!important}.mini-handpan-svg-container{width:100%;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0;overflow:hidden}.mini-handpan-svg{width:100%;height:100%;max-width:100%;max-height:100%;aspect-ratio:1/1;display:block;background-color:transparent;overflow:visible}.mini-handpan-svg .note-group.label-order .note-text-bg,.theme-eco .mini-handpan-svg .note-group.label-order.active-note .note-text-bg{fill:#fff}.mini-handpan-svg .note-group.label-order.active-note .note-text,.theme-eco .mini-handpan-svg .note-group.label-order.active-note .note-text{fill:#222b3a;stroke:none;font-weight:800;text-shadow:none}.mini-handpan-svg .note-group.label-order.active-note.hand-left .note-text,.theme-eco .mini-handpan-svg .note-group.label-order.active-note.hand-left .note-text{fill:var(--hand-color-left)}.mini-handpan-svg .note-group.label-order.active-note.hand-right .note-text,.theme-eco .mini-handpan-svg .note-group.label-order.active-note.hand-right .note-text{fill:var(--hand-color-right)}.partition-chord-name{display:block;width:100%;text-align:center;font-weight:700}.partition-chord-name[contenteditable]:hover{background-color:#ffffff1a;border-radius:4px;cursor:text}.partition-chord-item.emotion-layout .partition-chord-name{text-align:center!important;display:flex;justify-content:center;align-items:center}.partition-chord-inv{display:block;width:100%;text-align:center;margin-top:.1rem;font-size:.62em;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#c9a227;opacity:.9}.theme-eco .partition-chord-inv{color:#6b6b6b}.partition-chord-notes{font-size:.8em;margin-top:.2rem;display:block;color:#fff;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.partition-footer{margin-top:auto;padding-top:1rem;flex-shrink:0;width:100%;text-align:center;font-size:.8rem;opacity:.7}.partition-footer-logo{display:inline-block;width:1.25em;height:1.25em;vertical-align:-.32em;margin-left:.5em;opacity:.9}.partition-title,.partition-author{white-space:pre-line}.partition-paper.legend-hidden .song-chord-label,.partition-paper.legend-hidden .song-chord-degree-caption,.partition-paper.legend-hidden .usersong-chord-label{display:none!important}.song-sheet-wrapper{width:100%;padding:0;flex:1;min-height:0}.song-sheet-columns{display:flex;flex-direction:row;align-items:flex-start;gap:2rem;width:100%;flex:1}.song-sheet-columns.cols-1{display:block}.song-col{flex:1 1 0;min-width:0}.song-sheet-columns.cols-2 .song-col+.song-col{border-left:1px solid rgba(255,255,255,.1);padding-left:1rem}.theme-eco .song-sheet-columns.cols-2 .song-col+.song-col{border-left:1px solid rgba(0,0,0,.1)}.song-section{break-inside:avoid;page-break-inside:avoid;margin-bottom:1.4rem}.song-section:last-child{margin-bottom:0}.song-section--chorus,.song-section--intro,.song-section--outro,.song-section--bridge{border-radius:6px;padding:2px 6px 2px 10px}.song-section--chorus{background:#7f7f7f1a;border-left:3px solid var(--highlight-color, #E0A458)}.song-section--intro,.song-section--outro,.song-section--bridge{border-left:2px solid rgba(127,127,127,.38)}.song-section--chorus>.song-section-header{border-bottom-color:transparent}.theme-eco .song-section--chorus{background:#0000000d;border-left:3px solid rgba(0,0,0,.55)}.theme-eco .song-section--intro,.theme-eco .song-section--outro,.theme-eco .song-section--bridge{border-left:2px solid rgba(0,0,0,.3)}.song-section-header{font-weight:800;text-transform:uppercase;color:var(--highlight-color);margin-bottom:.2rem;margin-top:-.2rem;font-size:.9rem;letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:2px;break-after:avoid}.theme-eco .song-section-header{color:#000;border-bottom:1px solid rgba(0,0,0,.35)}.song-line{position:relative;padding-top:66px;padding-left:28px;padding-right:5px;margin-bottom:.45rem;break-inside:avoid;white-space:nowrap;line-height:1.3}#partition-printable-area .song-lyrics-line{cursor:text}.song-lyrics-line{display:inline-block;font-size:.95rem;font-weight:500;white-space:pre;color:var(--text-color)}.theme-eco .song-lyrics-line{color:#000}.song-line--pending,.song-section-header--pending{display:none}body.is-admin .song-line--pending,body.is-admin .song-section-header--pending{display:block;opacity:.55}#pupitre-overlay .song-line--pending,#pupitre-overlay .song-section-header--pending{display:none}body.is-admin .song-line--pending .song-lyrics-line{border-bottom:1px dashed rgba(255,255,255,.35);min-width:220px}.theme-eco .song-line--pending .song-lyrics-line{border-bottom-color:#00000059}body.is-admin .song-section-header--pending .song-section-label{font-style:italic}body.is-admin .song-section-header--pending .song-section-label:after{content:" · squelette à compléter";text-transform:none;letter-spacing:normal;font-weight:600;font-size:.78em}.song-pending-note{position:absolute;left:28px;bottom:-.15rem;font-size:.72rem;font-style:italic;font-weight:500;color:#e0e1dd8c;pointer-events:none;white-space:nowrap}.theme-eco .song-pending-note{color:#00000073}.song-segment{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;margin-right:4px;vertical-align:bottom;white-space:nowrap;min-width:20px}.song-chord-diagram{position:absolute;top:0;left:0;transform:translate(-50%);width:45px;height:45px;display:flex;flex-direction:column;align-items:center;transition:left .05s ease-out;cursor:grab}.song-chord-diagram:active,.song-chord-diagram.is-dragging{cursor:grabbing}.chord-shifter-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100%;display:flex;justify-content:space-between;align-items:center;opacity:0;transition:opacity .2s ease;z-index:20;pointer-events:none}.song-chord-diagram:hover .chord-shifter-overlay{opacity:1;pointer-events:auto}.song-chord-diagram.is-dragging .chord-shifter-overlay{opacity:.2;pointer-events:none}.drag-zone{font-size:1.2rem;cursor:grab;pointer-events:auto}.shift-btn{background-color:var(--highlight-color);color:var(--primary-color);border:none;border-radius:50%;width:20px;height:20px;font-size:10px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #00000080;transition:transform .1s;z-index:30;pointer-events:auto}.shift-btn:hover{transform:scale(1.2)}.shift-btn:active{transform:scale(.9)}.theme-eco .shift-btn{background-color:#000;color:#fff}.song-chord-label{font-size:.85rem;font-weight:800;text-align:center;color:var(--highlight-color);z-index:2;position:relative;text-shadow:0 1px 2px rgba(0,0,0,.8);white-space:nowrap;margin-top:2px;padding-bottom:0}.song-chord-inv{font-size:.62em;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#c9a227;opacity:.9;display:block;line-height:1.1}.theme-eco .song-chord-inv{color:#6b6b6b}.song-chord-label[contenteditable]:hover{background-color:#ffffff1a;border-radius:4px;cursor:text}.song-lyrics{font-size:.95rem;font-weight:500;white-space:pre;color:var(--text-color);line-height:1.2}.song-repeat-badge{position:absolute;top:-7px;right:-9px;min-width:18px;height:18px;padding:0 4px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:800;line-height:1;color:#fff;background:var(--highlight-color, #4ade80);border:1.5px solid #fff;border-radius:999px;box-shadow:0 1px 3px #00000073;cursor:pointer;z-index:35;pointer-events:auto;user-select:none;transition:opacity .15s ease,transform .1s ease}.song-repeat-badge:hover{transform:scale(1.15)}.song-repeat-badge:active{transform:scale(.92)}.theme-eco .song-repeat-badge{background:#000;color:#fff;border-color:#fff}.song-repeat-badge.is-default{opacity:0}.song-chord-diagram:hover .song-repeat-badge.is-default{opacity:.55}.song-chord-diagram.song-chord-cramped{transform:translate(-50%) scale(.8)}#song-word-highlight{position:fixed;display:none;pointer-events:none;z-index:3300;border-radius:4px;background:#4ade8038;box-shadow:0 0 0 1.5px var(--highlight-color, #4ade80) inset;transition:left .05s ease-out,top .05s ease-out,width .05s ease-out}.song-chord-diagram{transition:left .05s ease-out,transform .15s ease}.song-chord-diagram.playing{z-index:40}.song-chord-diagram.playing svg.mini-handpan-svg{transform:scale(1.14);filter:drop-shadow(0 0 7px var(--highlight-color, #4ade80));transition:transform .12s ease,filter .12s ease}.theme-eco .song-chord-diagram.playing svg.mini-handpan-svg{filter:drop-shadow(0 0 5px rgba(0,0,0,.85))}.song-player-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;width:100%;margin:0 0 6px;padding:6px 10px;box-sizing:border-box;background:#0d1b2a8c;border:1px solid rgba(255,255,255,.12);border-radius:12px}.song-player-bar #song-player-playpause:hover,.song-player-bar #song-player-stop:hover{background:#ffffff2e}.song-player-bar .segment-btn.active{background:var(--highlight-color, #4ade80);color:#07131f}.song-player-caption{font-size:.76rem;font-weight:700;opacity:.85;white-space:nowrap}.song-player-bar{column-gap:var(--sp-2);row-gap:var(--sp-2);border-radius:var(--r-md)}.song-player-bar>.song-player-caption{order:0}.song-player-bar>label:nth-of-type(2){order:1}.song-player-bar>.song-player-attack{order:2}.song-player-bar>.song-player-debit{order:3}.song-player-bar>.hps-drawer{order:9;flex:1 1 100%;margin-top:2px}.song-player-bar>label:nth-of-type(1){order:4}.song-player-bar>#song-player-stop{order:5}.song-player-bar>#song-player-playpause{order:6;margin-left:auto}.song-player-bar>label,.song-player-bar .segmented-control{min-height:var(--h-control);box-sizing:border-box;align-items:center}.song-player-bar .segment-btn{height:auto;align-self:stretch}.song-player-bar>#song-player-stop{width:var(--h-control)!important;height:var(--h-control)!important}.song-player-bar>#song-player-playpause{width:var(--h-transport)!important;height:var(--h-transport)!important;font-size:1.15rem!important}.song-player-bar.in-top-bar>#song-player-playpause{width:var(--h-control)!important;height:var(--h-control)!important}.song-player-bar.in-top-bar{width:auto;margin:0 0 0 auto;flex-wrap:nowrap;gap:7px;padding:4px 8px;background:#60a5fa1a;border-color:#60a5fa59;border-radius:10px}.song-player-bar.in-top-bar .song-player-caption{display:none}@media(max-width:1100px){.song-player-bar.in-top-bar{margin-left:0;flex-wrap:wrap}}@media print{.song-player-bar,.song-repeat-badge.is-default{display:none!important}}.song-scale-warning{display:flex;align-items:flex-start;gap:8px;width:100%;max-width:794px;box-sizing:border-box;margin:0 0 8px;padding:8px 12px;background:#eab3081f;border:1px solid rgba(234,179,8,.45);border-radius:10px;color:#e0e1dd;font-size:.8rem;line-height:1.4;text-align:left}.song-scale-warning .ssw-icon{font-size:.95rem;line-height:1.3;flex:0 0 auto}.song-scale-warning .ssw-text{flex:1 1 auto}.song-scale-warning strong{color:#fbbf24;font-weight:700}@media print{.song-scale-warning{display:none!important}}#song-word-highlight.is-free-position{background:var(--highlight-color, #4ade80);box-shadow:none;border-radius:1px;opacity:.9}.song-chord-diagram.is-dragging{opacity:.72;z-index:60;transform:translateY(-4px) scale(1.12);filter:drop-shadow(0 8px 16px rgba(0,0,0,.5));cursor:grabbing;transition:transform .08s ease}.song-chord-diagram.is-dragging .mini-handpan-svg{outline:2px solid var(--highlight-color, #4ade80);outline-offset:2px;border-radius:50%}.song-chord-diagram.is-dragging:after{content:"✋ déplacement";position:absolute;top:-20px;left:50%;transform:translate(-50%);background:var(--highlight-color, #4ade80);color:#07131f;font-size:.62rem;font-weight:800;letter-spacing:.2px;padding:2px 7px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px #0006;pointer-events:none;z-index:61}.hide-diagram-notes .song-chord-diagram .note-group:not(.label-order) .note-text{display:none!important}.hide-diagram-notes .song-chord-diagram .mini-handpan-svg{transform:scale(1.18);transform-origin:center center}.hide-diagram-notes .usersong-chord .note-group:not(.label-order) .note-text{display:none!important}.theme-eco .song-lyrics{color:#000}.theme-eco .song-chord-label{text-shadow:none;font-weight:800}.partition-paper{background-color:var(--bg-color);color:var(--text-color)}.theme-eco.partition-paper{background-color:#fff!important;color:#000!important}.theme-eco .partition-chord-item .partition-chord-notes{color:#000;text-shadow:none}.theme-eco .mini-handpan-svg.show-texture.material-black .handpan-body{fill:url(#grad-black)}.theme-eco .mini-handpan-svg.show-texture.material-metal .handpan-body{fill:url(#grad-metal)}.theme-eco .mini-handpan-svg.show-texture.material-walnut .handpan-body{fill:url(#grad-walnut)}.theme-eco .mini-handpan-svg.show-texture.material-beech .handpan-body{fill:url(#grad-beech)}.theme-eco .mini-handpan-svg.show-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.theme-eco .mini-handpan-svg.show-texture.material-neotone .handpan-body,.theme-eco .mini-handpan-svg.show-texture.material-white .handpan-body{fill:#fff;stroke:#000}@media print{body>*{display:none!important}#partition-editor-modal{display:block!important;position:absolute!important;top:0!important;left:0!important;width:100%!important;height:auto!important;background:none!important;padding:0!important;overflow:visible!important;visibility:visible!important}.song-page{margin:0!important;box-shadow:none!important;page-break-after:always;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important}.partition-paper{box-shadow:none!important;margin:0!important;padding:0!important;width:210mm!important;height:297mm!important;max-width:none!important;max-height:none!important;background-color:#0d1b2a!important;color:#e0e1dd!important;page-break-after:always;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.partition-paper:last-child{page-break-after:auto}.chord-shifter-overlay{display:none!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background-color:inherit!important;color:inherit!important}html,body{background-color:#0d1b2a!important;color:#e0e1dd!important}}@media(pointer:coarse){.song-chord-diagram{touch-action:none}.chord-shifter-overlay{opacity:1;pointer-events:auto}.song-chord-diagram.is-dragging .chord-shifter-overlay{opacity:.2;pointer-events:none}.shift-btn{width:32px;height:32px;font-size:14px}}#partition-editor-modal.mode-chordgrid #part-section-content,#partition-editor-modal.mode-chordgrid .part-sec[data-psec=style],#partition-editor-modal.mode-chordgrid .part-sec[data-psec=content],#partition-editor-modal.mode-chordgrid .part-sec[data-psec=diagrams],#partition-editor-modal.mode-chordgrid .part-sec[data-psec=legend],#partition-editor-modal.mode-chordgrid #part-section-layout .layout-title-row,#partition-editor-modal.mode-chordgrid #row-unplayed-style{display:none}.partition-chordgrid-loading{padding:3rem 2rem;text-align:center;opacity:.7;font-weight:600}.partition-paper.partition-chordgrid{height:auto;min-height:297mm;overflow:visible}.partition-paper.partition-chordgrid.sequence-mode{height:auto;min-height:210mm}.partition-chordgrid-pan{width:78mm;max-width:60%;margin:2mm auto 6mm}.partition-chordgrid-pan .acoustic-print-pan{display:block;width:100%;height:auto}.partition-chordgrid-pan .ppan-body{fill:#f4f4f4;stroke:#444;stroke-width:5}.partition-chordgrid-pan .ppan-note{stroke:#333;stroke-width:4}.partition-chordgrid-pan .ppan-ding{stroke:#111;stroke-width:7}.partition-chordgrid-pan .ppan-label{fill:#fff;font-weight:800;font-family:var(--font-family, sans-serif);paint-order:stroke;stroke:#000000d9;stroke-width:5px;stroke-linejoin:round}.partition-chordgrid-sections{display:flex;flex-direction:column;gap:6mm}.partition-chordgrid .acoustic-grid-group{break-inside:avoid;page-break-inside:avoid}.partition-chordgrid .acoustic-col-head{color:#222;opacity:1;border-bottom:1px solid #cfcfcf;font-size:.82rem}.partition-chordgrid .acoustic-group-count{color:#777}.partition-chordgrid .acoustic-grid-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:.5rem}.partition-chordgrid .acoustic-chip{background:#f5f5f8;border:1px solid #e2e2ea;color:#111;cursor:default}.partition-chordgrid .acoustic-chip:hover{transform:none;border-color:#e2e2ea}.partition-chordgrid .acoustic-chip-name{color:#111}.partition-chordgrid .mini-handpan-svg.outline-white .note-group.ghost-note .note-circle-base,.partition-chordgrid .mini-handpan-svg.outline-black .note-group.ghost-note .note-circle-base,.partition-chordgrid .mini-handpan-svg .note-group.ghost-note .note-circle-base{fill:#fff!important;stroke:#0009!important;stroke-width:3px!important}.partition-chordgrid .mini-handpan-svg.outline-white .note-group.active-note .note-circle-base,.partition-chordgrid .mini-handpan-svg .note-group.active-note .note-circle-base{stroke:#000!important;stroke-width:4px!important}#partition-appearance-toolbar{display:none;flex-wrap:wrap;align-items:center;gap:.4rem 1.1rem;padding:.5rem 1rem;border-bottom:1px solid var(--secondary-color, rgba(255, 255, 255, .12));background:#ffffff08}#partition-editor-modal.mode-song #partition-appearance-toolbar{display:flex}#partition-appearance-toolbar .appearance-toolbar-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin-right:.2rem}#partition-editor-modal.mode-chordgrid #partition-appearance-toolbar{display:none}@media print{#partition-appearance-toolbar{display:none!important}}.diagram-size-m .song-chord-diagram{width:56px;height:56px}.diagram-size-m .song-line{padding-top:82px;line-height:1.35}.diagram-size-m .song-chord-label{font-size:1.05rem}.diagram-size-l .song-chord-diagram{width:68px;height:68px}.diagram-size-l .song-line{padding-top:100px;line-height:1.4}.diagram-size-l .song-chord-label{font-size:1.28rem}.diagram-size-l .song-lyrics-line{font-size:1.02rem}.diagram-size-xl .song-chord-diagram{width:81px;height:81px}.diagram-size-xl .song-line{padding-top:118px;line-height:1.45}.diagram-size-xl .song-chord-label{font-size:1.5rem}.diagram-size-xl .song-lyrics-line{font-size:1.1rem}.diagram-size-m .partition-chord-name{font-size:1.15em}.diagram-size-l .partition-chord-name{font-size:1.35em}.diagram-size-xl .partition-chord-name{font-size:1.6em}.diagram-size-m .partition-chord-notes{font-size:.95em}.diagram-size-l .partition-chord-notes{font-size:1.1em}.diagram-size-xl .partition-chord-notes{font-size:1.25em}#partition-printable-area,#partition-printable-area.diagram-size-s{--diag-mini-w: 150px}#partition-printable-area.diagram-size-m{--diag-mini-w: 188px}#partition-printable-area.diagram-size-l{--diag-mini-w: 225px}#partition-printable-area.diagram-size-xl{--diag-mini-w: 270px}#partition-printable-area .partition-paper.mode-sequence .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item,#partition-printable-area .partition-paper.mode-complete .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item{width:auto!important;max-width:none!important;height:auto!important;aspect-ratio:auto!important;flex:0 0 auto!important;align-self:center!important}#partition-printable-area .partition-paper.mode-sequence .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item .mini-handpan-svg-container,#partition-printable-area .partition-paper.mode-complete .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item .mini-handpan-svg-container{width:var(--diag-mini-w)!important;flex:0 0 auto!important;overflow:visible}#partition-printable-area .partition-paper.mode-sequence .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item .mini-handpan-svg,#partition-printable-area .partition-paper.mode-complete .partition-sequence-grid:not(.diagrams-single-line) .partition-sequence-item .mini-handpan-svg{width:var(--diag-mini-w)!important;height:auto!important;max-height:none!important}.song-chord-memo-page{padding:2.2rem 2rem}.song-memo-title{font-size:1.4rem;font-weight:800;text-align:center;color:var(--highlight-color);margin:0 0 1.2rem;letter-spacing:.5px}.theme-eco .song-memo-title{color:#000}.song-memo-section{margin-bottom:1.4rem;break-inside:avoid}.song-memo-section-title{font-weight:800;text-transform:uppercase;font-size:.95rem;letter-spacing:1px;color:var(--highlight-color);border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:3px;margin:0 0 .7rem}.theme-eco .song-memo-section-title{color:#000;border-bottom-color:#000}.song-memo-grid{display:flex;flex-wrap:wrap;gap:.8rem 1rem;align-items:flex-end}.song-memo-item{display:flex;flex-direction:column;align-items:center;width:74px}.song-memo-svg{width:64px;height:64px}.song-memo-svg .mini-handpan-svg{width:100%;height:100%}.song-memo-label{font-size:.9rem;font-weight:800;text-align:center;margin-top:.2rem}.song-memo-rep{color:var(--highlight-color);font-weight:800}.theme-eco .song-memo-rep{color:#000}.diagram-size-l .song-memo-svg{width:84px;height:84px}.diagram-size-l .song-memo-item{width:94px}.diagram-size-xl .song-memo-svg{width:98px;height:98px}.diagram-size-xl .song-memo-item{width:108px}.partition-paper.mode-usersong .usersong-body{flex:1 1 auto;min-height:0}.partition-paper.mode-usersong .usersong-part{break-inside:avoid;page-break-inside:avoid}.partition-paper.mode-usersong .usersong-chord .mini-handpan-svg{width:100%;height:auto}.theme-eco.mode-usersong{color:#000}.pupitre-btn{display:flex;align-items:center;gap:.45rem;background:linear-gradient(135deg,#0e7490,#22d3ee);color:#fff!important;border:1px solid rgba(255,255,255,.35);box-shadow:0 0 10px #22d3ee59;font-weight:700}.pupitre-btn:hover{filter:brightness(1.12)}.pupitre-overlay{display:none;position:fixed;inset:0;z-index:4000;background:#05080e}.pupitre-overlay.pupitre-visible{display:block}.pupitre-overlay.pupitre-eco{background:#d9d9d3}.pupitre-scroll{position:absolute;inset:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-x pan-y;padding:10px 0 40px}.pupitre-sizer{margin:0 auto}.pupitre-canvas{transform-origin:0 0;overflow:hidden}.pupitre-overlay #partition-printable-area{pointer-events:none}.pupitre-overlay .partition-paper{box-shadow:none!important;margin:0 auto 14px!important}.pupitre-overlay .chord-shifter-overlay,.pupitre-overlay .line-indent-handle,.pupitre-overlay .line-order-handle,.pupitre-overlay .song-line-add-chord,.pupitre-overlay .song-line-delete,.pupitre-overlay .song-player-bar,.pupitre-overlay #song-order-insert-marker,.pupitre-overlay #partition-contrib-bar,.pupitre-overlay .reorg-controls,.pupitre-overlay #partition-reorg-bar,.pupitre-overlay .song-repeat-badge.is-default{display:none!important}.pupitre-overlay #partition-printable-area.is-reorganizing .song-line,.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header{outline:none!important}.pupitre-overlay #partition-printable-area.is-reorganizing .song-line{padding-right:5px!important}.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header{padding-right:0!important}.pupitre-overlay #partition-printable-area.is-reorganizing .reorg-editable,.pupitre-overlay #partition-printable-area.is-reorganizing .reorg-editable:hover,.pupitre-overlay #partition-printable-area.is-reorganizing .reorg-editable:focus{background:none!important;outline:none!important}.pupitre-overlay #partition-printable-area.is-reorganizing .reorg-empty-line .song-lyrics-line:after{content:none!important}.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header.reorg-page-break,.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header.reorg-col-break{box-shadow:none!important}.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header.reorg-page-break:before,.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header.reorg-col-break:before,.pupitre-overlay #partition-printable-area.is-reorganizing .song-section-header.reorg-full-width:after{content:none!important}.pupitre-overlay .song-line.reorg-drop-target,.pupitre-overlay .song-section-header.reorg-drop-target{outline:none!important}.pupitre-overlay .song-line.reorg-dragging,.pupitre-overlay .song-section-header.reorg-dragging{opacity:1!important}.pupitre-overlay .song-col>.song-section+.song-section{background-image:linear-gradient(to right,#fff0,#ffffff38 12% 88%,#fff0);background-repeat:no-repeat;background-size:100% 1px;background-position:left top}.pupitre-overlay .theme-eco .song-col>.song-section+.song-section{background-image:linear-gradient(to right,#0000,#00000038 12% 88%,#0000)}.pupitre-close{position:fixed;top:calc(10px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:#0a0f198c;color:#fff;font-size:1.15rem;line-height:1;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .35s ease;opacity:.9}.pupitre-overlay.pupitre-eco .pupitre-close{background:#ffffffb3;color:#1b263b;border-color:#00000040}.pupitre-overlay.pupitre-ui-hidden .pupitre-close{opacity:0;pointer-events:none}body.pupitre-open{overflow:hidden}#row-song-tonic.is-key-missing{border-radius:8px;padding:4px 6px;background:#f59e0b1a;box-shadow:inset 0 0 0 1px #f59e0b66}#row-song-tonic-hint{line-height:1.35;opacity:.8}.partition-reorg-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;width:100%;flex:0 0 auto;box-sizing:border-box;margin:0;padding:7px 12px;background:#0a0f19d1;border-bottom:1px solid rgba(255,255,255,.12);position:relative;z-index:60}body.pupitre-open #partition-reorg-bar{display:none!important}.partition-preview-container>.partition-reorg-bar~.partition-scroll-area{height:auto;min-height:0}@media(max-width:900px){.partition-reorg-bar{padding:5px 8px;gap:6px}.partition-reorg-bar .reorg-hint{display:none}}.partition-reorg-bar .reorg-btn{background:#ffffff14;color:var(--text-color, #E0E1DD);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:5px 12px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.partition-reorg-bar .reorg-btn:hover:not(:disabled){background:#ffffff29}.partition-reorg-bar .reorg-btn-history{font-size:1rem;line-height:1;padding:4px 11px;min-width:34px}.partition-reorg-bar .reorg-btn:disabled{opacity:.3;cursor:default;pointer-events:none}.partition-reorg-bar .reorg-btn-main.active{background:var(--highlight-color, #4ade80);border-color:transparent;color:#07131f}.partition-reorg-bar .reorg-btn-reset{color:#fca5a5;border-color:#f8717180;background:#f871711f}.partition-reorg-bar .reorg-btn-reset:hover{background:#f8717138}.partition-reorg-bar .reorg-hint{font-size:.72rem;opacity:.65;max-width:46ch;line-height:1.25}.partition-reorg-bar .reorg-cols{display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 9px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d}.partition-reorg-bar .reorg-cols-label{font-size:.72rem;font-weight:600;opacity:.75;white-space:nowrap}.partition-reorg-bar .reorg-cols-btn{background:transparent;color:var(--text-color, #E0E1DD);border:1px solid transparent;border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:700;line-height:1.35;cursor:pointer}.partition-reorg-bar .reorg-cols-btn:hover{background:#ffffff24}.partition-reorg-bar .reorg-cols-btn.is-on{background:var(--highlight-color, #4ade80);border-color:transparent;color:#07131f}.partition-reorg-bar .reorg-badge{display:inline-flex;align-items:center;gap:5px;background:#60a5fa26;color:#93c5fd;border:1px solid rgba(96,165,250,.45);border-radius:999px;padding:4px 11px;font-size:.74rem;font-weight:700}#partition-printable-area.is-reorganizing .song-line,#partition-printable-area.is-reorganizing .song-section-header{outline:1px dashed rgba(96,165,250,.35);outline-offset:2px}#partition-printable-area.is-reorganizing .song-line{padding-right:128px}#partition-printable-area.is-reorganizing .song-section-header{padding-right:172px;position:relative}#partition-printable-area.is-reorganizing .reorg-empty-line .song-lyrics-line:after{content:"(ligne vide)";font-style:italic;opacity:.4;font-size:.8rem}#partition-printable-area.is-reorganizing .reorg-editable{cursor:text;border-radius:4px;padding:1px 3px;transition:background .15s ease}#partition-printable-area.is-reorganizing .reorg-editable:hover{background:#60a5fa1f}#partition-printable-area.is-reorganizing .reorg-editable:focus{outline:2px solid var(--highlight-color, #4ade80);background:#00000040}.theme-eco #partition-printable-area.is-reorganizing .reorg-editable:focus{background:#0000000f}.reorg-controls{position:absolute;top:2px;right:2px;display:flex;align-items:center;gap:2px;z-index:18;background:#0a0f19b8;border:1px solid rgba(255,255,255,.16);border-radius:7px;padding:1px 3px;opacity:.45;transition:opacity .15s ease}.song-line:hover>.reorg-controls,.song-section-header:hover>.reorg-controls,.reorg-controls:focus-within{opacity:1}.theme-eco .reorg-controls{background:#ffffffe6;border-color:#0003}.reorg-controls .reorg-grip{cursor:grab;font-size:.8rem;line-height:1;padding:2px 3px;opacity:.75;color:#93c5fd;touch-action:none}.reorg-controls .reorg-grip:active{cursor:grabbing}.reorg-controls .reorg-act{background:transparent;border:none;color:var(--text-color, #E0E1DD);font-size:.72rem;line-height:1;padding:3px 4px;border-radius:4px;cursor:pointer;font-weight:700}.theme-eco .reorg-controls .reorg-act{color:#1b263b}.reorg-controls .reorg-act:hover:not(:disabled){background:#ffffff2e}.theme-eco .reorg-controls .reorg-act:hover:not(:disabled){background:#0000001a}.reorg-controls .reorg-act:disabled{opacity:.25;cursor:default}.reorg-controls .reorg-act[data-reorg=del]:hover:not(:disabled){background:#f871714d}.reorg-controls .reorg-act[data-reorg=pagebreak],.reorg-controls .reorg-act[data-reorg=colbreak],.reorg-controls .reorg-act[data-reorg=fullwidth]{color:#93c5fd;padding:3px}.theme-eco .reorg-controls .reorg-act[data-reorg=pagebreak],.theme-eco .reorg-controls .reorg-act[data-reorg=colbreak],.theme-eco .reorg-controls .reorg-act[data-reorg=fullwidth]{color:#1d4ed8}.reorg-controls .reorg-act[data-reorg=shift-left],.reorg-controls .reorg-act[data-reorg=shift-right]{color:#93c5fd;padding:3px 2px;font-size:.62rem}.theme-eco .reorg-controls .reorg-act[data-reorg=shift-left],.theme-eco .reorg-controls .reorg-act[data-reorg=shift-right]{color:#1d4ed8}.reorg-controls .reorg-act.is-on{background:var(--highlight-color, #4ade80);color:#07131f}.theme-eco .reorg-controls .reorg-act.is-on{color:#07131f}.reorg-controls .reorg-act.is-on:hover:not(:disabled){background:var(--highlight-color, #4ade80)}#partition-printable-area.is-reorganizing .song-section-header.reorg-page-break:before{content:"⤓ nouvelle page";position:absolute;top:-12px;left:0;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:none;white-space:nowrap;color:var(--highlight-color, #4ade80);opacity:.95;pointer-events:none}#partition-printable-area.is-reorganizing .song-section-header.reorg-page-break{box-shadow:inset 0 2px 0 -1px #4ade80cc}#partition-printable-area.is-reorganizing .song-section-header.reorg-col-break:not(.reorg-page-break):before{content:"⤵ colonne suivante";position:absolute;top:-12px;left:0;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:none;white-space:nowrap;color:#93c5fd;opacity:.95;pointer-events:none}#partition-printable-area.is-reorganizing .song-section-header.reorg-col-break:not(.reorg-page-break){box-shadow:inset 0 2px 0 -1px #93c5fdd9}#partition-printable-area.is-reorganizing .song-section-header.reorg-full-width:after{content:"↔ pleine largeur";position:absolute;top:-12px;right:0;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:none;white-space:nowrap;color:#93c5fd;opacity:.95;pointer-events:none}#partition-printable-area.is-reorganizing .theme-eco .song-section-header.reorg-col-break:not(.reorg-page-break):before,#partition-printable-area.is-reorganizing .theme-eco .song-section-header.reorg-full-width:after{color:#1d4ed8}@media(max-width:900px){.reorg-controls{opacity:1}.reorg-controls .reorg-act{padding:7px 8px;font-size:.8rem}.reorg-controls .reorg-act[data-reorg=pagebreak],.reorg-controls .reorg-act[data-reorg=colbreak],.reorg-controls .reorg-act[data-reorg=fullwidth],.reorg-controls .reorg-act[data-reorg=shift-left],.reorg-controls .reorg-act[data-reorg=shift-right]{padding:7px 5px;font-size:.72rem}.reorg-controls .reorg-grip{padding:7px 5px}}.song-line.reorg-dragging,.song-section-header.reorg-dragging{opacity:.4}.song-line.reorg-drop-target,.song-section-header.reorg-drop-target{outline:2px solid var(--highlight-color, #4ade80)!important;outline-offset:2px}.reorg-word-picker{position:fixed;z-index:3200;background:linear-gradient(160deg,#12233a,#0b1626);color:#e0e1dd;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:.65rem .7rem;box-shadow:0 12px 40px #0000008c;max-width:min(360px,90vw)}.reorg-word-picker .rwp-title{font-size:.76rem;font-weight:700;opacity:.75;margin-bottom:.45rem}.reorg-word-picker .rwp-words{display:flex;flex-wrap:wrap;gap:5px;max-height:40vh;overflow-y:auto}.reorg-word-picker .rwp-word{background:#ffffff14;color:#e0e1dd;border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:4px 9px;font-size:.8rem;cursor:pointer;white-space:nowrap}.reorg-word-picker .rwp-word:hover{background:#ffffff2e}.reorg-word-picker .rwp-word.is-current{background:var(--highlight-color, #4ade80);color:#07131f;border-color:transparent;font-weight:700}.reorg-word-picker .rwp-actions{display:flex;justify-content:flex-end;margin-top:.55rem}.reorg-word-picker .rwp-cancel{background:#ffffff14;color:#e0e1dd;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:4px 10px;font-size:.78rem;cursor:pointer}@media print{.reorg-controls,#partition-reorg-bar,#reorg-word-picker{display:none!important}#partition-printable-area.is-reorganizing .song-line,#partition-printable-area.is-reorganizing .song-section-header{outline:none!important}#partition-printable-area.is-reorganizing .reorg-empty-line .song-lyrics-line:after{content:none!important}#partition-printable-area.is-reorganizing .song-section-header.reorg-page-break,#partition-printable-area.is-reorganizing .song-section-header.reorg-col-break{box-shadow:none!important}#partition-printable-area.is-reorganizing .song-section-header.reorg-page-break:before,#partition-printable-area.is-reorganizing .song-section-header.reorg-col-break:before,#partition-printable-area.is-reorganizing .song-section-header.reorg-full-width:after{content:none!important}}.nf-overlay.melodyed-overlay{z-index:9600}.nf-modal.melodyed-modal{width:96vw;max-width:100%;height:92vh;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:14px 16px 10px;position:relative;--melodyed-ctl-h: 34px;--melodyed-ctl-w: 40px}.melodyed-modal:before{content:"";position:absolute;inset:0;background:radial-gradient(1200px 400px at 20% -10%,rgba(129,140,248,.16),transparent 60%),radial-gradient(900px 380px at 90% 0%,rgba(217,70,239,.12),transparent 60%);pointer-events:none;z-index:0}.melodyed-modal>*{position:relative;z-index:1}.melodyed-modal>.nf-close.melodyed-close{z-index:5}.melodyed-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-right:40px;flex:0 0 auto}.melodyed-logo{font-size:1.4rem;filter:drop-shadow(0 2px 6px rgba(129,140,248,.5))}.melodyed-title{flex:1;min-width:120px;font-size:1.05rem;font-weight:700;padding:7px 12px;border-radius:12px;border:1px solid rgba(128,128,128,.28);background:#80808014;color:inherit}.melodyed-side{flex:0 0 clamp(200px,16vw,300px);min-width:200px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding-right:2px}.melodyed-sideblock{display:flex;flex-direction:column;gap:5px}.melodyed-blocktitle{margin:0;font-size:var(--fs-micro, .7rem);font-weight:700;letter-spacing:.11em;text-transform:uppercase;opacity:.5}.melodyed-instrument-name{font-weight:700;font-size:.92rem;padding:6px 10px;border-radius:var(--r-sm, 8px);background:#818cf81f;border:1px solid rgba(129,140,248,.28)}.melodyed-instrument-name.melodyed-instrument-foreign{background:#f973161f;border-color:#f973166b}[data-theme=light] .melodyed-instrument-name{background:#6d28d914;border-color:#6d28d93d}.melodyed-mellist{display:flex;flex-direction:column;gap:2px}.melodyed-melitem{text-align:left;padding:5px 9px;border:1px solid transparent;border-radius:var(--r-sm, 8px);background:transparent;color:inherit;font:inherit;font-size:.8rem;cursor:pointer;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s ease,opacity .12s ease}.melodyed-melitem:hover{background:var(--hps-ctl-bg-hover);opacity:1}.melodyed-melitem.active{background:#818cf829;border-color:#818cf859;opacity:1;font-weight:700}.melodyed-pan{flex:0 0 auto;display:flex;justify-content:center}.melodyed-pan-svg{width:min(100%,220px);height:auto}.melodyed-pan-bg{fill:#171017;stroke:#d4b06247;stroke-width:4}.melodyed-pan-note .hps-pan-note-shape{transition:filter .12s ease,transform .12s ease;transform-box:fill-box;transform-origin:center}.melodyed-pan-note:hover .hps-pan-note-shape{filter:brightness(1.18) drop-shadow(0 0 10px currentColor)}.melodyed-pan-note:active .hps-pan-note-shape{transform:scale(.92)}@keyframes melodyed-flash{0%{filter:brightness(2.1) drop-shadow(0 0 22px #fff)}to{filter:brightness(1) drop-shadow(0 0 0 transparent)}}.melodyed-pan-note .hps-pan-note-shape.flash{animation:melodyed-flash .55s ease-out}@keyframes melodyed-panripple{0%{transform:scale(.55);opacity:.85}to{transform:scale(2.1);opacity:0}}.melodyed-pan-ripple{transform-box:fill-box;transform-origin:center;animation:melodyed-panripple .62s cubic-bezier(.15,.7,.35,1) forwards;mix-blend-mode:screen}@media(prefers-reduced-motion:reduce){.melodyed-pan-ripple{display:none;animation:none}}.melodyed-transport{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:7px 10px;border-radius:var(--r-md, 12px);background:linear-gradient(180deg,#ffffff0d,#8080800d);border:1px solid rgba(128,128,128,.18);flex:0 0 auto}.melodyed-tgroup{display:flex;align-items:center;gap:6px}.melodyed-spacer{flex:1 1 auto}.melodyed-lbl{font-size:.7rem;font-weight:700;opacity:.7;text-transform:uppercase;letter-spacing:.04em}.melodyed-transport .melodyed-home,.melodyed-transport .melodyed-stop,.melodyed-transport .melodyed-rec,.melodyed-transport .melodyed-loop{border-radius:var(--r-pill, 999px);padding:0}.melodyed-play{min-height:var(--h-transport);min-width:var(--h-transport);border-radius:var(--r-pill, 999px)}.melodyed-lcd{flex:0 0 auto}.melodyed-lcd .melodyed-lcd-sig,.melodyed-lcd .melodyed-lcd-measure{font-weight:700;font-size:.95rem;min-width:30px;text-align:center;color:var(--hps-accent)}.melodyed-lcd .hps-lcd-field{flex-direction:column;align-items:center;gap:0}.melodyed-lcd .hps-lcd-cap{line-height:1.5}.melodyed-views .melodyed-btn{padding:0 10px;font-size:.8rem}.melodyed-views .melodyed-viewfocus{min-width:var(--melodyed-ctl-w, 40px)}.melodyed-title{box-sizing:border-box;min-height:var(--h-control)}.melodyed-save,.melodyed-open,.melodyed-home,.melodyed-play,.melodyed-stop,.melodyed-rec,.melodyed-loop,.melodyed-tool,.melodyed-undo,.melodyed-redo,.melodyed-zoomout,.melodyed-zoomin,.rain-play,.rain-restart,.rain-loop{min-width:var(--melodyed-ctl-w, 40px)}.melodyed-home,.melodyed-play,.melodyed-stop,.melodyed-rec,.melodyed-loop{font-size:1rem}.melodyed-play{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));color:#fff;border-color:transparent;box-shadow:0 4px 14px #818cf866}.melodyed-play:hover{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));filter:brightness(1.08)}.melodyed-rec{color:#ef4444}@keyframes melodyed-recpulse{0%,to{box-shadow:0 0 #ef44448c}50%{box-shadow:0 0 0 7px #ef444400}}.melodyed-rec.active{background:linear-gradient(135deg,#ef4444,#b91c1c);color:#fff;border-color:transparent;animation:melodyed-recpulse 1.1s ease-out infinite}.melodyed-tool.active{background:linear-gradient(135deg,#6366f1,#0ea5e9);box-shadow:0 3px 10px #0ea5e959}.melodyed-zoom-label{min-width:44px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:.82rem;opacity:.85}.melodyed-bpm-label{font-variant-numeric:tabular-nums;font-weight:700;min-width:30px}.melodyed-pulse{display:flex;justify-content:center;flex:0 0 auto}.melodyed-pulse .pulse-bar{transform:scale(.85);transform-origin:top center}.pulse-bar{display:flex;align-items:center;gap:18px;padding:8px 20px;border-radius:16px;background:#80808014;border:1px solid rgba(128,128,128,.16)}.pulse-center{display:flex;flex-direction:column;align-items:center;gap:6px}.pulse-pendulum-wrap{width:70px;height:26px;display:flex;justify-content:center;align-items:flex-start}.pulse-pendulum{width:3px;height:24px;border-radius:3px;background:linear-gradient(#d946ef,#818cf8);transform-origin:top center;transition:transform .05s linear}.pulse-pendulum:after{content:"";position:relative;display:block;width:11px;height:11px;border-radius:50%;background:#818cf8;margin-left:-4px;margin-top:20px;box-shadow:0 0 8px #818cf8b3}.pulse-dots{display:flex;gap:9px}.pulse-dot{width:15px;height:15px;border-radius:50%;background:#80808040;border:1px solid rgba(128,128,128,.4);transition:transform .08s ease,background .08s ease,box-shadow .08s ease}.pulse-dot-group-start{margin-left:10px}.pulse-dot.active{background:#818cf8;transform:scale(1.35);box-shadow:0 0 12px #818cf8e6}.pulse-dot-one.active{background:#f97316;box-shadow:0 0 12px #f97316e6}.pulse-dot-one{border-color:#f9731699}.pulse-foot{font-size:1.5rem;opacity:.3;transition:opacity .08s ease,filter .08s ease,transform .08s ease;--foot-color: #3B82F6}.pulse-foot-right{transform:scaleX(-1)}.pulse-foot.active{opacity:1;filter:drop-shadow(0 0 8px var(--foot-color));transform:scale(1.15)}.pulse-foot-right.active{transform:scaleX(-1) scale(1.15)}.melodyed-main{flex:1 1 auto;display:flex;gap:12px;min-height:0}.melodyed-inspector{flex:0 0 clamp(190px,15vw,240px);min-width:190px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding-left:2px}.melodyed-inspblock{display:flex;flex-direction:column;gap:7px}.melodyed-inspblock .melodyed-colortoggle,.melodyed-inspblock .melodyed-notation{width:100%}.melodyed-inspblock .melodyed-seg{flex:1 1 auto;min-width:0}.melodyed-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-label, .78rem)}.melodyed-field>span{opacity:.8}.melodyed-field select,.melodyed-field input[type=range]{flex:0 1 116px;min-width:0}.melodyed-field input[type=range]{accent-color:var(--hps-accent)}.melodyed-field .hps-segbar-auto{flex:0 1 140px;min-width:0}.melodyed-field .hps-segbar-auto .hps-seg{padding:0 6px}.melodyed-inspector .melodyed-check{white-space:normal;align-items:flex-start;line-height:1.35;padding:2px 0}.melodyed-inspector .melodyed-check input{margin-top:2px;flex:0 0 auto}.melodyed-selempty{margin:0;font-size:.76rem;opacity:.55;line-height:1.45}.melodyed-selfields{display:flex;flex-direction:column;gap:7px}.melodyed-selfields[hidden]{display:none}.melodyed-selfields .melodyed-btn{width:100%}.melodyed-seldel{color:#ef4444}.melodyed-modal.melodyed-no-side .melodyed-side,.melodyed-modal.melodyed-no-insp .melodyed-inspector,.melodyed-modal.melodyed-no-drum .melodyed-drummerhost,body.niveau-decouverte .melodyed-inspector,body.niveau-decouverte .melodyed-views .melodyed-viewinsp{display:none}body:not(.niveau-musicien) .melodyed-musicien{display:none}.melodyed-floattools,.melodyed-zoomer{position:absolute;bottom:12px;z-index:6;background:#0d0a18e0;border:1px solid rgba(128,128,128,.28);border-radius:var(--r-md, 12px);backdrop-filter:blur(8px);box-shadow:0 6px 20px #00000073}.melodyed-floattools{left:12px;padding:3px;gap:3px}.melodyed-zoomer{right:12px;display:flex;align-items:center;gap:4px;padding:3px 6px}.melodyed-zoomer .melodyed-btn{min-height:28px;min-width:30px;padding:0 6px}[data-theme=light] .melodyed-floattools,[data-theme=light] .melodyed-zoomer{background:#ffffffeb}.melodyed-workspace{flex:1 1 auto;min-width:0;display:flex;position:relative;border-radius:14px;overflow:hidden;border:1px solid rgba(128,128,128,.18);background:#14101a59}.melodyed-rowlabels{flex:0 0 62px;overflow:hidden;background:#8080800f;border-right:1px solid rgba(128,128,128,.2)}.melodyed-rowlabel{display:flex;align-items:center;padding-left:8px;font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;box-sizing:border-box;border-bottom:1px solid rgba(128,128,128,.1)}.melodyed-gridscroll{flex:1 1 auto;overflow:auto;position:relative}.melodyed-grid{position:relative}.melodyed-gridscroll.tool-pencil .melodyed-notes{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><path d='M3 21l1-5L16 4l4 4L8 20l-5 1z' fill='%23fbbf24' stroke='%23222' stroke-width='1.4'/></svg>") 2 22,crosshair}.melodyed-gridscroll.tool-eraser .melodyed-notes,.melodyed-gridscroll.tool-eraser .melodyed-pastille{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><rect x='4' y='10' width='14' height='9' rx='2' transform='rotate(-25 11 14)' fill='%23f472b6' stroke='%23222' stroke-width='1.4'/></svg>") 10 14,cell}.melodyed-gridscroll.tool-select .melodyed-notes{cursor:default}.melodyed-gridscroll.tool-pencil .melodyed-pastille{cursor:grab}.melodyed-bands{position:absolute;top:0;left:0;z-index:0}.melodyed-band{position:absolute;left:0}.melodyed-band-a{background:#ffffff04}.melodyed-band-b{background:#ffffff0b}.melodyed-vline{position:absolute;top:0;width:1px}.melodyed-vline.sub{background:#8080801f}.melodyed-vline.beat{background:#80808047}.melodyed-vline.measure{background:#818cf880;width:2px}.melodyed-ruler{position:absolute;top:0;left:0;height:30px;z-index:3;border-bottom:1px solid rgba(128,128,128,.25);background:#8080801a;cursor:crosshair}.melodyed-gline{position:absolute;bottom:0;width:1px;height:8px}.melodyed-gline.sub{background:#8080804d}.melodyed-gline.beat{background:#8080808c;height:12px}.melodyed-gline.measure{background:#818cf8cc;height:30px;width:2px}.melodyed-measurenum{position:absolute;top:3px;font-size:.7rem;font-weight:700;opacity:.8}.melodyed-loopregion{position:absolute;top:0;height:30px;background:#d946ef38;border-left:2px solid #d946ef;border-right:2px solid #d946ef}.melodyed-notes{position:absolute;left:0;z-index:2}.melodyed-pastille{position:absolute;border-radius:7px;box-shadow:0 2px 8px #00000059,inset 0 0 0 1.5px #ffffff80;display:flex;align-items:center;justify-content:center;cursor:grab;box-sizing:border-box;touch-action:none;transition:box-shadow .12s ease,filter .12s ease}.melodyed-pastille:hover{filter:brightness(1.12);box-shadow:0 3px 14px #00000080,inset 0 0 0 1.5px #fffc}.melodyed-pastille.dragging{cursor:grabbing;filter:brightness(1.2);z-index:5}.melodyed-pastille.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #818cf8d9,0 3px 14px #00000080;z-index:3}.melodyed-pastille-label{font-size:.72rem;font-weight:800;color:#fff;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden}.melodyed-pastille-resize{position:absolute;right:0;top:0;width:10px;height:100%;cursor:ew-resize;border-radius:0 7px 7px 0}.melodyed-pastille-resize:hover{background:#ffffff4d}.melodyed-playhead{position:absolute;top:0;left:0;width:2px;z-index:4;background:#fff;box-shadow:0 0 10px #ffffffe6;pointer-events:none}.melodyed-count{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;font-size:clamp(4rem,16vh,9rem);font-weight:900;color:#fff;text-shadow:0 0 34px rgba(129,140,248,.95),0 4px 12px rgba(0,0,0,.6);background:#0a081261;backdrop-filter:blur(2px);pointer-events:none;font-variant-numeric:tabular-nums}.melodyed-count.rec{color:#fecaca;text-shadow:0 0 34px rgba(239,68,68,.95),0 4px 12px rgba(0,0,0,.6)}.melodyed-hint{font-size:.74rem;opacity:.65;margin:2px 0 0;line-height:1.45}.melodyed-chooser-back{position:absolute;inset:0;z-index:20;background:#00000073;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.melodyed-chooser{width:min(460px,90%);max-height:76%;overflow:auto;background:var(--primary-color, #201a2b);color:inherit;border-radius:16px;padding:18px;border:1px solid rgba(128,128,128,.3);box-shadow:0 20px 60px #00000080}.melodyed-chooser h3{margin:0 0 12px}.melodyed-chooser-list{display:flex;flex-direction:column;gap:6px}.melodyed-chooser-item{display:flex;gap:6px}.melodyed-chooser-pick{flex:1;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid rgba(128,128,128,.25);background:#80808014;color:inherit;font:inherit;cursor:pointer}.melodyed-chooser-pick:hover{background:#818cf833}.melodyed-chooser-del{padding:0 12px;border-radius:10px;border:1px solid rgba(239,68,68,.4);background:#ef44441f;cursor:pointer;color:inherit}.melodyed-chooser-cancel{margin-top:14px;width:100%;padding:9px;border-radius:10px;border:1px solid rgba(128,128,128,.25);background:#80808014;color:inherit;font:inherit;cursor:pointer}.melodyed-scaledialog{width:min(430px,92%)}.melodyed-scaledialog-body{margin:0 0 16px;font-size:.86rem;line-height:1.55;opacity:.88}.melodyed-scaledialog-actions{display:flex;flex-direction:column;gap:8px}.melodyed-scaledialog-actions .melodyed-btn{width:100%}.melodyed-scaledialog-load{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));color:#fff;border-color:transparent}.melodyed-scaledialog-load:hover{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));filter:brightness(1.08)}.melodyed-toast{position:absolute;bottom:54px;left:50%;transform:translate(-50%) translateY(20px);padding:10px 18px;border-radius:12px;z-index:30;background:linear-gradient(135deg,#818cf8,#d946ef);color:#fff;font-weight:700;box-shadow:0 8px 24px #0006;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;max-width:min(560px,90%);text-align:center}.melodyed-toast.show{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:1100px){.melodyed-side{flex:0 0 clamp(180px,22vw,210px);min-width:180px}.melodyed-inspector{flex:0 0 clamp(174px,19vw,200px);min-width:174px}}@media(max-width:920px){.nf-modal.melodyed-modal{padding:10px 10px 8px;gap:6px}.melodyed-main{flex-direction:column}.melodyed-side,.melodyed-inspector{flex:0 0 auto;flex-direction:row;flex-wrap:wrap;align-items:flex-start;overflow:visible;gap:8px 14px;padding-left:0}.melodyed-sideblock,.melodyed-inspblock{flex:1 1 200px}.melodyed-pan{flex:0 0 auto}.melodyed-pan-svg{width:110px}.melodyed-pulse{display:none}.melodyed-hint{flex:1 1 100%;margin:0}.melodyed-workspace{min-height:240px}.melodyed-side,.melodyed-inspector{max-height:40vh;overflow-y:auto}.melodyed-spacer{display:none}.melodyed-views{margin-left:auto}.melodyed-lcd{order:3;flex:1 1 100%;justify-content:center}}@media(max-width:480px){.melodyed-floattools{left:8px;bottom:8px}.melodyed-zoomer{right:8px;bottom:8px}.melodyed-zoomer .melodyed-zoom-label{min-width:34px;font-size:.74rem}.melodyed-views .melodyed-btn{padding:0 7px;font-size:.74rem}.melodyed-header .melodyed-title{flex:1 1 100%;order:-1}}.melodyed-viewseg{flex:0 1 auto;margin-left:auto}.melodyed-rain{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.rain-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 10px;border-radius:14px;background:#80808014;border:1px solid rgba(128,128,128,.18)}.rain-cgroup{display:flex;align-items:center;gap:6px}.rain-lbl{font-size:.72rem;font-weight:700;opacity:.7;text-transform:uppercase;letter-spacing:.04em}.rain-play{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));color:#fff;border-color:transparent;box-shadow:0 4px 14px #818cf866}.rain-play:hover{background:linear-gradient(135deg,var(--hps-accent),var(--hps-accent-2));filter:brightness(1.08)}.rain-bpm,.rain-tilt,.rain-rot{accent-color:var(--hps-accent)}.rain-bpm{width:100px}.rain-tilt,.rain-rot{width:90px}.rain-bpm-label{font-variant-numeric:tabular-nums;font-weight:700;min-width:28px}.rain-pulse{display:flex;justify-content:center;flex:0 0 auto}.rain-scene{position:relative;flex:1 1 auto;min-height:340px;overflow:hidden;border-radius:16px;border:1px solid rgba(129,140,248,.22);background:radial-gradient(120% 80% at 50% 110%,rgba(99,102,241,.22),transparent 60%),radial-gradient(90% 60% at 50% -10%,rgba(14,165,233,.14),transparent 55%),linear-gradient(180deg,#0b0a1a,#120f22 55%,#0a0912)}.rain-stage{position:absolute;inset:0;transform-style:preserve-3d}.rain-beats,.rain-fall{position:absolute;inset:0;pointer-events:none}.rain-fall>*{pointer-events:none}.rain-pan{position:absolute;pointer-events:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.55))}.rain-sky{position:absolute;inset:0;pointer-events:none;display:none}.rain-root.rain-v2-on .rain-sky{display:block}.rain-root.rain-v2-on .rain-beats,.rain-root.rain-v2-on .rain-fall{display:none}.rain-root.rain-v2-on .rain-pan{transform-origin:center center}.rain-cgroup.rain-disabled{opacity:.38;pointer-events:none}.rain-root.rain-v2-on .rain-scene{background:radial-gradient(120% 80% at 50% 108%,rgba(99,102,241,.16),transparent 62%),linear-gradient(180deg,#04050d,#0b0f24 58%,#05060f)}@media(prefers-reduced-motion:reduce){.rain-root.rain-v2-on .rain-pan{transform:none!important}}.rain-pan-svg{width:100%;height:100%;overflow:visible}.rain-pan-bg{fill:#171017;stroke:#d4b0624d;stroke-width:4}.rain-pan-note{transition:filter .12s ease}.rain-pan-note:hover{filter:brightness(1.18) drop-shadow(0 0 10px currentColor)}@keyframes rain-panflash{0%{filter:brightness(2.2) drop-shadow(0 0 26px #fff)}to{filter:brightness(1) drop-shadow(0 0 0 transparent)}}.rain-pan-note.flash{animation:rain-panflash .6s ease-out}.rain-beatline{position:absolute;left:6%;right:6%;top:0;height:2px;background:#94a3ff47;will-change:transform,opacity}.rain-beatline.measure{background:#818cf8b3;height:3px;box-shadow:0 0 10px #818cf880}.rain-loopveil{position:absolute;top:6px;right:10px;font-size:1rem;opacity:.7}.rain-note{position:absolute;top:0;left:0;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #ffffff8c inset,0 6px 16px #0006;will-change:transform,opacity;--rain-color: #888;--rain-halo: 0}.rain-note>span{font-size:.72rem;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7);pointer-events:none}.rain-note:before{content:"";position:absolute;left:50%;bottom:50%;transform:translate(-50%);width:16px;height:130px;border-radius:8px;background:linear-gradient(to top,var(--rain-color),transparent);opacity:.38;filter:blur(3px);z-index:-1}.rain-note.rain-hand-left{box-shadow:0 0 0 3px #3b82f6,0 0 0 2px #ffffff80 inset,0 6px 16px #0006}.rain-note.rain-hand-right{box-shadow:0 0 0 3px #ef4444,0 0 0 2px #ffffff80 inset,0 6px 16px #0006}.rain-note-halo{position:absolute;inset:0;border-radius:50%;pointer-events:none;box-shadow:0 0 24px 8px var(--rain-color);opacity:calc(var(--rain-halo) * .85);transform:scale(calc(1 + var(--rain-halo) * .9))}.rain-ripple{position:absolute;width:var(--rain-ripple-size,120px);height:var(--rain-ripple-size,120px);margin-left:calc(var(--rain-ripple-size,120px) / -2);margin-top:calc(var(--rain-ripple-size,120px) / -2);border-radius:50%;border:2px solid rgba(255,255,255,.85);pointer-events:none;animation:rain-ripple .65s ease-out forwards}@keyframes rain-ripple{0%{transform:scale(.2);opacity:.9}to{transform:scale(1.15);opacity:0}}.rain-feedback{position:absolute;top:14px;left:50%;transform:translate(-50%) translateY(-8px);padding:6px 16px;border-radius:20px;font-weight:800;font-size:.95rem;background:#00000059;color:#fff;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.rain-feedback.show{opacity:1;transform:translate(-50%) translateY(0)}.rain-feedback.perfect{color:#a7f3d0;text-shadow:0 0 12px rgba(16,185,129,.8)}.rain-feedback.good{color:#bfdbfe}.rain-feedback.early{color:#fde68a}.rain-feedback.late{color:#fecaca}.rain-feedback.wrong{color:#e9d5ff}.rain-feedback.rain-recap{font-size:1rem;padding:8px 20px;background:#00000080}[data-theme=light] .rain-scene{background:radial-gradient(120% 80% at 50% 110%,rgba(99,102,241,.16),transparent 60%),linear-gradient(180deg,#eef1fb,#e6e9f7 55%,#dfe3f2);border-color:#6366f14d}[data-theme=light] .rain-pan-bg{fill:#2a2233}[data-theme=light] .rain-beatline{background:#4f46e547}[data-theme=light] .rain-note>span{color:#fff}[data-theme=light] .melodyed-pan-bg{fill:#2a2233}[data-theme=light] .melodyed-workspace{background:#f5f3fab3}[data-theme=light] .melodyed-band-a{background:#00000003}[data-theme=light] .melodyed-band-b{background:#0000000a}[data-theme=light] .melodyed-vline.sub{background:#00000014}[data-theme=light] .melodyed-vline.beat{background:#0000002e}[data-theme=light] .melodyed-playhead{background:#6d28d9;box-shadow:0 0 10px #6d28d9b3}[data-theme=light] .melodyed-count{background:#f0eefa6b;color:#4c1d95;text-shadow:0 0 30px rgba(129,140,248,.7)}[data-theme=light] .melodyed-count.rec{color:#b91c1c;text-shadow:0 0 30px rgba(239,68,68,.6)}[data-theme=light] .melodyed-chooser{background:#fff}#handpan-container{position:relative;flex:0 0 auto;min-width:0;width:65%;max-width:480px;aspect-ratio:1 / 1;border-radius:50%;transition:margin-top .3s cubic-bezier(.4,0,.2,1);margin-left:auto;margin-right:auto}#handpan-container svg{width:100%;height:100%;display:block;overflow:visible}body.pan-tilt-on #handpan-container>svg.handpan-svg{transform:perspective(var(--pan-tilt-perspective, 1400px)) rotateX(var(--pan-tilt-angle, 0deg));transform-origin:50% 50%;transition:transform .35s cubic-bezier(.4,0,.2,1)}@media(prefers-reduced-motion:reduce){body.pan-tilt-on #handpan-container>svg.handpan-svg{transition:none}}#pan3d-view-block .pan3d-suspended-note{display:block;margin-top:4px;font-size:.62rem;line-height:1.3;opacity:.75;text-align:center}#pan3d-view-block .pan3d-suspended-note[hidden]{display:none}.partition-main-handpan [data-p3d-t],.partition-main-handpan [data-p3d-lt]{transform:none!important}.partition-main-handpan [data-p3d-el]{display:none!important}.partition-main-handpan [data-p3d-hid]{opacity:1!important}#handpan-container svg{width:100%;height:100%}#handpan-resize-handle{position:absolute;top:50%;right:-35px;left:auto;width:44px;height:44px;margin-top:-22px;margin-left:0;border-radius:50%;background-color:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:ew-resize;z-index:100;font-size:1.2rem;opacity:.6;transition:opacity .2s,background-color .2s;user-select:none;box-shadow:0 4px 10px #0000004d}#handpan-resize-handle:hover,#handpan-resize-handle:active{opacity:1;background-color:#ffffff4d}[data-theme=light] #handpan-resize-handle{color:#000;border-color:#0000004d}@media(pointer:coarse){#handpan-resize-handle{display:none!important}}.handpan-body{filter:drop-shadow(5px 10px 10px rgba(0,0,0,.5))}#handpan-container .handpan-body,.partition-main-handpan .handpan-body{stroke:var(--current-outline-color);stroke-width:2px}[data-theme=light] #handpan-container .handpan-body{stroke:#000}#handpan-container .note-circle-base,.partition-main-handpan .note-circle-base{fill:var(--note-default-fill);stroke:var(--secondary-color);stroke-width:2px;transition:fill .3s ease,filter .2s ease,stroke .2s,stroke-width .2s}body.app-acoustic #handpan-container .note-circle-base{stroke-width:1.1px}#handpan-container.material-black .note-circle-base,#handpan-container.material-metal .note-circle-base,#handpan-container.material-walnut .note-circle-base,#handpan-container.material-beech .note-circle-base,#handpan-container.material-oak .note-circle-base,#handpan-container.material-real-metal .note-circle-base,#handpan-container.material-metal-realistic .note-circle-base,#handpan-container.material-neotone-walnut .note-circle-base,#handpan-container.material-metal-new .note-circle-base,#handpan-container.material-hetre-new .note-circle-base,#handpan-container.material-noyer-new .note-circle-base,.partition-main-handpan.material-black .note-circle-base,.partition-main-handpan.material-metal .note-circle-base,.partition-main-handpan.material-walnut .note-circle-base,.partition-main-handpan.material-beech .note-circle-base,.partition-main-handpan.material-oak .note-circle-base,.partition-main-handpan.material-real-metal .note-circle-base,.partition-main-handpan.material-metal-realistic .note-circle-base,.partition-main-handpan.material-neotone-walnut .note-circle-base,.partition-main-handpan.material-metal-new .note-circle-base,.partition-main-handpan.material-hetre-new .note-circle-base,.partition-main-handpan.material-noyer-new .note-circle-base{stroke:#fff;stroke-width:2px}#handpan-container.material-black .note-circle-base,.partition-main-handpan.material-black .note-circle-base{stroke-width:2.5px}#handpan-container.material-white .note-circle-base,.partition-main-handpan.material-white .note-circle-base{stroke:#1a1a1a;stroke-width:2px}#handpan-container.outline-black .note-circle-base,.partition-main-handpan.outline-black .note-circle-base,.mini-handpan-svg.outline-black .note-circle-base{stroke:#000!important}#handpan-container.outline-white .note-circle-base,.partition-main-handpan.outline-white .note-circle-base,.mini-handpan-svg.outline-white .note-circle-base{stroke:#fff!important}#handpan-container.outline-gold .note-circle-base,.partition-main-handpan.outline-gold .note-circle-base,.mini-handpan-svg.outline-gold .note-circle-base{stroke:var(--gold-color)!important}#handpan-container.colors-disabled.material-metal .note-circle-base,#handpan-container.colors-disabled.material-walnut .note-circle-base,#handpan-container.colors-disabled.material-beech .note-circle-base,#handpan-container.colors-disabled.material-oak .note-circle-base,#handpan-container.colors-disabled.material-real-metal .note-circle-base,#handpan-container.colors-disabled.material-metal-realistic .note-circle-base,#handpan-container.colors-disabled.material-neotone-walnut .note-circle-base,#handpan-container.colors-disabled.material-metal-new .note-circle-base,#handpan-container.colors-disabled.material-hetre-new .note-circle-base,#handpan-container.colors-disabled.material-noyer-new .note-circle-base{fill:#00000026}#handpan-container.colors-disabled.material-black .note-circle-base{fill:#ffffff1a}#handpan-container.colors-disabled.material-white .note-circle-base{fill:#0000000d}.note-group.draggable{cursor:grab}.note-group.dragging{opacity:.5;cursor:grabbing}.note-group.drop-target .note-circle-base{stroke:var(--highlight-color)!important;stroke-width:4px!important}.note-group.instrument-dragging{opacity:.4;filter:grayscale(.5) blur(1px);cursor:grabbing!important}.note-group.instrument-drop-target .note-circle-base{stroke:var(--highlight-color)!important;stroke-width:6px!important;filter:drop-shadow(0 0 15px var(--highlight-color));transition:all .15s ease}.note-group.is-seventh .note-circle-base{stroke-dasharray:4,4;stroke-width:3px!important;filter:drop-shadow(0 0 2px var(--highlight-color))}.note-hand-outline{fill:none;stroke:none;stroke-width:15px;opacity:0;transition:opacity .2s ease,stroke .2s ease;pointer-events:none}.ding-note .note-hand-outline{stroke-width:20px}.note-group.bonus-note .note-hand-outline{display:none}.note-hand-separator{fill:none;stroke:none;stroke-width:4px;opacity:0;transition:opacity .2s ease;pointer-events:none}.ding-note .note-hand-separator{stroke-width:6px}.note-group.bonus-note .note-hand-separator{display:none}.hands-mode-color .note-group:not(.bonus-note) .note-hand-separator,.hands-mode-text .note-group:not(.bonus-note) .note-hand-separator,.hands-mode-precise .note-group:not(.bonus-note) .note-hand-separator,.partition-main-handpan.hands-mode-visible .note-group:not(.bonus-note) .note-hand-separator{stroke:#fff;opacity:1}.note-order-badge-bg{fill:#fff;opacity:0;pointer-events:none;transition:opacity .2s}.note-order-badge-text{text-anchor:middle;dominant-baseline:central;font-weight:900;fill:#1a1410;opacity:0;pointer-events:none;transition:opacity .2s}.hands-mode-precise .note-group.has-play-order .note-order-badge-bg,.hands-mode-precise .note-group.has-play-order .note-order-badge-text{opacity:1}.hands-mode-precise .note-group.has-play-order.hand-left .note-order-badge-text{fill:var(--hand-color-left)}.hands-mode-precise .note-group.has-play-order.hand-right .note-order-badge-text{fill:var(--hand-color-right)}.note-group.show-order-badge .note-order-badge-bg,.note-group.show-order-badge .note-order-badge-text{opacity:1}.note-group.show-order-badge.hand-left .note-order-badge-text{fill:var(--hand-color-left)}.note-group.show-order-badge.hand-right .note-order-badge-text{fill:var(--hand-color-right)}.hands-mode-color .note-group.hand-left .note-hand-outline,.hands-mode-text .note-group.hand-left .note-hand-outline,.hands-mode-precise .note-group.hand-left .note-hand-outline,.partition-main-handpan.hands-mode-visible .note-group.hand-left .note-hand-outline{stroke:var(--hand-color-left);opacity:1}.hands-mode-color .note-group.hand-right .note-hand-outline,.hands-mode-text .note-group.hand-right .note-hand-outline,.hands-mode-precise .note-group.hand-right .note-hand-outline,.partition-main-handpan.hands-mode-visible .note-group.hand-right .note-hand-outline{stroke:var(--hand-color-right);opacity:1}.hands-mode-color .note-group.hand-split .note-hand-outline,.hands-mode-text .note-group.hand-split .note-hand-outline,.hands-mode-precise .note-group.hand-split .note-hand-outline,.partition-main-handpan.hands-mode-visible .note-group.hand-split .note-hand-outline{stroke:url(#splitHandGradient);opacity:1}.hand-icon{font-size:1.2rem;font-weight:700;fill:#fff;opacity:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8));transition:opacity .2s,transform .2s,fill .2s;display:block;text-anchor:middle;dominant-baseline:central;pointer-events:none;transform-origin:center;transform-box:fill-box}.hands-mode-text .hand-icon{opacity:1}.note-group.dimmed .note-circle-base{fill:var(--note-default-fill);stroke-opacity:1}.note-group.ghost{opacity:0;pointer-events:none;transition:opacity .3s ease}.note-group.learning-ghost{opacity:1;transition:opacity .3s ease}.note-group.bonus-note .note-segment{opacity:1}#handpan-container .note-group.is-polygon-start .note-circle-base,.partition-main-handpan .note-group.is-polygon-start .note-circle-base{stroke:#fff!important;stroke-width:6px!important;stroke-dasharray:8,4;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(255,255,255,.7))}.note-group.playing .note-circle-base{filter:brightness(1.5) drop-shadow(0 0 15px rgba(255,255,255,.8));transition:filter .05s}.note-group.playing.playing-left .note-circle-base{filter:brightness(1.5) drop-shadow(0 0 15px var(--hand-color-left))}.note-group.playing.playing-right .note-circle-base{filter:brightness(1.5) drop-shadow(0 0 15px var(--hand-color-right))}.hands-mode-color .note-group.playing.hand-left:not(.bonus-note) .note-hand-outline,.hands-mode-text .note-group.playing.hand-left:not(.bonus-note) .note-hand-outline{filter:brightness(1.5) drop-shadow(0 0 15px var(--hand-color-left));opacity:1}.hands-mode-color .note-group.playing.hand-right:not(.bonus-note) .note-hand-outline,.hands-mode-text .note-group.playing.hand-right:not(.bonus-note) .note-hand-outline{filter:brightness(1.5) drop-shadow(0 0 15px var(--hand-color-right));opacity:1}.hands-mode-color .note-group.playing.hand-split:not(.bonus-note) .note-hand-outline,.hands-mode-text .note-group.playing.hand-split:not(.bonus-note) .note-hand-outline{filter:brightness(1.5) drop-shadow(0 0 15px rgba(255,255,255,.5));opacity:1}.hands-mode-none .note-group.playing .note-hand-outline{opacity:0!important;display:none}.hands-mode-text .note-group.playing .hand-icon,.hands-mode-text .note-group.is-focused .hand-icon{opacity:1;transform:scale(1.5)}.hands-mode-none .note-group.playing .hand-icon,.hands-mode-color .note-group.playing .hand-icon{opacity:0!important}.ripple-circle{fill:none;stroke:#fff;stroke-width:0;opacity:0;pointer-events:none;filter:drop-shadow(0 0 0 white);transform-origin:center;transform-box:fill-box}.note-group.playing .ripple-circle{animation:rippleEffect .6s ease-out}.active-ripple{animation:rippleEffect .6s ease-out!important}.note-group.mapped-note .note-circle-base{opacity:1!important;filter:none!important}.note-group.unmapped .note-circle-base,.note-group.unmapped .note-path-base{fill:#333!important;stroke:#555!important;opacity:1}.note-group.mapping-target .note-circle-base,.note-group.mapping-target .note-path-base{stroke:#fff!important;stroke-width:4px!important;filter:drop-shadow(0 0 10px rgba(255,255,255,.8));animation:pulseMapping 1.5s infinite alternate}@keyframes pulseMapping{0%{filter:drop-shadow(0 0 5px rgba(255,255,255,.5));stroke-width:2px}to{filter:drop-shadow(0 0 20px rgba(255,255,255,1));stroke-width:6px}}.note-group.interactive-target .ripple-circle{animation:rippleLoop 2.5s infinite ease-out;stroke:#fff!important}@keyframes rippleEffect{0%{transform:scale(.9);stroke-width:8px;opacity:1}80%{opacity:.4}to{transform:scale(2);stroke-width:0px;opacity:0}}@keyframes rippleLoop{0%{transform:scale(.9);stroke-width:6px;opacity:0}30%{opacity:1}80%{opacity:0}to{transform:scale(1.8);stroke-width:0px;opacity:0}}.note-group.playing.playing-left .ripple-circle{stroke:var(--hand-color-left);filter:drop-shadow(0 0 15px var(--hand-color-left))}.note-group.playing.playing-right .ripple-circle{stroke:var(--hand-color-right);filter:drop-shadow(0 0 15px var(--hand-color-right))}.pulsing-icon svg{animation:metronome-fade .3s ease-out}@keyframes metronome-fade{0%{opacity:1;transform:scale(1.1);filter:drop-shadow(0 0 5px white)}50%{opacity:.5;transform:scale(1);filter:none}to{opacity:1}}.note-group.interactive-target .note-circle-base{stroke:#fff;stroke-width:4px;animation:targetGlow 2.5s infinite alternate}@keyframes targetGlow{0%{filter:drop-shadow(0 0 5px #FFFFFF)}to{filter:drop-shadow(0 0 15px #FFFFFF) brightness(1.1)}}.note-group.interactive-error .note-circle-base{animation:shakeError .4s cubic-bezier(.36,.07,.19,.97) both;stroke:#ef4444!important;stroke-width:4px}@keyframes shakeError{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-6px,0,0)}40%,60%{transform:translate3d(6px,0,0)}}.note-group.interactive-active{opacity:1;transition:opacity .5s ease;filter:none}.guide-beam{stroke:#fff;stroke-width:6px;stroke-linecap:round;fill:none;filter:drop-shadow(0 0 8px #FFFFFF);opacity:.8;pointer-events:none;stroke-dasharray:60 calc(var(--beam-len) + 200px);animation:guideBeamFlow 1.8s infinite linear}@keyframes guideBeamFlow{0%{stroke-dashoffset:60;opacity:0}5%{opacity:1}95%{opacity:1}to{stroke-dashoffset:calc(-1 * var(--beam-len));opacity:0}}.note-segment{fill:transparent;transition:fill .3s ease;pointer-events:none}.colors-disabled .note-segment{fill:var(--note-default-fill)!important}.note-text-bg{fill:url(#noteTextBgGradient);pointer-events:none}.note-text{font-family:var(--font-family);font-size:1.9rem;font-weight:600;fill:var(--note-text-color);text-anchor:middle;alignment-baseline:central;pointer-events:none;transition:fill .3s ease,font-size .3s ease,opacity .3s ease,transform .3s ease;stroke:#000;stroke-width:1.5px;stroke-linejoin:round;paint-order:stroke fill;text-shadow:0 2px 6px rgba(0,0,0,.8)}.mutant-note .note-text{font-size:1.5rem}.ding-note .note-text{font-size:2.7rem}.note-group.active:not(.colors-disabled){filter:drop-shadow(0 0 10px rgba(255,255,255,.5))}.note-group.label-order .note-text-bg{fill:#fff}.note-group.label-order .note-text{font-size:2.4rem;font-weight:800;fill:#222b3a;stroke:none;text-shadow:none}.note-group.label-order.hand-left .note-text{fill:var(--hand-color-left)}.note-group.label-order.hand-right .note-text{fill:var(--hand-color-right)}.ding-note.label-order .note-text{font-size:3rem}.note-group.label-order .hand-icon{font-size:.72rem}.note-number-text{font-family:var(--font-family);font-size:.82rem;font-weight:700;fill:#fff;text-anchor:middle;dominant-baseline:central;pointer-events:none;filter:drop-shadow(0 0 3px rgba(0,0,0,.9));opacity:0;transition:opacity .3s ease;z-index:10}.numbers-visible .note-number-text{opacity:.72}.numbers-visible .note-group.active .note-number-text,.numbers-visible .note-group.is-focused .note-number-text,.partition-main-handpan .numbers-visible .note-number-text{opacity:1}[data-theme=light] .note-group.active .note-number-text,[data-theme=light] .note-group.is-focused .note-number-text{fill:#000}#lcd-group,#handpan-container #lcd-group .lcd-door{cursor:pointer}#handpan-container #lcd-group .lcd-door-caret{stroke:var(--gold-color, #D4AF37)}#handpan-container #lcd-group .lcd-door-caret,#handpan-container #lcd-group .lcd-door-shadow{opacity:.62;transition:opacity .18s ease}#handpan-container #lcd-group:hover .lcd-door-caret,#handpan-container #lcd-group:hover .lcd-door-shadow{opacity:1}#game-stop-btn{transition:transform .2s ease-out}#game-stop-btn:hover{transform:scale(1.05)}#game-stop-btn:hover rect{fill:red;filter:drop-shadow(0 0 5px rgba(239,68,68,.5))}.model-toggle-button{cursor:pointer}.model-toggle-button rect{fill:var(--secondary-color);stroke:var(--highlight-color);stroke-width:1.5;transition:fill .2s ease}.model-toggle-button text{fill:var(--text-color);font-family:var(--font-family);font-size:18px;font-weight:600;text-anchor:middle;pointer-events:none}.model-toggle-button:hover rect{fill:var(--highlight-color)}.model-toggle-button:hover text{fill:var(--primary-color)}.chord-path{fill:none;stroke-width:14px;stroke-linejoin:round;stroke-linecap:round;transition:opacity .3s;pointer-events:none;filter:drop-shadow(0 0 3px rgba(0,0,0,.5))}.chord-path.extension-path{stroke-dasharray:10,10;stroke-width:8px;opacity:.8}.light-beam{stroke:#fff;stroke-width:4px;stroke-linecap:round;fill:none;filter:drop-shadow(0 0 5px white) drop-shadow(0 0 10px var(--highlight-color));opacity:.8;pointer-events:none;animation-name:lightFlow;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes lightFlow{0%{opacity:1}70%{opacity:1}to{stroke-dashoffset:0;opacity:0}}.path-highlight{stroke:#fff;stroke-width:8px;fill:none;pointer-events:none;filter:drop-shadow(0 0 5px rgba(255,255,255,.9));stroke-linecap:round}.learning-ring{fill:none;stroke:#fff;stroke-width:3px;stroke-dasharray:10,10;opacity:.8;pointer-events:none;transform-origin:center;transform-box:fill-box}.learning-ring.spin-right{animation:rotateCW 4s linear infinite;stroke:#fff;filter:drop-shadow(0 0 10px rgba(255,255,255,1));stroke-width:5px}.learning-ring.spin-left{animation:rotateCCW 4s linear infinite;stroke:#fff;filter:drop-shadow(0 0 10px rgba(255,255,255,1));stroke-width:5px}@keyframes rotateCW{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotateCCW{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.arrow-text{font-size:24px;font-weight:700;fill:#fff;text-anchor:middle;dominant-baseline:central;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.8))}.highlight-major{stroke:#fbbf24!important;stroke-width:4px!important;filter:drop-shadow(0 0 10px #FBBF24)!important;opacity:1!important}.highlight-minor{stroke:#22d3ee!important;stroke-width:4px!important;filter:drop-shadow(0 0 10px #22D3EE)!important;opacity:1!important}.highlight-both{stroke:url(#grad-learn-both)!important;stroke-width:4px!important;filter:drop-shadow(0 0 10px rgba(255,255,255,.8))!important;opacity:1!important}.highlight-7th{stroke-dasharray:6,6}.modifier-btn.active-blue{background-color:#3b82f6!important;color:#fff!important}.learning-source .note-circle-base{fill:#fff!important;stroke:#fff!important;opacity:1!important}.mini-handpan-svg{background-color:transparent;overflow:visible}.mini-handpan-svg .handpan-body{stroke:#fff;stroke-width:5px;fill:#0003;filter:none}.mini-handpan-svg.show-texture .handpan-body{fill:url(#grad-neotone)}.mini-handpan-svg.show-texture.material-neotone .handpan-body{fill:url(#grad-neotone)}.mini-handpan-svg.show-texture.material-black .handpan-body{fill:url(#grad-black)}.mini-handpan-svg.show-texture.material-white .handpan-body{fill:url(#grad-white)}.mini-handpan-svg.show-texture.material-look-steel .handpan-body{fill:url(#grad-steel)}.mini-handpan-svg.show-texture.material-metal .handpan-body{fill:url(#grad-metal)}.mini-handpan-svg.show-texture.material-walnut .handpan-body{fill:url(#pattern-walnut)}.mini-handpan-svg.show-texture.material-beech .handpan-body{fill:url(#pattern-beech)}.mini-handpan-svg.show-texture.material-oak .handpan-body{fill:url(#pattern-oak)}.mini-handpan-svg.show-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.mini-handpan-svg.show-texture.material-metal-realistic .handpan-body{fill:url(#pattern-metal-realistic)}.mini-handpan-svg.show-texture.material-neotone-walnut .handpan-body{fill:url(#pattern-neotone-walnut)}.mini-handpan-svg.show-texture.material-metal-new .handpan-body{fill:url(#pattern-metal-new)}.mini-handpan-svg.show-texture.material-hetre-new .handpan-body{fill:url(#pattern-hetre-new)}.mini-handpan-svg.show-texture.material-noyer-new .handpan-body{fill:url(#pattern-noyer-new)}.mini-handpan-svg .note-circle-base{fill:#ffffff1a;stroke:#fff;stroke-width:2px;filter:none}.mini-handpan-svg .note-group.active-note .note-circle-base{fill:var(--note-fill-color, white);stroke:#fff;stroke-width:5px}.mini-handpan-svg .note-group.bonus-note-mini .note-circle-base{fill:var(--note-fill-color, rgba(255,255,255,.3));stroke:#fff;stroke-width:2px}.mini-handpan-svg .note-group.ghost-note .note-circle-base{fill:#0000001a;stroke:#ffffff4d;stroke-width:2px}.mini-handpan-svg.material-black .note-group.ghost-note .note-circle-base,.mini-handpan-svg.outline-white .note-group.ghost-note .note-circle-base{fill:#ffffff0d;stroke:#ffffff4d}.mini-handpan-svg.material-white .note-group.ghost-note .note-circle-base,.mini-handpan-svg.outline-black .note-group.ghost-note .note-circle-base{fill:#0000000d;stroke:#0003}.mini-handpan-svg .note-group.is-polygon-start .note-circle-base{stroke:#fff!important;stroke-width:8px!important;stroke-dasharray:12,6;stroke-linecap:round}.mini-handpan-svg .chord-path{stroke-width:25px;filter:none}.mini-handpan-svg .note-text{font-size:35px;fill:#fff;stroke:none;text-shadow:0 1px 3px rgba(0,0,0,.7)}.mini-handpan-svg .note-number-text-mini{font-size:30px;fill:#fff;stroke:none;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.7)}.mini-handpan-svg .hand-icon{font-size:40px;fill:#fff;stroke:#000;stroke-width:2px;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.5)}.direction-arrow{fill:#fff;stroke:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));pointer-events:none}.mini-handpan-svg .note-hand-outline{stroke-width:25px}.mini-handpan-svg.show-hands .note-group.hand-left .note-hand-outline{stroke:var(--hand-color-left);opacity:1}.mini-handpan-svg.show-hands .note-group.hand-right .note-hand-outline{stroke:var(--hand-color-right);opacity:1}.theme-eco .partition-title,.theme-eco .partition-author,.theme-eco .partition-footer{color:#000}.theme-eco .partition-main-handpan .handpan-body{stroke:#aaa;stroke-width:2px;filter:none}.theme-eco .partition-main-handpan:not(.force-texture) .handpan-body{fill:#fff}.theme-eco .partition-main-handpan.force-texture.material-neotone .handpan-body{fill:url(#grad-neotone)}.theme-eco .partition-main-handpan.force-texture.material-black .handpan-body{fill:url(#grad-black)}.theme-eco .partition-main-handpan.force-texture.material-white .handpan-body{fill:#fff;stroke:#000}.theme-eco .partition-main-handpan.force-texture.material-metal .handpan-body{fill:url(#grad-metal)}.theme-eco .partition-main-handpan.force-texture.material-walnut .handpan-body{fill:url(#pattern-walnut)}.theme-eco .partition-main-handpan.force-texture.material-beech .handpan-body{fill:url(#pattern-beech)}.theme-eco .partition-main-handpan.force-texture.material-oak .handpan-body{fill:url(#pattern-oak)}.theme-eco .partition-main-handpan.force-texture.material-real-metal .handpan-body{fill:url(#pattern-real-metal)}.theme-eco .partition-main-handpan.force-texture.material-metal-realistic .handpan-body{fill:url(#pattern-metal-realistic)}.theme-eco .partition-main-handpan.force-texture.material-neotone-walnut .handpan-body{fill:url(#pattern-neotone-walnut)}.theme-eco .partition-main-handpan.force-texture.material-metal-new .handpan-body{fill:url(#pattern-metal-new)}.theme-eco .partition-main-handpan.force-texture.material-hetre-new .handpan-body{fill:url(#pattern-hetre-new)}.theme-eco .partition-main-handpan.force-texture.material-noyer-new .handpan-body{fill:url(#pattern-noyer-new)}.theme-eco .partition-main-handpan .note-circle-base{stroke:#aaa;stroke-width:2px}.theme-eco .partition-main-handpan .note-text{fill:#fff!important;stroke:#000;stroke-width:2.5px;paint-order:stroke fill;text-shadow:none}.theme-eco .partition-main-handpan .note-number-text{fill:#000}.theme-eco .partition-main-handpan g.is-focused .note-number-text,.theme-eco .partition-main-handpan g.active .note-number-text{fill:#fff}.theme-eco .mini-handpan-svg .handpan-body{stroke:#aaa;stroke-width:10px}.theme-eco .mini-handpan-svg:not(.show-texture) .handpan-body{fill:#fff}.theme-eco .mini-handpan-svg.show-texture .handpan-body{fill:url(#grad-neotone)}.theme-eco .mini-handpan-svg .note-group.ghost-note .note-circle-base{fill:#fff;stroke:#000;stroke-width:5px}.theme-eco .mini-handpan-svg .note-group.active-note .note-circle-base{stroke:#000!important;stroke-width:5px!important}.theme-eco .mini-handpan-svg .note-group.active-note .note-text{fill:#fff}.theme-eco .mini-handpan-svg .note-group.is-polygon-start .note-circle-base{stroke:#fff!important;stroke-width:12px!important;stroke-dasharray:10,5}.theme-eco .mini-handpan-svg .chord-path{stroke-opacity:.8!important;fill-opacity:.3!important;stroke-width:25px!important}.theme-eco .direction-arrow{fill:#000;filter:none}.theme-eco .partition-chord-item.emotion-layout{background-color:transparent!important}.theme-eco .partition-chord-item .partition-chord-notes{color:#000}@media print{body>*{display:none!important}#partition-editor-modal{display:block!important;position:static!important;width:100%!important;height:auto!important;background:none!important;padding:0!important;overflow:visible!important}.partition-modal-content{box-shadow:none!important;border:none!important;width:100%!important;max-width:none!important;height:auto!important;overflow:visible!important;border-radius:0!important;background:none!important}.partition-editor-header,.partition-settings{display:none!important}.partition-editor-body{display:block!important}.partition-preview-container{display:block!important;padding:0!important;margin:0!important;background:none!important;overflow:visible!important}.partition-paper{box-shadow:none!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;background-color:#fff!important;color:#000!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}#texture-editor-overlay{position:absolute;top:50px;right:20px;width:250px;background-color:#0d1b2af2;border:1px solid var(--highlight-color);border-radius:12px;padding:1rem;z-index:500;box-shadow:0 10px 30px #000c;backdrop-filter:blur(10px)}.texture-editor-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.5rem;margin-bottom:.8rem;font-weight:700;color:var(--highlight-color)}#close-texture-editor{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer}.texture-control-row{display:flex;flex-direction:column;margin-bottom:.8rem}.texture-control-row label{font-size:.8rem;margin-bottom:.2rem;color:#fff}.texture-control-row input[type=range]{width:100%}.texture-coords-display{background:#00000080;padding:.5rem;border-radius:4px;font-family:monospace;font-size:.7rem;color:#eee;word-break:break-all;margin-top:.5rem}.model-toggle-row{position:relative;width:100%;max-width:90%;margin:0 auto;height:0}.model-toggle-aligned-right{position:absolute;right:0;bottom:4px;display:flex;align-items:center;gap:6px;background:#0d1b2aeb;border:1px solid var(--current-outline-color, #FFD700);border-radius:20px;padding:3px 8px;backdrop-filter:blur(6px);box-shadow:0 2px 10px #0006;user-select:none;width:fit-content;font-size:.75em;z-index:5}[data-theme=light] .model-toggle-aligned-right{background:#fffffff2;box-shadow:0 2px 10px #00000026}[data-theme=light] .model-toggle-aligned-right .model-toggle-label{color:#00000080}[data-theme=light] body.model-mutant .model-toggle-mutant,[data-theme=light] body.model-standard .model-toggle-standard{color:#0ea5e9;text-shadow:none}[data-theme=light] .model-toggle-track{background:#0000001a}[data-theme=light] body.model-standard .model-toggle-track{background:#0ea5e94d}.model-toggle-label{font-size:.65rem;font-weight:700;color:#ffffff80;transition:color .25s ease;text-transform:uppercase;letter-spacing:.3px}body.model-mutant .model-toggle-mutant,body.model-standard .model-toggle-standard{color:#67e8f9;text-shadow:0 0 6px rgba(34,211,238,.5)}.model-toggle-switch{position:relative;width:38px;height:20px;background:transparent;border:none;padding:0;cursor:pointer}.model-toggle-track{position:absolute;inset:0;background:#ffffff26;border-radius:20px;transition:background .3s ease}.model-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:gold;border-radius:50%;transition:transform .3s cubic-bezier(.25,.8,.25,1);box-shadow:0 1px 4px #0006}body.model-standard .model-toggle-thumb{transform:translate(18px);background:#22d3ee}body.model-standard .model-toggle-track{background:#22d3ee4d}.model-toggle-block{position:absolute;right:0;bottom:40px;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:5;user-select:none}.model-toggle-title{font-size:clamp(.5rem,.42rem + .25vw,.6rem);font-weight:700;color:#fff9;text-transform:uppercase;letter-spacing:.8px;line-height:1}[data-theme=light] .model-toggle-title{color:#0000008c}.model-toggle-pill{display:inline-flex;align-items:stretch;gap:0;background:#0d1b2aeb;border:1px solid var(--current-outline-color, #FFD700);border-radius:18px;padding:3px;backdrop-filter:blur(6px);box-shadow:0 2px 8px #0006;overflow:hidden}.model-toggle-pill-option{background:transparent;border:none;color:#ffffff8c;font-family:inherit;font-size:clamp(.6rem,.48rem + .33vw,.72rem);font-weight:700;padding:clamp(3px,.5vw,5px) clamp(7px,1.1vw,11px);border-radius:14px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .1s ease;touch-action:manipulation;line-height:1.1;letter-spacing:.2px}.model-toggle-pill-option sup{font-size:.55rem;margin-left:1px}.model-toggle-pill-option:hover{color:#fff;background:#ffffff0f}.model-toggle-pill-option:active{transform:scale(.95)}.model-toggle-pill-option:focus-visible{outline:2px solid var(--highlight-color, #22D3EE);outline-offset:2px}body.model-mutant #model-label-mutant,body.model-standard #model-label-standard{background:var(--highlight-color, #22D3EE);color:#0d1b2a;box-shadow:0 1px 4px #22d3ee80}[data-theme=light] .model-toggle-pill{background:#fffffff2;box-shadow:0 2px 8px #00000026}[data-theme=light] .model-toggle-pill-option{color:#0000008c}[data-theme=light] body.model-mutant #model-label-mutant,[data-theme=light] body.model-standard #model-label-standard{background:#2563eb;color:#fff}@media(max-width:640px){.model-toggle-pill-option{font-size:.66rem;padding:4px 8px}}@media(min-width:1024px)and (max-width:1180px),(max-width:760px),(max-width:940px)and (max-height:560px){.model-toggle-row{height:auto}.model-toggle-block{position:static;flex-direction:row;align-items:center;gap:6px;width:fit-content;margin:6px 0 2px auto;bottom:auto;right:auto}}.model-toggle-compact{position:absolute;right:0;bottom:4px;display:inline-flex;align-items:center;gap:5px;background:#0d1b2aeb;border:1px solid var(--current-outline-color, #FFD700);border-radius:16px;padding:4px 10px 4px 7px;backdrop-filter:blur(6px);box-shadow:0 2px 8px #0006;color:#ffffffd9;cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:700;letter-spacing:.4px;user-select:none;z-index:5;transition:background .2s ease,transform .1s ease,border-color .2s ease;touch-action:manipulation;min-width:60px;min-height:32px;justify-content:center}.model-toggle-compact:hover{background:#22d3ee2e;border-color:var(--highlight-color, #22D3EE)}.model-toggle-compact:active{transform:scale(.95)}.model-toggle-compact-icon{display:inline-flex;line-height:0;color:var(--highlight-color, #22D3EE)}.model-toggle-compact-label{font-variant-numeric:tabular-nums;color:var(--highlight-color, #22D3EE)}body.model-standard .model-toggle-compact .model-toggle-inner-ring{opacity:0}body.model-mutant .model-toggle-compact .model-toggle-inner-ring{opacity:1}[data-theme=light] .model-toggle-compact{background:#fffffff2;color:#1b263b;box-shadow:0 2px 8px #00000026}[data-theme=light] .model-toggle-compact:hover{background:#2563eb1f;border-color:#2563eb}[data-theme=light] .model-toggle-compact-icon,[data-theme=light] .model-toggle-compact-label{color:#0ea5e9}@media print{.model-toggle-floating,.model-toggle-compact{display:none!important}}.lcd-swap-model-btn{transition:transform .2s ease}.lcd-swap-model-btn:hover{transform:scale(1.1)}.lcd-swap-model-btn:active{transform:scale(.95)}#midi-modal .modal-content{width:90%;max-width:600px;background:#1a1a1a;color:#fff;padding:2rem;border-radius:16px;border:1px solid #444;box-shadow:0 20px 25px -5px #00000080}#midi-instructions{font-size:1.1rem;font-weight:600;margin:1rem auto 2rem;padding:1rem 1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:30px;color:#fff;text-align:center;max-width:600px;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 4px 15px #0003;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:15px;z-index:100;position:relative}.midi-connect-mode .sp-tools-vertical{margin-top:0}.midi-connect-mode #midi-instructions{position:relative;top:0;width:100%;margin:0 auto 30px;text-align:center;justify-content:center;padding:1rem;z-index:100}.midi-connect-mode #midi-settings-panel{display:block!important;order:-1}.pulse-guide{animation:pulse-guide-anim 1.5s infinite ease-in-out;box-shadow:0 0 #ffffffb3}.pulse-guide-note{animation:pulse-guide-note-anim 1.5s infinite ease-in-out;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 10px rgba(255,255,255,.8))}.dimmed-note{opacity:.6;filter:grayscale(.5);transition:opacity .3s ease}@keyframes pulse-guide-anim{0%{transform:scale(1);box-shadow:0 0 #ffffffb3}50%{transform:scale(1.05);box-shadow:0 0 0 10px #fff0}to{transform:scale(1);box-shadow:0 0 #fff0}}@keyframes pulse-guide-note-anim{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}#midi-instructions:hover{background:#ffffff1a;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}#midi-instructions.active-listening{background:#4a90e226;border-color:#4a90e280;color:#8ab4f8;animation:pulse-midi-border 2s infinite}@keyframes pulse-midi-border{0%{box-shadow:0 0 #4a90e266}70%{box-shadow:0 0 0 10px #4a90e200}to{box-shadow:0 0 #4a90e200}}#midi-handpan-calibration{position:relative;width:300px;height:300px;margin:2rem auto;background:#222;border-radius:50%;border:2px solid #444}#midi-status{text-align:center;padding:.5rem;background:#333;border-radius:8px;margin-top:1rem}#btn-midi-save-mapping{width:100%;padding:12px;margin-top:1rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;background:#4a90e2;color:#fff}.note-group.playing-midi circle,.note-group.playing-midi ellipse{fill:#fff!important;stroke:#fff!important;stroke-width:3px!important;filter:drop-shadow(0 0 10px rgba(255,255,255,1));transition:all .1s ease}.midi-recorder-panel{width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px;margin-bottom:14px;display:flex;flex-direction:column;gap:10px;font-family:Poppins,sans-serif}.midi-recorder-panel .rec-head{display:flex;align-items:center;gap:8px}.midi-recorder-panel .rec-title{font-weight:600;font-size:.98rem}.rec-dot{width:11px;height:11px;border-radius:50%;background:#ffffff40;flex:0 0 auto}.rec-dot.active{background:#ef4444;box-shadow:0 0 #ef4444b3;animation:recPulse 1.1s infinite}@keyframes recPulse{0%{box-shadow:0 0 #ef4444a6}70%{box-shadow:0 0 0 9px #ef444400}to{box-shadow:0 0 #ef444400}}.rec-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rec-transport-row{justify-content:flex-start}.rec-toggle-btn{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #ef4444;background:#ef444424;color:#fff;font-weight:700;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s ease,filter .15s ease}.rec-toggle-btn:hover{filter:brightness(1.12)}.rec-toggle-btn.recording{background:#ef4444}.rec-chrono{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:600;letter-spacing:.02em}.rec-notes-badge{font-size:.9rem;opacity:.85;margin-left:auto}.rec-click-row .rec-check,.rec-click-row .rec-inline{display:inline-flex;align-items:center;gap:6px;font-size:.85rem}.rec-click-row select,.rec-click-row input[type=number]{min-height:34px;border-radius:8px;padding:2px 6px;background:#00000040;color:inherit;border:1px solid rgba(255,255,255,.16)}.rec-click-row input[type=number]{width:66px}.rec-hint{font-size:.76rem;opacity:.6;margin:0}.rec-msg{font-size:.82rem;color:var(--highlight-color, #22d3ee);max-height:0;overflow:hidden;opacity:0;transition:all .25s ease}.rec-msg.show{max-height:60px;opacity:1;margin-top:2px}.midiproj-modal{max-width:640px;width:min(94vw,640px)}.midiproj-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.midiproj-list{display:flex;flex-direction:column;gap:12px;max-height:62vh;overflow-y:auto}.midiproj-empty{opacity:.7;font-size:.9rem;padding:20px;text-align:center}.midiproj-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px}.midiproj-item-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.midiproj-item-meta{display:flex;flex-direction:column;min-width:0;flex:1}.midiproj-item-name{font-weight:600}.midiproj-item-sub{font-size:.76rem;opacity:.65}.midiproj-item-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.midiproj-transport{margin-top:10px;display:flex;flex-direction:column;gap:8px}.midiproj-progress{position:relative;height:10px;border-radius:999px;background:#ffffff1a;cursor:pointer;overflow:hidden}.midiproj-progress-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--highlight-color, #22d3ee);border-radius:999px;pointer-events:none}.midiproj-loopzone{position:absolute;top:0;bottom:0;background:#facc154d;border-left:2px solid #facc15;border-right:2px solid #facc15;pointer-events:none}.midiproj-time{font-size:.78rem;opacity:.7;font-variant-numeric:tabular-nums}.midiproj-controls-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.midiproj-ctrl{display:inline-flex;align-items:center;gap:8px;font-size:.8rem}.midiproj-ctrl input[type=range]{width:130px}.midiproj-ctrl select{min-height:32px;border-radius:8px;padding:2px 6px;background:#00000040;color:inherit;border:1px solid rgba(255,255,255,.16)}.midiproj-tempo-val{font-variant-numeric:tabular-nums;opacity:.8;min-width:44px}.midiproj-sections{display:flex;flex-direction:column;gap:6px;margin-top:4px}.midiproj-sections-list{display:flex;flex-direction:column;gap:6px}.midiproj-section{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.midiproj-section input{min-height:32px;border-radius:8px;padding:2px 8px;background:#00000040;color:inherit;border:1px solid rgba(255,255,255,.16)}.midiproj-sec-name{flex:1;min-width:90px}.midiproj-sec-start,.midiproj-sec-end{width:62px;font-variant-numeric:tabular-nums}.midiproj-loop-btn,.midiproj-sec-del{min-height:34px;min-width:34px;border-radius:8px;cursor:pointer;background:#ffffff12;border:1px solid rgba(255,255,255,.14);color:inherit}.midiproj-loop-btn.active{background:#facc15;color:#3a2e00;border-color:#facc15}.rec-mini-btn{min-height:30px;padding:4px 10px;border-radius:8px;cursor:pointer;font-size:.82rem;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:inherit}.rec-mini-btn:hover{filter:brightness(1.15)}#rec-groove-row{align-items:center}#rec-groove-row select,#rec-groove-row input[type=range]{max-width:150px}.rec-mini-player{margin-top:10px;padding:10px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:8px}.rec-mini-head{font-weight:600;font-size:.9rem;opacity:.9}.rec-mini-transport{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rec-mini-bar{flex:1;min-width:90px;height:8px;border-radius:4px;background:#ffffff1f;overflow:hidden}.rec-mini-fill{height:100%;width:0%;background:#22c55e;border-radius:4px;transition:width .05s linear}.rec-mini-time{font-variant-numeric:tabular-nums;font-size:.8rem;opacity:.8;min-width:40px}.rec-mini-transport{gap:var(--sp-2)}.rec-mini-transport>.rec-mini-bar{order:1}.rec-mini-transport>.rec-mini-time{order:2}.rec-mini-transport>#rec-mini-stop{order:3}.rec-mini-transport>#rec-mini-play{order:4;margin-left:auto}.rec-mini-btn{min-height:var(--h-control);border-radius:var(--r-sm)}.rec-mini-transport>#rec-mini-play{min-height:var(--h-transport);padding-left:var(--sp-3);padding-right:var(--sp-3);font-weight:700}.midiproj-idcard{padding:8px 10px;border-radius:8px;margin-bottom:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:3px}.midiproj-id-name{font-weight:600;font-size:.92rem}.midiproj-id-meta{font-size:.75rem;opacity:.7}.midiproj-id-line{font-size:.8rem;opacity:.88;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.midiproj-load-scale{font-size:.76rem!important;padding:2px 8px!important;min-height:26px!important}.midiproj-accomp{margin-top:8px;padding-top:8px;border-top:1px dashed rgba(255,255,255,.12);display:flex;flex-direction:column;gap:8px}.midiproj-accomp-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.midiproj-accomp-row input[type=range]{width:90px}.midiproj-accomp-status{font-size:.74rem;opacity:.75}.midiproj-item button,.midiproj-item select,.midiproj-idcard button,.rec-mini-player button,.rec-mini-player select{background:var(--secondary-color);color:var(--text-color);border:1px solid transparent;border-radius:8px;padding:5px 9px;font:inherit;font-size:.76rem;cursor:pointer}.midiproj-item button:hover,.midiproj-idcard button:hover,.rec-mini-player button:hover{border-color:var(--highlight-color)}.midiproj-item input[type=range],.rec-mini-player input[type=range]{accent-color:var(--highlight-color)}.rec-all-list{margin-top:10px;display:flex;flex-direction:column;gap:5px}.rec-list-item{display:flex;justify-content:space-between;align-items:baseline;gap:8px;width:100%;text-align:left;padding:7px 10px;min-height:36px;background:var(--secondary-color);color:var(--text-color);border:1px solid transparent;border-radius:8px;font:inherit;font-size:.8rem;cursor:pointer}.rec-list-item:hover{border-color:var(--highlight-color)}.rec-list-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-list-sub{font-size:.7rem;opacity:.6;flex:0 0 auto}#app.gate-locked{display:none!important}#neotone-gate{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:1.5rem;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(circle at 20% 20%,rgba(34,211,238,.12),transparent 45%),radial-gradient(circle at 80% 80%,rgba(65,90,119,.25),transparent 50%),var(--bg-color);color:var(--text-color);font-family:var(--font-family)}#neotone-gate>*{margin-top:auto;margin-bottom:auto;flex:0 0 auto;min-width:0}.auth-brand{text-align:center;margin-bottom:1.4rem}.auth-logo{font-size:clamp(1.35rem,5.4vw,1.9rem);line-height:1.14;text-wrap:balance;font-weight:800;letter-spacing:.5px;margin:0}.auth-brand-row{display:flex;align-items:center;justify-content:center;gap:.9rem}.auth-brand-text{min-width:0}.auth-constellation{display:block;flex:0 0 auto;width:64px;height:99px;overflow:visible}.auth-brand>.auth-constellation{margin:0 auto .45rem}.auth-cst-link{fill:none;stroke:currentColor;stroke-opacity:.2;stroke-width:.7;stroke-linecap:round}.auth-cst-belt{stroke-opacity:.42;stroke-width:.95}.auth-cst-dust{fill:currentColor;opacity:.3}.auth-cst-star,.auth-cst-halo,.auth-cst-glare,.auth-cst-dust{animation-timing-function:ease-in-out;animation-iteration-count:infinite}.auth-cst-star{animation-name:auth-cst-twinkle;animation-duration:6s;animation-delay:calc(var(--i, 0) * -.83s)}.auth-cst-halo{animation-name:auth-cst-bloom;animation-duration:6s;animation-delay:calc(var(--i, 0) * -.83s);transform-box:fill-box;transform-origin:center}.auth-cst-glare{animation-name:auth-cst-bloom;animation-duration:6s;animation-delay:calc(var(--i, 0) * -.83s);transform-box:fill-box;transform-origin:center;opacity:.42}.auth-cst-dust{animation-name:auth-cst-dusttw;animation-duration:9s;animation-delay:calc(var(--i, 0) * -.71s)}@keyframes auth-cst-twinkle{0%,to{opacity:1}45%{opacity:.74}}@keyframes auth-cst-bloom{0%,to{opacity:1;transform:scale(1)}45%{opacity:.5;transform:scale(.85)}}@keyframes auth-cst-dusttw{0%,to{opacity:.3}50%{opacity:.09}}@media(prefers-reduced-motion:reduce){.auth-cst-star,.auth-cst-halo,.auth-cst-glare,.auth-cst-dust{animation:none}.auth-cst-halo,.auth-cst-glare{transform:none}}@media(max-width:480px){.auth-brand-row{gap:.7rem}.auth-byline{font-size:1.15rem}}.auth-byline{font-family:Great Vibes,cursive;font-size:1.3rem;opacity:.85;margin-top:.15rem}.auth-card{width:100%;max-width:400px;background:var(--primary-color);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:2rem 1.8rem;box-shadow:0 20px 60px #00000073}.auth-tabs{display:flex;gap:.3rem;background:#0003;border-radius:12px;padding:.3rem;margin-bottom:1.4rem}.auth-tab{flex:1;border:0;background:transparent;color:var(--text-color);opacity:.6;font-family:inherit;font-size:.92rem;font-weight:600;padding:.6rem;border-radius:9px;cursor:pointer;transition:all .2s ease}.auth-tab.active{opacity:1;background:var(--secondary-color);color:#fff}.auth-heading{text-align:center;font-size:1.25rem;margin:0 0 1.2rem}.auth-prices{margin:0 0 1.3rem;padding:.9rem 1rem 1rem;background:#0000002e;border:1px solid rgba(255,255,255,.08);border-radius:12px}.auth-prices[hidden]{display:none}.auth-prices-title{margin:0 0 .6rem;font-size:.82rem;font-weight:600;opacity:.8;text-align:center}.auth-prices-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.auth-prices-list li{display:flex;align-items:baseline;gap:.5rem;padding:.45rem .6rem;border-radius:9px;background:#ffffff0a}.auth-prices-list li.is-featured{background:var(--secondary-color)}.ap-name{flex:1;font-size:.92rem;font-weight:600}.ap-name em{margin-left:.4rem;font-style:normal;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.08rem .4rem;border-radius:999px;background:#ffffff2e}.ap-amount{font-size:1.05rem;font-weight:800}.ap-period{font-size:.78rem;opacity:.65}.auth-prices-note{margin:.7rem 0 0;font-size:.74rem;line-height:1.4;opacity:.65;text-align:center}.auth-privacy{margin:1rem 0 0;font-size:.72rem;line-height:1.45;opacity:.6;text-align:center}.auth-success{text-align:center;padding:.5rem 0 0}.auth-success-icon{font-size:2.6rem;line-height:1;margin-bottom:.6rem}.auth-success-title{margin:0 0 .6rem;font-size:1.35rem;font-weight:800}.auth-success-text{margin:0 0 .7rem;font-size:.92rem;line-height:1.5;opacity:.85}.auth-success-text strong{opacity:1}.auth-success .auth-submit{margin-top:.6rem}.auth-social{display:flex;flex-direction:column;gap:.6rem}.auth-btn-social{width:100%;display:flex;align-items:center;justify-content:center;gap:.6rem;border:0;border-radius:11px;padding:.75rem;font-family:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.auth-btn-social:hover:not(:disabled){box-shadow:0 6px 18px #0000004d}.auth-btn-social:disabled{opacity:.5;cursor:not-allowed}.auth-btn-google{background:#fff;color:#1f1f1f}.auth-btn-apple{background:#000;color:#fff}.auth-divider{display:flex;align-items:center;gap:.7rem;margin:1.2rem 0;opacity:.5;font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff26}.auth-form{display:flex;flex-direction:column;gap:.9rem}.auth-field{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600}.auth-field[hidden]{display:none}.auth-field input{width:100%;background:#00000040;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.7rem .85rem;color:var(--text-color);font-family:inherit;font-size:.95rem;transition:border-color .2s ease}.auth-field input:focus{outline:none;border-color:var(--highlight-color)}.auth-forgot{align-self:flex-end;background:none;border:0;color:var(--highlight-color);font-family:inherit;font-size:.8rem;cursor:pointer;padding:0}.auth-submit{margin-top:.4rem;width:100%;border:0;border-radius:11px;padding:.8rem;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;color:#04121d;background:var(--highlight-color);transition:transform .15s ease,filter .15s ease}.auth-submit:hover:not(:disabled){filter:brightness(1.08)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-message{margin:0;font-size:.85rem;border-radius:9px;padding:.6rem .75rem;line-height:1.4}.auth-message.is-error{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.auth-message.is-info{background:#22c55e21;color:#86efac;border:1px solid rgba(34,197,94,.3)}.studio-upsell-overlay{position:fixed;inset:0;background:#060a14b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1.2rem;z-index:10000;animation:suFadeIn .18s ease-out}@keyframes suFadeIn{0%{opacity:0}to{opacity:1}}.studio-upsell-modal{position:relative;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;background:var(--secondary-color, #1B263B);border:1px solid rgba(34,211,238,.25);border-radius:20px;padding:2rem 1.6rem 1.4rem;box-shadow:0 24px 60px #00000080}.su-close{position:absolute;top:12px;right:14px;width:34px;height:34px;border-radius:50%;background:#ffffff0f;border:none;color:var(--text-color);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.su-close:hover{background:#ffffff24}.su-reason{margin:.4rem auto 0;max-width:560px;text-align:center;font-size:.92rem;color:var(--highlight-color, #22D3EE);font-weight:600}.su-footer{text-align:center;margin-top:.6rem}[data-theme=light] .studio-upsell-modal{background:#fff;border-color:#2563eb40}[data-theme=light] .su-close{background:#0000000f;color:#1b263b}.pw-wrap{width:100%;max-width:980px}.pw-intro{max-width:680px;margin:0 auto 1.8rem;text-align:center;font-size:.95rem;line-height:1.55;opacity:.82}.pw-intro strong{opacity:1;color:#fff}.pw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin:1.6rem 0 1rem}.pw-card{position:relative;background:var(--primary-color);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.6rem 1.3rem;display:flex;flex-direction:column;gap:.7rem}.pw-card.is-featured{border-color:var(--highlight-color);box-shadow:0 0 0 1px var(--highlight-color),0 18px 40px #0006}.pw-badge{position:absolute;top:-.7rem;left:1.3rem;background:var(--gold-gradient);color:#1a1300;font-size:.72rem;font-weight:800;padding:.25rem .7rem;border-radius:999px}.pw-name{margin:0;font-size:1.2rem}.pw-price{display:flex;align-items:baseline;gap:.35rem}.pw-amount{font-size:1.9rem;font-weight:800}.pw-period{opacity:.65;font-size:.85rem}.pw-blurb{margin:0;opacity:.85;font-size:.9rem;line-height:1.45;flex:1}.pw-choose{margin-top:.4rem;border:0;border-radius:11px;padding:.75rem;font-family:inherit;font-weight:700;cursor:pointer;color:#04121d;background:var(--highlight-color);transition:filter .15s ease}.pw-choose:hover:not(:disabled){filter:brightness(1.08)}.pw-choose:disabled{opacity:.6;cursor:not-allowed}.pw-footer{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:.8rem;font-size:.85rem;opacity:.85}.gate-loading{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.gate-spinner{width:42px;height:42px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--highlight-color);border-radius:50%;animation:gate-spin .8s linear infinite}@keyframes gate-spin{to{transform:rotate(360deg)}}.account-menu-btn{margin-left:5px}.account-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:9000;min-width:220px;background:var(--primary-color);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 14px 40px #00000080;padding:.5rem;display:flex;flex-direction:column;gap:.2rem}.account-dropdown[hidden]{display:none}.account-email{font-size:.78rem;opacity:.7;padding:.4rem .6rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:.3rem;word-break:break-all}.account-dropdown button{text-align:left;background:transparent;border:0;color:var(--text-color);font-family:inherit;font-size:.9rem;padding:.55rem .6rem;border-radius:8px;cursor:pointer;transition:background .15s ease}.account-dropdown button:hover:not(:disabled){background:#ffffff14}.account-dropdown button:disabled{opacity:.5;cursor:not-allowed}#auth-consent-wrap[hidden]{display:none}.legal-consents{display:flex;flex-direction:column;gap:.6rem}.legal-consent{display:flex;align-items:flex-start;gap:.55rem;font-size:.8rem;font-weight:500;line-height:1.4;cursor:pointer}.legal-consent input[type=checkbox]{flex:0 0 auto;margin-top:.15rem;width:1rem;height:1rem;accent-color:var(--highlight-color);cursor:pointer}.legal-consent-optional{opacity:.78}.legal-link{background:none;border:0;padding:0;color:var(--highlight-color);font:inherit;text-decoration:underline;cursor:pointer}.legal-modal-overlay{position:fixed;inset:0;z-index:10010;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0009;backdrop-filter:blur(2px)}.legal-modal-card{position:relative;width:100%;max-width:560px;max-height:82vh;overflow-y:auto;background:var(--primary-color);color:var(--text-color);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.8rem 1.6rem 1.4rem;box-shadow:0 24px 70px #0000008c}.legal-modal-close{position:absolute;top:.7rem;right:.9rem;background:none;border:0;color:var(--text-color);font-size:1.6rem;line-height:1;opacity:.7;cursor:pointer}.legal-modal-close:hover{opacity:1}.legal-modal-body{font-size:.88rem;line-height:1.55}.legal-modal-body h3{margin:0 0 .4rem;font-size:1.2rem}.legal-modal-body h4{margin:1.1rem 0 .3rem;font-size:.95rem}.legal-modal-body p{margin:0 0 .6rem;opacity:.9}.legal-modal-body em{opacity:.7;font-size:.82rem}.legal-modal-body ul{margin:0 0 .6rem;padding-left:1.25rem;list-style:disc outside}.legal-modal-body li{margin:0 0 .3rem;opacity:.9}.legal-modal-ok{margin-top:1.2rem}.auth-tabs[hidden]{display:none}.beta-block{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.12);text-align:left}.beta-block[hidden]{display:none}.beta-eyebrow{display:inline-block;margin:0 0 .6rem;padding:.2rem .6rem;border-radius:999px;border:1px solid rgba(127,127,127,.4);background:#7f7f7f1f;border-color:color-mix(in srgb,var(--highlight-color) 45%,transparent);background:color-mix(in srgb,var(--highlight-color) 12%,transparent);color:var(--highlight-color);font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}.beta-title{margin:0 0 .7rem;font-size:1.02rem;font-weight:700;line-height:1.35}.beta-text{margin:0 0 .7rem;font-size:.85rem;line-height:1.55;opacity:.82}.beta-contact{margin:0 0 1.1rem;font-size:.85rem}.beta-contact a{color:var(--highlight-color);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(127,127,127,.45);border-bottom-color:color-mix(in srgb,var(--highlight-color) 40%,transparent)}.beta-contact a:hover{border-bottom-color:var(--highlight-color)}.beta-toggle{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid rgba(127,127,127,.5);border-color:color-mix(in srgb,var(--highlight-color) 55%,transparent);border-radius:11px;padding:.72rem .9rem;background:transparent;color:var(--highlight-color);font-family:inherit;font-size:.92rem;font-weight:700;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.beta-toggle:hover{background:#7f7f7f1f;background:color-mix(in srgb,var(--highlight-color) 12%,transparent);box-shadow:0 6px 18px #00000040}.beta-toggle-caret{transition:transform .2s ease;font-size:.8rem}.beta-toggle.is-open .beta-toggle-caret{transform:rotate(180deg)}.beta-form{display:flex;flex-direction:column;gap:.85rem;margin-top:1rem;padding:1.1rem 1rem 1rem;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#0000002e}.beta-form[hidden]{display:none}.beta-field{display:flex;flex-direction:column;gap:.32rem;font-size:.8rem;font-weight:600}.beta-field em{font-style:normal;font-weight:500;opacity:.6}.beta-field input,.beta-field select,.beta-field textarea{width:100%;background:#00000040;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.65rem .8rem;color:var(--text-color);font-family:inherit;font-size:.92rem;font-weight:500;transition:border-color .2s ease}.beta-field textarea{resize:vertical;min-height:68px;line-height:1.45}.beta-field input:focus,.beta-field select:focus,.beta-field textarea:focus{outline:none;border-color:var(--highlight-color)}.beta-field select option{background:var(--primary-color);color:var(--text-color)}.beta-sub{display:grid;grid-template-rows:0fr;opacity:0;margin-top:-.5rem;transition:grid-template-rows .25s ease,opacity .25s ease,margin-top .25s ease}.beta-sub[hidden]{display:none}.beta-sub>*{overflow:hidden;min-height:0}.beta-sub.is-open{grid-template-rows:1fr;opacity:1;margin-top:0}.beta-sub.is-open>.beta-field,.beta-sub.is-open>.beta-subgroup{padding-left:.75rem;border-left:2px solid rgba(127,127,127,.45);border-left-color:color-mix(in srgb,var(--highlight-color) 45%,transparent)}.beta-subgroup{display:flex;flex-direction:column;gap:.6rem}.beta-subgroup-title{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--highlight-color)}.beta-roles,.beta-metals{display:flex;flex-direction:column;gap:.55rem;margin:0;padding:0;border:0;min-width:0}.beta-roles-legend,.beta-metals-legend{padding:0;font-size:.8rem;font-weight:600}.beta-metals-legend{margin-bottom:.1rem}.beta-roles-legend em,.beta-metals-legend em{font-style:normal;font-weight:500;opacity:.6}.beta-roles-help{margin:.15rem 0 .1rem;font-size:.74rem;line-height:1.45;opacity:.65}.beta-role-body{display:flex;flex-direction:column;gap:.18rem;min-width:0}.beta-role-label{font-weight:500}.beta-role-label strong{font-weight:700}.beta-role-perk{font-size:.72rem;line-height:1.45;opacity:.6}.beta-metal{font-size:.78rem}.beta-pledge{display:flex;flex-direction:column;gap:.45rem;padding:.75rem .8rem;border:1px solid rgba(127,127,127,.4);border-color:color-mix(in srgb,var(--highlight-color) 40%,transparent);border-radius:11px;background:#7f7f7f14;background:color-mix(in srgb,var(--highlight-color) 7%,transparent)}.beta-pledge-title{margin:0;font-size:.85rem;font-weight:700;color:var(--highlight-color)}.beta-pledge-text{margin:0;font-size:.76rem;line-height:1.5;opacity:.8}@media(prefers-reduced-motion:reduce){.beta-sub{transition:none}}.beta-field textarea.is-required{border-color:#7f7f7f8c;border-color:color-mix(in srgb,var(--highlight-color) 55%,transparent)}.beta-check{display:flex;align-items:flex-start;gap:.55rem;font-size:.8rem;font-weight:500;line-height:1.4;cursor:pointer}.beta-check input[type=checkbox]{flex:0 0 auto;margin-top:.15rem;width:1rem;height:1rem;accent-color:var(--highlight-color);cursor:pointer}.beta-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.beta-message{margin:0}.beta-submit{font-size:.88rem;line-height:1.35;padding:.8rem .7rem}.beta-legal{margin:0;font-size:.71rem;line-height:1.45;opacity:.6;text-align:center;font-style:italic}[data-theme=light] .beta-block{border-top-color:#0000001f}[data-theme=light] .beta-form{background:#00000009;border-color:#0000001a}[data-theme=light] .beta-field input,[data-theme=light] .beta-field select,[data-theme=light] .beta-field textarea{background:#fff;border-color:#0000002e}[data-theme=light] .beta-toggle:hover{box-shadow:0 6px 18px #0000001a}[data-theme=light] .auth-divider:before,[data-theme=light] .auth-divider:after{background:#00000026}[data-theme=light] .auth-card{border-color:#00000014;box-shadow:0 20px 60px #0000001f}[data-theme=light] .auth-field input{background:#fff;border-color:#0000002e;color:var(--text-color)}[data-theme=light] .auth-field input::placeholder{color:#0006}[data-theme=light] .auth-btn-google{border:1px solid rgba(0,0,0,.18);box-shadow:0 1px 3px #00000014}[data-theme=light] .auth-btn-social:hover:not(:disabled){box-shadow:0 6px 18px #00000024}[data-theme=light] .auth-tabs{background:#0000000f}[data-theme=light] .auth-tab.active{background:#fff;color:var(--text-color);box-shadow:0 1px 3px #0000001f}[data-theme=light] .auth-forgot{color:#15803d}[data-theme=light] .auth-message.is-error{background:#ef44441a;color:#b91c1c;border-color:#ef444459}[data-theme=light] .auth-message.is-info{background:#22c55e1a;color:#15803d;border-color:#22c55e59}@media(max-width:760px){.pw-grid{grid-template-columns:1fr}.auth-card{padding:1.6rem 1.3rem}}@media(max-width:420px){.beta-title{font-size:.96rem}.beta-form{padding:.9rem .8rem}.beta-submit{font-size:.84rem}}.auth-col,.beta-row{display:contents}@media(min-width:1000px)and (min-height:620px){.auth-card.has-beta{max-width:1120px;display:flex;align-items:flex-start;padding:2rem 2.2rem}.auth-card.has-beta>.auth-col{display:block;flex:1 1 0;min-width:0}.auth-card.has-beta>.auth-col-main{padding-right:2.2rem}.auth-card.has-beta>.auth-col-beta{padding-left:2.2rem;border-left:1px solid rgba(255,255,255,.12)}.auth-card.has-beta .beta-block{margin-top:0;padding-top:0;border-top:0}.auth-card.has-beta .beta-toggle,.auth-card.has-beta .beta-text-secondary{display:none}#neotone-gate:has(.auth-card.has-beta){padding:1rem 1.2rem}.auth-card.has-beta{padding:1.5rem 2.2rem}.auth-card.has-beta .beta-title,.auth-card.has-beta .beta-text{margin-bottom:.5rem}.auth-card.has-beta .beta-form{margin-top:.85rem;gap:.55rem;padding:.85rem .9rem}.auth-card.has-beta .beta-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.auth-card.has-beta .beta-field{gap:.22rem;font-size:.76rem}.auth-card.has-beta .beta-field input,.auth-card.has-beta .beta-field select,.auth-card.has-beta .beta-field textarea{padding:.5rem .7rem;font-size:.88rem}.auth-card.has-beta .beta-field textarea{min-height:44px}.auth-card.has-beta .beta-check{font-size:.76rem}.auth-card.has-beta .beta-roles,.auth-card.has-beta .beta-metals{gap:.42rem}.auth-card.has-beta .beta-roles-legend,.auth-card.has-beta .beta-metals-legend{font-size:.76rem}.auth-card.has-beta .beta-roles-help{font-size:.7rem}.auth-card.has-beta .beta-role-perk{font-size:.68rem}.auth-card.has-beta .beta-subgroup{gap:.48rem}.auth-card.has-beta .beta-pledge{padding:.6rem .68rem;gap:.35rem}.auth-card.has-beta .beta-pledge-title{font-size:.8rem}.auth-card.has-beta .beta-pledge-text{font-size:.72rem}.auth-card.has-beta .beta-submit{padding:.62rem .7rem;font-size:.84rem}.auth-card.has-beta .beta-legal{font-size:.66rem}.auth-card.has-beta .auth-privacy{margin-top:.8rem}}@media(min-width:1000px)and (max-width:1180px)and (min-height:620px){#neotone-gate:has(.auth-card.has-beta){padding:.7rem .9rem}.auth-card.has-beta{padding:1.3rem 1.5rem}.auth-card.has-beta>.auth-col-main{padding-right:1.5rem}.auth-card.has-beta>.auth-col-beta{padding-left:1.5rem}.auth-card.has-beta .beta-title{font-size:.95rem}.auth-card.has-beta .beta-text{font-size:.8rem}.auth-card.has-beta .beta-form{gap:.5rem}.auth-card.has-beta .beta-legal{font-size:.62rem}}[data-theme=light] .auth-card.has-beta>.auth-col-beta{border-left-color:#0000001f}@media(max-height:700px){#neotone-gate{padding:.9rem 1rem}.auth-card{padding:1.4rem}.auth-brand{margin-bottom:.9rem}.auth-logo{font-size:clamp(1.2rem,4.6vw,1.6rem)}.auth-constellation{width:56px;height:87px}.auth-brand-row{gap:.7rem}.auth-byline{font-size:1.1rem}.auth-heading{margin-bottom:.9rem}.auth-divider{margin:.9rem 0}.beta-block{margin-top:1.2rem;padding-top:1rem}}.beta-invited{margin:0 0 1rem;padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(127,127,127,.4);background:#7f7f7f1f;border-color:color-mix(in srgb,var(--highlight-color) 55%,transparent);background:color-mix(in srgb,var(--highlight-color) 14%,transparent)}.beta-invited-title{margin:0 0 .35rem;font-size:.95rem;font-weight:800;color:var(--highlight-color)}.beta-invited-text{margin:0 0 .75rem;font-size:.84rem;line-height:1.45;opacity:.9}.beta-invited-btn{width:100%;padding:.7rem 1rem;border:none;border-radius:10px;background:var(--highlight-color);color:var(--bg-color, #fff);font-size:.9rem;font-weight:700;cursor:pointer;transition:filter .15s ease}.beta-invited-btn:hover{filter:brightness(1.12)}.beta-invited-btn:focus-visible{outline:2px solid var(--highlight-color);outline-offset:2px}.beta-block.is-invited>.beta-eyebrow,.beta-block.is-invited>.beta-title,.beta-block.is-invited>.beta-text,.beta-block.is-invited>.beta-toggle,.beta-block.is-invited>.beta-form{display:none!important}.beta-block.is-invited>.beta-invited{margin:0;padding:1.2rem 1.15rem;border-width:2px}.beta-block.is-invited .beta-invited-title{font-size:1.1rem;margin-bottom:.5rem}.beta-block.is-invited .beta-invited-text{font-size:.9rem;margin-bottom:1rem}.beta-block.is-invited .beta-invited-btn{padding:.85rem 1rem;font-size:.95rem}.beta-notme{display:block;width:100%;margin:.7rem 0 0;padding:.2rem;border:0;background:none;color:inherit;font-family:inherit;font-size:.75rem;opacity:.55;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.beta-notme:hover{opacity:.85}.beta-notme:focus-visible{outline:2px solid var(--highlight-color);outline-offset:2px}.portal-lang{display:flex;align-items:center;gap:.35rem;width:fit-content;margin:-.4rem -.4rem .9rem auto;padding:.25rem .5rem;border-radius:999px;border:1px solid rgba(127,127,127,.28);opacity:.75;transition:opacity .15s ease,border-color .15s ease}.portal-lang:hover,.portal-lang:focus-within{opacity:1;border-color:#7f7f7f80}.portal-lang-icon{width:15px;height:15px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;opacity:.8}.portal-lang-select{border:0;background:transparent;color:var(--text-color);font-family:inherit;font-size:.78rem;font-weight:600;padding:.1rem;cursor:pointer;color-scheme:light dark}.portal-lang-select:focus-visible{outline:2px solid var(--highlight-color);outline-offset:3px}.portal-lang-select option{color:var(--text-color);background:var(--primary-color)}@media(max-height:700px){.portal-lang{margin-bottom:.55rem}}.tch-overlay .nf-modal{width:min(880px,100%)}.tch-tabs{display:flex;gap:8px;margin:6px 0 14px;flex-wrap:wrap}.tch-tab{flex:1 1 auto;min-width:120px;padding:10px 12px;border-radius:12px;border:1px solid rgba(128,128,128,.35);background:#80808014;color:inherit;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.tch-tab:hover{background:#80808029}.tch-tab[aria-selected=true]{background:var(--highlight-color, #22d3ee);color:#0b1220;border-color:transparent}.tch-panel{display:none}.tch-panel.tch-active{display:block}.tch-section{margin:10px 0 18px}.tch-section-title{font-weight:700;font-size:.98rem;margin:0 0 8px}.tch-hint{font-size:.82rem;opacity:.68;margin:0 0 10px}.tch-list{display:flex;flex-direction:column;gap:8px}.tch-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(128,128,128,.25);background:#8080800f}.tch-row-main{flex:1 1 auto;min-width:0}.tch-row-title{font-weight:600;overflow:hidden;text-overflow:ellipsis}.tch-row-sub{font-size:.8rem;opacity:.7;margin-top:2px}.tch-row-actions{flex:0 0 auto;display:flex;gap:6px;align-items:center}.tch-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.74rem;font-weight:600;white-space:nowrap;border:1px solid transparent}.tch-badge-todo{background:#94a3b82e;color:inherit;border-color:#94a3b866}.tch-badge-progress{background:#eab30829;color:#b45309;border-color:#eab30873}.tch-badge-done{background:#22c55e29;color:#15803d;border-color:#22c55e73}.tch-badge-revoked{background:#ef444424;color:#b91c1c;border-color:#ef444466}@media(prefers-color-scheme:dark){.tch-badge-progress{color:#fde68a}.tch-badge-done{color:#86efac}.tch-badge-revoked{color:#fca5a5}}:root[data-theme=dark] .tch-badge-progress{color:#fde68a}:root[data-theme=dark] .tch-badge-done{color:#86efac}:root[data-theme=dark] .tch-badge-revoked{color:#fca5a5}.tch-btn{padding:8px 14px;border-radius:10px;border:1px solid rgba(128,128,128,.35);background:#8080801a;color:inherit;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,filter .15s ease}.tch-btn:hover{background:#80808033}.tch-btn:disabled{opacity:.5;cursor:default}.tch-btn-primary{background:var(--highlight-color, #22d3ee);color:#0b1220;border-color:transparent}.tch-btn-primary:hover{filter:brightness(1.06);background:var(--highlight-color, #22d3ee)}.tch-btn-danger{border-color:#ef444480;color:#ef4444}.tch-btn-danger:hover{background:#ef444424}.tch-btn-sm{padding:5px 10px;font-size:.82rem}.tch-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.tch-label{font-size:.86rem;font-weight:600;opacity:.9}.tch-input,.tch-select,.tch-textarea{width:100%;padding:9px 12px;border-radius:10px;border:1px solid rgba(128,128,128,.35);background:#80808014;color:inherit;font:inherit;box-sizing:border-box}.tch-textarea{resize:vertical;min-height:62px}.tch-invite-link{display:flex;gap:8px;align-items:stretch;margin-top:8px;flex-wrap:wrap}.tch-invite-link input{flex:1 1 220px;min-width:0;padding:9px 12px;border-radius:10px;border:1px solid rgba(129,140,248,.45);background:#818cf81a;color:inherit;font:inherit;font-size:.84rem}.tch-empty{padding:18px;border-radius:12px;border:1px dashed rgba(128,128,128,.35);background:#8080800d;text-align:center;font-size:.9rem;opacity:.85}.tch-feedback{font-size:.84rem;margin-top:8px;min-height:1.1em}.tch-feedback.tch-ok{color:#15803d}.tch-feedback.tch-err{color:#b91c1c}@media(prefers-color-scheme:dark){.tch-feedback.tch-ok{color:#86efac}.tch-feedback.tch-err{color:#fca5a5}}:root[data-theme=dark] .tch-feedback.tch-ok{color:#86efac}:root[data-theme=dark] .tch-feedback.tch-err{color:#fca5a5}.tch-song-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;max-height:240px;overflow-y:auto;padding:2px}.tch-song-card{display:flex;flex-direction:column;gap:2px;text-align:left;padding:9px 11px;border-radius:11px;border:1px solid rgba(128,128,128,.25);background:#8080800f;color:inherit;font:inherit;cursor:pointer}.tch-song-card:hover{background:#80808024}.tch-song-card.tch-selected{border-color:var(--highlight-color, #22d3ee);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 16%,transparent)}.tch-song-card .tch-song-title{font-weight:600}.tch-song-card .tch-song-sub{font-size:.78rem;opacity:.7}.tch-student-picker{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto}.tch-student-check{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;border:1px solid rgba(128,128,128,.22);background:#8080800d;cursor:pointer}.tch-student-check input{flex:0 0 auto;cursor:pointer}@media(max-width:720px){.tch-row{flex-wrap:wrap}.tch-row-actions{width:100%;justify-content:flex-end}}.tch-badge-ex{background:#818cf829;color:#4f46e5;border-color:#818cf873}.tch-practice{margin-top:5px;font-weight:600;opacity:.92}@media(prefers-color-scheme:dark){.tch-badge-ex{color:#c7d2fe}}:root[data-theme=dark] .tch-badge-ex{color:#c7d2fe}.xbld-models{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.xbld-model{display:flex;flex-direction:column;gap:3px;text-align:left;padding:9px 11px;border-radius:12px;cursor:pointer;color:inherit;font:inherit;border:1px solid rgba(128,128,128,.28);background:#8080800f;transition:background .15s ease,border-color .15s ease}.xbld-model:hover{background:#80808024}.xbld-model.on{border-color:var(--highlight-color, #22d3ee);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 16%,transparent)}.xbld-model-label{font-weight:700;font-size:.9rem}.xbld-model-desc{font-size:.75rem;opacity:.72;line-height:1.25}.xbld-scale{font-weight:500;opacity:.7;font-size:.85rem}.xbld-chain{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:34px;margin-bottom:8px}.xbld-chain-empty{font-size:.82rem;opacity:.6}.xbld-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 6px 5px 11px;border-radius:999px;font-weight:600;font-size:.85rem;border:1px solid rgba(129,140,248,.5);background:#818cf81f}.xbld-chip-x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:none;cursor:pointer;background:#80808040;color:inherit;font-size:.9rem;line-height:1}.xbld-chip-x:hover{background:#ef444459}.xbld-chain-clear{margin-left:4px;padding:4px 10px;border-radius:999px;cursor:pointer;border:1px solid rgba(128,128,128,.35);background:transparent;color:inherit;font:inherit;font-size:.8rem}.xbld-palette{display:flex;flex-wrap:wrap;gap:6px;max-height:150px;overflow-y:auto;padding:2px}.xbld-pal-chip{padding:6px 12px;border-radius:10px;cursor:pointer;font:inherit;font-weight:600;color:inherit;border:1px solid rgba(128,128,128,.3);background:#80808012;transition:transform .1s ease,background .15s ease}.xbld-pal-chip:hover{background:#80808029}.xbld-pal-chip.added{animation:xbld-pop .28s ease}@keyframes xbld-pop{0%{transform:scale(1)}40%{transform:scale(1.18);background:var(--highlight-color, #22d3ee)}to{transform:scale(1)}}.xbld-params{display:flex;flex-direction:column;gap:10px}.xbld-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.xbld-plabel{font-size:.85rem;font-weight:600;opacity:.85}.xbld-unit{font-size:.78rem;opacity:.6}.xbld-seg-group{display:inline-flex;gap:4px;flex-wrap:wrap}.xbld-seg{padding:6px 12px;border-radius:9px;cursor:pointer;font:inherit;color:inherit;font-weight:600;border:1px solid rgba(128,128,128,.3);background:#80808012}.xbld-seg:hover{background:#80808029}.xbld-seg.on{border-color:var(--highlight-color, #22d3ee);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 18%,transparent)}.xbld-num{width:62px;padding:6px 8px;border-radius:8px;text-align:center;font:inherit;color:inherit;border:1px solid rgba(128,128,128,.35);background:#80808014}.xbld-num-sm{width:48px}.xbld-inline{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;cursor:pointer}.xbld-accel-detail{font-size:.82rem;display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.xbld-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.xbld-assign{margin-top:6px;display:flex;flex-direction:column;gap:10px}.xpl-overlay .nf-modal{width:min(620px,100%);text-align:center}.xpl-instruction{font-size:.98rem;font-weight:600;margin:4px 0}.xpl-body-reminder{font-size:.88rem;opacity:.8;margin:2px 0 6px}.xpl-stage{display:flex;flex-direction:column;align-items:center;gap:14px;padding:18px 12px;margin:12px 0;border-radius:18px;background:#818cf80f;border:1px solid rgba(129,140,248,.18)}.xpl-chord-label{font-size:1.4rem;font-weight:800;letter-spacing:.5px;min-height:1.4em}.xpl-pastilles{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;min-height:54px;align-items:center}.xpl-pastille{--pc: #888;width:48px;height:48px;border-radius:50%;cursor:pointer;padding:0;border:2px solid var(--pc);background:color-mix(in srgb,var(--pc) 22%,transparent);color:inherit;font:inherit;font-weight:700;display:flex;align-items:center;justify-content:center;transition:transform .08s ease,box-shadow .08s ease,background .08s ease}.xpl-pastille-name{font-size:.82rem}.xpl-pastille.lit{background:var(--pc);color:#fff;transform:scale(1.18);box-shadow:0 0 18px 2px color-mix(in srgb,var(--pc) 75%,transparent);animation:xpl-fade .42s ease forwards}@keyframes xpl-fade{0%{transform:scale(1.18)}to{transform:scale(1)}}.xpl-pulse{display:flex;justify-content:center}.xpl-transport{display:flex;align-items:center;justify-content:center;gap:16px;margin:8px 0;flex-wrap:wrap}.xpl-play{padding:10px 24px;border-radius:12px;cursor:pointer;font:inherit;font-weight:700;font-size:1.02rem;border:none;background:var(--highlight-color, #22d3ee);color:#0b1220}.xpl-play:hover{filter:brightness(1.06)}.xpl-tempo{font-size:.98rem}.xpl-tempo-label{opacity:.7;font-size:.82rem}.xpl-bpm-unit{opacity:.6;font-size:.8rem}.xpl-score{min-height:1.4em;font-size:.95rem;font-weight:600;margin:4px 0 10px}.xpl-passes strong{font-size:1.1rem}.xpl-encouragement{opacity:.75;font-weight:500}.xpl-streak{margin-left:10px;font-size:.82rem;font-weight:700;opacity:.85;color:#fbbf24}.xpl-feedback{min-height:1.5em;font-weight:800;font-size:1.02rem;letter-spacing:.2px;opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;pointer-events:none}.xpl-feedback.show{opacity:1;transform:translateY(0)}.xpl-feedback.perfect{color:#fbbf24;text-shadow:0 0 14px rgba(251,191,36,.75)}.xpl-feedback.good{color:#7dd3fc}.xpl-feedback.early{color:#fde68a}.xpl-feedback.late{color:#fca5a5}.xpl-feedback.wrong{color:#d8b4fe}[data-theme=light] .xpl-feedback.perfect{color:#d97706;text-shadow:0 0 12px rgba(217,119,6,.35)}[data-theme=light] .xpl-feedback.good{color:#0369a1}[data-theme=light] .xpl-feedback.early{color:#b45309}[data-theme=light] .xpl-feedback.late{color:#b91c1c}[data-theme=light] .xpl-feedback.wrong{color:#7e22ce}[data-theme=light] .xpl-streak{color:#d97706}.xpl-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}.xpl-nopressure{font-size:.82rem;opacity:.78;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.xpl-preview-badge{font-size:.82rem;font-weight:600;opacity:.7;padding:6px 12px;border-radius:999px;border:1px dashed rgba(128,128,128,.4)}.xpl-worked{padding:9px 18px;border-radius:11px;cursor:pointer;font:inherit;font-weight:700;border:none;background:#22c55e;color:#05230f}.xpl-worked:hover{filter:brightness(1.06)}.xpl-worked:disabled{opacity:.55;cursor:default}@media(max-width:720px){.xpl-footer{flex-direction:column;align-items:stretch}.xbld-row{gap:6px}}.tch-group-quick{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}.tch-group-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:999px;cursor:pointer;font:inherit;font-weight:600;font-size:.82rem;color:inherit;border:1px solid rgba(129,140,248,.5);background:#818cf81a;transition:background .15s ease}.tch-group-chip:hover{background:#818cf833}.tch-group-chip:disabled{opacity:.45;cursor:default}.tch-group-members{width:100%;margin-top:8px;padding-top:8px;border-top:1px dashed rgba(128,128,128,.3);display:flex;flex-direction:column;gap:5px}.tch-badge-idle{background:#f9731629;color:#c2410c;border-color:#f9731673}@media(prefers-color-scheme:dark){.tch-badge-idle{color:#fdba74}}:root[data-theme=dark] .tch-badge-idle{color:#fdba74}.tch-track-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}.tch-track-search{flex:1 1 160px;min-width:120px}.tch-track-sort{flex:0 0 auto;width:auto}.tch-subrows{display:flex;flex-direction:column;gap:4px;margin-top:8px}.tch-subrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border-radius:9px;background:#8080800f}.tch-subrow-title{flex:1 1 auto;min-width:0;font-size:.9rem;font-weight:600}.tch-subrow .tch-practice{flex-basis:100%;margin-top:2px}.tch-menu-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:.72rem;font-weight:700;line-height:1;background:#ef4444;color:#fff}#btn-account.has-course-notif{position:relative}#btn-account.has-course-notif:after{content:"";position:absolute;top:3px;right:3px;width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px var(--panel-bg, #fff)}.tch-panel>.tch-section{margin:14px 0 20px}.tch-panel>.tch-section+.tch-section{border-top:1px solid rgba(128,128,128,.16);padding-top:16px}.tch-section-title{display:flex;align-items:center;gap:8px;font-size:1.02rem}.tch-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;font-size:.76rem;font-weight:700;background:#80808029;border:1px solid rgba(128,128,128,.25)}.tch-step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 auto;border-radius:50%;font-size:.82rem;font-weight:800;background:var(--highlight-color, #22d3ee);color:#0b1220}.tch-hero{padding:22px 20px;margin:6px 0 18px;border-radius:16px;text-align:center;border:1px solid color-mix(in srgb,var(--highlight-color, #22d3ee) 35%,transparent);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 8%,transparent)}.tch-hero-icon{font-size:2rem;margin-bottom:6px}.tch-hero-title{font-size:1.12rem;font-weight:800;margin-bottom:4px}.tch-hero-text{margin:0 0 10px;opacity:.8;font-size:.92rem}.tch-hero-steps{display:inline-block;text-align:left;margin:0;padding-left:22px;font-size:.9rem;line-height:1.7}.tch-empty-cta{display:flex;flex-direction:column;align-items:center;gap:12px;padding:26px 18px}.tch-empty-cta p{margin:0;line-height:1.55}.tch-empty-icon{font-size:1.8rem;line-height:1}.tch-empty-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.tch-pick-all{display:flex;gap:8px;align-items:center;margin-bottom:6px;font-size:.82rem;opacity:.85}.tch-link-btn{border:none;background:none;padding:2px;cursor:pointer;color:inherit;font:inherit;font-size:.82rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;opacity:.85}.tch-link-btn:hover{opacity:1;color:var(--highlight-color, #22d3ee)}.tch-btn-cta{padding:12px 22px;font-size:1rem;border-radius:12px}.tch-send-hint{margin-top:6px}.tch-row-new{border-color:color-mix(in srgb,var(--highlight-color, #22d3ee) 65%,transparent);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 10%,transparent);animation:tch-glow 1.6s ease 2}@keyframes tch-glow{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--highlight-color, #22d3ee) 35%,transparent)}}.tch-progressbar{height:6px;border-radius:6px;overflow:hidden;margin-top:8px;background:#80808029}.tch-progressbar span{display:block;height:100%;border-radius:6px;background:#22c55e;transition:width .3s ease}.xbld-recap{padding:10px 14px;margin-bottom:10px;border-radius:12px;font-size:.88rem;line-height:1.5;border:1px dashed rgba(128,128,128,.35);background:#8080800d}.xbld-recap-empty{opacity:.65}.tch-toast-host{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:9700;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;max-width:min(560px,calc(100vw - 32px))}.tch-toast{padding:11px 18px;border-radius:12px;font-size:.9rem;font-weight:600;color:var(--text-color, #e0e1dd);background:var(--primary-color, #1b263b);border:1px solid rgba(128,128,128,.35);box-shadow:0 12px 32px #0006;opacity:0;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease;text-align:center}.tch-toast.show{opacity:1;transform:translateY(0)}.tch-toast-ok{border-color:#22c55e8c}.tch-toast-err{border-color:#ef444499}.tch-dialog-overlay{z-index:9600}.tch-dialog{width:min(440px,100%)}.tch-dialog-title{margin:0 0 8px;font-size:1.08rem;font-weight:800}.tch-dialog-msg{margin:0 0 16px;font-size:.92rem;line-height:1.55;opacity:.85}.tch-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}.tch-btn-danger-solid{background:#ef4444;color:#fff;border-color:transparent}.tch-btn-danger-solid:hover{background:#dc2626}.tch-song-grid{max-height:300px}@media(max-width:900px){.tch-tab{min-width:0;padding:9px 10px;font-size:.9rem}}@media(max-width:720px){.tch-tabs{display:grid;grid-template-columns:1fr 1fr}.tch-btn-cta{width:100%}.tch-track-toolbar{flex-direction:column;align-items:stretch}.tch-track-sort{width:100%}.tch-dialog-actions{flex-direction:column-reverse}.tch-dialog-actions .tch-btn{width:100%}.tch-empty-actions{flex-direction:column;width:100%}.tch-empty-actions .tch-btn{width:100%}}.tch-google{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;padding:12px 14px;border-radius:14px;border:1px dashed rgba(128,128,128,.4);background:#8080800d}.tch-google-main{flex:1 1 320px;min-width:0}.tch-google-main .tch-section-title{margin-bottom:4px}.tch-google-main .tch-hint{margin:0}.tch-google-actions{flex:0 0 auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tch-google-on{border-style:solid;border-color:#22c55e73;background:#22c55e12}.tch-google-todo{border-color:#eab30873;background:#eab30812}.tch-agenda-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between}.tch-agenda-filters{display:flex;gap:6px;flex-wrap:wrap}.tch-chip{padding:6px 12px;border-radius:999px;cursor:pointer;border:1px solid rgba(128,128,128,.35);background:#80808012;color:inherit;font:inherit;font-size:.84rem;font-weight:600;transition:background .15s ease,color .15s ease}.tch-chip:hover{background:#80808029}.tch-chip-on{background:var(--highlight-color, #22d3ee);color:#0b1220;border-color:transparent}.tch-chip-on .tch-count{background:#0000002e;color:inherit}.tch-agenda-dayfilter{margin-top:10px;font-size:.86rem;opacity:.85}.tch-agenda-dayfilter .tch-link-btn{margin-left:8px}.tch-cal{border:1px solid rgba(128,128,128,.25);border-radius:14px;padding:10px 12px 12px;background:#8080800a}.tch-cal-head{display:flex;align-items:center;gap:10px;justify-content:space-between}.tch-cal-title{font-weight:700;text-transform:capitalize}.tch-cal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:10px 0 4px;font-size:.72rem;opacity:.6;text-align:center}.tch-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.tch-cal-cell{min-height:46px;padding:4px 2px 3px;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;border:1px solid transparent;background:#8080800f;color:inherit;font:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.tch-cal-cell:hover{background:#80808029}.tch-cal-out{background:transparent;cursor:default}.tch-cal-num{font-size:.82rem;font-weight:600}.tch-cal-has{background:#80808024}.tch-cal-today{border-color:var(--highlight-color, #22d3ee)}.tch-cal-picked{background:color-mix(in srgb,var(--highlight-color, #22d3ee) 22%,transparent);border-color:var(--highlight-color, #22d3ee)}.tch-cal-dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center}.tch-cal-dot{width:6px;height:6px;border-radius:50%;background:#80808099}.tch-cal-dot-proposed{background:#eab308}.tch-cal-dot-confirmed{background:#22c55e}.tch-cal-dot-completed{background:#94a3b8}.tch-cal-dot-cancelled{background:#ef4444}.tch-lesson{align-items:flex-start}.tch-lesson-actions{flex-wrap:wrap;justify-content:flex-end;max-width:260px}.tch-lesson-note{margin-top:6px;padding:7px 10px;border-radius:10px;font-size:.84rem;line-height:1.5;background:#80808017}.tch-slots{margin-top:8px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.tch-slots-label{font-size:.8rem;opacity:.7}.tch-slot{padding:6px 11px;border-radius:999px;cursor:pointer;border:1px solid color-mix(in srgb,var(--highlight-color, #22d3ee) 55%,transparent);background:color-mix(in srgb,var(--highlight-color, #22d3ee) 12%,transparent);color:inherit;font:inherit;font-size:.82rem;font-weight:600;transition:background .15s ease}.tch-slot:hover{background:color-mix(in srgb,var(--highlight-color, #22d3ee) 30%,transparent)}.tch-meet{display:inline-block;margin-top:8px;font-size:.85rem;font-weight:600;color:var(--highlight-color, #22d3ee);text-decoration:none}.tch-meet:hover{text-decoration:underline}.tch-lesson-dialog{width:min(620px,100%);max-height:88vh;overflow-y:auto}.tch-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:720px){.tch-grid2{grid-template-columns:1fr}.tch-lesson-actions{max-width:none;justify-content:flex-start}.tch-agenda-toolbar{align-items:stretch}.tch-agenda-toolbar>.tch-btn{width:100%}.tch-cal-cell{min-height:40px}}.tch-invite-qr{margin-top:10px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.tch-invite-qr[hidden]{display:none}.tch-qr-img{width:min(240px,70vw);height:auto;display:block;padding:10px;border-radius:14px;background:#fff;border:1px solid rgba(128,128,128,.3)}.tch-qr-cap{margin:0;max-width:340px;font-size:.8rem;line-height:1.45;opacity:.72}.tch-subrow-actions{display:inline-flex;gap:5px;flex-wrap:wrap;margin-left:auto}.tch-subrow-actions .tch-btn{padding:3px 9px;font-size:.76rem;border-radius:8px}.tch-pick-dialog{width:min(480px,100%)}.tch-pick-list{margin-top:6px;max-height:42vh}.tch-pick-hint{margin-left:auto;font-size:.76rem;opacity:.6}.xbld-draft{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 14px;padding:10px 14px;border-radius:12px;border:1px solid rgba(234,179,8,.45);background:#eab3081a}.xbld-draft[hidden]{display:none}.xbld-draft-main{flex:1 1 220px;min-width:0}.xbld-draft-title{font-weight:700;font-size:.92rem}.xbld-draft-sub{font-size:.8rem;opacity:.78;line-height:1.4;margin-top:2px}.xbld-draft-actions{display:flex;gap:6px;flex-wrap:wrap}.xbld-refresh{margin-left:auto;flex:0 0 auto;width:28px;height:28px;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.3);background:#80808012;color:inherit;font:inherit;font-size:.95rem;line-height:1;opacity:.7;transition:opacity .15s ease,background .15s ease,transform .25s ease}.xbld-refresh:hover{opacity:1;background:#8080802e;transform:rotate(180deg)}@media(max-width:720px){.tch-subrow-actions{margin-left:0;width:100%}}.sp-overlay{position:fixed;inset:0;z-index:9600;display:flex;align-items:center;justify-content:center;padding:18px;background:radial-gradient(120% 120% at 50% 0%,#141e37b8,#030710e6);backdrop-filter:blur(6px);font-family:var(--font-family, sans-serif);color:var(--text-color, #e6e9f2);animation:sp-fade .22s ease}@keyframes sp-fade{0%{opacity:0}to{opacity:1}}.sp-modal{position:relative;width:min(960px,100%);max-height:94vh;overflow-y:auto;display:flex;flex-direction:column;gap:16px;background:var(--primary-color, #141d33);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:22px 24px 20px;box-shadow:0 30px 80px #0009}.sp-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sp-title{font-size:1.28rem;font-weight:800;letter-spacing:.01em;display:flex;align-items:center;gap:10px}.sp-badge{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;padding:3px 8px;border-radius:999px;background:#8b5cf638;color:#c4b5fd;border:1px solid rgba(139,92,246,.4)}.sp-close{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:inherit;width:34px;height:34px;border-radius:50%;font-size:1rem;cursor:pointer;flex:0 0 auto;transition:background .15s}.sp-close:hover{background:#ffffff29}.sp-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px}.sp-ctl{display:flex;flex-direction:column;gap:5px;font-size:.72rem}.sp-ctl>span{opacity:.72;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sp-ctl-tempo{min-width:180px;flex:1 1 180px}.sp-ctl-tempo input[type=range]{width:100%;accent-color:#8b5cf6}.sp-bpm-val{color:#c4b5fd}.sp-scale{background:#ffffff0f;border:1px solid rgba(255,255,255,.14);color:inherit;border-radius:10px;padding:8px 10px;font-size:.86rem;font-family:inherit;cursor:pointer;min-width:170px}.sp-seg{display:inline-flex;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.14)}.sp-seg button{background:#ffffff0a;border:none;color:inherit;padding:8px 14px;font-size:.82rem;font-family:inherit;cursor:pointer;transition:background .15s}.sp-seg button+button{border-left:1px solid rgba(255,255,255,.12)}.sp-seg button.on{background:#8b5cf666;font-weight:700}.sp-opt{background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:inherit;border-radius:999px;padding:8px 15px;font-size:.8rem;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}.sp-opt:hover{background:#ffffff1a}.sp-opt.on{background:#22c55e47;border-color:#22c55e99;font-weight:700}.sp-figsel{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.sp-figsel-grp{display:inline-flex;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.14)}.sp-figbtn{background:#ffffff0a;border:none;color:inherit;padding:7px 10px;font-size:.76rem;font-family:inherit;cursor:pointer;transition:background .15s;white-space:nowrap}.sp-figbtn+.sp-figbtn{border-left:1px solid rgba(255,255,255,.12)}.sp-figbtn:hover{background:#ffffff1a}.sp-figbtn.on{background:#8b5cf666;font-weight:700}.sp-figsel-bpm{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;opacity:.85}.sp-figsel-bpm input{width:56px;background:#ffffff0f;border:1px solid rgba(255,255,255,.16);border-radius:8px;color:inherit;font-family:inherit;font-size:.78rem;padding:5px 6px;text-align:center}[data-theme=light] .sp-figsel-grp{border-color:#00000029}[data-theme=light] .sp-figbtn+.sp-figbtn{border-left-color:#0000001f}[data-theme=light] .sp-figsel-bpm input{border-color:#0000002e;background:#0000000a}.sp-volume{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);font-size:.74rem}.sp-volume input[type=range]{width:88px;accent-color:#8B5CF6}.sp-volume-icn{line-height:1}.sp-volume-val{font-size:.7rem;min-width:30px;text-align:right;opacity:.85}[data-theme=light] .sp-volume{border-color:#00000029;background:#0000000a}.sp-tuner-acc{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.sp-tuner-toggle .sp-tuner-chev{display:inline-block;transition:transform .18s;margin-left:2px}.sp-tuner-toggle:not(.on) .sp-tuner-chev{transform:rotate(-90deg)}.sp-tuner-acc .sp-tuner-host,.spi-tuner-host{width:100%}.spi-sat-tuner{flex-direction:column;align-items:stretch;gap:6px}.spi-sat-tuner .sp-tuner-toggle{align-self:flex-start}.spi-sat-loop{flex-wrap:wrap}.sp-play{margin-left:auto;background:linear-gradient(135deg,#7c3aed,#8b5cf6);border:none;color:#fff;border-radius:999px;padding:10px 22px;font-size:.92rem;font-weight:800;font-family:inherit;cursor:pointer;box-shadow:0 8px 22px #7c3aed66;transition:transform .12s,box-shadow .15s,opacity .15s}.sp-play:hover:not(:disabled){transform:translateY(-1px)}.sp-play:disabled{opacity:.4;cursor:default;box-shadow:none}.sp-voyage-box[hidden]{display:none}.sp-voyage-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1)}.sp-voyage-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;opacity:.65}.sp-voyage-seq{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1 1 auto}.sp-voyage-empty{font-size:.78rem;opacity:.6}.sp-voyage-arrow{opacity:.4}.sp-voyage-chip{display:inline-flex;align-items:center;gap:4px;font-weight:800;font-size:.86rem;padding:4px 6px 4px 11px;border-radius:999px;color:#fff;background:var(--deg, #888);box-shadow:0 2px 8px #0000004d}.sp-voyage-chip.is-current{outline:2px solid #fff;outline-offset:1px}.sp-voyage-x{background:#00000040;border:none;color:#fff;width:18px;height:18px;border-radius:50%;cursor:pointer;font-size:.8rem;line-height:1}.sp-voyage-meas{font-size:.78rem;opacity:.85;display:inline-flex;align-items:center;gap:6px}.sp-voyage-step{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:inherit;width:24px;height:24px;border-radius:7px;cursor:pointer;font-size:1rem;line-height:1}.sp-voyage-reset{background:none;border:1px solid rgba(255,255,255,.16);color:inherit;border-radius:999px;padding:5px 12px;font-size:.74rem;font-family:inherit;cursor:pointer}.sp-cards{display:flex;flex-wrap:wrap;gap:10px}.sp-cards-empty{font-size:.85rem;opacity:.7;padding:8px 2px}.sp-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:74px;padding:12px 10px;border-radius:16px;cursor:pointer;font-family:inherit;color:#fff;background:var(--deg, #666);border:2px solid transparent;box-shadow:0 4px 14px #00000059;transition:transform .12s,box-shadow .15s,filter .15s}.sp-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(to bottom,#ffffff38,#fff0);pointer-events:none}.sp-card:hover{transform:translateY(-2px);filter:brightness(1.08)}.sp-card.is-selected{border-color:#fff;box-shadow:0 6px 20px #00000073}.sp-card.is-active{border-color:#fff;animation:sp-card-pulse 1.4s ease-in-out infinite}@keyframes sp-card-pulse{0%,to{box-shadow:0 0 #ffffff80}50%{box-shadow:0 0 0 6px #fff0}}.sp-card-roman{font-size:1.25rem;font-weight:900;letter-spacing:.02em}.sp-card-fund{font-size:.82rem;font-weight:700;opacity:.92}.sp-stage{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center;padding:14px 10px;border-radius:18px;background:#ffffff08;border:1px solid rgba(255,255,255,.07)}.sp-figure-host{display:flex;flex-direction:column;align-items:center;gap:8px}.sp-figure{width:160px;height:auto;max-height:250px}.sp-fig-stroke{fill:none;stroke:#e6e9f29e;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sp-fig-soft{stroke:#e6e9f24d;stroke-width:1.2}.sp-fig-axis{stroke:#e6e9f21f;stroke-width:1;stroke-dasharray:1 5;stroke-linecap:round}.sp-ck{opacity:.45;transition:opacity .3s}.sp-ck.is-active{opacity:1;filter:drop-shadow(0 0 6px rgba(255,255,255,.5))}.sp-ck-glow{filter:blur(6px);opacity:0}.sp-ck-glow.is-active{animation:sp-ck-breathe 3.2s ease-in-out infinite}@keyframes sp-ck-breathe{0%,to{opacity:.26;transform:scale(.9)}50%{opacity:.6;transform:scale(1.25)}}.sp-ck-wave{opacity:0;stroke-width:1.6}.sp-ck-wave.is-active{animation:sp-ck-wave 2.8s ease-out infinite}.sp-ck-wave2.is-active{animation-delay:1.4s}@keyframes sp-ck-wave{0%{opacity:.55;transform:scale(.6)}70%{opacity:0;transform:scale(2.6)}to{opacity:0;transform:scale(2.6)}}.sp-ck-flash{filter:blur(4px);opacity:0}.sp-ck-ring{stroke-width:1.2;opacity:.3;transition:opacity .3s}.sp-ck-ring.is-active{opacity:.85}.sp-fig-aura{transition:color .5s}.sp-fig-web{stroke:#e6e9f240;stroke-width:.8}.sp-fig-node{fill:#e6e9f2b3}.sp-fig-spark{fill:#e6e9f259}.sp-figure--constellation .sp-ck-star{stroke:#ffffff59;stroke-width:.5}.sp-fig-variants{display:inline-flex;gap:4px}.sp-fig-var{background:none;border:1px solid rgba(255,255,255,.14);color:inherit;border-radius:999px;padding:3px 9px;font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;font-family:inherit;cursor:pointer;opacity:.6;transition:opacity .15s,background .15s}.sp-fig-var:hover{opacity:1}.sp-fig-var.on{opacity:1;background:#8b5cf64d;border-color:#8b5cf68c;font-weight:700}.sp-pan-caption{font-size:.72rem;opacity:.65;font-weight:600;text-align:center;max-width:260px}.sp-stage-info{display:flex;flex-direction:column;gap:8px;min-width:0}.sp-voice-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sp-voice-lbl{font-size:.76rem;font-weight:700;opacity:.72;text-transform:uppercase;letter-spacing:.04em}.sp-listen{background:#ffffff0f;border:1px solid rgba(255,255,255,.18);color:inherit;border-radius:999px;padding:7px 14px;font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;transition:background .15s,transform .12s}.sp-listen:hover{background:#ffffff24;transform:translateY(-1px)}.sp-hold-btn.on{background:#22c55e47;border-color:#22c55e99;box-shadow:0 0 12px #22c55e40}.sp-stage-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;opacity:.6;font-weight:700}.sp-fund{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sp-fund-swatch{width:24px;height:24px;border-radius:50%;box-shadow:0 0 0 2px #ffffff4d,0 3px 10px #0006;flex:0 0 auto}.sp-fund-name{font-size:3.2rem;font-weight:900;line-height:1;text-shadow:0 2px 20px rgba(0,0,0,.35)}.sp-oct{display:inline-flex;gap:6px}.sp-oct-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.16);color:inherit;width:34px;height:34px;border-radius:10px;cursor:pointer;font-size:1rem}.sp-oct-btn:hover{background:#ffffff24}.sp-vowel{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.sp-vowel-big{font-size:2.6rem;font-weight:800;color:#f8fafc;letter-spacing:.04em}.sp-vowel-ex{font-size:.92rem;opacity:.72;font-style:italic}.sp-chakra-name{font-size:.95rem;font-weight:700}.sp-tuner{margin-top:8px;padding:12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:9px;font-size:.82rem}.sp-tuner-head{font-weight:800;font-size:.85rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sp-tuner-ref{font-size:.68rem;opacity:.6;font-weight:600}.sp-tuner-off{margin-left:auto;background:none;border:1px solid rgba(255,255,255,.18);color:inherit;border-radius:999px;padding:4px 11px;font-size:.7rem;font-family:inherit;cursor:pointer;opacity:.75}.sp-tuner-off:hover{opacity:1}.sp-tuner-warn{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;line-height:1.45;padding:9px 11px;border-radius:10px;background:#eab3081a;border:1px solid rgba(234,179,8,.32)}.sp-tuner-warn-icn{font-size:1.25rem;line-height:1}.sp-tuner-msg{font-size:.8rem;line-height:1.45;opacity:.85}.sp-tuner-btn{align-self:flex-start;background:linear-gradient(135deg,#7c3aed,#8b5cf6);border:none;color:#fff;border-radius:999px;padding:8px 16px;font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;box-shadow:0 6px 16px #7c3aed59}.sp-tuner-btn:hover{transform:translateY(-1px)}.sp-tuner-targetline{font-size:.84rem}.sp-tuner-target{font-size:1rem}.sp-tuner-heard{font-size:.72rem;opacity:.55}.sp-tuner-vgauge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:2px 0}.sp-tuner-vlbl{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;opacity:.7;pointer-events:none}.sp-tuner-vtrack{position:relative;width:84px;height:216px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,#ef444433,#f59e0b1f 28%,#22c55e29,#f59e0b1f 72%,#ef444433)}.sp-tuner-vzone{position:absolute;left:5px;right:5px;min-height:26px;border-radius:10px;background:#22c55e47;border:1px solid rgba(34,197,94,.6);box-shadow:inset 0 0 12px #22c55e40}.sp-tuner-vtargetline{position:absolute;left:0;right:0;top:50%;border-top:2px solid rgba(255,255,255,.9);pointer-events:none}.sp-tuner-vtarget-name{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:2px 12px;border-radius:999px;background:#0a0e16eb;border:1px solid rgba(255,255,255,.4);font-size:.95rem;font-weight:800;white-space:nowrap;pointer-events:none}.sp-tuner-vdot{position:absolute;left:50%;width:24px;height:24px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.9);background:#f59e0b;transition:top .06s linear,background-color .15s;pointer-events:none}.sp-tuner-voff{position:absolute;left:50%;transform:translate(-50%);padding:2px 8px;border-radius:8px;font-size:.72rem;font-weight:800;white-space:nowrap;background:#ef444433;border:1px solid rgba(239,68,68,.55);color:#fecaca;pointer-events:none}.sp-tuner-voff-high{top:5px}.sp-tuner-voff-low{bottom:5px}@media(prefers-reduced-motion:reduce){.sp-tuner-vdot{transition:none}}.sp-tuner-verdict{font-size:.82rem;font-weight:600;min-height:1.2em;text-align:center}.sp-tuner-verdict.is-win{color:#4ade80}.sp-videos{display:flex;flex-direction:column;gap:10px}.sp-videos-title{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.7;text-align:center}.sp-videos-sub{font-size:.84rem;line-height:1.45;opacity:.8;text-align:center;max-width:620px;margin:0 auto}.sp-videos-row{display:grid;grid-template-columns:repeat(3,minmax(0,280px));gap:12px;justify-content:center}.sp-video-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);min-width:0}.sp-video-name{font-size:.86rem;font-weight:700}.sp-video-desc{font-size:.74rem;line-height:1.4;opacity:.7;flex:1 1 auto}.sp-video-thumb{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:radial-gradient(90% 120% at 30% 0%,#8b5cf666,#140f2833 60%),linear-gradient(135deg,#1e143ce6,#080a18f2);border:1px solid rgba(255,255,255,.14)}.sp-video-thumb:not(.is-ready){opacity:.55}.sp-video-thumb.is-ready{cursor:pointer}.sp-video-thumb-play{width:46px;height:46px;border-radius:50%;background:#ffffffeb;color:#4c1d95;display:flex;align-items:center;justify-content:center;padding-left:4px;font-size:1.05rem;box-shadow:0 6px 18px #00000073;transition:transform .15s}.sp-video-thumb.is-ready:hover .sp-video-thumb-play{transform:scale(1.1)}.sp-video-thumb-txt{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.85}.sp-video-thumb.is-playing{aspect-ratio:auto;display:block;cursor:default;background:none;border:none;overflow:visible;opacity:1}.sp-video-soon{align-self:flex-start;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:3px 9px;border-radius:999px;background:#8b5cf633;color:#c4b5fd;border:1px solid rgba(139,92,246,.4)}.sp-pulse-host{display:flex;justify-content:center;padding-top:2px}.sp-invite{width:min(460px,100%);text-align:center;align-items:center}.sp-invite-art{font-size:3.4rem;margin:6px 0 2px}.sp-invite-title{font-size:1.5rem;font-weight:800;margin:0}.sp-invite-lead{font-size:.98rem;line-height:1.5;opacity:.88;margin:4px 0 0}.sp-invite-sub{font-size:.9rem;opacity:.7;margin:2px 0 6px}[data-theme=light] .sp-modal{border-color:#0000001a;box-shadow:0 30px 80px #00000040}[data-theme=light] .sp-scale,[data-theme=light] .sp-seg,[data-theme=light] .sp-opt,[data-theme=light] .sp-close,[data-theme=light] .sp-oct-btn,[data-theme=light] .sp-voyage-step{background:#0000000d;border-color:#00000024}[data-theme=light] .sp-seg button{background:#00000008}[data-theme=light] .sp-stage,[data-theme=light] .sp-voyage-box{background:#00000009;border-color:#00000017}[data-theme=light] .sp-fig-stroke{stroke:#1e293b8c}[data-theme=light] .sp-fig-soft{stroke:#1e293b47}[data-theme=light] .sp-fig-axis{stroke:#1e293b24}[data-theme=light] .sp-fig-web{stroke:#1e293b40}[data-theme=light] .sp-fig-node{fill:#1e293b99}[data-theme=light] .sp-fig-spark{fill:#1e293b4d}[data-theme=light] .sp-ck.is-active{filter:drop-shadow(0 0 4px rgba(30,41,59,.35))}[data-theme=light] .sp-fig-var,[data-theme=light] .sp-tuner-off{border-color:#00000029}[data-theme=light] .sp-tuner,[data-theme=light] .sp-video-card{background:#00000009;border-color:#00000017}[data-theme=light] .sp-tuner-vtrack{border-color:#00000029}[data-theme=light] .sp-tuner-vtargetline{border-top-color:#0f172ad9}[data-theme=light] .sp-tuner-vtarget-name{background:#fff;border-color:#0f172a73;color:#0f172a}[data-theme=light] .sp-tuner-vdot{border-color:#0f172a8c}[data-theme=light] .sp-tuner-voff{background:#dc26261a;border-color:#dc262680;color:#b91c1c}[data-theme=light] .sp-tuner-verdict.is-win{color:#16a34a}[data-theme=light] .sp-vowel-big{color:#0f172a}[data-theme=light] .sp-fund-name{text-shadow:none}@media(max-width:900px){.sp-stage{grid-template-columns:170px 1fr}}@media(max-width:640px){.sp-stage{grid-template-columns:1fr}.sp-figure{max-height:200px}.sp-fund-name{font-size:2.6rem}.sp-play{margin-left:0}.sp-videos-row{grid-template-columns:minmax(0,420px)}.sp-feet-stage{gap:6px}.sp-foot{width:60px;height:44px}.sp-pan-slot svg{width:190px;height:190px}}.spx-section{margin:14px 0 0;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff08;overflow:hidden}.spx-summary{cursor:pointer;padding:12px 16px;font-weight:700;font-size:1.02rem;list-style:none;user-select:none}.spx-summary::-webkit-details-marker{display:none}.spx-summary:before{content:"▸ ";opacity:.6}.spx-section[open]>.spx-summary:before{content:"▾ "}.spx-body{padding:4px 16px 16px;display:flex;flex-direction:column;gap:12px}.spx-intro{margin:0;opacity:.85;font-size:.92rem;line-height:1.45}.spx-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.spx-lbl{font-size:.85rem;opacity:.75;font-weight:600}.spx-exercises,.spm-models{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.spx-ex{text-align:left;padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#ffffff0a;color:inherit;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s}.spx-ex:hover{background:#ffffff14}.spx-ex.is-selected{border-color:#8b5cf6;background:#8b5cf624}.spx-ex-title{font-weight:700;font-size:.92rem}.spx-ex-desc{font-size:.8rem;opacity:.75;line-height:1.35}.spx-run{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spx-start.spx-on,.spm-listen.spx-on,.spm-yourturn.spx-on{filter:brightness(1.15);outline:2px solid rgba(139,92,246,.6)}.spx-feedback{min-height:1.6em;font-size:1rem;display:flex;align-items:center;gap:8px}.spx-mark{font-size:1.3rem;font-weight:800}.spx-mark-perfect,.spx-v-perfect{color:#22c55e}.spx-mark-good,.spx-v-good{color:#4ade80}.spx-mark-early,.spx-v-early,.spx-mark-late,.spx-v-late{color:#f59e0b}.spx-midi-status{font-size:.83rem}.spx-midi-ok{color:#22c55e}.spx-midi-off{opacity:.7}.spx-help-btn{align-self:flex-start;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:inherit;cursor:pointer;font-size:.9rem}.spx-help-btn:hover{background:#ffffff1a}.spx-help-panel{margin-top:10px;padding:12px 14px;border-radius:10px;border:1px solid rgba(139,92,246,.35);background:#8b5cf614;display:flex;flex-direction:column;gap:8px;font-size:.9rem;line-height:1.45}.spx-help-msg{margin:0;font-weight:600}.spx-help-advice{margin:0;opacity:.9}.spx-help-note{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.spx-help-text{resize:vertical;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#0003;color:inherit;padding:8px;font:inherit}.spx-help-send{align-self:flex-start;padding:6px 12px;border-radius:8px;border:none;background:#8b5cf6;color:#fff;cursor:pointer;font-weight:600}.spx-help-saved{color:#22c55e;font-size:.88rem}.spx-brain{margin:0;padding:10px 12px;border-left:3px solid #8B5CF6;background:#8b5cf60f;border-radius:0 8px 8px 0;font-size:.85rem;line-height:1.5;opacity:.9}.spm-lyrics-lbl{display:flex;flex-direction:column;gap:4px;font-size:.88rem}.spm-lyrics{resize:vertical;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#0003;color:inherit;padding:8px;font:inherit}.spm-actions{display:flex;gap:12px;flex-wrap:wrap}.spm-stage{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:start;padding:12px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.1)}.spm-pan-host{display:flex;justify-content:center}.spm-side{display:flex;flex-direction:column;gap:10px}.spm-phase-msg{font-size:.95rem;font-weight:600}.spm-lyrics-big{font-size:1.5rem;font-weight:700;line-height:1.4;white-space:pre-wrap;color:var(--chakra-a, #7C3AED);filter:brightness(1.35)}.spm-feedback{min-height:1.5em;display:flex;align-items:center;gap:8px}.spm-tempo-row input[type=range]{flex:1;min-width:140px}[data-theme=light] .spx-section{border-color:#0000001f;background:#00000006}[data-theme=light] .spx-ex{border-color:#00000024;background:#00000008}[data-theme=light] .spx-ex:hover{background:#0000000f}[data-theme=light] .spx-help-text,[data-theme=light] .spm-lyrics{background:#ffffffb3;border-color:#00000029}[data-theme=light] .spm-stage{background:#00000008;border-color:#0000001a}[data-theme=light] .spx-help-btn{border-color:#0000002e;background:#0000000a}@media(max-width:640px){.spm-stage,.spx-exercises,.spm-models{grid-template-columns:1fr}}.sp-card.is-locked{filter:grayscale(.9) brightness(.7);opacity:.55;cursor:default}.sp-card.is-locked:hover{transform:none;filter:grayscale(.9) brightness(.78)}.sp-card-missing{font-size:.68rem;font-weight:600;opacity:.9;line-height:1.15}.sp-complete-box{margin:4px 14px 0;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;font-size:.9rem}.sp-complete-box.sp-complete-pulse{animation:sp-complete-pulse .9s ease}@keyframes sp-complete-pulse{0%{box-shadow:0 0 #ffd7008c}to{box-shadow:0 0 0 10px #ffd70000}}.sp-complete-msg{flex:1 1 300px;line-height:1.45}.sp-complete-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.sp-complete-btn{border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:inherit;border-radius:999px;padding:7px 14px;font-weight:700;cursor:pointer}.sp-complete-btn:hover{background:#ffffff26}.sp-complete-neotone{font-size:.82rem;opacity:.85;text-decoration:none;color:inherit}.sp-complete-neotone:hover{opacity:1;text-decoration:underline}[data-theme=light] .sp-complete-box{border-color:#0000001f;background:#00000008}[data-theme=light] .sp-complete-btn{border-color:#0003;background:#0000000d}[data-theme=light] .sp-complete-btn:hover{background:#0000001a}.sp-pulse-host .pulse-feet,.sp-pulse-host .pulse-foot{display:none}.sp-feet{margin:6px 14px 10px;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff08}.sp-feet-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sp-feet-title{font-weight:700;font-size:.92rem}.sp-feet-swap{background:#ffffff0d;border:1px solid rgba(255,255,255,.16);color:inherit;border-radius:999px;padding:5px 12px;font-size:.74rem;font-family:inherit;cursor:pointer;transition:background .15s,opacity .15s}.sp-feet-swap:hover{background:#ffffff1f}.sp-feet-swap.is-off{opacity:.35;pointer-events:none}.sp-feet-info-btn{width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:inherit;font-weight:800;cursor:pointer;line-height:1}.sp-feet-info-btn:hover{background:#ffffff1f}.sp-feet-switch{margin-left:auto;position:relative;display:inline-flex;cursor:pointer}.sp-feet-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.sp-feet-slider{width:40px;height:22px;border-radius:999px;background:#ffffff2e;position:relative;transition:background .2s ease}.sp-feet-slider:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s ease}.sp-feet-switch input:checked+.sp-feet-slider{background:var(--chakra-g, #2563EB)}.sp-feet-switch input:checked+.sp-feet-slider:after{transform:translate(18px)}.sp-feet-info{margin-top:8px;font-size:.85rem;line-height:1.5;opacity:.92;border-left:3px solid var(--chakra-g, #2563EB);padding-left:10px}.sp-balance-slot{display:flex;flex-direction:column;align-items:center;gap:4px;margin:8px 0 2px}.sp-balance-hint{font-size:.76rem;opacity:.7;font-weight:600;text-align:center;max-width:460px;line-height:1.4}.sp-feet-stage{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center;gap:14px;padding:8px 0 2px}.sp-pan-slot{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:120px;justify-content:center}.sp-pan-slot svg{border-radius:50%;box-shadow:0 8px 26px #0006}.sp-pan-slot svg.mini-pan-svg{border-radius:0;box-shadow:none;filter:drop-shadow(0 8px 20px rgba(0,0,0,.42))}.sp-foot-side{display:flex;flex-direction:column;align-items:center;gap:5px;transition:opacity .2s,filter .2s}.sp-foot-side.is-off{opacity:.25;filter:grayscale(1)}.sp-foot-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;opacity:.55}.sp-foot-nums{display:flex;gap:8px}.sp-foot-num{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;font-variant-numeric:tabular-nums;border:1px solid rgba(255,255,255,.3);background:#ffffff0d;opacity:.6;transition:opacity .1s,background .1s,transform .1s,box-shadow .1s}.sp-foot-num.is-one{border-color:#f97316b3}.sp-foot-num.is-now{opacity:1;border-color:#fff;transform:scale(1.2)}.sp-foot-side-l .sp-foot-num.is-now{background:var(--hand-color-left, #3B82F6);box-shadow:0 0 10px #3b82f6b3}.sp-foot-side-r .sp-foot-num.is-now{background:var(--hand-color-right, #EF4444);box-shadow:0 0 10px #ef4444b3}.sp-foot-side-l .sp-foot-num.is-one.is-now,.sp-foot-side-r .sp-foot-num.is-one.is-now{background:#f97316;box-shadow:0 0 12px #f97316cc}.sp-count-invite{margin-top:6px;text-align:center;font-size:.8rem;font-weight:600;opacity:.75;line-height:1.4}.sp-foot{width:84px;height:60px;transition:filter .32s ease}.sp-foot-shape{fill:#ffffff29;stroke:#ffffffbf;stroke-width:3;stroke-linejoin:round;transition:transform .14s ease,fill .32s ease,stroke .32s ease;transform-origin:50% 90%;transform-box:fill-box}.sp-foot-ground{stroke:#ffffff47;stroke-width:3;stroke-linecap:round}.sp-foot .sp-foot-shape{transform:translateY(-6px) rotate(-6deg)}.sp-foot.is-tap{transition-duration:.05s}.sp-foot.is-tap .sp-foot-shape{transform:translateY(0) rotate(0);transition-duration:.14s,.05s,.05s}.sp-foot-l.is-tap{filter:drop-shadow(0 0 12px rgba(59,130,246,.85))}.sp-foot-l.is-tap .sp-foot-shape{fill:#3b82f6cc;stroke:#bfdbfe}.sp-foot-r.is-tap{filter:drop-shadow(0 0 12px rgba(239,68,68,.85))}.sp-foot-r.is-tap .sp-foot-shape{fill:#ef4444cc;stroke:#fecaca}.sp-foot-l.is-accent{filter:drop-shadow(0 0 22px var(--hand-color-left, #3B82F6))}.sp-foot-r.is-accent{filter:drop-shadow(0 0 22px var(--hand-color-right, #EF4444))}.sp-foot.is-accent .sp-foot-shape{stroke:#fff}@media(prefers-reduced-motion:reduce){.sp-foot,.sp-foot-shape{transition:none}}.sp-feet-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.2rem;font-weight:900;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6);pointer-events:none}[data-theme=light] .sp-feet{border-color:#0000001f;background:#00000008}[data-theme=light] .sp-foot-shape{fill:#0000001a;stroke:#0009}[data-theme=light] .sp-foot-l.is-tap .sp-foot-shape{fill:#3b82f6bf;stroke:#1d4ed8}[data-theme=light] .sp-foot-r.is-tap .sp-foot-shape{fill:#ef4444bf;stroke:#b91c1c}[data-theme=light] .sp-foot-ground{stroke:#00000040}[data-theme=light] .sp-feet-count{color:#222;text-shadow:none}[data-theme=light] .sp-feet-info-btn{border-color:#0000004d}[data-theme=light] .sp-feet-swap{border-color:#0000002e;background:#0000000a}[data-theme=light] .sp-foot-num{border-color:#0000004d;background:#0000000a}.sp-welcome{position:relative;padding:14px 44px 12px 18px;border-radius:14px;background:linear-gradient(135deg,#8b5cf624,#22c55e12);border:1px solid rgba(139,92,246,.35)}.sp-welcome-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#ffffff12;border:1px solid rgba(255,255,255,.16);color:inherit;font-size:.85rem;cursor:pointer;transition:background .15s}.sp-welcome-close:hover{background:#ffffff29}.sp-welcome-title{font-weight:800;font-size:1rem;margin-bottom:4px}.sp-welcome-lead{margin:0 0 8px;font-size:.88rem;line-height:1.45;opacity:.9}.sp-welcome-steps{margin:0 0 10px;padding-left:22px;font-size:.86rem;line-height:1.5;display:flex;flex-direction:column;gap:3px}.sp-welcome-hide{display:inline-flex;align-items:center;gap:7px;font-size:.76rem;opacity:.72;cursor:pointer;user-select:none}.sp-welcome-hide input{accent-color:#8b5cf6}[data-theme=light] .sp-welcome{border-color:#7c3aed59;background:linear-gradient(135deg,#8b5cf61a,#22c55e0f)}[data-theme=light] .sp-welcome-close{background:#0000000d;border-color:#00000024}.sp-tuner-tip{font-size:.76rem;line-height:1.45;opacity:.78}.sp-ctl-atlas[hidden]{display:none}.sp-ctl-atlas{align-items:center}.sp-tonic-flower{margin:0}[data-theme=light] .sp-listen{border-color:#0000002e;background:#0000000a}[data-theme=light] .sp-video-thumb{border-color:#00000024}.sp-modal.sp-v3{width:min(1240px,100%);padding:14px 18px 12px;gap:10px}.sp-v3 .sp-head{min-height:0}.sp-v3 .sp-title{font-size:1.1rem}.sp-v3 .sp-welcome{position:absolute;top:58px;left:50%;transform:translate(-50%);width:min(640px,94%);z-index:45;background-color:var(--primary-color, #141d33);background-image:linear-gradient(135deg,#8b5cf629,#22c55e14);box-shadow:0 26px 70px #0000008c}.sp-v3 .sp-main{display:flex;flex-direction:column;gap:10px;min-height:0}@media(min-width:1024px){.sp-v3 .sp-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:stretch}}.sp-v3 .sp-stage{grid-template-columns:148px 1fr;padding:10px;gap:14px;margin:0}.sp-v3 .sp-figure{width:138px;max-height:min(240px,32vh)}.sp-v3 .sp-stage-info{gap:6px}.sp-v3 .sp-fund-name{font-size:clamp(2rem,4.6vh,2.8rem)}.sp-v3 .sp-vowel-big{font-size:clamp(1.5rem,3.4vh,2.1rem)}.sp-v3 .sp-tuner{margin-top:4px;padding:9px 11px;gap:7px;font-size:.78rem}.sp-v3 .sp-feet{margin:0;padding:8px 12px;height:100%;box-sizing:border-box}.sp-v3 .sp-pan-slot svg{width:min(225px,30vh);height:min(225px,30vh)}.sp-v3 .sp-foot{width:62px;height:46px}.sp-v3 .sp-balance-hint{font-size:.68rem;max-width:380px}.sp-v3 .sp-count-invite{margin-top:3px;font-size:.72rem}.sp-v3 .sp-cards{gap:8px}.sp-v3 .sp-card{min-width:62px;padding:9px 8px;border-radius:13px}.sp-v3 .sp-card-roman{font-size:1.05rem}.sp-v3 .sp-card-fund{font-size:.76rem}.sp-v3 .sp-controls{gap:8px 12px}.sp-v3 .sp-ctl-tempo{min-width:150px;flex:1 1 150px}.sp-v3 .sp-drummer-host{width:100%;margin:8px 0 2px}.sp-v3 .sp-accordions{display:grid;grid-template-columns:1fr;gap:8px}.sp-v3 .sp-accordions .sp-exercises-host,.sp-v3 .sp-accordions .sp-models-host{display:contents}.sp-v3 .sp-accordions .spx-section{margin:0}.sp-v3 .spx-summary{padding:9px 12px;font-size:.86rem}@media(min-width:1024px){.sp-v3 .sp-accordions{grid-template-columns:repeat(3,minmax(0,1fr))}.sp-v3 .sp-accordions details[open]{grid-column:1 / -1}}.sp-v3 .sp-videos-row{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.sp-v3 .sp-videos-row{grid-template-columns:minmax(0,420px)}}.sp-pad-hit{animation:sp-pad-hit .38s ease-out;transform-box:fill-box;transform-origin:center}@keyframes sp-pad-hit{0%{filter:brightness(2.2) drop-shadow(0 0 16px rgba(255,255,255,.95));transform:scale(1.12)}to{filter:none;transform:scale(1)}}.sp-fund-name{display:inline-block}.sp-oct-ind{font-size:.72rem;font-weight:700;opacity:.7;align-self:center;white-space:nowrap}.sp-oct-btn:disabled{opacity:.3;cursor:default}.sp-oct-btn:disabled:hover{background:#ffffff0f}.sp-fund-bump{animation:sp-fund-bump .35s ease}@keyframes sp-fund-bump{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}.sp-guide-btn{font-size:.78rem;padding:7px 13px}.spi-toggle{position:absolute;top:10px;right:10px;z-index:60;background:#14182dd1;border:1px solid rgba(139,92,246,.5);color:#e6e9f2;border-radius:999px;padding:7px 14px;font-size:.82rem;font-weight:700;font-family:inherit;cursor:pointer;backdrop-filter:blur(4px);box-shadow:0 6px 18px #00000059;transition:background .15s,transform .12s}.spi-toggle:hover{background:#8b5cf659;transform:translateY(-1px)}.spi-toggle.is-on{background:#8b5cf68c;border-color:#c4b5fdcc}.spi-dock{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:16px;background:#0e1224eb;border:1px solid rgba(139,92,246,.4);color:#e6e9f2;box-shadow:0 18px 50px #0000008c;backdrop-filter:blur(8px);font-family:var(--font-family, sans-serif);animation:spi-dock-in .28s ease}.spi-dock--flow{position:relative;z-index:5;width:min(760px,100%);margin:12px auto 8px}.spi-dock--side{position:absolute;left:0;z-index:5;overflow-y:auto}.spi-dock.spi-out{animation:spi-dock-out .18s ease forwards}@keyframes spi-dock-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes spi-dock-out{to{opacity:0;transform:translateY(8px) scale(.99)}}.spi-sats{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.spi-dock--side .spi-sats{flex-direction:column}.spi-sat{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.spi-sat-target{flex-wrap:wrap}.spi-sat-actions{flex-wrap:wrap;flex:1 1 auto}.spi-sat-tuner{flex:1 1 260px;display:block;padding:0;background:none;border:none}.spi-sat-vowel{flex-direction:column;justify-content:center;gap:2px;min-width:86px;padding:8px 12px;text-align:center;border-radius:14px;background:radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--chakra, #8B5CF6) 26%,transparent),#ffffff08);border:1px solid color-mix(in srgb,var(--chakra, #8B5CF6) 55%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--chakra, #8B5CF6) 22%,transparent)}.spi-med-vowel{font-size:1.35rem;font-weight:800;letter-spacing:.03em;line-height:1.1}.spi-med-ex{font-size:.68rem;opacity:.7;font-style:italic}.spi-med-chakra{font-size:.7rem;font-weight:700;color:var(--chakra, #8B5CF6)}.spi-panhint{font-size:.72rem;opacity:.8;line-height:1.4}.spi-panhint .spi-ok{color:#22c55e;font-weight:700}.spi-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.spi-title{font-weight:800;font-size:.92rem;display:flex;align-items:center;gap:8px}.spi-close{background:#ffffff12;border:1px solid rgba(255,255,255,.14);color:inherit;width:26px;height:26px;border-radius:50%;font-size:.8rem;cursor:pointer}.spi-close:hover{background:#ffffff29}.spi-body{display:flex;flex-direction:column;gap:8px}.spi-hint{font-size:.78rem;line-height:1.45;opacity:.85}.spi-roman{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 6px;border-radius:9px;background:var(--deg, #666);color:#fff;font-weight:900;font-size:.95rem}.spi-note{font-size:1.9rem;font-weight:900;line-height:1;display:inline-block}.spi-oct{display:inline-flex;gap:4px}.spi-oct-btn{background:#ffffff12;border:1px solid rgba(255,255,255,.18);color:inherit;width:28px;height:28px;border-radius:8px;cursor:pointer;font-size:.85rem}.spi-oct-btn:hover:not(:disabled){background:#ffffff26}.spi-oct-btn:disabled{opacity:.3;cursor:default}.spi-octind{font-size:.68rem;font-weight:700;opacity:.7}.spi-sat-actions .sp-listen,.spi-sat-actions .sp-opt{font-size:.74rem;padding:6px 11px}.spi-play{margin-left:0;padding:8px 16px;font-size:.82rem}.spi-tuner-host .sp-tuner{margin-top:0}.spi-tune-ring{pointer-events:none;stroke:#a78bfabf;stroke-width:5;stroke-dasharray:7 9;stroke-linecap:round;opacity:.9;transition:stroke .15s ease,opacity .2s ease;animation:spi-ring-breathe 2.8s ease-in-out infinite}.spi-tune-ring.is-live{stroke-dasharray:none;animation:none}.spi-tune-ring.is-just{stroke:#22c55e;filter:drop-shadow(0 0 9px rgba(34,197,94,.85))}.spi-tune-ring.is-off{stroke:#f59e0b;filter:drop-shadow(0 0 5px rgba(245,158,11,.5))}@keyframes spi-ring-breathe{0%,to{opacity:.45}50%{opacity:.95}}.note-group.spi-live:not(.playing){animation:spi-pad-breathe 2.8s ease-in-out infinite}@keyframes spi-pad-breathe{0%,to{filter:none}50%{filter:brightness(1.22) drop-shadow(0 0 7px rgba(196,181,253,.5))}}[data-theme=light] .spi-dock{background:#f8f9fdf5;color:#1e293b;border-color:#7c3aed59}[data-theme=light] .spi-sat{background:#00000008;border-color:#00000014}[data-theme=light] .spi-toggle{background:#ffffffd9;color:#1e293b}[data-theme=light] .spi-toggle:hover{background:#8b5cf633}[data-theme=light] .spi-close,[data-theme=light] .spi-oct-btn{background:#0000000d;border-color:#00000024}[data-theme=light] .spi-tune-ring{stroke:#7c3aed99}[data-theme=light] .spi-tune-ring.is-just{stroke:#16a34a}[data-theme=light] .spi-tune-ring.is-off{stroke:#d97706}.sp-modal>*{flex:0 0 auto}.sp-v3 .sp-main{min-height:auto}.sp-v3 .sp-main>.sp-stage,.sp-v3 .sp-main>.sp-body-host{min-height:auto}.sp-v3 .sp-welcome{position:relative;top:auto;left:auto;transform:none;width:auto;z-index:auto;box-shadow:none}@media(min-width:1024px){.sp-v3 .sp-accordions:has(details[open]){grid-template-columns:minmax(0,1fr)}}.sp-v3 .sp-accordions .spx-section{scroll-margin-top:10px}.sp-v3 .sp-accordions .spx-section[open]{border-color:#8b5cf673;background:#8b5cf612}.sp-video-thumb{flex:0 0 auto}.spv-veil{position:fixed;inset:0;z-index:10200;display:flex;align-items:center;justify-content:center;padding:max(18px,3vh) 18px;background:#03050ce6;backdrop-filter:blur(10px);font-family:var(--font-family, sans-serif);color:var(--text-color, #e6e9f2);animation:sp-fade .18s ease}.spv-box{position:relative;width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;gap:10px;pointer-events:none}.spv-box>*{pointer-events:auto}.spv-head{display:flex;align-items:center;gap:12px}.spv-title{flex:1 1 auto;font-size:1.02rem;font-weight:800;line-height:1.3}.spv-close{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.22);color:inherit;font-size:1.05rem;cursor:pointer;transition:background .15s}.spv-close:hover{background:#ffffff38}.spv-stage{min-height:0;overflow-y:auto;text-align:center;font-size:.9rem}.spv-stage .pvid-root{max-width:none}.spv-foot{font-size:.74rem;opacity:.6;text-align:center}[data-theme=light] .spv-veil{background:#f0f2f8f0}[data-theme=light] .spv-close{background:#0000000f;border-color:#00000029}.iv-card{position:relative;gap:7px}.iv-probe{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.iv-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.iv-title{font-size:.72rem;font-weight:800;line-height:1.2;opacity:.92}.iv-diapason{flex:0 0 auto;padding:2px 7px;border-radius:999px;font-family:inherit;font-size:.58rem;font-weight:800;letter-spacing:.02em;color:#f5d68a;background:#0a0e1699;border:1px solid rgba(245,214,138,.55);cursor:default}.iv-diapason.is-link{cursor:pointer}.iv-diapason.is-link:hover{background:#f5d68a29}.iv-diapason[disabled]{opacity:.8}.iv-stage{display:flex;align-items:stretch;gap:6px;min-height:0}.iv-figwrap{flex:1 1 auto;min-width:0}.iv-fig{height:236px;width:auto;max-width:100%}.iv-root-zone .iv-root-fill,.iv-root-zone .iv-root-foot{fill:var(--iv-root, #DC2626);fill-opacity:.1;stroke:var(--iv-root, #DC2626);stroke-width:1.4;stroke-opacity:.35}.iv-root-zone.is-on .iv-root-fill,.iv-root-zone.is-on .iv-root-foot{fill-opacity:.26;stroke-opacity:.8;animation:iv-root-breathe 3.6s ease-in-out infinite}@keyframes iv-root-breathe{0%,to{fill-opacity:.2}50%{fill-opacity:.34}}.iv-feet .iv-foot{fill:var(--iv-root, #DC2626);fill-opacity:.16;stroke:#e9ecf580;stroke-width:1.4;transition:fill-opacity .12s ease-out}.iv-feet .iv-foot.is-beat{fill-opacity:.62}.iv-bead{transition:transform .12s linear,color .18s linear}.iv-bead[hidden]{display:none}.iv-sway{transform-origin:50% 97%;transform-box:view-box}body.spm-sway .iv-sway{animation:iv-sway var(--iv-sway-dur, 2.4s) ease-in-out infinite}@keyframes iv-sway{0%,to{transform:rotate(-2.4deg)}50%{transform:rotate(2.4deg)}}@media(prefers-reduced-motion:reduce){body.spm-sway .iv-sway,.iv-root-zone.is-on .iv-root-fill,.iv-root-zone.is-on .iv-root-foot{animation:none}}.iv-gauge{flex:0 0 60px;display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0}.iv-nb{font-size:.42rem;font-weight:800;letter-spacing:.01em;text-align:center;opacity:.62;line-height:1.15;white-space:normal;overflow-wrap:anywhere}.iv-track{position:relative;flex:1 1 auto;min-height:120px;width:100%;border-radius:9px;background:linear-gradient(180deg,#ffffff1a,#ffffff08,#ffffff1a);border:1px solid rgba(255,255,255,.12);overflow:hidden}.iv-zone{position:absolute;left:0;right:0;background:#22c55e38;border-top:1px solid rgba(34,197,94,.35);border-bottom:1px solid rgba(34,197,94,.35)}.iv-targetline{position:absolute;left:0;right:0;height:2px;transform:translateY(-1px);background:#ffffffd9}.iv-target-name{position:absolute;right:2px;transform:translateY(-50%);font-size:.44rem;font-weight:800;opacity:.8;pointer-events:none}.iv-dot{position:absolute;left:50%;width:18px;height:18px;margin-left:-9px;margin-top:-9px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:top .12s linear,background .18s linear}.iv-arrow{font-size:.5rem;font-weight:900;color:#0a0e16eb;line-height:1}.iv-off{position:absolute;left:0;right:0;font-size:.42rem;font-weight:800;text-align:center;padding:1px 0;background:#0a0e16c7}.iv-off-high{top:0}.iv-off-low{bottom:0}.iv-track2{height:12px;border-radius:5px;border:1px dashed rgba(255,255,255,.18);opacity:.38;display:flex;align-items:center;justify-content:center;overflow:hidden}.iv-track2[hidden]{display:none}.iv-track2-lbl{font-size:.38rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.iv-read{display:flex;flex-direction:column;gap:5px}.iv-noteline{gap:10px!important;align-items:flex-end}.iv-verdict{display:flex;flex-direction:column;gap:1px;padding:4px 6px;border-radius:9px;background:#0a0e166b;border:1px solid rgba(255,255,255,.07)}.iv-word{font-size:.64rem;font-weight:800;line-height:1.2}.iv-word.is-win{color:#22c55e}.iv-where{font-size:.54rem;font-style:normal;opacity:.72;line-height:1.2}.iv-heard{font-size:.46rem;opacity:.5}.iv-mic{display:flex;flex-direction:column;gap:4px;padding-top:2px;border-top:1px solid rgba(255,255,255,.07)}.iv-earbud{display:flex;gap:5px;font-size:.5rem;line-height:1.3;opacity:.78}.iv-earbud-icn{flex:0 0 auto}.iv-mic-btn{width:100%;justify-content:center}.iv-mic.is-on{flex-direction:row;align-items:center;gap:6px}.iv-mic-led{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e;animation:iv-led 1.4s ease-in-out infinite}@keyframes iv-led{0%,to{opacity:1}50%{opacity:.35}}.iv-tomorrow{font-size:.44rem;letter-spacing:.04em;text-transform:uppercase;opacity:.38;text-align:center;padding-top:2px;border-top:1px dashed rgba(255,255,255,.1)}.iv-arp-slot[hidden]{display:none}.iv-compact{gap:5px;padding:7px 7px 6px}.iv-compact .iv-fig{height:176px}.iv-compact .iv-title{font-size:.58rem}.iv-compact .iv-gauge{flex-basis:38px}.iv-compact .iv-track{min-height:96px}.iv-compact .iv-nb,.iv-compact .iv-heard,.iv-compact .iv-tomorrow,.iv-compact .iv-vol,.iv-compact .iv-earbud-txt,.iv-compact .spm-flank-sub{display:none}.iv-compact .iv-earbud{justify-content:center;font-size:.62rem}.iv-compact .spm-target-note{font-size:1.15rem}.iv-compact .iv-word{font-size:.58rem}.iv-compact .iv-where{font-size:.48rem}.iv-compact .spm-flank{padding:2px 4px;border-radius:8px}.iv-compact .spm-flank-big{font-size:1.02rem}.iv-compact .spm-flank-name{font-size:.52rem}.iv-compact .spm-btn{padding:4px 7px;font-size:.62rem}.iv-compact .spm-seg button{padding:4px 6px;font-size:.6rem}.iv-mini{gap:4px;padding:6px 5px 5px}.iv-mini .iv-fig{height:118px}.iv-mini .iv-title{display:none}.iv-mini .iv-head{justify-content:center}.iv-mini .iv-dia-u{display:none}.iv-mini .iv-diapason{padding:1px 6px;font-size:.52rem}.iv-mini .iv-gauge{flex-basis:22px}.iv-mini .iv-track{min-height:74px;border-radius:7px}.iv-mini .iv-dot{width:13px;height:13px;margin-left:-6.5px;margin-top:-6.5px}.iv-mini .iv-arrow{font-size:.4rem}.iv-mini .iv-target-name,.iv-mini .iv-nb,.iv-mini .iv-heard,.iv-mini .iv-where,.iv-mini .iv-tomorrow,.iv-mini .iv-vol,.iv-mini .iv-mic,.iv-mini .iv-guideline,.iv-mini .spm-line-voice,.iv-mini .iv-noteline .spm-octcol,.iv-mini .iv-noteline .spm-mini,.iv-mini .spm-flank-chakra,.iv-mini .spm-flank-sub,.iv-mini .iv-track2{display:none}.iv-mini .iv-verdict{padding:2px 4px;text-align:center}.iv-mini .iv-word{font-size:.52rem}.iv-mini .spm-target-note{font-size:.92rem;text-align:center}.iv-mini .iv-noteline{justify-content:center}.iv-mini .spm-flank{padding:1px 3px;border-radius:7px}.iv-mini .spm-flank-big{font-size:.76rem}body.light-theme .iv-diapason{color:#8a6d1f;background:#fffc}body.light-theme .iv-verdict{background:#fff9}body.light-theme .iv-arrow{color:#fff}body.light-theme .iv-off{background:#ffffffe0}.spm-parc-card.is-cours{border-color:#f5d68a8c;background:linear-gradient(160deg,#f5d68a1f,#1b263bb3)}.spm-parc-card.is-cours .spm-parc-n{background:transparent;border:none;font-size:1.1rem}.spm-parc-card.is-cours .sp-badge{display:inline-block;margin-left:5px;padding:1px 6px;border-radius:999px;font-size:.5rem;font-weight:800;color:#f5d68a;border:1px solid rgba(245,214,138,.5)}.spm-cours{display:flex;flex-direction:column;gap:8px}.spm-cours-head{display:flex;align-items:center;gap:6px}.spm-cours-title{font-size:.78rem;font-weight:900;line-height:1.25}.spm-cours-lead{font-size:.6rem;line-height:1.45;opacity:.82;margin:0}.spm-cours-tuning{display:flex;flex-direction:column;gap:5px;padding:6px 8px;border-radius:10px;font-size:.58rem;line-height:1.4;background:#f5d68a1a;border:1px solid rgba(245,214,138,.35)}.spm-cours-tuning.is-match{background:#22c55e1a;border-color:#22c55e59}.spm-cours-link{display:flex;flex-direction:column;gap:5px;padding-top:6px;border-top:1px dashed rgba(255,255,255,.12);font-size:.58rem;line-height:1.4;opacity:.9}.spm-cours-host{position:absolute;inset:0;z-index:40;overflow-y:auto;overflow-x:hidden;padding:12px;border-radius:inherit;background:linear-gradient(165deg,#1b263bfc,#0a0e16fc)}.spm-cours-host[hidden]{display:none}#chords-container.spm-cours-on{position:relative}body.light-theme .spm-cours-host{background:linear-gradient(165deg,#f8fafcfc,#e2e8f0fc)}.spm-cours-videos{display:flex;flex-direction:column;gap:8px}#spm-layer .iv-card .iv-fig{height:200px}#spm-layer .iv-card.iv-compact .iv-fig{height:156px}#spm-layer .iv-card.iv-mini .iv-fig{height:108px}#spm-layer .spm-z-left.is-compact .iv-card .iv-fig{height:150px}#spm-layer .spm-z-left.is-mini .iv-card .iv-fig{height:104px}#spm-layer .iv-card{gap:6px}#spm-layer .spm-z-left.is-under{transform:none}#spm-layer .spm-z-left.is-under .iv-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"head head" "stage read";gap:6px 10px;align-items:start}#spm-layer .spm-z-left.is-under .iv-head{grid-area:head}#spm-layer .spm-z-left.is-under .iv-stage{grid-area:stage}#spm-layer .spm-z-left.is-under .iv-read{grid-area:read;min-width:0}#spm-layer .spm-z-left.is-under .iv-card .iv-fig{height:168px}#spm-layer .spm-z-left.is-under .iv-card.iv-compact .iv-fig{height:140px}#spm-layer .spm-z-left.is-under .iv-card.iv-mini .iv-fig{height:104px}#spm-layer .spm-z-left.is-under .iv-where,#spm-layer .spm-z-left.is-under .iv-vol,#spm-layer .spm-z-left.is-under .iv-mic,#spm-layer .spm-z-left.is-under .iv-guideline,#spm-layer .spm-z-left.is-under .spm-line-voice{display:flex}#spm-layer .spm-z-left.is-under .iv-where{display:block}#spm-layer .spm-z-left.is-under .iv-mic{flex-direction:column}#spm-layer .spm-z-left.is-under .iv-tomorrow{display:none}#spm-layer .spm-z-left.is-under .iv-figwrap{min-width:132px}#spm-layer .spm-z-left.is-under .iv-gauge{flex:0 0 44px}#spm-layer .spm-z-left.is-under .spm-flank{padding:2px 5px;border-radius:8px}#spm-layer .spm-z-left.is-under .spm-flank-big{font-size:1rem}#spm-layer .spm-z-left.is-under .spm-flank-name{font-size:.55rem}#spm-layer .spm-z-left.is-under .spm-flank-sub{display:none}#spm-layer .spm-z-left.is-under .spm-target-note{font-size:1.3rem}.iv-mic-btn{white-space:normal;text-align:center;line-height:1.25;height:auto}body.spm-on .toolbox-footer-tools{visibility:hidden!important;pointer-events:none!important}body.spm-on #toolbox{position:relative}body.spm-on .toolbox-footer-tools:not(.collapsed){visibility:visible!important;pointer-events:auto!important;position:absolute;left:.5rem;right:.5rem;top:100%;margin-top:.35rem;z-index:3000;background:var(--primary-color);border:1px solid var(--current-outline-color, var(--secondary-color));border-radius:16px;box-shadow:0 14px 36px #0000008c;max-height:72vh;overflow-y:auto;overflow-x:hidden!important;padding:.7rem!important}@keyframes spmAttention{0%,to{box-shadow:0 0 #a78bfa00}35%{box-shadow:0 0 0 5px #a78bfa8c}}.nav-tab.spm-attention{animation:spmAttention 1.4s ease-out 1}body.spm-on #chords-container{display:flex!important}body.spm-on #chords-container{order:-1!important}#chords-container[data-panel-scope=singplay] [data-panel-section=langage],#chords-container[data-panel-scope=singplay] [data-panel-section=progression-header],#chords-container[data-panel-scope=singplay] [data-panel-section=lecture],#chords-container[data-panel-scope=singplay] [data-panel-section=apprentissage],#chords-container[data-panel-scope=singplay] #btn-chords-help{display:none!important}#chords-container[data-panel-scope=singplay] [data-panel-section=tonalite]:before{content:attr(data-spm-step)}#chords-container[data-panel-scope=singplay] [data-panel-section=ecoute]:before{content:attr(data-spm-step)}body.spm-on #model-toggle-row,body.spm-on #chord-rows-wrapper,body.spm-on #progression-arrow-container,body.spm-on #logic-reorder-hint,body.spm-on #logic-slots-empty-hint,body.spm-on #logic-chord-grid-below,body.spm-on #acoustic-chord-grid-below,body.spm-on #creation-carousel,body.spm-on #cc-place-switch{display:none!important}body.spm-on .main-column{padding-top:74px;padding-bottom:200px}body.spm-on.atelier-2col .main-column{display:flex;column-gap:0}body.spm-on.atelier-visible .main-column:before{display:none}body.spm-on.atelier-visible #handpan-container{position:relative}body.spm-on.atelier-visible #handpan-container .note-name,body.spm-on.atelier-visible #handpan-container .note-label{opacity:1}@media(min-width:1024px){body.spm-on.atelier-visible #handpan-container{width:65%!important;max-width:480px!important}body.spm-on.atelier-visible.acoustic-duo #handpan-container{width:100%!important;max-width:760px!important}body.spm-on.atelier-visible.acoustic-tall #handpan-container{width:100%!important;max-width:620px!important}}body.spm-on #handpan-container{left:var(--spm-pan-shift, 0px)}#spm-layer{position:absolute;inset:0;z-index:40;pointer-events:none;font-size:14px;line-height:1.45}#spm-layer .spm-zone,#spm-layer .spm-card,#spm-layer .spm-feetline,#spm-layer .spm-why,#spm-layer .spm-transport{pointer-events:auto}.spm-zone{position:absolute}#spm-layer [hidden]{display:none!important}.spm-z-top{left:50%;top:0;transform:translate(-50%);display:flex;flex-direction:column;gap:4px;padding:6px 8px;border-radius:14px;background:linear-gradient(180deg,#141821e0,#0a0e16b8);border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(7px)}.spm-z-left{left:0;top:50%;transform:translateY(-50%);width:214px}.spm-z-bottom{left:0;right:0;top:0;display:flex;flex-direction:column;align-items:center;gap:6px}.spm-feetline{display:flex;align-items:flex-end;justify-content:center;gap:14px;width:100%}.spm-balancier{flex:0 1 240px;min-width:150px;display:flex;flex-direction:column;align-items:center;gap:4px;padding-bottom:22px}.spm-transport{width:min(640px,100%);padding:6px 10px;border-radius:14px;background:linear-gradient(180deg,#141821eb,#0a0e16d1);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(7px);box-shadow:0 10px 26px #00000073}.spm-card{display:flex;flex-direction:column;gap:6px;padding:10px 10px 9px;border-radius:16px;background:linear-gradient(160deg,#415a773d,#1b263bbd);border:1px solid rgba(255,255,255,.1);box-shadow:0 14px 40px #0000006b;backdrop-filter:blur(6px)}.spm-ring{position:absolute;border-radius:50%;border:5px dashed rgba(255,255,255,.45);pointer-events:none;z-index:45;animation:spmRingPulse 2.6s ease-in-out infinite}.spm-ring[hidden]{display:none}.spm-ring.is-live{border-style:solid;border-width:6px;animation:none}.spm-ring.is-just{border-color:#22c55e;box-shadow:0 0 18px #22c55ecc}.spm-ring.is-off{border-color:#f59e0b}@keyframes spmRingPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}.spm-foot{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto}.spm-foot-lab{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;opacity:.5}.spm-foot-nums{display:flex;gap:5px}.spm-foot-nums i{width:19px;height:19px;border-radius:50%;font-style:normal;display:flex;align-items:center;justify-content:center;font-size:.64rem;font-weight:800;opacity:.5;border:1px solid rgba(255,255,255,.26);background:#ffffff0a;transition:transform .12s,opacity .12s}.spm-foot-nums i.one{border-color:#f97316a6}.spm-foot-nums i.now{opacity:1;border-color:#fff;transform:scale(1.14)}.spm-foot-L .spm-foot-nums i.now{background:var(--hand-color-left, #3B82F6);box-shadow:0 0 12px #3b82f6bf}.spm-foot-R .spm-foot-nums i.now{background:var(--hand-color-right, #EF4444);box-shadow:0 0 12px #ef4444bf}.spm-foot-L .spm-foot-nums i.one.now,.spm-foot-R .spm-foot-nums i.one.now{background:#f97316;box-shadow:0 0 12px #f97316cc}.spm-foot-svg{width:78px;height:106px;display:block}.spm-foot-L .spm-foot-svg{transform:rotate(-15deg)}.spm-foot-R .spm-foot-svg{transform:rotate(15deg)}.spm-foot-body{transform-origin:50% 88%;transform-box:fill-box;transform:translateY(-4px)}.spm-foot.is-tap .spm-foot-body{animation:spmFootTap .28s ease-out}@keyframes spmFootTap{0%{transform:translateY(-4px);filter:brightness(1)}40%,60%{transform:translateY(3px);filter:brightness(1.6)}to{transform:translateY(-4px);filter:brightness(1)}}.spm-foot-L.is-tap .spm-foot-svg{animation:spmFootHaloL .5s ease-out}.spm-foot-R.is-tap .spm-foot-svg{animation:spmFootHaloR .5s ease-out}.spm-foot-L.is-tap .spm-foot-body path:first-of-type,.spm-foot-L.is-tap .spm-foot-body ellipse{animation:spmFootFillL .5s ease-out}.spm-foot-R.is-tap .spm-foot-body path:first-of-type,.spm-foot-R.is-tap .spm-foot-body ellipse{animation:spmFootFillR .5s ease-out}@keyframes spmFootHaloL{0%,30%{filter:drop-shadow(0 0 14px rgba(59,130,246,.9))}to{filter:drop-shadow(0 0 0 rgba(59,130,246,0))}}@keyframes spmFootHaloR{0%,30%{filter:drop-shadow(0 0 14px rgba(239,68,68,.9))}to{filter:drop-shadow(0 0 0 rgba(239,68,68,0))}}@keyframes spmFootFillL{0%,30%{fill:#3b82f6eb;stroke:#dbeafe}to{fill:#e0e1dd42;stroke:#e0e1ddb8}}@keyframes spmFootFillR{0%,30%{fill:#ef4444eb;stroke:#fecaca}to{fill:#e0e1dd42;stroke:#e0e1ddb8}}@media(prefers-reduced-motion:reduce){.spm-foot.is-tap .spm-foot-body{animation:none}.spm-foot-L.is-tap .spm-foot-svg,.spm-foot-R.is-tap .spm-foot-svg,.spm-foot-L.is-tap .spm-foot-body path:first-of-type,.spm-foot-L.is-tap .spm-foot-body ellipse,.spm-foot-R.is-tap .spm-foot-body path:first-of-type,.spm-foot-R.is-tap .spm-foot-body ellipse{animation:none}.spm-foot-L.is-tap .spm-foot-body path:first-of-type,.spm-foot-L.is-tap .spm-foot-body ellipse{fill:#3b82f6d9;stroke:#dbeafe}.spm-foot-R.is-tap .spm-foot-body path:first-of-type,.spm-foot-R.is-tap .spm-foot-body ellipse{fill:#ef4444d9;stroke:#fecaca}}.spm-bal{position:relative;width:100%;height:44px}.spm-bal-arc{position:absolute;left:5%;right:5%;top:4px;height:26px;border-top:1.4px dashed rgba(255,255,255,.16);border-radius:50%/100% 100% 0 0}.spm-bal-beam{position:absolute;left:16%;right:16%;top:19px;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--hand-color-left, #3B82F6),#8B5CF6,var(--hand-color-right, #EF4444));transform-origin:50% 50%;transform:rotate(0);transition:transform .4s cubic-bezier(.37,0,.63,1)}.spm-bal-w{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translateY(-50%)}.spm-bal-w.l{left:-7px;background:var(--hand-color-left, #3B82F6);box-shadow:0 0 12px #3b82f699}.spm-bal-w.r{right:-7px;background:var(--hand-color-right, #EF4444);box-shadow:0 0 12px #ef444499}.spm-bal-pivot{position:absolute;left:50%;top:11px;transform:translate(-50%);width:18px;height:18px;border-radius:50%;border:1.6px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center}.spm-bal-pivot:after{content:"";width:6px;height:6px;border-radius:50%;background:#ffffffd9}.spm-lead{font-size:.62rem!important;padding:4px 9px!important}.spm-bal-tools{justify-content:center;gap:5px}.spm-bal-tools .spm-btn{font-size:.62rem;padding:4px 8px}.spm-feet-sw:not(.on){opacity:.62}.spm-why-btn{width:24px;min-width:24px;padding:4px 0!important;font-weight:900;font-size:.74rem!important;border-radius:50%}.spm-feetline.is-feet-off .spm-foot{opacity:.3;filter:grayscale(1)}.spm-feetline.is-feet-off .spm-foot-nums i{opacity:.28}.spm-why{width:min(620px,100%)}.spm-why:empty{display:none}.spm-why-card{padding:9px 13px 10px;border-radius:14px;background:linear-gradient(180deg,#141821eb,#0a0e16d1);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(7px);box-shadow:0 10px 26px #00000073}.spm-why-p{margin:0;font-size:.68rem;line-height:1.5;opacity:.88}.spm-why-p b{font-weight:900;opacity:1}.spm-why-count{margin:7px 0 0;padding-top:7px;font-size:.66rem;line-height:1.45;font-weight:700;opacity:.82;border-top:1px solid rgba(255,255,255,.1)}@media(max-height:620px){.spm-why{max-height:30vh;overflow:auto}.spm-why-card{padding:7px 10px 8px}.spm-why-p{font-size:.6rem;line-height:1.4}.spm-why-count{font-size:.58rem;margin-top:5px;padding-top:5px}}.spm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 11px;border-radius:10px;font-size:.7rem;font-weight:700;background:#ffffff0e;border:1px solid rgba(255,255,255,.15);color:inherit;font-family:inherit;white-space:nowrap;cursor:pointer}.spm-btn:hover{background:#ffffff1f}.spm-btn.on{background:#22c55e42;border-color:#22c55e8c}.spm-btn.vio{background:linear-gradient(135deg,#7c3aed,#8b5cf6);border:none;box-shadow:0 6px 18px #7c3aed73}.spm-btn:disabled{opacity:.35;cursor:not-allowed}.spm-seg{display:inline-flex;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.15)}.spm-seg button{padding:6px 10px;font-size:.68rem;font-weight:700;font-family:inherit;background:#ffffff0a;opacity:.65;color:inherit;border:none;cursor:pointer}.spm-seg button+button{border-left:1px solid rgba(255,255,255,.12)}.spm-seg button.on{background:#8b5cf66b;opacity:1}.spm-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.spm-mini{font-size:.58rem;opacity:.55;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.spm-note-txt{font-size:.62rem;opacity:.6;line-height:1.35}.spm-empty{font-size:.68rem;opacity:.7;line-height:1.4;padding:4px 2px}.spm-rng{-webkit-appearance:none;appearance:none;height:4px;border-radius:3px;flex:1 1 60px;min-width:54px;background:#ffffff29}.spm-rng::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#c4b5fd;box-shadow:0 0 8px #8b5cf6cc}.spm-prog{display:flex;gap:5px;align-items:stretch}.spm-prog-step{flex:1 1 0;border-radius:11px;position:relative;color:#fff;background:var(--spm-deg, #888);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 3px;min-width:0;opacity:.34;box-shadow:0 4px 12px #00000059;border:none;font-family:inherit;cursor:pointer;transition:opacity .15s,transform .15s}.spm-prog-step b{font-weight:900;font-size:.78rem}.spm-prog-step small{font-size:.5rem;font-weight:700;opacity:.9;letter-spacing:.03em}.spm-prog-vowel{display:block;font-style:normal;font-size:.52rem;font-weight:800;letter-spacing:.06em;opacity:.95;margin-top:1px;padding:0 5px;border-radius:999px;background:#0000004d}.spm-prog-step.next{opacity:.62}.spm-prog-step.on{opacity:1;outline:2px solid #fff;outline-offset:1px;transform:translateY(-2px)}.spm-prog-step.off{background:transparent;border:1px dashed color-mix(in srgb,var(--spm-deg, #888) 60%,transparent);color:color-mix(in srgb,var(--spm-deg, #888) 72%,#fff);box-shadow:none;opacity:.5}.spm-prog-step.off.on{opacity:.78;outline-color:#ffffff8c}.spm-prog-missing{background:#00000047;color:#e0824c;font-size:.48rem;letter-spacing:.02em}.spm-prog-verdict{margin-top:4px;font-size:.58rem;line-height:1.35;opacity:.75;text-align:center}.spm-prog-verdict b,.spm-missing b{color:#e0824c}.spm-prognav{flex-wrap:nowrap;gap:4px}.spm-prognav .spm-btn{padding:5px 8px}.spm-progpos{font-variant-numeric:tabular-nums}.spm-transport-row{flex-wrap:nowrap;gap:8px}.spm-bpm{text-align:center;min-width:42px}.spm-bpm-big{font-size:1.2rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums}.spm-play{width:40px;height:40px;border-radius:50%;font-size:.9rem;flex:0 0 auto}.spm-metro.on{background:#f973164d;border-color:#f9731699}.spm-transport-row>.spm-prognav{order:1}.spm-transport-row>.spm-metro{order:2}.spm-transport-row>[data-spm-bpm="-4"]{order:3}.spm-transport-row>.spm-bpm{order:4}.spm-transport-row>[data-spm-bpm="4"]{order:5}.spm-transport-row>[data-spm-bpm-range]{order:6}.spm-transport-row>.spm-play{order:7;margin-left:auto}.spm-transport-row>.spm-btn:not(.spm-play){min-height:var(--h-control)}.spm-play{width:var(--h-transport);height:var(--h-transport)}.spm-fig-host{position:relative;display:flex;align-items:center;justify-content:center;min-height:0}.spm-fig{height:152px;width:auto;max-width:100%}.spm-body-read{display:flex;flex-direction:column;gap:5px}.spm-octcol{display:flex;flex-direction:column;gap:4px}.spm-flank{position:absolute;transform:translateY(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:0;max-width:46%;padding:3px 6px;border-radius:10px;cursor:pointer;font-family:inherit;color:var(--text-color, #E0E1DD);background:#0a0e16b8;border:1px solid color-mix(in srgb,var(--spm-ck, #8B5CF6) 60%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--spm-ck, #8B5CF6) 22%,transparent);transition:background .15s,box-shadow .15s,transform .12s}.spm-flank:hover{background:#0a0e16e6;transform:translateY(-50%) scale(1.05)}.spm-flank-vowel{left:0}.spm-flank-chakra{right:0}.spm-flank-big{font-size:1.45rem;font-weight:900;line-height:1.05;color:var(--spm-ck, #8B5CF6)}.spm-flank-name{font-size:.64rem;font-weight:800;line-height:1.15;text-align:center;color:var(--spm-ck, #8B5CF6)}.spm-flank-sub{font-size:.44rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.55}.spm-flank-vowel.on{background:color-mix(in srgb,var(--spm-ck, #8B5CF6) 28%,rgba(10,14,22,.85));box-shadow:0 0 18px color-mix(in srgb,var(--spm-ck, #8B5CF6) 45%,transparent)}body.light-theme .spm-flank{background:#ffffffe0;color:#1e293b}body.light-theme .spm-flank:hover{background:#fffffffa}.spm-ckmode{display:flex;flex-direction:column;gap:3px}.spm-ckmode-seg{align-self:flex-start}.spm-ckmode-seg button{padding:3px 8px;font-size:.58rem}.spm-ckmode-why{font-size:.55rem;line-height:1.3;opacity:.62;font-weight:600;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.spm-ckanim{gap:4px}.spm-ckanim .spm-mini{font-size:.5rem}.spm-ckanim-seg button{padding:3px 6px;font-size:.55rem}.spm-target-note{font-size:1.7rem;font-weight:900;line-height:1}.spm-hz{font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}@keyframes spmCkHalo{0%,to{transform:scale(.8);opacity:.22}50%{transform:scale(1.4);opacity:.72}}@keyframes spmCkWave{0%{transform:scale(.45);opacity:.55}70%{opacity:0}to{transform:scale(3);opacity:0}}@keyframes spmCkGlow{0%,to{transform:scale(.94);opacity:.18}50%{transform:scale(1.16);opacity:.46}}@keyframes spmCkCore{0%,to{opacity:.85}50%{opacity:1}}@keyframes spmSpineFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-64}}.spm-ck-halo{transform-origin:center;transform-box:fill-box;animation:spmCkHalo 3.4s ease-in-out infinite}.spm-ck-wave{transform-origin:center;transform-box:fill-box;animation:spmCkWave 3.2s ease-out infinite}.spm-ck-wave2{animation-delay:1.6s}.spm-ck-glow{transform-origin:center;transform-box:fill-box;animation:spmCkGlow 3.4s ease-in-out infinite}.spm-ck-core{animation:spmCkCore 2.4s ease-in-out infinite}.spm-spine-flow{stroke-dasharray:5 11;animation:spmSpineFlow 5s linear infinite}.spm-ck-dim{opacity:.34}.spm-fig.spm-anim-onde .spm-spine-flow{animation:none}@keyframes spmCkRise{0%{stroke-dashoffset:var(--spm-rise-from, 26);opacity:0}14%{opacity:.95}76%{opacity:.95}to{stroke-dashoffset:var(--spm-rise-to, 0);opacity:0}}.spm-ck-rise{animation:spmCkRise .82s cubic-bezier(.32,.72,.36,1) 1 both}.spm-ck-wave.spm-ck-wave-once{animation:spmCkWave 1.5s ease-out .58s 1 both}.spm-ck-flash{opacity:0;pointer-events:none}@keyframes spmCkFlash{0%{opacity:0;transform:scale(1)}18%{opacity:.45;transform:scale(1.34)}to{opacity:0;transform:scale(1.72)}}@keyframes spmCkFlashStrong{0%{opacity:0;transform:scale(1)}16%{opacity:.62;transform:scale(1.5)}to{opacity:0;transform:scale(2.05)}}.spm-ck-flash.is-beat{animation:spmCkFlash .32s ease-out 1}.spm-ck-flash.is-beat.is-strong{animation-name:spmCkFlashStrong;animation-duration:.38s}@keyframes spmCkBeatCore{0%{transform:scale(1)}20%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes spmCkBeatCoreStrong{0%{transform:scale(1)}18%{transform:scale(1.24)}to{transform:scale(1)}}.spm-ck-beatwrap.is-beat{animation:spmCkBeatCore .32s ease-out 1}.spm-ck-beatwrap.is-beat.is-strong{animation-name:spmCkBeatCoreStrong;animation-duration:.38s}@media(prefers-reduced-motion:reduce){.spm-ck-halo,.spm-ck-glow,.spm-ck-core,.spm-spine-flow{animation:none}.spm-ck-wave,.spm-ck-rise,.spm-ck-flash,.spm-ck-wave.spm-ck-wave-once{display:none}.spm-ck-beatwrap.is-beat{animation:none}}#panel-mode-sections{display:flex;flex-direction:column;width:100%;margin-top:.6rem}#panel-mode-sections:empty{display:none}#panel-mode-sections .spm-panel-head{margin:0 0 2px;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;font-weight:800;letter-spacing:.02em}#panel-mode-sections .spm-sec{display:flex;flex-direction:column;gap:6px;padding:8px 0;border-top:1px solid rgba(255,255,255,.08)}#panel-mode-sections .spm-sec:first-of-type{border-top:none;padding-top:2px}#panel-mode-sections .spm-sec-title{margin:0;font-size:.62rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;opacity:.55}#panel-mode-sections .spm-sec-body{display:flex;flex-direction:column;gap:6px}.spm-parcours{display:flex;flex-direction:column;gap:8px;padding:4px 0 8px}.spm-parcours[hidden]{display:none}.spm-parc-hub{display:flex;flex-direction:column;gap:7px}.spm-parc-title{font-size:.84rem;font-weight:700;line-height:1.3}.spm-parc-title b{font-weight:900}.spm-parc-lead{margin:0;font-size:.66rem;line-height:1.4;opacity:.72}.spm-parc-card{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;padding:9px 10px;border-radius:13px;cursor:pointer;font-family:inherit;color:inherit;background:linear-gradient(160deg,#415a7747,#1b263bb8);border:1px solid rgba(255,255,255,.11);transition:border-color .15s,transform .12s,background .15s}.spm-parc-card:hover{border-color:#a78bfa8c;background:linear-gradient(160deg,#58488a57,#1b263bc7);transform:translateY(-1px)}.spm-parc-n{flex:0 0 auto;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.74rem;font-weight:900;color:#f5e2bd;background:#d9b26a2e;border:1px solid rgba(217,178,106,.5)}.spm-parc-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.spm-parc-txt b{font-size:.72rem;font-weight:800}.spm-parc-txt em{font-size:.62rem;font-style:normal;line-height:1.35;opacity:.7}.spm-parc-txt em b{font-size:inherit;font-weight:800;opacity:1}.spm-parc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.spm-parc-chk{display:inline-flex;align-items:center;gap:6px;font-size:.6rem;opacity:.7;cursor:pointer;user-select:none}.spm-parc-chk input{accent-color:#8b5cf6}.spm-parc-bar{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.spm-parc-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.6rem;font-weight:700;color:inherit;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);transition:background .15s,border-color .15s}.spm-parc-pill:hover{background:#ffffff1f}.spm-parc-pill.on{background:#8b5cf64d;border-color:#c4b5fd99}.spm-parc-pill i{font-style:normal;font-weight:900;color:#d9b26a}.spm-parc-pill.on i{color:#f5e2bd}#chords-container[data-spm-parcours] #panel-mode-sections .spm-sec{border-top:none}body.light-theme .spm-parc-card{background:linear-gradient(160deg,#ffffffe6,#eef2f8f5);border-color:#0000001a}body.light-theme .spm-parc-n{color:#8a6a24;background:#d9b26a38}body.light-theme .spm-parc-pill{background:#0000000d;border-color:#00000024}.spm-host{min-height:0}.spm-host .spx-section{margin:0}#panel-mode-sections .sp-seg{flex-wrap:wrap;max-width:100%}#panel-mode-sections .sp-seg button{padding:5px 7px;font-size:.62rem}#panel-mode-sections .sp-tuner-head{display:none}#panel-mode-sections .spm-videos-acc{margin:0}#panel-mode-sections .spm-videos-acc>.spx-summary{padding:8px 10px;font-size:.74rem}#panel-mode-sections .spm-videos-acc .spx-body{padding:4px 10px 12px;gap:8px}#panel-mode-sections .spm-videos-acc .sp-videos{gap:8px}#panel-mode-sections .spm-videos-acc .sp-videos-sub{text-align:left;font-size:.66rem;line-height:1.4}#panel-mode-sections .spm-videos-acc .sp-videos-row{grid-template-columns:minmax(0,1fr);gap:8px}#panel-mode-sections .spm-videos-acc .sp-video-card{padding:9px 10px;gap:5px;border-radius:12px}#panel-mode-sections .spm-videos-acc .sp-video-name{font-size:.74rem}#panel-mode-sections .spm-videos-acc .sp-video-desc{font-size:.64rem}#panel-mode-sections .spm-videos-acc .sp-video-thumb-play{width:38px;height:38px;font-size:.9rem}.spm-z-left.is-compact .spm-card{padding:7px 7px 6px;gap:4px;border-radius:13px}.spm-z-left.is-compact .spm-fig{height:104px}.spm-z-left.is-compact .spm-body-read{gap:4px}.spm-z-left.is-compact .spm-target-note{font-size:1.15rem}.spm-z-left.is-compact .spm-flank{padding:2px 4px;border-radius:8px}.spm-z-left.is-compact .spm-flank-big{font-size:1.02rem}.spm-z-left.is-compact .spm-flank-name{font-size:.52rem}.spm-z-left.is-compact .spm-flank-sub{display:none}.spm-z-left.is-compact .spm-mini{font-size:.5rem;letter-spacing:.06em}.spm-z-left.is-compact .spm-btn{padding:4px 7px;font-size:.62rem}.spm-z-left.is-compact .spm-seg button{padding:4px 6px;font-size:.6rem}.spm-z-left.is-compact .spm-hz{font-size:.64rem}.spm-z-left.is-compact .spm-note-txt{display:none}.spm-z-left.is-compact .spm-empty{font-size:.6rem}.spm-z-left.is-compact .spm-ckmode-why{display:none}.spm-z-left.is-compact .spm-ckmode-seg button{padding:3px 6px;font-size:.54rem}.spm-z-left.is-compact .spm-ckanim .spm-mini{display:none}.spm-z-left.is-compact .spm-ckanim-seg button{padding:3px 5px;font-size:.5rem}.spm-z-left.is-mini .spm-card{padding:6px 5px 5px;gap:3px;border-radius:11px}.spm-z-left.is-mini .spm-fig{height:76px}.spm-z-left.is-mini .spm-body-read{gap:3px}.spm-z-left.is-mini .spm-row{gap:4px!important}.spm-z-left.is-mini .spm-target-note{font-size:.92rem}.spm-z-left.is-mini .spm-mini{font-size:.46rem;letter-spacing:.04em}.spm-z-left.is-mini .spm-flank-chakra{display:none}.spm-z-left.is-mini .spm-flank{padding:1px 3px;border-radius:7px}.spm-z-left.is-mini .spm-flank-big{font-size:.76rem}.spm-z-left.is-mini .spm-flank-sub{display:none}.spm-z-left.is-mini .spm-hz{font-size:.58rem}.spm-z-left.is-mini .spm-btn{padding:3px 5px;font-size:.58rem}.spm-z-left.is-mini .spm-ckmode,.spm-z-left.is-mini .spm-note-txt,.spm-z-left.is-mini .spm-line-voice{display:none}.spm-z-left.is-mini .spm-empty{font-size:.56rem}.spm-z-left[data-spm-fit=corner] .spm-card{background:linear-gradient(160deg,#415a7752,#0d131ee0)}@media(max-width:820px){.spm-foot-svg{width:66px;height:90px}.spm-z-top{width:100%}.spm-transport-row{flex-wrap:wrap;justify-content:center}}@media(orientation:portrait)and (max-width:1024px){body.spm-on #handpan-container{max-width:480px!important}}@media(max-height:560px)and (orientation:landscape){body.spm-on #handpan-container{max-width:min(100%,62vh)!important}body.spm-on .main-column{padding-top:56px;padding-bottom:150px}}#spm-rotate-hint{display:none}@media(orientation:portrait)and (max-width:680px){body.spm-on:not(.spm-rotate-off) #spm-rotate-hint{display:flex;align-items:center;gap:10px;position:fixed;left:50%;transform:translate(-50%);bottom:calc(12px + env(safe-area-inset-bottom,0px));width:max-content;max-width:calc(100vw - 24px);padding:9px 10px 9px 13px;border-radius:999px;background:linear-gradient(160deg,#415a77f5,#141c2bf7);border:1px solid var(--current-outline-color, rgba(255, 200, 0, .55));box-shadow:0 10px 28px #00000080;color:var(--text-color, #E0E1DD);z-index:1200}}#spm-rotate-hint .spm-rot-ico{width:30px;height:27px;flex:0 0 auto;opacity:.9}#spm-rotate-hint .spm-rot-txt{font-size:.74rem;line-height:1.3;font-weight:600}#spm-rotate-hint .spm-rot-close{flex:0 0 auto;width:26px;height:26px;border-radius:50%;cursor:pointer;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:inherit;font-family:inherit;font-size:.7rem;line-height:1}.spm-ckhint{position:relative;display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;padding:8px 8px 8px 10px;border-radius:12px;background:linear-gradient(160deg,#415a77f5,#141c2bf7);border:1px solid var(--current-outline-color, rgba(255, 200, 0, .55));box-shadow:0 8px 22px #00000061;color:var(--text-color, #E0E1DD)}.spm-ckhint:after{content:"";position:absolute;left:22px;bottom:-7px;width:12px;height:12px;transform:rotate(45deg);background:#141c2bf7;border-right:1px solid var(--current-outline-color, rgba(255, 200, 0, .55));border-bottom:1px solid var(--current-outline-color, rgba(255, 200, 0, .55))}.spm-ckhint .spm-ckhint-ico{font-size:.95rem;line-height:1.2;flex:0 0 auto}.spm-ckhint .spm-ckhint-txt{font-size:.66rem;line-height:1.35;font-weight:600}.spm-ckhint .spm-ckhint-txt b{font-weight:900}.spm-ckhint .spm-ckhint-close{flex:0 0 auto;width:22px;height:22px;border-radius:50%;cursor:pointer;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:inherit;font-family:inherit;font-size:.62rem;line-height:1}body.light-theme .spm-card,body.light-theme .spm-z-top,body.light-theme .spm-why-card,body.light-theme .spm-transport{background:linear-gradient(160deg,#ffffffe0,#eef2f8f2);border-color:#0000001a;box-shadow:0 12px 30px #00000024}body.light-theme #spm-rotate-hint{background:linear-gradient(160deg,#fffffff2,#eef2f8fa);box-shadow:0 10px 26px #0000002e}body.light-theme #spm-rotate-hint .spm-rot-close{background:#0000000d;border-color:#00000024}body.light-theme .spm-ckhint{background:linear-gradient(160deg,#fffffff2,#eef2f8fa);box-shadow:0 8px 22px #00000029}body.light-theme .spm-ckhint:after{background:#eef2f8fa}body.light-theme .spm-ckhint .spm-ckhint-close{background:#0000000d;border-color:#00000024}body.light-theme .spm-z-left[data-spm-fit=corner] .spm-card{background:linear-gradient(160deg,#fffffff0,#eef2f8f7)}body.light-theme .spm-btn{background:#0000000d;border-color:#00000024}body.light-theme .spm-seg{border-color:#00000024}body.light-theme .spm-seg button{background:#00000008}body.light-theme .spm-ring{border-color:#1e293b80}body.experimental-on [data-labo-badge]:after{content:" 🧪";font-size:.9em;opacity:.9}#settings-dropdown #btn-scene-mode{display:none}body.experimental-on #settings-dropdown #btn-scene-mode{display:flex}.labo-overlay{position:fixed;inset:0;z-index:100002;display:flex;align-items:center;justify-content:center;padding:clamp(8px,3vw,32px);background:#0009;backdrop-filter:blur(4px);font-family:var(--font-family, system-ui, sans-serif)}.labo-overlay[hidden]{display:none}.labo-sheet{display:flex;flex-direction:column;width:min(1080px,100%);max-height:100%;box-sizing:border-box;background:var(--primary-color, #1B263B);color:var(--text-color, #E0E1DD);border:1px solid rgba(255,255,255,.14);border-radius:18px;box-shadow:0 24px 70px #0000008c;overflow:hidden}.labo-head{display:flex;align-items:flex-start;gap:16px;padding:20px 22px 16px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(124,58,237,.16),transparent)}.labo-head-titles{flex:1;min-width:0}.labo-title{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:.01em}.labo-sub{margin:6px 0 0;font-size:.86rem;line-height:1.5;opacity:.78;max-width:68ch}.labo-close{flex:none;width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:inherit;font-size:1rem;cursor:pointer}.labo-close:hover{background:#ffffff1f}.labo-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 22px 26px;display:flex;flex-direction:column;gap:16px}.labo-group{display:flex;flex-direction:column;gap:10px;padding-top:6px;border-top:1px solid rgba(255,255,255,.08)}.labo-group[hidden]{display:none}.labo-group-title{margin:6px 0 0;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;opacity:.65}.labo-group-sub{margin:-2px 0 2px;font-size:.78rem;line-height:1.5;opacity:.55;max-width:72ch}body.light-theme .labo-group,body.theme-light .labo-group{border-top-color:#0000001a}.labo-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px 18px}.labo-card-title{margin:0 0 8px;font-size:1rem;font-weight:700;color:var(--gold-color, #FFD700)}.labo-details>summary.labo-card-title{cursor:pointer;list-style:revert}.labo-details[open]>summary.labo-card-title{margin-bottom:14px}.labo-card-text{margin:0 0 12px;font-size:.88rem;line-height:1.55;opacity:.88;max-width:78ch}.labo-switch{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#00000047}.labo-switch-btn{padding:7px 18px;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:.86rem;cursor:pointer}.labo-switch-btn.is-on{background:#7c3aed;color:#fff;font-weight:600}.labo-exp-state{margin:10px 0 0;font-size:.82rem;opacity:.7}.labo-exp-state.is-on{color:#c4b5fd;opacity:1}.labo-fb-adminhint,.labo-fb-warn{margin:0 0 12px;padding:10px 12px;border-radius:10px;font-size:.8rem;line-height:1.5}.labo-fb-adminhint{background:#7c3aed29;border:1px solid rgba(167,139,250,.35)}.labo-fb-warn{background:#ea580c29;border:1px solid rgba(249,115,22,.4)}.labo-fb-adminhint code,.labo-fb-warn code{background:#0000004d;padding:1px 5px;border-radius:4px;font-size:.95em}.labo-fb-counters{margin:0 0 12px;font-size:.86rem;font-weight:600;opacity:.85}.labo-fb-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.labo-fb-chips{display:flex;flex-wrap:wrap;gap:6px}.labo-fb-chip{padding:6px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#ffffff0d;color:inherit;font:inherit;font-size:.78rem;cursor:pointer;white-space:nowrap}.labo-fb-chip span{opacity:.6;margin-left:3px}.labo-fb-chip:hover{background:#ffffff1c}.labo-fb-chip.is-on{background:#7c3aed;border-color:#a78bfa;font-weight:600}.labo-fb-chip.is-on span{opacity:.85}.labo-fb-search{flex:1 1 220px;min-width:180px;padding:7px 12px;border-radius:9px;border:1px solid rgba(255,255,255,.16);background:#00000040;color:inherit;font:inherit;font-size:.83rem}.labo-fb-area{margin-bottom:18px}.labo-fb-area-title{margin:0 0 8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;opacity:.6}.labo-fb-area-count{opacity:.5}.labo-fb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.labo-fb-row{display:flex;gap:12px;padding:11px 13px;border-radius:11px;background:#ffffff09;border:1px solid rgba(255,255,255,.08);border-left-width:3px}.labo-fb-stable{border-left-color:#16a34a}.labo-fb-partial{border-left-color:#eab308}.labo-fb-lab{border-left-color:#a78bfa}.labo-fb-wip{border-left-color:#ea580c}.labo-fb-badge{flex:none;width:7.5rem;font-size:.72rem;opacity:.85;line-height:1.3}.labo-fb-badge-label{display:block;margin-top:2px}.labo-fb-body{min-width:0;flex:1}.labo-fb-name{margin:0;font-size:.92rem;font-weight:600}.labo-fb-where{margin:3px 0 0;font-size:.78rem;opacity:.65}.labo-fb-caveat{margin:8px 0 0;font-size:.8rem;line-height:1.5;padding:8px 10px;border-radius:8px;background:#eab3081a;border:1px solid rgba(234,179,8,.25)}.labo-fb-caveat-tag{display:inline-block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#eab308;margin-right:6px}.labo-fb-note{margin:6px 0 0;font-size:.79rem;line-height:1.5;opacity:.7}.labo-fb-empty{opacity:.6;font-size:.86rem}.labo-rm-priority{border-left-color:#ef4444}.labo-rm-in_progress{border-left-color:#a78bfa}.labo-rm-queued{border-left-color:#ffffff40}.labo-rm-blocked{border-left-color:#eab308}.labo-rm-reorder{flex:none;display:flex;flex-direction:column;gap:4px;align-self:center}.labo-rm-move{width:1.9rem;height:1.9rem;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:inherit;cursor:pointer;font-size:.78rem;line-height:1}.labo-rm-move:hover:not(:disabled){background:#ffffff24}.labo-rm-move:disabled{opacity:.25;cursor:default}body.light-theme .labo-rm-move,body.theme-light .labo-rm-move{background:#0000000d;border-color:#00000026}.labo-logic-host{font-size:.85rem}.logic-lab-controls{display:flex;flex-direction:column;gap:6px}.logic-lab-hint{font-size:.78rem;opacity:.65;line-height:1.45;margin:0 0 6px}.logic-lab-btn{display:block;width:100%;text-align:left;padding:8px 11px;border-radius:9px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:inherit;font:inherit;font-size:.85rem;cursor:pointer}.logic-lab-btn:hover{background:#ffffff1f}.logic-lab-btn.lab-active{background:#7c3aed;border-color:#a78bfa;font-weight:600}.logic-lab-detach{margin-top:10px;align-self:flex-start;width:auto;font-size:.78rem;opacity:.8}#logic-lab-panel{position:fixed;top:80px;right:20px;z-index:99999;max-width:260px;padding:12px 14px;border-radius:12px;background:#111118f0;color:#f4f4f8;border:1px solid rgba(255,255,255,.16);box-shadow:0 8px 28px #00000073;backdrop-filter:blur(6px);font:13px/1.35 system-ui,-apple-system,sans-serif;user-select:none}#logic-lab-panel .logic-lab-drag{font-weight:600;margin-bottom:8px;cursor:move;display:flex;justify-content:space-between;gap:8px}#logic-lab-panel .logic-lab-dock{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;opacity:.7}.labo-nt{display:flex;flex-direction:column;gap:14px}.labo-nt-brief{margin:0;padding:12px 14px 12px 30px;border-radius:10px;background:#38bdf81a;border:1px solid rgba(56,189,248,.28);font-size:.82rem;line-height:1.55;max-width:80ch}.labo-nt-brief li+li{margin-top:6px}.labo-nt-add{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.labo-nt-field{display:flex;flex-direction:column;gap:4px;flex:1 1 220px;min-width:160px}.labo-nt-field-id{flex:0 1 140px;min-width:110px}.labo-nt-field>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;opacity:.6}.labo-nt-field>input{padding:8px 11px;border-radius:9px;border:1px solid rgba(255,255,255,.16);background:#00000040;color:inherit;font:inherit;font-size:.85rem}.labo-nt-btn{padding:8px 14px;border-radius:9px;border:1px solid rgba(255,255,255,.16);background:#ffffff12;color:inherit;font:inherit;font-size:.84rem;cursor:pointer;white-space:nowrap}.labo-nt-btn:hover{background:#ffffff24}.labo-nt-btn-add{font-weight:600}.labo-nt-btn-send{background:#7c3aed;border-color:#a78bfa;font-weight:600;flex:none}.labo-nt-btn-send:hover{background:#8b5cf6}.labo-nt-error{margin:-4px 0 0;padding:8px 11px;border-radius:9px;background:#ea580c29;border:1px solid rgba(249,115,22,.4);font-size:.8rem;line-height:1.5}.labo-nt-error[hidden]{display:none}.labo-nt-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.labo-nt-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;background:#ffffff0a;border:1px solid rgba(255,255,255,.09)}.labo-nt-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.labo-nt-name{font-size:.9rem;font-weight:600;overflow-wrap:anywhere}.labo-nt-id{font-size:.74rem;opacity:.6}.labo-nt-del{flex:none;width:1.9rem;height:1.9rem;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:inherit;font-size:.78rem;line-height:1;cursor:pointer}.labo-nt-del:hover{background:#ef444459}.labo-nt-empty{margin:0;font-size:.83rem;opacity:.6}.labo-nt-empty[hidden]{display:none}.labo-nt-foot{display:flex}.labo-nt-link{border:0;background:transparent;padding:0;color:#7dd3fc;font:inherit;font-size:.83rem;text-decoration:underline;cursor:pointer}.labo-nt-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:100003;max-width:min(560px,92vw);padding:11px 18px;border-radius:10px;background:#111118f2;color:#f4f4f8;border:1px solid rgba(167,139,250,.5);box-shadow:0 10px 30px #00000080;font-size:.86rem;line-height:1.45;text-align:center;pointer-events:none;opacity:0;transition:opacity .25s ease}.labo-nt-toast.is-on{opacity:1}body.light-theme .labo-nt-field>input,body.theme-light .labo-nt-field>input{background:#0000000d;border-color:#00000026}body.light-theme .labo-nt-row,body.theme-light .labo-nt-row{background:#00000009;border-color:#0000001a}body.light-theme .labo-nt-link,body.theme-light .labo-nt-link{color:#0369a1}@media(max-width:760px){.labo-fb-row{flex-direction:column;gap:6px}.labo-fb-badge{width:auto;display:flex;gap:6px;align-items:center}.labo-fb-badge-label{margin-top:0}.labo-scroll{padding:14px 14px 20px}.labo-nt-row{flex-wrap:wrap}.labo-nt-info{flex:1 1 100%}}body.light-theme .labo-card,body.theme-light .labo-card,body.light-theme .labo-fb-row,body.theme-light .labo-fb-row{background:#00000009;border-color:#0000001a}body.light-theme .labo-fb-search,body.theme-light .labo-fb-search{background:#0000000d;border-color:#00000026}.labo-switch-wrap{flex-wrap:wrap;gap:6px}.labo-nt-rc{display:flex;flex-direction:column;gap:12px;margin-top:6px;padding-top:16px;border-top:1px dashed rgba(167,139,250,.35)}.labo-nt-rc-title{margin:0;font-size:.98rem;font-weight:700;letter-spacing:.01em}.labo-nt-rc-honest{margin:0;padding:10px 13px;border-radius:10px;background:#a78bfa1a;border:1px solid rgba(167,139,250,.28);font-size:.81rem;line-height:1.55;max-width:80ch}.labo-nt-rc-head{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.labo-nt-rc-name{flex:1 1 220px}.labo-nt-btn-use{background:#38bdf833;border-color:#38bdf880;font-weight:600;flex:none}.labo-nt-btn-use:hover{background:#38bdf852}.labo-nt-rc-clear{align-self:center}.labo-nt-rc-slots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}.labo-nt-rc-slot{display:flex;flex-direction:column;gap:3px;min-width:0;padding:6px 5px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a}.labo-nt-rc-slot.is-ding{border-color:#a78bfa8c;background:#a78bfa1a}.labo-nt-rc-slot.is-empty{border-color:#facc15a6;background:#facc151f}.labo-nt-rc-slot.is-bad{border-color:#ef4444b3;background:#ef444424}.labo-nt-rc-slotcap{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;opacity:.65;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.labo-nt-rc-slotinput{width:100%;min-width:0;box-sizing:border-box;padding:5px 2px;text-align:center;font-size:.86rem;font-weight:600;font-variant-numeric:tabular-nums;color:inherit;background:#00000038;border:1px solid rgba(255,255,255,.14);border-radius:6px}.labo-nt-rc-slotinput:focus{outline:2px solid rgba(167,139,250,.7);outline-offset:1px}.labo-nt-rc-status{margin:0;font-size:.84rem;font-weight:600;line-height:1.5}.labo-nt-rc-status.is-ok{color:#4ade80}.labo-nt-rc-status.is-ko{color:#fbbf24}.labo-nt-rc-issues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.labo-nt-rc-issues:empty{display:none}.labo-nt-rc-issues>li{font-size:.78rem;line-height:1.45;padding:5px 9px;border-radius:6px;border-left:3px solid transparent}.labo-nt-rc-issues>li.is-blocking{background:#ef44441f;border-left-color:#ef4444}.labo-nt-rc-issues>li.is-warning{background:#facc151f;border-left-color:#facc15}.labo-nt-rc-block{display:flex;flex-direction:column;gap:7px;padding:11px 13px;border-radius:10px;background:#ffffff09;border:1px solid rgba(255,255,255,.1)}.labo-nt-rc-blockhead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.labo-nt-rc-blocktitle{font-size:.86rem;font-weight:700;flex:1;min-width:0}.labo-nt-copy{flex:none;padding:5px 11px;font:inherit;font-size:.76rem;color:inherit;background:#ffffff17;border:1px solid rgba(255,255,255,.2);border-radius:7px;cursor:pointer}.labo-nt-copy:hover{background:#ffffff29}.labo-nt-rc-hint{margin:0;font-size:.75rem;line-height:1.5;opacity:.75;max-width:80ch}.labo-nt-rc-hint code{font-size:.95em}.labo-nt-rc-pre{margin:0;padding:9px 11px;border-radius:7px;background:#0000004d;border:1px solid rgba(255,255,255,.1);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}.labo-nt-rc-pre.is-void{opacity:.55;font-style:italic}.labo-nt-rc-steps{white-space:pre-wrap}.labo-nt-rc-tablewrap{overflow-x:auto}.labo-nt-rc-table{width:100%;border-collapse:collapse;font-size:.76rem}.labo-nt-rc-table td{padding:4px 8px 4px 0;vertical-align:middle;border-bottom:1px solid rgba(255,255,255,.07)}.labo-nt-rc-table tr:last-child td{border-bottom:0}.labo-nt-rc-cdot{width:18px;padding-right:6px}.labo-nt-rc-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}.labo-nt-rc-gain{opacity:.6}.labo-nt-rc-read{opacity:.85}.labo-nt-rc-void{opacity:.6;font-style:italic;padding:8px 0}.labo-nt-dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle}.labo-nt-dot.is-ideal{background:#22c55e}.labo-nt-dot.is-ok{background:#f59e0b}.labo-nt-dot.is-warn{background:#ef4444}body.light-theme .labo-nt-rc-slotinput,body.theme-light .labo-nt-rc-slotinput{background:#0000000d;border-color:#00000026}body.light-theme .labo-nt-rc-slot,body.theme-light .labo-nt-rc-slot{background:#00000009;border-color:#0000001f}body.light-theme .labo-nt-rc-block,body.theme-light .labo-nt-rc-block{background:#00000009;border-color:#0000001a}body.light-theme .labo-nt-rc-pre,body.theme-light .labo-nt-rc-pre{background:#0000000f;border-color:#0000001f}body.light-theme .labo-nt-copy,body.theme-light .labo-nt-copy{background:#0000000f;border-color:#0000002e}body.light-theme .labo-nt-rc-table td,body.theme-light .labo-nt-rc-table td{border-bottom-color:#00000014}body.light-theme .labo-nt-rc-status.is-ok,body.theme-light .labo-nt-rc-status.is-ok{color:#15803d}body.light-theme .labo-nt-rc-status.is-ko,body.theme-light .labo-nt-rc-status.is-ko{color:#b45309}@media(max-width:900px){.labo-nt-rc-slots{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:520px){.labo-nt-rc-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.labo-nt-rc-table{font-size:.72rem}}.labo-nt-sd{display:flex;flex-direction:column;gap:12px;margin-top:6px;padding-top:16px;border-top:1px dashed rgba(255,255,255,.18)}.labo-nt-sd-title{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.01em}.labo-nt-sd-honest{margin:0;font-size:.8rem;line-height:1.6;opacity:.85;max-width:80ch}.labo-nt-sd-drop{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:18px 14px;border:2px dashed rgba(167,139,250,.45);border-radius:12px;background:#a78bfa0f;text-align:center;transition:background .15s ease,border-color .15s ease}.labo-nt-sd-drop.is-over{border-color:#a78bfaf2;background:#a78bfa29}.labo-nt-sd-dropicon{font-size:1.4rem;line-height:1}.labo-nt-sd-droptext{font-size:.86rem;font-weight:600}.labo-nt-sd-pick{flex:none}.labo-nt-sd-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.labo-nt-sd-where{flex:1 1 100%;font-size:.72rem;line-height:1.5;opacity:.65}.labo-nt-sd-summary{margin:0;font-size:.84rem;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.labo-nt-sd-summary.is-ok{color:#4ade80}.labo-nt-sd-summary.is-ko{color:#f87171}.labo-nt-sd-summary[hidden]{display:none}.labo-nt-sd-problems{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.labo-nt-sd-problems:empty{display:none}.labo-nt-sd-problems>li{font-size:.78rem;line-height:1.5;padding:6px 10px;border-radius:6px;border-left:3px solid transparent}.labo-nt-sd-problems>li.is-blocking{background:#ef44441f;border-left-color:#ef4444}.labo-nt-sd-problems>li.is-warning{background:#facc151f;border-left-color:#facc15}.labo-nt-sd-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.labo-nt-sd-add{background:#38bdf833;border-color:#38bdf880;font-weight:600;flex:none}.labo-nt-sd-add:hover:not(:disabled){background:#38bdf852}.labo-nt-sd-add:disabled{opacity:.45;cursor:not-allowed}.labo-nt-sd-ready{font-size:.76rem;line-height:1.5;opacity:.75;flex:1 1 240px}.labo-nt-sd-dl{background:#16a34a;border-color:#4ade80;font-weight:700;flex:none}.labo-nt-sd-dl:hover{background:#22c55e}.labo-nt-sd-dl[hidden]{display:none}.labo-nt-sd-diff{padding:10px 12px;border-radius:8px;border:1px solid rgba(74,222,128,.35);background:#4ade8014;display:flex;flex-direction:column;gap:4px}.labo-nt-sd-diff[hidden]{display:none}.labo-nt-sd-diffline{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem;line-height:1.6;overflow-wrap:anywhere}.labo-nt-sd-warn{margin:0;font-size:.76rem;line-height:1.6;opacity:.7;max-width:80ch}body.light-theme .labo-nt-sd-drop,body.theme-light .labo-nt-sd-drop{background:#7c3aed0d;border-color:#7c3aed59}body.light-theme .labo-nt-sd,body.theme-light .labo-nt-sd{border-top-color:#00000024}body.light-theme .labo-nt-sd-summary.is-ok,body.theme-light .labo-nt-sd-summary.is-ok{color:#15803d}body.light-theme .labo-nt-sd-summary.is-ko,body.theme-light .labo-nt-sd-summary.is-ko{color:#b91c1c}body.light-theme .labo-nt-sd-diff,body.theme-light .labo-nt-sd-diff{background:#16a34a12;border-color:#16a34a4d}body.light-theme .labo-nt-sd-pick,body.theme-light .labo-nt-sd-pick{background:#7c3aed1a;border-color:#7c3aed73;color:#5b21b6;font-weight:600}body.light-theme .labo-nt-sd-pick:hover,body.theme-light .labo-nt-sd-pick:hover{background:#7c3aed2e}body.light-theme .labo-nt-sd-problems>li.is-blocking,body.theme-light .labo-nt-sd-problems>li.is-blocking{background:#ef44441a}body.light-theme .labo-nt-sd-problems>li.is-warning,body.theme-light .labo-nt-sd-problems>li.is-warning{background:#d977061f}.labo-nt-af{display:flex;flex-direction:column;gap:12px;margin-top:6px;padding-top:16px;border-top:1px dashed rgba(56,189,248,.3)}.labo-nt-af-title{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.01em}.labo-nt-af-honest{margin:0;padding:10px 13px;border-radius:10px;background:#38bdf817;border:1px solid rgba(56,189,248,.26);font-size:.81rem;line-height:1.55;max-width:80ch}.labo-nt-af-steps{margin:0;padding-left:22px;font-size:.8rem;line-height:1.65;max-width:80ch}.labo-nt-af-steps>li{margin-bottom:2px}.labo-nt-af-steps code{font-size:.95em}.labo-nt-af-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.labo-nt-af-main{background:#38bdf833;border-color:#38bdf880;font-weight:600}.labo-nt-af-main:hover{background:#38bdf852}.labo-nt-af-state{margin:0;font-size:.78rem;line-height:1.5;max-width:80ch}.labo-nt-af-state.is-void{opacity:.6;font-style:italic}.labo-nt-af-state.is-partial{color:#fbbf24}.labo-nt-af-state.is-ready{color:#4ade80}.labo-nt-af-install{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-radius:10px;background:#ffffff09;border:1px solid rgba(255,255,255,.1)}.labo-nt-af-install[hidden]{display:none}.labo-nt-af-installtitle{margin:0;font-size:.84rem;font-weight:700}.labo-nt-af-code{width:100%;box-sizing:border-box;resize:vertical;padding:9px 11px;border-radius:7px;background:#0000004d;border:1px solid rgba(255,255,255,.14);color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.labo-nt-af-warn{margin:0;font-size:.76rem;line-height:1.55;opacity:.85;max-width:80ch}.labo-nt-af-warn code{font-size:.95em}body.light-theme .labo-nt-af,body.theme-light .labo-nt-af{border-top-color:#0284c74d}body.light-theme .labo-nt-af-honest,body.theme-light .labo-nt-af-honest{background:#0284c712;border-color:#0284c747}body.light-theme .labo-nt-af-install,body.theme-light .labo-nt-af-install{background:#0000000a;border-color:#0000001f}body.light-theme .labo-nt-af-code,body.theme-light .labo-nt-af-code{background:#0000000f;border-color:#0000002e}body.light-theme .labo-nt-af-main,body.theme-light .labo-nt-af-main{background:#0284c71f;border-color:#0284c773;color:#075985;font-weight:600}body.light-theme .labo-nt-af-main:hover,body.theme-light .labo-nt-af-main:hover{background:#0284c733}body.light-theme .labo-nt-af-state.is-partial,body.theme-light .labo-nt-af-state.is-partial{color:#b45309}body.light-theme .labo-nt-af-state.is-ready,body.theme-light .labo-nt-af-state.is-ready{color:#15803d}.labo-gx-intro{margin:0 0 16px;font-size:.86rem;line-height:1.55;opacity:.85;max-width:78ch}.labo-gx-group{margin:0 0 22px}.labo-gx-group-title{margin:0 0 8px;font-size:.9rem;font-weight:700;letter-spacing:.02em;opacity:.95}.labo-gx-story{border-left:3px solid rgba(249,199,79,.55);padding:2px 0 2px 14px;margin:0 0 14px;max-width:78ch}.labo-gx-story p{margin:0 0 8px;font-size:.83rem;line-height:1.6;opacity:.82}.labo-gx-story p:last-child{margin-bottom:0}.labo-gx-story-lead{font-size:.94rem!important;font-style:italic;font-weight:600;opacity:1!important;color:#f9c74f}.labo-gx-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.labo-gx-item{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:10px;background:#ffffff09;border:1px solid rgba(255,255,255,.08)}.labo-gx-badge{flex:none;width:7.5rem;font-size:.72rem;opacity:.85;line-height:1.3}.labo-gx-badge-label{display:block;margin-top:2px}.labo-gx-body{flex:1 1 auto;min-width:0}.labo-gx-name{margin:0;font-size:.92rem;font-weight:600}.labo-gx-context{margin:5px 0 0;font-size:.79rem;line-height:1.5;opacity:.72}.labo-gx-decision{margin:6px 0 0;font-size:.79rem;line-height:1.5;opacity:.86}.labo-gx-file{margin:6px 0 0;font-size:.72rem;opacity:.45}.labo-gx-file code{font-size:.95em}.labo-gx-open{flex:none;align-self:center}.labo-gx-link{display:inline-block;padding:6px 12px;border-radius:999px;font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap;color:inherit;background:#ffffff12;border:1px solid rgba(255,255,255,.18);transition:background .15s ease,border-color .15s ease}.labo-gx-link:hover{background:#ffffff24;border-color:#ffffff52}.labo-gx-retenue{border-left:3px solid rgba(34,197,94,.75)}.labo-gx-livree{border-left:3px solid rgba(56,189,248,.75)}.labo-gx-ouverte{border-left:3px solid rgba(249,199,79,.75)}.labo-gx-ecartee{border-left:3px solid rgba(255,255,255,.22)}.labo-gx-outil{border-left:3px solid rgba(148,163,184,.45)}@media(max-width:720px){.labo-gx-item{flex-direction:column;gap:6px}.labo-gx-badge{width:auto}.labo-gx-open{align-self:flex-start}}body.light-theme .labo-gx-item,body.theme-light .labo-gx-item{background:#00000009;border-color:#0000001a}body.light-theme .labo-gx-link,body.theme-light .labo-gx-link{background:#0000000d;border-color:#0000002e}body.light-theme .labo-gx-link:hover,body.theme-light .labo-gx-link:hover{background:#0000001a}body.light-theme .labo-gx-story-lead,body.theme-light .labo-gx-story-lead{color:#92400e}.save-scale-modal-content{width:min(580px,calc(100vw - 24px))}.save-scale-author-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-radius:10px;background:#ffffff0d;border:1px dashed rgba(255,255,255,.2);font-weight:600;font-size:.9rem}.save-scale-author-hint{font-size:.72rem;opacity:.6;font-weight:400;margin-left:4px}.btn-listen-scale{align-self:flex-start;display:inline-flex;align-items:center;gap:6px}.save-demo-section{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff05}.save-demo-title{margin:0;font-size:1rem}.save-demo-coach{margin:0;font-size:.85rem;line-height:1.5;opacity:.88}.save-demo-noworry{margin:0;font-size:.8rem;line-height:1.45;opacity:.7;font-style:italic}.save-demo-modes{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.85rem}.save-demo-modes label{display:inline-flex;align-items:center;gap:6px;cursor:pointer;opacity:.9}#save-demo-drummer:not(:empty){margin-top:-2px}.save-demo-stage{position:relative;display:flex;justify-content:center;padding:4px 0}.save-demo-pan svg circle{transition:fill .3s ease,fill-opacity .3s ease}.save-demo-pan svg circle.sdp-hit{transition:none}.save-demo-count-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:800;color:gold;text-shadow:0 2px 16px rgba(0,0,0,.7);pointer-events:none}.save-demo-controls,.save-voice-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.save-demo-timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:.88rem;padding:4px 10px;border-radius:999px;background:#ef444426;color:#fca5a5}.save-demo-timer.warn{background:#f59e0b38;color:#fcd34d}#btn-modal-record-demo.recording,#btn-voice-memo.recording{background:linear-gradient(180deg,#f87171,#dc2626);color:#fff}.save-voice-label{font-size:.8rem;opacity:.8}#save-scale-demo-info{font-size:.85rem;opacity:.9;padding:.4rem .6rem;background:#ffffff08;border-radius:8px}.part-chord-row .chord-drag-handle{color:#fff6;cursor:grab;user-select:none;-webkit-user-select:none;padding:.15rem .1rem;flex-shrink:0;font-size:.9rem;line-height:1}.part-chord-row .chord-drag-handle:hover{color:#fffc}.part-chord-row .chord-drag-handle:active{cursor:grabbing}.part-chord-row.dragging{opacity:.45}.part-chord-row.drag-over{border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa}.part-chord-row .chord-move-btns{display:flex;flex-direction:column;gap:2px;flex-shrink:0;margin-left:auto}.part-chord-row .chord-move-btns button{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-color);border-radius:4px;padding:0 .35rem;font-size:.6rem;line-height:1.25;cursor:pointer}.part-chord-row .chord-move-btns button:hover:not(:disabled){background:#60a5fa2e;border-color:#60a5fa}.part-chord-row .chord-move-btns button:disabled{opacity:.25;cursor:default}.part-chord-row button.chord-row-remove{margin-left:0}#btn-view-song-scale{margin-top:.35rem;padding:.32rem .7rem;font-size:.8rem;align-self:flex-start}.scale-sheet-modal{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto}.scale-sheet-modal .ss-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin:0 0 .15rem}.scale-sheet-modal .ss-title{margin:0;font-size:1.05rem;line-height:1.3;overflow-wrap:anywhere}.scale-sheet-modal .ss-close{background:transparent;border:none;color:inherit;font-size:1.5rem;line-height:1;cursor:pointer;opacity:.7;padding:0 .2rem;flex-shrink:0}.scale-sheet-modal .ss-close:hover{opacity:1}.scale-sheet-modal .ss-subtitle{margin:0 0 .7rem;font-size:.85rem;opacity:.8}.scale-sheet-modal .ss-pan{width:min(400px,100%);margin:0 auto .7rem}.scale-sheet-modal .ss-pan svg{width:100%;height:auto;display:block}.scale-sheet-modal .ss-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.1rem;font-size:.85rem;margin:0 0 .6rem}.scale-sheet-modal .ss-meta-item strong{font-weight:700}.scale-sheet-modal .ss-notes{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 .85rem}.scale-sheet-modal .ss-note-badge{display:inline-flex;align-items:center;gap:4px;background:var(--ss-color, #666);color:#fff;font-weight:800;font-size:.85rem;line-height:1;padding:.34rem .55rem;border-radius:999px;border:2px solid rgba(255,255,255,.55);text-shadow:0 1px 2px rgba(0,0,0,.35)}.scale-sheet-modal .ss-note-badge.ss-ding{border-style:dashed;border-color:#fff}.scale-sheet-modal .ss-note-badge small{font-size:.62rem;font-weight:600;opacity:.9;text-transform:uppercase;letter-spacing:.4px}.scale-sheet-modal .ss-actions{display:flex;justify-content:center}.scale-sheet-modal .ss-listen{padding:.45rem 1.1rem;font-size:.88rem}.songbook-part-controls{display:inline-flex;align-items:center;gap:.25rem;margin-left:auto;flex-shrink:0}.songbook-repeat-btn,.songbook-loop-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.12);color:var(--text-color, #EDE4D3);border-radius:5px;padding:.1rem .35rem;font-size:.72rem;font-weight:700;cursor:pointer;line-height:1.3;opacity:.65;transition:all .15s}.songbook-repeat-btn:hover,.songbook-loop-btn:hover{opacity:1;background:#ffffff1a}.songbook-repeat-btn.multi{opacity:1;background:#d4b0622e;border-color:var(--highlight-color, #D4B062);color:var(--highlight-color, #D4B062)}.songbook-loop-btn.active{opacity:1;background:#60a5fa38;border-color:#60a5fa;color:#bfdbfe;box-shadow:0 0 8px #60a5fa73}.songbook-structure-item{display:flex;align-items:center;gap:.4rem}.songbook-structure-item .part-info{margin-left:0}.songbook-play-song-btn{white-space:nowrap}.songbook-play-song-btn.active{background:#dc5a5a38;border-color:#dc5a5a;color:#ffc9c9}.songbook-drummer-toolbar{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.songbook-drummer-toolbar .accompanist-widget{flex:1;min-width:0;flex-wrap:wrap}.songbook-metronome-toolbar .songbook-toolbar-toggle.clock-disabled{opacity:.3;pointer-events:auto}.scene-note-pulse{transform-box:fill-box;transform-origin:center;pointer-events:none}body.scene-mode{--sb-panel-w: 340px}body.scene-mode:has(#scene-songbook-panel.collapsed){--sb-panel-w: 36px}body.scene-mode:not(.scene-timeline-mode):not(.scene-progression-fullscreen) #handpan-container{width:min(calc(100vh - 24px),calc(100vw - var(--sb-panel-w) - 24px))!important;height:min(calc(100vh - 24px),calc(100vw - var(--sb-panel-w) - 24px))!important;margin:12px 0 0 calc(var(--sb-panel-w) + (100vw - var(--sb-panel-w) - min(calc(100vh - 24px),calc(100vw - var(--sb-panel-w) - 24px))) / 2)!important}#scene-hud{inset:12px 16px auto auto!important;transform:none!important;flex-direction:row!important;flex-wrap:wrap;justify-content:flex-end;gap:.3rem .8rem;padding:.45rem .85rem;border-radius:24px;min-width:0!important;max-width:min(44vw,560px)}#scene-hud .hud-actions{margin-top:0}#scene-hud .hud-title{font-size:.98rem}body.scene-timeline-mode #scene-hud{left:16px!important;right:auto!important;max-width:40vw}#scene-songbook-panel.collapsed .songbook-toolbar{display:none}body.scene-timeline-mode #scene-songbook-panel{max-height:34vh;overflow-y:auto}body.scene-timeline-mode #scene-songbook-panel .songbook-toolbar{padding:.25rem .55rem}body.scene-timeline-mode #scene-songbook-panel .songbook-header{padding:.35rem .55rem}@media(max-width:900px){body.scene-timeline-mode .timeline-satellite{bottom:calc(34vh + 12px)}}body.scene-progression-fullscreen.scene-mode #scene-songbook-panel .songbook-header{max-width:720px}body.scene-progression-fullscreen.scene-mode #scene-songbook-panel .songbook-body{padding:.6rem 1rem 2rem}@media(min-width:901px){body.scene-progression-fullscreen.scene-mode #scene-songbook-panel .songbook-toolbar{max-width:calc(100vw - 380px)}}@media(max-width:900px){body.scene-progression-fullscreen #scene-hud{top:auto!important;bottom:12px!important;right:12px!important}body.scene-progression-fullscreen.scene-mode #scene-songbook-panel .songbook-body{padding-bottom:130px}}body.scene-progression-fullscreen.scene-mode .songbook-chord-card .chord-card-svg{width:min(220px,100%);height:auto;aspect-ratio:1 / 1}.songbook-chord-card .chord-card-svg{max-width:100%}#songbook-play-sequence,#songbook-play-song{flex:1 1 auto}@media(max-width:768px){#scene-hud{inset:10px 10px auto!important;max-width:none;justify-content:center}body.scene-mode:not(.scene-timeline-mode):not(.scene-progression-fullscreen) #handpan-container{width:min(calc(100vw - 12px),calc(40vh - 10px))!important;height:min(calc(100vw - 12px),calc(40vh - 10px))!important;margin:96px auto 0!important}body.scene-mode:not(.scene-timeline-mode):not(.scene-progression-fullscreen):has(#scene-songbook-panel.collapsed) #handpan-container{width:min(calc(100vw - 12px),calc(100vh - 160px))!important;height:min(calc(100vw - 12px),calc(100vh - 160px))!important}}.tool-group.is-whole-button,.sub-group.is-whole-button{cursor:pointer}.tool-group.is-whole-button:hover>.group-content .icon-btn,.tool-group.is-whole-button:hover .tool-button,.sub-group.is-whole-button:hover .icon-btn,.sub-group.is-whole-button:hover .tool-button{border-color:var(--highlight-color);background-color:#22d3ee1a}[data-theme=light] .tool-group.is-whole-button:hover>.group-content .icon-btn,[data-theme=light] .tool-group.is-whole-button:hover .tool-button,[data-theme=light] .sub-group.is-whole-button:hover .icon-btn,[data-theme=light] .sub-group.is-whole-button:hover .tool-button{border-color:var(--highlight-color);background-color:#5ccb5f1f}.tool-group.is-whole-button:hover{border-color:#22d3ee73}[data-theme=light] .tool-group.is-whole-button:hover{border-color:#5ccb5f73}.sub-group.is-whole-button{border-radius:10px}.sub-group.is-whole-button:hover{background-color:#ffffff0f}[data-theme=light] .sub-group.is-whole-button:hover{background-color:#1b263b0d}.tool-group.is-whole-button:has(button:focus-visible),.sub-group.is-whole-button:has(button:focus-visible){outline:2px solid var(--highlight-color);outline-offset:2px}.tool-group.is-whole-button:has(button:focus-visible) button:focus-visible,.sub-group.is-whole-button:has(button:focus-visible) button:focus-visible{outline:none}.tool-group.is-whole-button:has(button:focus-visible) .icon-btn,.tool-group.is-whole-button:has(button:focus-visible) .tool-button,.sub-group.is-whole-button:has(button:focus-visible) .icon-btn,.sub-group.is-whole-button:has(button:focus-visible) .tool-button{border-color:var(--highlight-color);background-color:#22d3ee1a}[data-theme=light] .tool-group.is-whole-button:has(button:focus-visible) .icon-btn,[data-theme=light] .tool-group.is-whole-button:has(button:focus-visible) .tool-button,[data-theme=light] .sub-group.is-whole-button:has(button:focus-visible) .icon-btn,[data-theme=light] .sub-group.is-whole-button:has(button:focus-visible) .tool-button{background-color:#5ccb5f1f}body.debug-whole-button .tool-group.is-whole-button,body.debug-whole-button .sub-group.is-whole-button{outline:2px dashed #22d3ee;background-color:#22d3ee38!important}#logic-chord-grid-below{display:none}body:not(.app-acoustic) .mode-logic #logic-chord-grid-below{display:block;width:100%;margin:.5rem 0 .3rem;background:var(--primary-color);border:1px solid var(--secondary-color);border-radius:14px;padding:.6rem .8rem .7rem;box-sizing:border-box;order:999}body:not(.app-acoustic) .mode-logic #logic-chord-grid-below.is-empty{display:none}.logic-below-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.logic-below-toggle{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-color);cursor:pointer;font-family:var(--font-family);padding:4px 2px;flex:1 1 auto;min-width:0;text-align:left}.logic-below-chev{transition:transform .15s;opacity:.7;font-size:.9rem}#logic-chord-grid-below.open .logic-below-chev{transform:rotate(90deg)}.logic-below-title{font-size:.98rem;font-weight:800;white-space:nowrap}.logic-below-sub{font-size:.78rem;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logic-below-body{margin-top:.7rem}.logic-below-body[hidden]{display:none}@media(pointer:coarse){.logic-below-toggle{min-height:44px}}.logic-degree-swap-handle{display:none}body:not(.app-acoustic) .mode-logic #chord-rows-wrapper.has-anchor .control-group .logic-degree-swap-handle{display:flex;grid-area:bot-swap;align-self:center;justify-self:end;width:22px;height:22px;align-items:center;justify-content:center;border-radius:50%;background:#0000004d;border:1px solid rgba(255,255,255,.45);color:#fff;font-size:.82rem;font-weight:700;line-height:1;padding:0;margin:0;cursor:grab;opacity:.85;transition:opacity .15s ease,background .15s ease,transform .15s ease}body:not(.app-acoustic) .mode-logic #chord-rows-wrapper.timeline-horizontal.has-anchor .chord-label{grid-area:bot-label;grid-column:1 / 2}@media(pointer:coarse){body:not(.app-acoustic) .mode-logic #chord-rows-wrapper.has-anchor .control-group .logic-degree-swap-handle{width:32px;height:32px;font-size:1rem}}body:not(.app-acoustic) .mode-logic #chord-rows-wrapper.has-anchor .control-group .logic-degree-swap-handle:hover{opacity:1;background:#0000008c;transform:scale(1.12)}.logic-degree-swap-handle:active{cursor:grabbing}.logic-degree-swap-handle.armed{background:var(--highlight-color)!important;color:var(--primary-color)!important;border-color:var(--highlight-color)!important;opacity:1!important;animation:logic-swap-pulse 1s infinite}body:not(.app-acoustic) .mode-logic #chord-rows-wrapper.has-anchor.logic-swap-arming .control-group .logic-degree-swap-handle:not(.armed){opacity:1;border-color:var(--highlight-color)}@keyframes logic-swap-pulse{0%,to{box-shadow:0 0 #ffffff73}50%{box-shadow:0 0 0 6px #fff0}}.control-group.logic-swap-dragging{opacity:.55}.control-group.logic-swap-target{outline:2px dashed var(--highlight-color);outline-offset:3px;border-radius:12px}#logic-reorder-hint,#logic-reorder-hint[hidden]{display:none}body:not(.app-acoustic) .mode-logic #logic-reorder-hint:not([hidden]){display:block;width:100%;margin:.15rem 0 0;font-size:.72rem;line-height:1.4;text-align:center;opacity:.6;order:998}.onbp-card,.onbp-reminder{--onbp-ink: #E0E1DD;--onbp-accent: #22D3EE;--onbp-line: rgba(255, 255, 255, .1);--onbp-tint: rgba(255, 255, 255, .04)}.onbp-card{width:100%;max-width:560px;color:var(--onbp-ink);background:var(--panel-bg, rgba(20, 28, 38, .92));border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2.2rem 2rem;box-shadow:0 24px 60px #00000073;animation:onbp-fade .35s ease}@keyframes onbp-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onbp-brand{text-align:center;margin-bottom:1.2rem}.onbp-logo{font-size:1.5rem;font-weight:800;margin:0;letter-spacing:.01em}.onbp-byline{font-size:.8rem;opacity:.7;margin:.2rem 0 0}.onbp-title{font-size:1.5rem;font-weight:800;margin:0 0 .6rem;text-align:center;line-height:1.2}.onbp-sub{font-size:.95rem;opacity:.85;text-align:center;margin:0 0 1.6rem;line-height:1.5}.onbp-sign{font-size:.9rem;opacity:.8;text-align:center;font-style:italic;margin:1.2rem 0 0}.onbp-steps{display:flex;gap:6px;justify-content:center;margin-bottom:1.4rem}.onbp-dot{width:30px;height:5px;border-radius:3px;background:#ffffff26;transition:background .25s ease}.onbp-dot.is-active{background:var(--onbp-accent)}.onbp-dot.is-done{background:color-mix(in srgb,var(--onbp-accent) 55%,transparent)}.onbp-q{margin:0 0 1.4rem}.onbp-q-label{font-size:1.15rem;font-weight:700;margin:0 0 1rem;text-align:center}.onbp-choices{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.onbp-choice{flex:1 1 140px;min-width:120px;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem .8rem;border-radius:14px;border:2px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--onbp-ink);cursor:pointer;font:inherit;text-align:center;transition:border-color .18s ease,background .18s ease,transform .12s ease}.onbp-choice:hover{border-color:color-mix(in srgb,var(--onbp-accent) 50%,transparent);transform:translateY(-2px)}.onbp-choice.is-selected{border-color:var(--onbp-accent);background:color-mix(in srgb,var(--onbp-accent) 12%,transparent)}.onbp-choice-emoji{font-size:1.8rem;line-height:1}.onbp-choice-name{font-weight:700;font-size:.98rem}.onbp-choice-desc{font-size:.78rem;opacity:.75;line-height:1.35}.onbp-choices.onbp-compact .onbp-choice{flex:0 1 auto;min-width:84px;padding:.7rem 1.1rem}.onbp-subblock{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.08)}.onbp-subblock[hidden]{display:none}.onbp-sub-q{font-size:.95rem;font-weight:600;text-align:center;margin:0 0 .8rem}.onbp-selects{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}.onbp-field{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;font-weight:600;flex:1 1 160px;min-width:140px}.onbp-field select{padding:.6rem .7rem;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#0000004d;color:var(--onbp-ink);font:inherit;font-weight:600}.onbp-field select:disabled{opacity:.45}.onbp-unknown-row{margin-top:1rem;text-align:center}.onbp-unknown-btn{border:1px dashed rgba(255,255,255,.3);background:transparent;color:var(--onbp-ink);border-radius:999px;padding:.5rem 1.1rem;cursor:pointer;font:inherit;font-size:.85rem;opacity:.85;transition:border-color .18s ease,background .18s ease}.onbp-unknown-btn:hover{border-color:var(--onbp-accent)}.onbp-unknown-btn.is-selected{border-style:solid;border-color:var(--onbp-accent);background:color-mix(in srgb,var(--onbp-accent) 12%,transparent);opacity:1}.onbp-unknown-hint{font-size:.78rem;opacity:.7;text-align:center;margin:.8rem 0 0;line-height:1.45}.onbp-nav{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:1.8rem}.onbp-btn{border:none;border-radius:12px;padding:.8rem 1.6rem;font:inherit;font-weight:700;cursor:pointer;transition:filter .15s ease,opacity .15s ease}.onbp-btn-primary{background:var(--onbp-accent);color:#06131a;flex:1}.onbp-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.onbp-btn-primary:disabled{opacity:.5;cursor:not-allowed}.onbp-btn-ghost{background:transparent;color:var(--onbp-ink);border:1px solid rgba(255,255,255,.18);padding:.8rem 1.2rem}.onbp-btn-ghost:hover{background:#ffffff0d}.onbp-card-lang{max-width:520px}.onbp-sub-tight{margin-bottom:1.4rem}.onbp-langs{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:.7rem}.onbp-lang{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:.95rem .7rem;border-radius:14px;border:2px solid var(--onbp-line);background:var(--onbp-tint);color:var(--onbp-ink);cursor:pointer;font:inherit;text-align:center;transition:border-color .18s ease,background .18s ease,transform .12s ease}.onbp-lang:hover{border-color:color-mix(in srgb,var(--onbp-accent) 55%,transparent);transform:translateY(-2px)}.onbp-lang:focus-visible{outline:2px solid var(--onbp-accent);outline-offset:2px}.onbp-lang.is-selected{border-color:var(--onbp-accent);background:color-mix(in srgb,var(--onbp-accent) 14%,transparent)}.onbp-lang-name{font-size:1.05rem;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.onbp-lang-code{font-size:.66rem;font-weight:600;letter-spacing:.14em;opacity:.55}.onbp-lang.is-selected .onbp-lang-code{opacity:.85}.onbp-lang-missing{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--onbp-line)}.onbp-lang-missing[hidden]{display:none}.onbp-lang-chips{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:.9rem}.onbp-lang-chips[hidden]{display:none}.onbp-lang-chip{border:1px solid var(--onbp-line);background:var(--onbp-tint);color:var(--onbp-ink);border-radius:999px;padding:.34rem .8rem;font:inherit;font-size:.82rem;cursor:pointer;transition:border-color .18s ease,background .18s ease}.onbp-lang-chip:hover{border-color:var(--onbp-accent)}.onbp-lang-entry{display:flex;flex-wrap:wrap;gap:.5rem;align-items:stretch}.onbp-lang-entry[hidden]{display:none}.onbp-lang-input{flex:1 1 180px;min-width:0;padding:.6rem .7rem;border-radius:10px;border:1px solid var(--onbp-line);background:#0000004d;color:var(--onbp-ink);font:inherit;font-weight:600;box-sizing:border-box}.onbp-lang-input:focus-visible{outline:2px solid var(--onbp-accent);outline-offset:1px}.onbp-btn-inline{flex:0 0 auto;padding:.6rem 1.1rem}.onbp-nav-single{justify-content:stretch}.onbp-reminder{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:9000;max-width:420px;width:calc(100% - 32px);display:flex;align-items:flex-start;gap:.7rem;padding:.9rem 1rem;border-radius:14px;background:var(--panel-bg, rgba(20, 28, 38, .96));border:1px solid color-mix(in srgb,var(--onbp-accent) 35%,transparent);box-shadow:0 14px 40px #00000080;color:var(--onbp-ink);animation:onbp-slide .4s ease}@keyframes onbp-slide{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.onbp-reminder-icon{font-size:1.3rem;line-height:1.3}.onbp-reminder-body{flex:1;font-size:.86rem;line-height:1.45}.onbp-reminder-body strong{display:block;margin-bottom:.15rem}.onbp-reminder-close{border:none;background:transparent;color:var(--onbp-ink);font-size:1.1rem;cursor:pointer;opacity:.6;line-height:1;padding:.1rem .3rem}.onbp-reminder-close:hover{opacity:1}@media(max-width:560px){.onbp-card{padding:1.6rem 1.2rem}.onbp-title{font-size:1.3rem}.onbp-langs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.onbp-lang{padding:.8rem .5rem}.onbp-lang-name{font-size:.98rem}.onbp-btn-inline{flex:1 1 100%}}.appmode-topbar{display:flex;justify-content:center;align-items:center;width:100%;padding:1px 0 3px}.appmode-switch{display:flex;align-items:center;gap:3px;background:var(--secondary-color);border:1px solid var(--highlight-color);border-radius:999px;padding:3px}.appmode-switch .appmode-btn{display:flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.78rem;font-weight:600;padding:6px 14px;border-radius:999px;white-space:nowrap;transition:background-color .2s,color .2s}.appmode-switch .appmode-icon{flex-shrink:0}.appmode-switch .appmode-icon-electro{color:var(--hand-color-left, #3B82F6)}.appmode-switch .appmode-btn:hover:not(.active){background:#ffffff14}.appmode-switch .appmode-btn.active{background:var(--highlight-color);color:var(--primary-color)}body.app-acoustic .nav-tab[data-mode=midi],body.app-acoustic .mobile-menu-item[data-mode=midi]{display:none!important}#acoustic-panel{display:none}body.app-acoustic #acoustic-panel{display:block}body.app-acoustic #scale-library-panel{display:none!important}body:not(.app-acoustic) #acoustic-panel{display:none!important}body.app-acoustic #chords-container{order:1}body.app-acoustic:not(.spm-on):not(.printing-chords) #right-sidebar.mode-library #chords-container{display:none!important}.acoustic-panel{margin:0;max-width:none;width:100%;background:var(--primary-color);border:2px solid var(--current-outline-color);border-radius:18px;padding:.9rem 1rem 1rem;color:var(--text-color);box-sizing:border-box}.acoustic-panel-head{margin-bottom:.8rem}.acoustic-panel-title{font-size:1.05rem;font-weight:700}.acoustic-panel-sub{font-size:.8rem;opacity:.7;margin-top:2px}.acoustic-tonic-row{font-size:.8rem;opacity:.85;margin-top:6px}.acoustic-tonic-row strong{color:var(--highlight-color);font-size:.95rem}.acoustic-empty{font-size:.85rem;opacity:.8;padding:1rem 0;text-align:center}.acoustic-anchor{display:flex;align-items:center;gap:12px;background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:14px;padding:10px 12px;margin-bottom:1rem}.acoustic-anchor-thumb{flex-shrink:0;width:66px;height:66px;display:flex;align-items:center;justify-content:center}.acoustic-anchor-thumb .mini-pan-svg{width:100%;height:100%;display:block}.acoustic-anchor-thumb-empty{font-size:1.6rem;opacity:.6}.acoustic-anchor-meta{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.acoustic-anchor-eyebrow{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;opacity:.55}.acoustic-anchor-name{font-size:1rem;font-weight:800;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;overflow-wrap:anywhere}.acoustic-anchor-tonic{font-size:.74rem;opacity:.8;margin-top:1px}.acoustic-anchor-tonic strong{color:var(--highlight-color);font-weight:700}.acoustic-anchor-change{align-self:flex-start;margin-top:6px;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--highlight-color);color:var(--text-color);font-family:var(--font-family);font-size:.74rem;font-weight:700;padding:5px 11px;border-radius:999px;cursor:pointer;transition:background-color .14s,color .14s}.acoustic-anchor-change:hover{background:var(--highlight-color);color:var(--primary-color)}.acoustic-intents{display:flex;flex-direction:column;gap:.7rem;margin-bottom:.9rem}.acoustic-intent{background:var(--primary-color);border:1px solid var(--current-outline-color);border-radius:14px;overflow:hidden}.acoustic-intent.is-hidden{display:none}.acoustic-intent-head{width:100%;display:flex;align-items:center;gap:9px;min-height:46px;padding:11px 13px;box-sizing:border-box;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text-color);font-family:var(--font-family);font-size:.94rem;font-weight:700;transition:background-color .13s}.acoustic-intent-head:hover{background:#ffffff0d}.acoustic-intent-chev{font-size:.78rem;opacity:.7;transition:transform .18s;flex-shrink:0}.acoustic-intent.open>.acoustic-intent-head .acoustic-intent-chev{transform:rotate(90deg)}.acoustic-intent-icon{font-size:1.05rem;flex-shrink:0}.acoustic-intent-label{flex:1;min-width:0}.acoustic-intent-badge{flex-shrink:0;font-size:.6rem;font-weight:800;letter-spacing:.02em;color:var(--primary-color);background:var(--gold-color);padding:2px 8px;border-radius:999px;white-space:nowrap}.acoustic-intent-badge[hidden]{display:none}.acoustic-intent-body{max-height:0;opacity:0;overflow:hidden;visibility:hidden;transition:max-height .3s ease,opacity .22s ease,visibility 0s linear .3s}.acoustic-intent.open>.acoustic-intent-body{max-height:4000px;opacity:1;visibility:visible;transition:max-height .3s ease,opacity .22s ease,visibility 0s linear 0s}.acoustic-panel{padding:.6rem 1rem .65rem}.acoustic-anchor,.acoustic-intents{margin-bottom:.6rem}.acoustic-buy{margin:0 0 .4rem;padding:.42rem .9rem}.acoustic-upsell{margin-top:0;padding:.45rem .9rem}.myhp-find-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin:0 0 10px;padding:9px 12px;cursor:pointer;font-family:var(--font-family);font-size:.78rem;font-weight:800;border-radius:10px;color:var(--text-color);border:1px solid var(--gold-color, #FFD700);background:#7f7f7f2e;box-shadow:0 0 0 1px #ffd7002e inset;transition:background-color .12s,transform .12s,opacity .12s}.myhp-find-btn:hover:not(:disabled){background:#ffd70029;transform:translateY(-1px)}.myhp-find-btn:disabled{opacity:.5;cursor:default}.acoustic-intent[data-intent=jouer] .acoustic-guided{margin:0!important;padding:0!important;background:transparent!important;border:0!important}.acoustic-intent[data-intent=jouer] .acoustic-guided>div:first-child{display:none}.acoustic-intent-inner{padding:0 .8rem .85rem}.acoustic-intent-inner .acoustic-catalogue{margin-bottom:0}.acoustic-panel.level-simple .acoustic-intent[data-intent=progresser] .acoustic-intent-chev{display:none}.acoustic-panel.level-simple .acoustic-intent[data-intent=progresser] .acoustic-intent-head{cursor:default}.acoustic-panel.level-simple .acoustic-intent[data-intent=progresser] .acoustic-intent-head:hover{background:transparent}.acoustic-panel.level-simple .acoustic-intent[data-intent=progresser]{border-color:color-mix(in srgb,var(--gold-color) 45%,transparent);background:color-mix(in srgb,var(--gold-color) 6%,transparent)}.acoustic-panel .acoustic-section{margin-bottom:1.1rem}.acoustic-panel .acoustic-section:last-of-type{margin-bottom:.8rem}.acoustic-panel .acoustic-catalogue{margin-bottom:0}.acoustic-chords-body{display:flex;flex-direction:column;gap:.95rem;overflow-x:hidden;overflow-y:auto;max-height:430px;padding-bottom:4px}.acoustic-grid-group{display:flex;flex-direction:column;gap:.5rem}.acoustic-col-head{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.7;text-align:center;padding-bottom:.3rem;border-bottom:1px solid var(--secondary-color)}.acoustic-grid-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:.5rem;align-items:start;justify-items:stretch}.acoustic-grid-chips .acoustic-chip{width:auto}.acoustic-group-count{opacity:.5}.acoustic-parent-block{display:flex;flex-direction:column;gap:.7rem}.acoustic-parent-fam{display:flex;flex-direction:column;gap:.5rem}.acoustic-parent-chips{display:grid;grid-template-columns:repeat(var(--pcols, 1),minmax(0,1fr));gap:.5rem;align-items:start;justify-items:stretch}.acoustic-parent-chips .acoustic-chip{width:auto}.acoustic-parent-chips .acoustic-chip-svg{width:100%;height:auto;aspect-ratio:1 / 1;max-width:86px}.acoustic-chip-empty{visibility:hidden}@media(max-width:700px){.acoustic-parent-chips{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}.acoustic-chip-empty{display:none}}.acoustic-below-body .mini-handpan-svg .note-group.ghost-note .note-circle-base,.acoustic-grid-modal .agm-body .mini-handpan-svg .note-group.ghost-note .note-circle-base{stroke:#0000008c;stroke-width:3px}.acoustic-grid-row{display:contents}.acoustic-below-body .acoustic-grid-row,.acoustic-grid-modal .agm-body .acoustic-grid-row,.acoustic-print-area .acoustic-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem;align-items:start}.acoustic-below-body .acoustic-grid-row.single,.acoustic-grid-modal .agm-body .acoustic-grid-row.single,.acoustic-print-area .acoustic-grid-row.single{grid-template-columns:1fr}.acoustic-below-body .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group,.acoustic-grid-modal .agm-body .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group,.acoustic-print-area .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group{border-left:1px solid var(--secondary-color);padding-left:1.2rem}@media(max-width:700px){.acoustic-below-body .acoustic-grid-row,.acoustic-grid-modal .agm-body .acoustic-grid-row{display:flex;flex-direction:column;gap:1rem}.acoustic-below-body .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group,.acoustic-grid-modal .agm-body .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group{border-left:none;padding-left:0}}.acoustic-chip-inv{position:relative;display:inline-block;margin-top:2px;font-size:.6rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--gold-color);opacity:.85;cursor:help}.acoustic-chip-tip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);width:200px;max-width:60vw;z-index:50;background:var(--primary-color);color:var(--text-color);border:1px solid var(--gold-color);border-radius:8px;padding:7px 9px;font-size:.68rem;font-weight:500;line-height:1.3;letter-spacing:0;text-transform:none;text-align:left;box-shadow:0 6px 18px #00000059;pointer-events:none}.acoustic-chip-inv:hover .acoustic-chip-tip,.acoustic-chip-inv:focus .acoustic-chip-tip{display:block}.acoustic-chords-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin:0 0 .7rem}.acoustic-chords-actions[hidden]{display:none}.acoustic-grid-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:var(--h-control);box-sizing:border-box;background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:var(--fs-label);font-weight:600;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);cursor:pointer;transition:border-color .12s,background-color .12s}.acoustic-grid-action:hover{border-color:var(--highlight-color)}.acoustic-play-mode{display:inline-flex;align-items:center;gap:3px;margin-left:auto}.acoustic-playmode-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--h-control);box-sizing:border-box;background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:var(--fs-micro);font-weight:600;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);cursor:pointer;transition:border-color .12s,background-color .12s}.acoustic-playmode-btn:hover:not(.on){border-color:var(--highlight-color)}.acoustic-playmode-btn.on{background:var(--ctl-active-bg);color:var(--ctl-active-fg)}.acoustic-below-grid{display:none}body.app-acoustic .acoustic-below-grid{display:block;width:100%;margin:.6rem 0 .4rem;background:var(--primary-color);border:1px solid var(--secondary-color);border-radius:14px;padding:.6rem .8rem .7rem;box-sizing:border-box}body.app-acoustic .acoustic-below-grid.is-empty{display:none}.acoustic-below-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.acoustic-below-toggle{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-color);cursor:pointer;font-family:var(--font-family);padding:4px 2px;flex:1 1 auto;min-width:0}.acoustic-below-chev{transition:transform .15s;opacity:.7;font-size:.9rem}.acoustic-below-grid.open .acoustic-below-chev{transform:rotate(90deg)}.acoustic-below-title{font-size:.98rem;font-weight:800;white-space:nowrap}.acoustic-below-sub{font-size:.78rem;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acoustic-below-tools{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.acoustic-below-tools .acoustic-play-mode{margin-left:0}.acoustic-below-body{margin-top:.7rem;display:flex;flex-direction:column;gap:1rem;max-height:62vh;overflow-y:auto;overflow-x:hidden;padding-right:2px}.acoustic-below-body[hidden]{display:none}.acoustic-below-body .acoustic-grid-chips{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:.6rem}.acoustic-below-body .acoustic-chip-svg{width:74px;height:74px}@media(pointer:coarse){.acoustic-below-toggle{min-height:44px}.acoustic-below-tools .acoustic-grid-action,.acoustic-below-tools .acoustic-playmode-btn{min-height:40px}}.acoustic-chip.chip-active{border-color:var(--highlight-color);box-shadow:0 0 0 2px var(--highlight-color) inset}#acoustic-constellation-group .acoustic-constellation-path{fill:none;stroke-width:7;stroke-linejoin:round;stroke-linecap:round;opacity:.92}#handpan-container .note-group.constellation-on .note-circle-base{stroke:#fff;stroke-width:6}#handpan-container .note-group.constellation-on{filter:drop-shadow(0 0 9px rgba(255,255,255,.65))}#handpan-container .note-group.constellation-on .note-segment{display:none}#handpan-container .note-group.constellation-on .note-circle-base{fill:var(--constellation-color)!important}#handpan-container .note-group.constellation-dim{opacity:.28;transition:opacity .15s ease}#handpan-container .comp-note-group{transition:opacity .15s ease}#handpan-container .comp-note-group.constellation-dim{opacity:.2}#handpan-container .comp-note-group.constellation-on{filter:drop-shadow(0 0 9px rgba(255,255,255,.65))}#handpan-container .note-group.chord-view-relocated,#handpan-container .comp-note-group.chord-view-relocated{opacity:0;pointer-events:none}body.chord-view-on #handpan-container #chord-paths-group{opacity:.12}#handpan-container .chord-view-badge{cursor:pointer}#handpan-container .chord-view-badge:hover circle:first-of-type{filter:brightness(1.06)}#handpan-container .chord-view-badge:active{transform:scale(.97);transform-origin:center}@keyframes chord-view-pulse-kf{0%{opacity:1}45%{opacity:1}to{opacity:.55}}#acoustic-chord-view .chord-view-pulse{animation:chord-view-pulse-kf .26s ease-out;filter:drop-shadow(0 0 14px rgba(255,255,255,.85)) brightness(1.35)}#handpan-container .comp-note-group.chord-view-pulse{filter:drop-shadow(0 0 16px rgba(255,255,255,.95)) brightness(1.25)}#acoustic-chord-view,#acoustic-chord-gesture{pointer-events:none}#acoustic-chord-view .chord-view-badge{pointer-events:auto}body.app-acoustic #handpan-container #lcd-group,body.app-acoustic #handpan-container #lcd-group rect{cursor:grab!important}body.app-acoustic #handpan-container #lcd-group:active,body.app-acoustic #handpan-container #lcd-group:active rect{cursor:grabbing!important}body.app-acoustic #handpan-container .note-group.bottom-note{cursor:grab}body.app-acoustic #handpan-container .note-group.bottom-note:active{cursor:grabbing}@media(pointer:coarse){body.app-acoustic #handpan-container #lcd-group,body.app-acoustic #handpan-container #lcd-group rect,body.app-acoustic #handpan-container .note-group.bottom-note{touch-action:none}}body.acoustic-duo #handpan-container{width:100%;max-width:760px;aspect-ratio:1820 / 880;border-radius:0}body.acoustic-tall #handpan-container{width:100%;max-width:620px;aspect-ratio:1820 / 1840;border-radius:0}#handpan-container{position:relative}.acoustic-bottom-toggle{display:flex;gap:3px;z-index:6;background:#0d1b2ac7;border:1px solid var(--highlight-color);border-radius:999px;padding:3px;backdrop-filter:blur(4px)}body:not(.app-acoustic) #acoustic-bottom-toggle{display:none!important}body.app-acoustic .model-toggle-pill,body.app-acoustic .model-toggle-title{display:none!important}.acoustic-bottommode-btn{background:transparent;border:none;color:var(--text-color);cursor:pointer;font-family:var(--font-family);font-size:.72rem;font-weight:600;padding:4px 11px;border-radius:999px;white-space:nowrap;transition:background-color .15s,color .15s}.acoustic-bottommode-btn:hover:not(.on){background:#ffffff14}.acoustic-bottommode-btn.on{background:var(--highlight-color);color:var(--primary-color)}.acoustic-chip{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--secondary-color);border:1px solid transparent;border-radius:14px;padding:7px 7px 5px;cursor:pointer;transition:transform .12s,border-color .12s;width:84px}.acoustic-chip:hover{border-color:var(--highlight-color);transform:translateY(-2px)}.acoustic-chip.played{animation:acousticPlayed .4s ease}@keyframes acousticPlayed{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.acoustic-chip-svg{width:66px;height:66px;display:block}.acoustic-chip-svg svg{width:100%!important;height:100%!important;display:block}.acoustic-chip-name{font-size:.8rem;font-weight:700}.acoustic-upsell{margin-top:.6rem;padding:.7rem .9rem;border:1px solid #3a6a52;background:#22d3ee0d;border-radius:12px}.acoustic-upsell-title{font-size:.82rem;font-weight:700;color:var(--highlight-color);margin-bottom:3px}.acoustic-upsell-items{font-size:.78rem;opacity:.8}.acoustic-catalogue{margin-bottom:1rem}.acoustic-cat-toprow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:.7rem}.acoustic-cat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.6}.acoustic-root-row{display:flex;flex-wrap:wrap;gap:4px}.acoustic-root-chip{background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:.74rem;font-weight:600;min-width:32px;height:28px;padding:0 6px;border-radius:8px;cursor:pointer}.acoustic-root-chip:hover:not(.on){border-color:var(--highlight-color)}.acoustic-root-chip.on{background:var(--highlight-color);color:var(--primary-color)}.acoustic-filter{display:flex;flex-direction:column;gap:6px;margin-bottom:.7rem}.acoustic-filter-chip{background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:border-color .12s,background-color .12s}.acoustic-filter-chip:hover:not(.on){border-color:var(--highlight-color)}.acoustic-filter-chip.on{background:var(--highlight-color);color:var(--primary-color)}.acoustic-filter-chips{display:flex;flex-wrap:wrap;gap:4px}.acoustic-cat-empty{font-size:.8rem;opacity:.7;padding:.6rem 0;text-align:center}.acoustic-cat-scroll{max-height:420px;overflow-y:auto;padding-right:4px}.acoustic-contree{margin-bottom:.9rem;padding-left:10px;border-left:2px solid var(--contree-color, var(--secondary-color))}.acoustic-contree-head{display:flex;align-items:center;gap:8px;margin-bottom:.5rem}.acoustic-contree-dot{flex-shrink:0;width:9px;height:9px;border-radius:50%;background:var(--contree-color, var(--highlight-color));box-shadow:0 0 8px color-mix(in srgb,var(--contree-color, #fff) 60%,transparent)}.acoustic-contree-titles{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.acoustic-contree-label{font-size:.92rem;font-weight:700;letter-spacing:.01em;color:var(--contree-color, var(--text-color))}.acoustic-contree-teaser{font-size:.7rem;opacity:.62;line-height:1.2}.acoustic-contree-count{flex-shrink:0;font-size:.64rem;font-weight:700;opacity:.55;white-space:nowrap;align-self:flex-start;margin-top:2px}.acoustic-dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:8px}.acoustic-dest-card{display:flex;flex-direction:column;align-items:center;gap:5px;background:var(--secondary-color);border:1px solid transparent;border-radius:12px;padding:8px 6px 7px;cursor:pointer;color:var(--text-color);font-family:var(--font-family);text-align:center;transition:border-color .14s,transform .14s,box-shadow .14s}.acoustic-dest-card:hover{border-color:var(--contree-color, var(--highlight-color));transform:translateY(-2px);box-shadow:0 4px 14px #00000040}.acoustic-dest-card.loaded{border-color:var(--contree-color, var(--highlight-color));box-shadow:0 0 0 2px var(--contree-color, var(--highlight-color)) inset,0 0 16px color-mix(in srgb,var(--contree-color, var(--highlight-color)) 45%,transparent)}.acoustic-dest-card.loaded:after{content:"✦ Chargée";font-size:.58rem;font-weight:800;letter-spacing:.03em;color:var(--contree-color, var(--highlight-color))}.acoustic-dest-thumb{width:76px;height:76px;display:block}.acoustic-dest-thumb .mini-pan-svg{width:100%;height:100%;display:block}:root{--mini-pan-body-fill: rgba(10, 18, 30, .55);--mini-pan-body-stroke: rgba(255, 255, 255, .16);--mini-pan-note-stroke: rgba(0, 0, 0, .42);--mini-pan-ring: rgba(255, 255, 255, .34);--mini-pan-label: #ffffff;--mini-pan-label-halo: rgba(0, 0, 0, .72);--mini-pan-empty-fill: rgba(255, 215, 0, .16);--mini-pan-empty-fill-top: rgba(255, 255, 255, .12)}[data-theme=light]{--mini-pan-body-fill: rgba(232, 236, 244, .92);--mini-pan-body-stroke: rgba(20, 30, 48, .28);--mini-pan-note-stroke: rgba(20, 30, 48, .55);--mini-pan-ring: rgba(20, 30, 48, .45);--mini-pan-label: #ffffff;--mini-pan-label-halo: rgba(15, 23, 42, .85);--mini-pan-empty-fill: rgba(180, 140, 20, .22);--mini-pan-empty-fill-top: rgba(20, 30, 48, .14)}.mini-pan-body{fill:var(--mini-pan-body-fill);stroke:var(--mini-pan-body-stroke);stroke-width:6}.mini-pan-note{stroke:var(--mini-pan-note-stroke);stroke-width:5}.mini-pan-bottom{stroke:var(--gold-color, #FFD700);stroke-width:6;stroke-dasharray:10 7}.mini-pan-bottom-ring{fill:none;stroke:var(--gold-color, #FFD700);stroke-opacity:.28;stroke-width:3;stroke-dasharray:16 12}.mini-pan-ding{stroke:var(--mini-pan-ring);stroke-width:9}.mini-pan-ding-ring{fill:none;stroke:var(--mini-pan-ring);stroke-width:5}.mini-pan-label{fill:var(--mini-pan-label);stroke:var(--mini-pan-label-halo);stroke-width:7;stroke-linejoin:round;font-family:var(--font-family);font-weight:800;letter-spacing:-.02em;pointer-events:none}.acoustic-dest-meta{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;width:100%}.acoustic-dest-name{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.68rem;font-weight:600;opacity:.82;line-height:1.15;width:100%}.acoustic-dest-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%}.acoustic-dest-label{min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.acoustic-dest-notes{font-size:.6rem;opacity:.5}.acoustic-chords-titlerow{display:flex;align-items:baseline;gap:8px;margin:0 0 .7rem}.acoustic-chords-hint{font-size:.72rem;opacity:.55}.acoustic-buy{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 1rem;padding:.6rem .9rem;border:1px solid var(--highlight-color);border-radius:12px;background:var(--secondary-color);color:var(--text-color);font-family:var(--font-family);font-size:.82rem;font-weight:600;text-decoration:none;transition:transform .12s,border-color .12s}.acoustic-buy strong{color:var(--highlight-color)}.acoustic-buy:hover{transform:translateY(-1px)}#handpan-container.app-acoustic-pan.look-photo .note-circle-base{fill-opacity:.46}#handpan-container.app-acoustic-pan.look-photo .note-text{font-weight:800}.atlas-viewtoggle{display:flex;gap:3px;padding:3px;margin-bottom:.7rem;background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:999px}.atlas-viewbtn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:none;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.78rem;font-weight:600;padding:6px 10px;border-radius:999px;transition:background-color .15s,color .15s}.atlas-viewbtn:hover:not(.on){background:#ffffff12}.atlas-viewbtn.on{background:var(--highlight-color);color:var(--primary-color)}.atlas-invite{margin:0 0 .8rem}.atlas-invite-h{font-size:1rem;font-weight:700;line-height:1.25}.atlas-invite-s{font-size:.76rem;opacity:.7;margin-top:3px;line-height:1.35}.atlas-gl{width:100%;height:100%;display:block}.atlas-dest-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.atlas-dest-tile{position:relative;overflow:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:3px;min-height:104px;padding:11px 11px 10px;border:1px solid rgba(255,255,255,.14);border-radius:14px;color:#fff;font-family:var(--font-family);transition:transform .14s,box-shadow .14s}.atlas-dest-tile:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:radial-gradient(1px 1px at 22% 28%,#fff,transparent),radial-gradient(1px 1px at 70% 58%,#fff,transparent),radial-gradient(1.2px 1.2px at 46% 82%,#fff,transparent),radial-gradient(1px 1px at 84% 30%,#fff,transparent)}.atlas-dest-tile:hover{transform:translateY(-2px);box-shadow:0 8px 22px #00000059}.atlas-dest-glyph{width:26px;height:26px;color:#fff;opacity:.95}.atlas-dest-tname{font-size:.92rem;font-weight:700;margin-top:auto}.atlas-dest-tteaser{font-size:.68rem;color:#ffffffd9;line-height:1.25}.atlas-dest-tcount{font-size:.62rem;color:#ffffffb8;margin-top:4px}.dest-serene{background:linear-gradient(155deg,#3fa48a,#163d35)}.dest-large{background:linear-gradient(155deg,#e8b84b,#6f5413)}.dest-echappee{background:linear-gradient(155deg,#c75b9e,#511e3f)}.dest-clair{background:linear-gradient(155deg,#4f7db3,#1c3450)}.dest-desert{background:linear-gradient(155deg,#c2703d,#532c14)}.dest-brume{background:linear-gradient(155deg,#6d5bd0,#27204f)}.atlas-back{background:transparent;border:none;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.74rem;font-weight:600;opacity:.75;padding:2px 2px 6px;margin-bottom:2px}.atlas-back:hover{opacity:1}.atlas-dest-banner{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;margin-bottom:.8rem;border:1px solid rgba(255,255,255,.14);color:#fff}.atlas-dest-banner .atlas-dest-glyph{width:24px;height:24px;flex-shrink:0}.atlas-dest-bmeta{display:flex;flex-direction:column;gap:2px;min-width:0}.atlas-dest-btitle{font-size:.95rem;font-weight:700}.atlas-dest-bteaser{font-size:.68rem;color:#ffffffd9;line-height:1.3}.atlas-types{display:flex;flex-direction:column;gap:9px}.atlas-type{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:9px 10px 10px}.atlas-type-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:7px}.atlas-type-label{font-size:.86rem;font-weight:700}.atlas-type-meta{font-size:.62rem;opacity:.55;white-space:nowrap}.atlas-type-tons{display:flex;flex-wrap:wrap;gap:5px}.atlas-ton{display:inline-flex;align-items:center;gap:3px;min-width:30px;justify-content:center;background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:.74rem;font-weight:700;padding:4px 8px;border-radius:8px;cursor:pointer;transition:border-color .12s,background-color .12s,transform .12s}.atlas-ton:hover{transform:translateY(-1px)}.atlas-ton.official{border-color:#22d3ee80}.atlas-ton.official:hover{border-color:var(--highlight-color)}.atlas-ton.official.loaded{background:var(--highlight-color);color:var(--primary-color)}.atlas-ton-badge{font-size:.62rem;color:#22d3ee}.atlas-ton.official.loaded .atlas-ton-badge{color:var(--primary-color)}.atlas-ton.custom{opacity:.92;border-style:dashed;border-color:color-mix(in srgb,var(--gold-color) 55%,transparent);color:var(--gold-color);cursor:pointer}.atlas-ton.custom:hover{opacity:1;border-color:var(--gold-color);background:color-mix(in srgb,var(--gold-color) 12%,transparent)}.atlas-ton.custom.sel{opacity:1;border-color:var(--gold-color);color:var(--gold-color)}.atlas-goto-tonalites{display:block;width:100%;margin-top:.8rem;padding:10px 12px;background:color-mix(in srgb,var(--gold-color) 8%,transparent);border:1px dashed color-mix(in srgb,var(--gold-color) 55%,transparent);border-radius:10px;color:var(--gold-color);font:inherit;font-size:.82rem;text-align:left;cursor:pointer;line-height:1.4}.atlas-goto-tonalites:hover{border-color:var(--gold-color);background:color-mix(in srgb,var(--gold-color) 14%,transparent)}.atlas-leg{display:inline-flex;align-items:center;font-weight:700}.atlas-leg.official{color:#22d3ee}.atlas-leg.custom{color:var(--gold-color)}.atlas-surmesure{background:color-mix(in srgb,var(--gold-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--gold-color) 45%,transparent);border-radius:12px;padding:10px 12px;margin-bottom:.8rem}.atlas-sm-title{font-size:.82rem;font-weight:700;color:var(--gold-color);margin-bottom:3px}.atlas-sm-text{font-size:.72rem;opacity:.8;line-height:1.4;margin-bottom:8px}.atlas-sm-cta{display:inline-block;font-size:.74rem;font-weight:700;text-decoration:none;color:var(--primary-color);background:var(--gold-color);padding:5px 11px;border-radius:8px}.atlas-sm-cta:hover{filter:brightness(1.08)}.yishama-emblem{display:block;width:1.05em;height:1.05em;border-radius:50%;object-fit:cover;flex-shrink:0}.acoustic-dest-card{position:relative}.yishama-tag{position:absolute;top:4px;right:4px;z-index:2;display:inline-flex;width:20px;height:20px;border-radius:50%;box-shadow:0 0 0 1.5px #ffffffd9,0 1px 4px #0006}.yishama-tag .yishama-emblem{width:20px;height:20px}.atlas-ton-yishama{display:inline-flex;align-items:center}.atlas-ton-yishama .yishama-emblem{width:15px;height:15px}.atlas-toolbar{display:flex;flex-direction:column;gap:7px;margin-bottom:.7rem}.atlas-voyage-search{margin-bottom:.7rem}.atlas-search{width:100%;box-sizing:border-box;font-family:var(--font-family);font-size:.8rem;color:var(--text-color);background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:9px;padding:7px 11px;transition:border-color .15s}.atlas-search::placeholder{color:var(--text-color);opacity:.45}.atlas-search:focus{outline:none;border-color:var(--highlight-color)}.atlas-chips{display:flex;flex-wrap:wrap;gap:5px}.atlas-chipfilter{font-family:var(--font-family);font-size:.7rem;font-weight:600;cursor:pointer;color:var(--text-color);background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:999px;padding:4px 10px;transition:background-color .13s,color .13s,border-color .13s}.atlas-chipfilter:hover{border-color:var(--highlight-color)}.atlas-chipfilter.on{background:var(--highlight-color);color:var(--primary-color);border-color:var(--highlight-color)}.atlas-chipfilter.buyable.on{background:var(--gold-color);color:#1b263b;border-color:var(--gold-color)}.atlas-families{display:flex;flex-direction:column;gap:7px}.atlas-fam{border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;background:#ffffff05}.atlas-fam-head{width:100%;display:flex;align-items:center;gap:8px;cursor:pointer;text-align:left;font-family:var(--font-family);font-size:.86rem;font-weight:700;color:var(--text-color);background:transparent;border:none;padding:9px 11px;transition:background-color .13s}.atlas-fam-head:hover{background:#ffffff0d}.atlas-fam-name{flex:1}.atlas-fam-count{font-size:.66rem;font-weight:700;opacity:.85;min-width:20px;text-align:center;background:var(--secondary-color);border-radius:999px;padding:1px 7px}.atlas-chev{display:inline-block;font-size:.7rem;opacity:.7;transition:transform .15s}.atlas-fam.open>.atlas-fam-head .atlas-chev{transform:rotate(90deg)}.atlas-fam-body{display:flex;flex-direction:column;gap:7px;padding:0 9px 9px}.atlas-fam-body .atlas-type{margin:0}.atlas-type-price{font-size:.7rem;font-weight:700;color:var(--gold-color);white-space:nowrap}.atlas-type-noneoff{font-size:.68rem;opacity:.5;font-style:italic}.atlas-ton-ding{line-height:1}.atlas-ton-price{font-size:.6rem;font-weight:700;color:var(--gold-color);max-width:0;overflow:hidden;opacity:0;transition:max-width .18s,opacity .18s,margin-left .18s}.atlas-ton.official.buyable:hover .atlas-ton-price,.atlas-ton.official.buyable.loaded .atlas-ton-price{max-width:60px;opacity:1;margin-left:2px}.atlas-custom-toggle{margin-top:7px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-family:var(--font-family);font-size:.7rem;font-weight:600;color:var(--text-color);background:transparent;border:none;padding:2px 0;opacity:.78}.atlas-custom-toggle:hover{opacity:1;color:var(--gold-color)}.atlas-custom-toggle.open .atlas-chev{transform:rotate(90deg)}.atlas-custom-sm{opacity:.7;font-weight:500}.atlas-type-tons.custom-tons{margin-top:6px}.atlas-pricesheet{background:color-mix(in srgb,var(--gold-color) 9%,transparent);border:1px solid color-mix(in srgb,var(--gold-color) 40%,transparent);border-radius:12px;padding:10px 12px;margin-bottom:.8rem}.atlas-ps-head{display:flex;align-items:center;gap:9px;margin-bottom:9px}.atlas-ps-emblem{display:inline-flex;width:26px;height:26px;flex-shrink:0}.atlas-ps-emblem .yishama-emblem{width:26px;height:26px;box-shadow:0 0 0 1.5px #ffffffb3}.atlas-ps-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.atlas-ps-name{font-size:.8rem;font-weight:700;line-height:1.2}.atlas-ps-stock{font-size:.64rem;opacity:.6;text-transform:capitalize}.atlas-ps-price{font-size:1rem;font-weight:800;color:var(--gold-color);white-space:nowrap}.atlas-ps-buy{display:block;text-align:center;text-decoration:none;font-family:var(--font-family);font-size:.82rem;font-weight:800;color:#1b263b;background:var(--gold-color);padding:8px 12px;border-radius:9px;transition:filter .13s,transform .13s}.atlas-ps-buy:hover{filter:brightness(1.07);transform:translateY(-1px)}.wip{position:relative;cursor:help}.wip:after{content:"🚧 En cours de développement";position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:var(--primary-color);color:var(--text-color);border:1px solid var(--gold-color);font-family:var(--font-family);font-size:.66rem;font-weight:600;white-space:nowrap;padding:4px 9px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:99999;box-shadow:0 4px 16px #00000073}.wip:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.group-experimental{display:none!important}#mobile-notice{display:none}@media(max-width:640px){body:not(.mobile-noticed) #mobile-notice{display:flex;position:fixed;inset:0;z-index:100000;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 24px;background:var(--primary-color, #1B263B)}body:not(.mobile-noticed){overflow:hidden}}.mobile-notice-card{width:100%;max-width:430px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:14px}.mobile-notice-icon{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--text-color, #E0E1DD)}.mobile-notice-icon .mn-laptop{font-size:2.6rem;line-height:1}.mobile-notice-icon .mn-ipad{width:66px;height:48px;color:var(--text-color, #E0E1DD);opacity:.92}.mobile-notice-title{font-size:1.3rem;font-weight:700;color:var(--text-color, #E0E1DD)}.mobile-notice-text{font-size:.94rem;line-height:1.55;color:var(--text-color, #E0E1DD);opacity:.86}.mobile-notice-text strong{color:var(--gold-color, #FFD700);font-weight:700}.mobile-notice-btn{margin-top:10px;padding:13px 20px;border-radius:12px;cursor:pointer;max-width:100%;border:1px solid var(--current-outline-color, #FFD700);background:var(--secondary-color, #415A77);color:var(--text-color, #E0E1DD);font-family:var(--font-family);font-size:.92rem;font-weight:600;line-height:1.3}.mobile-notice-btn:active{transform:scale(.98)}.mobile-notice-hint{font-size:.76rem;opacity:.55;margin-top:2px}body.app-acoustic .mode-library .chord-modifiers-wrapper,body.app-acoustic .mode-logic .chord-modifiers-wrapper{display:block!important}.completion-funnel{margin-top:.7rem;padding:.7rem .75rem;border-radius:12px;background:#ffffff0d;border:1px solid var(--current-outline-color);font-family:var(--font-family)}.cf-head{font-size:.9rem;font-weight:800;margin-bottom:4px}.cf-intro{font-size:.75rem;opacity:.78;line-height:1.35;margin-bottom:8px}.cf-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:6px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.76rem}.cf-row .cf-mode{font-weight:700;min-width:130px}.cf-row .cf-status{flex:1;opacity:.9}.cf-row.cf-ok .cf-status{color:#3fa48a;opacity:1}.cf-row .cf-deg{opacity:.6}.cf-show{background:var(--highlight-color);color:var(--primary-color);border:none;border-radius:999px;padding:5px 11px;font-size:.74rem;font-weight:700;cursor:pointer;font-family:var(--font-family)}.cf-show:hover{filter:brightness(1.08)}.cf-row.cf-active{background:#ffffff0a;border-radius:8px}.cf-choice{margin-top:9px;padding-top:9px;border-top:1px dashed rgba(255,255,255,.16)}.cf-choice-title{font-size:.75rem;font-weight:700;margin-bottom:7px}.cf-choice-btns{display:flex;flex-direction:column;gap:7px}.cf-buy{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:9px 11px;border-radius:10px;cursor:pointer;color:#fff;border:1px solid rgba(255,255,255,.18);font-family:var(--font-family);font-size:.82rem;font-weight:700;transition:transform .12s,filter .12s}.cf-buy small{font-weight:500;font-size:.7rem;opacity:.85}.cf-buy:hover{transform:translateY(-1px);filter:brightness(1.06)}.cf-buy-aco{background:linear-gradient(135deg,#3fa48a,#2b7d68)}.cf-buy-neo{background:linear-gradient(135deg,#6d5bd0,#4a3ba0)}.acoustic-completion-body{filter:drop-shadow(5px 10px 10px rgba(0,0,0,.5))}.acoustic-completion-note{transition:opacity .2s}.acoustic-completion-note.missing{filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}.acoustic-completion-link{transition:opacity .2s}.cf-allok .cf-head{color:#3fa48a}.cf-modeswitch{display:flex;gap:6px;margin:8px 0}.cf-modebtn{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 4px;border-radius:10px;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:var(--primary-color);font-family:var(--font-family);transition:all .14s}.cf-modebtn.on{background:var(--highlight-color);border-color:var(--highlight-color)}.cf-modebtn.done{opacity:.6}.cf-modebtn-ic{font-size:1rem}.cf-modebtn-lbl{font-weight:700;font-size:.76rem}.cf-modebtn-st{font-size:.64rem;opacity:.8}.cf-modebtn.done .cf-modebtn-st{color:#3fa48a;opacity:1}.cf-missing{font-size:.75rem;margin:6px 0 8px;opacity:.92;line-height:1.35}.cf-missing .cf-deg{opacity:.6}.cf-proptabs{display:flex;gap:5px;margin-bottom:8px}.cf-proptab{flex:1;padding:7px 6px;border-radius:999px;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.16);color:var(--primary-color);font-family:var(--font-family);font-size:.74rem;font-weight:700;transition:all .14s}.cf-proptab.on{background:var(--highlight-color);border-color:var(--highlight-color)}.cf-neomodel{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:10px 0 4px;padding:6px 8px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12)}.cf-neomodel-lbl{font-size:.7rem;opacity:.78;margin-right:2px;font-weight:600}.cf-neomodelbtn{padding:5px 12px;border-radius:999px;cursor:pointer;background:#ffffff0f;border:1px solid rgba(255,255,255,.2);color:var(--primary-color);font-family:var(--font-family);font-size:.72rem;font-weight:700;transition:all .14s}.cf-neomodelbtn:hover{background:#ffffff1f}.cf-neomodelbtn.on{background:var(--highlight-color);border-color:var(--highlight-color);color:#fff}.cf-propbody{margin-bottom:4px}.cf-cand{padding:8px 9px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12)}.cf-cand-neo{background:#6d5bd01a;border-color:#6d5bd059}.cf-cand-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.cf-cand-nm{font-weight:800;font-size:.82rem}.cf-cov{font-size:.66rem;padding:2px 7px;border-radius:999px;background:#ffffff1a}.cf-cov.ok{background:#3fa48a;color:#05130f;font-weight:700}.cf-transp{font-size:.62rem;padding:2px 6px;border-radius:999px;background:#6d5bd04d}.cf-cand-sub{font-size:.71rem;opacity:.78;margin-top:3px;line-height:1.35}.cf-alts{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px}.cf-alts-lbl{font-size:.68rem;opacity:.65;width:100%}.cf-alt{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:5px 8px;border-radius:8px;cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:var(--primary-color);font-family:var(--font-family);transition:all .12s}.cf-alt:hover{background:#ffffff1a}.cf-alt-nm{font-size:.7rem;font-weight:700}.cf-alt-cov{font-size:.62rem;opacity:.7}.cf-empty{font-size:.74rem;opacity:.8;padding:8px 0}.cf-alt-catalog{border-color:#78dcaa73}.cf-origin{margin-top:8px;padding:7px 9px;border-radius:9px;font-size:.7rem;line-height:1.45}.cf-origin-catalog{background:#3fa48a24;border:1px solid rgba(63,164,138,.4)}.cf-origin-custom{background:#e6b43c1f;border:1px solid rgba(230,180,60,.38)}.cf-pick{margin-top:10px;padding:9px 10px;border-radius:10px;background:#ffffff0d;border:1px dashed rgba(255,255,255,.22)}.cf-pick-lbl{font-size:.72rem;font-weight:700;margin-bottom:6px}.cf-pick-sel{width:100%;box-sizing:border-box;padding:6px 8px;border-radius:8px;font-family:var(--font-family);font-size:.74rem;background:var(--bg-color, #10131c);color:var(--text-color);border:1px solid rgba(255,255,255,.2)}.cf-pick-cur{margin-top:6px;font-size:.7rem;opacity:.85}.cf-pick-clear{margin-left:6px;padding:2px 8px;border-radius:999px;cursor:pointer;font-size:.66rem;font-family:var(--font-family);background:#ffffff1a;border:1px solid rgba(255,255,255,.25);color:var(--text-color)}[data-theme=light] .cf-pick{border-color:#0003;background:#00000008}[data-theme=light] .cf-pick-sel{background:#fff;border-color:#0003}[data-theme=light] .cf-pick-clear{background:#0000000d;border-color:#0003}a.cf-buy{text-decoration:none;margin-top:9px;width:100%;box-sizing:border-box}.cf-unlocked{margin-top:10px;padding-top:9px;border-top:1px dashed rgba(255,255,255,.16)}.cf-unlocked-lbl{font-size:.72rem;font-weight:700;margin-bottom:6px;opacity:.9}.cf-degchips{display:flex;flex-wrap:wrap;gap:5px}.cf-degchip{min-width:38px;padding:5px 10px;border-radius:8px;cursor:pointer;background:#ffffff0d;border:2px solid var(--dc, #888);color:var(--primary-color);font-family:var(--font-family);font-weight:800;font-size:.8rem;transition:all .12s}.cf-degchip:hover{background:#ffffff1a}.cf-degchip.on{background:var(--dc, #888);color:#fff}.cf-actions{display:flex;flex-direction:column;gap:7px;margin-top:11px;padding-top:10px;border-top:1px dashed rgba(255,255,255,.16)}[data-theme=light] .cf-actions{border-top-color:#141e302e}.cf-save-duo,.cf-empty-shell{display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-family:var(--font-family);font-weight:800;font-size:.82rem;padding:.6rem .8rem;border-radius:10px;transition:transform .12s,box-shadow .12s,background-color .12s}.cf-save-duo{background:var(--gold-color, #FFD700);color:#1b263b;border:none}.cf-save-duo:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #00000040}.cf-save-duo:disabled{opacity:.7;cursor:default}.cf-save-duo.saved{background:#16a34a;color:#fff}.cf-empty-shell{background:var(--secondary-color);color:var(--text-color);border:1px solid var(--current-outline-color)}.cf-empty-shell:hover{transform:translateY(-1px);border-color:var(--highlight-color)}.logique-modeswitch{display:flex;gap:3px;padding:3px;margin:0 0 .7rem;background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:999px}.logique-modebtn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;background:transparent;border:none;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.78rem;font-weight:600;padding:6px 10px;border-radius:999px;transition:background-color .15s,color .15s}.logique-modebtn:hover:not(.on){background:#ffffff12}.logique-modebtn.on{background:var(--highlight-color);color:var(--primary-color)}.acoustic-grid-modal{position:fixed;inset:0;z-index:4000;display:flex;align-items:center;justify-content:center}.acoustic-grid-modal .agm-backdrop{position:absolute;inset:0;background:#0009;backdrop-filter:blur(2px)}.acoustic-grid-modal .agm-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:min(1100px,94vw);max-height:92vh;background:var(--bg-color);color:var(--text-color);border:1px solid var(--current-outline-color);border-radius:18px;box-shadow:0 24px 70px #00000073;overflow:hidden}.acoustic-grid-modal .agm-head{display:flex;align-items:center;gap:12px;padding:1rem 1.2rem;border-bottom:1px solid var(--secondary-color)}.acoustic-grid-modal .agm-titles{flex:1;min-width:0}.acoustic-grid-modal .agm-title{font-size:1.15rem;font-weight:800}.acoustic-grid-modal .agm-sub{font-size:.8rem;opacity:.65;margin-top:2px}.acoustic-grid-modal .agm-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.acoustic-grid-modal .agm-btn{background:var(--secondary-color);border:1px solid transparent;color:var(--text-color);font-family:var(--font-family);font-size:.82rem;font-weight:600;padding:8px 14px;border-radius:999px;cursor:pointer;transition:border-color .12s,background-color .12s}.acoustic-grid-modal .agm-btn:hover{border-color:var(--highlight-color)}.acoustic-grid-modal .agm-close{padding:8px 12px;font-size:.95rem;line-height:1}.acoustic-grid-modal .agm-body{padding:1.1rem 1.2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.3rem}.acoustic-grid-modal .agm-foot{padding:.6rem 1.2rem;border-top:1px solid var(--secondary-color);font-size:.72rem;opacity:.5;text-align:right}.acoustic-grid-modal .acoustic-grid-chips{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:.7rem}.acoustic-grid-modal .acoustic-chip-svg{width:86px;height:86px}.acoustic-grid-modal .acoustic-chip-name{font-size:.88rem}.acoustic-grid-modal .acoustic-col-head{font-size:.8rem}@media(pointer:coarse){.acoustic-grid-action,.acoustic-grid-modal .agm-btn{min-height:44px}.acoustic-grid-modal .agm-close{min-width:44px}}.acoustic-print-area{display:none}@media print{body.print-chord-grid{background:#fff!important}body.print-chord-grid>*:not(.acoustic-print-area):not(#global-svg-defs){display:none!important}body.print-chord-grid .acoustic-print-area{display:block!important;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}.acoustic-print-inner{padding:4mm 2mm;color:#111!important}.acoustic-print-head{text-align:center;margin:0 0 6mm}.acoustic-print-title{font-size:18pt!important;font-weight:800!important;margin:0;color:#000!important}.acoustic-print-sub{font-size:10.5pt!important;margin-top:1.5mm;color:#222!important}.acoustic-print-grid{display:flex;flex-direction:column;gap:6mm}.acoustic-print-pan-wrap{margin:3mm auto 0;width:78mm;max-width:78mm}.acoustic-print-pan{display:block;width:100%;height:auto}.acoustic-print-pan .ppan-body{fill:#f4f4f4;stroke:#444;stroke-width:5}.acoustic-print-pan .ppan-note{stroke:#333;stroke-width:4}.acoustic-print-pan .ppan-ding{stroke:#111;stroke-width:7}.acoustic-print-pan .ppan-label{fill:#fff;font-weight:800;font-family:var(--font-family, sans-serif);paint-order:stroke;stroke:#000000d9;stroke-width:5px;stroke-linejoin:round}.acoustic-print-area .acoustic-grid-group{break-inside:avoid}.acoustic-print-area .acoustic-col-head{font-size:12pt!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.03em;color:#000!important;opacity:1!important;text-align:left;border-bottom:1.5px solid #444;padding-bottom:1.5mm;margin-bottom:2.5mm}.acoustic-print-area .acoustic-group-count{color:#555!important;font-weight:700}.acoustic-print-area .acoustic-grid-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(24mm,1fr));gap:3mm}.acoustic-print-area .acoustic-chip{display:flex;flex-direction:column;align-items:center;gap:1mm;background:#fff!important;border:1px solid #999;border-radius:3mm;padding:2mm;break-inside:avoid;box-shadow:none!important}.acoustic-print-area .acoustic-chip-svg{width:20mm;height:20mm}.acoustic-print-area .acoustic-chip-svg svg{width:100%!important;height:100%!important}.acoustic-print-area .acoustic-chip-name{font-size:10pt!important;font-weight:800!important;color:#000!important}.acoustic-print-area .acoustic-chip-inv{color:#555!important;font-size:7pt!important}.acoustic-print-area .acoustic-chip-tip{display:none!important}.acoustic-print-area .acoustic-grid-row>.acoustic-grid-group+.acoustic-grid-group{border-left-color:#bbb!important}.acoustic-print-area .acoustic-grid-row{gap:4mm 6mm;break-inside:avoid}.acoustic-print-area .acoustic-parent-block{break-inside:avoid}.acoustic-print-area .acoustic-parent-chips{gap:2mm 3mm}.acoustic-print-area .acoustic-parent-chips .acoustic-chip-svg{width:100%;max-width:18mm;height:auto;aspect-ratio:1 / 1}.acoustic-print-area .mini-handpan-svg .handpan-body{fill:#fff!important;stroke:#666!important;stroke-width:5px!important}.acoustic-print-area .mini-handpan-svg .note-group.ghost-note .note-circle-base{fill:none!important;stroke:#8a8a8a!important;stroke-width:4px!important}.acoustic-print-area .mini-handpan-svg .note-group.active-note .note-circle-base{stroke:#222!important;stroke-width:5px!important}.acoustic-print-area .mini-handpan-svg .note-group.active-note .note-text{fill:#fff!important}.acoustic-print-area .mini-handpan-svg .chord-path{stroke-width:22px!important;stroke-opacity:1!important;filter:none!important}.acoustic-print-foot{margin-top:8mm;padding-top:2mm;border-top:1px solid #bbb;text-align:center;font-size:8.5pt!important;color:#333!important;font-weight:600}}.acoustic-anchor-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin-top:7px}.acoustic-anchor-secondary{display:flex;flex-wrap:wrap;gap:6px}.acoustic-anchor-secondary .acoustic-anchor-change{align-self:auto;margin-top:0}.acoustic-anchor-songs{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:8px 14px;border-radius:999px;cursor:pointer;background:var(--highlight-color);border:1px solid var(--highlight-color);color:var(--primary-color);font-family:var(--font-family);font-size:.82rem;font-weight:800;box-shadow:0 3px 12px #22d3ee59;transition:filter .14s,box-shadow .14s}.acoustic-anchor-songs:hover{filter:brightness(1.12);box-shadow:0 4px 16px #22d3ee80}.acoustic-anchor-songs-count{opacity:.75;font-weight:700;white-space:pre}.acoustic-anchor-tonality{padding:4px 10px;border-radius:999px;cursor:pointer;background:transparent;border:1px solid var(--highlight-color);color:var(--text-color);font-family:var(--font-family);font-size:.72rem;font-weight:700}.acoustic-anchor-tonality:hover{background:var(--highlight-color);color:var(--primary-color)}body.app-acoustic #btn-open-music-library{display:none!important}.completion-gateway{margin-top:.7rem;padding:.7rem .75rem;border-radius:12px;background:#ffffff0d;border:1px solid var(--current-outline-color);font-family:var(--font-family)}.cg-head{font-size:.84rem;font-weight:800;margin-bottom:6px}.cg-allok .cg-head{color:#3fa48a}.cg-sub{font-size:.74rem;opacity:.8;line-height:1.4;margin-bottom:8px}.cg-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}.cg-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:600;background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.cg-pill.ok{color:#3fa48a}.cg-cta{width:100%;padding:8px 12px;border-radius:10px;cursor:pointer;border:none;background:var(--highlight-color);color:var(--primary-color);font-family:var(--font-family);font-size:.8rem;font-weight:800}.cg-cta:hover{filter:brightness(1.08)}.cg-teaser{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;padding-top:7px;border-top:1px dashed var(--current-outline-color)}.cg-teaser-t{flex:1 1 180px;font-size:.73rem;line-height:1.35;opacity:.9}.cg-teaser-btn{flex:0 0 auto;padding:5px 11px;border-radius:999px;cursor:pointer;background:transparent;border:1px solid var(--highlight-color);color:var(--text-color);font-family:var(--font-family);font-size:.72rem;font-weight:800;white-space:nowrap}.cg-teaser-btn:hover{background:var(--highlight-color);color:var(--primary-color)}.cf-degbreak{margin:8px 0;padding:8px 9px;border-radius:9px;background:#ffffff0b}.cf-degbreak-lbl{font-size:.72rem;font-weight:700;opacity:.9;margin-bottom:5px}.cf-degrows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.cf-degrow{display:flex;align-items:baseline;gap:7px;font-size:.74rem;line-height:1.35}.cf-degrow-rom{flex-shrink:0;min-width:26px;text-align:center;padding:1px 5px;border-radius:6px;font-weight:800;font-size:.72rem;color:#fff;background:var(--dc, #888)}.cf-degrow-chord{opacity:.7}.tonality-wheel{margin-top:.6rem;padding:.7rem .75rem;border-radius:12px;background:#ffffff0d;border:1px solid var(--current-outline-color);font-family:var(--font-family)}.tw-head{display:flex;align-items:center;justify-content:space-between;font-size:.84rem;font-weight:800}.tw-close{background:none;border:none;color:var(--text-color);cursor:pointer;font-size:.9rem;opacity:.6}.tw-close:hover{opacity:1}.tw-intro{font-size:.72rem;opacity:.78;line-height:1.4;margin:5px 0 9px}.tw-wheel{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:9px}.tw-key{padding:7px 0;border-radius:8px;cursor:pointer;color:var(--text-color);background:#ffffff0f;border:1.5px solid transparent;font-family:var(--font-family);font-size:.74rem;font-weight:700}.tw-key:hover{border-color:var(--twc)}.tw-key.orig{box-shadow:inset 0 0 0 1px #ffffff59}.tw-key.on{background:var(--twc);color:#fff;border-color:var(--twc)}.tw-hint{font-size:.72rem;opacity:.75;line-height:1.4}.tw-trans{margin-bottom:7px}.tw-trans-title{font-size:.78rem;font-weight:700}.tw-trans-notes{font-size:.72rem;opacity:.82;margin-top:3px;line-height:1.4}.tw-feas{font-size:.73rem;line-height:1.4;padding:7px 9px;border-radius:8px;margin-bottom:7px}.tw-feas-warn{background:#e6a03c24;border:1px solid rgba(230,160,60,.4)}.tw-feas-ok{background:#3fa48a24;border:1px solid rgba(63,164,138,.4)}.tw-closest{margin-bottom:8px}.tw-closest-lbl{font-size:.7rem;font-weight:700;opacity:.8;margin-bottom:4px}.tw-closest-row{display:flex;align-items:center;gap:6px;font-size:.75rem;flex-wrap:wrap}.tw-closest-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.tw-closest-name{font-weight:700}.tw-closest-cov{font-size:.68rem;opacity:.65}.tw-closest-actions{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.tw-btn{padding:5px 10px;border-radius:8px;cursor:pointer;color:var(--text-color);background:#ffffff14;border:1px solid rgba(255,255,255,.16);font-family:var(--font-family);font-size:.72rem;font-weight:700}.tw-btn:hover{filter:brightness(1.1)}.tw-btn-load{background:var(--highlight-color);color:var(--primary-color);border-color:transparent}.tw-revert{width:100%;margin-top:4px;padding:7px 11px;border-radius:9px;cursor:pointer;background:transparent;border:1px solid var(--highlight-color);color:var(--text-color);font-family:var(--font-family);font-size:.74rem;font-weight:700}.tw-revert:hover{background:var(--highlight-color);color:var(--primary-color)}.hybrid-banner{margin:0 auto .6rem;max-width:760px;width:100%;border-radius:14px;padding:0;overflow:hidden;font-family:var(--font-family);color:var(--text-color);background:linear-gradient(180deg,#6d5bd024,#3fa48a1a),#ffffff0a;border:1px solid rgba(255,255,255,.14);box-shadow:0 6px 22px #00000047,inset 0 1px #ffffff14;animation:hb-in .35s ease both}@keyframes hb-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.hb-strip{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:9px 13px;background:linear-gradient(90deg,#6d5bd04d,#3fa48a38);border-bottom:1px solid rgba(255,255,255,.12)}.hb-emoji{font-size:1.15rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.hb-title{font-size:.9rem;font-weight:700;letter-spacing:.2px}.hb-title strong{font-weight:800}.hb-plus{opacity:.7;margin:0 2px}.hb-help{width:20px;height:20px;border-radius:50%;flex:none;cursor:pointer;border:1px solid rgba(255,255,255,.4);background:#ffffff1a;color:var(--text-color);font-weight:800;font-size:.74rem;line-height:1}.hb-help:hover{background:#fff3}.hb-mode{margin-left:auto;font-size:.76rem;font-weight:700;opacity:.85;white-space:nowrap}.hb-help-tip{padding:8px 14px;font-size:.78rem;font-style:italic;opacity:.9;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.08)}.hybrid-banner{max-width:980px;margin-bottom:.4rem}.hb-strip{row-gap:4px;gap:7px;padding:5px 10px}.hb-title{font-size:.8rem;min-width:0;flex:1 1 220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-count-inline{font-size:.7rem;opacity:.9;white-space:normal;padding:2px 8px;border-radius:999px;background:#ffffff12}.hb-count-inline b{font-weight:800}.hb-count-inline .hb-count-union{color:#ffd98a}.hb-swap,.hb-toatelier,.hb-fold{font-family:var(--font-family);cursor:pointer;white-space:nowrap;font-size:.7rem;font-weight:700;padding:3px 9px;border-radius:999px;color:var(--text-color);border:1px solid rgba(255,255,255,.28);background:#ffffff14}.hb-swap:hover,.hb-toatelier:hover,.hb-fold:hover{background:#ffffff2e}.hb-toatelier{border-color:#f0c46a8c;color:#ffd98a}.hb-fold{width:26px;padding:3px 0;text-align:center}.hb-mode{margin-left:0}.hb-degline{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:4px 10px;border-bottom:1px solid rgba(255,255,255,.07)}.hb-degline-lbl{font-size:.7rem;font-weight:800;opacity:.85;white-space:nowrap}.hb-degline .hb-deg{padding:3px 8px;font-size:.72rem;min-width:30px}.hb-degline-note{font-size:.66rem;opacity:.78}.hb-fing-line{display:flex;align-items:center;flex-wrap:nowrap;gap:5px;padding:3px 10px;min-height:30px;max-height:30px;font-size:.71rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.hb-fing-line>*{flex:0 0 auto}.hb-fing-idle{opacity:.7;font-style:italic}.hb-fing-line .hb-step small{font-size:.62rem}.hb-more{padding:8px 12px 11px;border-top:1px solid rgba(255,255,255,.08)}.hb-more[hidden]{display:none}.hb-more-note{font-size:.72rem;opacity:.82;line-height:1.45}.hb-deep-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:7px}.hb-deep-lbl{font-size:.72rem;font-weight:800;color:#46b3ff}[data-theme=light] .hb-count-inline{background:#0000000d}[data-theme=light] .hb-count-inline .hb-count-union{color:#a8761a}[data-theme=light] .hb-toatelier{color:#a8761a;border-color:#a8761a80}@media(max-width:767px){.hybrid-banner{margin-bottom:.3rem}.hb-strip{padding:4px 8px;gap:5px}.hb-title{font-size:.74rem;flex:1 1 100%}.hb-count-inline{white-space:normal;font-size:.66rem;padding:1px 6px}.hb-mode{font-size:.68rem}.hb-degline{padding:3px 8px}.hb-degline-lbl,.hb-degline-note{display:none}.hb-fing-line{padding:2px 8px;font-size:.66rem;min-height:26px;max-height:26px}}.hb-cards{display:flex;flex-direction:column;gap:8px;padding:11px 13px 13px}.hb-card{border-radius:11px;padding:9px 11px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.hb-card-lbl{font-size:.78rem;font-weight:800;margin-bottom:7px}.hb-card-lbl small{font-weight:500;opacity:.7}.hb-card-note{font-size:.72rem;opacity:.82;line-height:1.4;margin-top:6px}.hb-empty{opacity:.5}.hb-degs{display:flex;flex-wrap:wrap;gap:5px}.hb-deg{position:relative;min-width:34px;padding:5px 9px;border-radius:999px;cursor:pointer;font-weight:800;font-size:.76rem;color:var(--text-color);background:#ffffff0d;border:2px solid var(--dc, #888);font-family:var(--font-family);transition:transform .12s,background .12s}.hb-deg:hover{transform:translateY(-1px);background:#ffffff1f}.hb-deg.on{background:var(--dc, #888);color:#fff}.hb-deg.unlocked{box-shadow:0 0 0 2px #ffffff2e,0 0 10px -2px var(--dc, #888)}.hb-deg-lock{font-size:.62rem;margin-right:2px}.hb-deep .hb-card-lbl{color:#46b3ff}.hb-deepnotes{display:flex;flex-wrap:wrap;gap:5px}.hb-deepnote{padding:5px 11px;border-radius:999px;cursor:pointer;font-weight:700;font-size:.76rem;color:#fff;border:none;font-family:var(--font-family);background:linear-gradient(135deg,#2f7fb8,#1c5a86);transition:transform .12s,filter .12s}.hb-deepnote:hover{transform:translateY(-1px);filter:brightness(1.1)}.hb-fing-detail{margin-top:8px;padding:7px 9px;border-radius:9px;font-size:.73rem;line-height:1.5;background:#ffffff0d;border:1px dashed rgba(255,255,255,.18)}.hb-hand{display:inline-block;margin-right:10px}.hb-hand.hb-left strong{color:var(--hand-color-left)}.hb-hand.hb-right strong{color:var(--hand-color-right)}.hb-fing-detail{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.hb-fing-deg{font-weight:800;margin-right:4px;opacity:.85}.hb-step{display:inline-flex;align-items:center;gap:6px;padding:4px 9px 4px 4px;border-radius:999px;background:#ffffff0f;border:1px solid var(--hc, rgba(255,255,255,.2))}.hb-step.hb-left{--hc: var(--hand-color-left)}.hb-step.hb-right{--hc: var(--hand-color-right)}.hb-step-n{width:18px;height:18px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--hc);font-weight:800;font-size:.66rem}.hb-step strong{color:var(--hc);font-weight:800}.hb-step small{opacity:.7;font-size:.66rem}.hb-step-arrow{opacity:.45;font-weight:700}.hb-stepplay{flex:none;width:22px;height:22px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;line-height:1;cursor:pointer;color:var(--text-color);font-family:var(--font-family);background:#ffffff14;border:1px solid rgba(255,255,255,.22);transition:background .15s,transform .12s,border-color .15s}.hb-stepplay:hover{background:#fff3;transform:scale(1.08)}.hb-stepplay.on{background:#e0b341;border-color:#e0b341;color:#1a1408}[data-theme=light] .hb-stepplay{background:#0000000f;border-color:#0003}[data-theme=light] .hb-stepplay:hover{background:#00000024}.hb-step.is-now{background:var(--hc, rgba(255,255,255,.2));border-color:var(--hc, rgba(255,255,255,.4));box-shadow:0 0 12px -2px var(--hc, rgba(255,255,255,.5))}.hb-step.is-now strong{color:#fff}.hb-step.is-now small{color:#fff;opacity:.9}.hb-step.is-now .hb-step-n{background:#fff;color:var(--hc)}.hb-step.is-done{opacity:.45}@media(prefers-reduced-motion:reduce){.hb-stepplay{transition:none}.hb-step.is-now{box-shadow:none}}.hb-count{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.hb-count-cell{flex:1 1 130px;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 10px;border-radius:10px;text-align:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);font-size:.72rem;font-weight:700}.hb-count-cell strong{font-size:1.5rem;font-weight:800;line-height:1}.hb-count-cell small{opacity:.72;font-weight:500;font-size:.66rem}.hb-count-union{background:linear-gradient(135deg,#6d5bd047,#3fa48a38);border-color:#ffffff47}.hb-fam{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:7px}.hb-fam-lbl{font-size:.7rem;font-weight:700;opacity:.78;min-width:132px}.hb-fam-together .hb-fam-lbl{opacity:1;color:#f0c46a}[data-theme=light] .hb-count-cell{background:#0000000a;border-color:#0000001a}[data-theme=light] .hb-fam-together .hb-fam-lbl{color:#a8761a}.hb-swap{flex:none;cursor:pointer;padding:3px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff14;color:var(--text-color);font-family:var(--font-family);font-weight:700;font-size:.7rem;white-space:nowrap}.hb-swap:hover{background:#ffffff2e}[data-theme=light] .hb-swap{border-color:#00000038;background:#0000000d}[data-theme=light] .hb-swap:hover{background:#0000001a}[data-theme=light] .hb-step{background:#0000000a}[data-theme=light] .hybrid-banner{background:linear-gradient(180deg,#6d5bd01f,#3fa48a1a),#fff;border-color:#0000001a;box-shadow:0 6px 20px #0000001f}[data-theme=light] .hb-strip{border-bottom-color:#00000014}[data-theme=light] .hb-help{border-color:#00000040;background:#0000000d}[data-theme=light] .hb-help:hover{background:#0000001a}[data-theme=light] .hb-help-tip{background:#00000008;border-bottom-color:#0000000f}[data-theme=light] .hb-card{background:#00000008;border-color:#00000014}[data-theme=light] .hb-deg{background:#00000008}[data-theme=light] .hb-deg:hover{background:#00000012}[data-theme=light] .hb-fing-detail{background:#00000008;border-color:#00000026}.rep-section{margin-top:10px;padding-top:9px;border-top:1px dashed rgba(255,255,255,.16)}.hb-rep .rep-section{margin-top:0;padding-top:0;border-top:0}.rep-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:10px;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);color:inherit;font:inherit;font-weight:700;font-size:.78rem;text-align:left}.rep-toggle:hover{background:#ffffff17}.rep-toggle-ic{font-size:.95rem}.rep-toggle-txt{flex:1}.rep-chevron{opacity:.7;transition:transform .18s ease}.rep-section.open .rep-chevron{transform:rotate(180deg)}.rep-body{display:none;padding:9px 2px 2px}.rep-section.open .rep-body{display:block}.rep-hook{font-size:.76rem;line-height:1.45;opacity:.92;margin-bottom:9px}.rep-group{margin-bottom:10px}.rep-group-lbl{font-size:.73rem;font-weight:800;margin-bottom:5px}.rep-group-lbl small{font-weight:500;opacity:.65}.rep-star{padding:8px 9px;border-radius:10px;background:linear-gradient(135deg,#6d5bd02e,#d946ef1f);border:1px solid rgba(129,140,248,.35)}.rep-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.rep-list.rep-muted{opacity:.72}.rep-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:.76rem;line-height:1.35}.rep-song{flex:1 1 auto;min-width:0}.rep-artist{opacity:.7;font-weight:400}.rep-open{flex:0 0 auto;padding:2px 8px;border-radius:999px;cursor:pointer;background:#818cf829;border:1px solid rgba(129,140,248,.4);color:inherit;font:inherit;font-size:.68rem;font-weight:600;white-space:nowrap}.rep-open:hover{background:#818cf84d}.rep-indic{flex:0 0 auto;font-size:.66rem;opacity:.55;font-style:italic;white-space:nowrap}.rep-need{flex:0 0 auto;font-size:.66rem;opacity:.7;white-space:nowrap}.rep-argu{margin-top:8px;font-size:.72rem;line-height:1.45;opacity:.82;padding:7px 9px;border-radius:9px;background:#ffffff0a}[data-theme=light] .rep-toggle{background:#0000000a;border-color:#0000001a}[data-theme=light] .rep-toggle:hover{background:#00000014}[data-theme=light] .rep-star{border-color:#6d5bd04d;background:linear-gradient(135deg,#6d5bd01a,#d946ef12)}[data-theme=light] .rep-open{background:#6d5bd01f;border-color:#6d5bd066}[data-theme=light] .rep-open:hover{background:#6d5bd03d}[data-theme=light] .rep-argu{background:#00000008}.acoustic-repertoire-card[hidden]{display:none}.rep-teaser{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:12px;background:#ffffff0d;border:1px solid var(--current-outline-color);font-family:var(--font-family);font-size:.76rem;line-height:1.35}.rep-teaser-txt{flex:1;min-width:0}.rep-teaser-txt strong{color:var(--highlight-color)}.rep-teaser-go{flex-shrink:0;padding:3px 10px;border-radius:999px;cursor:pointer;background:transparent;border:1px solid var(--highlight-color);color:var(--text-color);font-family:var(--font-family);font-size:.68rem;font-weight:700;transition:background-color .14s,color .14s}.rep-teaser-go:hover{background:var(--highlight-color);color:var(--primary-color)}[data-theme=light] .rep-teaser{background:#0000000a}.rep-card{margin:0 0 .8rem;padding:10px;border-radius:14px;background:color-mix(in srgb,var(--highlight-color) 6%,transparent);border:1px solid var(--current-outline-color)}.rep-card-head{font-size:.82rem;font-weight:800;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.rep-card-ic{font-size:.95rem}.rep-card-sub{font-size:.68rem;font-weight:500;opacity:.62}.rep-card-hook{margin:6px 0 8px;font-size:.78rem;line-height:1.45;opacity:.95}.rep-list.rep-preview{margin-bottom:8px}.rep-hint{font-size:.72rem;line-height:1.4;opacity:.8;padding:6px 8px;border-radius:9px;background:#ffffff0d}.rep-full{margin-top:4px}.rep-card-more{margin-top:8px;width:100%;padding:5px 8px;border-radius:9px;cursor:pointer;font:inherit;font-size:.72rem;font-weight:700;color:inherit;background:#ffffff0f;border:1px solid rgba(255,255,255,.14)}.rep-card-more:hover{background:#ffffff1c}.rep-tag{flex:0 0 auto;font-size:.62rem;font-weight:700;white-space:nowrap;padding:1px 5px;border-radius:6px;opacity:.85;background:#ffffff14;border:1px solid rgba(255,255,255,.14)}.rep-tag.rep-transp{background:#818cf82e;border-color:#818cf859}.rep-tag.rep-wide{opacity:.6}[data-theme=light] .rep-hint,[data-theme=light] .rep-card-more{background:#0000000a;border-color:#0000001a}[data-theme=light] .rep-card-more:hover{background:#00000014}[data-theme=light] .rep-tag{background:#0000000d;border-color:#0000001f}[data-theme=light] .rep-tag.rep-transp{background:#6d5bd024;border-color:#6d5bd059}.acoustic-degree-view[hidden]{display:none}.degree-view{margin:0 0 .8rem;padding:10px;border-radius:14px;background:color-mix(in srgb,var(--highlight-color) 6%,transparent);border:1px solid var(--current-outline-color)}.dv-head{font-weight:800;font-size:.86rem;display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.dv-head-sub{font-weight:500;font-size:.68rem;opacity:.65}.dv-modeswitch{display:flex;gap:4px;margin-bottom:8px}.dv-modebtn{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 3px;border-radius:10px;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:var(--text-color);font-family:var(--font-family);transition:all .14s}.dv-modebtn:hover:not(.on){background:#ffffff1a}.dv-modebtn.on{background:var(--highlight-color);border-color:var(--highlight-color);color:var(--primary-color)}.dv-modebtn-ic{font-size:.9rem;line-height:1}.dv-modebtn-lbl{font-weight:700;font-size:.64rem;text-align:center;line-height:1.1;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dv-modebtn-st{font-size:.6rem;opacity:.8;font-weight:700}.dv-modebtn.full .dv-modebtn-st{color:#3fa48a;opacity:1}.dv-modebtn.on.full .dv-modebtn-st{color:inherit}.dv-verdict{font-size:.74rem;line-height:1.35;margin-bottom:8px;opacity:.92}.dv-verdict.ok{color:#3fa48a;opacity:1}.dv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:5px}.dv-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 3px;border-radius:12px;cursor:pointer;text-align:center;background:#ffffff0a;border:1px solid color-mix(in srgb,var(--dc, #888) 45%,transparent);color:var(--text-color);font-family:var(--font-family);transition:all .14s}.dv-card:hover{background:color-mix(in srgb,var(--dc, #888) 16%,transparent)}.dv-card.on{background:color-mix(in srgb,var(--dc, #888) 26%,transparent);border-color:var(--dc, #888);box-shadow:0 0 0 2px color-mix(in srgb,var(--dc, #888) 40%,transparent)}.dv-card.off{opacity:.5;cursor:default;border-style:dashed}.dv-card.off:hover{background:#ffffff0a}.dv-diag{width:52px;height:52px;display:block}.dv-diag .mini-pan-svg{width:100%;height:100%;display:block}.dv-meta{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;width:100%}.dv-rom{font-weight:800;font-size:.72rem;line-height:1;color:var(--dc, #888)}.dv-name{font-weight:700;font-size:.74rem;line-height:1.1}.dv-sub{font-size:.56rem;opacity:.75;line-height:1.2;word-break:break-word;min-width:0;width:100%}.dv-notes{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dv-card.on .dv-notes{white-space:normal;overflow:visible}.dv-missing{color:#e0824c}.dv-flag{font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:0 4px;border-radius:999px;margin-top:1px;background:color-mix(in srgb,var(--gold-color, #FFD700) 22%,transparent);border:1px solid color-mix(in srgb,var(--gold-color, #FFD700) 45%,transparent)}.mini-pan-off{opacity:.2}.mini-pan-hi{stroke:#fff;stroke-width:9}.logique-modeswitch.three .logique-modebtn{font-size:.7rem;padding:6px 4px;gap:3px}.cf-modeswitch.three .cf-modebtn-lbl{font-size:.66rem}.cf-modeswitch.three .cf-modebtn-st{font-size:.58rem}.dv-flag.warn{background:color-mix(in srgb,#E0824C 20%,transparent);border-color:color-mix(in srgb,#E0824C 45%,transparent)}.chord-slot-inv{align-self:center;max-width:100%;font-size:.56rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1.25;padding:0 5px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help;color:var(--text-color);opacity:.9;background:color-mix(in srgb,#E0824C 20%,transparent);border:1px solid color-mix(in srgb,#E0824C 45%,transparent)}body:not(.app-acoustic) .chord-slot-inv{display:none}.dv-modeswitch.cols-4,.cf-modeswitch.cols-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.logique-modeswitch.cols-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:14px}.logique-modeswitch.cols-4 .logique-modebtn{border-radius:11px}.acreate-overlay{position:fixed;inset:0;z-index:100050;display:flex;align-items:center;justify-content:center;background:#080e1ab8;backdrop-filter:blur(3px);padding:24px}.acreate-modal{width:100%;max-width:440px;box-sizing:border-box;background:var(--primary-color, #1B263B);border:2px solid var(--current-outline-color, var(--gold-color, #FFD700));border-radius:18px;padding:1.4rem 1.5rem 1.5rem;color:var(--text-color, #E0E1DD);box-shadow:0 18px 50px #0000008c}.acreate-modal-title{font-size:1.15rem;font-weight:800;margin-bottom:.5rem}.acreate-modal-text{font-size:.9rem;line-height:1.5;opacity:.85;margin-bottom:1.1rem}.acreate-modal-text strong{color:var(--highlight-color)}.acreate-modal-actions{display:flex;flex-direction:column;gap:.6rem}.acreate-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;box-sizing:border-box;cursor:pointer;font-family:var(--font-family);font-size:.92rem;font-weight:700;padding:.8rem 1rem;border-radius:12px;transition:filter .13s,transform .13s,border-color .13s}.acreate-btn-primary{border:none;color:#1b263b;background:var(--gold-color, #FFD700)}.acreate-btn-primary:hover{filter:brightness(1.07);transform:translateY(-1px)}.acreate-btn-ghost{border:1px solid var(--current-outline-color, var(--gold-color, #FFD700));background:var(--secondary-color, #415A77);color:var(--text-color, #E0E1DD)}.acreate-btn-ghost:hover{border-color:var(--highlight-color);transform:translateY(-1px)}.acreate-modal-cancel{display:block;margin:.9rem auto 0;background:transparent;border:none;cursor:pointer;font-family:var(--font-family);font-size:.78rem;font-weight:600;opacity:.6;color:var(--text-color, #E0E1DD)}.acreate-modal-cancel:hover{opacity:1}#acoustic-creation{display:none}body.app-acoustic.acoustic-creating #acoustic-creation{display:block}body.app-acoustic.acoustic-creating #acoustic-panel>.acoustic-section,body.app-acoustic.acoustic-creating #acoustic-panel>.acoustic-buy,body.app-acoustic.acoustic-creating #acoustic-panel>.acoustic-upsell{display:none!important}.acreate-panel-head{display:flex;align-items:baseline;gap:8px;margin-bottom:.6rem}.acreate-panel-title{font-size:1.05rem;font-weight:800}.acreate-exit{margin-left:auto;background:transparent;border:none;cursor:pointer;font-family:var(--font-family);font-size:.74rem;font-weight:700;opacity:.7;color:var(--text-color)}.acreate-exit:hover{opacity:1;color:var(--highlight-color)}.acreate-sub{font-size:.8rem;opacity:.72;line-height:1.4;margin-bottom:.9rem}.acreate-step{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--gold-color, #FFD700);opacity:.9;margin-bottom:.5rem}.acreate-back{background:transparent;border:none;cursor:pointer;color:var(--text-color);font-family:var(--font-family);font-size:.66rem;font-weight:700;opacity:.7;text-transform:none;letter-spacing:0}.acreate-back:hover{opacity:1;color:var(--highlight-color)}.acreate-shell-none .acreate-shell-thumb{opacity:.4}.acreate-shells{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:9px}.acreate-presets-lbl{font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;opacity:.55;margin:.7rem 0 .4rem}.acreate-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.acreate-preset{display:flex;align-items:center;gap:9px;cursor:pointer;text-align:left;background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:12px;padding:7px 9px;color:var(--text-color);font-family:var(--font-family);transition:border-color .14s,transform .14s,box-shadow .14s}.acreate-preset:hover{border-color:var(--gold-color, #FFD700);transform:translateY(-2px);box-shadow:0 4px 14px #00000040}.acreate-preset-thumb{flex:0 0 auto;width:52px;height:52px;display:block}.acreate-preset-thumb .mini-pan-svg{width:100%;height:100%;display:block}.acreate-preset-lbl{display:flex;flex-direction:column;min-width:0}.acreate-preset-lbl strong{font-size:.82rem;font-weight:800}.acreate-preset-lbl span{font-size:.6rem;opacity:.65;line-height:1.25}.acreate-shell{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;background:var(--secondary-color);border:1px solid transparent;border-radius:12px;padding:9px 7px 8px;color:var(--text-color);font-family:var(--font-family);text-align:center;transition:border-color .14s,transform .14s,box-shadow .14s}.acreate-shell:hover{border-color:var(--highlight-color);transform:translateY(-2px);box-shadow:0 4px 14px #00000040}.acreate-shell-thumb{width:84px;height:84px;display:block}.acreate-shell-thumb .mini-pan-svg{width:100%;height:100%;display:block}.acreate-shell-name{font-size:.78rem;font-weight:800}.acreate-shell-meta{font-size:.62rem;opacity:.6;line-height:1.2}.acreate-editor{display:flex;flex-direction:column;gap:.8rem}.acreate-instr{font-size:.8rem;line-height:1.4;opacity:.85;padding:.55rem .7rem;border-radius:10px;background:#22d3ee0d;border:1px solid #3a6a52}.acreate-instr strong{color:var(--highlight-color)}.acreate-typerow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:.6rem 0 .2rem;padding:.5rem .7rem;border-radius:10px;background:#ffffff08;border:1px solid var(--current-outline-color)}.acreate-typelabel{font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.6}.acreate-typebtns{display:flex;gap:6px;margin-left:auto}.acreate-typebtn{cursor:pointer;font-family:var(--font-family);font-size:.74rem;font-weight:700;padding:5px 11px;border-radius:999px;border:1px solid transparent;background:var(--secondary-color);color:var(--text-color);transition:border-color .12s,background-color .12s,color .12s,transform .12s}.acreate-typebtn:hover:not(.on){border-color:var(--highlight-color);transform:translateY(-1px)}.acreate-typebtn.on{background:var(--gold-color, #FFD700);color:#1b263b}.acreate-save-handpan{display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-family:var(--font-family);font-size:.84rem;font-weight:800;padding:.65rem .9rem;border-radius:10px;border:none;color:#1b263b;background:var(--gold-color, #FFD700);transition:filter .12s,transform .12s}.acreate-save-handpan:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)}.acreate-save-handpan:disabled{cursor:not-allowed}.acreate-save-handpan.saved{background:var(--secondary-color);color:var(--highlight-color);border:1px solid var(--highlight-color)}.acreate-slots{display:flex;flex-direction:column;gap:5px;max-height:230px;overflow-y:auto;padding-right:3px}.acreate-slot{display:flex;align-items:center;gap:9px;cursor:pointer;background:var(--secondary-color);border:1px solid transparent;border-radius:10px;padding:6px 9px;color:var(--text-color);font-family:var(--font-family);width:100%;transition:border-color .12s}.acreate-slot:hover{border-color:var(--highlight-color)}.acreate-slot.sel{border-color:var(--highlight-color);box-shadow:0 0 0 1px var(--highlight-color) inset}.acreate-slot-dot{flex-shrink:0;width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 1px #ffffff40}.acreate-slot-dot.empty{background:transparent;box-shadow:0 0 0 1.5px #ffffff40 inset}.acreate-slot-pos{font-size:.68rem;font-weight:700;opacity:.55;min-width:58px}.acreate-slot-note{font-size:.86rem;font-weight:700;flex:1}.acreate-slot-note.empty{opacity:.45;font-weight:600;font-style:italic}.acreate-slot .acreate-slot-play{background:transparent;border:none;cursor:pointer;color:var(--text-color);font-size:.9rem;opacity:.7;padding:2px 4px}.acreate-slot .acreate-slot-play:hover{opacity:1}.acreate-picker{border:1px solid var(--current-outline-color);border-radius:12px;padding:.7rem .8rem;background:#ffffff05}.acreate-picker-head{display:flex;align-items:baseline;gap:8px;margin-bottom:.55rem}.acreate-picker-title{font-size:.82rem;font-weight:800}.acreate-picker-for{font-size:.7rem;opacity:.6}.acreate-keys{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.acreate-key{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;border:1px solid transparent;border-radius:9px;padding:6px 3px 5px;background:var(--secondary-color);color:var(--text-color);font-family:var(--font-family);transition:transform .1s,border-color .1s}.acreate-key:hover{transform:translateY(-1px);border-color:#fff6}.acreate-key.on{border-color:#fff;box-shadow:0 0 0 1px #fff inset}.acreate-key-swatch{width:22px;height:22px;border-radius:50%;box-shadow:0 0 0 1px #0000004d}.acreate-key-name{font-size:.66rem;font-weight:800}.acreate-summary{display:flex;flex-direction:column;gap:.7rem}.acreate-namerow{display:flex;flex-direction:column;gap:4px}.acreate-namelabel{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.6}.acreate-name-input{width:100%;box-sizing:border-box;font-family:var(--font-family);font-size:.9rem;font-weight:700;color:var(--text-color);background:var(--secondary-color);border:1px solid var(--current-outline-color);border-radius:9px;padding:7px 11px}.acreate-name-input:focus{outline:none;border-color:var(--highlight-color)}.acreate-recap{font-size:.8rem;line-height:1.5}.acreate-recap-line{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}.acreate-recap-key{font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.55;min-width:66px}.acreate-recap-notes{display:flex;flex-wrap:wrap;gap:4px}.acreate-recap-chip{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--secondary-color)}.acreate-recap-chip .acreate-slot-dot{width:11px;height:11px}.acreate-recap-empty{font-size:.78rem;opacity:.6;font-style:italic}.acreate-actions{display:flex;flex-direction:column;gap:.55rem;margin-top:.3rem}.acreate-play-all{display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-family:var(--font-family);font-size:.82rem;font-weight:700;padding:.6rem .9rem;border-radius:10px;border:1px solid var(--current-outline-color);background:var(--secondary-color);color:var(--text-color);transition:border-color .12s,transform .12s}.acreate-play-all:hover{border-color:var(--highlight-color);transform:translateY(-1px)}.acreate-surmesure{background:color-mix(in srgb,var(--gold-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--gold-color) 45%,transparent);border-radius:12px;padding:.8rem .9rem}.acreate-sm-title{font-size:.84rem;font-weight:800;color:var(--gold-color);margin-bottom:4px}.acreate-sm-text{font-size:.74rem;opacity:.85;line-height:1.45;margin-bottom:.7rem}.acreate-cta{display:block;text-align:center;text-decoration:none;font-family:var(--font-family);font-size:.84rem;font-weight:800;color:#1b263b;background:var(--gold-color);padding:.7rem 1rem;border-radius:10px;transition:filter .12s,transform .12s}.acreate-cta:hover{filter:brightness(1.07);transform:translateY(-1px)}.acreate-copy{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;box-sizing:border-box;margin-top:.55rem;cursor:pointer;font-family:var(--font-family);font-size:.8rem;font-weight:700;padding:.6rem .9rem;border-radius:10px;border:1px solid var(--current-outline-color);background:var(--secondary-color);color:var(--text-color);transition:border-color .12s,transform .12s}.acreate-copy:hover{border-color:var(--highlight-color);transform:translateY(-1px)}.acreate-copy.copied{border-color:var(--highlight-color);color:var(--highlight-color)}.acreate-shellbar{display:flex;flex-direction:column;gap:6px;border:1px solid var(--current-outline-color);border-radius:12px;padding:.55rem .7rem;margin-bottom:.7rem;background:#ffffff05}.acreate-shellbar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.acreate-shellbar-label{font-size:.76rem;opacity:.85}.acreate-shellbar-label strong{color:var(--highlight-color)}.acreate-shellchange{margin-left:auto;cursor:pointer;font-family:var(--font-family);font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--current-outline-color);background:var(--secondary-color);color:var(--text-color);transition:border-color .12s,transform .12s}.acreate-shellchange:hover{border-color:var(--highlight-color);transform:translateY(-1px)}.acreate-shellbar-sub{font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;opacity:.55}.acreate-botchips{display:flex;gap:4px;flex-wrap:wrap}.acreate-botpick{cursor:pointer;font-family:var(--font-family);font-size:.72rem;font-weight:700;min-width:30px;height:26px;padding:0 9px;border-radius:8px;border:1px solid transparent;background:var(--secondary-color);color:var(--text-color);transition:border-color .12s}.acreate-botpick:hover:not(.on){border-color:var(--highlight-color)}.acreate-botpick.on{background:var(--highlight-color);color:var(--primary-color)}body.app-acoustic.acoustic-creating.acoustic-duo #note-palette .sp-octaves-arc{display:block}body.app-acoustic.acoustic-creating.acoustic-duo #note-palette .sp-notes-arc .sp-note-key{transform:translate(var(--flat-x, 0px),var(--flat-y, 0px)) scale(var(--arc-scale, 1))!important}body.app-acoustic.acoustic-creating.acoustic-duo #note-palette .sp-notes-arc .sp-note-key:hover{transform:translate(var(--flat-x, 0px),calc(var(--flat-y, 0px) - 5px)) scale(calc(var(--arc-scale, 1) * 1.1))!important}body.app-acoustic.acoustic-creating #handpan-container .note-group.dimmed .note-circle-base{fill:#ffffff0f;stroke:#ffffff73;stroke-width:4;stroke-dasharray:10 8;opacity:1}body.app-acoustic.acoustic-creating #handpan-container .note-group.acreate-slot-selected .note-circle-base{stroke:var(--gold-color, #FFD700);stroke-width:7;stroke-dasharray:none}body.app-acoustic.acoustic-creating #handpan-container .note-group{cursor:pointer}.acoustic-myhandpans{margin-top:10px}.myhp-inline-title{font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;opacity:.6;margin-bottom:6px}.myhp-inline-empty,.myhp-suggest-note{font-size:.74rem;opacity:.7;margin-bottom:6px}.myhp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.myhp-chip{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-family:var(--font-family);font-size:.76rem;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--current-outline-color, rgba(255,255,255,.18));background:var(--secondary-color);color:var(--text-color);transition:border-color .12s,transform .12s,background-color .12s}.myhp-chip:hover{border-color:var(--highlight-color);transform:translateY(-1px)}.myhp-chip-dot{width:9px;height:9px;border-radius:50%;background:var(--highlight-color);flex:0 0 auto}.myhp-chip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.myhp-chip-key{font-size:.68rem;font-weight:700;opacity:.7}.myhp-chip-suggest{border-style:dashed;opacity:.9}.myhp-save-btn{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-family:var(--font-family);font-size:.76rem;font-weight:700;padding:6px 13px;border-radius:999px;border:1px solid var(--highlight-color);background:transparent;color:var(--highlight-color);transition:background-color .12s,color .12s,transform .12s,opacity .12s}.myhp-save-btn:hover:not(:disabled){background:var(--highlight-color);color:var(--primary-color);transform:translateY(-1px)}.myhp-save-btn:disabled{opacity:.45;cursor:default;border-color:var(--current-outline-color, rgba(255,255,255,.18));color:var(--text-color)}.myhp-share-btn{display:inline-flex;align-items:center;gap:6px;margin-left:8px;cursor:pointer;font-family:var(--font-family);font-size:.76rem;font-weight:700;padding:6px 13px;border-radius:999px;border:1px solid var(--highlight-color);background:transparent;color:var(--highlight-color);transition:background-color .12s,color .12s,transform .12s,opacity .12s}.myhp-share-btn:hover:not(:disabled){background:var(--highlight-color);color:var(--primary-color);transform:translateY(-1px)}.myhp-share-btn:disabled{opacity:.45;cursor:default}.sharedlib-modal .sharedlib-list,.mysongs-modal .mysongs-list{display:flex;flex-direction:column;gap:10px;margin-top:4px;max-height:60vh;overflow-y:auto}.sharedlib-empty,.mysongs-empty{text-align:center;opacity:.72;font-size:.9rem;padding:22px 6px}.sharedlib-item,.mysongs-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:var(--secondary-color, rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.08)}.sharedlib-item-meta,.mysongs-item-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.sharedlib-item-name,.mysongs-item-name{font-weight:700;font-size:.92rem}.sharedlib-item-sub,.mysongs-item-sub{font-size:.76rem;opacity:.72}.sharedlib-item-actions,.mysongs-item-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.myhp-modal .myhp-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.myhp-empty{text-align:center;opacity:.72;font-size:.9rem;padding:22px 6px}.myhp-item{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:var(--secondary-color, rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.08)}.myhp-item-meta{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 190px}.myhp-item-name{display:flex;align-items:center;font-weight:700;font-size:.95rem;min-width:0}.myhp-item-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.myhp-item-sub{font-size:.78rem;opacity:.66}.myhp-item-actions{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 auto;justify-content:flex-end}.myhp-item-actions .nf-btn{padding:7px 13px;font-size:.82rem}.myhp-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.35em;height:1.35em;margin-right:5px;border-radius:50%;font-size:.8rem;line-height:1;background:#7f7f7f2e;border:1px solid rgba(127,127,127,.34)}.myhp-badge-elec{background:#8b7cf633;border-color:#8b7cf68c}.myhp-item-elec{border-color:#8b7cf66b}.myhp-item-duo.myhp-item-elec{border-color:var(--gold-color, #D4AF37)}.myhp-chip-elec{border-color:#8b7cf680}.myhp-chip-elec .myhp-chip-dot{background:#8b7cf6d9}.myhp-hyb-btn{background:linear-gradient(100deg,#e0a86033 0 50%,#5fb6f533 50% 100%);border-color:#e0a8608c}.myhp-hyb-btn:hover{background:linear-gradient(100deg,#e0a86057 0 50%,#5fb6f557 50% 100%);border-color:var(--gold-color, #D4AF37)}.myhp-duo{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 10px;padding:8px 10px;border-radius:10px;background:#7f7f7f21;border:1px solid var(--gold-color, #D4AF37);font-size:.78rem;line-height:1.35}.myhp-duo-empty{border-style:dashed;border-color:#7f7f7f6b;opacity:.85}.myhp-duo-lbl{font-weight:800;letter-spacing:.02em;flex:0 0 auto}.myhp-duo-txt{flex:1 1 140px;min-width:0}.myhp-duo-txt strong{font-weight:700}.myhp-duo-acts{display:flex;flex-wrap:wrap;gap:6px;flex:1 1 100%}.myhp-duo-btn{padding:4px 10px;border-radius:999px;cursor:pointer;font:inherit;font-size:.72rem;font-weight:700;color:inherit;background:#7f7f7f29;border:1px solid rgba(127,127,127,.4);white-space:nowrap}.myhp-duo-btn:hover{border-color:var(--gold-color, #D4AF37);background:#d4af3729}.myhp-duo-off:hover{border-color:#ef4444;background:#ef444424}.myhp-duo-role{flex:0 0 auto;align-self:center;font-size:.7rem;font-weight:800;padding:3px 9px;border-radius:999px;background:var(--gold-color, #FFD700);color:#2b2205;white-space:nowrap}.myhp-item-duo{border-color:var(--gold-color, #D4AF37)}.myhp-item-actions .myhp-duo-btn{padding:6px 11px;font-size:.76rem}.myneo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:6px 0 14px}.myneo-opt{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 8px;border-radius:11px;cursor:pointer;color:inherit;font:inherit;background:#7f7f7f1f;border:1px solid rgba(127,127,127,.34);font-size:.8rem;font-weight:700;text-align:center}.myneo-opt small{font-size:.68rem;font-weight:600;opacity:.7}.myneo-opt:hover{border-color:var(--gold-color, #D4AF37)}.myneo-opt[aria-checked=true]{border-color:var(--gold-color, #D4AF37);background:#d4af372e}.myneo-swatch{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.28)}.myneo-lbl{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.72;margin:2px 0 0}.myhp-neo-btn{display:block;width:100%;margin-top:6px;padding:8px 12px;border-radius:9px;cursor:pointer;font:inherit;font-size:.78rem;font-weight:700;color:inherit;background:#8b7cf624;border:1px solid rgba(139,124,246,.45)}.myhp-neo-btn:hover{background:#8b7cf642}.dpx{position:fixed;inset:0;z-index:9000;display:grid;place-items:center}.dpx-backdrop{position:absolute;inset:0;background:#060812b8;backdrop-filter:blur(3px)}.dpx-card{position:relative;width:min(560px,calc(100vw - 32px));max-height:min(84vh,760px);overflow-y:auto;padding:26px 26px 20px;border-radius:18px;background:var(--panel-bg, #151a2c);border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px #0000008c;color:var(--text-color, #e8ecf5);font-size:.95rem;line-height:1.55}.dpx-x{position:absolute;top:10px;right:12px;background:none;border:none;cursor:pointer;color:inherit;opacity:.5;font-size:1rem;padding:4px 6px}.dpx-x:hover{opacity:1}.dpx-dots{display:flex;gap:6px;margin-bottom:14px}.dpx-dot{width:26px;height:4px;border-radius:99px;border:none;padding:0;cursor:pointer;background:#ffffff2e;transition:background .18s}.dpx-dot.on{background:var(--accent-color, #46c8f0)}.dpx-title{margin:0 0 12px;font-size:1.24rem;line-height:1.28;font-weight:800}.dpx-body p{margin:0 0 11px}.dpx-lead{font-size:1.02rem;opacity:.95}.dpx-note{font-size:.86rem;opacity:.78}.dpx-hero{margin:14px 0!important;padding:12px 14px;border-left:3px solid var(--accent-color, #46c8f0);border-radius:0 10px 10px 0;background:#46c8f014;font-size:1.02rem;font-weight:650}.dpx-jump{display:flex;align-items:center;justify-content:center;gap:18px;margin:16px 0 14px}.dpx-jump span{display:flex;flex-direction:column;align-items:center}.dpx-jump b{font-size:2.5rem;line-height:1;font-weight:800}.dpx-jump small{font-size:.72rem;opacity:.7;margin-top:4px}.dpx-jump-a b{opacity:.5}.dpx-jump-b b{color:var(--accent-color, #46c8f0)}.dpx-jump-arrow{font-size:1.5rem;opacity:.45}.dpx-chords{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 14px}.dpx-chord{padding:3px 9px;border-radius:999px;font-size:.78rem;font-weight:700;background:#ffffff14;border:1px solid rgba(255,255,255,.14)}.dpx-keys{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 4px}.dpx-key{min-width:30px;text-align:center;padding:5px 6px;border-radius:7px;font-size:.72rem;font-weight:700;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#ffffff4d}.dpx-key.on{background:var(--kc);border-color:var(--kc);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.dpx-key.new{box-shadow:0 0 0 2px #ffffffbf}.dpx-lenses{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}@media(max-width:480px){.dpx-lenses{grid-template-columns:1fr}}.dpx-lens{padding:12px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.dpx-lens-t{font-weight:800;font-size:.92rem;margin-bottom:5px}.dpx-lens-q{font-size:.9rem;opacity:.9}.dpx-lens-w{font-size:.78rem;opacity:.6;margin-top:5px}.dpx-cta{display:block;width:100%;margin-top:6px;padding:11px 14px;border-radius:10px;border:none;cursor:pointer;background:var(--accent-color, #46c8f0);color:#06101a;font-size:.92rem;font-weight:800}.dpx-do{font-size:.8rem;font-weight:700;opacity:.85;margin:10px 0 4px;color:var(--accent-color, #46c8f0)}.dpx-live{cursor:pointer;font:inherit;transition:transform .12s,box-shadow .12s,background .12s}.dpx-live:hover{transform:translateY(-1px)}button.dpx-chord{color:inherit}.dpx-chord.on{background:var(--accent-color, #46c8f0);border-color:transparent;color:#06101a}.dpx-key.hit{animation:dpxHit .35s ease}@keyframes dpxHit{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1)}}.dpx-modes{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}.dpx-mode{padding:6px 11px;border-radius:999px;cursor:pointer;font-size:.78rem;font-weight:700;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);color:inherit}.dpx-mode b{opacity:.7;margin-left:3px}.dpx-mode.on{background:var(--accent-color, #46c8f0);border-color:transparent;color:#06101a}.dpx-degs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:6px}@media(max-width:520px){.dpx-degs{grid-template-columns:repeat(4,minmax(0,1fr))}}.dpx-deg{display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 4px;border-radius:9px;cursor:pointer;color:inherit;background:#ffffff0f;border:1px solid rgba(255,255,255,.14)}.dpx-deg b{font-size:.82rem}.dpx-deg span{font-size:.68rem;opacity:.75}.dpx-deg.off{opacity:.3;cursor:not-allowed}.dpx-deg.on{background:var(--accent-color, #46c8f0);border-color:transparent;color:#06101a}.dpx-lensswitch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 12px}.dpx-lensbtn{padding:9px 10px;border-radius:10px;cursor:pointer;font-size:.84rem;font-weight:700;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);color:inherit}.dpx-lensbtn.on{background:var(--accent-color, #46c8f0);border-color:transparent;color:#06101a}.dpx-outro{margin-top:12px}.dpx-exits{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}@media(max-width:480px){.dpx-exits{grid-template-columns:1fr}}.dpx-cta-2{background:#ffffff1a;color:inherit}body.light-theme .dpx-mode,body.light-theme .dpx-deg,body.light-theme .dpx-lensbtn{background:#0000000d;border-color:#0000001f}body.light-theme .dpx-cta-2{background:#00000012}.dpx-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px}.dpx-prev,.dpx-next{padding:9px 16px;border-radius:9px;cursor:pointer;font-size:.88rem;font-weight:700;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:inherit}.dpx-next{background:var(--accent-color, #46c8f0);color:#06101a;border-color:transparent}body.light-theme .dpx-card{background:#fff;color:#16203a;border-color:#0000001a}body.light-theme .dpx-dot{background:#00000024}body.light-theme .dpx-chord,body.light-theme .dpx-lens,body.light-theme .dpx-prev{background:#0000000d;border-color:#0000001f}body.light-theme .dpx-key{background:#0000000a;border-color:#0000001a;color:#00000047}body.light-theme .dpx-key.new{box-shadow:0 0 0 2px #0000008c}.signature-credit{color:var(--gold-color, #d9b64a);font-weight:650;letter-spacing:.012em}.acoustic-anchor-credit{margin-top:2px;font-size:10.5px;line-height:1.35;opacity:.92}.va-banner{position:fixed;top:0;left:0;right:0;z-index:2147483000;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:7px 14px;background:linear-gradient(90deg,#b45309,#d97706);color:#fff;font:600 13px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;box-shadow:0 2px 12px #00000059;pointer-events:auto}.va-banner__eye{font-size:15px;line-height:1}.va-banner__who strong{font-weight:800;text-decoration:underline;text-underline-offset:2px}.va-banner__note{flex:1 1 240px;min-width:0;font-weight:400;font-size:11.5px;opacity:.92}.va-banner__btn{flex:0 0 auto;padding:5px 12px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:#ffffff24;color:#fff;font:inherit;font-size:12.5px;cursor:pointer}.va-banner__btn:hover{background:#ffffff47}body.va-active{padding-top:var(--va-banner-h, 38px)}.va-overlay{position:fixed;inset:0;z-index:2147483001;display:flex;align-items:center;justify-content:center;padding:20px;background:#0000008c}.va-modal{width:min(560px,100%);max-height:min(80vh,720px);overflow:auto;border-radius:16px;padding:22px 24px 18px;background:var(--bg-panel, #1c1f26);color:var(--text-color, #e8e8ea);box-shadow:0 24px 64px #00000080;font:400 14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}.va-modal h2{margin:0 0 4px;font-size:19px}.va-modal__sub{margin:0 0 14px;font-size:13px;opacity:.75}.va-modal__warn{margin:0 0 16px;padding:10px 12px;border-left:3px solid #d97706;border-radius:0 8px 8px 0;background:#d9770621;font-size:12.5px;line-height:1.45}.va-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.va-item{display:block;width:100%;text-align:left;padding:11px 14px;border:1px solid rgba(128,128,128,.32);border-radius:11px;background:#80808014;color:inherit;font:inherit;cursor:pointer}.va-item:hover{border-color:#d97706;background:#d9770624}.va-item[aria-current=true]{border-color:#d97706;background:#d9770638}.va-item__name{font-weight:700}.va-item__desc{display:block;margin-top:2px;font-size:12px;opacity:.7}.va-modal__foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(128,128,128,.25)}.va-modal__hint{flex:1 1 240px;font-size:11.5px;opacity:.65}.va-modal__close{padding:8px 16px;border:1px solid rgba(128,128,128,.4);border-radius:10px;background:transparent;color:inherit;font:inherit;cursor:pointer}.nf-fab{position:fixed;right:18px;bottom:18px;z-index:9000;display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border:none;border-radius:999px;background:var(--highlight-color, #22d3ee);color:#06222b;font-family:var(--font-family, sans-serif);font-weight:700;font-size:.92rem;cursor:pointer;box-shadow:0 6px 22px #00000073;transition:transform .15s ease,box-shadow .15s ease}.nf-fab:hover{transform:translateY(-2px);box-shadow:0 9px 26px #0000008c}.nf-fab-ic{font-size:1.15rem}.nf-fab-admin{bottom:76px;padding:11px 13px;background:var(--secondary-color, #415a77);color:var(--text-color, #fff)}.nf-fab-admin .nf-fab-txt{display:none}@media(max-width:640px){.nf-fab-txt{display:none}.nf-fab{padding:13px}}.nf-fab.nf-fab-header{position:static;z-index:auto;padding:8px 14px;font-size:.82rem;box-shadow:none;align-self:center}.nf-fab.nf-fab-header:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.nf-fab.nf-fab-header .nf-fab-ic{font-size:1rem}@media(max-width:900px){.nf-fab.nf-fab-header .nf-fab-txt{display:none}.nf-fab.nf-fab-header{padding:8px 10px}}.nf-overlay{position:fixed;inset:0;z-index:9500;display:flex;align-items:center;justify-content:center;padding:16px;background:#030911b8;backdrop-filter:blur(4px);font-family:var(--font-family, sans-serif);color:var(--text-color, #e0e1dd)}.nf-overlay.nf-hidden-for-shot{opacity:0}.nf-modal{position:relative;width:min(560px,100%);max-height:90vh;overflow-y:auto;background:var(--primary-color, #1b263b);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:26px 26px 22px;box-shadow:0 24px 60px #0000008c}.nf-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;border-radius:50%;background:#ffffff14;color:var(--text-color, #fff);font-size:.9rem;cursor:pointer}.nf-close:hover{background:#ffffff29}.nf-progress{height:4px;border-radius:4px;background:#ffffff14;margin:4px 0 18px;overflow:hidden}.nf-progress-bar{height:100%;width:20%;background:var(--highlight-color, #22d3ee);transition:width .25s ease}.nf-title{margin:0 0 4px;font-size:1.32rem;font-weight:700}.nf-sub{margin:0 0 18px;opacity:.72;font-size:.92rem}.nf-note{opacity:.7;font-size:.85rem;margin-top:10px}.nf-sign{margin:14px 0 4px;font-style:italic;font-weight:700;opacity:.92}.nf-grid{display:grid;gap:12px}.nf-grid-2{grid-template-columns:1fr 1fr}@media(max-width:480px){.nf-grid-2{grid-template-columns:1fr}}.nf-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff08;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s,transform .1s,background .15s}.nf-card:hover{border-color:var(--highlight-color, #22d3ee);background:#ffffff0f;transform:translateY(-1px)}.nf-card-icon{font-size:1.7rem}.nf-card-label{font-weight:700;font-size:.98rem}.nf-card-hint{opacity:.62;font-size:.8rem}.nf-cat-grid{gap:9px}.nf-cat{display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:#ffffff08;color:inherit;text-align:left;font-size:.88rem;cursor:pointer}.nf-cat:hover,.nf-cat.is-active{border-color:var(--highlight-color, #22d3ee);background:#22d3ee1a}.nf-cat-icon{font-size:1.2rem}.nf-stack{display:flex;flex-direction:column;gap:10px}.nf-opt{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff08;color:inherit;text-align:left;font-size:.95rem;cursor:pointer}.nf-opt:hover,.nf-opt.is-active{border-color:var(--highlight-color, #22d3ee);background:#22d3ee1a}.nf-opt-icon{font-size:1.3rem}.nf-textarea{width:100%;min-height:120px;resize:vertical;padding:13px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#00000038;color:var(--text-color, #fff);font-family:inherit;font-size:.95rem;box-sizing:border-box}.nf-textarea:focus{outline:none;border-color:var(--highlight-color, #22d3ee)}.nf-attach-bar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.nf-attach-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:64px;padding:9px 6px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:#ffffff08;color:inherit;font-size:1.15rem;cursor:pointer}.nf-attach-btn span{font-size:.68rem;opacity:.78}.nf-attach-btn:hover:not(:disabled){border-color:var(--highlight-color, #22d3ee)}.nf-attach-btn:disabled{opacity:.35;cursor:not-allowed}.nf-rec-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:12px;border-radius:11px;background:#dc262624;border:1px solid rgba(220,38,38,.4)}.nf-rec-dot{width:11px;height:11px;border-radius:50%;background:#ef4444;animation:nf-pulse 1s infinite}.nf-rec-time{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:700}@keyframes nf-pulse{0%,to{opacity:1}50%{opacity:.3}}.nf-attach-tip{font-size:.78rem;opacity:.6;margin:4px 0 10px;line-height:1.4}.nf-rec-float{display:none}.nf-overlay.nf-recording{background:transparent;backdrop-filter:none;pointer-events:none}.nf-overlay.nf-recording .nf-modal{display:none}.nf-overlay.nf-recording .nf-rec-float{display:flex;align-items:center;gap:10px;position:fixed;top:16px;left:50%;transform:translate(-50%);pointer-events:auto;padding:10px 16px;border-radius:999px;background:#dc2626f5;color:#fff;font-weight:700;font-size:.9rem;box-shadow:0 8px 24px #00000073;z-index:9600}.nf-rec-float .nf-rec-dot{background:#fff}.nf-rec-float .nf-rec-time{margin-left:0}.nf-rec-float .nf-btn-stop{background:#fff;color:#b91c1c;padding:6px 13px}.nf-attachments{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.nf-att{position:relative;display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:.78rem}.nf-att-thumb{width:42px;height:42px;object-fit:cover;border-radius:7px}.nf-att-ic{font-size:1.5rem}.nf-att-info{display:flex;flex-direction:column;gap:2px}.nf-att-trans{font-size:.68rem;opacity:.85}.nf-att-trans.is-ok{color:#22c55e;cursor:help}.nf-att-del{border:none;background:#00000059;color:#fff;width:20px;height:20px;border-radius:50%;cursor:pointer;font-size:.7rem}.nf-actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.nf-actions:has(>:only-child){justify-content:flex-start}.nf-btn{padding:11px 20px;border-radius:11px;border:none;font-family:inherit;font-weight:700;font-size:.92rem;cursor:pointer}.nf-btn-primary{background:var(--highlight-color, #22d3ee);color:#06222b;margin-left:auto}.nf-btn-primary:hover{filter:brightness(1.08)}.nf-btn-ghost{background:#ffffff12;color:var(--text-color, #fff)}.nf-btn-ghost:hover{background:#ffffff24}.nf-btn-stop{background:#ef4444;color:#fff;padding:7px 14px}.nf-review{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.nf-rev-row{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;background:#ffffff0a;border-radius:9px;font-size:.9rem}.nf-rev-row b{opacity:.66;font-weight:600}.nf-rev-message{white-space:pre-wrap;word-break:break-word;padding:12px 14px;background:#00000038;border-radius:10px;font-size:.9rem;max-height:160px;overflow-y:auto}.nf-center{text-align:center;padding:24px 6px}.nf-spinner{width:38px;height:38px;margin:0 auto 18px;border:4px solid rgba(255,255,255,.15);border-top-color:var(--highlight-color, #22d3ee);border-radius:50%;animation:nf-spin .8s linear infinite}@keyframes nf-spin{to{transform:rotate(360deg)}}.nf-check{width:62px;height:62px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:#22c55e2e;color:#22c55e;font-size:2rem;font-weight:800}.nf-toast{position:absolute;left:50%;bottom:16px;transform:translate(-50%);padding:10px 16px;border-radius:10px;font-size:.85rem;max-width:90%;text-align:center;box-shadow:0 8px 24px #0006}.nf-toast-error{background:#ef4444;color:#fff}.nf-toast-info{background:var(--secondary-color, #415a77);color:#fff}.nf-dash-overlay{align-items:stretch;padding:0}.nf-dash{width:100%;max-width:960px;margin:auto;max-height:100vh;display:flex;flex-direction:column;background:var(--bg-color, #0d1b2a)}.nf-dash-wide{max-width:min(1680px,96vw)}.au-th-sort:hover{opacity:1!important;background:#ffffff0d}.au-th-sort.is-active{font-weight:700}.au-table thead tr{border-bottom:1px solid rgba(255,255,255,.12)}.nf-dash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.nf-dash-head h2{margin:0;font-size:1.15rem}.nf-dash-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.nf-dash-filters select{padding:7px 10px;border-radius:9px;background:var(--primary-color, #1b263b);color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.12);font-family:inherit;font-size:.84rem}.nf-dash-close{position:static}.nf-dash-refresh{padding:7px 12px}.nf-dash-search{padding:7px 12px;border-radius:9px;background:var(--primary-color, #1b263b);color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.12);font-family:inherit;font-size:.84rem;min-width:210px}.nf-dash-search:focus{outline:none;border-color:var(--highlight-color, #22d3ee)}.nf-dash-arch-toggle{display:flex;align-items:center;gap:6px;font-size:.8rem;opacity:.85;cursor:pointer;white-space:nowrap}.nf-dash-arch-toggle input{cursor:pointer}.nf-fb-archived{opacity:.5}.nf-fb-archived:hover{opacity:.8}.nf-fb-delete:hover{background:#dc2626d9;color:#fff}.nf-dash-stats{display:flex;gap:8px;padding:12px 20px;flex-wrap:wrap}.nf-chip{padding:5px 12px;border-radius:999px;background:#ffffff12;font-size:.8rem}.nf-chip-alert{background:#dc262633;color:#fca5a5;font-weight:700}.nf-dash-list{flex:1;overflow-y:auto;padding:8px 20px 28px;display:flex;flex-direction:column;gap:14px}.nf-fb-card{padding:16px;border-radius:14px;background:var(--primary-color, #1b263b);border:1px solid rgba(255,255,255,.08);border-left:4px solid var(--secondary-color, #415a77)}.nf-urg-0{border-left-color:#dc2626}.nf-urg-1{border-left-color:#f59e0b}.nf-urg-2{border-left-color:#eab308}.nf-urg-3{border-left-color:#22c55e}.nf-fb-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;margin-bottom:8px}.nf-fb-urg{font-weight:700}.nf-fb-kind,.nf-fb-cat{padding:2px 9px;border-radius:999px;background:#ffffff12}.nf-fb-date{margin-left:auto;opacity:.6}.nf-fb-who{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:.86rem;margin-bottom:8px}.nf-fb-who a{color:var(--highlight-color, #22d3ee);text-decoration:none}.nf-fb-body{white-space:pre-wrap;word-break:break-word;margin:0 0 10px;font-size:.92rem;line-height:1.5}.nf-fb-media{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.nf-fb-media-slot{max-width:220px;font-size:.78rem;opacity:.85}.nf-fb-media-slot img,.nf-fb-media-slot video{max-width:220px;max-height:150px;border-radius:8px;display:block}.nf-fb-media-slot audio{width:220px}.nf-fb-trans{margin-bottom:10px;display:flex;flex-direction:column;gap:6px}.nf-fb-trans-item{padding:9px 12px;background:#22c55e14;border-left:3px solid #22c55e;border-radius:0 9px 9px 0;font-size:.85rem;line-height:1.5}.nf-fb-trans-item b{display:block;opacity:.7;font-weight:600;font-size:.72rem;margin-bottom:3px}.nf-fb-ctx{margin-bottom:10px;font-size:.82rem}.nf-fb-ctx summary{cursor:pointer;opacity:.7}.nf-fb-ctx ul{margin:8px 0 0;padding-left:18px;opacity:.85}.nf-fb-ctx pre{white-space:pre-wrap;word-break:break-word;background:#0000004d;padding:8px;border-radius:7px;font-size:.72rem}.nf-fb-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.nf-fb-actions label{display:flex;align-items:center;gap:6px;font-size:.8rem;opacity:.85}.nf-fb-actions select{padding:5px 8px;border-radius:8px;background:var(--bg-color, #0d1b2a);color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.14);font-family:inherit;font-size:.8rem}.nf-fb-reply{margin-left:auto;padding:7px 14px}.nf-myfb-list{display:flex;flex-direction:column;gap:12px}.nf-myfb-card{padding:13px 15px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.nf-myfb-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;margin-bottom:8px}.nf-myfb-status{padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--st, #22d3ee) 22%,transparent);color:var(--st, #22d3ee);font-weight:700}.au-table th{border-bottom:1px solid rgba(255,255,255,.12)}.au-table td{padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle}.au-table tbody tr:hover{background:#ffffff08}.au-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:600;line-height:1.5}.au-badge-paying{background:#22c55e2e;color:#4ade80}.au-badge-free{background:#22d3ee2e;color:#22d3ee}.au-badge-admin{background:#a855f733;color:#c084fc}.au-badge-none{background:#ffffff14;color:#fff9}.au-table .nf-btn{padding:5px 11px;font-size:.8rem}.nf-intro{margin:0 0 16px;padding:14px 16px;border-left:3px solid var(--highlight-color, #22d3ee);border-radius:0 12px 12px 0;background:#22d3ee12}.nf-intro-text{margin:0;font-size:.92rem;line-height:1.55;opacity:.95}.nf-intro .nf-sign{margin:8px 0 0;font-size:.86rem}.nf-gate-grid .nf-card{padding:13px 14px;gap:3px}.nf-gate-grid .nf-card-icon{font-size:1.45rem}.nf-gate-grid .nf-card-label{font-size:.9rem;line-height:1.3}.nf-gate-grid .nf-card-hint{font-size:.76rem;line-height:1.35}.nf-gate.is-active{border-color:var(--highlight-color, #22d3ee);background:#22d3ee1a}.nf-question{font-size:1rem;line-height:1.55;opacity:.88}.nf-q-note{display:inline-block;margin-top:6px;font-size:.82rem;opacity:.68}.nf-textarea-story{min-height:170px;line-height:1.55}.nf-myfb-consent{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);font-size:.82rem}.nf-myfb-consent select{padding:6px 10px;border-radius:9px;background:var(--primary-color, #1b263b);color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.14);font-family:inherit;font-size:.82rem}.nf-consent-saved{color:#4ade80;font-weight:700}.nf-fb-gate{padding:2px 9px;border-radius:999px;background:#a855f72e;color:#c084fc}.nf-fb-consent{padding:2px 9px;border-radius:999px;background:#ffffff12}.nf-fb-consent.is-public{background:#22c55e2e;color:#4ade80}.nf-fb-consent.is-anon{background:#22d3ee2e;color:#22d3ee}.nf-fb-pub{margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#22c55e17;border:1px dashed rgba(34,197,94,.35);font-size:.82rem}.nf-export-area{width:100%;min-height:320px;resize:vertical;padding:13px 14px;border-radius:12px;background:#0000004d;color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.12);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;line-height:1.5;box-sizing:border-box}.nf-name-card{display:flex;align-items:center;gap:12px;width:100%;margin-top:12px;padding:12px 14px;border-radius:12px;border:1px dashed rgba(212,175,55,.55);background:linear-gradient(180deg,#d4af371f,#d4af370d);color:var(--text-color, #fff);font-family:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .1s ease}.nf-name-card:hover{border-color:var(--gold-color, #d4af37);background:linear-gradient(180deg,#d4af3733,#d4af3717);transform:translateY(-1px)}.nf-name-card-icon{font-size:1.4rem}.nf-name-card-txt{display:flex;flex-direction:column;gap:2px}.nf-name-card-label{font-weight:700;font-size:.92rem}.nf-name-card-hint{opacity:.7;font-size:.78rem}.nf-name-guest{padding:12px 14px;border-radius:12px;background:#22d3ee14;border:1px dashed rgba(34,211,238,.4);font-size:.88rem;line-height:1.5;margin-bottom:12px}.nf-name-form{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.nf-name-row{display:flex;gap:8px}.nf-name-input,.nf-name-note{flex:1;padding:10px 12px;border-radius:10px;background:#0000004d;color:var(--text-color, #fff);border:1px solid rgba(255,255,255,.14);font-family:inherit;font-size:.9rem;box-sizing:border-box}.nf-name-input:focus,.nf-name-note:focus{outline:none;border-color:var(--highlight-color, #22d3ee)}.nf-name-note{width:100%}.nf-name-quota{margin:0;opacity:.6;font-size:.76rem}.nf-name-dup{padding:10px 12px;border-radius:10px;background:#d4af371a;border:1px solid rgba(212,175,55,.4);font-size:.85rem;line-height:1.5}.nf-name-dup .nf-btn{margin-top:8px}.nf-name-list{display:flex;flex-direction:column;gap:8px}.nf-name-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.nf-name-item.is-top{border-color:#d4af3773;background:#d4af370f}.nf-name-heart{display:inline-flex;flex-direction:column;align-items:center;gap:0;min-width:44px;padding:6px 8px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#00000040;color:var(--text-color, #fff);font-family:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .1s ease}.nf-name-heart:hover:not(:disabled){border-color:#ef4444;transform:translateY(-1px)}.nf-name-heart:disabled{opacity:.45;cursor:default}.nf-name-heart.is-on{border-color:#ef4444a6;background:#ef44441f}.nf-name-heart-ic{font-size:1.05rem;line-height:1.1}.nf-name-heart.is-on .nf-name-heart-ic{color:#ef4444}.nf-name-heart-n{font-size:.72rem;opacity:.8}.nf-name-main{flex:1;min-width:0}.nf-name-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nf-name-label{font-weight:700;font-size:.95rem;overflow-wrap:anywhere}.nf-name-top{font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:999px;background:#d4af372e;border:1px solid rgba(212,175,55,.5);color:var(--gold-color, #d4af37);white-space:nowrap}.nf-name-why{opacity:.8;font-size:.82rem;line-height:1.45;margin-top:2px;overflow-wrap:anywhere}.nf-name-by{opacity:.55;font-size:.74rem;margin-top:3px}.nf-name-del{align-self:flex-start;padding:6px 8px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-color, #fff);opacity:.5;font-family:inherit;font-size:.85rem;cursor:pointer;transition:opacity .15s ease,border-color .15s ease}.nf-name-del:hover{opacity:1;border-color:#ef444480}@media(min-width:1024px){header .appmode-topbar:not(.appmode-topbar--in-row){right:max(0px,calc((100% - 1500px)/2))}}.ug-overlay{position:fixed;inset:0;z-index:9400;display:flex;align-items:stretch;justify-content:center;background:#030911b8;backdrop-filter:blur(4px);font-family:var(--font-family, sans-serif);color:var(--text-color, #e0e1dd)}.ug-modal{width:100%;max-width:1100px;margin:auto;max-height:100vh;display:flex;flex-direction:column;background:var(--bg-color, #0d1b2a);border:1px solid rgba(255,255,255,.08)}.ug-head{display:flex;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.09);flex-wrap:wrap}.ug-h{margin:0;font-size:1.15rem;white-space:nowrap}.ug-search-wrap{position:relative;flex:1;min-width:200px;display:flex;align-items:center;gap:10px}.ug-search{flex:1;padding:9px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:#00000040;color:var(--text-color, #fff);font-family:inherit;font-size:.92rem}.ug-search:focus{outline:none;border-color:var(--highlight-color, #22d3ee)}.ug-search-count{font-size:.78rem;opacity:.7;white-space:nowrap}.ug-close{width:34px;height:34px;border:none;border-radius:50%;background:#ffffff14;color:var(--text-color, #fff);font-size:.95rem;cursor:pointer}.ug-close:hover{background:#ffffff29}.ug-pdf{border:1px solid rgba(255,255,255,.14);border-radius:9px;background:#ffffff0f;color:var(--text-color, #fff);font-family:inherit;font-size:.82rem;font-weight:600;padding:7px 12px;cursor:pointer;white-space:nowrap}.ug-pdf:hover{background:#ffffff24}.ug-pdf:disabled{opacity:.5;cursor:default}.ug-body{display:flex;flex:1;min-height:0}.ug-toc{width:240px;flex-shrink:0;overflow-y:auto;padding:16px 10px 24px;border-right:1px solid rgba(255,255,255,.08)}.ug-toc-title{margin:0 8px 8px;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;opacity:.5}.ug-toc-list{list-style:none;margin:0;padding:0}.ug-toc-list a{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:9px;color:inherit;text-decoration:none;font-size:.9rem}.ug-toc-list a:hover{background:#ffffff12}.ug-toc-ic{font-size:1.05rem;width:1.3em;text-align:center}.ug-toc-badge{margin-left:auto;background:var(--highlight-color, #22d3ee);color:#06222b;font-size:.7rem;font-weight:700;padding:1px 7px;border-radius:999px}.ug-content{flex:1;overflow-y:auto;padding:22px 30px 60px;scroll-behavior:smooth}.ug-section{margin-bottom:34px;scroll-margin-top:12px;padding:6px 8px;border-radius:12px}.ug-section.ug-flash{animation:ug-flash 1.2s ease}@keyframes ug-flash{0%,to{background:transparent}25%{background:#22d3ee1f}}.ug-section-title{font-size:1.25rem;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.ug-content h3{font-size:1.02rem;margin:18px 0 8px;color:var(--highlight-color, #22d3ee)}.ug-content p{line-height:1.6;margin:8px 0;font-size:.94rem}.ug-content ul,.ug-content ol{line-height:1.6;padding-left:22px;font-size:.94rem}.ug-content li{margin:5px 0}.ug-content strong{color:#fff;font-weight:700}mark.ug-hl{background:var(--highlight-color, #22d3ee);color:#06222b;border-radius:3px;padding:0 2px}.ug-foot{margin-top:30px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);opacity:.7;font-size:.85rem}.ug-video{margin:14px 0}.ug-video video{width:100%;max-width:520px;border-radius:12px;background:#000;display:block;box-shadow:0 6px 20px #0006}.ug-video figcaption{margin-top:6px;font-size:.82rem;opacity:.72}.ug-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.ug-video-grid .ug-video{margin:0}.ug-video-grid video{max-width:100%}@media(max-width:720px){.ug-body{flex-direction:column}.ug-toc{width:auto;max-height:150px;border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.ug-content{padding:18px 16px 50px}.ug-head{gap:10px}.ug-h{font-size:1rem}}.wn-popup{position:fixed;top:132px;right:16px;bottom:auto;z-index:9700;display:flex;align-items:center;gap:8px;height:34px;max-width:calc(100vw - 32px);padding:0 6px 0 13px;border-radius:999px;background:var(--bg-color, #0d1b2a);border:1px solid rgba(34,211,238,.45);box-shadow:0 4px 14px #00000059;color:var(--text-color, #e0e1dd);font-family:var(--font-family, sans-serif);white-space:nowrap;overflow:hidden;opacity:0;transform:translateY(-8px) scale(.98);transition:opacity .22s ease,transform .22s ease}.wn-popup.wn-popup-in{opacity:1;transform:translateY(0) scale(1)}.wn-popup.wn-popup-flying{transition:transform .45s cubic-bezier(.4,0,.2,1),opacity .45s ease;pointer-events:none}.wn-popup-spark{font-size:.95rem;line-height:1;flex-shrink:0}.wn-popup-title{flex:0 1 auto;min-width:0;font-size:.78rem;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wn-popup-cta{flex-shrink:0;border:none;cursor:pointer;padding:4px 12px;border-radius:999px;font-weight:700;font-size:.74rem;background:var(--highlight-color, #22d3ee);color:#06222b}.wn-popup-cta:hover{filter:brightness(1.08)}.wn-popup-close{flex-shrink:0;width:22px;height:22px;border:none;border-radius:50%;background:#ffffff14;color:var(--text-color, #fff);font-size:.72rem;cursor:pointer;line-height:1}.wn-popup-close:hover{background:#ffffff2e}@media(max-width:640px){.wn-popup{inset:auto 12px 12px;height:auto;padding:9px 8px 9px 13px;white-space:normal}.wn-popup-title{white-space:normal}}.wn-bell-wrap{position:relative;display:inline-flex}.wn-bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center}.wn-bell-ico{display:block}.wn-bell-badge{position:absolute;top:-3px;right:0;min-width:16px;height:16px;padding:0 4px;box-sizing:border-box;border-radius:999px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:800;line-height:16px;text-align:center;pointer-events:none;box-shadow:0 0 0 2px var(--bg-color, #0d1b2a)}.wn-bell-badge[hidden]{display:none}.wn-bell-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(420px,92vw);max-width:calc(100vw - 24px);max-height:60vh;overflow-y:auto;z-index:9700;background:var(--bg-color, #0d1b2a);border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 10px 30px #00000073;color:var(--text-color, #e0e1dd);font-family:var(--font-family, sans-serif);padding:8px}.wn-bell-panel[hidden]{display:none}.wn-bell-list{display:flex;flex-direction:column;gap:4px}.wn-bell-empty{padding:18px 12px;text-align:center;font-size:.85rem;opacity:.6}.wn-bell-item{display:flex;gap:9px;padding:9px 10px;border-radius:10px;background:#ffffff05}.wn-bell-item-unread{background:#22d3ee14;border-left:3px solid var(--highlight-color, #22d3ee);padding-left:7px}.wn-bell-item-emoji{flex-shrink:0;font-size:1rem;line-height:1.3}.wn-bell-item-body{min-width:0;flex:1 1 auto}.wn-bell-item-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.wn-bell-item-name{font-size:.82rem;font-weight:700;color:#fff;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere}.wn-bell-item-date{flex-shrink:0;font-size:.68rem;opacity:.55;white-space:nowrap}.wn-bell-item-summary{margin-top:2px;font-size:.76rem;line-height:1.4;opacity:.85}.wn-bell-item-nav{cursor:pointer;transition:background .15s ease,transform .15s ease}.wn-bell-item-nav:hover,.wn-bell-item-nav:focus-visible{background:#22d3ee24;transform:translate(2px);outline:none}.wn-bell-item-nav:focus-visible{box-shadow:0 0 0 2px var(--highlight-color, #22d3ee)}.wn-bell-item-cta{margin-top:5px;font-size:.72rem;font-weight:700;color:var(--highlight-color, #22d3ee);letter-spacing:.01em}.nav-focus-pulse{animation:nav-focus-pulse 2.2s ease-out 1;border-radius:12px}@keyframes nav-focus-pulse{0%{box-shadow:0 0 #22d3ee00}15%{box-shadow:0 0 0 4px #22d3ee73}to{box-shadow:0 0 0 4px #22d3ee00}}.wn-list{display:flex;flex-direction:column;gap:18px;margin-top:10px}.wn-entry{padding:16px 18px;border-radius:14px;background:#ffffff09;border:1px solid rgba(255,255,255,.08)}.wn-entry-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.wn-entry-title{margin:0;font-size:1.08rem;color:#fff;border:none;padding:0}.wn-entry-date{font-size:.8rem;opacity:.6;white-space:nowrap}.wn-entry-summary{margin:6px 0 10px;font-size:.95rem;line-height:1.55}.wn-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.wn-tag{font-size:.7rem;font-weight:700;padding:2px 9px;border-radius:999px;background:#22d3ee26;color:var(--highlight-color, #22d3ee)}.wn-tag-exp{background:#f59e0b2e;color:#fbbf24}.wn-entry-details{margin:0;padding-left:20px;line-height:1.55;font-size:.92rem}.wn-entry-details li{margin:4px 0}.wn-media{margin:12px 0 0}.wn-media img{display:block;width:100%;max-width:480px;border-radius:12px;box-shadow:0 6px 20px #0006}
