.camera-check{display:flex;align-items:center;gap:24px;padding:22px;border:1px solid #d6dde5;border-radius:16px;background:#f7f9fb;margin:22px 0;text-align:left;color:#14253b}
.camera-preview{position:relative;display:grid;place-items:center;flex:0 0 240px;width:240px;aspect-ratio:4/3;background:#102034;color:#dbe3ed;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px #172d4430}
.camera-preview:after{content:'';pointer-events:none;position:absolute;inset:12% 23% 4%;border:1px dashed #ffffff85;border-radius:45% 45% 18% 18%}
.camera-preview video{display:block;width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}
.camera-copy{min-width:0}.camera-copy strong{font-size:16px}.camera-copy #camera-status{font-size:14px;line-height:1.5;margin:8px 0;min-height:42px}.camera-private{color:#627082;font-size:12px!important;margin:10px 0 0!important;line-height:1.4}
.camera-check[data-state=absent]{border-color:#ad7b28;background:#fffaf0}.camera-check[data-state=error]{border-color:#a54343;background:#fff5f5}
.camera-check[data-state=ready] .camera-preview{box-shadow:0 0 0 2px #387857}.camera-check .btn{font-size:13px;min-height:42px}.camera-check [hidden]{display:none!important}
.camera-rules{border-top:1px solid #dbe1e8;padding-top:22px;margin-top:24px}.camera-rules h2{font-size:20px}.camera-rules ol{padding-left:22px;line-height:1.65}.camera-rules li+li{margin-top:7px}.camera-rules>p{font-size:13px;color:#5c6979;line-height:1.6}
.exam-main .exam-header.with-camera{display:grid;grid-template-columns:minmax(320px,1fr) minmax(200px,1.6fr);gap:20px;align-items:center;padding:10px 14px}
.exam-header.with-camera h1{font-size:23px;margin:0}.camera-check.camera-compact{border:0;margin:0;padding:0;gap:12px;background:transparent}
.camera-compact .camera-preview{flex-basis:136px;width:136px}.camera-compact .camera-copy strong{font-size:12px}.camera-compact .camera-copy #camera-status{font-size:11px;min-height:32px;margin:4px 0}.camera-compact .camera-private{font-size:10px!important}.camera-compact .btn{font-size:11px;min-height:32px;padding:6px}
.main.exam-main:has(.camera-compact){min-height:780px;padding-top:28px}.question-card[inert]{opacity:.35}
.supervision-alert{position:fixed;z-index:45;bottom:58px;right:18px;width:min(380px,calc(100vw - 36px));padding:14px 18px;background:#fffaf0;color:#5a3e16;border:1px solid #c7a05c;border-radius:12px;box-shadow:0 5px 24px #14253b22;font-size:13px;line-height:1.5}.supervision-alert[hidden]{display:none}
@media(max-width:700px){.camera-check{padding:16px;gap:14px;flex-direction:column;align-items:stretch}.camera-preview{flex-basis:auto;width:min(100%,260px);margin:auto}.exam-main .exam-header.with-camera{display:flex;flex-direction:column;gap:12px}.camera-check.camera-compact{flex-direction:row;align-items:center;width:100%}.camera-compact .camera-preview{flex:0 0 112px;width:112px;margin:0}.camera-compact .camera-copy{flex:1}.exam-header.with-camera h1{font-size:17px}.main.exam-main:has(.camera-compact){min-height:calc(100dvh - 58px);padding-top:36px}.supervision-alert{bottom:54px}}
.camera-visual{flex:0 0 240px;width:240px}.camera-visual .camera-preview{width:100%}.microphone-level{margin-top:8px;font-size:11px}.microphone-level label{display:flex;justify-content:space-between;font-weight:600}.microphone-level meter{display:block;width:100%;height:12px;margin:3px 0}.microphone-level small{display:block;font-size:10px;color:#617184;line-height:1.3}.microphone-level[data-loud=true] small{color:#9b4f1c}.camera-compact .camera-visual{flex:0 0 136px;width:136px}.camera-compact .camera-visual .camera-preview{width:100%}.camera-compact .microphone-level{font-size:10px}.camera-compact .microphone-level small{font-size:9px}
@media(max-width:700px){.camera-visual{flex-basis:auto;width:min(100%,260px);margin:auto}.camera-compact .camera-visual{flex:0 0 112px;width:112px;margin:0}.camera-compact .camera-visual .camera-preview{width:100%}}
