@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{--ink:#172c29;--muted:#71817b;--line:#dbe3de;--surface:#f7f9f6;--accent:#146d5d;--accent-soft:#e1f0e8;--white:#fff}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--white)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700;letter-spacing:.07em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:31px;height:31px;background:var(--accent);color:white;border-radius:6px;font-size:20px;letter-spacing:-.12em;padding-right:3px}.brand small{font-size:13px;color:var(--muted);font-weight:500;letter-spacing:0}.top-actions{display:flex;align-items:center;gap:28px}.source-label,.eyebrow,.sidebar-heading,.list-header,.clip-meta,.page-kicker{font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.08em;color:var(--muted)}.export{text-decoration:none;font-size:13px;font-weight:700;color:var(--accent);white-space:nowrap}.export:hover{text-decoration:underline}
.workspace{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 72px)}.sidebar{border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;padding:35px 24px 15px}.sidebar-heading strong{font-weight:600;color:var(--ink)}.speaker-list{overflow:auto;padding:0 10px 20px;max-height:calc(100vh - 255px)}.speaker-item{width:100%;border:0;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:space-between;text-align:left;padding:12px 14px;border-radius:7px;margin:2px 0;font-size:14px}.speaker-item:hover{background:#ebf1ec}.speaker-item.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.speaker-item small{color:var(--muted);font:500 11px 'IBM Plex Mono',monospace}.speaker-item.active small{color:var(--accent)}.speaker-progress{height:2px;background:#dce6df;margin:0 14px 6px}.speaker-progress span{display:block;height:100%;background:var(--accent)}.sidebar-foot{border-top:1px solid var(--line);margin-top:auto;padding:22px 24px 26px;font-size:11px;line-height:1.6;color:var(--muted)}.sidebar-foot a{display:inline-block;margin-top:7px;color:var(--accent);font-weight:700;text-decoration:none}
.main-panel{min-width:0;padding:0 48px 50px;max-width:1500px;width:100%;margin:auto}.intro{padding:47px 0 34px}.intro-row{display:flex;justify-content:space-between;align-items:end;gap:24px}.intro h1{font-size:clamp(30px,3.2vw,48px);letter-spacing:-.055em;line-height:1.06;margin:14px 0 11px;font-weight:700}.intro p{font-size:14px;color:#677771;margin:0}.overall{text-align:right;font:500 12px 'IBM Plex Mono',monospace;line-height:1.8;color:var(--muted);white-space:nowrap}.overall strong{color:var(--ink);font-size:22px;letter-spacing:-.04em;font-family:'DM Sans',sans-serif}.toolbar{border-top:1px solid var(--line);display:flex;align-items:end;justify-content:space-between;gap:20px;padding:26px 0}.current-speaker{display:grid;gap:5px;min-width:180px}.current-speaker strong{font-size:19px;letter-spacing:-.03em}.current-speaker>span:last-child{font-size:12px;color:var(--muted)}.filters{display:flex;gap:9px;flex-wrap:wrap;justify-content:end}.search{position:relative}.search input,select{height:38px;border:1px solid var(--line);background:#fff;border-radius:6px;color:var(--ink);font-size:12px;outline:none}.search input{width:230px;padding:0 30px 0 12px}.search span:last-child{position:absolute;right:11px;top:6px;font-size:22px;color:var(--muted)}select{padding:0 28px 0 11px}.search input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #bde0d1}.list-header{display:grid;grid-template-columns:minmax(0,1fr) 235px;border-bottom:1px solid var(--ink);padding:0 0 12px;gap:24px}.list-header span:last-child{text-align:left}.clip{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:24px;padding:23px 0;border-bottom:1px solid var(--line);animation:appear .23s both}.clip-left{min-width:0}.clip-meta{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.clip-meta b{color:var(--accent);font-weight:600}.clip-text{font-size:16px;line-height:1.48;letter-spacing:-.01em;margin:14px 0 18px;max-width:820px;overflow-wrap:anywhere}.clip audio{width:min(100%,390px);height:34px;display:block}.review-controls{display:flex;gap:5px;flex-wrap:wrap}.review-controls button{border:1px solid var(--line);background:#fff;border-radius:5px;padding:7px 9px;font-size:11px;color:#52645e}.review-controls button:hover{border-color:var(--accent)}.review-controls button.selected{background:var(--accent-soft);color:var(--accent);border-color:#a7d0bd;font-weight:700}.review-controls button[data-status=mismatch].selected{background:#fff0e8;color:#b04b24;border-color:#edb99f}.review-controls button[data-status=unclear].selected{background:#fff7df;color:#886400;border-color:#e7d38d}.review-side textarea{width:100%;height:56px;border:1px solid var(--line);border-radius:5px;resize:vertical;padding:8px;margin-top:8px;font-size:11px;line-height:1.35;outline:none}.review-side textarea::placeholder{color:#a2afa7}.save-state{font:400 10px 'IBM Plex Mono',monospace;color:var(--muted);margin-top:4px;height:13px}.pagination{display:flex;align-items:center;justify-content:space-between;padding:22px 0;font:500 11px 'IBM Plex Mono',monospace;color:var(--muted)}.pagination button{background:#fff;border:1px solid var(--line);border-radius:5px;padding:8px 12px;margin-left:6px;font:600 12px 'DM Sans',sans-serif;color:var(--ink)}.pagination button:disabled{opacity:.35;cursor:default}.empty{padding:60px 0;color:var(--muted);font-size:14px}.error{color:#b04b24}.loading{padding:40px 0;color:var(--muted)}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:950px){.main-panel{padding:0 24px 40px}.workspace{grid-template-columns:190px minmax(0,1fr)}.toolbar{align-items:start;flex-direction:column}.filters{justify-content:start}.list-header,.clip{grid-template-columns:minmax(0,1fr) 205px}.topbar{padding:0 24px}.source-label{display:none}}
@media(max-width:700px){.topbar{height:62px;padding:0 16px}.brand{font-size:12px}.brand small{font-size:11px}.export{font-size:11px}.workspace{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.sidebar-heading{padding:14px 16px 5px}.speaker-list{display:flex;overflow:auto;max-height:none;padding:0 10px 8px}.speaker-list>div,.speaker-list>.speaker-item{flex:0 0 auto}.speaker-item{width:auto;min-width:0;gap:12px;white-space:nowrap}.speaker-progress,.sidebar-foot{display:none}.main-panel{padding:0 16px 30px}.intro{padding:29px 0 24px}.intro-row{align-items:start}.overall{font-size:10px}.overall strong{font-size:16px}.intro p{font-size:12px}.filters{width:100%}.search,.search input{width:100%}.list-header{grid-template-columns:1fr}.list-header span:last-child{display:none}.clip{grid-template-columns:1fr;gap:14px;padding:20px 0}.clip-text{margin:11px 0 13px}.review-side textarea{max-width:440px}.pagination{gap:10px}}
.clip-meta .source-tag{color:#8b6500;background:#fff4d7;border-radius:3px;padding:3px 5px;letter-spacing:0}
