.editor-shell .material-symbols-outlined{font-family:Material Symbols Outlined,sans-serif;font-style:normal;font-weight:400;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga"}.editor-shell{display:flex;width:100%;height:100vh;overflow:hidden;background:transparent;position:relative}.editor-sidebar{width:260px;flex-shrink:0;background:var(--surface-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;height:100dvh;z-index:50;overflow-y:auto;transition:transform .3s ease;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.editor-sidebar::-webkit-scrollbar{width:4px}.editor-sidebar::-webkit-scrollbar-track{background:transparent}.editor-sidebar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}.editor-sidebar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.sidebar-logo-area{padding:28px 24px 16px;text-align:center}.sidebar-logo-link{text-decoration:none}.sidebar-logo-text{font-family:Manrope,sans-serif;font-size:1.8rem;font-weight:700;color:var(--text-bright);letter-spacing:-.03em;line-height:1}.sidebar-logo-o{color:var(--brand-primary)}.sidebar-tagline{font-family:JetBrains Mono,monospace;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary);opacity:.55;margin-top:4px}.sidebar-new-song-wrap{padding:0 20px 20px}.sidebar-new-song-btn{width:100%;padding:11px 16px;background:var(--brand-bright);color:var(--brand-on-primary);border:none;border-radius:8px;font-weight:700;font-size:.875rem;cursor:pointer;display:flex;align-items:center;gap:8px;justify-content:space-between;font-family:inherit;transition:box-shadow .2s ease,opacity .2s ease}.sidebar-new-song-btn:hover{box-shadow:0 0 16px color-mix(in srgb,var(--brand-bright) 45%,transparent);opacity:.92}.sidebar-new-song-btn .material-symbols-outlined{font-size:18px}.sidebar-mode-section{padding:16px 20px;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.sidebar-mode-sublabel{font-family:senrif,sans-serif;font-size:1rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px}.sidebar-mode-buttons{display:flex;gap:6px;padding:4px;background:var(--surface-hover);border:1px solid var(--border-primary);border-radius:10px}.sidebar-mode-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 8px;border:none;border-radius:7px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.sidebar-mode-btn .material-symbols-outlined{font-size:17px}.sidebar-mode-btn:hover:not(.active){background:var(--brand-soft);color:var(--text-bright)}.sidebar-mode-btn.active{background:var(--brand-primary);color:var(--brand-on-primary);box-shadow:0 2px 10px color-mix(in srgb,var(--brand-primary) 40%,transparent)}.sidebar-nav{padding:4px 0}.sidebar-nav-item{display:flex;align-items:center;gap:14px;padding:11px 24px;font-size:.88rem;color:var(--text-secondary);cursor:pointer;border-left:2px solid transparent;transition:color .15s ease,background .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-nav-item:hover{color:var(--text-bright);background:var(--surface-hover)}.sidebar-nav-item.active{color:var(--text-primary);border-left-color:var(--brand-primary);background:var(--brand-soft);font-weight:600}.sidebar-nav-item .material-symbols-outlined{font-size:20px;flex-shrink:0}.sidebar-nav-item.active .material-symbols-outlined,.sidebar-nav-item:hover .material-symbols-outlined{color:var(--brand-primary)}.sidebar-nav-item--blocked{opacity:.45;cursor:not-allowed;position:relative}.sidebar-nav-item--blocked:hover{opacity:.75;color:var(--text-secondary);background:color-mix(in srgb,var(--brand-primary) 3%,transparent)}.sidebar-nav-item--blocked:hover .material-symbols-outlined{color:inherit}.sidebar-nav-blocked-icon{font-size:14px!important;margin-left:auto;opacity:.7}[dir=rtl] .sidebar-nav-blocked-icon{margin-left:0;margin-right:auto}.sidebar-blocked-tooltip{position:fixed;transform:translateY(-50%);background:var(--surface-tooltip);color:var(--text-bright);font-size:.78rem;line-height:1.4;padding:8px 12px;border-radius:8px;white-space:nowrap;pointer-events:none;z-index:9999;border:1px solid color-mix(in srgb,var(--brand-primary) 30%,transparent);box-shadow:var(--shadow-tooltip)}.sidebar-blocked-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right:6px solid color-mix(in srgb,var(--brand-primary) 30%,transparent)}[dir=rtl] .sidebar-blocked-tooltip{transform:translateY(-50%)}[dir=rtl] .sidebar-blocked-tooltip:before{right:auto;left:100%;border-right-color:transparent;border-left-color:color-mix(in srgb,var(--brand-primary) 30%,transparent)}.sidebar-tutorial-btn-wrap{margin-top:auto;padding:4px 16px 8px}.sidebar-tutorial-btn{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:1px solid color-mix(in srgb,var(--brand-primary) 22%,transparent);border-radius:8px;color:var(--text-faint);padding:8px 14px;font-size:.82rem;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.sidebar-tutorial-btn .material-symbols-outlined{font-size:17px;color:color-mix(in srgb,var(--brand-primary) 60%,transparent)}.sidebar-tutorial-btn:hover{border-color:var(--scrollbar-thumb-hover);color:var(--brand-primary);background:var(--surface-hover)}.sidebar-tutorial-btn:hover .material-symbols-outlined{color:var(--brand-primary)}.sidebar-bottom{border-top:1px solid var(--border-subtle);padding:8px 0 calc(12px + env(safe-area-inset-bottom, 0px))}.sidebar-bottom,.sidebar-theme-toggle{display:flex;align-items:center;flex-shrink:0}.sidebar-theme-toggle{justify-content:center;width:36px;height:36px;margin:0 8px 0 24px;background:transparent;border:1px solid var(--border-primary);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.sidebar-theme-toggle:hover{background:var(--brand-soft);color:var(--brand-primary);border-color:var(--brand-primary)}.sidebar-theme-toggle .material-symbols-outlined{font-size:18px}[dir=rtl] .sidebar-theme-toggle{margin:0 24px 0 8px}.sidebar-bottom .sidebar-nav-item{flex:1 1}.sidebar-bottom-lang{padding:8px 20px 4px}.help-panel-lang .language-switcher{gap:6px}.help-panel-lang .lang-button{background:var(--surface-hover);color:var(--text-faint);border:1px solid color-mix(in srgb,var(--brand-primary) 20%,transparent);border-radius:6px;padding:5px 12px;font-size:.75rem;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-family:inherit;-webkit-backdrop-filter:none;backdrop-filter:none}.help-panel-lang .lang-button:hover{background:color-mix(in srgb,var(--brand-primary) 12%,transparent);border-color:color-mix(in srgb,var(--brand-primary) 45%,transparent);color:var(--text-bright);transform:none}.help-panel-lang .lang-button.active{background:color-mix(in srgb,var(--brand-primary) 16%,transparent);border-color:color-mix(in srgb,var(--brand-primary) 60%,transparent);color:var(--brand-primary);box-shadow:none}.sidebar-bottom-lang .language-switcher{gap:6px}.sidebar-bottom-lang .lang-button{background:var(--surface-hover);color:var(--text-faint);border:1px solid color-mix(in srgb,var(--brand-primary) 20%,transparent);border-radius:6px;padding:5px 12px;font-size:.75rem;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-family:inherit;-webkit-backdrop-filter:none;backdrop-filter:none}.sidebar-bottom-lang .lang-button:hover{background:color-mix(in srgb,var(--brand-primary) 12%,transparent);border-color:color-mix(in srgb,var(--brand-primary) 45%,transparent);color:var(--text-bright);transform:none}.sidebar-bottom-lang .lang-button.active{background:color-mix(in srgb,var(--brand-primary) 16%,transparent);border-color:color-mix(in srgb,var(--brand-primary) 60%,transparent);color:var(--brand-primary);box-shadow:none}.editor-workspace{margin-left:260px;display:flex;flex-direction:column;height:100vh;flex:1 1;overflow:hidden;background:var(--workspace-bg)}.editor-topbar{height:60px;display:flex;align-items:center;gap:16px;padding:0 24px;flex-shrink:0;background:transparent;position:relative;z-index:10}.editor-hamburger{display:none;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px}.editor-hamburger .material-symbols-outlined{font-size:24px}.editor-topbar-search{position:relative;flex:1 1;max-width:460px}.editor-topbar-search input{width:100%;background:var(--input-bg);border:none;border-bottom:1px solid var(--input-border);color:var(--text-primary);font-size:.875rem;padding:8px 12px 8px 36px;border-radius:8px 8px 0 0;font-family:inherit;outline:none;transition:border-color .2s ease,background .2s ease}.editor-topbar-search input:focus{border-color:var(--brand-primary);background:rgba(255,255,255,.06)}.editor-topbar-search .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:18px;pointer-events:none}.editor-topbar-icons{gap:16px;margin-left:auto}.editor-topbar-icon-btn,.editor-topbar-icons{display:flex;align-items:center;color:var(--text-secondary)}.editor-topbar-icon-btn{background:none;border:none;cursor:pointer;padding:4px;transition:color .15s ease;z-index:999}.editor-topbar-icon-btn:hover{color:var(--text-bright)}.editor-topbar-icon-btn .material-symbols-outlined{font-size:22px}.editor-main{flex:1 1;overflow-y:auto;padding:20px 32px 48px;display:flex;flex-direction:column;align-items:stretch;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.editor-main::-webkit-scrollbar{width:6px}.editor-main::-webkit-scrollbar-track{background:transparent}.editor-main::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.editor-main::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.editor-main-layout{width:100%;display:flex;gap:20px}.editor-main-layout,[dir=ltr] .editor-main{align-items:flex-start}[dir=rtl] .editor-main{align-items:flex-end}[dir=rtl] .editor-main-layout{direction:rtl}.editor-card{flex:1 1;min-width:0;width:100%;background:var(--surface-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-glass-top);border-left:1px solid var(--border-glass-side);border-right:1px solid var(--border-glass-bottom);border-bottom:1px solid var(--border-glass-bottom);border-radius:14px;min-height:75vh;display:flex;flex-direction:column;box-shadow:var(--shadow-card)}.editor-card,.editor-shell.jam-mode .editor-card{overflow-x:hidden;overflow-y:visible}.editor-card-header{padding:28px 32px 20px;border-bottom:3px solid rgba(177,177,177,.411);display:flex;flex-direction:column;gap:12px}.editor-card-title-input{background:transparent;border:none;outline:none;font-family:Manrope,Rubik,sans-serif;font-size:2.2rem;color:var(--text-primary);letter-spacing:-.02em;line-height:1.15;width:100%;padding:0}.editor-card-title-input::placeholder{color:var(--text-placeholder)}.editor-title-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:20px;max-width:100%}.auto-width-title-sizer{display:inline-grid;align-items:center;min-width:0;max-width:100%}.auto-width-title-sizer .editor-card-title-input,.auto-width-title-sizer:after{grid-area:1/1;min-width:0}.auto-width-title-sizer .editor-card-title-input{overflow:hidden;text-overflow:ellipsis}.auto-width-title-sizer:after{content:attr(data-value);visibility:hidden;white-space:pre;font-family:Manrope,Rubik,sans-serif;font-size:2.2rem;letter-spacing:-.02em}@media (max-width:768px){.auto-width-title-sizer:after{font-size:1.4rem}}.unsaved-badge{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:700;color:#bb933c;background:rgba(240,165,0,.15);border:1px solid rgba(240,165,0,.4);padding:3px 12px;border-radius:20px;white-space:nowrap;flex-shrink:0}.unsaved-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#f0a500;flex-shrink:0}.editor-card-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.editor-card-meta-field{display:flex;flex-direction:column;gap:2px}.editor-card-meta-label{font-family:JetBrains Mono,monospace;font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--brand-primary)}.editor-card-meta-value{font-size:1rem;color:var(--text-secondary)}.editor-card-meta-divider{width:1px;height:28px;background:rgba(58,74,72,.35);flex-shrink:0}.editor-meta-toggle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--brand-primary) 30%,transparent);background:color-mix(in srgb,var(--brand-primary) 5%,transparent);color:color-mix(in srgb,var(--brand-primary) 70%,transparent);cursor:pointer;padding:0;transition:background .15s,color .15s,border-color .15s;align-self:flex-start}.editor-meta-toggle:hover{background:var(--brand-soft-strong);color:var(--brand-primary);border-color:color-mix(in srgb,var(--brand-primary) 55%,transparent)}.editor-meta-toggle .material-symbols-outlined{font-size:15px;line-height:1}.editor-header-btn-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.editor-mobile-header-actions{display:flex;align-items:center;gap:8px}.editor-mobile-share-btn{display:none}@media (max-width:768px){.editor-mobile-share-btn{display:flex}}.editor-card-meta-edit{display:flex;flex-wrap:wrap;gap:16px 32px}.editor-meta-field{display:flex;flex-direction:column;gap:5px;min-width:120px;-webkit-margin-end:8px;margin-inline-end:8px}.editor-meta-input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text-primary);font-family:Manrope,sans-serif;font-size:.875rem;padding:6px 10px;outline:none;width:100%;transition:border-color .15s}.editor-meta-input:focus{border-color:color-mix(in srgb,var(--brand-primary) 45%,transparent)}.editor-meta-input--narrow{max-width:90px}.editor-meta-field--image{gap:6px}@media (max-width:768px){.editor-card-meta-edit{flex-direction:column}.editor-meta-field{max-width:180px}}.editor-meta-image-preview{width:52px;height:52px;object-fit:cover;border-radius:6px;border:1px solid rgba(58,74,72,.4)}.editor-meta-upload-row{display:flex;align-items:center;gap:6px}.editor-meta-upload-btn{display:inline-flex;align-items:center;padding:5px 12px;border-radius:6px;border:1px solid color-mix(in srgb,var(--brand-primary) 30%,transparent);color:color-mix(in srgb,var(--brand-primary) 80%,transparent);font-family:Manrope,sans-serif;font-size:.8rem;cursor:pointer;transition:background .15s;white-space:nowrap}.editor-meta-upload-btn:hover{background:var(--brand-soft)}.editor-meta-delete-image-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;padding:0;border-radius:6px;border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);background:transparent;color:var(--danger);cursor:pointer;transition:background .15s,border-color .15s}.editor-meta-delete-image-btn .material-symbols-outlined{font-size:16px}.editor-meta-delete-image-btn:hover{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.editor-meta-upload-error{font-size:.75rem;color:var(--danger)}.editor-jam-title{padding:20px 32px 14px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.editor-jam-title-info{min-width:0;flex:1 1}.editor-jam-back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:1px solid var(--border-primary);border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;position:relative;z-index:1}.editor-jam-back-btn:hover{background:var(--brand-soft);color:var(--brand-primary);border-color:var(--brand-primary)}.editor-jam-back-btn .material-symbols-outlined{font-size:20px}.editor-jam-title-text{font-family:Manrope,Rubik,sans-serif;font-size:2rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-jam-title-artist{font-family:Inter,sans-serif;font-size:.85rem;color:var(--text-secondary);margin-top:4px}@media (max-width:768px){.editor-jam-title{padding:12px 16px 10px}.editor-jam-title-text{font-size:1.4rem}}.editor-shell .editor-container,.editor-shell .editor-wrapper{padding:0;align-items:stretch}.editor-shell .editor-container,.editor-shell .editor-container-with-toggle,.editor-shell .editor-wrapper{width:100%;max-width:none;flex:1 1;display:flex;flex-direction:column}.editor-shell .editor-box{max-width:none!important;width:100%!important;border:none!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin:0!important;flex:1 1;display:flex;flex-direction:column}.editor-shell #editor{max-width:none;width:100%;flex:1 1;padding:14px 32px 40px;box-sizing:border-box;background-image:none}.editor-shell .title-container{display:none}.editor-shell #editor{color:var(--text-lyric);font-size:1.2rem;line-height:2.6}.editor-shell .chorded:before{background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important;color:var(--chord-color)!important;font-family:JetBrains Mono,monospace!important;font-weight:700!important;letter-spacing:.04em!important;bottom:72%!important}.editor-shell .editor:not(.jam) .chorded:before{font-size:1rem!important}.editor-shell .editor.jam .chorded:before{font-size:1rem!important;color:var(--chord-color)!important;font-family:JetBrains Mono,monospace!important}@media (max-width:768px){.editor-shell .editor.jam .chorded:before,.editor-shell .editor:not(.jam) .chorded:before{font-size:13px!important}}.editor-shell .chord-inline{color:var(--chord-color);font-family:JetBrains Mono,monospace;font-weight:700;letter-spacing:.04em;padding:0 3px;border-radius:4px;cursor:pointer;transition:background-color .15s;font-size:16px}.editor-shell .chord-inline:hover{background:var(--surface-hover)}@media (max-width:768px){.editor-shell .chord-inline{font-size:13px}}.editor-shell #chordInput{background:var(--surface-card-strong)!important;border-color:var(--brand-primary)!important;color:var(--text-primary)!important}.editor-shell .floating-editor-mode-toggle{background:rgba(16,16,16,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.09);border-radius:14px;box-shadow:var(--shadow-floating)}@media (min-width:769px){.editor-shell .floating-editor-mode-toggle{display:none!important}}[data-theme=light] .editor-shell .floating-editor-mode-toggle{background:rgba(255,253,247,.96);border:1px solid rgba(70,75,70,.12)}[data-theme=light] .editor-shell .floating-editor-mode-toggle .drag-handle{color:#aaa99f}[data-theme=light] .editor-shell .floating-editor-mode-toggle:active{box-shadow:0 4px 20px color-mix(in srgb,var(--brand-primary) 20%,transparent)}.mobile-undo-button{z-index:1000;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;background:rgba(16,16,16,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow-floating)}.mobile-undo-button .material-symbols-outlined{font-size:22px}[data-theme=light] .mobile-undo-button{background:rgba(255,253,247,.96);border:1px solid rgba(70,75,70,.12)}[data-theme=light] .editor-shell .floating-editor-mode-toggle .drag-handle:active{color:color-mix(in srgb,var(--brand-primary) 70%,transparent)}.editor-shell .floating-editor-mode-toggle:active{box-shadow:0 4px 20px rgba(0,242,234,.2)}.editor-shell .floating-editor-mode-toggle .drag-handle{color:rgba(185,202,200,.35)}.editor-shell .floating-editor-mode-toggle .drag-handle:active{color:rgba(0,221,214,.7)}.editor-shell .floating-editor-mode-toggle button{background:transparent;border-color:transparent;color:var(--text-secondary);font-size:.8rem}.editor-shell .floating-editor-mode-toggle button:hover:not(.active){background:var(--brand-soft);color:var(--text-bright);transform:none;box-shadow:none;border-color:transparent}.editor-shell .floating-editor-mode-toggle button.active{background:var(--brand-soft-strong);color:var(--brand-primary);border-color:rgba(0,242,234,.35);box-shadow:none;transform:none;font-weight:700}@media (max-width:768px){.editor-shell .floating-editor-mode-toggle{position:fixed!important;left:50%!important;right:auto!important;top:auto!important;bottom:calc(var(--kb-inset, 0px) + env(safe-area-inset-bottom, 0px) + 14px)!important;transform:translateX(-50%)!important;width:auto!important;height:auto!important;opacity:1!important;pointer-events:auto!important;display:flex!important;flex-direction:row!important;align-items:stretch;gap:4px;padding:4px!important;border-radius:16px!important;border:1px solid color-mix(in srgb,var(--brand-primary) 28%,transparent)!important;box-shadow:0 6px 20px rgba(0,0,0,.28),0 2px 6px rgba(0,0,0,.18)!important;z-index:180}.editor-shell .floating-editor-mode-toggle .drag-handle{display:none!important}.editor-shell .floating-editor-mode-toggle button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border-radius:12px!important;border-top:none!important;font-size:.78rem;font-weight:600;letter-spacing:.01em;transition:background .15s ease,color .15s ease}.editor-shell .floating-editor-mode-toggle button .material-symbols-outlined{font-size:18px;line-height:1}.editor-shell .floating-editor-mode-toggle button.active{background:var(--brand-primary)!important;color:var(--brand-on-primary)!important;box-shadow:0 2px 10px color-mix(in srgb,var(--brand-primary) 40%,transparent)}.editor-shell .floating-editor-mode-toggle button:active{background:var(--surface-hover)}}.editor-shell .chorded:hover:before{color:var(--chord-hover-color)!important;text-shadow:0 0 10px color-mix(in srgb,var(--chord-color) 65%,transparent)!important;cursor:pointer}.editor-floating-actions{position:fixed;bottom:40px;right:40px;display:flex;flex-direction:column;gap:14px;align-items:flex-end;z-index:100}.editor-floating-row{display:flex;gap:14px}.editor-fab{width:52px;height:52px;border-radius:50%;background:rgba(20,20,20,.85);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(0,242,234,.18);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.editor-fab:hover{color:var(--brand-primary);box-shadow:0 0 16px rgba(0,242,234,.35);border-color:rgba(0,242,234,.4)}.editor-fab .material-symbols-outlined{font-size:22px}.editor-fab-primary{display:flex;align-items:center;gap:10px;padding:14px 28px;background:var(--brand-bright);color:var(--brand-on-primary);font-weight:700;border:none;border-radius:9999px;cursor:pointer;font-family:inherit;font-size:.95rem;transition:box-shadow .2s ease,opacity .2s ease}.editor-fab-primary:hover{box-shadow:0 0 22px rgba(0,242,234,.55);opacity:.93}.editor-fab-primary .material-symbols-outlined{font-size:20px}.help-panel-overlay{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:249}.editor-help-panel{position:fixed;top:0;right:-360px;width:320px;height:100vh;height:100dvh;background:var(--surface-panel);border-left:1px solid rgba(58,74,72,.22);z-index:250;transition:right .28s ease;display:flex;flex-direction:column;overflow:hidden}.editor-help-panel.open{right:0}.help-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(58,74,72,.18);flex-shrink:0}.help-panel-title{font-weight:600;font-size:.95rem;color:var(--text-primary)}.help-panel-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .15s}.help-panel-close:hover{color:var(--text-bright)}.help-panel-close .material-symbols-outlined{font-size:20px}.help-panel-body{flex:1 1;overflow-y:auto;padding:24px}.help-panel-steps{list-style:decimal;padding-left:20px;display:flex;flex-direction:column;gap:16px;color:var(--text-secondary);font-size:.88rem;line-height:1.6}.help-panel-steps li{padding-left:6px}.help-panel-reset-btn{margin-top:24px;padding:8px 16px;background:color-mix(in srgb,var(--brand-primary) 10%,transparent);border:1px solid var(--scrollbar-thumb);border-radius:8px;color:var(--brand-primary);font-size:.8rem;cursor:pointer;font-family:inherit;transition:background .15s}.help-panel-reset-btn:hover{background:color-mix(in srgb,var(--brand-primary) 18%,transparent)}.help-panel-lang{padding:12px 24px 4px;border-top:1px solid rgba(58,74,72,.18);flex-shrink:0}.help-panel-footer{padding:12px 24px calc(24px + env(safe-area-inset-bottom, 0px));border-top:none;display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0}.help-panel-footer a{color:#64748b;text-decoration:none;font-size:.78rem;transition:color .15s}.help-panel-footer a:hover{color:var(--text-bright)}.help-panel-footer a.help-panel-delete-account{-webkit-margin-start:auto;margin-inline-start:auto;color:var(--danger);opacity:.75}.help-panel-footer a.help-panel-delete-account:hover{opacity:1;color:var(--danger)}.sidebar-jam-panel{flex:1 1;display:flex;flex-direction:column;overflow-y:auto;padding-bottom:8px}.sidebar-exit-jam-btn{display:flex;align-items:center;gap:10px;margin:4px 20px 16px;padding:11px 16px;background:var(--brand-bright);color:var(--brand-on-primary);border:none;border-radius:8px;font-family:inherit;font-size:.875rem;font-weight:700;cursor:pointer;transition:box-shadow .2s ease,opacity .2s ease;justify-content:center}.sidebar-exit-jam-btn:hover{box-shadow:0 0 16px color-mix(in srgb,var(--brand-bright) 45%,transparent);opacity:.92}.sidebar-exit-jam-btn .material-symbols-outlined{font-size:18px}.sidebar-jam-section{padding:12px 20px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:10px}.sidebar-jam-toggle-row{display:flex;align-items:center;gap:14px;padding:11px 20px;border-top:1px solid var(--border-primary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s ease}.sidebar-jam-toggle-row:hover{background:var(--surface-hover)}.sidebar-jam-row-icon{font-size:20px!important;color:var(--text-muted);flex-shrink:0;transition:color .15s ease}.sidebar-jam-toggle-row.on .sidebar-jam-row-icon{color:var(--brand-primary)}.sidebar-jam-row-label{flex:1 1;font-size:.88rem;color:var(--text-secondary);transition:color .15s ease}.sidebar-jam-toggle-row.on .sidebar-jam-row-label{color:var(--text-primary)}.sidebar-jam-switch{position:relative;width:32px;height:18px;flex-shrink:0;border-radius:9px;background:var(--input-border);border:1px solid var(--border-primary);transition:background .2s ease,border-color .2s ease}.sidebar-jam-switch:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--text-muted);top:2px;left:2px;transition:left .2s ease,background .2s ease}.sidebar-jam-toggle-row.on .sidebar-jam-switch{background:var(--brand-soft-strong);border-color:color-mix(in srgb,var(--brand-bright) 50%,transparent)}.sidebar-jam-toggle-row.on .sidebar-jam-switch:after{background:var(--brand-primary);left:16px}.sidebar-jam-sublabel{font-family:JetBrains Mono,monospace;font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.sidebar-jam-speed{padding:0 20px 10px;border-top:none}.sidebar-jam-slider{width:100%;height:4px;accent-color:var(--brand-primary);cursor:pointer;border-radius:2px}.sidebar-jam-chips{display:flex;gap:6px;flex-wrap:wrap}.sidebar-jam-chip{flex:0 0 auto;padding:6px 12px;border-radius:7px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-secondary);font-size:.78rem;font-family:inherit;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:center;white-space:nowrap}.sidebar-jam-chip:hover:not(.active){border-color:color-mix(in srgb,var(--brand-bright) 30%,transparent);color:var(--text-bright);background:color-mix(in srgb,var(--brand-bright) 6%,transparent)}.sidebar-jam-chip.active{background:var(--brand-soft-strong);border-color:color-mix(in srgb,var(--brand-bright) 50%,transparent);color:var(--brand-primary);font-weight:700}.sidebar-jam-chip--icon{flex:1 1;padding:7px;display:flex;align-items:center;justify-content:center}.sidebar-jam-chip--icon .material-symbols-outlined{font-size:18px}.sidebar-metronome-wrap{padding:10px 20px 14px}.sidebar-metronome-wrap .metronome-container{background:transparent!important;box-shadow:none!important;border:none!important;padding:0!important;position:static!important;border-radius:0!important;display:flex!important;width:100%;justify-content:center}.sidebar-metronome-wrap .metronome-controls{display:flex;align-items:center;justify-content:center;gap:6px}.sidebar-metronome-wrap .metronome-label{display:none}.sidebar-metronome-wrap .metronome-bpm-input{width:60px;background:color-mix(in srgb,var(--text-primary) 5%,transparent);border:1px solid var(--brand-primary);border-radius:7px;color:var(--brand-primary);font-size:.7rem;font-family:JetBrains Mono,monospace;font-weight:600;text-align:center;outline:none;transition:border-color .15s;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.sidebar-metronome-wrap .metronome-bpm-input::-webkit-inner-spin-button,.sidebar-metronome-wrap .metronome-bpm-input::-webkit-outer-spin-button{-webkit-appearance:none}.sidebar-metronome-wrap .metronome-bpm-input:focus{border-color:color-mix(in srgb,var(--brand-bright) 60%,transparent);background:color-mix(in srgb,var(--brand-bright) 6%,transparent)}.sidebar-metronome-wrap .metronome-bpm-input:after{content:"BPM"}.sidebar-metronome-wrap .metronome-bpm-wrap{display:flex;align-items:stretch;gap:2px}.sidebar-metronome-wrap .metronome-bpm-stepper{display:flex;flex-direction:column;gap:1px}.sidebar-metronome-wrap .metronome-bpm-step-btn{flex:1 1;display:flex;align-items:center;justify-content:center;width:18px;padding:0;border:1px solid var(--brand-primary);border-radius:4px;background:var(--input-bg);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.sidebar-metronome-wrap .metronome-bpm-step-btn .material-symbols-outlined{font-size:12px}.sidebar-metronome-wrap .metronome-bpm-step-btn:hover{border-color:color-mix(in srgb,var(--brand-bright) 30%,transparent);color:var(--text-bright);background:color-mix(in srgb,var(--brand-bright) 6%,transparent)}.sidebar-metronome-wrap .metronome-bpm-step-btn:active{background:var(--brand-soft-strong);color:var(--brand-primary)}.sidebar-metronome-wrap .metronome-bpm-scroller{display:none}.sidebar-metronome-wrap .metronome-play-button,.sidebar-metronome-wrap .metronome-save-tempo-button{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:7px;border-radius:7px;border:1px solid var(--brand-primary);background:var(--input-bg);color:var(--text-muted);font-family:inherit;cursor:pointer;transition:all .15s ease}.sidebar-metronome-wrap .metronome-play-button .material-symbols-outlined,.sidebar-metronome-wrap .metronome-save-tempo-button .material-symbols-outlined{font-size:18px}.sidebar-metronome-wrap .metronome-play-button:hover,.sidebar-metronome-wrap .metronome-save-tempo-button:hover{border-color:color-mix(in srgb,var(--brand-bright) 30%,transparent);color:var(--text-bright);background:color-mix(in srgb,var(--brand-bright) 6%,transparent)}.sidebar-metronome-wrap .metronome-play-button.playing{background:var(--brand-soft-strong);border-color:color-mix(in srgb,var(--brand-bright) 50%,transparent);color:var(--brand-primary);font-weight:700}.sidebar-metronome-wrap .metronome-close-button{display:none}[dir=rtl] .editor-sidebar{left:auto;right:0;border-right:none;border-left:1px solid rgba(58,74,72,.18)}[dir=rtl] .editor-sidebar .sidebar-nav-item{border-left:none;border-right:2px solid transparent}[dir=rtl] .editor-sidebar .sidebar-nav-item.active{border-right-color:var(--brand-primary)}[dir=rtl] .editor-workspace{margin-left:0;margin-right:260px}[dir=rtl] .editor-topbar-search input{padding:8px 36px 8px 12px}[dir=rtl] .editor-topbar-search .search-icon{left:auto;right:10px}[dir=rtl] .editor-floating-actions{right:auto;left:40px;align-items:flex-start}[dir=rtl] .editor-help-panel{right:auto;left:-360px;border-left:none;border-right:1px solid rgba(58,74,72,.22)}[dir=rtl] .editor-help-panel.open{left:0}[dir=rtl] .editor-card-header{text-align:right}@media (min-width:769px){.sidebar-jam-back-mobile{display:none}}.jam-mobile-bar,.jam-mobile-bar-wrapper{display:none}@media (max-width:768px){.jam-mobile-bar-wrapper{display:flex;flex-direction:column;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px rgba(0,0,0,.12);z-index:500}.jam-mobile-extras-row{display:flex;flex-direction:row;align-items:stretch;background:var(--surface-secondary);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid color-mix(in srgb,var(--brand-primary) 15%,transparent)}.jam-mobile-metronome-panel{flex:1 1;padding:10px 12px;border-right:1px solid var(--border-primary)}.jam-mobile-metronome-panel:only-child{border-right:none}.jam-mobile-metronome-panel .metronome-label{display:none}.jam-mobile-metronome-panel .metronome-controls{gap:var(--space-2);padding:4px}.jam-mobile-metronome-panel .metronome-bpm-wrap{display:flex;align-items:center;gap:4px}.jam-mobile-metronome-panel .metronome-bpm-stepper{display:none}.jam-mobile-metronome-panel .metronome-bpm-scroller{display:flex;align-items:center;justify-content:center;width:30px;height:34px;border-radius:8px;background:color-mix(in srgb,var(--brand-primary) 15%,transparent);border:1px solid color-mix(in srgb,var(--brand-primary) 40%,transparent);color:var(--brand-primary);touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.jam-mobile-metronome-panel .metronome-bpm-scroller .material-symbols-outlined{font-size:18px}.jam-mobile-metronome-panel .metronome-bpm-scroller.dragging,.jam-mobile-metronome-panel .metronome-bpm-scroller:active{background:color-mix(in srgb,var(--brand-primary) 28%,transparent)}.jam-mobile-speed-bar{flex:1 1;min-width:0;display:flex;align-items:center;gap:10px;padding:10px 16px}.jam-mobile-speed-icon-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid color-mix(in srgb,var(--brand-primary) 40%,transparent);border-radius:8px;background:color-mix(in srgb,var(--brand-primary) 15%,transparent);cursor:pointer;transition:background .15s ease}.jam-mobile-speed-icon-btn:active{background:color-mix(in srgb,var(--brand-primary) 28%,transparent)}.jam-mobile-speed-icon{font-size:18px;color:var(--brand-primary)}.jam-mobile-speed-slider{flex:1 1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;background:color-mix(in srgb,var(--brand-primary) 20%,transparent);border-radius:2px;outline:none}.jam-mobile-speed-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--brand-primary);cursor:pointer;box-shadow:0 0 6px color-mix(in srgb,var(--brand-primary) 40%,transparent)}.jam-mobile-speed-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--brand-primary);cursor:pointer;border:none}.jam-mobile-speed-val{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--brand-primary);min-width:16px;text-align:center;flex-shrink:0}.jam-mobile-bar{display:flex;height:64px;padding-bottom:env(safe-area-inset-bottom,0);background:var(--surface-secondary);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid color-mix(in srgb,var(--brand-primary) 15%,transparent);flex-direction:row;align-items:stretch}.jam-mobile-bar-wrapper .jam-mobile-btn{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;border-right:1px solid var(--border-primary);color:var(--text-muted);cursor:pointer;padding:9px 4px 10px;transition:color .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent;box-shadow:none;transform:none}.jam-mobile-bar-wrapper .jam-mobile-btn:last-child{border-right:none}.jam-mobile-bar-wrapper .jam-mobile-btn:active{background:color-mix(in srgb,var(--text-primary) 8%,transparent);box-shadow:none;transform:none}.jam-mobile-bar-wrapper .jam-mobile-btn.active{color:var(--brand-primary)}.jam-mobile-bar-wrapper .jam-mobile-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.jam-mobile-bar-wrapper .jam-mobile-btn .material-symbols-outlined{font-size:21px;line-height:1}.jam-mobile-btn-label{font-family:JetBrains Mono,monospace;font-size:.6rem;letter-spacing:.04em;text-transform:uppercase;line-height:1}.editor-shell.jam-mode .editor-main{padding-bottom:0}.sidebar-jam-back-desktop,.sidebar-jam-desktop-controls,.sidebar-jam-section--desktop-only,.sidebar-mode-section{display:none}.editor-sidebar{transform:translateX(-100%);z-index:200}.editor-sidebar.open{transform:translateX(0)}[dir=rtl] .editor-sidebar{transform:translateX(100%)}[dir=rtl] .editor-sidebar.open{transform:translateX(0)}.editor-sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:199}.editor-workspace{margin-left:0!important;margin-right:0!important}.editor-hamburger{display:flex}.editor-main{padding:0;overflow-y:auto}.editor-main-layout{flex:1 1;min-height:0;height:100%;flex-direction:column;gap:0;align-items:stretch}.editor-card{flex:1 1;min-height:0;border-radius:0;border-left:none;border-right:none;border-bottom:none;backdrop-filter:none;-webkit-backdrop-filter:none}.editor-shell.jam-mode .editor-main{overflow-y:auto}.editor-shell.jam-mode .editor-main-layout{height:auto;min-height:100%}.editor-shell.jam-mode .editor-card{flex:none;width:100%;min-height:100%;max-height:none;overflow:visible}.editor-card-title-input{font-size:1.6rem}.editor-card-header{padding:10px 16px 8px;border-bottom:none}.editor-card-title-input{font-size:1.4rem}.editor-card-meta-label{font-size:14px;font-weight:700}.editor-card-meta{gap:14px}.editor-card-meta-value{font-size:12px;font-weight:500}.editor-shell #editor{padding:12px 16px 80px}.editor-floating-actions{bottom:24px;right:16px}[dir=rtl] .editor-floating-actions{right:auto;left:16px}}[data-theme=light] .editor-shell .editor-card{border-radius:10px;box-shadow:var(--shadow-card);border-top:1px solid var(--border-glass-top);border-left:1px solid var(--border-glass-side);border-right:1px solid var(--border-glass-bottom);border-bottom:1px solid var(--border-glass-bottom);background-image:none;background-color:var(--surface-card);position:relative}[data-theme=light][dir=ltr] .editor-shell .editor-card:after{content:"";position:absolute;top:0;bottom:0;right:70px;width:1px;background:var(--paper-margin);pointer-events:none}[data-theme=light][dir=rtl] .editor-shell .editor-card:after{content:"";position:absolute;top:0;bottom:0;left:70px;width:1px;background:var(--paper-margin);pointer-events:none}[data-theme=light] .editor-shell #editor[empty]:before{color:var(--text-placeholder);font-style:italic;opacity:1}.editor-shell:not(.jam-mode) #editor{background-image:linear-gradient(to bottom,transparent 0,transparent calc(2.6em - 1px),var(--paper-line) calc(2.6em - 1px),var(--paper-line) 2.6em)!important;background-size:100% 2.6em;background-repeat:repeat;background-color:transparent}.editor-shell.jam-mode #editor{background-image:none!important;background-color:transparent}@media (max-width:768px){[data-theme=light] .editor-shell .editor-card{border-radius:0;box-shadow:none}[data-theme=light] .editor-shell .editor-card:after{display:none}}