.lyric-editor-container{border:1px solid var(--line,#e2e8f0);background-color:var(--paper,#fff);width:100%;color:var(--ink,#0f172a);box-sizing:border-box;border-radius:12px;flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.lyric-editor-container:focus-within{border-color:var(--accent,#3b82f6);box-shadow:0 0 0 3px var(--accent-soft,#3b82f626)}.lyric-editor-container.is-readonly{opacity:.85;background-color:var(--paper-soft,#f8fafc)}.lyric-editor-scroller{flex-direction:column;flex:1;width:100%;height:100%;display:flex;overflow:hidden}.lyric-editor-scroller .cm-editor{width:100%;height:100%;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);background-color:#0000;font-size:.95rem;line-height:1.6}.lyric-editor-scroller .cm-editor.cm-focused{outline:none}.lyric-editor-scroller .cm-scroller{-webkit-overflow-scrolling:touch;font-family:inherit;overflow:auto}.lyric-editor-scroller .cm-content{caret-color:var(--ink,#0f172a);padding:12px 16px}.lyric-editor-scroller .cm-line{padding:0}.lyric-editor-scroller .cm-gutters{background-color:var(--paper-soft,#f8fafc);color:var(--muted,#94a3b8);border-right:1px solid var(--line,#e2e8f0);-webkit-user-select:none;user-select:none;font-family:inherit;font-size:.85rem}.lyric-editor-scroller .cm-gutterElement{padding:0 8px 0 12px}.lyric-editor-scroller .cm-activeLine{background-color:var(--accent-soft,#3b82f60d)}.lyric-editor-scroller .cm-activeLineGutter{background-color:var(--accent-soft,#3b82f61a);color:var(--ink,#0f172a);font-weight:600}.lyric-editor-scroller .cm-lyric-chord{color:var(--chord,#d97706);background-color:var(--accent-soft,#d977061f);border-radius:4px;margin:0 1px;padding:1px 4px;font-weight:700}.lyric-editor-scroller .cm-lyric-chord-invalid{color:#ef4444;background-color:#ef444426;border-bottom:2px dashed #ef4444;border-radius:4px;margin:0 1px;padding:1px 4px;font-weight:700}.lyric-editor-scroller .cm-lyric-bracket-error{color:#fff;background-color:#ef4444;border-radius:4px;margin:0 1px;padding:1px 4px;font-weight:800;box-shadow:0 0 0 2px #ef444466}.lyric-editor-scroller .cm-lyric-label{color:#6366f1;background-color:#6366f11f;border-radius:4px;margin:0 1px;padding:1px 4px;font-style:italic;font-weight:600}.lyric-editor-scroller .cm-placeholder{color:var(--muted,#94a3b8);font-style:italic}
