.candidate-page[data-v-3d9b2eea]{min-height:100vh;background:#f5f7fb;color:#1f2a37}.candidate-header[data-v-3d9b2eea]{height:68px;background:#fff;border-bottom:1px solid #e8edf5}.candidate-main[data-v-3d9b2eea],.header-inner[data-v-3d9b2eea]{width:calc(100% - 48px);max-width:1180px;margin:0 auto}.header-inner[data-v-3d9b2eea]{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.brand[data-v-3d9b2eea]{gap:10px;border:0;background:transparent;color:#183b72;font-size:18px;font-weight:700;cursor:pointer}.brand-mark[data-v-3d9b2eea],.brand[data-v-3d9b2eea]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.brand-mark[data-v-3d9b2eea]{width:34px;height:34px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:9px;color:#fff;background:#2878ff}.header-right[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:14px;color:#66758a;font-size:13px}.candidate-main[data-v-3d9b2eea]{padding:28px 0 56px}.breadcrumb[data-v-3d9b2eea]{margin-bottom:24px}.detail-hero[data-v-3d9b2eea],.materials-heading[data-v-3d9b2eea],.page-heading[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:24px}.eyebrow[data-v-3d9b2eea]{color:#2878ff;font-size:11px;font-weight:700;letter-spacing:1.5px}.detail-hero h1[data-v-3d9b2eea],.page-heading h1[data-v-3d9b2eea]{margin:9px 0 7px;color:#13243b;font-size:30px}.detail-hero p[data-v-3d9b2eea],.page-heading p[data-v-3d9b2eea]{margin:0;color:#718096}.material-filter-bar[data-v-3d9b2eea],.plan-filter-bar[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:18px;margin-top:26px;padding:6px;border:1px solid #e1e8f2;border-radius:10px;background:#fff}.primary-tabs[data-v-3d9b2eea],.secondary-tabs[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:4px}.secondary-tabs[data-v-3d9b2eea]{padding:3px;border-radius:7px;background:#f3f6fa}.primary-tabs button[data-v-3d9b2eea],.secondary-tabs button[data-v-3d9b2eea]{height:34px;padding:0 16px;border:0;border-radius:7px;color:#708096;background:transparent;font-size:13px;line-height:34px;white-space:nowrap;cursor:pointer;-webkit-transition:color .2s,background .2s,-webkit-box-shadow .2s;transition:color .2s,background .2s,-webkit-box-shadow .2s;transition:color .2s,background .2s,box-shadow .2s;transition:color .2s,background .2s,box-shadow .2s,-webkit-box-shadow .2s}.primary-tabs button[data-v-3d9b2eea]:hover,.secondary-tabs button[data-v-3d9b2eea]:hover{color:#2878ff}.primary-tabs button.active[data-v-3d9b2eea]{color:#fff;background:#2878ff;-webkit-box-shadow:0 4px 10px rgba(40,120,255,.2);box-shadow:0 4px 10px rgba(40,120,255,.2)}.secondary-tabs button.active[data-v-3d9b2eea]{color:#2878ff;background:#fff;-webkit-box-shadow:0 2px 7px rgba(39,67,104,.1);box-shadow:0 2px 7px rgba(39,67,104,.1)}.plan-filter-bar+.ant-spin[data-v-3d9b2eea]{display:block}.plan-tags[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:7px;margin-bottom:8px}.auth-tag[data-v-3d9b2eea],.mode-tag[data-v-3d9b2eea],.overdue-tag[data-v-3d9b2eea],.type-tag[data-v-3d9b2eea]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:22px;padding:0 8px;border-radius:5px;font-size:11px;line-height:22px;white-space:nowrap}.mode-tag.material[data-v-3d9b2eea]{color:#2878ff;background:#edf4ff}.mode-tag.question[data-v-3d9b2eea]{color:#c47712;background:#fff5df}.type-tag[data-v-3d9b2eea]{max-width:240px;overflow:hidden;text-overflow:ellipsis}.type-tag.type-blue[data-v-3d9b2eea]{color:#2169d8;background:#eaf2ff}.type-tag.type-green[data-v-3d9b2eea]{color:#168153;background:#e9f8f0}.type-tag.type-orange[data-v-3d9b2eea]{color:#b66b0b;background:#fff2da}.type-tag.type-purple[data-v-3d9b2eea]{color:#7352b6;background:#f1edfb}.auth-tag[data-v-3d9b2eea]{gap:4px}.auth-tag.required[data-v-3d9b2eea]{color:#b04f3d;background:#fff0ed}.auth-tag.normal[data-v-3d9b2eea]{color:#68788d;background:#eef2f6}.plan-title-copy[data-v-3d9b2eea]{min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1}.plan-progress-box[data-v-3d9b2eea]{margin:6px 0 14px;padding:11px 13px 10px;border:1px solid #edf1f7;border-radius:8px;background:#fbfcfe}.plan-progress-box.completed[data-v-3d9b2eea]{border-color:#d9f0e3;background:#f8fdf9}.plan-progress-box.warning[data-v-3d9b2eea]{border-color:#f5dfb9;background:#fffaf1}.plan-progress-head[data-v-3d9b2eea],.plan-state-row[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:10px}.plan-progress-head[data-v-3d9b2eea]{margin-bottom:6px;color:#718096;font-size:12px}.plan-progress-head b[data-v-3d9b2eea]{color:#2878ff;font-size:13px}.plan-progress-box.completed .plan-progress-head b[data-v-3d9b2eea]{color:#19a463}.plan-progress-box .ant-progress[data-v-3d9b2eea]{display:block;margin-bottom:6px}.plan-state-row[data-v-3d9b2eea]{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-height:22px}.plan-state-row small[data-v-3d9b2eea]{color:#9a7b43;font-size:11px}.training-state[data-v-3d9b2eea]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:22px;padding:0 8px;border-radius:5px;font-size:11px;white-space:nowrap}.training-state.completed[data-v-3d9b2eea]{color:#16814d;background:#e9f8ef}.training-state.signature-required[data-v-3d9b2eea]{color:#b4770c;background:#fff0c9}.training-state.unfinished[data-v-3d9b2eea]{color:#68788d;background:#eef2f6}.overdue-tag[data-v-3d9b2eea]{color:#c6543c;background:#fff0ed}.plan-list[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:12px;margin-top:28px}.plan-row[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:18px;padding:22px;border:1px solid #e3eaf4;border-radius:12px;background:#fff;cursor:pointer;-webkit-transition:.2s;transition:.2s}.plan-row[data-v-3d9b2eea]:hover{border-color:#9dbfff;-webkit-box-shadow:0 10px 22px rgba(40,78,130,.08);box-shadow:0 10px 22px rgba(40,78,130,.08)}.plan-icon[data-v-3d9b2eea]{width:44px;height:44px;-webkit-box-flex:0;-ms-flex:0 0 44px;flex:0 0 44px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:11px;color:#2878ff;background:#edf4ff;font-size:20px}.plan-body[data-v-3d9b2eea]{min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1}.plan-bottom[data-v-3d9b2eea],.plan-title-row[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px}.plan-title-row h2[data-v-3d9b2eea]{overflow:hidden;margin:0 0 10px;color:#20334e;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.status-pill[data-v-3d9b2eea]{padding:4px 9px;border-radius:5px;font-size:12px;white-space:nowrap}.status-pill.done[data-v-3d9b2eea]{color:#13834b;background:#eaf8f0}.status-pill.working[data-v-3d9b2eea]{color:#2878ff;background:#edf4ff}.status-pill.expired[data-v-3d9b2eea]{color:#c6543c;background:#fff0ed}.status-pill.upcoming[data-v-3d9b2eea]{color:#63748a;background:#f0f3f7}.plan-meta[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:24px;margin-bottom:12px;color:#8290a2;font-size:12px}.plan-meta .anticon[data-v-3d9b2eea]{margin-right:5px}.plan-meta .plan-type[data-v-3d9b2eea]{color:#2878ff;font-weight:600}.plan-bottom[data-v-3d9b2eea]{color:#8290a2;font-size:12px}.plan-bottom b[data-v-3d9b2eea]{color:#2878ff}.detail-hero[data-v-3d9b2eea]{padding:4px 0 28px}.detail-hero[data-v-3d9b2eea],.hero-status[data-v-3d9b2eea]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.hero-status[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;color:#506176;font-weight:600}.status-dot[data-v-3d9b2eea]{width:9px;height:9px;border-radius:50%}.status-dot.done[data-v-3d9b2eea]{background:#46b879}.status-dot.working[data-v-3d9b2eea]{background:#2878ff;-webkit-box-shadow:0 0 0 5px #e5efff;box-shadow:0 0 0 5px #e5efff}.status-dot.expired[data-v-3d9b2eea]{background:#d75d45;-webkit-box-shadow:0 0 0 5px #fff0ed;box-shadow:0 0 0 5px #fff0ed}.requirement-strip[data-v-3d9b2eea]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:24px;padding:20px 24px;border:1px solid #e3eaf4;border-radius:12px;background:#fff}.requirement-main[data-v-3d9b2eea],.requirement-strip[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.requirement-main[data-v-3d9b2eea]{gap:14px}.requirement-number[data-v-3d9b2eea]{color:#2878ff;font-size:32px;font-weight:700}.requirement-number small[data-v-3d9b2eea]{font-size:14px}.requirement-main span[data-v-3d9b2eea],.requirement-main strong[data-v-3d9b2eea]{display:block}.requirement-main span[data-v-3d9b2eea]{margin-top:5px;color:#8290a2;font-size:12px}.requirement-list[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:20px;color:#68788d;font-size:12px}.requirement-list i[data-v-3d9b2eea]{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%}.blue-dot[data-v-3d9b2eea]{background:#2878ff}.orange-dot[data-v-3d9b2eea]{background:#ee9b27}.requirement-list .warning[data-v-3d9b2eea]{color:#bb7210}.signature-banner[data-v-3d9b2eea]{gap:14px;margin-top:16px;padding:16px 20px;border:1px solid #f3d18d;border-radius:10px;background:#fff8e9}.banner-icon[data-v-3d9b2eea],.signature-banner[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.banner-icon[data-v-3d9b2eea]{width:38px;height:38px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:9px;color:#b8790c;background:#ffebba}.signature-banner div[data-v-3d9b2eea]{-webkit-box-flex:1;-ms-flex:1;flex:1}.signature-banner strong[data-v-3d9b2eea]{color:#80530b}.signature-banner p[data-v-3d9b2eea]{margin:5px 0 0;color:#a4772e;font-size:12px}.materials-heading[data-v-3d9b2eea]{margin:34px 0 14px;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.materials-heading h2[data-v-3d9b2eea]{margin:6px 0 0;color:#20334e;font-size:22px}.materials-heading .ant-btn[data-v-3d9b2eea]{padding-right:0}.material-filter-bar[data-v-3d9b2eea]{margin-top:0;padding:8px 12px;border:0;border-bottom:1px solid #edf1f6;border-radius:0}.material-tabs button[data-v-3d9b2eea]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:7px}.material-tabs button small[data-v-3d9b2eea]{min-width:18px;height:18px;padding:0 4px;border-radius:9px;color:inherit;background:hsla(0,0%,100%,.24);font-size:10px;line-height:18px;text-align:center}.material-tabs button:not(.active) small[data-v-3d9b2eea]{background:#edf1f6}.material-status-tabs[data-v-3d9b2eea]{margin-left:auto}.materials-panel[data-v-3d9b2eea]{border:1px solid #e3eaf4;border-radius:12px;background:#fff;overflow:hidden}.materials-panel-head[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:20px;padding:15px 20px;border-bottom:1px solid #edf1f6}.materials-panel-head span[data-v-3d9b2eea],.materials-panel-head strong[data-v-3d9b2eea]{display:block}.materials-panel-head strong[data-v-3d9b2eea]{color:#33465f;font-size:15px}.materials-panel-head span[data-v-3d9b2eea]{margin-top:4px;color:#91a0b4;font-size:12px}.materials-total[data-v-3d9b2eea]{color:#91a0b4;font-size:12px;white-space:nowrap}.materials-total b[data-v-3d9b2eea]{color:#2878ff;font-size:18px}.material-list[data-v-3d9b2eea]{display:block;height:auto;min-height:0;background:#fbfcfe}.material-row[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:13px;height:88px;min-width:0;min-height:88px;max-height:88px;-webkit-box-flex:0;-ms-flex:0 0 88px;flex:0 0 88px;padding:12px 20px;border-bottom:1px solid #edf1f6;background:#fff;-webkit-transition:background .2s;transition:background .2s}.material-row[data-v-3d9b2eea]:last-child{border-bottom:0}.material-row[data-v-3d9b2eea]:hover{background:#f7faff}.material-index[data-v-3d9b2eea]{width:26px;-webkit-box-flex:0;-ms-flex:0 0 26px;flex:0 0 26px;color:#a1afc0;font-size:12px;text-align:center}.material-type[data-v-3d9b2eea]{width:36px;height:36px;-webkit-box-flex:0;-ms-flex:0 0 36px;flex:0 0 36px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:9px;font-size:18px}.material-type.video[data-v-3d9b2eea]{color:#2878ff;background:#edf4ff}.material-type.pdf[data-v-3d9b2eea]{color:#d65e44;background:#fff0ed}.material-row-body[data-v-3d9b2eea]{min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1}.material-row-title[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:9px}.material-row-title h4[data-v-3d9b2eea]{overflow:hidden;margin:0;color:#33465f;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.material-status[data-v-3d9b2eea]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:4px 8px;border-radius:5px;font-size:11px}.material-status.done[data-v-3d9b2eea]{color:#16814d;background:#e9f8ef}.material-status.todo[data-v-3d9b2eea]{color:#c64e37;background:#fff0ed}.material-status.optional[data-v-3d9b2eea]{color:#6e7c90;background:#f0f3f7}.material-row-meta[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;margin:5px 0 6px;color:#91a0b4;font-size:11px}.material-row-body .ant-progress[data-v-3d9b2eea]{max-width:520px}.material-row-side[data-v-3d9b2eea]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.material-study-state[data-v-3d9b2eea]{min-width:48px;padding:4px 7px;border-radius:5px;font-size:11px;text-align:center;white-space:nowrap}.material-study-state.notStarted[data-v-3d9b2eea]{color:#6d7b8d;background:#eef2f6}.material-study-state.studying[data-v-3d9b2eea]{color:#2878ff;background:#edf4ff}.material-study-state.practice[data-v-3d9b2eea]{color:#bd7510;background:#fff2d5}.material-study-state.completed[data-v-3d9b2eea]{color:#16814d;background:#e9f8ef}.material-percent[data-v-3d9b2eea]{min-width:34px;color:#61738b;font-size:11px;text-align:right;white-space:nowrap}.material-row-side .ant-btn[data-v-3d9b2eea]{border-radius:6px}.practice-button[data-v-3d9b2eea]{padding:0;color:#d88917}.empty-materials[data-v-3d9b2eea]{padding:42px 20px;color:#91a0b4;text-align:center}.empty-panel[data-v-3d9b2eea]{margin-top:28px;padding:54px 20px;border:1px dashed #cfd9e8;border-radius:12px;color:#91a0b4;text-align:center;background:#fff}.empty-panel .anticon[data-v-3d9b2eea]{font-size:34px}.empty-panel h3[data-v-3d9b2eea]{margin:12px 0 5px;color:#45566d}.empty-panel p[data-v-3d9b2eea]{margin:0}.signature-tip[data-v-3d9b2eea]{color:#718096}.signature-box[data-v-3d9b2eea]{padding:8px;border:1px dashed #becbdd;border-radius:8px;background:#fbfcfe}.signature-box canvas[data-v-3d9b2eea]{display:block;width:100%;height:220px;cursor:crosshair;-ms-touch-action:none;touch-action:none}@media (max-width:800px){.candidate-main[data-v-3d9b2eea],.header-inner[data-v-3d9b2eea]{width:calc(100% - 32px)}.header-right span[data-v-3d9b2eea]{display:none}.materials-panel-head[data-v-3d9b2eea],.requirement-strip[data-v-3d9b2eea],.signature-banner[data-v-3d9b2eea]{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.material-row[data-v-3d9b2eea]{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto;min-height:86px;max-height:none;-ms-flex-preferred-size:auto;flex-basis:auto;padding:13px 14px}.material-row-side[data-v-3d9b2eea]{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:5px}.material-row-meta[data-v-3d9b2eea]{-ms-flex-wrap:wrap;flex-wrap:wrap;gap:4px 12px}.plan-meta[data-v-3d9b2eea]{gap:5px}.material-filter-bar[data-v-3d9b2eea],.plan-filter-bar[data-v-3d9b2eea],.plan-meta[data-v-3d9b2eea]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.material-filter-bar[data-v-3d9b2eea],.plan-filter-bar[data-v-3d9b2eea]{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;gap:7px}.primary-tabs[data-v-3d9b2eea],.secondary-tabs[data-v-3d9b2eea]{overflow-x:auto}.primary-tabs button[data-v-3d9b2eea],.secondary-tabs button[data-v-3d9b2eea]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.material-status-tabs[data-v-3d9b2eea]{margin-left:0}.plan-bottom[data-v-3d9b2eea],.plan-title-row[data-v-3d9b2eea]{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.plan-title-row h2[data-v-3d9b2eea]{white-space:normal}.plan-state-row[data-v-3d9b2eea]{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-ms-flex-wrap:wrap;flex-wrap:wrap}}