.reading-video{margin:0 0 16px}
.recording-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.recording-toggle{position:relative;display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;color:var(--navy-dark);cursor:pointer;-webkit-tap-highlight-color:transparent}
.recording-toggle input{position:absolute;right:0;width:44px;height:28px;min-height:0;margin:0;opacity:0;cursor:pointer}
.recording-switch{display:block;width:44px;height:27px;border-radius:20px;background:#cbd5df;pointer-events:none;transition:background .15s}
.recording-switch:after{content:'';display:block;width:21px;height:21px;margin:3px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:transform .15s}
.recording-toggle input:checked+.recording-switch{background:var(--teal,var(--navy))}
.recording-toggle input:checked+.recording-switch:after{transform:translateX(17px)}
.recording-toggle input:focus-visible+.recording-switch{outline:2px solid var(--navy);outline-offset:3px}
.recording-toggle input:disabled+.recording-switch{opacity:.5}
.recording-status{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.recording-auto-label{font-size:14px;color:var(--navy-dark)}
.recording-start,.recording-stop{min-height:44px;font-size:13px}
.video-default-setting{padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--white)}
.video-default-setting .recording-toggle{display:flex;justify-content:space-between}
.video-default-setting .hint{margin:2px 0 0}
.recording-error{font-size:12px;line-height:1.7;color:var(--red);margin-top:4px}
.recording-error:empty,.reading-video [hidden]{display:none!important}
.recording-retry{font-size:12px;min-height:40px}
@media(prefers-reduced-motion:reduce){.recording-switch,.recording-switch:after{transition:none}}
.job-video{border-top:1px solid var(--line);padding:18px 23px;background:var(--white)}.job-video h3{font-size:15px;margin-bottom:6px}.job-video p{font-size:12px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.job-video .row{margin-top:10px;flex-wrap:wrap}.job-video a,.job-video button{font-size:12px;min-height:40px}
.receipt-video{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);text-align:left;font-size:13px;line-height:1.8}.receipt-video p{color:var(--muted);font-size:12px;margin-top:7px}
