:root{--bg:#f7f8fa;--paper:#fff;--ink:#263239;--muted:#7a8286;--line:#e8ebec;--accent:#d96149;--accent-hover:#bb4b35;--soft:#fcf0eb;--green:#427767;--sidebar:#f0f2f3;--radius:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}[hidden]{display:none!important}:focus-visible{outline:3px solid #e9a18f;outline-offset:4px}h1,h2,p{margin:0}h2{font-size:19px;letter-spacing:-.4px}p{line-height:1.65}input,textarea,select{width:100%;border:1px solid #dfe4e5;border-radius:10px;padding:12px;background:white;color:var(--ink);min-width:0}textarea{resize:vertical;line-height:1.65}label{display:block;font-size:13px;font-weight:500}label input,label select{margin-top:8px}.app{display:flex;min-height:100vh}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:var(--sidebar);border-right:1px solid var(--line);padding:38px 22px 24px;display:flex;flex-direction:column}.brand{display:flex;align-items:baseline;font-weight:800;font-size:46px;line-height:1;letter-spacing:-2.4px}.brand-word{white-space:nowrap}.brand-dot{color:var(--accent);letter-spacing:0}.sidebar .brand{margin:0;justify-content:center;min-height:48px}.new-recording{background:white;border:1px solid #e1e5e7;border-radius:10px;text-align:left;padding:13px 14px;margin-top:40px;font-weight:600;box-shadow:0 2px 3px #25323b03}.new-recording span{color:var(--accent);margin-right:9px;font-size:19px}.history-heading{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.4px;color:#7c8488;margin:36px 9px 15px}.history-heading span+span{letter-spacing:0}.history-empty{font-size:13px;color:#92999d;padding:15px 9px;line-height:1.8}.history-item{display:block;width:100%;text-align:left;padding:13px 12px;margin:3px 0;border-radius:9px}.history-item:hover,.history-item.active{background:#e4e9e9}.history-item strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-weight:550}.history-item small{display:block;margin-top:7px;color:var(--muted);font-size:11px}#history{overflow:auto;flex:1}.sidebar-bottom{display:flex;align-items:center;gap:11px;padding:18px 4px 0;border-top:1px solid #e0e5e7;margin-top:20px}.sidebar-bottom strong{font-size:11px;font-weight:500}.sidebar-bottom p{font-size:11px;color:#899195;margin-top:3px}.tiny-mark{display:grid;place-items:center;background:#e5e9e9;border-radius:10px;width:31px;height:34px;color:#7b8c8a;font-size:20px}.main-shell{width:calc(100% - 248px);margin-left:248px}.topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 48px;font-size:12px;color:var(--muted)}.topbar strong{font-weight:500;color:#424d53}.slash{padding:0 13px;color:#bcc2c5}.top-actions{display:flex;gap:15px;align-items:center}.connection{display:flex;gap:8px;align-items:center;font-size:11px}.connection i{width:6px;height:6px;background:#a0a8ac;border-radius:50%}.connection.ready i{background:var(--green)}main{max-width:1136px;margin:auto;padding:48px 64px 0}.page-heading{margin-bottom:32px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.8px;color:var(--accent);margin-bottom:18px}h1{font-size:42px;line-height:1.17;letter-spacing:-1.7px;font-weight:620}.page-heading h1 span{color:#7c898d}.page-heading p{margin-top:19px;color:#7a8389;font-size:14px;line-height:1.75}.upload-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:0 5px 20px #30404b03}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.small-label{font-size:10px;background:#f5f6f7;color:#899195;border-radius:5px;padding:6px 8px}.drop-zone{display:flex;align-items:center;flex-direction:column;justify-content:center;background:#fafbfb;border:1.5px dashed #d7dddf;border-radius:13px;min-height:215px;cursor:pointer;padding:25px;text-align:center;transition:.15s}.drop-zone:hover,.drop-zone.dragging{border-color:var(--accent);background:#fff7f3}.drop-zone.has-file{border-color:#b7cfc7;background:#f5f9f7}.upload-icon{height:49px;width:49px;background:white;box-shadow:0 3px 6px #28374308;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;font-size:28px;font-weight:400;margin-bottom:19px}.drop-zone strong{font-size:15px;font-weight:550;overflow-wrap:anywhere}.drop-zone>span:not(.upload-icon){font-size:12px;color:var(--muted);margin-top:8px;font-weight:400}.link-text{color:var(--accent)}.drop-zone .file-types{font-size:10px!important;margin-top:19px!important;color:#9ca3a6!important}.options{margin-top:20px}.options summary{cursor:pointer;list-style:none;font-size:12px;display:flex;align-items:center;padding:7px 0}.options summary::-webkit-details-marker{display:none}.options summary span{color:#a0a7aa;font-size:11px;margin-left:9px}.options summary b{margin-left:auto;font-size:17px;font-weight:400;color:#9da5a8}.options[open] summary b{transform:rotate(45deg)}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.upload-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:21px;margin-top:18px;gap:15px}.upload-footer>span,.modal-footer>span{font-size:10px;line-height:1.7;color:#99a1a5}.primary,.secondary{border-radius:9px;padding:12px 17px;font-size:12px;font-weight:550;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:42px;white-space:nowrap}.primary{background:var(--accent);color:white;box-shadow:0 2px 3px #a1462610}.primary:hover:not(:disabled){background:var(--accent-hover)}.primary span{font-size:18px}.secondary{background:white;border:1px solid #dfe4e6}.secondary:hover{background:#f4f7f7}.journey{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:30px;padding:0 7px}.journey>div{position:relative;padding-left:31px}.journey span{position:absolute;left:0;top:2px;color:#a5adaf;font-size:10px;font-variant-numeric:tabular-nums}.journey strong{font-size:11px;font-weight:600}.journey p{font-size:10px;color:#98a0a4;margin-top:6px}.main-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:21px 0 26px;margin-top:62px;color:#a5adb1;font-size:10px}.footer-dot{margin:0 8px}.text-button{font-size:12px;padding:5px 0;color:#7d898e}.text-button:hover{color:var(--accent)}.muted{color:var(--muted);font-size:12px}.result-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:32px 0}.result-heading h1{font-size:30px;overflow-wrap:anywhere}.result-heading p{margin-top:12px}.result-heading .eyebrow{margin-bottom:12px}.badge{white-space:nowrap;background:#edf4f0;color:var(--green);border-radius:99px;padding:7px 12px;font-size:11px}.badge.working{background:var(--soft);color:var(--accent)}.processing-card{border:1px solid var(--line);border-radius:var(--radius);background:white;padding:30px}.processing-top{display:flex;align-items:center;gap:18px}.processing-top h2{font-size:18px;margin-bottom:8px}.processing-top>strong{margin-left:auto;font-size:22px}.processing-symbol{display:grid;place-items:center;font-size:36px;color:var(--accent);width:55px;height:55px;background:var(--soft);border-radius:15px}progress{width:100%;height:5px;border:0;border-radius:5px;overflow:hidden;background:#edf0f1;accent-color:var(--accent)}progress::-webkit-progress-bar{background:#edf0f1}progress::-webkit-progress-value{background:var(--accent);border-radius:5px}#stage-progress{margin-top:27px}.stage-list{display:flex;justify-content:space-between;margin-top:18px;font-size:10px;color:#a0a9ac}.stage-list .done{color:var(--green)}.stage-list .current{color:var(--accent)}.result-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}.tabs{display:flex;gap:3px;background:#eceff0;padding:4px;border-radius:10px}.tabs button{padding:9px 12px;border-radius:7px;font-size:11px;color:#829094}.tabs button[aria-selected=true]{background:white;color:var(--ink);box-shadow:0 2px 4px #26323908}.result-actions{display:flex;gap:8px}.result-actions button{padding:10px 13px;font-size:11px;min-height:37px}.document-card{border:1px solid var(--line);border-radius:var(--radius);background:white;padding:28px 32px}.document-tools{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:22px;gap:10px}.document-tools>span{font-size:9px;letter-spacing:1.3px;color:#9aa5a8}.document-tools>div{display:flex;gap:17px}#document{font-size:14px;line-height:1.85;overflow-wrap:anywhere}#document h2{font-size:17px;margin:25px 0 10px}#document h2:first-child{margin-top:0}#document p{margin:10px 0;white-space:pre-wrap}#document ul{padding-left:20px;margin:10px 0}#document li{padding-left:4px;margin:5px 0}#document li::marker{color:var(--accent)}.table-wrap{overflow:auto}table{border-collapse:collapse;font-size:12px;width:100%;margin:14px 0}td,th{padding:10px 12px;text-align:left;border:1px solid var(--line);vertical-align:top}th{background:#f7f9f9;font-weight:600}.turn{border-bottom:1px solid #f0f2f3;padding:15px 0}.turn-header{display:flex;gap:12px;align-items:center}.turn-header strong{font-size:12px;color:#647879}.timestamp{font-size:11px;color:var(--accent);font-variant-numeric:tabular-nums;padding:3px 6px;background:var(--soft);border-radius:4px}.turn-note{font-size:10px;color:#a78550}.result-note{font-size:10px;color:#9aa4a7;margin:16px 4px}.editor-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;align-items:center;flex-wrap:wrap}.editor-actions .muted{margin-right:auto;font-size:10px}#audio-panel{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}audio{width:100%;height:40px}#audio-panel p{margin-top:8px;font-size:10px}.error-box{background:#fff0eb;border:1px solid #f0d2c7;color:#985039;border-radius:10px;padding:16px;font-size:12px;margin:15px 0;line-height:1.6}.error-box p{margin:7px 0 13px}.success-box{background:#eaf4ef;color:#477761;padding:14px 18px;border-radius:10px;font-size:12px;margin-bottom:15px}.success-box a{text-decoration:underline}dialog{border:1px solid var(--line);border-radius:20px;padding:29px;width:min(570px,calc(100% - 28px));max-height:90vh;overflow:auto;color:var(--ink);box-shadow:0 20px 100px #26323930}dialog::backdrop{background:#1a2b3a55;backdrop-filter:blur(4px)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.modal-header .eyebrow{margin-bottom:10px}.modal-header h2{font-size:23px}.close{font-size:26px;color:#8d989b;border-radius:5px;align-self:flex-start}.modal-intro{font-size:12px;color:var(--muted);margin-bottom:22px}.modal-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.selected-users{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.user-chip{background:#edf2f1;border-radius:7px;padding:7px 10px;font-size:11px}.user-list{max-height:175px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:5px}.user-row{width:100%;display:flex;align-items:center;gap:10px;padding:9px;border-radius:6px;text-align:left}.user-row:hover{background:#f4f7f7}.avatar{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:#e9efec;color:#687f75;font-size:10px}.user-row span:nth-child(2){flex:1;font-size:12px}.user-row b{font-size:14px;color:var(--green)}.manual-ids{font-size:11px;margin:14px 0}.manual-ids summary{cursor:pointer;color:var(--muted)}.manual-ids label{margin-top:12px}.download-links{display:grid;gap:8px;margin:22px 0}.download-links a{border:1px solid var(--line);padding:16px;border-radius:10px;display:flex;justify-content:space-between;font-size:13px}.download-links a:hover{border-color:var(--accent);background:var(--soft)}.download-links small{color:var(--muted);font-size:10px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:10px;padding:13px 22px;z-index:10;box-shadow:0 6px 30px #26323925;font-size:12px;max-width:90vw}.upload-progress{margin-top:15px}.upload-progress span{display:block;color:var(--muted);font-size:11px;margin-top:5px}.login{min-height:100vh;display:grid;place-items:center;padding:25px}.login-card{max-width:400px;width:100%;background:white;padding:38px;border:1px solid var(--line);border-radius:20px}.login-card h1{font-size:27px;letter-spacing:-.7px;margin-top:35px}.login-card p{margin:15px 0 23px}.login-card .primary{width:100%;margin-top:14px}.error-text{color:#ac5136;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.connection-row{padding:18px 0;border-top:1px solid var(--line)}.connection-row strong{display:flex;justify-content:space-between;font-size:13px}.connection-row p{font-size:11px;color:var(--muted);margin-top:8px}
/* Recording actions and secondary information stay visually distinct. */
#upload-view .file-select{gap:9px;min-height:44px;margin-bottom:12px;padding:11px 18px}
#upload-view .file-select svg{width:18px;height:18px;flex:none}
#upload-view .file-select span{font-size:13px}
#upload-view .drop-zone strong{font-size:13px;font-weight:500}
#upload-view #file-help{color:#68777e}
#upload-view .drop-zone .file-types{color:#68777e!important;font-size:11px!important}
#upload-view .upload-footer>span{color:#68777e;font-size:11px}
#upload-view .journey p{color:#68777e}
@media(min-width:761px){#upload-view .page-heading h1{font-size:38px}}
@media(min-width:1500px){main{padding-top:65px}.page-heading{margin-bottom:38px}.drop-zone{min-height:245px}}
@media(min-width:1160px){
  main:has(#upload-view:not([hidden])){min-height:calc(100vh - 86px);min-height:calc(100dvh - 86px);display:flex;flex-direction:column}
  main:has(#upload-view:not([hidden])) .main-footer{margin-top:auto}
}
/* Keep the entire new-recording form in view on wide but short laptop windows. */
@media(min-width:1160px) and (max-height:1150px){
  .main-shell:has(#upload-view:not([hidden])) .topbar{height:70px}
  main:has(#upload-view:not([hidden])){min-height:calc(100vh - 70px);min-height:calc(100dvh - 70px);padding-top:20px}
  #upload-view .page-heading{margin-bottom:18px}
  #upload-view .eyebrow{margin-bottom:12px}
  #upload-view .page-heading p{margin-top:12px}
  #upload-view .upload-card{padding:22px 26px}
  #upload-view .card-title{margin-bottom:16px}
  #upload-view .drop-zone{min-height:180px;padding:17px}
  #upload-view .drop-zone .file-types{margin-top:12px!important}
  #upload-view .summary-preset-choice{margin:17px 0}
  #upload-view .upload-footer{margin-top:13px;padding-top:15px}
  #upload-view .journey{margin-top:14px}
  main:has(#upload-view:not([hidden])) .main-footer{padding:12px 0 16px}
}
@media(min-width:1160px) and (max-height:850px){
  .main-shell:has(#upload-view:not([hidden])) .topbar{height:58px}
  main:has(#upload-view:not([hidden])){min-height:calc(100vh - 58px);min-height:calc(100dvh - 58px);padding-top:12px}
  #upload-view .page-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:0 24px;margin-bottom:12px}
  #upload-view .eyebrow{grid-column:1/-1;margin-bottom:6px}
  #upload-view .page-heading h1{font-size:32px;line-height:1.08}
  #upload-view .page-heading p{grid-column:2;grid-row:2;margin:0 0 3px;font-size:12px;line-height:1.5}
  #upload-view .upload-card{padding:16px 20px}
  #upload-view .card-title{margin-bottom:10px}
  #upload-view .drop-zone{min-height:135px;padding:10px}
  #upload-view .file-select{margin-bottom:7px}
  #upload-view .drop-zone .file-types{margin-top:7px!important}
  #upload-view .summary-preset-choice{margin:10px 0}
  #upload-view .summary-preset-choice select{min-height:42px}
  #upload-view .options{margin-top:10px}
  #upload-view .upload-footer{margin-top:8px;padding-top:10px}
  #upload-view .journey{margin-top:8px}
  main:has(#upload-view:not([hidden])) .main-footer{padding:8px 0 9px}
}
@media(max-width:1150px){.sidebar{width:216px;padding:30px 16px}.main-shell{margin-left:216px;width:calc(100% - 216px)}main{padding:38px 32px 0}.topbar{padding:0 32px}.journey{gap:12px}.journey>div{padding-left:25px}.journey p{font-size:9px}}
@media(max-width:760px){.app{display:block}.sidebar{position:static;width:auto;padding:18px 20px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap}.sidebar .brand{font-size:32px;letter-spacing:-1.6px;min-height:36px;justify-content:flex-start;margin:0}.new-recording{margin:0 0 0 auto;padding:8px 10px;font-size:11px}.history-heading,.sidebar-bottom{display:none}#history{display:flex;flex:1 0 100%;gap:5px;overflow:auto}.history-empty{display:none}.history-item{max-width:190px;min-width:150px;background:#e9eded;padding:9px 11px}.history-item strong{font-size:11px}.history-item small{font-size:9px}.main-shell{margin:0;width:100%}.topbar{height:57px;padding:0 22px;font-size:10px}.connection{font-size:10px}.slash{padding:0 6px}.topbar>span{max-width:65%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}main{padding:31px 20px 0}h1{font-size:34px;letter-spacing:-1.3px}.page-heading p{font-size:12px}.page-heading{margin-bottom:25px}.eyebrow{font-size:9px}.upload-card{padding:19px;border-radius:14px}.drop-zone{min-height:200px;padding:20px 13px}.drop-zone strong{font-size:13px}.upload-footer{flex-wrap:wrap}.upload-footer .primary{width:100%;order:-1}.upload-footer>span{text-align:center;width:100%;font-size:9px}.upload-footer>span br{display:none}.journey{grid-template-columns:1fr;gap:17px;margin-top:25px;padding:0 8px}.journey p{font-size:10px;display:inline;margin-left:9px}.journey>div{padding-left:28px}.main-footer{margin-top:35px;font-size:9px}.main-footer>span:last-child{display:none}.options-grid{grid-template-columns:1fr;gap:13px}.result-heading h1{font-size:25px}.result-heading{align-items:flex-start}.badge{font-size:9px;padding:6px 8px}.document-card{padding:20px}.tabs{width:100%}.tabs button{flex:1;padding:9px 8px}.result-actions{width:100%;justify-content:flex-end}.processing-card{padding:20px}.processing-symbol{display:none}.stage-list{font-size:9px;gap:8px;flex-wrap:wrap}.processing-top h2{font-size:16px}.processing-top>strong{font-size:18px}.modal-footer{flex-wrap:wrap}.modal-footer .primary{width:100%}.modal-footer>span{font-size:10px}.modal-footer br{display:none}dialog{padding:23px}.document-tools>div{gap:10px}.document-tools .text-button{font-size:10px}.document-tools>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.progress-number{margin-left:auto;text-align:right;flex-shrink:0}.progress-number strong{font-size:27px;display:block}.progress-number span{font-size:10px;color:var(--muted);display:block;margin-top:5px}.processing-times{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;font-size:11px;color:var(--muted)}.processing-times strong{font-weight:500;color:var(--ink);text-align:right}.processing-note{border-top:1px solid var(--line);padding-top:16px;margin-top:19px;font-size:10px}.stage-list{gap:10px;flex-wrap:wrap}progress:indeterminate{opacity:.45}#stage-detail{max-width:540px}@media(max-width:760px){.processing-times{align-items:flex-start;flex-direction:column}.processing-times strong{text-align:left}.progress-number strong{font-size:23px}.progress-number span{font-size:9px;max-width:85px}.processing-top{align-items:flex-start}}

.processing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:19px;padding-top:16px}.processing-footer .processing-note{border:0;margin:0;padding:0}.processing-footer .secondary{min-height:34px;padding:8px 14px;flex-shrink:0}.error-box.stopped{background:#eef3f3;border-color:#dae5e3;color:#506962}@media(max-width:760px){.processing-footer{align-items:flex-start;flex-direction:column;gap:12px}}

#reprocess-options{margin-top:20px}#reprocess-options .options-grid{align-items:end}#reprocess-options .secondary{min-height:44px}

/* Activity is distinct from measured completion; no fabricated percentage. */
.stage-activity{position:relative;width:100%;height:5px;margin-top:27px;overflow:hidden;border-radius:5px;background:#edf0f1}
.stage-activity span{position:absolute;inset:0 auto 0 0;width:28%;border-radius:inherit;background:var(--accent);opacity:.35;transform:translateX(128%)}
.stage-activity.active span{opacity:1;animation:recording-activity 2s ease-in-out infinite}
@keyframes recording-activity{0%{transform:translateX(-110%)}100%{transform:translateX(370%)}}
.progress-number strong.activity-label{font-size:13px;font-weight:550;white-space:nowrap}
.processing-heartbeat{display:block;margin-top:5px;font-size:10px;color:var(--muted)}
@media(prefers-reduced-motion:reduce){.stage-activity.active span{animation:none;transform:translateX(128%)}}

/* Leave a clear gap when partial results appear during processing. */
#processing-card:not([hidden]) ~ #result-panel{margin-top:28px}
@media(max-width:760px){#processing-card:not([hidden]) ~ #result-panel{margin-top:20px}}



/* A single compact preset, followed by the editable attendee selection. */
.participants-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;font-size:13px;font-weight:600}.participants-heading .muted{font-size:11px;font-weight:400}
.participants-heading{flex-wrap:wrap}.participant-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.participant-actions .text-button{font-size:11px}.participant-actions .text-button:disabled{cursor:default}
.selected-users{align-content:flex-start;padding:2px}.user-chip{flex-shrink:0;text-align:left}
.participant-presets{margin:10px 0 14px;display:flex;flex-direction:column;gap:7px}.preset-button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #edcfc6;border-radius:9px;background:var(--soft);color:#b54229;font-size:12px;text-align:left}.preset-button:hover{border-color:var(--accent)}.preset-button:disabled{opacity:.6;cursor:wait}.participant-presets p{margin:0;font-size:11px;line-height:1.5}.participant-presets p.preset-warning{color:#a14b31}.user-list>p{padding:9px;font-size:12px;line-height:1.5}.user-list>#retry-users{margin:0 9px 9px}.user-chip:disabled,.user-row:disabled{cursor:default;opacity:.7}

/* Task participants stay below the action so the summary remains readable. */
.task-people-controls{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.task-person-link{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;max-width:100%;padding:2px 0;line-height:1.45}
.task-person-link span{font-size:10px;color:var(--muted)}.task-person-link strong{font-size:11px;color:var(--accent);font-weight:500;overflow-wrap:anywhere}.task-person-link:hover strong{text-decoration:underline}
.task-role-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.task-role-heading [aria-pressed=true]{color:var(--accent)}
#task-people-hint{margin:20px 0 8px;font-size:12px}#task-people-list{margin-top:10px;max-height:240px}.task-person-option{display:flex;align-items:center;gap:10px;padding:10px 8px;border-radius:6px;cursor:pointer;font-size:12px}.task-person-option:hover{background:#f4f7f7}.task-person-option input{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--accent)}.task-person-option small{margin-left:auto;color:var(--muted);font-size:10px}.task-person-option:has(input:disabled){opacity:.6}
.task-people-note{margin-top:12px;font-size:11px}.task-people-footer-actions{display:flex;gap:8px}.task-people-footer-actions button{min-height:40px}
@media(max-width:520px){.task-role-heading{flex-wrap:wrap;gap:2px}#task-people-dialog .modal-footer{flex-wrap:wrap}.task-people-footer-actions{margin-left:auto}.task-people-controls{gap:10px 16px}}

.task-routing-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 18px;font-size:12px;line-height:1.5}.task-routing-bar .secondary{flex-shrink:0;font-size:12px;padding:10px 14px}.task-ai-label{font-size:10px;color:var(--muted);align-self:center}#task-people-reason{font-size:13px;line-height:1.6;margin-bottom:20px}@media(max-width:600px){.task-routing-bar{align-items:flex-start;flex-direction:column}}

/* Keep task numbers intact; scroll the table on narrow screens. */
#document .meeting-tasks-table{table-layout:fixed;min-width:540px;width:100%}
#document .meeting-tasks-table tr>:first-child{width:56px;min-width:56px;padding:12px 10px;text-align:center;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}
#document .meeting-tasks-table tr>:last-child{width:144px;min-width:120px}
#document .meeting-tasks-table tr>:nth-child(2){padding:12px 14px}
.task-plan-note{font-size:13px;color:var(--muted);line-height:1.6}.task-plan-note a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){#document .meeting-tasks-table tr>:first-child{width:48px;min-width:48px}#document .meeting-tasks-table tr>:last-child{width:124px}}

.avatar{position:relative;overflow:hidden}.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.task-person-option .avatar{flex:0 0 30px}

.upload-parts{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.upload-part{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fafbfb}
.upload-part-index{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:var(--soft);color:var(--accent);display:grid;place-items:center;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
.upload-part-meta{min-width:0;flex:1}
.upload-part-meta strong{display:block;font-size:13px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.upload-part-meta small{display:block;margin-top:3px;color:var(--muted);font-size:11px}
.upload-part-actions{display:flex;gap:4px;flex-shrink:0}
.upload-part-actions button{width:32px;height:32px;border:1px solid #dfe4e6;border-radius:8px;background:white;font-size:14px;line-height:1}
.upload-part-actions button:hover:not(:disabled){border-color:var(--accent);background:var(--soft)}
.upload-parts-hint{margin:10px 2px 0;font-size:11px}
@media(max-width:760px){.upload-part{align-items:flex-start}.upload-part-actions{margin-left:auto}}

/* Summary presets and reading saved alternatives. */
.summary-preset-choice{margin:24px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:center}
.summary-preset-choice>label{grid-column:1;grid-row:1;font-size:13px;font-weight:650}
.summary-preset-choice select,.summary-preset-choice .sut-select-trigger{grid-column:1/-1;grid-row:2;margin:0;min-height:46px;font-size:14px;background:#fff}
.summary-preset-choice p{grid-column:1/-1;grid-row:3;font-size:12px;line-height:1.55;color:#68777e}
.summary-preset-choice .sut-select-error{grid-column:1/-1;grid-row:4}
.summary-preset-choice .text-button{grid-column:2;grid-row:1;justify-self:end;display:inline-flex;align-items:center;gap:5px;color:#68777e;white-space:nowrap}
.summary-preset-choice .text-button:hover{color:var(--accent)}
.summary-preset-choice .text-button svg{width:13px;height:13px;flex:none}
@media(max-width:620px){.summary-preset-choice{gap:6px 12px}.summary-preset-choice .text-button{min-height:44px}.summary-preset-choice .sut-select-trigger{font-size:16px}}
.summary-format-bar{display:flex;align-items:end;flex-wrap:wrap;gap:16px;padding:20px 0;border-bottom:1px solid #dce2e3;margin-bottom:24px}
.summary-format-bar[hidden]{display:none}.summary-format-bar label{flex:1;min-width:200px;font-size:14px}
.summary-format-bar select{display:block;width:100%;margin-top:8px}.summary-format-bar p{width:100%;margin:0;font-size:14px}
#document h3,.version-reading h3{font-size:18px;margin:24px 0 12px}.version-reading h2{margin-top:36px}
.version-reading{line-height:1.65}.version-reading .table-wrap{overflow-x:auto}

/* Recording metadata and controls form one calm, compact header. */
#job-view>.text-button{min-height:32px;display:inline-flex;align-items:center}
#job-view .recording-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 20px;margin:20px 0 28px}
#job-view .recording-heading-body{display:contents}
#job-view .recording-heading #job-date{grid-column:1;order:1;margin:0;line-height:1.6}
#job-view .recording-heading #job-badge{grid-column:2;order:1;justify-self:end}
#job-view .recording-heading #job-title{grid-column:1/-1;order:2;min-width:0;font-size:30px;line-height:1.2;letter-spacing:-1px}
#job-view .recording-heading #job-meta{grid-column:1/-1;order:3;min-width:0;margin:3px 0 0;line-height:1.6;overflow-wrap:anywhere;color:#68777e}
#job-view .recording-heading-body>p.muted:not(#job-meta):not(#task-publication-result){grid-column:1/-1;order:4;margin:0;line-height:1.6;font-size:11px;overflow-wrap:anywhere}
#job-view .recording-heading-body>p.muted:empty{display:none}
#job-view .recording-heading #task-publication-result{grid-column:1/-1;order:5;margin:0;line-height:1.6;overflow-wrap:anywhere}
#job-view .recording-heading .account-actions{grid-column:1;grid-row:6;order:6;display:flex;flex-wrap:wrap;gap:4px 18px;margin:3px 0 0;min-width:0}
#job-view .recording-heading .text-button{min-height:36px;line-height:1.5;text-align:left;color:#68777e}
#job-view .recording-heading .text-button:hover:not(:disabled){color:var(--accent)}
#job-view .recording-heading #delete-meeting{grid-column:2;grid-row:6;order:6;justify-self:end;margin-top:3px;color:var(--muted)}
#job-view .recording-heading #delete-meeting:hover{color:var(--accent-hover)}
@media(min-width:761px){
  main:has(#job-view:not([hidden])){display:flex;flex-direction:column;min-height:calc(100vh - 86px);min-height:calc(100dvh - 86px);padding-top:32px;row-gap:40px}
  main:has(#job-view:not([hidden])) .main-footer{margin-top:auto;padding-top:20px}
}
@media(max-width:760px){
  #job-view .recording-heading{gap:8px 12px;margin:16px 0 22px}
  #job-view .recording-heading #job-title{font-size:25px;letter-spacing:-.7px}
  #job-view .recording-heading .text-button{min-height:44px}
}

/* Processing: measured completion and quiet activity have separate treatments. */
.processing-card{padding:28px;box-shadow:0 8px 30px #24323b03}
.processing-top{gap:18px;min-height:82px}
.processing-heading{flex:1;min-width:0}
.processing-eyebrow{font-size:10px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin-bottom:7px}
.processing-top h2{font-size:20px;line-height:1.3;margin:0}
#stage-detail{margin-top:7px;font-size:12px;line-height:1.55;max-width:540px;color:#65747b}
.processing-symbol{position:relative;display:block;width:76px;height:62px;flex:none;border-radius:15px;color:var(--accent);background:var(--soft)}
.processing-wave{position:absolute;inset:0;overflow:hidden;border-radius:inherit}
.processing-wave i{position:absolute;left:0;top:0;display:block;width:2.4px;height:var(--h);border-radius:3px;background:currentColor;transform:translate(var(--x),var(--y));transform-origin:center;opacity:.65}
.motion-active .processing-wave i{animation:sut-processing-wave 4.8s ease-in-out infinite;animation-delay:var(--delay)}
.motion-active.motion-summary .processing-wave i{animation-name:sut-processing-gather}
@keyframes sut-processing-wave{0%,100%{transform:translate(var(--x),var(--y)) scaleY(.55);opacity:.6}50%{transform:translate(var(--x),var(--y)) scaleY(1);opacity:1}}
@keyframes sut-processing-gather{0%,14%{transform:translate(var(--x),var(--y)) scaleY(.68);opacity:.7}32%{transform:translate(var(--x),var(--y));opacity:1}57%,79%{transform:translate(var(--tx),var(--ty)) rotate(90deg) scaleY(var(--scale));opacity:.86}100%{transform:translate(var(--x),var(--y)) scaleY(.68);opacity:.7}}
.progress-number{min-width:88px;font-variant-numeric:tabular-nums}
.progress-number strong{font-size:29px;line-height:1.2;letter-spacing:-.7px}
.progress-number strong.activity-label{font-size:13px;letter-spacing:0}
.progress-number span{font-size:11px;color:#65747b;max-width:110px}
#stage-progress,.stage-activity{display:block;margin-top:24px;height:5px}
.stage-activity span{width:38%;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.35;transform:translateX(80%)}
.stage-activity.active span{animation:sut-processing-pass 3.8s cubic-bezier(.4,0,.3,1) infinite}
@keyframes sut-processing-pass{0%{transform:translateX(-100%);opacity:0}12%,88%{opacity:.8}100%{transform:translateX(265%);opacity:0}}
.processing-times{font-size:12px;line-height:1.5;align-items:flex-start;color:#65747b;font-variant-numeric:tabular-nums}
.processing-times strong{max-width:54%;font-size:12px}
.processing-heartbeat{font-size:11px;color:#65747b;margin-top:6px}
.processing-heartbeat:not(:empty)::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--green);margin-right:6px;vertical-align:2px}
.stage-list{list-style:none;padding:0;margin:23px 0 0;font-size:11px;color:#65747b;gap:10px 14px}
.stage-list li{display:flex;gap:6px;align-items:center;min-width:0}
.stage-list b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;border-radius:50%;background:#f2f4f5;font-size:10px;font-weight:500}
.stage-list .done b{background:none}
.stage-list .current{font-weight:600}
.stage-list .current b{background:var(--soft)}
.processing-footer{margin-top:23px;padding-top:18px;gap:18px}
.processing-footer .processing-note{font-size:11px;color:#65747b;line-height:1.6}
.processing-footer .secondary{min-height:40px}
.summary-version-progress{display:flex;align-items:center;flex-wrap:wrap;gap:12px;background:#f8fafb;border:1px solid var(--line);border-radius:12px;padding:16px;margin:12px 0}
.summary-version-progress-copy{flex:1;min-width:0}
.summary-version-progress-copy strong{display:block;font-size:13px;line-height:1.45}
.summary-version-progress-copy p{font-size:12px;margin:5px 0;color:#65747b;line-height:1.5}
.summary-version-progress-copy small{display:block;color:#65747b;font-size:11px;line-height:1.5}
.summary-version-progress .progressbar{flex:0 0 100%;height:4px;margin:4px 0 0;overflow:hidden;border-radius:4px;background:#e9eef0}
.summary-version-progress .progressbar span{display:block;height:100%;width:38%;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translateX(80%);opacity:.35}
.summary-version-progress.motion-active .progressbar span{animation:sut-processing-pass 3.8s cubic-bezier(.4,0,.3,1) infinite}
@media(max-width:760px){
  .processing-card{padding:20px}
  .processing-top{flex-wrap:wrap;gap:12px;align-items:center}
  .processing-heading{flex:1 1 calc(100% - 88px)}
  .processing-top h2{font-size:18px}
  .processing-eyebrow{font-size:9px;letter-spacing:1px}
  .progress-number{margin:3px 0 0;display:flex;align-items:baseline;gap:8px;text-align:left;width:100%}
  .progress-number strong{font-size:26px}
  .progress-number span{margin:0;max-width:none;font-size:11px}
  #stage-progress,.stage-activity{margin-top:18px}
  .processing-times{gap:6px}
  .processing-times strong{max-width:100%;text-align:left}
  .stage-list{justify-content:flex-start;gap:8px 12px;margin-top:20px}
  .processing-footer{gap:12px;margin-top:20px;padding-top:16px}
  .processing-footer .secondary{min-height:44px}
}
@media(prefers-reduced-motion:reduce){
  .processing-wave i,.stage-activity.active span,.summary-version-progress.motion-active .progressbar span{animation:none!important}
  .stage-activity.active span,.summary-version-progress.motion-active .progressbar span{transform:translateX(80%);opacity:.4}
}

/* Per-bar geometry stays in CSS so the strict content policy permits it. */
.processing-wave i:nth-child(1){--h:10px;--x:13px;--y:26px;--tx:20px;--ty:16px;--scale:0.900000;--delay:0s}
.processing-wave i:nth-child(2){--h:18px;--x:17.4px;--y:22px;--tx:31px;--ty:12px;--scale:0.500000;--delay:-0.09s}
.processing-wave i:nth-child(3){--h:28px;--x:21.8px;--y:17px;--tx:42px;--ty:7px;--scale:0.321429;--delay:-0.18s}
.processing-wave i:nth-child(4){--h:38px;--x:26.2px;--y:12px;--tx:53px;--ty:2px;--scale:0.236842;--delay:-0.27s}
.processing-wave i:nth-child(5){--h:24px;--x:30.6px;--y:19px;--tx:20px;--ty:19px;--scale:0.375000;--delay:-0.36s}
.processing-wave i:nth-child(6){--h:44px;--x:35px;--y:9px;--tx:31px;--ty:9px;--scale:0.204545;--delay:-0.45s}
.processing-wave i:nth-child(7){--h:32px;--x:39.4px;--y:15px;--tx:42px;--ty:15px;--scale:0.281250;--delay:-0.54s}
.processing-wave i:nth-child(8){--h:40px;--x:43.8px;--y:11px;--tx:53px;--ty:11px;--scale:0.225000;--delay:-0.63s}
.processing-wave i:nth-child(9){--h:24px;--x:48.2px;--y:19px;--tx:20px;--ty:29px;--scale:0.375000;--delay:-0.72s}
.processing-wave i:nth-child(10){--h:30px;--x:52.6px;--y:16px;--tx:31px;--ty:26px;--scale:0.300000;--delay:-0.81s}
.processing-wave i:nth-child(11){--h:18px;--x:57px;--y:22px;--tx:42px;--ty:32px;--scale:0.500000;--delay:-0.9s}
.processing-wave i:nth-child(12){--h:10px;--x:61.4px;--y:26px;--tx:53px;--ty:36px;--scale:0.900000;--delay:-0.99s}

/* Keep the same upload area before and after file selection. */
#upload-view .drop-intro{display:flex;flex-direction:column;align-items:center;min-width:0}
#upload-view .drop-intro #file-help{margin-top:6px;font-size:12px;color:#68777e}
#upload-view .drop-intro .file-types{display:block}
#upload-view #upload-error{width:100%;margin:10px 0 0;text-align:left}
#upload-view .drop-zone.has-file{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);align-items:center;gap:10px 16px;height:215px;min-height:0;padding:18px;text-align:left;cursor:default}
#upload-view .drop-zone.has-file .drop-intro{grid-column:1;grid-row:1;align-items:flex-start}
#upload-view .drop-zone.has-file .drop-intro strong{font-weight:600}
#upload-view .drop-zone.has-file #file-help{font-size:11px}
#upload-view .drop-zone.has-file .file-types{display:none}
#upload-view .drop-zone.has-file .file-select{grid-column:2;grid-row:1;margin:0}
#upload-view .drop-zone.has-file .upload-parts{grid-column:1/-1;grid-row:2;align-self:stretch;align-content:start;min-height:0;max-height:none;height:100%;margin:0;overflow-y:auto;overscroll-behavior:contain}
#upload-view .drop-zone.has-file:has(#upload-error:not([hidden])){border-color:#e2afa3;background:#fff9f7}
#upload-view .drop-zone.has-file:has(#upload-error:not([hidden])) .drop-intro{visibility:hidden}
#upload-view .drop-zone.has-file #upload-error:not([hidden]){grid-column:1;grid-row:1;align-self:stretch;display:flex;align-items:center;max-height:100%;overflow:auto;margin:0;padding:8px 12px;background:#fff1ec;border-color:#eabcae;color:#a94631;font-size:12px;line-height:1.35}
#upload-view #upload-error span{min-width:0;overflow-wrap:anywhere}
#upload-view #upload-error a{display:inline-block;margin-left:5px;color:#a33720;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
#upload-view #upload-error a:hover{color:#772714}
#upload-view #upload-error button{flex:none;margin-left:12px;padding:4px 0;color:#aa3e29;text-decoration:underline;text-underline-offset:3px;font-size:inherit;font-weight:650}
@media(max-width:760px){
  #upload-view .drop-zone.has-file{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);height:auto;min-height:200px;padding:16px}
  #upload-view .drop-zone.has-file .file-select{grid-column:1;grid-row:2;justify-self:start}
  #upload-view .drop-zone.has-file .upload-parts{grid-column:1;grid-row:3;max-height:130px}
}
@media(min-width:1160px){
  #upload-view .options[open] .options-grid{margin:12px 0 4px}
  #upload-view .options[open] .options-grid label{min-width:0}
}
@media(min-width:1160px) and (max-height:1150px){
  #upload-view .drop-zone.has-file{height:180px;padding:17px}
}
@media(min-width:1160px) and (max-height:950px){
  #upload-view .page-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;column-gap:24px;margin-bottom:14px}
  #upload-view .eyebrow{grid-column:1/-1;margin-bottom:7px}
  #upload-view .page-heading h1{font-size:32px;line-height:1.1}
  #upload-view .page-heading p{grid-column:2;grid-row:2;margin:0;font-size:12px;line-height:1.5}
  #upload-view .drop-zone:not(.has-file){min-height:155px;padding:12px}
  #upload-view .drop-zone.has-file{height:155px;padding:12px}
  #upload-view .upload-card{padding:18px 24px}
  #upload-view .card-title{margin-bottom:12px}
  #upload-view .summary-preset-choice{margin:12px 0}
  #upload-view .options{margin-top:8px}
  #upload-view .upload-footer{margin-top:8px;padding-top:12px}
}
@media(min-width:1160px) and (max-height:850px){
  #upload-view .page-heading h1{font-size:28px;line-height:1.05}
  #upload-view .page-heading{margin-bottom:8px}
  #upload-view .drop-zone:not(.has-file){min-height:125px;padding:10px}
  #upload-view .drop-zone.has-file{height:125px;gap:5px 10px;padding:8px 10px}
  #upload-view .upload-part{padding:7px 10px}
  #upload-view .upload-card{padding:13px 20px}
  #upload-view .card-title{margin-bottom:8px}
  #upload-view .summary-preset-choice{margin:8px 0}
  #upload-view .options{margin-top:6px}
  #upload-view .options[open] .options-grid{margin:8px 0 2px}
  #upload-view .upload-footer{margin-top:6px;padding-top:8px}
  #upload-view .journey{margin-top:4px;gap:10px}
  #upload-view .journey p{margin-top:2px;line-height:1.3}
}
@media(min-width:1160px) and (max-height:750px){
  #upload-view .journey{display:none}
}
@media(min-width:1160px) and (max-height:750px){
  #upload-view .journey{margin-top:0}
  main:has(#upload-view:not([hidden])) .main-footer{padding-bottom:5px}
}
