.root { display: grid; grid-template-columns: minmax(200px, 260px) 1fr; gap: 12px; min-height: 0; flex: 1; height: 100%; } .sidebar, .main { min-height: 0; display: flex; flex-direction: column; gap: 10px; position: relative; } .mainDropActive { outline: 2px dashed var(--accent2); outline-offset: -2px; border-radius: var(--radius-sm); } .dropHintOverlay { position: absolute; inset: 0; z-index: 5; display: grid; place-items: center; pointer-events: none; background: var(--color-overlay-dark-3); color: var(--text); font-size: var(--text-sm); font-weight: 700; border-radius: var(--radius-sm); } .dropHintMuted { margin-top: 8px; color: var(--text2); font-size: var(--text-xs); font-weight: 400; } .toolbar { display: grid; gap: 8px; } .list, .tracks { flex: 1; min-height: 0; overflow: auto; border: 1px solid var(--stroke); border-radius: var(--radius-sm); background: var(--color-overlay-dark-3); padding: 6px; display: grid; gap: 4px; align-content: start; } .playlistRow, .trackRow { display: flex; align-items: center; gap: 8px; padding: 8px; border-radius: 6px; border: 0; background: transparent; color: var(--text); text-align: left; cursor: pointer; } .playlistRow:hover, .trackRow:hover { background: var(--accent-fill-soft); } .playlistRowSelected, .trackRowCurrent { background: var(--scene-list-selected-bg); border: 1px solid var(--scene-list-selected-border); } .playlistRowPlaying { box-shadow: inset 2px 0 0 var(--accent2); } .playlistPlayingMark { color: var(--accent2); font-size: 10px; flex-shrink: 0; } .trackRowMatch { outline: 1px dashed var(--accent2); } .playlistName, .trackTitle, .playlistNameReadonly, .trackTitleReadonly { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--text-sm); } .trackTitle { background: transparent; border: 0; color: inherit; text-align: left; cursor: text; padding: 0; } .playlistNameReadonly { font-weight: 700; font-size: var(--text-md, 1rem); } .trackTitleReadonly { color: inherit; } .playlistCount { font-size: var(--text-xs); color: var(--text2); } .mainHeader { display: grid; gap: 8px; } .mainActions { display: flex; flex-wrap: wrap; gap: 6px; } .trackPlay { border: 0; background: transparent; color: var(--text2); cursor: pointer; padding: 0 4px; } .empty { padding: 12px; color: var(--text2); font-size: var(--text-sm); }