:root{--bg:#f7f8f5;--panel:#fff;--ink:#20332b;--muted:#718078;--green:#255841;--green-dark:#193f2f;--soft:#edf3ed;--line:#e2e8df;--orange:#b5753a;--warm:#fbf3e6;--danger:#9f4537;font:14px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg)}
.session-controls{display:flex;align-items:center;gap:12px;margin-left:auto}.session-controls .text-button{font-size:12px}
.owner-login-main{min-height:100vh;display:grid;place-items:center;padding:32px 20px}
.owner-login-card{width:100%;max-width:430px;background:var(--panel);padding:42px;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 65px #20332b0a}
.owner-login-card .brand{margin-bottom:40px}.owner-login-card h1{font-size:27px;margin:8px 0 12px}.owner-login-card .eyebrow{margin-bottom:0}
.owner-login-card form{display:grid;gap:20px;margin-top:30px}.owner-login-card label{display:grid;gap:7px}.owner-login-card input{width:100%}.owner-login-card input[readonly]{background:var(--bg);color:var(--muted)}
.owner-login-card button{width:100%;padding:13px}.owner-login-error{color:var(--danger);background:#fff3ef;border-radius:7px;padding:10px 12px;margin:0;font-size:13px}
.owner-login-footnote{font-size:12px;color:var(--muted);text-align:center;margin:24px 0 0}
@media(max-width:600px){.owner-login-card{padding:30px 24px}.session-controls{gap:3px;flex-direction:column;align-items:flex-end}.session-controls .local-badge{font-size:10px}.session-controls .text-button{padding:2px 6px}}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:var(--panel);border:1px solid #d3dcd0;border-radius:7px;padding:9px 16px;font-size:13px;font-weight:500;white-space:nowrap}
button:hover{background:var(--soft);border-color:#8eaa94}
button:disabled{opacity:.5;cursor:wait}
button.primary{color:#fff;background:var(--green);border-color:var(--green)}
button.primary:hover{background:var(--green-dark)}
button.secondary{background:transparent}
.text-button{padding:4px 2px;color:var(--green);background:none;border:0}
.icon-button{font-size:23px;line-height:1;padding:7px 11px;background:none;border:0}
.file-button input{max-width:310px}
.file-button{cursor:pointer}
a{color:var(--green);text-decoration:none}
:focus-visible{outline:3px solid #bf925c;outline-offset:3px}
[hidden]{display:none!important}
.app-header{height:84px;max-width:100%;padding:0 max(30px,calc((100vw - 1160px)/2));display:flex;align-items:center;gap:52px;background:var(--panel);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:17px;font-weight:650;letter-spacing:.02em}
.brand small{display:block;font-size:10px;color:var(--muted);font-weight:400;letter-spacing:.05em}
.brand-mark{width:37px;height:37px;line-height:37px;background:var(--green);border-radius:10px;color:#fff;text-align:center;font-family:"Songti SC",serif;font-size:21px}
.app-header nav{display:flex;height:100%;align-items:stretch;gap:12px}
.app-header nav button{border:0;border-radius:0;padding:0 15px;color:var(--muted);background:transparent;position:relative;font-size:14px}
.app-header nav button[aria-current]{color:var(--green);font-weight:650}
.app-header nav button[aria-current]:after{content:"";height:3px;position:absolute;bottom:0;left:15px;right:15px;background:var(--green);border-radius:2px}
.local-badge{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:11px;display:flex;gap:7px;align-items:center}
.local-badge i{width:6px;height:6px;background:#799c7f;border-radius:50%}
main{max-width:1160px;margin:0 auto;padding:38px 0 20px;min-height:calc(100vh - 152px)}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}
.hero{margin:10px 0 34px}
.eyebrow{color:var(--orange);font-size:11px;letter-spacing:.08em;margin:0 0 7px;font-weight:500}
h1{font-size:30px;line-height:1.45;letter-spacing:-.02em;margin:0;font-weight:650}
h2{font-size:18px;line-height:1.55;margin:0 0 8px;font-weight:650}
h3{font-size:14px;margin:0 0 7px;font-weight:650}
p{margin:8px 0}
.lead{color:var(--muted);margin:9px 0 0;font-size:14px}
.small{font-size:12px}
.muted,small{color:var(--muted)}
.card{border:1px solid var(--line);border-radius:12px;background:var(--panel);min-width:0}
.padded{padding:28px}
.stack{display:grid;gap:20px;min-width:0}
.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.toolbar>label{min-width:160px}
.callout{display:flex;gap:15px;align-items:center;justify-content:space-between;background:var(--warm);border:1px solid #eee0c9;border-radius:9px;padding:15px 20px;font-size:13px;margin:0 0 20px}
.callout p{margin:0}
.callout small{display:block;margin-top:3px}
.workflow{max-width:900px;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;margin:0 auto}
.stepper{list-style:none;margin:0;padding:24px 38px;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fbfcf9;gap:12px}
.stepper li{color:#98a397;display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap}
.stepper span{display:inline-flex;border:1px solid var(--line);width:26px;height:26px;border-radius:50%;align-items:center;justify-content:center;font-size:11px}
.stepper li.current{color:var(--green);font-weight:650}
.stepper li.current span{background:var(--green);border-color:var(--green);color:#fff}
.stepper li.done{color:var(--green)}
.stepper li.done span{background:var(--soft);border-color:var(--soft)}
.eval-step{padding:32px 40px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px}
.section-heading p{font-size:13px;color:var(--muted);margin:3px 0}
.section-heading.compact{margin:22px 0 10px;align-items:center}
.step-count{font-size:11px;color:#a0ab9d;font-variant-numeric:tabular-nums;padding-top:7px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.wide{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:500}
input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-width:0;border:1px solid #d5ded1;border-radius:6px;background:#fff;padding:10px 11px;font-size:13px;line-height:1.6}
input::placeholder,textarea::placeholder{color:#a0aaa1}
textarea{resize:vertical;line-height:1.85}
input[type=checkbox],input[type=radio]{accent-color:var(--green);flex-shrink:0}
input[type=file]{font-size:12px!important}
.optional{color:#93a08e;font-size:10px;display:contents}
.inline-note{font-size:12px;color:var(--muted);margin:15px 0}
.inline-note.warn{color:#8c622e}
.quiet-details{margin:18px 0;font-size:13px}
.quiet-details summary{cursor:pointer;color:var(--green);font-size:12px}
.quiet-details>p{color:var(--muted)}
.step-actions{border-top:1px solid var(--line);padding-top:24px;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.step-actions .muted{font-size:11px}
.step-actions .text-button{font-size:11px}
.call-q{padding:15px 0;border-bottom:1px solid var(--line)}
.call-q:last-child{border:0}
.call-q p{font-size:13px}
.checkline{display:flex;flex-direction:row;align-items:flex-start;gap:9px;font-size:12px;margin:18px 0}
.checkline input{margin-top:5px}
.checkline.small{font-size:11px}
.segmented{display:inline-flex;padding:4px;border:1px solid var(--line);background:#f4f6f1;border-radius:8px;gap:4px;margin-bottom:22px}
.segmented button{border:1px solid transparent;background:none;padding:7px 20px;font-size:12px}
.segmented button[aria-pressed=true]{background:#fff;border-color:var(--line);box-shadow:0 1px 3px #173b2e08;color:var(--green)}
.upload-zone{border:1px dashed #b2c4ad;border-radius:10px;padding:35px 25px;background:#fbfcf9;text-align:center;align-items:center;cursor:pointer}
.upload-zone:hover{background:#f4f8f1}
.upload-zone strong{font-size:15px;font-weight:500}
.upload-zone>span:not(.upload-symbol){font-size:11px;color:var(--muted)}
.upload-zone input{max-width:360px;margin-top:13px}
.upload-symbol{font-size:26px;color:var(--green);width:48px;height:48px;background:var(--soft);border-radius:50%;line-height:48px;margin-bottom:5px}
.file-button{margin-bottom:10px}
.inset{margin-top:15px}
.job-status{padding:13px 38px;background:var(--soft);border-bottom:1px solid var(--line);font-size:12px;white-space:pre-wrap}
.job-status.failed{background:var(--warm);color:#8a5830}
.processing{text-align:center;min-height:320px;padding:70px 25px}
.processing p{color:var(--muted);font-size:13px}
.spinner{width:34px;height:34px;border:3px solid var(--soft);border-top-color:var(--green);border-radius:50%;margin:0 auto 22px;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}
}
@media(prefers-reduced-motion:reduce){.spinner{animation:none}
}
#recent-jobs-details{max-width:900px;margin:22px auto}
.recent-jobs{display:grid;gap:6px;margin-top:12px}
.recent-job{font-size:12px;text-align:left;background:none;border-color:var(--line);display:flex;justify-content:space-between;gap:12px;white-space:normal}
.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.search-field{max-width:380px;flex:1}
.report-list{display:grid;gap:10px}
.report-row{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(130px,1fr) minmax(120px,.9fr) 110px 24px;text-align:left;align-items:center;gap:25px;padding:21px 24px;border:1px solid var(--line);border-radius:10px;background:#fff;white-space:normal;width:100%;font-weight:400}
.report-row:hover{background:#fbfdf9;border-color:#abc0a3}
.report-row strong{font-size:15px;font-weight:600;display:block}
.report-row small{font-size:11px;display:block;margin-top:3px}
.report-row .arrow{font-size:20px;color:#97a58f}
.tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:5px;background:var(--soft);color:var(--green);font-size:11px;font-weight:400}
.tag.warn{background:var(--warm);color:#916633}
.tag.neutral{background:#f1f3ef;color:#778571}
.tag.bad{background:#f9eeea;color:var(--danger)}
.stats{margin-top:28px}
.stats summary{font-size:13px}
.empty{text-align:center;padding:65px 20px;background:#fff;border:1px dashed var(--line);border-radius:12px}
.empty h2{font-size:18px}
.empty p{color:var(--muted);font-size:13px;margin:9px 0 20px}
.detail-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:23px}
.report-hero{padding:32px}
.report-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.report-title h1{font-size:28px}
.report-meta{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:10px 0}
.metrics{display:grid;grid-template-columns:1.5fr 1fr 1fr;margin-top:25px;border-top:1px solid var(--line);padding-top:24px;gap:25px}
.metrics>div+div{border-left:1px solid var(--line);padding-left:25px}
.metrics small{display:block;font-size:11px}
.metrics b{font-size:24px;line-height:1.5;display:block;font-weight:600;margin:3px 0}
.metrics>div:first-child b{font-size:23px}
.report-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:7px 0 -5px}
.report-section-heading h2{margin:0}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.facts small{display:block;font-size:11px;margin-bottom:3px}
.facts span{font-size:13px}
.question-review{padding:26px 30px}
.score-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.score-head h2{font-size:17px;margin:0}
.score-number{font-variant-numeric:tabular-nums;color:var(--green);font-size:27px;font-weight:600;line-height:1.2;white-space:nowrap}
.score-number small{font-size:11px;font-weight:400}
.ai-status{font-size:11px;color:var(--muted);margin-top:5px}
.judgement{font-size:14px;line-height:1.85;margin:15px 0}
.quote{display:block;width:100%;text-align:left;white-space:normal;border:0;border-left:3px solid #b6c9ae;border-radius:0 6px 6px 0;background:#f6f8f2;font-size:13px;font-weight:400;line-height:1.85;padding:12px 15px;margin:9px 0}
.quote:hover{background:#edf3e8}
.quote small{display:block;font-size:10px;margin-top:4px;color:#7d9473}
.chips{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.chips span{font-size:11px;padding:3px 9px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}
.note{background:var(--soft);padding:12px 15px;border-radius:7px;font-size:12px}
.note.warn{background:var(--warm);color:#8b612f}
.review-fields{border-top:1px solid var(--line);padding-top:14px;margin-top:17px}
.review-fields summary{cursor:pointer;color:var(--green);font-size:12px}
.comparison{border-left:3px solid #c29458;background:var(--warm);padding:12px 15px;margin-top:17px;border-radius:0 5px 5px 0;font-size:12px}
.risk{padding:18px;background:#fcf8ef;border:1px solid #eee5d7;border-radius:8px;margin-top:13px}
.risk .form-grid{margin-top:12px}
.audit{margin:0;font-size:12px}
.audit summary{cursor:pointer;color:var(--muted)}
.audit-entry{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.decision-section{margin-top:24px}
.decision-section .section-heading{margin-bottom:20px}
.decision-section>label{margin:15px 0}
.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.decision-grid>div{min-width:0}
.decision-grid label{margin:14px 0}
.decision-grid>div:last-child{border-left:1px solid var(--line);padding-left:25px}
.review-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;margin-top:23px}
.review-actions .muted{margin-left:auto;font-size:11px}
.handoff-block{margin-top:20px}
.handoff-block summary{font-size:14px;cursor:pointer;color:var(--green);font-weight:500}
.handoff-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.85 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;border-top:1px solid var(--line);padding-top:20px;margin:18px 0 0}
.export-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}
.drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(580px,95vw);height:100dvh;max-height:none;border:0;border-left:1px solid var(--line);padding:0;background:#fbfcf9;box-shadow:-10px 0 50px #14251a22;max-width:none}
.drawer::backdrop{background:#17261f50}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:22px 25px;border-bottom:1px solid var(--line);background:#fff}
.drawer-head h2{margin:0}
.drawer-head p{margin:2px 0 0}
.drawer-body{height:calc(100% - 96px);overflow:auto;padding:20px 25px}
.segment{border:1px solid var(--line);border-radius:8px;background:#fff;margin:10px 0;padding:13px 15px}
.segment.candidate{background:#f0f5ec}
.segment p{font-size:13px;white-space:pre-wrap;line-height:1.85;margin:6px 0 0}
.segment small{font-size:10px}
.segment.highlight{background:#fff1ce;border:2px solid #bc9654}
.segment .text-button{font-size:10px;padding:0;margin-left:10px}
audio{width:100%;margin:0 0 18px}
.standard-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:20px;margin:20px 0}
.question-nav{align-self:start;padding:11px;display:grid;gap:5px}
.question-nav button{text-align:left;white-space:normal;border:0;background:none;font-size:13px;padding:12px}
.question-nav button.active{background:var(--soft);color:var(--green)}
.question-nav small{display:block;font-size:10px;margin-top:2px}
.library-controls{margin-top:24px}
.library-controls label:first-child{flex:1;min-width:230px}
.library-controls label{min-width:150px}
.ask{font-size:18px;line-height:1.85;background:#f2f6ee;border-radius:8px;padding:20px;margin:18px 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.answer{padding:17px;background:#f1f6ed;border-radius:7px;font-size:13px}
.answer.bad{background:#f7f2eb}
.answer h3{font-size:12px}
.import-steps{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.import-steps>div{border:1px solid var(--line);border-radius:9px;padding:22px}
.number{display:inline-flex;width:27px;height:27px;align-items:center;justify-content:center;border-radius:50%;background:var(--soft);color:var(--green);font-size:12px;margin-bottom:12px}
.preview-panel{margin-top:24px;padding-top:23px;border-top:1px solid var(--line)}
.preview-panel .preview-question{padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}
.preview-panel .preview-question small{display:block}
.settings-card{max-width:740px;margin:0 auto}
.settings-card+#health{padding-top:16px}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0 26px}
.choice{display:flex;flex-direction:row;gap:10px;padding:18px;border:1px solid var(--line);border-radius:9px;cursor:pointer}
.choice:has(input:checked){background:var(--soft);border-color:#92ac88}
.choice strong{font-size:14px;display:block}
.choice small{display:block;font-size:11px;font-weight:400;margin-top:4px}
.choice input{margin-top:5px}
.settings-actions{display:flex;gap:10px;margin-top:25px;border-top:1px solid var(--line);padding-top:22px}
.notice{background:#e6f0e1;color:#305333;border:1px solid #bcd0b5;border-radius:8px;padding:12px 18px;margin:0 0 20px;font-size:13px;white-space:pre-wrap;position:relative}
.notice.error{background:#fff0e8;border-color:#e8c6b5;color:#8c4531}
.notice button{position:absolute;top:9px;right:10px;font-size:18px;padding:0 5px}
.app-footer{font-size:10px;color:#94a08e;max-width:1160px;margin:0 auto;text-align:center;padding:30px 0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:1240px){main{padding:30px;max-width:1220px}
.app-header{padding:0 30px;gap:35px}
}
@media(max-width:800px){.app-header{padding:0 20px;gap:22px}
.local-badge{display:none}
.app-header nav{margin-left:auto;gap:1px}
.app-header nav button{padding:0 11px}
.app-header nav button[aria-current]:after{left:11px;right:11px}
main{padding:26px 20px}
.report-row{grid-template-columns:1.2fr 1fr 100px;gap:15px}
.report-row>div:nth-child(3),.report-row>.arrow{display:none}
.standard-layout{grid-template-columns:210px minmax(0,1fr)}
.split{grid-template-columns:1fr}
.facts{grid-template-columns:1fr 1fr}
.eval-step{padding:28px}
.stepper{padding:20px 28px}
.decision-grid{grid-template-columns:1fr}
.decision-grid>div:last-child{border-left:0;padding-left:0}
.import-steps{gap:15px}
.metrics{gap:18px}
.metrics>div+div{padding-left:18px}
.metrics b{font-size:21px}
}
@media(max-width:560px){.app-header{height:auto;flex-wrap:wrap;gap:0;padding:16px 18px 0}
.brand{font-size:16px}
.brand small{font-size:9px}
.brand-mark{width:32px;height:32px;line-height:32px}
.app-header nav{width:100%;height:48px;justify-content:space-between;margin-top:8px}
.app-header nav button{flex:1}
.page-heading{align-items:flex-start;gap:15px;margin-bottom:24px}
.page-heading>button{font-size:11px;padding:8px 10px;margin-top:16px}
.hero{display:block}
.hero>button{margin-top:15px}
h1{font-size:25px}
.lead{font-size:12px}
.eyebrow{font-size:10px}
main{padding:24px 15px}
.stepper{padding:17px 16px;gap:8px}
.stepper li{flex-direction:column;gap:5px;font-size:10px}
.stepper span{width:24px;height:24px}
.eval-step{padding:24px 19px}
.section-heading h2{font-size:17px}
.step-count{display:none}
.form-grid{grid-template-columns:1fr;gap:16px}
.wide{grid-column:auto}
.step-actions{flex-wrap:wrap;align-items:center}
.step-actions>button:last-child{margin-left:auto}
.step-actions>.muted{width:100%}
.callout{align-items:flex-start;flex-direction:column;padding:15px}
.padded{padding:22px}
.list-toolbar{gap:10px}
.list-toolbar .toolbar{gap:8px}
.report-row{grid-template-columns:minmax(0,1fr) 100px;padding:17px;gap:14px}
.report-row>div:nth-child(2){display:none}
.report-row strong{font-size:14px}
.report-row .tag{font-size:10px}
.standard-layout{grid-template-columns:1fr}
.question-nav{grid-template-columns:1fr 1fr}
.question-nav button{font-size:12px}
.import-steps,.choice-grid{grid-template-columns:1fr}
.report-hero{padding:23px}
.report-title h1{font-size:24px}
.report-title{gap:12px}
.report-meta{gap:8px;font-size:11px}
.metrics{grid-template-columns:1fr 1fr;gap:17px}
.metrics>div:first-child{grid-column:1/-1}
.metrics>div:nth-child(2){border-left:0;padding-left:0}
.metrics>div:first-child b{font-size:23px}
.metrics small{font-size:10px}
.question-review{padding:22px}
.score-head h2{font-size:15px}
.score-number{font-size:23px}
.detail-top{align-items:flex-start;gap:10px}
.detail-top .toolbar{gap:7px}
.detail-top button{font-size:11px;padding:7px 8px}
.facts{grid-template-columns:1fr 1fr;gap:15px}
.review-actions{gap:10px}
.review-actions button{font-size:12px}
.review-actions .muted{width:100%;margin-left:0}
.settings-actions{flex-wrap:wrap}
.upload-zone{padding:25px 14px}
.job-status{padding:13px 19px}
}

@media print{body{background:#fff;color:#111}
.app-header,.app-footer,.notice,.detail-top,.page:not(#page-detail),.review-fields,.review-actions,.export-actions,.decision-section,.audit,.drawer,button:not(.quote){display:none!important}
main{max-width:none;padding:0}
.page#page-detail{display:block!important}
.card{border-color:#ddd;break-inside:avoid;box-shadow:none}
.report-hero,.question-review,.padded{padding:18px}
.quote{display:block!important;background:#f6f6f6;color:#222}
.quote small{display:none}
.handoff-block{display:block!important}
.handoff-block>summary{display:none}
.handoff-block>pre{display:block!important}
.stack{gap:14px}
.metrics{margin-top:14px;padding-top:12px}
.tag{border:1px solid #ccc}
.report-section-heading{margin:14px 0 0}
}


.recorder-panel{border:1px solid var(--line);background:#fbfcf9;border-radius:12px;padding:24px;text-align:center}
.recorder-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left}
#record-device{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.record-time{font-size:46px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.035em;line-height:1.6;margin:17px 0 5px}
.record-level{display:block;margin:0 auto 15px;width:180px;height:9px;accent-color:var(--green)}
.record-buttons{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px 0 6px}
.tag.recording{background:#f8e9e5;color:#a44837}
.tag.recording:before{content:"";width:6px;height:6px;border-radius:50%;background:#bf5343;display:inline-block;margin-right:7px}
.record-result{margin-top:22px;padding-top:22px;border-top:1px solid var(--line);text-align:left}
.record-result .toolbar{justify-content:space-between}
.record-result audio{margin-bottom:12px}
@media(max-width:560px){.segmented{display:flex}.segmented button{padding:7px 10px;flex:1}.recorder-panel{padding:20px 14px}.record-time{font-size:39px}.record-buttons button{font-size:12px}}

/* The question stays in view while the microphone runs. */
.workflow.live-interview{max-width:1160px;overflow:visible}
.recording-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;align-items:start}
.recording-sidebar{min-width:0;position:sticky;top:18px}
#live-interview-guide{min-width:0}
.interview-guide{border:1px solid var(--line);border-radius:12px;padding:24px;background:#fff}
.guide-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.guide-header h2{font-size:16px;margin:0}
.guide-standard{font-size:11px;color:var(--muted);margin:5px 0 0}
.guide-progress-text{font-size:11px;white-space:nowrap;color:var(--green);padding-top:3px;font-variant-numeric:tabular-nums}
.guide-progress{height:5px;width:100%;margin:20px 0 18px;accent-color:var(--green);border:0;border-radius:5px;overflow:hidden}
.guide-progress::-webkit-progress-bar{background:var(--soft)}
.guide-progress::-webkit-progress-value{background:var(--green)}
.guide-navigation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}
.guide-navigation button{font-size:12px;padding:10px 12px}
.guide-navigation select{font-size:15px;font-weight:600;padding:10px 12px;color:var(--green)}
.guide-question{margin-top:26px}
.guide-question-meta{font-size:11px;color:var(--muted);margin:0 0 7px}
.guide-question h3{font-size:21px;font-weight:650;line-height:1.45;margin:0;color:var(--green)}
.guide-question-feature{font-size:13px;line-height:1.7;color:var(--muted);margin:6px 0 0}
.guide-ask{font-size:26px;font-weight:650;line-height:1.75;color:#193b2a;margin:18px 0 22px;padding:20px 22px;background:#f0f5eb;border-left:4px solid var(--green);border-radius:0 10px 10px 0;overflow-wrap:anywhere}
.guide-follow-up{padding:16px 18px;background:#f7f8f3;border:1px solid var(--line);border-radius:8px;font-size:16px;line-height:1.85}
.guide-follow-up strong{font-size:12px;color:var(--green)}
.guide-follow-up p{margin:6px 0 0}
.guide-checkpoints{margin:22px 0;font-size:14px}
.guide-checkpoints h4{font-size:11px;color:var(--muted);margin:0 0 9px;font-weight:500}
.guide-checkpoints ul{padding-left:19px;margin:0;line-height:1.9}
.guide-examples{font-size:12px;margin:20px 0}
.guide-examples summary{color:var(--green);cursor:pointer}
.guide-example{padding:14px;border-radius:7px;margin:10px 0;line-height:1.8;background:var(--soft)}
.guide-example.bad{background:var(--warm)}
.guide-example p{margin:5px 0 0}
.guide-question-note,.guide-hint{font-size:11px;color:var(--muted);line-height:1.7}
.guide-asked{display:flex;flex-direction:row;align-items:center;gap:9px;padding-top:19px;margin-top:23px;border-top:1px solid var(--line);font-size:13px}
.guide-hint{margin:12px 0 0}
.mic-inputs{display:flex;align-items:flex-end;gap:10px;text-align:left}
.mic-inputs label{flex:1;min-width:0}
.mic-inputs select{font-size:11px}
.mic-inputs button{font-size:11px;padding:9px 0}
#microphone-hint{text-align:left;font-size:11px;line-height:1.7;margin:11px 0 19px}
.recording-sidebar .recorder-panel{padding:20px}
.recording-sidebar .recorder-heading{border-top:1px solid var(--line);padding-top:17px}
.recording-sidebar .record-time{font-size:37px;margin:14px 0 2px}
.recording-sidebar .record-level{width:155px}
.recording-sidebar .record-buttons{gap:8px;margin-top:18px}
.recording-sidebar .record-buttons button{padding:9px 12px;font-size:12px}
.recording-sidebar>.step-actions{padding-top:16px;margin-top:18px;flex-wrap:wrap}
.recording-sidebar>.step-actions .muted{width:100%;margin-top:0}
.mic-trial-result{padding:13px;background:var(--soft);border-radius:8px;margin:15px 0;text-align:left}
.mic-trial-result.warn{background:var(--warm)}
.mic-trial-result strong{font-size:12px;line-height:1.7;display:block;margin-bottom:10px}
.mic-trial-result audio{margin-bottom:0;min-width:0}
.mic-trial-result p{font-size:10px;margin-bottom:0}
#record-input-warning{text-align:left;font-size:11px;margin:12px 0}
#record-playback-message{font-size:11px;text-align:left}
@media(max-width:1000px){.recording-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.live-interview .eval-step{padding:24px}.interview-guide{padding:20px}.guide-ask{font-size:24px;padding:18px 20px}.guide-navigation{grid-template-columns:1fr 1fr}.guide-navigation select{grid-column:1/-1;grid-row:1}.recording-sidebar .recorder-panel{padding:16px}}
@media(max-width:760px){.recording-workspace{display:flex;flex-direction:column;gap:18px}.recording-sidebar{order:-1;width:100%;top:6px;z-index:2;position:sticky;background:var(--panel);border-radius:12px}.recording-sidebar>p,.recording-sidebar>.step-actions{display:none}#live-interview-guide{width:100%}.live-interview .eval-step{padding:20px 16px}.interview-guide{padding:20px}.guide-ask{font-size:22px;padding:17px 18px;line-height:1.8}.guide-follow-up{font-size:15px}.recorder-panel.is-recording .mic-inputs,.recorder-panel.is-recording #microphone-hint,.recorder-panel.is-recording .mic-trial-result{display:none!important}.recorder-panel.is-recording .recorder-heading{border-top:0;padding-top:0}.recorder-panel.is-recording .record-time{font-size:27px;line-height:1.3;margin:4px 0}.recorder-panel.is-recording .record-level{margin:4px auto 7px}.recorder-panel.is-recording #record-status{display:none}.recorder-panel.is-recording .record-buttons{margin:9px 0 0}.recorder-panel.is-recording #record-input-warning{margin:7px 0;padding:7px 9px}}
.recorder-panel.is-recording .mic-trial-result{display:none!important}

/* Independent recording-transcription and scoring configuration cards. */
.settings-card+.settings-card{margin-top:26px}
.service-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.service-card-heading h2{display:inline;margin-left:8px;font-size:19px}
.service-card-heading p{margin:7px 0 0}
.service-step{font-size:11px;color:var(--green);background:var(--soft);border-radius:5px;padding:4px 7px;vertical-align:2px}
.asr-provider-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.asr-provider-choices .choice{padding:14px 12px;gap:7px;min-width:0}
.asr-provider-choices .choice strong{font-size:12px;line-height:1.6}
.asr-provider-choices .choice small{font-size:10px}
.asr-provider-choices .choice input{margin-left:0}
.asr-advanced{border-top:1px solid var(--line);padding-top:15px;margin:18px 0;font-size:12px}
.asr-advanced summary{cursor:pointer;color:var(--green);font-weight:500;margin-bottom:12px}
.asr-advanced .form-grid{margin-top:15px}
.asr-subheading{margin:20px 0 15px}
.asr-subheading h3{margin:0 0 5px}
.asr-subheading p{margin:0}
.service-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 0 0;font-size:11px}
.service-links a{text-decoration:underline;text-underline-offset:3px}
.asr-data-note{padding:11px 14px;background:var(--soft);border-radius:7px;font-size:12px;line-height:1.8;margin-top:18px}
.asr-health{border-top:1px solid var(--line);padding-top:14px;margin-top:18px}
.asr-route-note{margin:-8px 0 20px;font-size:11px;line-height:1.8}
@media(max-width:620px){.asr-provider-choices{grid-template-columns:1fr}.asr-provider-choices .choice{padding:13px 15px}.asr-provider-choices .choice strong{font-size:14px}.asr-provider-choices .choice small{font-size:11px}.service-card-heading{gap:10px}}
.asr-provider-choices:has([data-local-only][hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}
.scoring-settings-card .choice-grid:has([data-local-only][hidden]){grid-template-columns:1fr}
@media(max-width:620px){.asr-provider-choices:has([data-local-only][hidden]){grid-template-columns:1fr}}
@media(max-width:560px){.app-header .session-controls{order:1}.app-header nav{order:2}}
