:root{--font-ui:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", "Courier New", Courier, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--line-height-tight:1.25;--line-height-normal:1.5;--color-bg:#fff;--color-surface:#f6f8fa;--color-surface-hover:#eaeef2;--color-border:#d0d7de;--color-border-muted:#e8ecf0;--color-text:#1f2328;--color-text-muted:#656d76;--color-text-on-accent:#fff;--color-accent:#0969da;--color-accent-hover:#0550ae;--color-accent-subtle:#ddf4ff;--color-chord:#0969da;--color-danger:#cf222e;--color-danger-hover:#a40e26;--color-overlay:#01040980;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--header-height:3.5rem;--panel-gap:2rem;--panel-padding:1.5rem;--content-top-offset:5rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px}body{font-family:var(--font-ui);font-size:var(--font-size-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);height:100%;min-height:100vh;color:var(--color-text);margin:0}#root{height:100%;min-height:100vh}code{font-family:var(--font-mono);font-size:var(--font-size-sm)}input:not([type=checkbox]),textarea{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);box-sizing:border-box;appearance:none;outline:none;transition:border-color .15s,box-shadow .15s}input:not([type=checkbox]):hover,textarea:hover{border-color:var(--color-text-muted)}input:not([type=checkbox]):focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}input:not([type=checkbox]):disabled{background-color:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}textarea{resize:vertical;line-height:var(--line-height-normal)}.ChordSheetResult{font-family:var(--font-mono)}button{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;appearance:none;border-radius:6px;justify-content:center;align-items:center;gap:.375rem;padding:.375rem .875rem;transition:background-color .1s,border-color .1s,color .1s;display:inline-flex}button:hover{background-color:var(--color-surface-hover)}button.btn-primary{color:var(--color-text-on-accent);background-color:var(--color-accent);border-color:var(--color-accent)}button.btn-primary:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}button.btn-danger{color:var(--color-danger);background-color:var(--color-bg);border-color:var(--color-border)}button.btn-danger:hover{color:var(--color-danger-hover);background-color:var(--color-surface);border-color:var(--color-danger)}.NotFound{width:100%;height:100%;padding:var(--panel-padding);justify-content:flex-start;align-items:flex-start;display:flex}.App{justify-content:flex-start;align-items:flex-start;gap:var(--panel-gap);width:100%;min-height:100vh;padding:var(--panel-padding);padding-top:calc(var(--header-height) + var(--space-6));box-sizing:border-box;display:flex}.ChordSheetEditor{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.SongTextRowContainer{margin-bottom:var(--space-1);min-height:var(--space-3);width:90%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);flex-direction:column;transition:background-color .1s;display:flex}.SongTextRowContainer:hover{background-color:var(--color-surface)}.ChordSheetFormContainer{margin-top:var(--space-4)}.ChordSheetFormContainer form{width:100%;height:100%}.ChordSheetEditor input{width:80%;margin-bottom:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background-color:#0000;border-color:#0000}.ChordSheetEditor input:hover{border-color:var(--color-border);background-color:var(--color-bg)}.ChordSheetEditor input:focus{border-color:var(--color-accent);background-color:var(--color-bg);box-shadow:0 0 0 3px var(--color-accent-subtle)}.ChordSheetEditor input.ChordInput{color:var(--color-chord);font-weight:var(--font-weight-medium)}.ChordSheetEditor button{margin-top:var(--space-4)}.ChordSheetEditor a{color:var(--color-accent);text-decoration:underline}.ResultButtons{align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.ResultButtons button{margin-right:0}.ChordInputContainer{align-items:center;display:flex;position:relative}.ChordInputContainer a{cursor:pointer;margin-left:var(--space-3)}.LyricInputContainer{align-items:center;display:flex;position:relative}.LyricInputContainer a{cursor:pointer;margin-left:var(--space-3)}.FixedHeader{width:100%;height:var(--header-height);z-index:10;background-color:var(--color-bg);border-bottom:1px solid var(--color-border-muted);padding:0 var(--panel-padding);box-sizing:border-box;flex-direction:row;justify-content:space-between;align-items:center;margin:0;display:flex;position:fixed;top:0;left:0}.HelpersBar{justify-content:flex-start;align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.HelpersBar input{width:1rem;height:1rem;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.HelpersBar label{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;white-space:nowrap;margin-right:var(--space-2);display:flex}.HelpersBar button{margin:0}.HelpersBar .toolbar-separator{background-color:var(--color-border);flex-shrink:0;width:1px;height:1.25rem}.Transposer{align-items:center;gap:var(--space-2);padding-left:var(--space-4);border-left:1px solid var(--color-border-muted);flex-shrink:0;display:flex}.TransposerKey{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);padding:var(--space-1) var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border-muted);border-radius:var(--radius-md);white-space:nowrap}.ChordSheetResult{min-width:0;padding-top:var(--space-4);flex:1}.ChordSheetText{margin-bottom:var(--space-6);line-height:var(--line-height-normal);font-size:var(--font-size-sm)}.ResultKey{font-family:var(--font-ui);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:var(--space-1) var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border-muted);border-radius:var(--radius-md);display:inline-block}.ChordSheetText b{color:var(--color-chord);font-weight:var(--font-weight-semibold)}.ChordSheetResult a{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;padding:.375rem .875rem;text-decoration:none;transition:background-color .1s,border-color .1s;display:inline-flex}.ChordSheetResult a:hover{background-color:var(--color-surface-hover);text-decoration:none}.SongTextInput{border-right:1px solid var(--color-border-muted);width:38%;padding-right:var(--panel-gap);flex-direction:column;flex-shrink:0;display:flex}.SongTextInputLabel{font-family:var(--font-ui);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-2);display:block}.SongTextInput textarea{box-sizing:border-box;flex:1;width:100%;min-height:60vh}.SongTextInput button{margin-top:var(--space-3)}.modal-overlay{z-index:100;background-color:var(--color-overlay);-webkit-backdrop-filter:blur(2px);width:100%;height:100%;position:fixed;top:0;left:0}.modal{z-index:101;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(90vw,28rem);padding:var(--space-8) var(--space-6) var(--space-6);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #01040929,0 2px 8px #01040914}.modal-close{top:var(--space-4);right:var(--space-4);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;line-height:1;transition:color .1s,background-color .1s;position:absolute}.modal-close:hover{color:var(--color-text);background-color:var(--color-surface);border-color:#0000}.ProcessChordLinesModal{text-align:center;font-family:var(--font-ui);font-size:var(--font-size-base);color:var(--color-text);line-height:var(--line-height-normal)}.ProcessChordLinesModalButtons{justify-content:center;gap:var(--space-3);width:100%;margin-top:var(--space-6);flex-direction:row;display:flex}.ProcessChordLinesModalButtons button{min-width:5rem}.EmptyState{text-align:center;padding:var(--space-12) var(--space-8);color:var(--color-text-muted);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.EmptyStateTitle{font-family:var(--font-ui);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0}.EmptyStateDescription{font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-normal);max-width:28rem;margin:0}.skip-link{top:-999px;left:var(--panel-padding);z-index:200;padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-on-accent);background-color:var(--color-accent);border-radius:var(--radius-md);text-decoration:none;position:absolute}.skip-link:focus{top:var(--space-3)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}button:active{transform:translateY(1px)}span[onClick],span[role=button]{border-radius:var(--radius-sm)}span[onClick]:focus-visible,span[role=button]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ChordSheetEditor a{transition:color .1s}.ChordSheetEditor a:hover{color:var(--color-accent-hover)}@media (max-width:768px){:root{--panel-padding:1rem;--panel-gap:1rem;--header-height:3rem}.App{padding-top:calc(var(--header-height) + var(--space-4));flex-direction:column}.SongTextInput{border-right:none;border-bottom:1px solid var(--color-border-muted);width:100%;padding-right:0;padding-bottom:var(--panel-gap)}.SongTextInput textarea{min-height:30vh}.ChordSheetEditor,.ChordSheetResult,.ChordSheetEditor input,.SongTextRowContainer{width:100%}.FixedHeader{padding:0 var(--panel-padding);overflow-x:auto}.HelpersBar label{font-size:var(--font-size-xs)}}
