@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Kalam:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Kalam:wght@400;700&family=Caveat:wght@700&display=swap";:root{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1b1b1f;background-color:#f7f7fb}*{box-sizing:border-box}body{margin:0;min-height:100vh}.layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-height:100vh;padding:16px;background:#f7f7fb;color:#1b1b1f}.panel{background:#fff;border:1px solid #e0e0e6;border-radius:12px;padding:16px;box-shadow:0 10px 30px #0000000d}.input-panel header h1{margin:0 0 4px;font-size:22px}.subhead{margin:0 0 12px;color:#555}.toolbar{display:flex;gap:8px;margin:8px 0 12px;flex-wrap:wrap}.toolbar button,.file-btn{border:1px solid #1f5fff;background:#1f5fff;color:#fff;border-radius:8px;padding:6px 10px;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.toolbar button:hover,.file-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #1f5fff33}.file-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.field-label{display:block;font-weight:600;margin-bottom:6px}textarea{width:100%;min-height:420px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:14px;border-radius:10px;border:1px solid #d5d5dd;padding:12px;resize:vertical;outline:none;background:#fafafb}textarea:focus{border-color:#1f5fff;box-shadow:0 0 0 3px #1f5fff26}.errors{margin-top:12px;border-radius:10px;border:1px solid #f6c9c9;background:#fff4f4;color:#8a1c1c;padding:10px 12px}.errors h2{margin:0 0 6px;font-size:14px}.errors ul{padding-left:18px;margin:0}.preview-panel{display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.header-actions{display:flex;align-items:center;gap:10px}.pill-toggle{display:inline-flex;border:2px solid #d1d5db!important;border-radius:999px;overflow:hidden;background:#fff!important}.pill-toggle button{border:none!important;background:#fff!important;padding:8px 16px;font-weight:600;color:#6b7280!important;cursor:pointer;transition:all .2s ease}.pill-toggle button.active{background:#1f5fff!important;color:#fff!important}.pill-toggle button:not(.active):hover{background:#f3f4f6!important;color:#374151!important}.pill-toggle button:focus-visible{outline:2px solid #1f5fff;outline-offset:2px}.preview-header h2{margin:0}.meta{color:#60606a;font-size:13px}.header-actions button{border:1px solid #1f5fff;background:#1f5fff;color:#fff;border-radius:8px;padding:6px 10px;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.header-actions button:disabled{opacity:.6;cursor:not-allowed}.header-actions button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 20px #1f5fff33}.library-panel{grid-column:1 / -1}.library-header{display:flex;justify-content:space-between;align-items:baseline}.library-list{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:6px}.library-list li{display:flex;align-items:center;justify-content:space-between;border:1px solid #e0e0e6;border-radius:8px;padding:8px 10px;background:#fafafb}.library-list li.active{border-color:#1f5fff;box-shadow:0 6px 18px #1f5fff24}.library-list .link{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:transparent;border:none;padding:0;cursor:pointer;text-align:left}.library-list .name{font-weight:700;color:#1b1b1f}.library-list .meta.small{font-size:12px}.library-list .delete{border:none;background:transparent;color:#9b1c1c;font-size:16px;cursor:pointer;padding:4px;line-height:1}.preview-surface{flex:1;min-height:520px;border:1px dashed #d4d4dc;border-radius:12px;background:#fff;overflow:auto;padding:8px}.preview-surface svg text{font-family:MuseJazz Text,Petaluma Text,Kalam,Caveat,Arial,sans-serif}.preview-surface .abcjs-chord{transform:translateY(6px);transform-box:fill-box;transform-origin:center}@media(max-width:1080px){.layout{grid-template-columns:1fr}.library-panel{grid-column:auto}}@media print{body{background:#fff}.layout{display:block;padding:0;gap:0}.input-panel,.header-actions button{display:none!important}.panel{box-shadow:none;border:none;padding:0}.preview-surface{border:none;min-height:auto;padding:0}}
