html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.ad-popup[data-v-3df9b97d]{display:flex;flex-direction:column;gap:14px}.ad-step[data-v-3df9b97d]{align-self:flex-start;padding:4px 10px;border-radius:999px;background:#eef3fb;color:#445068;font-size:12px}.ad-title[data-v-3df9b97d]{margin:0;color:#172033;font-size:24px;line-height:1.35}.ad-image[data-v-3df9b97d]{width:100%;max-height:58vh;cursor:zoom-in}.ad-image[data-v-3df9b97d] img{width:100%;max-height:58vh;object-fit:contain;border-radius:16px;background:#f5f7fa}.ad-description[data-v-3df9b97d]{margin:0;white-space:pre-wrap;color:#445068;font-size:15px;line-height:1.9}.ad-actions[data-v-3df9b97d]{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.confirm-body[data-v-3df9b97d]{display:flex;flex-direction:column;gap:10px}.confirm-title[data-v-3df9b97d]{color:#172033;font-size:16px;font-weight:700}.confirm-desc[data-v-3df9b97d]{margin:0;color:#5b667a;font-size:13px;line-height:1.8}.confirm-url[data-v-3df9b97d]{padding:10px 12px;border-radius:12px;background:#f5f7fa;color:#445068;font-size:12px;line-height:1.6;word-break:break-all}.main-layout[data-v-d4afaaf0]{min-height:100vh}.sider[data-v-d4afaaf0]{background:#fff!important;border-right:1px solid #f0f0f0}.sider-shell[data-v-d4afaaf0]{height:100%;display:flex;flex-direction:column}.sider-logo[data-v-d4afaaf0]{height:64px;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 16px;border-bottom:1px solid #f0f0f0}.sider-menu-wrap[data-v-d4afaaf0]{flex:1;padding-top:8px}.sider-footer[data-v-d4afaaf0]{padding:16px 12px 18px;border-top:1px solid #f0f0f0}.footer-user[data-v-d4afaaf0]{margin-bottom:10px;text-align:center;word-break:break-all}.footer-username[data-v-d4afaaf0]{color:#445068;font-size:12px;font-weight:600}.footer-bound[data-v-d4afaaf0]{margin-top:4px;color:#7b8598;font-size:11px}.logout-btn[data-v-d4afaaf0]{height:40px;border-radius:10px}.logo-icon[data-v-d4afaaf0]{width:32px;height:32px;background:#1677ff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0}.logo-text[data-v-d4afaaf0]{color:#1a1a1a;font-size:15px;font-weight:600;white-space:nowrap}[data-v-d4afaaf0] .ant-layout-sider-children{background:#fff}[data-v-d4afaaf0] .ant-menu{border-inline-end:none!important}[data-v-d4afaaf0] .ant-menu .ant-menu-item{border-radius:6px;margin:2px 8px;color:#666}[data-v-d4afaaf0] .ant-menu .ant-menu-item-selected{background:#e6f4ff!important;color:#1677ff!important}.header[data-v-d4afaaf0]{background:#fff;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0;height:64px}.header-left[data-v-d4afaaf0]{display:flex;align-items:center;gap:16px}.header-title[data-v-d4afaaf0]{font-size:16px;font-weight:600;color:#1a1a1a}.collapse-trigger[data-v-d4afaaf0]{font-size:18px;cursor:pointer;color:#999}.header-right[data-v-d4afaaf0]{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1;min-width:0;overflow:hidden}.header-actions[data-v-d4afaaf0]{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0}.account-info[data-v-d4afaaf0]{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;flex:0 1 auto;min-width:0;max-width:220px}.username[data-v-d4afaaf0]{display:block;color:#333;font-size:14px;font-weight:600;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.account-bound[data-v-d4afaaf0]{display:block;color:#7b8598;font-size:11px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.notice-btn[data-v-d4afaaf0]{height:36px;border-radius:10px;flex-shrink:0}.notice-btn-text[data-v-d4afaaf0]{margin-left:4px}.content[data-v-d4afaaf0]{margin:24px;background:transparent;min-height:calc(100vh - 112px)}.notice-empty[data-v-d4afaaf0]{color:#7b8598;font-size:13px}.notice-list[data-v-d4afaaf0]{display:flex;flex-direction:column;gap:12px;max-height:60vh;overflow-y:auto;padding-right:2px}.notice-item[data-v-d4afaaf0]{width:100%;padding:14px;border:1px solid #edf1f5;border-radius:12px;background:#fff;text-align:left;cursor:pointer}.notice-item.unread[data-v-d4afaaf0]{border-color:#bfd8ff;background:#f8fbff}.notice-item-head[data-v-d4afaaf0]{display:flex;align-items:center;justify-content:space-between;gap:12px}.notice-item-title[data-v-d4afaaf0]{color:#172033;font-size:14px}.notice-item-badge[data-v-d4afaaf0]{flex-shrink:0;padding:2px 8px;border-radius:999px;background:#e8f1ff;color:#1d4ed8;font-size:11px;font-weight:700}.notice-item-time[data-v-d4afaaf0],.notice-modal-time[data-v-d4afaaf0]{margin-top:8px;color:#7b8598;font-size:12px}.notice-item-summary[data-v-d4afaaf0]{margin:8px 0 0;color:#445068;font-size:13px;line-height:1.7}.notice-modal-content[data-v-d4afaaf0]{margin-top:16px;color:#172033;font-size:14px;line-height:1.9;white-space:pre-wrap;word-break:break-word}.contact-modal-shell[data-v-d4afaaf0]{display:flex;flex-direction:column;gap:10px}.contact-modal-label[data-v-d4afaaf0],.contact-modal-number-label[data-v-d4afaaf0]{color:#7b8598;font-size:12px}.contact-modal-name[data-v-d4afaaf0]{color:#172033;font-size:18px;font-weight:700}.contact-modal-number[data-v-d4afaaf0]{color:#0f172a;font-size:28px;line-height:1;font-weight:800;letter-spacing:.03em}.contact-modal-desc[data-v-d4afaaf0]{color:#445068;font-size:14px;line-height:1.8}.contact-copy-btn[data-v-d4afaaf0]{width:fit-content;border-radius:10px}.forgot-page[data-v-d590297e]{min-height:100vh;padding:24px;background:radial-gradient(circle at top left,rgba(22,119,255,.14),transparent 32%),linear-gradient(135deg,#f3f6fb,#eef2f7)}.forgot-shell[data-v-d590297e]{min-height:calc(100vh - 48px);max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(360px,430px);gap:24px;align-items:center}.brand-panel[data-v-d590297e]{padding:32px}.brand-badge[data-v-d590297e]{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1677ff,#4096ff);color:#fff;font-size:24px;font-weight:700;letter-spacing:1px;box-shadow:0 14px 40px #1677ff3d}.brand-panel h1[data-v-d590297e]{margin:24px 0 12px;font-size:40px;line-height:1.1;color:#172033}.brand-panel p[data-v-d590297e]{max-width:560px;margin:0;font-size:16px;line-height:1.7;color:#5f6b85}.forgot-card[data-v-d590297e]{background:#fffffff0;border-radius:24px;padding:40px 36px;border:1px solid rgba(22,119,255,.08);box-shadow:0 28px 60px #1526471f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.forgot-header[data-v-d590297e]{text-align:center;margin-bottom:28px}.logo[data-v-d590297e]{width:56px;height:56px;background:linear-gradient(135deg,#1677ff,#4096ff);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.logo span[data-v-d590297e]{font-size:22px;font-weight:700;color:#fff}.title[data-v-d590297e]{font-size:24px;font-weight:600;color:#172033;margin:0 0 8px}.subtitle[data-v-d590297e]{font-size:14px;color:#7d8799;margin:0}.forgot-form[data-v-d590297e]{margin-top:8px}.forgot-form[data-v-d590297e] .ant-input-affix-wrapper{min-height:46px;border-radius:12px!important;border-color:#d7deeb!important;box-shadow:none!important}.forgot-form[data-v-d590297e] .ant-input-prefix{color:#9da7bb!important;margin-right:8px}.code-row[data-v-d590297e]{display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:10px}.code-btn[data-v-d590297e]{height:46px;border-radius:12px}.forgot-btn[data-v-d590297e]{height:46px!important;border-radius:12px!important;font-size:15px!important;font-weight:600!important;margin-top:8px;box-shadow:0 12px 24px #1677ff38}.forgot-footer[data-v-d590297e]{text-align:center;margin-top:24px}.switch-link[data-v-d590297e]{display:block;margin:12px auto 0;padding:0;border:none;background:transparent;color:#1677ff;font-size:13px;cursor:pointer}@media (max-width: 960px){.forgot-shell[data-v-d590297e]{grid-template-columns:1fr}.brand-panel[data-v-d590297e]{padding:8px 8px 0}.brand-panel h1[data-v-d590297e]{font-size:32px}}@media (max-width: 640px){.forgot-page[data-v-d590297e]{padding:16px}.forgot-shell[data-v-d590297e]{min-height:calc(100vh - 32px);gap:18px}.forgot-card[data-v-d590297e]{padding:28px 22px;border-radius:20px}.code-row[data-v-d590297e]{grid-template-columns:1fr}}.guide-page[data-v-0a1f5f64]{display:flex;flex-direction:column;gap:16px}.guide-hero[data-v-0a1f5f64]{padding:24px 28px;border-radius:18px;background:#fff;border:1px solid #edf1f5}.guide-title[data-v-0a1f5f64]{margin:10px 0 8px;color:#142033;font-size:28px;line-height:1.1}.guide-desc[data-v-0a1f5f64]{margin:0;max-width:720px;color:#556070;font-size:14px;line-height:1.8}.guide-grid[data-v-0a1f5f64]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.guide-card[data-v-0a1f5f64]{padding:22px 20px;border-radius:16px;border:1px solid #edf1f5;background:#fff}.guide-card-warn[data-v-0a1f5f64]{background:linear-gradient(180deg,#fffdf7,#fff9eb);border-color:#f3ddb0}.guide-card-title[data-v-0a1f5f64]{margin-bottom:14px;color:#172033;font-size:16px;font-weight:700}.guide-steps[data-v-0a1f5f64],.guide-list[data-v-0a1f5f64]{margin:0;padding-left:18px;color:#445068;font-size:14px;line-height:1.9}.guide-note[data-v-0a1f5f64]{color:#445068;font-size:14px;line-height:1.8}.guide-alert[data-v-0a1f5f64]{margin:12px 0;padding:12px 14px;border-radius:12px;background:#fff1c7;color:#7a4b00;font-size:13px;line-height:1.8}@media (max-width: 1080px){.guide-grid[data-v-0a1f5f64]{grid-template-columns:1fr}}@media (max-width: 640px){.guide-hero[data-v-0a1f5f64]{padding:20px}.guide-title[data-v-0a1f5f64]{font-size:24px}.guide-card[data-v-0a1f5f64]{padding:18px 16px}}.ads-page[data-v-ea90d00a]{display:flex;flex-direction:column;gap:18px}.page-head[data-v-ea90d00a]{display:flex;align-items:flex-start;justify-content:flex-end;gap:16px}.empty-card[data-v-ea90d00a],.ad-card[data-v-ea90d00a]{background:#fff;border:1px solid #edf1f5;border-radius:16px;box-shadow:0 10px 30px #0f172a0a}.empty-card[data-v-ea90d00a]{padding:28px;color:#667085;text-align:center}.ad-grid[data-v-ea90d00a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.ad-card[data-v-ea90d00a]{padding:16px;display:flex;flex-direction:column;gap:12px}.ad-card-head[data-v-ea90d00a]{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#7b8598;font-size:12px}.ad-image[data-v-ea90d00a]{width:100%;cursor:zoom-in}.ad-image[data-v-ea90d00a] img{width:100%;height:180px;object-fit:cover;border-radius:12px;background:#f5f7fa}.ad-card h3[data-v-ea90d00a]{margin:0;color:#172033;font-size:18px;line-height:1.4}.ad-card p[data-v-ea90d00a]{margin:0;white-space:pre-wrap;color:#445068;font-size:14px;line-height:1.8}.ad-card-actions[data-v-ea90d00a]{margin-top:auto;display:flex;justify-content:flex-end}.no-link[data-v-ea90d00a]{color:#9aa3b2;font-size:12px}.confirm-body[data-v-ea90d00a]{display:flex;flex-direction:column;gap:10px}.confirm-title[data-v-ea90d00a]{color:#172033;font-size:16px;font-weight:700}.confirm-desc[data-v-ea90d00a]{margin:0;color:#5b667a;font-size:13px;line-height:1.8}.confirm-url[data-v-ea90d00a]{padding:10px 12px;border-radius:12px;background:#f5f7fa;color:#445068;font-size:12px;line-height:1.6;word-break:break-all}.overview-page[data-v-ef3990b3]{display:flex;flex-direction:column;gap:16px}.hero-card[data-v-ef3990b3],.sync-card[data-v-ef3990b3],.batch-card[data-v-ef3990b3],.state-card[data-v-ef3990b3],.course-card[data-v-ef3990b3],.pagination-card[data-v-ef3990b3]{background:#fffffff5;border:1px solid rgba(22,119,255,.08);border-radius:18px;box-shadow:0 18px 38px #10214014}.hero-card[data-v-ef3990b3]{display:flex;justify-content:space-between;gap:16px;padding:20px 22px}.hero-main[data-v-ef3990b3]{min-width:0}.hero-title[data-v-ef3990b3]{margin:0;color:#172033;font-size:24px;line-height:1.2}.hero-desc[data-v-ef3990b3]{margin:8px 0 0;color:#6b7589;font-size:13px;line-height:1.7}.hero-actions[data-v-ef3990b3]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.search-input[data-v-ef3990b3]{width:280px;height:40px;border:1px solid #d7deeb;border-radius:10px;padding:0 12px;font-size:13px;color:#172033;outline:none}.search-input[data-v-ef3990b3]:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1f}.state-card[data-v-ef3990b3]{padding:20px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.sync-card[data-v-ef3990b3]{padding:16px 20px;display:flex;flex-direction:column;gap:10px}.batch-card[data-v-ef3990b3]{padding:16px 20px}.batch-card-main[data-v-ef3990b3]{display:flex;align-items:center;justify-content:space-between;gap:16px}.batch-card-actions[data-v-ef3990b3]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.batch-card-title[data-v-ef3990b3]{color:#172033;font-size:15px;font-weight:600}.batch-card-desc[data-v-ef3990b3]{margin-top:6px;color:#6b7589;font-size:12px;line-height:1.6}.batch-execute-modal[data-v-ef3990b3]{display:flex;flex-direction:column;gap:16px}.batch-execute-summary[data-v-ef3990b3]{color:#172033;font-size:14px;line-height:1.7}.batch-execute-tip[data-v-ef3990b3]{color:#6b7589;font-size:12px;line-height:1.7}.batch-execute-field[data-v-ef3990b3]{display:flex;flex-direction:column;gap:8px}.batch-execute-label[data-v-ef3990b3]{color:#172033;font-size:13px;font-weight:600}.batch-execute-select[data-v-ef3990b3]{width:100%}.batch-course-list[data-v-ef3990b3]{max-height:280px;overflow:auto;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#f8fbff}.batch-course-item[data-v-ef3990b3]{padding:10px 12px;border-bottom:1px solid rgba(148,163,184,.14)}.batch-course-item[data-v-ef3990b3]:last-child{border-bottom:none}.batch-course-title[data-v-ef3990b3]{color:#172033;font-size:13px;font-weight:600;line-height:1.5}.batch-course-meta[data-v-ef3990b3]{margin-top:4px;display:flex;flex-wrap:wrap;gap:6px 12px;color:#64748b;font-size:12px}.batch-course-empty[data-v-ef3990b3]{padding:16px 12px;color:#64748b;font-size:12px;text-align:center}.sync-main[data-v-ef3990b3]{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.sync-title[data-v-ef3990b3]{color:#172033;font-size:15px;font-weight:600}.sync-meta[data-v-ef3990b3]{display:flex;flex-wrap:wrap;gap:8px 12px;color:#6b7589;font-size:12px}.error-state[data-v-ef3990b3]{border-color:#f43f5e2e}.state-title[data-v-ef3990b3]{color:#172033;font-size:18px;font-weight:600}.state-desc[data-v-ef3990b3],.detail-error[data-v-ef3990b3],.detail-empty[data-v-ef3990b3],.detail-loading[data-v-ef3990b3]{color:#6b7589;font-size:13px;line-height:1.7}.overview-loading[data-v-ef3990b3]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:#f5f7fad1;border-radius:18px}.overview-loading .state-title[data-v-ef3990b3],.overview-loading .state-desc[data-v-ef3990b3]{width:auto;max-width:420px;text-align:center}.overview-loading .state-title[data-v-ef3990b3]:before{content:"";display:block;width:20px;height:20px;margin:0 auto 12px;border-radius:999px;border:2px solid rgba(22,119,255,.16);border-top-color:#1677ff;animation:overview-spin-ef3990b3 .8s linear infinite}.course-list[data-v-ef3990b3]{display:flex;flex-direction:column;gap:16px}.course-card[data-v-ef3990b3]{padding:16px}.course-head[data-v-ef3990b3]{display:flex;gap:14px;align-items:flex-start}.course-cover[data-v-ef3990b3]{width:144px;height:96px;flex-shrink:0;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#dde8ff,#edf3ff)}.course-cover img[data-v-ef3990b3]{width:100%;height:100%;object-fit:cover;display:block}.cover-fallback[data-v-ef3990b3]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#275bb5;font-size:28px;font-weight:700}.course-main[data-v-ef3990b3]{min-width:0;flex:1}.course-title-row[data-v-ef3990b3]{display:flex;justify-content:space-between;gap:12px}.course-title-actions[data-v-ef3990b3]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.title-btn[data-v-ef3990b3],.metric-link[data-v-ef3990b3]{padding:0;border:none;background:transparent;color:#172033;cursor:pointer;text-align:left}.title-btn[data-v-ef3990b3]{font-size:18px;font-weight:600;line-height:1.35}.metric-link[data-v-ef3990b3]{font-size:12px;font-weight:700}.title-btn[data-v-ef3990b3]:hover,.metric-link[data-v-ef3990b3]:hover{color:#1677ff}.status-badge[data-v-ef3990b3]{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.quick-task-btn[data-v-ef3990b3]{border-radius:999px}.status-active[data-v-ef3990b3]{background:#16a34a1f;color:#15803d}.status-pending[data-v-ef3990b3]{background:#f59e0b24;color:#b45309}.status-finished[data-v-ef3990b3]{background:#64748b24;color:#475569}.course-meta-grid[data-v-ef3990b3]{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px 12px;color:#6b7589;font-size:12px}.course-meta-subrow[data-v-ef3990b3]{margin-top:6px;color:#6b7589;font-size:12px;line-height:1.5}.progress-grid[data-v-ef3990b3]{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.progress-block[data-v-ef3990b3]{border-radius:14px;padding:10px;background:#f8fbff;border:1px solid rgba(148,163,184,.16)}.progress-block.clickable[data-v-ef3990b3]{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.progress-block.clickable[data-v-ef3990b3]:hover,.progress-block.clickable[data-v-ef3990b3]:focus-visible{border-color:#1677ff57;box-shadow:0 10px 22px #1677ff1f;outline:none;transform:translateY(-1px)}.progress-header[data-v-ef3990b3]{display:flex;justify-content:space-between;gap:12px}.progress-ratio[data-v-ef3990b3]{color:#172033;font-size:12px}.progress-meta[data-v-ef3990b3]{margin-top:6px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#64748b;font-size:11px;line-height:1.3}.metric-action-btn[data-v-ef3990b3],.metric-action-row[data-v-ef3990b3]{margin-top:8px}.batch-execute-checkboxes[data-v-ef3990b3]{display:flex;flex-direction:column;gap:10px}@keyframes overview-spin-ef3990b3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pagination-card[data-v-ef3990b3]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.pagination-meta[data-v-ef3990b3]{display:flex;flex-wrap:wrap;gap:8px 12px;color:#6b7589;font-size:12px}.pagination-actions[data-v-ef3990b3]{display:flex;gap:10px;flex-wrap:wrap}.detail-shell[data-v-ef3990b3]{display:flex;flex-direction:column;gap:14px}.detail-summary[data-v-ef3990b3]{display:flex;flex-wrap:wrap;gap:8px 12px;padding:10px 12px;border-radius:8px;background:#f8fbff;color:#445068;font-size:12px}.detail-empty[data-v-ef3990b3]{padding:18px 0;text-align:center}.catalog-list[data-v-ef3990b3]{max-height:560px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding-right:4px}.catalog-card[data-v-ef3990b3],.parent-group-card[data-v-ef3990b3],.item-card[data-v-ef3990b3]{border:1px solid #edf1f5;border-radius:12px;padding:12px;background:#fff}.catalog-head[data-v-ef3990b3],.item-title-row[data-v-ef3990b3],.parent-group-head[data-v-ef3990b3]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.catalog-title[data-v-ef3990b3],.item-title[data-v-ef3990b3]{color:#172033;font-size:14px}.catalog-progress[data-v-ef3990b3]{color:#475569;font-size:12px;font-weight:600}.item-list[data-v-ef3990b3],.parent-group-list[data-v-ef3990b3],.nested-list[data-v-ef3990b3]{display:flex;flex-direction:column;gap:8px;margin-top:10px}.child-item[data-v-ef3990b3]{margin-left:8px}.item-status[data-v-ef3990b3]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:3px 8px;border-radius:999px;background:#f59e0b24;color:#b45309;font-size:11px;font-weight:700;white-space:nowrap}.item-status.done[data-v-ef3990b3]{background:#16a34a1f;color:#15803d}.item-meta[data-v-ef3990b3]{margin-top:6px;display:flex;flex-wrap:wrap;gap:5px 12px;color:#64748b;font-size:12px;line-height:1.6}@media (max-width: 1180px){.progress-grid[data-v-ef3990b3]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 960px){.hero-card[data-v-ef3990b3],.pagination-card[data-v-ef3990b3],.batch-card-main[data-v-ef3990b3],.course-head[data-v-ef3990b3]{flex-direction:column}.hero-actions[data-v-ef3990b3],.search-input[data-v-ef3990b3],.batch-card-actions[data-v-ef3990b3]{width:100%}.batch-card-actions[data-v-ef3990b3] .ant-btn{flex:1 1 220px}.course-cover[data-v-ef3990b3]{width:100%;height:160px}}@media (max-width: 720px){.progress-grid[data-v-ef3990b3]{grid-template-columns:1fr}.child-item[data-v-ef3990b3]{margin-left:0}}.login-page[data-v-5e4776f5]{min-height:100vh;padding:24px;background:radial-gradient(circle at top left,rgba(22,119,255,.14),transparent 32%),linear-gradient(135deg,#f3f6fb,#eef2f7)}.login-shell[data-v-5e4776f5]{min-height:calc(100vh - 48px);max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(360px,420px);gap:24px;align-items:center}.brand-panel[data-v-5e4776f5]{padding:32px}.brand-badge[data-v-5e4776f5]{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1677ff,#4096ff);color:#fff;font-size:24px;font-weight:700;letter-spacing:1px;box-shadow:0 14px 40px #1677ff3d}.brand-panel h1[data-v-5e4776f5]{margin:24px 0 12px;font-size:40px;line-height:1.1;color:#172033}.brand-panel p[data-v-5e4776f5]{max-width:560px;margin:0;font-size:16px;line-height:1.7;color:#5f6b85}.login-card[data-v-5e4776f5]{background:#fffffff0;border-radius:24px;padding:40px 36px;border:1px solid rgba(22,119,255,.08);box-shadow:0 28px 60px #1526471f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-header[data-v-5e4776f5]{text-align:center;margin-bottom:28px}.logo[data-v-5e4776f5]{width:56px;height:56px;background:linear-gradient(135deg,#1677ff,#4096ff);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.logo span[data-v-5e4776f5]{font-size:22px;font-weight:700;color:#fff}.title[data-v-5e4776f5]{font-size:24px;font-weight:600;color:#172033;margin:0 0 8px}.subtitle[data-v-5e4776f5]{font-size:14px;color:#7d8799;margin:0}.login-form[data-v-5e4776f5]{margin-top:8px}.login-form[data-v-5e4776f5] .ant-input-affix-wrapper{min-height:46px;border-radius:12px!important;border-color:#d7deeb!important;box-shadow:none!important}.login-form[data-v-5e4776f5] .ant-input-prefix{color:#9da7bb!important;margin-right:8px}.login-btn[data-v-5e4776f5]{height:46px!important;border-radius:12px!important;font-size:15px!important;font-weight:600!important;margin-top:8px;box-shadow:0 12px 24px #1677ff38}.login-footer[data-v-5e4776f5]{text-align:center;margin-top:24px}.switch-link[data-v-5e4776f5]{display:block;margin:12px auto 0;padding:0;border:none;background:transparent;color:#1677ff;font-size:13px;cursor:pointer}@media (max-width: 960px){.login-shell[data-v-5e4776f5]{grid-template-columns:1fr}.brand-panel[data-v-5e4776f5]{padding:8px 8px 0}.brand-panel h1[data-v-5e4776f5]{font-size:32px}}@media (max-width: 640px){.login-page[data-v-5e4776f5]{padding:16px}.login-shell[data-v-5e4776f5]{min-height:calc(100vh - 32px);gap:18px}.login-card[data-v-5e4776f5]{padding:28px 22px;border-radius:20px}}.overview-page[data-v-902aff53]{position:relative;min-height:100%;display:flex;flex-direction:column;gap:14px}.hero-card[data-v-902aff53],.state-card[data-v-902aff53],.course-card[data-v-902aff53],.pagination-card[data-v-902aff53]{background:#fffffff5;border:1px solid rgba(22,119,255,.08);box-shadow:0 18px 38px #10214014}.hero-card[data-v-902aff53]{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-radius:18px}.hero-main[data-v-902aff53]{min-width:0;flex-shrink:0}.hero-title[data-v-902aff53]{margin:0;color:#172033;font-size:24px;line-height:1.2}.hero-actions[data-v-902aff53]{display:flex;flex:1;justify-content:flex-end;min-width:0}.toolbar-row[data-v-902aff53]{display:flex;align-items:center;gap:10px}.search-input[data-v-902aff53]{flex:1;width:100%;height:40px;border:1px solid #d7deeb;border-radius:10px;padding:0 12px;font-size:13px;color:#172033;outline:none;background:#fff}.search-input[data-v-902aff53]:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1f}.state-card[data-v-902aff53]{border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.error-state[data-v-902aff53]{border-color:#f43f5e2e}.state-title[data-v-902aff53]{color:#172033;font-size:18px;font-weight:600}.state-desc[data-v-902aff53]{color:#6b7589;font-size:13px;line-height:1.7}.overview-loading[data-v-902aff53]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;min-height:100vh;width:100vw;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:#f5f7fad1}.overview-loading .state-title[data-v-902aff53],.overview-loading .state-desc[data-v-902aff53]{width:auto;max-width:420px;text-align:center}.overview-loading .state-title[data-v-902aff53]:before{content:"";display:block;width:20px;height:20px;margin:0 auto 12px;border-radius:999px;border:2px solid rgba(22,119,255,.16);border-top-color:#1677ff;animation:overview-spin-902aff53 .8s linear infinite}.overview-page[data-v-902aff53] .ant-btn-loading-icon{display:none!important}@keyframes overview-spin-902aff53{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.course-list[data-v-902aff53]{display:flex;flex-direction:column;gap:14px}.course-card[data-v-902aff53]{border-radius:16px;padding:16px}.course-head[data-v-902aff53]{display:flex;gap:14px;align-items:flex-start}.course-cover[data-v-902aff53]{width:144px;height:96px;flex-shrink:0;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#dde8ff,#edf3ff)}.course-cover img[data-v-902aff53]{width:100%;height:100%;object-fit:cover;display:block}.cover-fallback[data-v-902aff53]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#275bb5;font-size:28px;font-weight:700}.course-main[data-v-902aff53]{min-width:0;flex:1}.course-title-row[data-v-902aff53]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.course-title[data-v-902aff53]{margin:0;color:#172033;font-size:18px;line-height:1.35}.status-badge[data-v-902aff53]{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.status-active[data-v-902aff53]{background:#16a34a1f;color:#15803d}.status-pending[data-v-902aff53]{background:#f59e0b24;color:#b45309}.status-finished[data-v-902aff53]{background:#64748b24;color:#475569}.course-meta-grid[data-v-902aff53]{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px 12px;color:#6b7589;font-size:12px}.course-extra-row[data-v-902aff53]{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px 12px;color:#334155;font-size:12px}.sync-error[data-v-902aff53]{margin-top:10px;padding:8px 10px;border-radius:10px;background:#ef444414;color:#b91c1c;font-size:12px;line-height:1.6}.progress-grid[data-v-902aff53]{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.progress-block[data-v-902aff53]{border-radius:14px;padding:10px 10px 9px;background:#f8fbff;border:1px solid rgba(148,163,184,.16)}.progress-block.clickable[data-v-902aff53]{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.progress-block.clickable[data-v-902aff53]:hover,.progress-block.clickable[data-v-902aff53]:focus-visible{border-color:#1677ff57;box-shadow:0 10px 22px #1677ff1f;outline:none;transform:translateY(-1px)}.progress-header[data-v-902aff53]{display:flex;align-items:center;justify-content:space-between;gap:12px}.progress-title[data-v-902aff53]{color:#172033;font-size:12px;font-weight:700}.progress-ratio[data-v-902aff53]{color:#172033;font-size:12px}.progress-meta[data-v-902aff53]{margin-top:6px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#64748b;font-size:11px;line-height:1.3}.progress-meta span[data-v-902aff53]:nth-child(n+3){display:none}.pagination-card[data-v-902aff53]{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:16px;padding:14px 16px}.pagination-meta[data-v-902aff53]{display:flex;flex-wrap:wrap;gap:8px 12px;color:#6b7589;font-size:12px}.pagination-actions[data-v-902aff53]{display:flex;gap:10px;flex-wrap:wrap}.detail-modal[data-v-902aff53]{display:flex;flex-direction:column;gap:14px}.detail-summary[data-v-902aff53]{display:flex;flex-wrap:wrap;gap:8px 12px;padding:10px 12px;border-radius:8px;background:#f8fbff;color:#445068;font-size:12px}.detail-empty[data-v-902aff53]{padding:18px 0;color:#7b8598;font-size:13px;text-align:center}.detail-list[data-v-902aff53]{max-height:560px;overflow:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.detail-item[data-v-902aff53]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;border:1px solid #edf1f5;border-radius:8px;background:#fff}.detail-item.completed[data-v-902aff53]{background:#fbfcfe}.detail-item-main[data-v-902aff53]{min-width:0;flex:1}.detail-title-row[data-v-902aff53]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.detail-title[data-v-902aff53]{min-width:0;color:#172033;font-size:14px;line-height:1.5;word-break:break-word}.detail-status[data-v-902aff53]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:3px 8px;border-radius:999px;background:#f59e0b24;color:#b45309;font-size:11px;font-weight:700;white-space:nowrap}.detail-status.done[data-v-902aff53]{background:#16a34a1f;color:#15803d}.detail-meta[data-v-902aff53]{margin-top:6px;display:flex;flex-wrap:wrap;gap:5px 12px;color:#64748b;font-size:12px;line-height:1.6}@media (max-width: 1180px){.progress-grid[data-v-902aff53]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 960px){.hero-card[data-v-902aff53],.pagination-card[data-v-902aff53],.course-head[data-v-902aff53]{flex-direction:column}.hero-actions[data-v-902aff53]{width:100%;justify-content:stretch}.course-cover[data-v-902aff53]{width:100%;height:160px}}@media (max-width: 720px){.progress-grid[data-v-902aff53]{grid-template-columns:1fr}.toolbar-row[data-v-902aff53]{flex-direction:column;align-items:stretch}.pagination-actions[data-v-902aff53]{width:100%}.overview-loading .state-title[data-v-902aff53],.overview-loading .state-desc[data-v-902aff53]{max-width:calc(100% - 24px)}}.register-page[data-v-50b9ab21]{min-height:100vh;padding:24px;background:radial-gradient(circle at top left,rgba(22,119,255,.14),transparent 32%),linear-gradient(135deg,#f3f6fb,#eef2f7)}.register-shell[data-v-50b9ab21]{min-height:calc(100vh - 48px);max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(360px,430px);gap:24px;align-items:center}.brand-panel[data-v-50b9ab21]{padding:32px}.brand-badge[data-v-50b9ab21]{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1677ff,#4096ff);color:#fff;font-size:24px;font-weight:700;letter-spacing:1px;box-shadow:0 14px 40px #1677ff3d}.brand-panel h1[data-v-50b9ab21]{margin:24px 0 12px;font-size:40px;line-height:1.1;color:#172033}.brand-panel p[data-v-50b9ab21]{max-width:560px;margin:0;font-size:16px;line-height:1.7;color:#5f6b85}.register-card[data-v-50b9ab21]{background:#fffffff0;border-radius:24px;padding:40px 36px;border:1px solid rgba(22,119,255,.08);box-shadow:0 28px 60px #1526471f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.register-header[data-v-50b9ab21]{text-align:center;margin-bottom:28px}.logo[data-v-50b9ab21]{width:56px;height:56px;background:linear-gradient(135deg,#1677ff,#4096ff);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.logo span[data-v-50b9ab21]{font-size:22px;font-weight:700;color:#fff}.title[data-v-50b9ab21]{font-size:24px;font-weight:600;color:#172033;margin:0 0 8px}.subtitle[data-v-50b9ab21]{font-size:14px;color:#7d8799;margin:0}.group-entry[data-v-50b9ab21]{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;padding:10px 12px;border-radius:12px;background:#eef6ff;color:#39516f;font-size:13px}.group-entry a[data-v-50b9ab21]{color:#1677ff;font-weight:600}.register-form[data-v-50b9ab21]{margin-top:8px}.register-form[data-v-50b9ab21] .ant-input-affix-wrapper{min-height:46px;border-radius:12px!important;border-color:#d7deeb!important;box-shadow:none!important}.register-form[data-v-50b9ab21] .ant-input-prefix{color:#9da7bb!important;margin-right:8px}.code-row[data-v-50b9ab21]{display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:10px}.code-btn[data-v-50b9ab21]{height:46px;border-radius:12px}.register-btn[data-v-50b9ab21]{height:46px!important;border-radius:12px!important;font-size:15px!important;font-weight:600!important;margin-top:8px;box-shadow:0 12px 24px #1677ff38}.register-footer[data-v-50b9ab21]{text-align:center;margin-top:24px;color:#9aa3b3;font-size:12px}.switch-link[data-v-50b9ab21]{display:block;margin:12px auto 0;padding:0;border:none;background:transparent;color:#1677ff;font-size:13px;cursor:pointer}@media (max-width: 960px){.register-shell[data-v-50b9ab21]{grid-template-columns:1fr}.brand-panel[data-v-50b9ab21]{padding:8px 8px 0}.brand-panel h1[data-v-50b9ab21]{font-size:32px}}@media (max-width: 640px){.register-page[data-v-50b9ab21]{padding:16px}.register-shell[data-v-50b9ab21]{min-height:calc(100vh - 32px);gap:18px}.register-card[data-v-50b9ab21]{padding:28px 22px;border-radius:20px}.code-row[data-v-50b9ab21]{grid-template-columns:1fr}}.settings-page[data-v-c44b8262]{padding:0}.page-header[data-v-c44b8262]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-title[data-v-c44b8262]{margin:0;color:#1a1a1a;font-size:18px;font-weight:600}.settings-grid[data-v-c44b8262]{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:16px}.binding-stack[data-v-c44b8262],.settings-side-stack[data-v-c44b8262]{display:flex;flex-direction:column;gap:16px}.settings-card[data-v-c44b8262]{background:#fff;border:1px solid #f0f0f0;border-radius:12px;padding:20px}.card-title[data-v-c44b8262]{margin-bottom:14px;color:#172033;font-size:16px;font-weight:600}.setting-item[data-v-c44b8262]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #f0f0f0}.setting-item[data-v-c44b8262]:last-of-type{border-bottom:none}.setting-label[data-v-c44b8262]{color:#666;font-size:14px}.setting-value[data-v-c44b8262]{color:#1a1a1a;font-size:14px;font-weight:500}.setting-help[data-v-c44b8262]{margin-top:4px;color:#7b8598;font-size:12px;line-height:1.6}.subjective-setting[data-v-c44b8262]{display:flex;flex-direction:column;gap:14px}.subjective-setting-head[data-v-c44b8262]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.binding-status[data-v-c44b8262]{margin-bottom:18px;padding:16px;border-radius:12px;background:#fff8e6;border:1px solid #f6df9a}.binding-status.bound[data-v-c44b8262]{background:#f3fbf6;border-color:#b7ebc6}.binding-label[data-v-c44b8262]{color:#7b8598;font-size:12px}.binding-value[data-v-c44b8262]{display:block;margin-top:8px;color:#172033;font-size:16px}.binding-tip[data-v-c44b8262]{margin:8px 0 0;color:#556070;font-size:13px;line-height:1.7}.bind-form[data-v-c44b8262]{margin-top:8px}.action-row[data-v-c44b8262]{display:flex;gap:12px;flex-wrap:wrap}@media (max-width: 980px){.settings-grid[data-v-c44b8262]{grid-template-columns:1fr}}@media (max-width: 640px){.page-header[data-v-c44b8262]{flex-direction:column}}.tasks-page[data-v-86d8945a]{padding:0}.page-header[data-v-86d8945a]{margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.page-title[data-v-86d8945a]{margin:0;color:#1a1a1a;font-size:18px;font-weight:600}.queue-status-card[data-v-86d8945a]{flex:1;min-width:0;padding:10px 14px;border:1px solid #dbe6f5;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#eef6ff);display:flex;align-items:center;gap:14px;overflow:hidden;white-space:nowrap}.queue-status-main[data-v-86d8945a]{display:flex;align-items:baseline;gap:10px;flex:0 0 auto}.queue-status-label[data-v-86d8945a]{color:#456179;font-size:12px;font-weight:600}.queue-status-value[data-v-86d8945a]{color:#0f3761;font-size:18px}.queue-status-meta[data-v-86d8945a]{display:flex;flex-wrap:nowrap;gap:8px;color:#445068;font-size:12px;flex:0 0 auto}.queue-status-meta span[data-v-86d8945a]{padding:3px 8px;border-radius:999px;background:#ffffffbd}.queue-status-hint[data-v-86d8945a]{margin:0 0 0 auto;color:#5f6f84;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.queue-status-ready[data-v-86d8945a]{border-color:#bfe8d1;background:linear-gradient(135deg,#f4fff8,#e9f9ef)}.queue-status-ready .queue-status-value[data-v-86d8945a]{color:#14783c}.queue-status-busy[data-v-86d8945a]{border-color:#f0d6a8;background:linear-gradient(135deg,#fffaf0,#fff1d7)}.queue-status-busy .queue-status-value[data-v-86d8945a]{color:#9a5b00}.queue-status-closed[data-v-86d8945a]{border-color:#e3e7ef;background:#f7f8fb}.page-actions[data-v-86d8945a]{display:flex;gap:10px}.task-list-card[data-v-86d8945a],.create-sidebar[data-v-86d8945a],.create-card[data-v-86d8945a],.summary-card[data-v-86d8945a]{background:#fff;border:1px solid #eef1f5;border-radius:14px}.task-list-card[data-v-86d8945a]{overflow:hidden}.empty-state[data-v-86d8945a]{padding:56px 24px;text-align:center}.empty-title[data-v-86d8945a]{color:#172033;font-size:18px;font-weight:600}.empty-desc[data-v-86d8945a]{margin-top:10px;color:#6b7589;font-size:13px}.task-table-head[data-v-86d8945a],.task-row[data-v-86d8945a]{display:grid;grid-template-columns:minmax(240px,2fr) 104px minmax(220px,1.3fr) minmax(132px,.9fr) minmax(340px,1.25fr);gap:16px;align-items:center}.task-table-head[data-v-86d8945a]{padding:14px 20px;background:#f8fafc;border-bottom:1px solid #eef1f5;color:#7c8798;font-size:12px;font-weight:600}.task-table-body[data-v-86d8945a]{display:flex;flex-direction:column}.task-row[data-v-86d8945a]{padding:20px;border-bottom:1px solid #f2f4f7}.task-row[data-v-86d8945a]:last-child{border-bottom:none}.task-cell[data-v-86d8945a]{min-width:0}.clickable-cell[data-v-86d8945a]{cursor:pointer}.task-cell-action[data-v-86d8945a]{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;white-space:nowrap}.course-title-row[data-v-86d8945a]{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.course-title[data-v-86d8945a]{margin:0;color:#172033;font-size:16px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-meta[data-v-86d8945a]{margin:8px 0 0;color:#7c8798;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-status[data-v-86d8945a]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 10px;border-radius:999px;background:#eaf4ff;color:#1677ff;font-size:12px;font-weight:600}.task-status-draft[data-v-86d8945a]{background:#eaf4ff;color:#1677ff}.task-status-queued[data-v-86d8945a]{background:#fff3e6;color:#d97706}.task-status-auto-queue[data-v-86d8945a]{background:#eef2ff;color:#4338ca}.task-status-running[data-v-86d8945a]{background:#e8f1ff;color:#1d4ed8}.task-status-paused[data-v-86d8945a]{background:#f5f3ff;color:#6d28d9}.task-status-pausing[data-v-86d8945a]{background:#fff7ed;color:#c2410c}.task-status-success[data-v-86d8945a]{background:#e8fbef;color:#15803d}.task-status-failed[data-v-86d8945a],.task-status-cancelled[data-v-86d8945a]{background:#fef2f2;color:#c44557}.mode-block[data-v-86d8945a],.remaining-block[data-v-86d8945a]{display:flex;flex-direction:column;gap:4px;min-width:0}.mode-label[data-v-86d8945a],.remaining-hint[data-v-86d8945a]{color:#7c8798;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-value[data-v-86d8945a],.remaining-value[data-v-86d8945a]{color:#172033;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-list[data-v-86d8945a]{display:flex;gap:12px;flex-wrap:wrap;min-width:0}.progress-item[data-v-86d8945a]{min-width:0;flex:1 1 0;height:40px;padding:0 12px;border-radius:10px;background:#f8fafc;display:inline-flex;align-items:center;justify-content:center;color:#172033;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-item-btn[data-v-86d8945a]{border:none;cursor:pointer}.progress-item-btn[data-v-86d8945a]:hover{background:#eef6ff;color:#1677ff}.execute-btn[data-v-86d8945a],.delete-btn[data-v-86d8945a],.detail-btn[data-v-86d8945a]{flex-shrink:0;height:32px;padding:0 12px;border-radius:10px;cursor:pointer;white-space:nowrap;font-size:12px}.detail-btn[data-v-86d8945a]{border:1px solid #d7deeb;background:#fff;color:#445068}.execute-btn[data-v-86d8945a]{border:1px solid #1677ff;background:#1677ff;color:#fff}.execute-btn[data-v-86d8945a]:disabled{border-color:#d7deeb;background:#eef2f7;color:#8b95a7;cursor:not-allowed}.delete-btn[data-v-86d8945a]{border:1px solid #f0d5d8;background:#fff;color:#c44557}.delete-btn[data-v-86d8945a]:disabled{border-color:#e8edf4;background:#f5f7fa;color:#9aa4b2;cursor:not-allowed}.detail-card[data-v-86d8945a],.detail-log-card[data-v-86d8945a]{border:1px solid #eef1f5;border-radius:14px;background:#fff}.detail-card[data-v-86d8945a]{padding:18px}.detail-top[data-v-86d8945a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.detail-title[data-v-86d8945a]{color:#172033;font-size:16px;font-weight:600}.detail-subtitle[data-v-86d8945a]{margin-top:6px;color:#7c8798;font-size:12px}.detail-grid[data-v-86d8945a]{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-item[data-v-86d8945a]{padding:14px;border-radius:12px;background:#f8fafc}.detail-label[data-v-86d8945a]{color:#7c8798;font-size:12px}.detail-value[data-v-86d8945a]{display:block;margin-top:8px;color:#172033;font-size:16px}.detail-lines[data-v-86d8945a]{margin-top:18px;display:flex;flex-direction:column;gap:12px}.detail-line[data-v-86d8945a]{display:flex;justify-content:space-between;gap:14px;padding-top:12px;border-top:1px solid #f1f4f8;color:#445068;font-size:13px}.detail-line span[data-v-86d8945a]{color:#7c8798}.detail-log-card[data-v-86d8945a]{margin-top:16px;padding:18px}.plan-summary-grid[data-v-86d8945a]{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.unit-list[data-v-86d8945a]{margin-top:16px;display:flex;flex-direction:column;gap:12px}.unit-item[data-v-86d8945a]{padding:14px;border-radius:12px;background:#f8fafc}.unit-item-blocked[data-v-86d8945a]{background:#fffaf3}.unit-title-row[data-v-86d8945a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.unit-title[data-v-86d8945a]{color:#172033;font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-meta[data-v-86d8945a]{margin-top:8px;display:flex;flex-wrap:wrap;gap:10px;color:#7c8798;font-size:12px}.detail-log-head[data-v-86d8945a]{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-log-title[data-v-86d8945a]{color:#172033;font-size:15px;font-weight:600}.log-refresh-btn[data-v-86d8945a]{height:32px;padding:0 12px;border:1px solid #d7deeb;border-radius:10px;background:#fff;color:#445068;cursor:pointer}.detail-log-list[data-v-86d8945a]{margin-top:16px;display:flex;flex-direction:column;gap:12px;max-height:420px;overflow:auto}.detail-log-item[data-v-86d8945a]{padding:14px;border-radius:12px;background:#f8fafc}.detail-log-meta[data-v-86d8945a]{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#7c8798;font-size:12px}.detail-log-level[data-v-86d8945a]{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:24px;padding:0 8px;border-radius:999px;text-transform:uppercase;font-size:11px;font-weight:700}.detail-log-info[data-v-86d8945a]{background:#eaf4ff;color:#1677ff}.detail-log-warning[data-v-86d8945a]{background:#fff7ed;color:#c2410c}.detail-log-error[data-v-86d8945a]{background:#fef2f2;color:#c44557}.blocked-task-section[data-v-86d8945a]{margin-top:18px}.detail-log-message[data-v-86d8945a],.detail-empty[data-v-86d8945a]{margin-top:10px;color:#172033;font-size:13px;line-height:1.6}.progress-modal-head[data-v-86d8945a]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.progress-modal-title[data-v-86d8945a]{color:#172033;font-size:18px;font-weight:600}.progress-modal-subtitle[data-v-86d8945a]{margin-top:6px;color:#6b7589;font-size:13px}.create-shell[data-v-86d8945a]{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px}.create-sidebar[data-v-86d8945a],.create-card[data-v-86d8945a]{padding:20px}.create-sidebar[data-v-86d8945a]{background:linear-gradient(180deg,#f8fbff,#fff)}.create-main[data-v-86d8945a]{display:flex;flex-direction:column;gap:16px}.create-step[data-v-86d8945a]{display:flex;gap:12px;margin-bottom:20px}.step-index[data-v-86d8945a]{width:34px;height:34px;border-radius:10px;background:#1677ff;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.step-title[data-v-86d8945a],.card-title[data-v-86d8945a]{color:#172033;font-size:16px;font-weight:600}.step-desc[data-v-86d8945a],.card-subtitle[data-v-86d8945a],.field-label[data-v-86d8945a],.inline-hint[data-v-86d8945a],.preview-label[data-v-86d8945a],.summary-label[data-v-86d8945a]{color:#6b7589;font-size:13px}.step-desc[data-v-86d8945a],.card-subtitle[data-v-86d8945a]{margin:6px 0 0}.field-label[data-v-86d8945a]{display:block;margin-bottom:8px}.course-select-wrap[data-v-86d8945a]{display:flex;flex-direction:column;gap:12px}.course-select[data-v-86d8945a]{width:100%}.panel-pager[data-v-86d8945a]{display:flex;align-items:center;justify-content:space-between;gap:10px}.pager-btn[data-v-86d8945a]{height:34px;padding:0 14px;border:1px solid #d7deeb;border-radius:10px;background:#fff;color:#445068;cursor:pointer}.pager-btn[data-v-86d8945a]:disabled{border-color:#e8edf4;background:#f5f7fa;color:#9aa4b2;cursor:not-allowed}.pager-text[data-v-86d8945a]{color:#6b7589;font-size:12px}.course-preview[data-v-86d8945a]{margin-top:18px;padding:14px;border-radius:12px;background:#fff;border:1px solid #edf1f5}.preview-value[data-v-86d8945a]{margin-top:8px;color:#172033;font-size:14px;font-weight:600;word-break:break-all}.preview-meta-list[data-v-86d8945a]{margin-top:12px;display:flex;flex-direction:column;gap:10px}.preview-meta-item[data-v-86d8945a]{display:flex;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #f0f3f7}.preview-meta-label[data-v-86d8945a]{color:#7c8798;font-size:12px}.preview-meta-text[data-v-86d8945a],.preview-empty[data-v-86d8945a]{color:#172033;font-size:13px;font-weight:500;text-align:right;word-break:break-all}.card-head[data-v-86d8945a]{margin-bottom:16px}.state-box[data-v-86d8945a]{padding:18px;border-radius:12px;background:#f8fafc;color:#6b7589;font-size:13px}.error-box[data-v-86d8945a],.inline-error[data-v-86d8945a]{color:#d14343}.summary-grid[data-v-86d8945a]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.summary-card[data-v-86d8945a]{padding:16px}.summary-value[data-v-86d8945a]{display:block;margin-top:10px;color:#172033;font-size:24px;line-height:1.2}.chapter-panel[data-v-86d8945a]{margin-top:18px;padding:18px;border:1px solid #edf1f5;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#fff)}.chapter-panel-head[data-v-86d8945a]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.chapter-panel-title[data-v-86d8945a]{color:#172033;font-size:15px;font-weight:600}.chapter-panel-subtitle[data-v-86d8945a],.chapter-panel-meta[data-v-86d8945a]{margin-top:6px;color:#6b7589;font-size:12px}.chapter-list[data-v-86d8945a]{margin-top:16px;display:flex;flex-direction:column;gap:10px}.chapter-row[data-v-86d8945a]{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #edf1f5;border-radius:12px;background:#fff}.chapter-row-done[data-v-86d8945a]{background:#f8fcf8}.chapter-main[data-v-86d8945a]{min-width:0;flex:1}.chapter-title-row[data-v-86d8945a]{display:flex;align-items:center;justify-content:space-between;gap:12px}.chapter-title[data-v-86d8945a]{color:#172033;font-size:14px;font-weight:600;min-width:0;word-break:break-word}.chapter-status-pill[data-v-86d8945a]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:24px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:700}.chapter-status-pill.done[data-v-86d8945a]{background:#ecfdf3;color:#15803d}.chapter-status-pill.pending[data-v-86d8945a]{background:#fff7ed;color:#c2410c}.chapter-meta[data-v-86d8945a]{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px 12px;color:#7c8798;font-size:12px}.chapter-pager[data-v-86d8945a]{margin-top:14px}.progress-modal-panel[data-v-86d8945a]{margin-top:0}.chapter-filter-bar[data-v-86d8945a]{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}.chapter-filter-btn[data-v-86d8945a]{height:34px;padding:0 14px;border:1px solid #d7deeb;border-radius:999px;background:#fff;color:#445068;cursor:pointer}.chapter-filter-btn.active[data-v-86d8945a]{border-color:#1677ff;background:#eaf4ff;color:#1677ff}.mode-switch[data-v-86d8945a]{display:flex;gap:12px}.platform-switch[data-v-86d8945a]{display:flex;gap:12px;margin-bottom:16px}.mode-btn[data-v-86d8945a]{border:1px solid #d7deeb;border-radius:12px;background:#fff;cursor:pointer;min-width:120px;height:42px;padding:0 18px;color:#334155;display:inline-flex;align-items:center;justify-content:center;gap:8px}.mode-btn.active[data-v-86d8945a]{background:#e6f4ff;border-color:#1677ff;color:#1677ff}.mode-btn.blocked[data-v-86d8945a]{background:#fafafa;border-color:#e5e7eb;color:#9aa4b2;cursor:not-allowed}.mode-tag[data-v-86d8945a]{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 8px;border-radius:999px;background:#f3f4f6;color:#8b95a7;font-size:11px}.config-grid[data-v-86d8945a]{margin-top:16px}.config-item[data-v-86d8945a]{min-width:0}.task-type-switch[data-v-86d8945a]{display:flex;flex-wrap:wrap;gap:12px}.task-type-btn[data-v-86d8945a]{min-width:140px;min-height:48px;padding:10px 14px;border:1px solid #d7deeb;border-radius:12px;background:#fff;color:#334155;cursor:pointer;display:inline-flex;align-items:center;justify-content:space-between;gap:10px}.task-type-btn.active[data-v-86d8945a]{border-color:#1677ff;background:#eaf4ff;color:#1677ff}.task-type-btn[data-v-86d8945a]:disabled{cursor:not-allowed}.task-type-btn.blocked[data-v-86d8945a]{background:#fafafa;border-color:#e5e7eb;color:#9aa4b2}.task-type-count[data-v-86d8945a]{color:#7c8798;font-size:12px}.selection-hint[data-v-86d8945a]{margin-top:12px;color:#6b7589;font-size:12px;line-height:1.6}.selection-bar[data-v-86d8945a]{margin-top:16px;padding:14px 16px;border-radius:12px;background:#f8fafc;color:#445068;font-size:13px}.selection-bar-warning[data-v-86d8945a]{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.selection-bar strong[data-v-86d8945a]{color:#172033}@media (max-width: 1180px){.task-table-head[data-v-86d8945a],.task-row[data-v-86d8945a]{grid-template-columns:minmax(200px,2fr) 96px minmax(180px,1.1fr) minmax(120px,.85fr) minmax(320px,1.1fr)}}@media (max-width: 960px){.create-shell[data-v-86d8945a]{grid-template-columns:1fr}.summary-grid[data-v-86d8945a]{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-panel-head[data-v-86d8945a]{flex-direction:column}}@media (max-width: 860px){.page-header[data-v-86d8945a]{flex-direction:column;align-items:stretch}.queue-status-card[data-v-86d8945a]{overflow-x:auto}.queue-status-hint[data-v-86d8945a]{flex:0 0 auto;overflow:visible;text-overflow:clip}.task-table-head[data-v-86d8945a]{display:none}.task-row[data-v-86d8945a]{grid-template-columns:1fr;gap:14px}.task-cell-action[data-v-86d8945a]{justify-content:flex-start}}@media (max-width: 640px){.summary-grid[data-v-86d8945a]{grid-template-columns:1fr}.mode-switch[data-v-86d8945a],.task-type-switch[data-v-86d8945a]{flex-direction:column}.chapter-title-row[data-v-86d8945a],.panel-pager[data-v-86d8945a]{flex-direction:column;align-items:flex-start}.chapter-filter-bar[data-v-86d8945a]{flex-direction:column}}.donate-page[data-v-9e636910]{min-height:calc(100vh - 120px);color:#24292f}.oss-shell[data-v-9e636910]{min-height:calc(100vh - 112px);border:1px solid #d0d7de;border-radius:16px;background:#fff;box-shadow:0 1px 2px #1b1f240a;overflow:hidden}.repo-header[data-v-9e636910]{display:flex;align-items:center;justify-content:flex-end;padding:16px 20px;background:#fff;border-bottom:1px solid #d8dee4}.wall-panel[data-v-9e636910]{padding:24px 30px 32px}.panel-title[data-v-9e636910]{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px;color:#24292f;font-size:16px;font-weight:700}.panel-subtitle[data-v-9e636910]{color:#6e7781;font-size:13px;font-weight:400}.supporter-grid[data-v-9e636910]{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,54px));justify-content:center;gap:16px;padding:10px 0 4px}.supporter-item[data-v-9e636910]{position:relative;width:54px;height:54px;text-align:center}.supporter-avatar[data-v-9e636910]{width:54px;height:54px;border-radius:50%;object-fit:cover;background:#f6f8fa;border:2px solid #ffffff;box-shadow:0 2px 8px #1f232829;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease}.supporter-item:hover .supporter-avatar[data-v-9e636910]{transform:scale(1.12);box-shadow:0 8px 22px #1f232838}.supporter-avatar.fallback[data-v-9e636910]{display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#0969da;font-weight:800}.supporter-tooltip[data-v-9e636910]{position:absolute;left:50%;bottom:calc(100% + 12px);z-index:10;width:max-content;max-width:220px;padding:8px 10px;border-radius:8px;background:#24292f;color:#fff;text-align:left;opacity:0;pointer-events:none;transform:translate(-50%) translateY(4px);transition:opacity .18s ease,transform .18s ease;box-shadow:0 12px 28px #1f232838}.supporter-item:hover .supporter-tooltip[data-v-9e636910]{opacity:1;transform:translate(-50%) translateY(0)}.supporter-tooltip strong[data-v-9e636910],.supporter-tooltip span[data-v-9e636910]{display:block;white-space:nowrap}.supporter-tooltip strong[data-v-9e636910]{font-size:12px;line-height:1.35}.supporter-tooltip span[data-v-9e636910]{margin-top:3px;color:#c9d1d9;font-size:11px}.supporter-tooltip p[data-v-9e636910]{margin:6px 0 0;color:#f0f6fc;font-size:11px;line-height:1.5;word-break:break-word}.supporter-tooltip i[data-v-9e636910]{position:absolute;left:50%;top:100%;width:0;height:0;border:5px solid transparent;border-top-color:#24292f;transform:translate(-50%)}.wall-empty[data-v-9e636910]{padding:64px 24px;color:#94a3b8;text-align:center}.donate-modal[data-v-9e636910]{display:flex;flex-direction:column;gap:14px}.payment-tabs[data-v-9e636910]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.payment-tabs button[data-v-9e636910]{height:40px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#64748b;font-weight:700;cursor:pointer}.payment-tabs button.active[data-v-9e636910]{border-color:#f59e0b;background:#fff7ed;color:#b45309}.qrcode-shell[data-v-9e636910],.qrcode-empty[data-v-9e636910]{width:min(280px,100%);aspect-ratio:1;margin:0 auto;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.qrcode-shell img[data-v-9e636910]{width:100%;height:100%;object-fit:contain}.qrcode-empty[data-v-9e636910]{color:#94a3b8;border:1px dashed #cbd5e1}.qrcode-tip[data-v-9e636910]{color:#7b8598;font-size:12px;text-align:center}.support-options[data-v-9e636910]{display:flex;align-items:center;justify-content:space-between;gap:16px}@media (max-width: 640px){.wall-panel[data-v-9e636910]{padding:20px}.panel-title[data-v-9e636910],.support-options[data-v-9e636910]{align-items:stretch;flex-direction:column}.supporter-grid[data-v-9e636910]{grid-template-columns:repeat(auto-fill,minmax(48px,48px));gap:12px}.supporter-item[data-v-9e636910],.supporter-avatar[data-v-9e636910]{width:48px;height:48px}}
