/* Personal controls shared by both UI versions. */
.appearance-panel {margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.appearance-panel .quiet {font-size:13px;line-height:1.6;color:var(--muted)}
.style-choices {border:0;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.style-choices legend {font-size:13px;margin-bottom:12px}
.style-option {position:relative;border:1px solid var(--line);border-radius:6px;padding:14px;cursor:pointer;display:block}
.style-option:has(input:checked) {outline:2px solid var(--accent);outline-offset:2px}
.style-option input {position:absolute;right:12px;top:10px;width:18px;height:18px;min-height:0;margin:0;accent-color:var(--accent)}
.style-option strong,.style-option small {display:block;margin-top:8px}
.style-option small {font-size:12px;line-height:1.5;font-weight:400;color:var(--muted)}
.style-sample {display:grid;grid-template-columns:22% 1fr;grid-template-rows:repeat(3,17px);gap:7px;padding:13px;max-width:240px;margin:18px 0 14px}
.style-sample i {grid-row:1/4}
.sample-clean {background:oklch(22% .008 75)}
.sample-clean i {background:oklch(30% .008 75)}
.sample-clean b {border-bottom:1px solid oklch(64% .01 75)}
.sample-classic {background:oklch(18% .02 285);border-radius:6px}
.sample-classic i {background:oklch(36% .07 295);border-radius:3px}
.sample-classic b {background:oklch(28% .03 285);border:1px solid oklch(46% .04 285);border-radius:4px}
.appearance-actions {display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}
.appearance-actions button {min-height:40px}
:root[data-accent=violet] {--accent:oklch(80% .11 295);--accent-bg:oklch(30% .05 295)}
:root[data-accent=sage] {--accent:oklch(80% .08 160);--accent-bg:oklch(30% .03 160)}
:root[data-accent=red] {--accent:oklch(79% .12 30);--accent-bg:oklch(30% .04 30)}
:root[data-theme=light][data-accent=violet] {--accent:oklch(44% .16 295);--accent-bg:oklch(92% .035 295)}
:root[data-theme=light][data-accent=sage] {--accent:oklch(42% .08 160);--accent-bg:oklch(92% .03 160)}
:root[data-theme=light][data-accent=red] {--accent:oklch(46% .16 30);--accent-bg:oklch(92% .03 30)}
:root:not([data-accent=default]) .app-shell .primary {background:var(--accent);border-color:var(--accent);color:var(--bg)}
:root[data-density=compact] .app-shell .work-row {padding-top:10px;padding-bottom:10px}
:root[data-density=compact] .app-shell .record-row {padding-top:11px;padding-bottom:11px}
:root[data-density=compact] .app-shell .task-card {padding:10px;margin:7px 0}
:root[data-density=compact] .app-shell .page-heading {margin-top:16px;margin-bottom:17px}
:root[data-density=compact] .app-shell .overview-grid {row-gap:22px}
:root[data-text-size=large] .app-shell :is(.record-title,.nav-link,.record-row strong,.activity-row p,label) {font-size:16px}
:root[data-text-size=large] .app-shell :is(.quiet,.work-row small,.work-row time,.record-main small,.page-heading p,.badge,.text-link) {font-size:14px}
:root[data-text-size=large] .app-shell :is(input,select,textarea,button.primary,button.secondary) {font-size:16px}
.appearance-panel :is(input,select,button):focus-visible {outline:2px solid var(--accent);outline-offset:3px}
.record-delete {display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:12px}
.record-delete:hover {border-color:var(--red);color:var(--red);background:color-mix(in oklch,var(--red) 8%,transparent)}
.task-card-actions {display:flex;justify-content:flex-end;margin-top:8px}
.task-card .record-delete {min-height:30px;padding:5px 7px;font-size:11px}
@media(max-width:680px) {.record-delete {min-height:44px}.task-card .record-delete {min-height:36px}}
.setup-grid {display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);gap:18px;align-items:start}
.setup-grid>.panel {margin:0}
.setup-panel h1 {font-size:34px;line-height:1.05;margin:10px 0 14px;letter-spacing:-1px}
.invite-panel .manager-code {margin:18px 0 6px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.selectable {user-select:all}
.setup-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}
.setup-list span {display:flex;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:7px 10px;color:var(--muted);font-size:11px;background:var(--bg)}
select:disabled {color:var(--muted);opacity:.75}
.release-cover-link{display:block;color:inherit}
.cover.cover-image{padding:0;background:var(--side)}
.cover.cover-image:after{display:none}
.cover.cover-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cover-upload{display:grid;grid-template-columns:112px 1fr;gap:7px 16px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}
.cover-upload>span:first-child,.cover-upload>input,.cover-upload>small,.cover-remove{grid-column:2}
.cover-upload-preview{grid-column:1;grid-row:1/5;width:112px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--side);color:var(--muted)}
.cover-upload-preview img{width:100%;height:100%;object-fit:cover}
.cover-upload-preview>span{display:grid;justify-items:center;gap:8px;font-size:10px}
.cover-remove{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}
.cover-remove input{width:auto;margin:0}
.dashboard-choices{border:1px solid var(--line);border-radius:7px;margin:22px 0 0;padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px}
.dashboard-choices legend{font-size:13px;padding:0 6px}
.dashboard-choices label,.attachment-existing{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:12px}
.dashboard-choices input,.attachment-existing input{width:auto;min-height:17px;margin:0;flex-shrink:0}
.attachment-editor{border-top:1px solid var(--line);padding-top:18px;margin-top:4px}
.attachment-editor h3{margin:0 0 4px}
.attachment-editor .section-heading{margin-bottom:12px}
.attachment-editor>label{margin-top:15px}
#attachment-list{display:grid;gap:8px}
.attachment-existing{justify-content:space-between;border:1px solid var(--line);border-radius:6px;padding:9px 10px;background:var(--side)}
.attachment-existing span{display:flex;align-items:center;gap:7px;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.attachment-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.attachment-list.compact{flex-direction:row;flex-wrap:wrap;margin-top:8px}
.attachment-pill{display:inline-flex;align-items:center;gap:7px;max-width:100%;border:1px solid var(--line);border-radius:6px;padding:7px 9px;background:var(--side);color:var(--text);font-size:11px}
.attachment-pill:hover{border-color:var(--accent);color:var(--accent)}
.attachment-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-pill small{margin-left:auto;white-space:nowrap}
.audio-list{padding:0}
.audio-row{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid var(--line)}
.audio-row:last-child{border-bottom:0}
.audio-row-main{display:flex;align-items:center;gap:13px;min-width:0;flex:1}
.audio-row-main strong,.audio-row-main small{display:block}
.audio-row-main span:last-child{min-width:0}
.audio-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.audio-review{padding:24px}
.waveform{position:relative;display:flex;align-items:center;gap:3px;height:178px;padding:18px 0;margin:10px 0 18px;cursor:pointer;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.waveform i{display:block;flex:1;min-width:2px;max-width:9px;background:var(--muted);opacity:.42;border-radius:2px;transition:background .12s ease-out,opacity .12s ease-out}
.waveform i.played{background:var(--accent);opacity:.95}
.playhead{position:absolute;top:10px;bottom:10px;left:0;width:2px;background:var(--accent);border-radius:2px;box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 12%,transparent);pointer-events:none}
.audio-controls{display:grid;grid-template-columns:auto auto minmax(180px,1fr) minmax(150px,220px) auto;gap:12px;align-items:center}
.audio-controls input{min-height:34px;padding:0;accent-color:var(--accent)}
.audio-toggle{min-width:96px}
.volume-control{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:11px}
.volume-control span{font-size:11px}
.volume-control input{flex:1;min-width:92px}
#audio-time,.audio-meta span,.audio-comment small{font:11px 'DM Mono',monospace;color:var(--muted)}
.audio-meta{display:flex;justify-content:space-between;gap:12px;margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.audio-repair{margin-top:16px;border:1px solid var(--red);border-radius:8px;padding:14px;background:color-mix(in oklch,var(--red) 8%,var(--panel));color:var(--text)}
.audio-repair strong{display:block;font-size:13px;margin-bottom:5px;color:var(--red)}
.audio-repair p{margin:0 0 12px;font-size:12px;color:var(--muted)}
.audio-thread{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:18px;align-items:start;margin-top:18px}
.audio-thread>.section-heading{grid-column:1/-1;margin-bottom:0}
#audio-comments{border:1px solid var(--line);border-radius:8px;background:var(--panel);overflow:hidden}
.audio-comment{display:flex;width:100%;gap:11px;padding:14px 16px;background:transparent;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--text)}
.audio-comment:last-child{border-bottom:0}
.audio-comment:hover,.audio-comment.active{background:var(--hover)}
.audio-comment.active{box-shadow:inset 0 0 0 1px var(--accent)}
.audio-comment>span:last-child{min-width:0;flex:1}
.audio-comment strong{font-size:12px;margin-right:8px}
.audio-comment p{font-size:12px;line-height:1.55;margin:6px 0 0;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}
.audio-upload{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:2px}
.audio-upload h3{margin:0 0 6px}
.audio-upload .waveform{height:96px;margin:14px 0 8px}
@media(max-width:900px) {.setup-grid {grid-template-columns:1fr}.setup-panel h1 {font-size:29px}}
@media(max-width:520px) {.setup-list {grid-template-columns:1fr}}
@media(max-width:520px){.cover-upload{grid-template-columns:82px 1fr}.cover-upload-preview{width:82px}}
@media(max-width:760px){.audio-thread{grid-template-columns:1fr}.audio-controls{grid-template-columns:1fr 1fr}.audio-controls>#audio-scrub,.audio-controls a,.volume-control{grid-column:1/-1}.waveform{height:132px}}
@media(max-width:680px){.dashboard-choices{grid-template-columns:1fr}.attachment-list.compact{flex-direction:column}.attachment-pill{width:100%}.audio-row{align-items:flex-start;flex-wrap:wrap}.audio-row-main{flex-basis:100%}}
@media(max-width:680px) {.style-choices {grid-template-columns:1fr 1fr;gap:10px}.style-option {padding:10px}.style-sample {padding:8px}.appearance-actions button {min-height:44px}}

.audio-comment-row{display:flex;align-items:center;border-bottom:1px solid var(--line)}
.audio-comment-row:last-child{border-bottom:0}
.audio-comment-row .audio-comment{flex:1;min-width:0;border-bottom:0}
.audio-comment-remove{flex-shrink:0;margin:8px 12px 8px 0;min-height:36px}

.audio-comment-actions{display:flex;flex-wrap:wrap;gap:6px;padding:10px;max-width:240px}
.audio-comment-actions button{min-height:36px}
.audio-comment-row.resolved .audio-comment{opacity:.65}
.audio-undo{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:12px}
.audio-compare{display:block;max-width:620px;margin:20px 0}
.social-connections{margin:24px 0 40px}
.connection-item{padding:24px 0;border-bottom:1px solid var(--line)}
.connection-item h3{margin:0;font-size:18px}
.connection-item .quiet{max-width:72ch;line-height:1.6}
.connection-item .row-actions{margin:16px 0;flex-wrap:wrap}
.connection-account{font-size:14px;overflow-wrap:anywhere}
.connection-account small{display:block;color:var(--muted);margin-top:6px;font-size:12px}
.social-metrics{display:flex;flex-wrap:wrap;gap:20px 36px;margin:20px 0}
.social-metrics>div{min-width:130px}
.social-metrics dt{font-size:12px}.social-metrics dd{text-align:left;font-size:24px;margin:8px 0 0}
.connection-setup code{overflow-wrap:anywhere;white-space:normal}
.spotify-import,.connection-confirm{max-width:620px;padding:20px;margin-top:20px;background:var(--panel);border:1px solid var(--line);border-radius:8px}
.spotify-import label{display:block;margin:14px 0}.csv-preview{font-size:12px;margin:16px 0;color:var(--muted)}
@media(max-width:680px){.connection-item .section-heading{align-items:flex-start;flex-wrap:wrap;gap:10px}.social-metrics{gap:20px}.connection-item .row-actions button{min-height:44px}}
@media(max-width:680px){.audio-comment-row{flex-wrap:wrap}.audio-comment-row .audio-comment{flex-basis:100%}.audio-comment-actions{max-width:none;padding:0 16px 12px}}
