:root{--text:#5b6b64;--text-h:#04231d;--bg:#fff;--border:#dbe8e2;--code-bg:#eef7f3;--accent:#0b7a5d;--accent-fg:#fff;--accent-bg:#0b7a5d1a;--accent-border:#0b7a5d80;--danger:#b3261e;--danger-bg:#b3261e1a;--danger-border:#b3261e80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9db3ac;--text-h:#eaf5f0;--bg:#0d1917;--border:#24413a;--code-bg:#162b25;--accent:#1fae86;--accent-fg:#04231d;--accent-bg:#1fae862e;--accent-border:#1fae8680;--danger:#e5847c;--danger-bg:#e5847c26;--danger-border:#e5847c80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.2px;margin:24px 0;font-size:40px}@media (width<=1024px){h1{margin:16px 0;font-size:28px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:22px;line-height:118%}p{margin:0}code{font-family:var(--mono);color:var(--text-h);background:var(--code-bg);border-radius:4px;padding:4px 8px;font-size:15px;line-height:135%;display:inline-flex}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea){border:1px solid var(--border);background:var(--bg);color:var(--text-h);font:inherit;border-radius:6px;padding:8px 10px;font-size:15px}:where(input[type=checkbox],input[type=radio]){accent-color:var(--accent)}::file-selector-button{border:1px solid var(--border);color:var(--text-h);font:inherit;cursor:pointer;background:0 0;border-radius:6px;margin-right:12px;padding:6px 14px}.app{text-align:left;box-sizing:border-box;width:100%;min-width:0;max-width:1400px;margin:0 auto;padding:32px}@media (width<=600px){.app{padding:16px}}.centered{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:70svh;display:flex}header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.legata-logo{color:var(--text-h);align-items:center;gap:10px;font-size:24px;font-weight:500;display:inline-flex}.legata-logo-icon{flex-shrink:0;width:32px;height:32px}.admin-badge{color:var(--text);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:13px}.tabs{border-bottom:1px solid var(--border);gap:8px;margin-bottom:24px;display:flex}.tab{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-right:20px;padding:10px 4px;font-weight:500}.tab.active{color:var(--text-h);border-bottom-color:var(--accent)}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field label{color:var(--text);font-size:13px}.field select,.field input{border:1px solid var(--border);background:var(--bg);color:var(--text-h);font:inherit;border-radius:6px;padding:8px 10px;font-size:15px}.primary-btn{background:var(--accent);color:var(--accent-fg);font-weight:500;font:inherit;cursor:pointer;border:none;border-radius:6px;padding:10px 20px}.primary-btn:disabled{opacity:.6;cursor:default}.secondary-btn{border:1px solid var(--border);color:var(--text-h);font-weight:500;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:8px 16px}.secondary-btn:disabled{opacity:.5;cursor:default}.secondary-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}a.secondary-btn{align-items:center;text-decoration:none;display:inline-flex}.danger-btn{border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);font-weight:500;font:inherit;cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px}.danger-btn:disabled{opacity:.5;cursor:default}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.row-actions.extend-access{flex-wrap:nowrap;align-items:center}.row-actions.extend-access>*{white-space:nowrap}.cell-email{overflow-wrap:anywhere}.cell-nowrap{white-space:nowrap}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:640px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 12px}.data-table th{color:var(--text);font-size:13px;font-weight:500}.badge{border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:13px;display:inline-block}.badge.status-pending,.badge.status-queue{color:var(--text)}.badge.status-approved,.badge.status-sent,.badge.status-verified,.badge.status-linked{color:var(--accent);background:var(--accent-bg);border-color:var(--accent-border)}.badge.status-rejected,.badge.status-not_sent{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-border)}.empty-state{text-align:center;color:var(--text);padding:32px 0}.error-banner{border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);border-radius:6px;margin-bottom:16px;padding:12px 16px}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:16px;display:flex}.pagination-status{color:var(--text);font-size:14px}.analytics-section+.analytics-section{margin-top:32px}.analytics-section h3{color:var(--text-h);margin:0 0 12px}.analytics-subtitle{color:var(--text);margin:-6px 0 12px;font-size:13px}.stat-cards{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.stat-card{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;min-width:140px;padding:16px 20px;display:flex}.stat-value{color:var(--text-h);font-size:28px;font-weight:600}.stat-label{color:var(--text);font-size:13px}.stat-label:first-letter{text-transform:uppercase}.note-text{white-space:pre-wrap;max-width:280px;color:var(--text);font-size:15px}.mappings-tab>.note-text{max-width:70ch}.mappings-tab>.note-text+.note-text{margin-top:10px}.import-stage{flex-direction:column;gap:16px;display:flex}.import-stage h3{margin:0}.import-stage h4{align-items:center;gap:8px;margin:0 0 4px;display:flex}.import-stage .note-text{max-width:70ch}.preflight-section{border:1px solid var(--border);border-radius:8px;padding:16px}.bulk-create-description{white-space:pre-line}.bulk-create-log{border:1px solid var(--border);border-radius:8px;max-height:280px;margin-top:16px;padding:8px 12px;font-size:14px;overflow-y:auto}.bulk-create-log-row{border-bottom:1px solid var(--border);align-items:baseline;gap:10px;padding:4px 0;display:flex}.bulk-create-log-row:last-child{border-bottom:none}.bulk-create-log-row .badge{flex:none}.bulk-create-log-title{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.bulk-create-log-message{color:var(--danger);flex:auto;font-size:13px}.info-banner,.warning-banner{border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--text-h);border-radius:6px;padding:12px 16px}.warning-banner{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.warning-banner ul{margin:0;padding-left:20px}.queue-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.queue-body{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=900px){.queue-body{grid-template-columns:minmax(0,1fr)}}.piece-card,.duplicate-panel{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.piece-card textarea{border:1px solid var(--border);background:var(--bg);color:var(--text-h);font:inherit;resize:vertical;border-radius:6px;padding:8px 10px;font-size:15px}.piece-card .row-actions input{border:1px solid var(--border);background:var(--bg);min-width:120px;color:var(--text-h);font:inherit;border-radius:6px;flex:1;padding:8px 10px;font-size:15px}.piece-card .signature-value{min-width:0;color:var(--text-h);flex:1;align-self:center;font-size:15px}.field-row{flex-wrap:wrap;gap:12px;display:flex}.field-row .field{flex:1;min-width:120px}.parts-table-scroll{max-height:280px;overflow-y:auto}.parts-table-scroll .sticky-thead th{background:var(--bg);z-index:1;position:sticky;top:0}.part-dropped td{opacity:.5;text-decoration:line-through}.part-dropped td button{opacity:1;text-decoration:none}.duplicate-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.duplicate-list li{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.duplicate-list li:last-child{border-bottom:none;padding-bottom:0}.queue-actions{background:var(--bg);border-top:1px solid var(--border);margin-top:4px;padding:12px 0;position:sticky;bottom:0}.merge-preview{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.merge-preview h4{margin:0}.merge-preview .data-table td:first-child{text-align:center;width:1%}.merge-preview .duplicate-list li{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.duplicate-candidates{flex-direction:column;gap:20px;margin-top:16px;display:flex}.duplicate-candidate{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.duplicate-candidate-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.duplicate-score{color:var(--text-h);font-size:20px}.duplicate-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=900px){.duplicate-pair{grid-template-columns:1fr}}.duplicate-side{border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:12px;display:flex}.duplicate-side h4{color:var(--text-h);margin:0}.duplicate-side-label{text-transform:uppercase;letter-spacing:.6px;font-size:13px}.duplicate-facts{flex-direction:column;gap:4px;width:100%;margin:0;display:flex}.duplicate-facts>div{grid-template-columns:120px 1fr;gap:8px;display:grid}.duplicate-facts dt{font-size:14px}.duplicate-facts dd{color:var(--text-h);overflow-wrap:anywhere;margin:0;font-size:15px}.duplicates-tab>.note-text,.pieces-tab>.note-text,.libraries-tab>.note-text,.composers-tab>.note-text{max-width:70ch}.duplicate-candidate-header .note-text{max-width:none}.duplicate-description{max-width:none;max-height:4.5em;margin:0;overflow:hidden}.field-inline{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.field-inline input[type=checkbox]{flex-shrink:0;margin-top:3px}.composers-tab .duplicate-list li>button{align-self:flex-start}
