.checkin-page[data-v-4f3043f6]{min-height:100vh;padding:14px 16px 150px;color:#0f172a;background:#f8fafc;box-sizing:border-box}.checkin-content[data-v-4f3043f6]{max-width:440px;margin:0 auto}.checkin-content>h1[data-v-4f3043f6]{margin:12px 0 2px;font-size:22px}.checkin-mode[data-v-4f3043f6]{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:6px;padding:5px 12px;color:#2563eb;font-size:12px;font-weight:600;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px}.checkin-mode.optional[data-v-4f3043f6]{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}.checkin-subtitle[data-v-4f3043f6]{margin:0 0 12px;color:#94a3b8;font-size:13px}.checkin-camera[data-v-4f3043f6]{position:relative;aspect-ratio:1.33333333;overflow:hidden;background:#0f172a;border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.16)}.checkin-camera>img[data-v-4f3043f6],.checkin-camera video[data-v-4f3043f6]{width:100%;height:100%;object-fit:cover}.checkin-camera-state[data-v-4f3043f6]{position:absolute;inset:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:9px;padding:24px;color:#cbd5e1;text-align:center}.checkin-camera-state .anticon[data-v-4f3043f6]{font-size:32px}.checkin-camera-state span[data-v-4f3043f6]{font-size:12px}.checkin-camera-state button[data-v-4f3043f6]{padding:7px 22px;color:#fff;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:999px}.camera-hint[data-v-4f3043f6]{position:absolute;right:0;bottom:0;left:0;padding:24px 12px 8px;color:hsla(0,0%,100%,.8);font-size:11px;background:linear-gradient(transparent,rgba(0,0,0,.65))}.uploaded-badge[data-v-4f3043f6]{position:absolute;top:10px;right:10px;padding:5px 10px;color:#059669;font-size:12px;font-weight:600;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px}.checkin-requirement[data-v-4f3043f6]{margin-top:16px;padding:14px;background:#fff;border:1px solid #f1f5f9;border-radius:14px;box-shadow:0 3px 12px rgba(15,23,42,.05)}.checkin-requirement h2[data-v-4f3043f6]{margin:0 0 10px;color:#475569;font-size:15px}.checkin-requirement h2 .anticon[data-v-4f3043f6]{color:#3b82f6}.checkin-requirement p[data-v-4f3043f6]{margin:10px 0 0;color:#64748b;font-size:13px;line-height:1.7}.requirement-image[data-v-4f3043f6]{aspect-ratio:1.33333333;overflow:hidden;background:#f1f5f9;border-radius:10px}.requirement-image img[data-v-4f3043f6]{width:100%;height:100%;object-fit:cover}.checkin-error[data-v-4f3043f6]{margin:12px 0 0;color:#dc2626;font-size:13px}.checkin-actions[data-v-4f3043f6]{position:fixed;right:0;bottom:0;left:0;z-index:10;padding:12px 16px 12px;background:#fff;border-top:1px solid #f1f5f9}.checkin-actions>button[data-v-4f3043f6]{width:100%;max-width:440px;display:block;margin-right:auto;margin-left:auto}.checkin-actions .primary-button[data-v-4f3043f6],.checkin-actions .secondary-button[data-v-4f3043f6]{min-height:48px;border-radius:12px}.checkin-actions .primary-button[data-v-4f3043f6]{color:#fff;font-size:16px;font-weight:600;background:#2563eb;border:0}.checkin-actions .primary-button[data-v-4f3043f6]:disabled{opacity:.65}.checkin-actions .secondary-button[data-v-4f3043f6]{margin-top:8px;color:#2563eb;background:#fff;border:1px solid #2563eb}.checkin-actions .skip-button[data-v-4f3043f6]{margin-top:7px;padding:6px;color:#94a3b8;background:transparent;border:0}.checkin-dialog-mask[data-v-4f3043f6]{position:fixed;inset:0;z-index:20;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:30px;background:rgba(15,23,42,.5)}.checkin-dialog[data-v-4f3043f6]{width:100%;max-width:340px;padding:24px;text-align:center;background:#fff;border-radius:18px}.checkin-dialog>.anticon[data-v-4f3043f6]{color:#f59e0b;font-size:36px}.checkin-dialog h2[data-v-4f3043f6]{margin:10px 0;font-size:18px}.checkin-dialog p[data-v-4f3043f6]{margin:0 0 20px;color:#64748b;font-size:14px}.checkin-dialog>div[data-v-4f3043f6]{display:-ms-flexbox;display:flex;gap:10px}.checkin-dialog button[data-v-4f3043f6]{-ms-flex:1;flex:1;padding:11px;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.checkin-dialog button.confirm[data-v-4f3043f6]{color:#fff;background:#2563eb;border-color:#2563eb}.mobile-proctor-page[data-v-2937eba2]{min-height:100vh;color:#172033;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:#f4f7fb}button[data-v-2937eba2]{font-family:inherit}.state-page[data-v-2937eba2]{min-height:100vh;padding:32px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;text-align:center}.state-page h1[data-v-2937eba2]{margin:24px 0 8px;font-size:22px}.state-page p[data-v-2937eba2]{max-width:320px;margin:0;color:#7b8496;font-size:14px;line-height:1.7}.state-spinner[data-v-2937eba2]{width:42px;height:42px;border:3px solid #dbe5ff;border-top-color:#2a55e5;border-radius:50%;animation:spin-2937eba2 .8s linear infinite}.state-spinner--light[data-v-2937eba2]{border-color:hsla(0,0%,100%,.25);border-top-color:#fff}.state-icon[data-v-2937eba2]{width:64px;height:64px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-size:28px;border-radius:50%}.state-icon--error[data-v-2937eba2]{color:#d92d20;background:#fee4e2}.state-button[data-v-2937eba2]{width:220px;margin-top:24px}.guide-page[data-v-2937eba2]{min-height:100vh;padding-bottom:118px}.guide-header[data-v-2937eba2]{padding:26px 22px 20px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:13px;color:#fff;background:linear-gradient(135deg,#244cc9,#3977ed)}.guide-header h1[data-v-2937eba2]{margin:0 0 5px;color:#fff;font-size:21px;font-weight:650}.guide-header p[data-v-2937eba2]{margin:0;color:hsla(0,0%,100%,.78);font-size:12px}.brand-mark[data-v-2937eba2]{width:42px;height:42px;-ms-flex:0 0 42px;flex:0 0 42px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-size:21px;background:hsla(0,0%,100%,.16);border:1px solid hsla(0,0%,100%,.25);border-radius:12px}.guide-content[data-v-2937eba2]{max-width:480px;margin:0 auto;padding:20px 16px 12px}.guide-step[data-v-2937eba2]{margin-bottom:16px;padding:16px;display:-ms-flexbox;display:flex;gap:12px;background:#fff;border:1px solid #e9edf5;border-radius:16px;box-shadow:0 6px 20px rgba(30,52,96,.06)}.guide-step__number[data-v-2937eba2]{width:26px;height:26px;-ms-flex:0 0 26px;flex:0 0 26px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#fff;font-size:13px;font-weight:600;background:#2a55e5;border-radius:50%}.guide-step__body[data-v-2937eba2]{min-width:0;-ms-flex:1;flex:1}.guide-step__body h2[data-v-2937eba2]{margin:2px 0 12px;color:#202939;font-size:16px}.guide-step__body p[data-v-2937eba2]{margin:12px 2px 0;color:#667085;font-size:13px;line-height:1.7}.guide-image-wrap[data-v-2937eba2]{overflow:hidden;background:#f3f5f9;border-radius:12px}.guide-image-wrap img[data-v-2937eba2]{width:100%;display:block;object-fit:contain}.guide-image-wrap--scene img[data-v-2937eba2]{max-height:250px}.guide-notice[data-v-2937eba2]{padding:16px;background:#edf4ff;border:1px solid #d7e5ff;border-radius:14px}.guide-notice h2[data-v-2937eba2]{margin:0 0 12px;color:#2546a8;font-size:14px}.guide-notice ul[data-v-2937eba2]{margin:0;padding:0;list-style:none}.guide-notice li[data-v-2937eba2]{margin-top:9px;display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;gap:8px;color:#53627a;font-size:13px;line-height:1.55}.guide-notice li .anticon[data-v-2937eba2]{margin-top:3px;color:#2a55e5}.guide-footer[data-v-2937eba2]{position:fixed;right:0;bottom:0;left:0;z-index:10;padding:12px 18px calc(12px + env(safe-area-inset-bottom));text-align:center;background:hsla(0,0%,100%,.96);border-top:1px solid #e7eaf0;backdrop-filter:blur(12px)}.guide-footer .primary-button[data-v-2937eba2]{max-width:440px}.guide-footer p[data-v-2937eba2]{margin:7px 0 0;color:#98a2b3;font-size:11px}.primary-button[data-v-2937eba2],.secondary-button[data-v-2937eba2]{width:100%;min-height:48px;padding:0 18px;color:#fff;font-size:15px;font-weight:600;background:#2a55e5;border:0;border-radius:12px;box-shadow:0 8px 20px rgba(42,85,229,.22)}.primary-button[data-v-2937eba2]:disabled,.secondary-button[data-v-2937eba2]:disabled{opacity:.65}.secondary-button[data-v-2937eba2]{width:auto;min-width:120px;color:#172033;background:#fff;box-shadow:none}.monitor-page[data-v-2937eba2]{position:fixed;inset:0;overflow:hidden;color:#fff;background:#080b12}.camera-preview[data-v-2937eba2]{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s ease}.preview-rotation-1 .camera-preview[data-v-2937eba2]{transform:rotate(90deg) scale(1.35)}.preview-rotation-2 .camera-preview[data-v-2937eba2]{transform:rotate(-90deg) scale(1.35)}.camera-shade[data-v-2937eba2]{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.44),transparent 28%,transparent 66%,rgba(0,0,0,.45))}.glass-panel[data-v-2937eba2]{background:rgba(12,17,28,.55);border:1px solid hsla(0,0%,100%,.16);box-shadow:0 6px 20px rgba(0,0,0,.2);backdrop-filter:blur(14px)}.monitor-status[data-v-2937eba2],.network-status[data-v-2937eba2]{position:absolute;top:calc(18px + env(safe-area-inset-top));min-height:38px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-radius:20px}.monitor-status[data-v-2937eba2]{left:16px;padding:0 14px;gap:8px;font-size:13px}.monitor-status strong[data-v-2937eba2]{margin-left:3px;font-variant-numeric:tabular-nums}.waiting-banner[data-v-2937eba2]{position:absolute;top:50%;left:50%;width:calc(100% - 48px);max-width:360px;padding:16px 18px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12px;border-radius:14px;transform:translate(-50%,-50%)}.waiting-banner .anticon[data-v-2937eba2]{-ms-flex:0 0 auto;flex:0 0 auto;font-size:24px}.waiting-banner div[data-v-2937eba2]{min-width:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:4px}.waiting-banner strong[data-v-2937eba2]{color:#fff;font-size:16px}.waiting-banner span[data-v-2937eba2]{color:hsla(0,0%,100%,.76);font-size:12px;line-height:1.5}.waiting-banner--warning[data-v-2937eba2]{border-color:rgba(251,146,60,.72);background:rgba(120,53,15,.72)}.waiting-banner--warning .anticon[data-v-2937eba2]{color:#fbbf24}.waiting-banner--warning strong[data-v-2937eba2]{color:#fde68a}.waiting-banner--warning span[data-v-2937eba2]{color:rgba(255,247,237,.9)}.network-status[data-v-2937eba2]{right:16px;padding:0 13px;gap:7px;font-size:12px}.network-dot[data-v-2937eba2],.record-dot[data-v-2937eba2]{width:8px;height:8px;-ms-flex:0 0 8px;flex:0 0 8px;background:#ef4444;border-radius:50%;box-shadow:0 0 0 4px rgba(239,68,68,.18)}.record-dot[data-v-2937eba2]:not(.paused){animation:pulse-2937eba2 1.4s ease infinite}.record-dot.paused[data-v-2937eba2]{background:#94a3b8;box-shadow:none}.network-dot.normal[data-v-2937eba2]{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.16)}.network-dot.unstable[data-v-2937eba2]{background:#facc15;box-shadow:0 0 0 4px rgba(250,204,21,.16)}.network-dot.offline[data-v-2937eba2]{background:#ef4444}.network-dot.checking[data-v-2937eba2]{background:#94a3b8;box-shadow:none}.monitor-actions[data-v-2937eba2]{position:absolute;right:16px;bottom:calc(30px + env(safe-area-inset-bottom));gap:12px}.monitor-actions[data-v-2937eba2],.round-action[data-v-2937eba2]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.round-action[data-v-2937eba2]{width:54px;height:54px;padding:7px 0 5px;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:2px;color:#fff;border-radius:50%}.round-action .anticon[data-v-2937eba2]{font-size:19px}.round-action span[data-v-2937eba2]{font-size:10px}.round-action[data-v-2937eba2]:disabled{opacity:.45}.stop-button[data-v-2937eba2]{position:absolute;bottom:calc(34px + env(safe-area-inset-bottom));left:50%;min-width:126px;min-height:46px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:8px;color:#fff;font-size:14px;font-weight:600;background:rgba(220,38,38,.9);border:1px solid hsla(0,0%,100%,.18);border-radius:24px;transform:translateX(-50%)}.stop-button span[data-v-2937eba2]{width:10px;height:10px;background:#fff;border-radius:2px}.stop-button[data-v-2937eba2]:disabled{opacity:.45}.camera-state[data-v-2937eba2]{position:absolute;inset:0;z-index:2;padding:32px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;text-align:center;background:#111722}.camera-state h2[data-v-2937eba2]{margin:20px 0 8px;color:#fff;font-size:20px}.camera-state p[data-v-2937eba2]{max-width:320px;margin:0 0 22px;color:#aeb7c7;font-size:13px;line-height:1.7}.state-icon--camera[data-v-2937eba2]{color:#fff;background:hsla(0,0%,100%,.1)}.toast[data-v-2937eba2]{position:absolute;bottom:104px;left:50%;z-index:5;padding:9px 14px;color:#fff;font-size:12px;white-space:nowrap;background:rgba(0,0,0,.72);border-radius:18px;transform:translateX(-50%)}.dialog-mask[data-v-2937eba2]{position:absolute;inset:0;z-index:20;padding:20px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background:rgba(0,0,0,.68);backdrop-filter:blur(4px)}.stop-dialog[data-v-2937eba2]{width:100%;max-width:340px;padding:24px 20px 18px;color:#172033;text-align:center;background:#fff;border-radius:18px}.stop-dialog h2[data-v-2937eba2]{margin:14px 0 8px;font-size:19px}.stop-dialog p[data-v-2937eba2]{margin:0;color:#7b8496;font-size:13px;line-height:1.65}.dialog-icon[data-v-2937eba2]{width:48px;height:48px;margin:0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#d92d20;font-size:22px;background:#fee4e2;border-radius:50%}.dialog-actions[data-v-2937eba2]{margin-top:22px;display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;gap:10px}.dialog-actions button[data-v-2937eba2]{min-height:42px;color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:9px}.dialog-actions button.danger[data-v-2937eba2]{color:#fff;background:#d92d20;border-color:#d92d20}@keyframes spin-2937eba2{to{transform:rotate(1turn)}}@keyframes pulse-2937eba2{50%{opacity:.45;transform:scale(.85)}}@media (min-width:700px){.guide-page[data-v-2937eba2]{background:#eef2f8}.guide-header[data-v-2937eba2]{-ms-flex-pack:center;justify-content:center}}