/* Projects is a scoped part of the existing Portal, not a second shell. */
.projects-surface{min-width:0;max-width:100%;color:var(--text,#eeeef3);font-size:14px;line-height:1.5}
.projects-surface *, .projects-surface *::before, .projects-surface *::after{box-sizing:border-box}
.projects-surface [hidden]{display:none!important}
.projects-surface h2,.projects-surface h3,.projects-surface h4{margin:0 0 12px;overflow-wrap:anywhere}
.projects-surface p{margin:8px 0;overflow-wrap:anywhere}
.projects-header,.projects-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.projects-header{justify-content:space-between;margin-bottom:16px}
.projects-header h2{margin:0}
.projects-body,.projects-list,.projects-detail,.projects-import,.projects-preview-project,.projects-candidate{min-width:0;max-width:100%}
.projects-list{display:block;max-width:100%}.projects-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.projects-table caption{text-align:left;color:var(--muted,#aaa);padding:8px}.projects-table th,.projects-table td{padding:6px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line,#32323d);min-width:0}.projects-table th:first-child{width:25%}.projects-table th:nth-child(2){width:32%}.projects-table th:nth-child(3){width:14%}.projects-table th:nth-child(4){width:13%}.projects-table th:last-child{width:16%}.projects-table .projects-select{display:block;width:100%;text-align:left;font-size:12px;min-height:36px;padding:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projects-table .wave-block{width:100%;margin:0}.projects-table .waveform-v2{height:32px}.projects-table .wave-caption{display:none}.projects-table .wave-play{min-width:28px;flex-basis:28px;padding:0}.projects-table .projects-badge{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 4px}.projects-compact-stats{white-space:nowrap;font:11px monospace}.projects-row-actions{white-space:nowrap}.projects-table .projects-row-actions button{padding:3px;min-height:34px;min-width:28px;font-size:16px}.projects-type-cell{position:relative}.projects-type-cell .projects-warning{position:absolute;right:0;top:0;font-size:10px}.projects-table .projects-audio-status{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projects-detail .projects-actions{display:block}.projects-detail .projects-actions .wave-block{width:100%}.projects-version{padding:10px 0;border-bottom:1px solid var(--line,#32323d)}.projects-diagnostics{margin:12px 0}.projects-import-disclosure{margin-top:16px}.projects-catalog-status{font-size:12px;color:var(--muted,#aaa)}
@media(max-width:600px){.projects-version-count{display:none}.projects-table th,.projects-table td{padding:4px 2px}.projects-table .projects-row-detail{display:none}.projects-table th:first-child{width:24%}.projects-table th:nth-child(2){width:31%}.projects-table th:nth-child(3){width:14%}.projects-table th:nth-child(4){width:12%}.projects-table th:last-child{width:19%}.projects-table .projects-row-actions button{min-width:30px}.projects-table .projects-badge{font-size:9px}}
.projects-card,.projects-detail,.projects-import{border:1px solid var(--line,#32323d);border-radius:6px;padding:16px;background:var(--panel,#1a1a21)}
.projects-card{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px}
.projects-card .projects-select{flex:1 1 180px;min-width:0;text-align:left;white-space:normal;overflow-wrap:anywhere;font-weight:600}
.projects-card .projects-actions,.projects-card .projects-warning{width:100%;margin-top:6px}
.projects-surface button{min-height:38px;max-width:100%;white-space:normal;overflow-wrap:anywhere;cursor:pointer;border:1px solid var(--line,#32323d);border-radius:4px;background:var(--bg,#131318);color:inherit;padding:8px 12px;font:inherit;touch-action:manipulation}
.projects-surface button:disabled{opacity:.5;cursor:default}
.projects-surface button:focus-visible,.projects-surface input:focus-visible,.projects-surface select:focus-visible{outline:2px solid var(--accent,#b7a2ed);outline-offset:3px}
.projects-play,.projects-apply{color:var(--accent,#b7a2ed)!important;border-color:var(--accent,#b7a2ed)!important}
.projects-badge{display:inline-block;font-size:11px;border:1px solid var(--line,#32323d);border-radius:20px;padding:3px 7px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.projects-muted,.projects-status{color:var(--muted,#aaaab9);font-size:13px}
.projects-warning{color:#edc38e;font-size:13px}
.projects-error{color:#ffb7b7;border-left:3px solid #bb6262;padding:8px 12px;background:#bb626211}
.projects-path,.projects-result-row{font-family:var(--mono,monospace);font-size:12px;overflow-wrap:anywhere;word-break:break-word;user-select:text}
.projects-detail>.projects-back{margin-bottom:16px}
.projects-detail>.projects-badge{display:inline-block;margin-bottom:12px}
.projects-detail .projects-actions{margin:16px 0}
.projects-memberships{font-size:11px;font-weight:400;min-width:0;margin-top:6px}.projects-membership-link{display:inline-block;max-width:100%;color:var(--accent,#b7a2ed);border:1px solid var(--line,#32323d);border-radius:10px;padding:2px 6px;margin:2px;text-decoration:none;overflow-wrap:anywhere}.projects-parent-options,.projects-create{min-width:0;max-width:100%;padding:10px;margin:10px 0;border:1px solid var(--line,#32323d)}
.projects-import{margin-top:20px}
.projects-import>.projects-muted{max-width:78ch}
.projects-progress{width:100%;max-width:420px;margin:10px 0;accent-color:var(--accent,#b7a2ed)}
.projects-job-status{font-family:var(--mono,monospace);font-size:12px}
.projects-preview-project{margin-top:16px;padding-top:14px;border-top:1px solid var(--line,#32323d)}
.projects-candidate{border:1px solid var(--line,#32323d);padding:12px;border-radius:4px;margin:10px 0}
.projects-check{display:flex;align-items:flex-start;gap:10px;min-height:34px;cursor:pointer;overflow-wrap:anywhere}
.projects-check input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:var(--accent,#b7a2ed)}
.projects-check span{min-width:0}
.projects-field{display:flex;flex-direction:column;gap:5px;min-width:0;max-width:100%;margin:10px 0;color:var(--muted,#aaaab9);font-size:13px}
.projects-field select,.projects-field input{width:100%;min-width:0;max-width:100%;min-height:40px;border:1px solid var(--line,#32323d);border-radius:4px;padding:8px;background:var(--bg,#131318);color:var(--text,#eeeef3);font:inherit}
.projects-edit{padding:12px 0;margin:10px 0;border-block:1px solid var(--line,#32323d)}
.projects-edit>.projects-save{margin-right:8px}
.projects-song-options{min-width:0;padding:10px;margin:10px 0;border:1px solid var(--line,#32323d)}
.projects-import-results{margin-top:14px}
@media(max-width:600px){.projects-list{grid-template-columns:minmax(0,1fr)}.projects-card,.projects-detail,.projects-import{padding:12px}.projects-header{gap:8px}.projects-surface button{min-height:42px}.projects-edit-toggle{width:100%}.projects-field select,.projects-field input{font-size:16px}.projects-import>.projects-apply{width:100%;margin-top:10px}}

/* Transient owner intake stays outside Projects/navigation/player. */
.projects-import-dialog{width:min(640px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);margin:auto;padding:18px;border:1px solid var(--line,#32323d);border-radius:8px;background:var(--panel,#1a1a21);color:var(--text,#eeeef3);overflow:auto;overscroll-behavior:contain}
.projects-import-dialog::backdrop{background:#0009}
.archive-import-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.archive-import-header h2{margin:0}.archive-import-content{min-width:0}.archive-import-content>button{margin:4px 6px 4px 0}
.archive-folders{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;max-height:230px;overflow:auto}.archive-folders>button{text-align:left;min-width:80px}.archive-found-rows{margin:12px 0;max-height:45dvh;overflow:auto;border-block:1px solid var(--line,#32323d)}
.archive-found-row{display:grid;grid-template-columns:minmax(0,1fr) 42px 70px;gap:6px;align-items:center;min-width:0;padding:6px 0;border-bottom:1px solid var(--line,#32323d)}.archive-found-row:last-child{border-bottom:0}.archive-found-row .projects-check{align-items:center;margin:0;min-width:0;min-height:40px;gap:7px}.archive-found-row .projects-check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-row-kind,.archive-row-status{font-size:11px;color:var(--muted,#aaaab9)}
.archive-link-picker{grid-column:1/-1;min-width:0;font-size:12px}.archive-link-picker summary{cursor:pointer;overflow-wrap:anywhere;min-height:32px;padding:4px}.archive-link-picker input{width:100%;min-width:0;min-height:42px;border:1px solid var(--line,#32323d);background:var(--bg,#131318);color:inherit;font:inherit;padding:8px}.archive-link-results{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow:auto;padding-top:6px}.archive-link-results button{text-align:left}
.archive-diagnostics{margin:12px 0;font-size:12px}.archive-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;max-height:220px;overflow:auto}.archive-diagnostics summary{cursor:pointer;min-height:40px;padding:8px 0}.archive-report-row{font-size:12px;overflow-wrap:anywhere}.archive-job-status{font-size:12px}.projects-import-dialog:focus-visible{outline:2px solid var(--accent,#b7a2ed)}
@media(max-width:600px){.projects-import-dialog{padding:12px}.archive-found-row{grid-template-columns:minmax(0,1fr) 36px 64px}.archive-link-picker input{font-size:16px}.archive-found-row .projects-check{min-height:44px}.archive-import-header h2{font-size:20px}}

/* Filter choices always describe the complete catalog, not a rendered page. */
.projects-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin:0 0 10px}
.projects-filters .projects-field{flex:1 1 115px;margin:0;font-size:11px;gap:2px}
.projects-filters .projects-field select{font-size:12px;min-height:34px;padding:4px}
.projects-relative-path{display:block;max-width:100%;font:9px/1.3 var(--mono,monospace);color:var(--muted,#aaaab9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400}
.projects-detail-heading{display:flex;align-items:baseline;gap:16px;justify-content:space-between}
.projects-detail-heading h3{min-width:0;margin-bottom:0}.projects-detail-date{white-space:nowrap;color:var(--muted,#aaaab9);font:12px monospace}
.projects-detail>.projects-relative-path{margin:4px 0 12px}
.projects-table th:first-child{width:23%}.projects-table th:nth-child(2){width:12%}.projects-table th:nth-child(3){width:32%}.projects-table th:nth-child(4){width:15%}.projects-table th:nth-child(5){width:8%}.projects-table th:last-child{width:10%}
.projects-date-cell{font:11px monospace;white-space:nowrap}.projects-compact-stats{font-size:10px;overflow:hidden;text-overflow:ellipsis}.projects-table .projects-badge{border:0;border-radius:0}
.projects-table thead th{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.projects-table .wave-transport{gap:0}.projects-table .wave-play{min-height:32px;height:32px;border-radius:3px 0 0 3px}.projects-table .waveform-v2{border-radius:0 3px 3px 0}
@media(max-width:600px){
 .projects-filters{gap:6px}.projects-filters .projects-field{flex-basis:calc(50% - 6px)}
 .projects-table th:first-child{width:22%}.projects-table th:nth-child(2){width:18%}.projects-table th:nth-child(3){width:34%}.projects-table th:nth-child(4){width:18%}.projects-table th:last-child{width:8%}
 .projects-table th:nth-child(5),.projects-table .projects-type-cell{display:none}
 .projects-table .projects-row-edit,.projects-table .projects-attach{display:none}
 .projects-table th,.projects-table td{padding:5px 1px}
 .projects-date-cell{font-size:9px}.projects-compact-stats{font-size:8px}.projects-version-count{display:none}
 .projects-table .projects-select{font-size:11px;padding:0;min-height:30px}
 .projects-table .projects-row-actions button{min-width:24px;width:24px;padding:0}
 .projects-table .wave-play{min-width:24px;flex-basis:24px}
 .projects-table .waveform-v2{min-width:0}
}

/* Projects: explicit semantic columns; row waveforms stay lightweight. */
.projects-table th:nth-child(n){width:auto}
.projects-table th:nth-child(1){width:10%}
.projects-table th:nth-child(2){width:25%}
.projects-table th:nth-child(3){width:32%}
.projects-table th:nth-child(4){width:8%}
.projects-table th:nth-child(5){width:11%}
.projects-table th:nth-child(6){width:6%}
.projects-table th:nth-child(7){width:8%}
.projects-table .projects-date-cell,.projects-table .projects-duration-cell,.projects-table .projects-versions-cell{font:11px monospace;white-space:nowrap}
.projects-table .projects-title-cell{overflow:hidden}
.projects-table .projects-select{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;text-align:left;min-height:24px;border:0;background:none}
.projects-table .projects-path{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:16px;margin:0;color:var(--muted)}
.projects-table .wave-caption{display:none}
.projects-table .waveform-v2{height:40px!important;min-height:40px}
.projects-table .wave-play{height:40px;min-height:40px}
.projects-table .projects-row{content-visibility:auto;contain-intrinsic-size:auto 52px}
.projects-table .projects-row-actions{white-space:nowrap}
.projects-table .projects-compact-stats{font-size:11px}
.waveform-v2[data-status="pending"]::after{content:'Preparing waveform';font-size:10px;color:var(--muted)}
@media(max-width:600px){
 .projects-table th:nth-child(5),.projects-table th:nth-child(6),.projects-table .projects-compact-stats,.projects-table .projects-versions-cell{display:none}
 .projects-table th:nth-child(1){width:17%}.projects-table th:nth-child(2){width:29%}.projects-table th:nth-child(3){width:34%}.projects-table th:nth-child(4){width:10%}.projects-table th:nth-child(7){width:10%}
 .projects-table .projects-date-cell{font-size:9px;white-space:normal;overflow-wrap:anywhere}
 .projects-table .projects-duration-cell{font-size:9px}
 .projects-table .projects-path{font-size:9px}
 .projects-table .projects-row-actions button{min-width:20px;width:20px}
}

/* One metadata group at a time, keeping the waveform wide. */
.projects-filters{display:flex;flex-wrap:wrap;align-items:end;gap:8px}
.projects-year-rail{display:flex;flex:0 0 100%;gap:3px;overflow-x:auto;white-space:nowrap;padding:2px 0 7px;scrollbar-width:thin}
.projects-year-rail button,.projects-column-groups button{border:0;background:transparent;color:var(--muted);padding:6px 9px;min-height:32px;flex:none}
.projects-year-rail button.active,.projects-column-groups button.active{color:var(--text,#fff);background:var(--panel,#22222c);box-shadow:inset 0 -2px var(--purple,#a98aff)}
.projects-column-groups{display:flex;gap:2px;margin-left:auto;align-self:end}
.projects-table th:nth-child(1){width:9%}.projects-table th:nth-child(2){width:23%}.projects-table th:nth-child(3){width:42%}
.projects-table th:nth-child(4),.projects-table th:nth-child(5),.projects-table th:nth-child(6){width:6%}.projects-table th:nth-child(7){width:8%}
.projects-group-cell{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.projects-tag-cell{color:var(--purple,#b8a1f0)}
.projects-table .projects-relative-path{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:normal;line-height:15px;color:var(--muted)}
@media(max-width:600px){
 .projects-filters .projects-field{min-width:0;flex:1}
 .projects-year-rail button{padding:5px 8px}
 .projects-column-groups{margin-left:0;flex:0 0 100%;justify-content:flex-end}
 .projects-table tr>*:nth-child(5),.projects-table tr>*:nth-child(6){display:none}
 .projects-table th:nth-child(1){width:15%}.projects-table th:nth-child(2){width:25%}.projects-table th:nth-child(3){width:36%}.projects-table th:nth-child(4){width:16%}.projects-table th:nth-child(7){width:8%}
 .projects-group-cell{font-size:10px}
 .projects-table .projects-relative-path{font-size:9px}
}

@media(max-width:600px){
 .projects-table th:nth-child(1){width:18%}.projects-table th:nth-child(2){width:22%}
 .projects-table .projects-date-cell{font-size:9px;white-space:nowrap;overflow-wrap:normal}
 .projects-table thead th:nth-child(2){font-size:0}
 .projects-table thead th:nth-child(2)::after{content:'Title';font-size:11px}
}

.projects-audio-rail{display:flex;gap:3px;align-self:end}
.projects-audio-rail button{border:0;min-height:32px;padding:6px 10px;background:transparent;color:var(--muted)}
.projects-audio-rail button.active{background:var(--panel,#22222c);color:var(--text,#fff);box-shadow:inset 0 -2px var(--purple,#a98aff)}
.projects-table .projects-edit-date{border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;min-height:28px;white-space:nowrap}
.projects-edit-date:hover{text-decoration:underline}
.projects-no-audio-kind{display:block;font-size:10px;font-weight:normal;color:var(--muted)}
.project-date-dialog{color:var(--text,#eee);background:var(--panel,#22222c);border:1px solid var(--line,#444);border-radius:10px;padding:20px;width:min(420px,calc(100vw - 24px));box-sizing:border-box}
.project-date-dialog input{box-sizing:border-box;width:100%;padding:10px;font-size:16px;background:var(--bg,#15151b);color:inherit;border:1px solid var(--line,#444)}
.project-date-dialog p{font-size:13px}.project-date-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.project-date-dialog button{padding:8px 12px;min-height:36px}
@media(max-width:600px){.projects-audio-rail{flex:0 0 100%}.projects-table .projects-edit-date{font-size:9px;min-height:32px}}

.projects-audio-rail button,.projects-column-groups button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;padding:0;border-radius:4px}
.projects-audio-rail button svg,.projects-column-groups button svg{display:block;pointer-events:none}

.projects-merge-toggle,.projects-merge-tray button,.project-merge-dialog button,.projects-undo-merge{display:inline-flex;align-items:center;justify-content:center;width:34px;min-width:34px;height:34px;padding:0;border:0;border-radius:4px;background:var(--panel,#22222c);color:var(--text,#eee)}
.projects-merge-toggle[aria-pressed="true"]{color:var(--purple,#b8a1f0);box-shadow:inset 0 -2px currentColor}
.projects-table .projects-merge-checkbox{appearance:auto;display:inline-block;width:16px;height:16px;vertical-align:middle;accent-color:var(--purple,#b8a1f0);margin:0 5px 0 0}
.projects-table .projects-merge-checkbox+.projects-select{max-width:calc(100% - 24px)}
.projects-merge-tray{position:fixed;right:16px;bottom:calc(180px + env(safe-area-inset-bottom,0px));width:300px;max-height:45vh;z-index:35;box-sizing:border-box;padding:12px;background:var(--panel,#22222c);color:var(--text,#eee);border:1px solid var(--line,#444);border-radius:10px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;gap:8px}
.projects-merge-tray-heading,.projects-merge-tray-footer,.project-merge-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.projects-merge-selected{overflow:auto}.projects-merge-item{display:flex;gap:5px;align-items:center;padding:6px 0}.projects-merge-item>div{min-width:0;flex:1}.projects-merge-item small,.projects-merge-item span{display:block}.projects-merge-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.projects-merge-item small,.projects-merge-tray-footer small{color:var(--muted);font-size:10px}.projects-merge-item.primary span{color:var(--purple,#b8a1f0)}
.project-merge-dialog{box-sizing:border-box;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto;color:var(--text,#eee);background:var(--panel,#22222c);border:1px solid var(--line,#444);border-radius:10px;padding:18px}.project-merge-dialog h3{margin:0}.project-merge-dialog p{font-size:13px}.project-merge-dialog ul{max-height:30vh;overflow:auto;font-size:12px}.projects-merge-status{white-space:pre-line}
.projects-idea-counts{display:block;font-size:10px;font-weight:normal;color:var(--muted)}.projects-idea-sets,.projects-idea-audio{margin-top:16px}.projects-idea-set{padding:8px 0;border-bottom:1px solid var(--line,#333)}.projects-idea-work h5{font-size:14px;margin:14px 0 6px}.projects-idea-tags{font-size:11px;color:var(--purple,#b8a1f0)}.projects-idea-work .projects-version{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.projects-idea-work .projects-version>span:first-child{width:100%;font-size:11px;color:var(--muted)}.projects-idea-work .waveform-v2{flex:1;min-width:0}
@media(max-width:600px){.projects-merge-tray{left:10px;right:10px;width:auto;max-height:38vh}.projects-merge-tray button,.project-merge-dialog button{min-width:36px;width:36px;height:36px}}

.project-date-dialog .project-date-actions button{display:inline-flex;justify-content:center;align-items:center;min-width:36px;width:36px;padding:0}

.projects-idea-work .projects-version{align-items:flex-start}
.projects-idea-work .wave-block{flex:1 1 calc(100% - 44px);min-width:0;width:auto;margin:0}
.projects-idea-work .projects-playlist-add{flex:0 0 34px;width:34px;height:40px;min-height:40px;padding:0;align-self:flex-start}
.projects-idea-work-heading{display:flex;gap:8px;align-items:center}.projects-idea-work-heading h5{margin:12px 0}.projects-idea-work-heading .projects-audio-date{width:30px;height:30px;min-height:30px;padding:0;border:0}
.projects-table .projects-title-cell:has(.projects-merge-checkbox){position:relative;padding-left:24px}
.projects-table .projects-title-cell .projects-merge-checkbox{position:absolute;left:4px;top:15px;margin:0}
.projects-table .projects-merge-checkbox+.projects-select{max-width:100%}

/* Explicit column budget: source dates never expand, right-hand fields scroll rather than disappear. */
.projects-body,.projects-list{min-width:0;max-width:100%}.projects-list{overflow-x:auto;overscroll-behavior-x:contain}
.projects-table{min-width:calc(914px + var(--projects-title-width,220px));table-layout:fixed;width:100%}
.projects-table col.projects-col-date{width:94px}.projects-table col.projects-col-title{width:var(--projects-title-width,220px)}.projects-table col.projects-col-duration{width:64px}
.projects-table col.projects-col-tags{width:140px}.projects-table col.projects-col-genre{width:112px}.projects-table col.projects-col-instruments{width:120px}.projects-table col.projects-col-rating{width:72px}.projects-table col.projects-col-actions{width:100px}
.projects-table tr>*{display:table-cell!important}.projects-table th{width:auto!important;font-size:11px!important}.projects-table thead th{position:relative;height:32px;white-space:nowrap}.projects-table thead th::after{content:none!important}
.projects-table .projects-date-cell{width:94px;min-width:94px;max-width:94px;font:11px monospace!important;white-space:nowrap}
.projects-table .projects-header-sort{color:inherit;border:0;background:none;padding:0;margin:0;font:inherit;font-weight:600;text-align:left;cursor:pointer;min-height:28px;min-width:0;white-space:nowrap;max-width:100%}
.projects-table .projects-header-sort[data-sort-direction="ascending"]::after{content:' ↑';color:var(--purple,#b8a1f0)}.projects-table .projects-header-sort[data-sort-direction="descending"]::after{content:' ↓';color:var(--purple,#b8a1f0)}
.projects-title-resizer{position:absolute;top:0;bottom:0;right:0;width:7px;cursor:col-resize;touch-action:none;border-right:1px solid var(--line,#444)}.projects-title-resizer:focus{outline:1px solid var(--purple,#b8a1f0)}
.projects-facet-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.projects-duration-cell{font:11px monospace;white-space:nowrap}
.projects-facet-edit{display:block;width:100%;max-width:100%;border:0;background:none;color:inherit;font:inherit;padding:0;min-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}.projects-facet-edit:hover{color:var(--purple,#b8a1f0)}
.project-facet-row,.project-band-rail{display:flex;align-items:center;gap:5px;flex-wrap:nowrap;max-width:100%;overflow-x:auto;padding:4px 0;scrollbar-width:thin}.project-facet-field{display:inline-flex;align-items:center;flex:none;gap:1px}.project-facet-row button,.project-band-rail button,.project-facet-popover button{color:var(--text,#eee);background:transparent;border:0;min-height:32px}
.project-facet-row button,.project-band-rail button:not(.project-band-value){display:inline-flex;justify-content:center;align-items:center;width:32px;min-width:32px;flex:none;padding:0;border-radius:4px}.project-facet-row .project-facet-clear{width:22px;min-width:22px;opacity:.7}.project-facet-row .project-facet-clear:disabled{opacity:.2}.project-facet-count{font:9px monospace;margin-left:2px}
.project-facet-row [aria-pressed="true"],.project-band-rail [aria-pressed="true"],.project-facet-value[aria-pressed="true"]{background:var(--panel,#25252e);color:var(--purple,#b8a1f0);box-shadow:inset 0 -2px currentColor}
.project-band-value{padding:4px 9px;white-space:nowrap;flex:none;font-size:12px}
.project-facet-popover{z-index:70;box-sizing:border-box;background:var(--panel,#22222c);color:var(--text,#eee);border:1px solid var(--line,#444);border-radius:8px;padding:10px;box-shadow:0 8px 30px #0006;max-height:330px;overflow:auto}.project-facet-popup-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px}.project-facet-popup-heading button{width:30px;padding:0}.project-facet-popover input{box-sizing:border-box;width:100%;margin:5px 0;background:var(--bg,#15151b);color:inherit;border:1px solid var(--line,#444);padding:7px;font-size:16px}.project-facet-values{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.project-facet-option{display:inline-flex;max-width:100%}.project-facet-option button{padding:5px 8px;font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.project-facet-option svg{pointer-events:none}
@media(max-width:600px){.projects-table th,.projects-table td{padding:6px}.projects-table .projects-edit-date{font-size:11px}.projects-table .projects-title-cell:has(.projects-merge-checkbox){padding-left:24px}.projects-column-groups{display:none}.project-facet-row{gap:3px}}

.project-facet-editor{box-sizing:border-box;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto;color:var(--text,#eee);background:var(--panel,#22222c);border:1px solid var(--line,#444);border-radius:10px;padding:16px}
.project-facet-editor-heading,.project-facet-editor-footer,.project-facet-new-value{display:flex;gap:8px;justify-content:space-between;align-items:center}.project-facet-editor-heading h3{font-size:15px;margin:0}.project-facet-editor h4{font-size:13px;margin:12px 0 8px}
.project-facet-editor button{border:0;background:transparent;color:inherit;min-height:34px}.project-facet-editor-heading button,.project-facet-editor-footer button,.project-facet-editor-tabs button,.project-facet-new-value button,.project-collection-projects>button,.project-facet-editor>button{display:inline-flex;justify-content:center;align-items:center;min-width:34px;width:34px;padding:0;border-radius:4px}
.project-facet-editor-tabs{display:flex;gap:6px;margin-top:12px}.project-facet-editor [aria-pressed="true"]{color:var(--purple,#b8a1f0);background:var(--bg,#15151b);box-shadow:inset 0 -2px currentColor}.project-facet-editor-values{display:flex;flex-wrap:wrap;gap:5px;max-height:35vh;overflow:auto}.project-facet-editor .project-facet-choice{padding:5px 9px;font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.project-facet-editor input[type="text"],.project-facet-editor input[type="search"]{box-sizing:border-box;width:100%;background:var(--bg,#15151b);color:inherit;border:1px solid var(--line,#444);padding:8px;font-size:16px;min-width:0}.project-facet-new-value{margin-top:12px}.project-facet-editor-footer{margin-top:12px}.project-facet-editor-footer small,.project-collection-counter{font-size:10px;color:var(--muted)}.project-facet-editor-status{font-size:12px;color:var(--muted);white-space:pre-line}
.project-collection-body{display:flex;flex-direction:column;gap:10px;margin-top:12px}.project-collection-band{display:flex;align-items:center;gap:8px;font-size:13px}.project-collection-projects{max-height:40vh;overflow:auto}.project-collection-item{display:flex;align-items:center;gap:8px;padding:5px 2px;font-size:12px}.project-collection-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-facet-editor input[type="checkbox"]{appearance:auto;accent-color:var(--purple,#b8a1f0);width:16px;height:16px;flex:none}
.projects-detail-facets{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0}.projects-detail-facet{min-width:90px;max-width:280px}.projects-detail-facet small{display:block;font-size:10px;color:var(--muted)}

.project-facet-row .projects-audio-rail{flex:0 0 auto;align-self:auto;gap:1px;margin-right:5px}.project-facet-row .projects-audio-rail button{width:32px;min-width:32px}

/* Incremental canonical rows: compact optional parameters, unboxed values. */
html.projects-scroll,html.projects-scroll body{overflow-anchor:none}
.projects-surface{--projects-date-width:88px}.projects-column-groups{display:flex!important;gap:3px;margin-left:auto}.projects-column-group[aria-pressed="true"]{color:var(--accent);background:var(--tint)}
.project-facet-row .projects-audio-rail{margin-right:22px;padding-right:9px;border-right:1px solid var(--line)}
.projects-table{min-width:calc(450px + var(--projects-title-width,260px))}.projects-table[data-columns="tags"]{min-width:calc(820px + var(--projects-title-width,260px))}.projects-table[data-columns="audio"],.projects-table[data-columns="work"]{min-width:calc(570px + var(--projects-title-width,260px))}
.projects-table col.projects-col-select{width:24px}.projects-table col.projects-col-date{width:var(--projects-date-width)}.projects-table col.projects-col-title{width:var(--projects-title-width,260px)}.projects-table col.projects-col-duration{width:58px}.projects-table col.projects-col-actions{width:72px}.projects-table col.projects-col-tags{width:130px}.projects-table col.projects-col-genre{width:104px}.projects-table col.projects-col-instruments{width:74px}.projects-table col.projects-col-rating{width:76px}.projects-table col.projects-col-bpm{width:54px}.projects-table col.projects-col-key{width:55px}.projects-table col.projects-col-work{width:85px}.projects-table col.projects-col-versions{width:65px}
.projects-table .projects-date-cell{width:var(--projects-date-width);min-width:var(--projects-date-width);max-width:var(--projects-date-width);vertical-align:top;padding-top:12px;padding-bottom:24px}.projects-table .projects-title-cell{overflow:visible;position:relative;padding-top:8px;padding-bottom:8px}.projects-table .projects-select{min-height:24px;padding-top:0;padding-bottom:0}
.projects-table .projects-title-cell .projects-relative-path{position:relative;margin-left:calc(-1 * var(--projects-date-width));width:calc(100% + var(--projects-date-width));max-width:none;font-size:9px;line-height:14px;margin-top:3px;pointer-events:auto}.projects-table .projects-idea-counts{font-size:9px;margin:1px 0;color:var(--muted)}
.projects-table .projects-selection-cell{padding:8px 3px;vertical-align:top}.projects-table .projects-merge-checkbox{appearance:auto;width:15px;height:15px;min-width:0;margin:8px 0 0;accent-color:var(--accent);opacity:0;pointer-events:none}.projects-row:hover .projects-merge-checkbox,.projects-row:focus-within .projects-merge-checkbox,.projects-table .projects-merge-checkbox:checked{opacity:1;pointer-events:auto}
.projects-table .projects-facet-edit,.projects-detail-facets .projects-facet-edit{border:0!important;background:transparent!important;box-shadow:none!important;min-height:0;padding:0;margin:0;border-radius:0;white-space:normal;text-align:left;color:inherit;overflow:hidden;font:inherit}.projects-table .projects-facet-edit{max-height:34px;width:100%}
.projects-value-content{display:inline-flex;align-items:center;max-width:100%}.projects-tag-values{display:flex;flex-wrap:wrap;align-content:flex-start;gap:2px;max-height:34px;overflow:hidden}.projects-notion-tag{display:inline-block;flex:0 0 auto;width:fit-content;max-width:100%;padding:1px 5px;border-radius:3px;border:0;font:10px/14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.projects-notion-tag[data-color="gray"]{background:#353538;color:#d0d0d4}.projects-notion-tag[data-color="brown"]{background:#47372d;color:#d8b39b}.projects-notion-tag[data-color="orange"]{background:#543b27;color:#efb57d}.projects-notion-tag[data-color="yellow"]{background:#50482b;color:#e4cd79}.projects-notion-tag[data-color="green"]{background:#293e36;color:#99cbb0}.projects-notion-tag[data-color="blue"]{background:#293b50;color:#9ac4ee}.projects-notion-tag[data-color="purple"]{background:#40304d;color:#c6a5e0}.projects-notion-tag[data-color="pink"]{background:#4b3040;color:#e0a7c6}.projects-notion-tag[data-color="red"]{background:#51302f;color:#e7a3a0}
.projects-rating-stars{color:#dfb54f;font-size:13px;letter-spacing:.4px;white-space:nowrap}.projects-instrument-icons{display:flex;flex-wrap:wrap;gap:4px;max-height:38px;overflow:hidden;color:var(--text)}.projects-instrument-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.projects-page-sentinel{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:var(--muted);font-size:11px}.projects-page-sentinel button{border:0;background:none;width:32px;height:32px;min-width:32px}
@media(hover:none){.projects-surface[data-selecting="true"] .projects-merge-checkbox{opacity:1;pointer-events:auto}}

.projects-table col.projects-col-duration{width:84px}.projects-table .projects-duration-cell{min-width:84px}

/* Regular selection columns: no masonry/tabs, larger centered row selectors. */
.projects-table .projects-selection-cell{vertical-align:middle;padding:6px 3px}.projects-table .projects-merge-checkbox{display:block;width:18px;height:18px;margin:0 auto}
.project-facet-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;align-items:start}.project-facet-popover[data-columns="3"] .project-facet-values{grid-template-columns:repeat(3,minmax(0,1fr))}.project-facet-option{display:flex;width:100%;min-width:0;align-items:center}.project-facet-option .project-facet-value{flex:1;min-width:0;text-align:left;justify-content:flex-start;min-height:30px;width:100%;border-radius:3px;white-space:nowrap}.project-facet-option button:not(.project-facet-value){flex:none;padding:3px;width:25px;min-width:25px}
/* Three separate targets, no selection pills: checkbox, quick label, avoid. */
.project-facet-option .project-facet-value{overflow:hidden;text-overflow:ellipsis;background:transparent;box-shadow:none;padding:3px 4px}
.project-facet-option .project-facet-value[aria-pressed="true"]{background:transparent;box-shadow:none}
.project-facet-include svg{opacity:.22}.project-facet-include[aria-checked="true"]{color:var(--purple,#b8a1f0)}.project-facet-include[aria-checked="true"] svg{opacity:1}
.project-facet-exclude{opacity:.55}.project-facet-exclude[aria-pressed="true"]{opacity:1;color:var(--danger,#e59d96);background:transparent;box-shadow:none}
.project-facet-negative-count{font-size:10px;color:var(--danger,#e59d96);line-height:1}
.project-facet-option button:focus-visible{outline:1px solid currentColor;outline-offset:-1px}
.project-metadata-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.45);touch-action:none}#player.project-metadata-player-active{z-index:1002}.project-metadata-editor{position:fixed;top:48px;bottom:auto;margin:0 auto;z-index:1001;width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 200px)}
.project-metadata-save-status{position:fixed;top:12px;right:12px;z-index:110;max-width:min(420px,calc(100vw - 24px));padding:10px 12px;border:1px solid var(--line,#444);border-radius:6px;background:var(--panel,#22222c);color:var(--text,#eee);font-size:12px}.project-metadata-save-status button{margin-left:6px;color:var(--accent,#b8a1f0);background:transparent;border:0;text-decoration:underline;cursor:pointer}.project-metadata-editor .project-facet-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 14px;margin-top:12px;align-items:stretch}.project-facet-group{display:flex;flex-direction:column;min-width:0}.project-facet-group h4{margin:0 0 9px;font-size:13px}
.project-metadata-editor .project-facet-editor-values{display:grid;grid-template-columns:repeat(var(--facet-columns,1),minmax(0,1fr));grid-auto-rows:26px;gap:2px 4px;align-content:start;min-height:var(--facet-list-height,180px);max-height:360px;overflow:auto}.project-metadata-editor .project-facet-choice{display:flex;align-items:center;justify-content:flex-start;gap:3px;text-align:left;width:100%;padding:2px 3px;min-height:26px;height:26px;white-space:nowrap;border-radius:0;font-size:11px}.project-metadata-editor .project-facet-choice::before{content:'';display:inline-block;width:12px;flex:none}.project-metadata-editor .project-facet-choice[aria-pressed="true"]{background:transparent;box-shadow:none;color:var(--text,#eee)}.project-metadata-editor .project-facet-choice[aria-pressed="true"]::before{content:'✓';color:var(--accent,#b7a2ed)}.project-metadata-editor .project-facet-choice:hover{background:var(--bg,#15151b)}
.project-metadata-editor .project-metadata-add-row{display:flex;align-items:center;gap:8px;margin-top:16px}.project-metadata-add-row input{min-width:0;flex:1}.project-metadata-editor .project-metadata-add-row input,.project-metadata-editor .project-metadata-add-row select{box-sizing:border-box;font-size:14px;height:36px;min-height:36px;margin:0;padding:6px;line-height:20px}.project-metadata-add-row select{max-width:45%}.project-metadata-editor .project-facet-new-value{margin-top:10px}.project-metadata-editor .project-facet-new-value input{font-size:13px;padding:6px;min-height:32px}.project-metadata-editor .project-facet-editor-heading{position:sticky;top:-16px;z-index:2;background:var(--panel,#22222c);padding:5px 0 10px}.project-metadata-editor .project-facet-editor-footer{position:sticky;bottom:-16px;background:var(--panel,#22222c);padding:10px 0;margin-top:10px;z-index:2}
@media(max-width:850px){.project-metadata-editor .project-facet-groups{grid-template-columns:1fr 1fr;gap:24px 16px}.project-metadata-editor .project-facet-editor-values{min-height:0}.project-metadata-editor .project-facet-group{align-self:start}}
@media(max-width:480px){.project-metadata-editor{padding:12px;width:calc(100vw - 20px)}.project-metadata-editor .project-facet-groups{gap:20px 12px}.project-metadata-editor .project-facet-editor-values{grid-template-columns:1fr;max-height:310px}.project-metadata-editor .project-facet-new-value{gap:2px}.project-metadata-editor .project-facet-new-value input{font-size:16px;padding:5px;width:0;flex:1}.project-metadata-editor .project-facet-editor-heading h3{max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

.projects-audio-source-warning{display:block;color:#e7b66b;font-size:10px;line-height:1.35;font-weight:400;margin-top:2px}.projects-version>.projects-audio-source-warning{flex-basis:100%}
/* Two fixed left layouts and full-result search. */
.projects-left-groups{display:flex;flex:none;gap:2px;margin-left:12px;padding-left:8px;border-left:1px solid var(--line)}
.projects-left-groups .projects-left-group{width:30px;min-width:30px;height:32px;min-height:32px;padding:0}
.projects-left-group[aria-pressed="true"]{color:var(--accent);background:var(--tint)}
.project-facet-row .projects-column-groups{margin-left:8px;flex:none}
.projects-search{display:flex;align-items:center;gap:8px;flex:1 0 160px;min-width:140px;max-width:300px;margin-left:auto}
.projects-search-input{width:100%;min-width:0;height:32px;border:1px solid var(--line,#333);border-radius:5px;background:var(--bg,#15151b);color:var(--text,#eee);padding:4px 9px;font:13px/1.4 inherit}
.projects-table[data-left="band"]{--projects-date-width:176px}
/* A fixed combined left budget: lend 52px from the waveform in both layouts. */
.projects-table col.projects-col-title{width:calc(var(--projects-title-width,260px) + 52px)}
.projects-table[data-left="band"] col.projects-col-title{width:calc(var(--projects-title-width,260px) - 36px)}
.projects-table col.projects-col-band{width:var(--projects-date-width)}
.projects-table .projects-band-cell{vertical-align:top;padding-top:12px;padding-bottom:24px;font-size:11px;white-space:normal}
.projects-band-names{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal;overflow-wrap:anywhere;line-height:14px;height:28px}
.projects-secondary-line{display:flex;align-items:center;gap:8px;margin-left:calc(-1 * var(--projects-date-width));width:calc(100% + var(--projects-date-width));max-width:none;min-height:16px;margin-top:2px;font-weight:400}
.projects-secondary-date{flex:0 0 calc(var(--projects-date-width) - 8px);min-width:0;font:10px/16px monospace;color:var(--muted)}
.projects-secondary-date .projects-edit-date{font:inherit;min-height:16px}
.projects-table .projects-secondary-line .projects-relative-path{margin:0;width:auto;flex:1;min-width:0;max-width:100%}
.projects-table col.projects-col-instruments{width:104px}
.projects-table .projects-facet-edit{max-height:40px}
.projects-table .projects-instrument-icons{max-height:40px;row-gap:4px;line-height:0;padding:0;align-content:start}
.projects-table .projects-instrument-icon{flex:0 0 18px;height:18px}
/* Filters/search are one left block; view switches stay at the far right. */
.project-facet-row{justify-content:space-between;gap:16px;overflow:visible}
.projects-filter-block{display:flex;align-items:center;gap:5px;min-width:0;flex:1}
.projects-view-block{display:flex;align-items:center;gap:10px;flex:none;margin-left:auto}
.projects-filter-block .projects-search{margin-left:5px;flex:0 1 240px;min-width:120px;max-width:280px}
.projects-view-block .projects-left-groups{margin:0;padding:0;border:0}
.projects-view-block .projects-column-groups{margin:0;padding-left:10px;border-left:1px solid var(--line)}
.projects-table .projects-band-cell{width:var(--projects-date-width);min-width:var(--projects-date-width);max-width:var(--projects-date-width);font:11px monospace;vertical-align:top;padding-top:12px;padding-bottom:24px}
.projects-table .projects-date-cell>time{display:block;height:28px;line-height:28px}
.projects-table .projects-date-cell>.projects-edit-date{height:28px;min-height:28px;line-height:28px}
.projects-table .projects-secondary-date .projects-edit-date{height:16px;min-height:16px;line-height:16px}
.projects-table[data-columns="audio"]{min-width:calc(760px + var(--projects-title-width,260px))}
.projects-table col.projects-col-notes{width:42px}
.projects-table .projects-notes-button{width:28px;height:28px;min-width:28px;min-height:28px;padding:0;border:0;background:none}
@media(max-width:900px){.project-facet-row{flex-wrap:wrap}.projects-filter-block{flex-wrap:wrap;flex:1 1 100%}.projects-view-block{margin-left:auto}.projects-filter-block .projects-search{flex:1;max-width:none}}
@media(max-width:600px){.projects-search-input{font-size:16px}.projects-secondary-date{font-size:9px}.projects-view-block{gap:8px}}
.projects-table .projects-edit-band{border:0;background:none;color:inherit;text-align:left;width:100%;min-width:0;min-height:20px;height:20px;line-height:20px;padding:0;cursor:pointer;border-radius:0;font:inherit}
.projects-table .projects-edit-band:hover{color:var(--accent,#b8a1f0);text-decoration:underline}
.project-band-editor{width:min(460px,calc(100vw - 24px));box-sizing:border-box}
.project-band-editor-body{display:flex;flex-direction:column;gap:12px;min-width:0}
.project-band-search{display:flex;align-items:center;gap:6px;min-width:0}
.project-band-search input{flex:1;min-width:0;width:100%;box-sizing:border-box}
.project-band-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;max-height:340px;overflow:auto}
.project-band-option{display:flex;align-items:center;gap:7px;min-width:0;padding:5px 0;font-size:13px;cursor:pointer}
.project-band-option input{flex:none;width:16px;height:16px;margin:0}
.project-band-option span{overflow-wrap:anywhere}
@media(max-width:480px){.project-band-search input{font-size:16px}.project-band-options{grid-template-columns:1fr}}
.projects-merge-progress{display:flex;align-items:center;gap:9px;padding:10px 0;color:var(--accent,#b8a1f0);font-size:12px}
.projects-merge-spinner{display:inline-block;flex:0 0 16px;width:16px;height:16px;box-sizing:border-box;border:2px solid var(--line,#444);border-top-color:var(--accent,#b8a1f0);border-radius:50%;animation:projects-merge-spin .8s linear infinite}
@keyframes projects-merge-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.projects-merge-spinner{animation:none}}
/* One two-line layout: Band / date+counts, Project / path-or-source-warning. */
.projects-table .projects-row[hidden]{display:none!important}
.projects-table .projects-row{height:56px}
.projects-table .projects-band-cell,.projects-table .projects-title-cell{padding:6px;vertical-align:middle}
.projects-table .projects-band-cell{font:inherit;font-size:11px}
.projects-table .projects-band-names{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:20px;height:20px;font-weight:500}
.projects-table .projects-band-details{display:flex;align-items:center;gap:5px;white-space:nowrap;height:14px;line-height:14px;overflow:hidden;color:var(--muted)}
.projects-table .projects-date-inline{flex:none;font:9px/14px monospace}
.projects-table .projects-band-details .projects-edit-date{font:inherit;line-height:14px;height:14px;min-height:14px;padding:0;white-space:nowrap}
.projects-table .projects-band-details .projects-idea-counts{display:block;flex:1;min-width:0;margin:0;font-size:9px;line-height:14px;font-family:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.projects-table .projects-title-cell>.projects-select{display:block;min-height:20px;height:20px;line-height:20px;padding:0}
.projects-table .projects-row-subtitle{height:14px;min-height:14px;line-height:14px;min-width:0;font-weight:400;overflow:hidden}
.projects-table .projects-title-cell .projects-row-subtitle .projects-relative-path,.projects-table .projects-title-cell .projects-row-subtitle .projects-audio-source-warning,.projects-table .projects-title-cell .projects-row-subtitle .projects-no-audio-kind{display:block;position:static;width:100%;max-width:100%;height:14px;min-height:0;margin:0;padding:0;font-size:9px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.projects-table .projects-title-cell .projects-row-subtitle button.projects-relative-path{border:0;border-radius:0;background:none;color:var(--muted);text-align:left;cursor:pointer;font-family:inherit}
.projects-table .projects-title-cell .projects-row-subtitle button.projects-relative-path:hover{text-decoration:underline;color:var(--text)}

/* Facet state: no counters; adjacent left controls and unboxed colored labels. */
.project-facet-popover{--facet-include:#8abeff;--facet-exclude:#f2929a}
.project-facet-popover .project-facet-option[data-mode="include"] .project-facet-value,
.project-facet-popover .project-facet-option[data-mode="include"] .project-facet-include{color:var(--facet-include)}
.project-facet-popover .project-facet-option[data-mode="exclude"] .project-facet-value,
.project-facet-popover .project-facet-option[data-mode="exclude"] .project-facet-exclude{color:var(--facet-exclude)}
.project-facet-popover .project-facet-option .project-facet-value{background:transparent;box-shadow:none}

.projects-table col.projects-col-mood{width:88px}.projects-table col.projects-col-recording_quality{width:130px}
.projects-table .projects-mood-cell .projects-notion-tag,.projects-table .projects-recording_quality-cell .projects-notion-tag{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.projects-listing-modes{display:flex;justify-content:flex-start;gap:4px;margin:0 0 14px;border-bottom:1px solid var(--line)}
.projects-listing-modes .projects-listing-view{width:auto;min-width:0;min-height:36px;padding:7px 14px;border:0;border-radius:0;background:transparent;color:var(--muted);font:inherit;white-space:nowrap}
.projects-listing-modes .projects-listing-view.active{color:var(--text);box-shadow:inset 0 -2px var(--accent,#b7a2ed)}
/* Fixed-size loading status never inserts a line above the table. */
.projects-header h2{display:flex;align-items:center;gap:8px}
.projects-loading-status{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;visibility:hidden}
.projects-loading-spinner{box-sizing:border-box;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%}
.projects-loading-status[aria-busy="true"] .projects-loading-spinner{animation:projects-loading-spin .8s linear infinite}
@keyframes projects-loading-spin{to{transform:rotate(360deg)}}
.projects-page-sentinel{min-height:44px}
@media(prefers-reduced-motion:reduce){.projects-loading-status[aria-busy="true"] .projects-loading-spinner{animation-duration:2s}}

/* Typed source metadata: compact summaries, grouped editor, no narrative blocks. */
.projects-table col.projects-col-work_meta,.projects-table col.projects-col-recording_meta,.projects-table col.projects-col-release_meta{width:190px}
.projects-table col.projects-col-music_meta{width:88px}
.projects-metadata-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.4;max-height:2.8em;text-align:left;overflow-wrap:anywhere}
.project-metadata-tabs{display:flex;gap:6px;margin:0 0 12px;border-bottom:1px solid var(--line)}
.project-metadata-tabs button{background:none;border:0;color:var(--muted);padding:7px 10px;font:inherit;cursor:pointer}
.project-metadata-tabs button[aria-pressed="true"]{color:var(--text);box-shadow:inset 0 -2px var(--accent)}
.project-facet-groups[hidden]{display:none!important}
.project-metadata-structured{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.project-structured-field{min-width:0;padding:10px;background:var(--panel);border-radius:5px}
.project-structured-field h4{font-size:13px;margin:0 0 8px;text-align:center}
.project-structured-field input:not([type="checkbox"]){width:100%;min-width:0;box-sizing:border-box;background:var(--bg);border:1px solid var(--line);color:var(--text);padding:6px;border-radius:3px;font:inherit}
.project-structured-field label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}
.project-structured-choices{display:flex;flex-wrap:wrap;gap:4px;max-height:180px;overflow:auto}
.project-relation-list{max-height:180px;overflow:auto}.project-relation-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px;gap:4px;margin-bottom:5px}
.project-metadata-editor .project-facet-group[data-field="instruments"] .project-facet-editor-values{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.project-metadata-structured{grid-template-columns:repeat(2,minmax(0,1fr))}.project-metadata-tabs button{padding:7px}}
/* Edit-only simplification; source fields and their stored values are untouched. */
.project-metadata-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px;margin-bottom:12px}.project-metadata-identity>label{display:flex;flex-direction:column;gap:6px}.project-metadata-identity input{min-width:0;width:100%;font:inherit}.project-metadata-bands h4{margin:0 0 6px}.project-metadata-bands .project-band-options{max-height:94px}.project-metadata-bands .project-band-search{margin:0 0 6px}.project-metadata-bands small{display:block;color:var(--muted)}
.project-metadata-editor [data-field="rating"]>.project-facet-editor-values{min-height:0;max-height:none;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px}.project-metadata-editor [data-field="rating"] .project-structured-field{padding:6px 0;background:transparent}.project-metadata-editor [data-field="rating"] .project-structured-field h4{text-align:left;margin-bottom:5px}.project-metadata-editor [data-field="key"] select{max-width:100%;width:100%;font:inherit}.project-key-mode{display:flex;gap:6px;margin:5px 0}.project-metadata-editor .project-key-mode .project-facet-choice{width:auto;flex:1}.project-metadata-editor [data-field="key"] small{display:block;overflow-wrap:anywhere}
.project-metadata-structured:has([data-type="boolean"]){grid-template-columns:minmax(0,1fr)}.project-metadata-structured [data-type="boolean"]{display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:10px;padding:5px 10px}.project-metadata-structured [data-type="boolean"] h4{margin:0;text-align:left}.project-metadata-structured [data-type="boolean"] input{margin:0;flex:0 0 auto}
@media(max-width:480px){.project-metadata-identity{grid-template-columns:minmax(0,1fr);gap:10px}.project-metadata-identity input{font-size:16px}.project-metadata-editor [data-field="rating"]>.project-facet-editor-values{grid-template-columns:1fr}}




.projects-surface[data-viewer=true] .projects-col-band{width:176px}
.projects-surface[data-viewer=true] .projects-title-cell,.projects-surface[data-viewer=true] .projects-band-cell{height:36px;vertical-align:middle}
.projects-surface[data-viewer=true] .projects-filter-bar,.projects-surface[data-viewer=true] .projects-listing-modes{display:none}
.projects-surface[data-viewer=true] .projects-page-sentinel .projects-load-more{visibility:hidden}
.track-detail-reader-duration{margin-top:8px;color:var(--muted,#aaaab9);font-variant-numeric:tabular-nums}

.projects-results-count{flex:none;min-width:3ch;text-align:right;color:var(--muted,#aaa);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}
