:root{--tp-primary: #1e4d7b;--tp-primary-hover: #163a5f;--tp-primary-light: #e8f1f8;--tp-sidebar-bg: #304156;--tp-sidebar-active: #263445;--tp-sidebar-text: #bfcbd9;--tp-sidebar-group: #8c9bab;--tp-hero-bg: #001529;--tp-hero-orb-1: #1e4d7b;--tp-hero-orb-2: #3d6d9a;--tp-hero-orb-3: #5a8fbf;--tp-bg: #f0f2f5;--tp-surface: #ffffff;--tp-border: #e5e7eb;--tp-text: #111827;--tp-muted: #6b7280;--tp-radius: 8px;--tp-radius-lg: 12px;--color-primary: var(--tp-primary);--color-primary-hover: var(--tp-primary-hover);--color-text: var(--tp-text);--color-muted: var(--tp-muted);--color-bg: var(--tp-bg);--color-surface: var(--tp-surface);--color-border: var(--tp-border);--color-border-strong: #d1d5db;--color-price: #b45309;--header-h: 64px;--radius: var(--tp-radius);--max-w: 1120px;--el-color-primary: var(--tp-primary);--el-color-primary-light-3: #5a7fa3;--el-color-primary-light-5: #8ba3bd;--el-color-primary-light-7: #bcc7d6;--el-color-primary-light-8: #d2dae4;--el-color-primary-light-9: #e8edf2;--el-color-primary-dark-2: var(--tp-primary-hover)}body.portal-app{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.6;color:var(--tp-text);background:var(--tp-bg);-webkit-font-smoothing:antialiased}.tp-welcome-bar{margin-bottom:12px;padding:12px 16px;background:linear-gradient(90deg,var(--tp-primary-light),#f3f0ff);border-radius:var(--tp-radius);font-size:15px;border:1px solid rgba(30,77,123,.08)}.tp-welcome-bar__date{float:right;color:var(--tp-muted);font-size:13px}.tp-login-card{width:100%;max-width:400px;border:none!important;border-radius:var(--tp-radius-lg)!important;box-shadow:0 8px 24px #00000014!important}.tp-login-card__logo{width:auto;max-width:220px;height:auto;max-height:72px;display:block;margin:0 auto 16px;object-fit:contain}.tp-login-card__title{text-align:center;margin:0 0 20px;font-size:18px;font-weight:600}.tp-page-title{margin:0 0 16px;font-size:20px;font-weight:600}.tp-stat-row{margin-bottom:8px}.tp-section-card{margin-top:8px}.tp-card-header{display:flex;justify-content:space-between;align-items:center}.tp-clickable-table :deep(.el-table__row){cursor:pointer}:root{--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px}.responsive-table,.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.touch-target,.el-button,.el-input__wrapper,.el-select__wrapper,button,a.btn-primary,a.btn-outline{min-height:40px}@media (max-width: 768px){.container{padding-left:12px!important;padding-right:12px!important}.page-title{font-size:20px}.header-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}}@media (max-width: 640px){.el-dialog{width:calc(100vw - 20px)!important;margin-top:8vh!important}}html[dir=rtl] body.portal-rtl .portal-shell__breadcrumb,html[dir=rtl] body.portal-rtl .mobile-menu-btn{margin-right:0;margin-left:auto}html[dir=rtl] body.portal-rtl .portal-shell__header{flex-direction:row-reverse}html[dir=rtl] body.portal-rtl .el-breadcrumb__separator{transform:scaleX(-1)}html[dir=rtl] body.portal-rtl .student-header__actions,html[dir=rtl] body.portal-rtl .header-actions{flex-direction:row-reverse}html[dir=rtl] body.portal-rtl .el-drawer.rtl{direction:rtl}html[dir=rtl] body.portal-rtl .portal-shell.portal-shell--rtl,html[dir=rtl] body.portal-rtl .site.site--rtl .header-inner{flex-direction:row-reverse}html[dir=rtl] body.portal-rtl .site.site--rtl .menu-btn{margin-left:0;margin-right:auto}html[dir=rtl] body.portal-rtl .site.site--rtl .nav.open{text-align:right}html[dir=rtl] body.portal-rtl .site-footer__links .site-footer__icon,html[dir=rtl] body.portal-rtl .site-footer__contact .site-footer__icon{margin-inline-end:8px;margin-inline-start:0}html[dir=rtl] body.portal-rtl .el-table th.el-table__cell,html[dir=rtl] body.portal-rtl .el-table td.el-table__cell,html[dir=rtl] body.portal-rtl .el-table .cell,html[dir=rtl] body.portal-rtl .el-form-item__label,html[dir=rtl] body.portal-rtl .el-input__wrapper,html[dir=rtl] body.portal-rtl .el-textarea__inner{text-align:right}html[dir=rtl] body.portal-rtl .el-form--inline .el-form-item{margin-right:0;margin-left:12px}html[dir=rtl] body.portal-rtl .el-pagination{direction:rtl}html[dir=rtl] body.portal-rtl .el-descriptions__label{text-align:right}html[dir=rtl] body.portal-rtl .table-scroll{direction:rtl}.rich-content{font-size:15px;line-height:1.8;color:var(--color-text, inherit);word-break:break-word}.rich-content p{margin:0 0 1em}.rich-content h2,.rich-content h3{margin:1.2em 0 .6em;font-weight:600;line-height:1.4}.rich-content h2{font-size:1.25em}.rich-content h3{font-size:1.1em}.rich-content ul,.rich-content ol{margin:0 0 1em;padding-left:1.4em}.rich-content blockquote{margin:0 0 1em;padding:10px 14px;border-left:3px solid var(--color-primary, #409eff);background:#00000008;color:var(--color-muted)}.rich-content img{display:block;max-width:100%;height:auto;margin:12px 0;border-radius:8px}.rich-content video{display:block;max-width:100%;margin:12px 0;border-radius:8px;background:#000}.rich-content audio{display:block;width:100%;margin:12px 0}.rich-content a{color:var(--color-primary);text-decoration:underline}.rich-content .rich-file{display:flex;align-items:center;gap:8px;margin:10px 0;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface, #fafafa)}.rich-content .rich-file a{text-decoration:none;font-weight:500}.announcement-editor__toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--el-border-color);border-bottom:none;border-radius:8px 8px 0 0;background:var(--el-fill-color-light, #f5f7fa)}.announcement-editor__body{min-height:220px;max-height:420px;overflow-y:auto;padding:14px 16px;border:1px solid var(--el-border-color);border-radius:0 0 8px 8px;font-size:14px;line-height:1.7;outline:none}.announcement-editor__body:focus{border-color:var(--el-color-primary)}.announcement-editor__body img,.announcement-editor__body video{max-width:100%}.announcement-editor__hint{margin-top:8px;font-size:12px;color:var(--color-muted, #909399)}*{box-sizing:border-box}a{color:inherit;text-decoration:none}.container{max-width:var(--max-w);margin:0 auto;padding:0 20px}@media (max-width: 768px){.container{padding:0 12px}}.page-title{font-size:24px;font-weight:600;margin:0 0 4px;color:var(--color-text)}.page-desc{font-size:14px;color:var(--color-muted);margin:0 0 24px}.section-title{font-size:18px;font-weight:600;margin:0 0 4px;color:var(--color-text)}.section-desc{font-size:14px;color:var(--color-muted);margin:0 0 20px}.btn-primary{display:inline-block;background:var(--color-primary, #1e4d7b);color:#fff;border:1px solid var(--color-primary, #1e4d7b);padding:10px 20px;border-radius:var(--radius, 8px);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary:hover{background:var(--color-primary-hover, #163a5f);border-color:var(--color-primary-hover, #163a5f)}.btn-outline{display:inline-block;background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-border-strong);padding:9px 20px;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer}.btn-outline:hover{border-color:var(--color-primary)}.btn-sm{padding:6px 14px;font-size:13px}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.divider{border:none;border-top:1px solid var(--color-border);margin:0}.site-footer[data-v-e5ea44ba]{background:#2d2d2d;color:#fff;margin-top:auto}.site-footer__inner[data-v-e5ea44ba]{max-width:1200px;margin:0 auto;padding:40px 24px 24px}.site-footer__columns[data-v-e5ea44ba]{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr);gap:40px}.site-footer__logo-row[data-v-e5ea44ba]{margin-bottom:20px}.site-footer__logo-img[data-v-e5ea44ba]{display:block;height:52px;width:auto;max-width:240px;object-fit:contain}.site-footer__title[data-v-e5ea44ba]{font-size:18px;font-weight:700;line-height:1.3}.site-footer__heading[data-v-e5ea44ba]{margin:0 0 18px;font-size:16px;font-weight:700}.site-footer__contact[data-v-e5ea44ba],.site-footer__links[data-v-e5ea44ba]{list-style:none;margin:0;padding:0}.site-footer__contact li[data-v-e5ea44ba],.site-footer__links li[data-v-e5ea44ba]{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:14px;line-height:1.6;color:#ffffffeb}.site-footer__icon[data-v-e5ea44ba]{width:15px;height:15px;margin-top:3px;flex-shrink:0}.site-footer__contact a[data-v-e5ea44ba],.site-footer__links a[data-v-e5ea44ba]{color:#ffffffeb;text-decoration:none}.site-footer__contact a[data-v-e5ea44ba]:hover,.site-footer__links a[data-v-e5ea44ba]:hover,.site-footer__website a[data-v-e5ea44ba]:hover{color:#fff;text-decoration:underline}.site-footer__social[data-v-e5ea44ba]{display:flex;align-items:center;gap:14px;margin-bottom:16px}.site-footer__social-icon[data-v-e5ea44ba]{width:36px;height:36px;border-radius:6px;background:#ffffff1f;display:inline-flex;align-items:center;justify-content:center}.site-footer__social-icon svg[data-v-e5ea44ba]{width:20px;height:20px}.site-footer__social-icon--qq[data-v-e5ea44ba]{font-size:12px;font-weight:700;letter-spacing:-.5px}.site-footer__website[data-v-e5ea44ba]{margin:0;font-size:14px;color:#ffffffeb}.site-footer__website a[data-v-e5ea44ba]{color:#ffffffeb;text-decoration:none}.site-footer__copy[data-v-e5ea44ba]{margin-top:32px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);text-align:center;font-size:12px;line-height:1.8;color:#ffffffbf}@media (max-width: 900px){.site-footer__columns[data-v-e5ea44ba]{grid-template-columns:1fr 1fr}.site-footer__brand[data-v-e5ea44ba]{grid-column:1 / -1}}@media (max-width: 600px){.site-footer__inner[data-v-e5ea44ba]{padding:32px 16px 20px}.site-footer__columns[data-v-e5ea44ba]{grid-template-columns:1fr;gap:28px}}.page[data-v-59829e3d]{padding:32px 20px 48px;max-width:800px}.breadcrumb[data-v-59829e3d]{margin:0 0 16px;font-size:13px;color:var(--color-muted)}.breadcrumb a[data-v-59829e3d]{color:var(--color-primary)}.breadcrumb .current[data-v-59829e3d]{color:var(--color-text, inherit)}.detail[data-v-59829e3d]{padding:28px 32px}.title[data-v-59829e3d]{margin:0 0 12px;font-size:22px;font-weight:600;line-height:1.4}.meta-row[data-v-59829e3d]{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border);font-size:13px;color:var(--color-muted)}.meta-label[data-v-59829e3d]:after{content:"："}.meta-tag[data-v-59829e3d]{display:inline-block;padding:2px 8px;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted)}.body[data-v-59829e3d]{font-size:15px;line-height:1.8;color:var(--color-text, inherit)}.body[data-v-59829e3d] .plain-content{white-space:pre-wrap}.body[data-v-59829e3d] .rich-content{white-space:normal}.footer[data-v-59829e3d]{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border)}.meta[data-v-873945db]{margin-bottom:16px;font-size:13px;color:var(--color-muted)}.meta p[data-v-873945db]{margin:0 0 8px}.label[data-v-873945db]{display:inline-block;width:48px;color:var(--color-muted)}.label[data-v-873945db]:after{content:"："}.content[data-v-873945db]{font-size:15px;line-height:1.7;white-space:pre-wrap;color:var(--color-text, inherit)}.actions[data-v-873945db]{margin-top:24px}.notification-bell[data-v-121c5892]{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--tp-muted, var(--color-muted, #666));cursor:pointer}.notification-bell[data-v-121c5892]:hover{color:var(--tp-primary, var(--color-primary, #409eff));background:#409eff14}.notification-bell__icon[data-v-121c5892]{display:inline-flex;align-items:center;justify-content:center}.notification-bell-menu__head[data-v-121c5892]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.notification-bell-menu__body[data-v-121c5892]{max-height:320px;overflow-y:auto}.notification-bell-menu__empty[data-v-121c5892]{padding:24px 8px;text-align:center;color:var(--tp-muted, var(--color-muted, #999));font-size:13px}.notification-bell-menu__item[data-v-121c5892]{display:block;width:100%;text-align:left;padding:10px 8px;margin:0;border:none;border-radius:6px;background:transparent;cursor:pointer}.notification-bell-menu__item[data-v-121c5892]:hover{background:var(--tp-bg, var(--color-bg, #f5f7fa))}.notification-bell-menu__item.unread[data-v-121c5892]{border-left:3px solid var(--tp-primary, var(--color-primary, #409eff));padding-left:5px}.notification-bell-menu__item-title[data-v-121c5892]{display:block;font-size:14px;font-weight:600;color:var(--tp-text, var(--color-text, #303133));margin-bottom:4px}.notification-bell-menu__item-content[data-v-121c5892]{display:block;font-size:13px;color:var(--tp-muted, var(--color-muted, #909399));margin-bottom:4px;line-height:1.4}.notification-bell-menu__item-time[data-v-121c5892]{display:block;font-size:12px;color:var(--tp-muted, var(--color-muted, #c0c4cc))}.notification-bell-menu__foot[data-v-121c5892]{margin-top:8px;padding-top:8px;border-top:1px solid var(--tp-border, var(--color-border, #ebeef5));text-align:center}.notification-bell-menu__all[data-v-121c5892]{font-size:13px;color:var(--tp-primary, var(--color-primary, #409eff));text-decoration:none}.notification-bell-menu__all[data-v-121c5892]:hover{text-decoration:underline}.detail-list[data-v-4294d7d7]{display:grid;grid-template-columns:88px 1fr;gap:10px 12px;margin:0;font-size:14px}.detail-list dt[data-v-4294d7d7]{margin:0;color:var(--color-muted);font-weight:500}.detail-list dd[data-v-4294d7d7]{margin:0}.section-title[data-v-4294d7d7]{margin:16px 0 10px;font-size:14px;font-weight:600;color:var(--color-text)}.price[data-v-4294d7d7]{color:var(--color-price);font-weight:600}.cert-preview[data-v-bb0c6507]{position:relative;padding:20px;margin-bottom:16px;border:2px solid var(--color-primary);background:linear-gradient(135deg,#fafafa,#fff);text-align:center}.seal[data-v-bb0c6507]{position:absolute;top:12px;right:16px;width:48px;height:48px;object-fit:contain;opacity:.85}.brand-logo[data-v-bb0c6507]{display:block;height:36px;width:auto;max-width:160px;margin:0 auto 8px;object-fit:contain}.cert-preview h3[data-v-bb0c6507]{margin:0;font-size:17px}.endorsement[data-v-bb0c6507]{margin:10px 0 0;font-size:12px;color:#1a5f9e;line-height:1.5}.badge-section[data-v-bb0c6507]{margin-bottom:16px;padding:16px;border-radius:8px;background:linear-gradient(135deg,#f0f6fc,#fff);border:1px solid #c5d9ed}.section-title[data-v-bb0c6507]{margin:0 0 12px;font-size:14px;color:#1a5f9e}.badge-list[data-v-bb0c6507]{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.badge-card[data-v-bb0c6507]{padding:12px;border-radius:8px;background:#fff;border:1px solid #dbe7f3}.badge-card-header[data-v-bb0c6507]{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.badge-visual.compact[data-v-bb0c6507]{margin-bottom:8px}.badge-img.small[data-v-bb0c6507]{width:64px;height:64px;padding:4px}.issue-actions[data-v-bb0c6507]{flex-wrap:wrap}.verify-list.compact[data-v-bb0c6507]{font-size:12px}.badge-visual[data-v-bb0c6507]{text-align:center;margin-bottom:12px}.badge-img[data-v-bb0c6507]{width:96px;height:96px;object-fit:contain;border-radius:50%;background:#fff;border:3px solid #1a5f9e;padding:8px}.badge-img.accepted-ring[data-v-bb0c6507]{border-color:#67c23a;box-shadow:0 0 0 3px #67c23a40}.issuer[data-v-bb0c6507]{margin-top:8px;font-size:12px;color:var(--color-muted)}.issuer-btec[data-v-bb0c6507]{color:#1a5f9e;font-weight:600}.issuer-sep[data-v-bb0c6507]{margin:0 6px;opacity:.5}.steps[data-v-bb0c6507]{margin:0 0 12px;padding-left:20px;font-size:13px;line-height:1.8}.steps .done[data-v-bb0c6507]{color:var(--color-muted)}.steps .active[data-v-bb0c6507]{color:#1a5f9e;font-weight:600}.hint[data-v-bb0c6507],.path-hint[data-v-bb0c6507]{margin:0 0 12px;font-size:12px;color:var(--color-muted);line-height:1.5}.actions[data-v-bb0c6507]{display:flex;gap:8px;justify-content:center}.accepted-label[data-v-bb0c6507]{margin:8px 0 0;font-size:13px;color:#67c23a;font-weight:600}.verify-list[data-v-bb0c6507]{display:grid;grid-template-columns:88px 1fr;gap:8px 12px;margin:0;font-size:13px}.verify-list dt[data-v-bb0c6507]{margin:0;color:var(--color-muted)}.verify-list dd[data-v-bb0c6507]{margin:0}.verify-list a[data-v-bb0c6507]{color:var(--color-primary)}.detail-list[data-v-bb0c6507]{display:grid;grid-template-columns:88px 1fr;gap:10px 12px;margin:0;font-size:14px}.detail-list dt[data-v-bb0c6507]{margin:0;color:var(--color-muted);font-weight:500}.detail-list dd[data-v-bb0c6507]{margin:0}.locale-switcher[data-v-1d570162]{width:136px}.app-breadcrumb[data-v-705bb575]{flex:1;margin-right:auto;font-size:14px}.split-login[data-v-94439bf5]{min-height:100vh;display:grid;grid-template-columns:1fr 420px;background:var(--tp-hero-bg, #001529)}.split-login__hero[data-v-94439bf5]{position:relative;display:flex;flex-direction:column;justify-content:center;padding:48px 64px;color:#fff;overflow:hidden}.split-login__logo[data-v-94439bf5]{width:auto;max-width:min(320px,90%);max-height:120px;height:auto;margin-bottom:24px;background:#fff;padding:10px 14px;border-radius:8px;object-fit:contain}.split-login__title[data-v-94439bf5]{font-size:32px;font-weight:700;margin:0 0 12px}.split-login__slogan[data-v-94439bf5]{font-size:16px;opacity:.85;margin:0;max-width:420px;line-height:1.6}.split-login__illustration[data-v-94439bf5]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.orb[data-v-94439bf5]{position:absolute;border-radius:50%;filter:blur(40px);opacity:.35}.orb-1[data-v-94439bf5]{width:280px;height:280px;background:var(--tp-hero-orb-1, #1e4d7b);top:10%;right:10%}.orb-2[data-v-94439bf5]{width:200px;height:200px;background:var(--tp-hero-orb-2, #3d6d9a);bottom:20%;left:15%}.orb-3[data-v-94439bf5]{width:160px;height:160px;background:var(--tp-hero-orb-3, #5a8fbf);bottom:35%;right:25%}.split-login__form[data-v-94439bf5]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;background:var(--tp-bg, #f0f2f5)}.split-login__toolbar[data-v-94439bf5]{align-self:flex-end;margin-bottom:16px}@media (max-width: 900px){.split-login[data-v-94439bf5]{grid-template-columns:1fr}.split-login__hero[data-v-94439bf5]{min-height:200px;padding:32px 24px}.split-login__illustration[data-v-94439bf5]{display:none}}.kpi-card[data-v-b7b322fa]{border-radius:12px;padding:20px 16px;color:#fff;text-align:center;min-height:96px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 4px 12px #00000014;margin-bottom:16px}.kpi-card--clickable[data-v-b7b322fa]{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.kpi-card--clickable[data-v-b7b322fa]:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.kpi-card--orange[data-v-b7b322fa]{background:linear-gradient(135deg,#fa8c16,#ffc069)}.kpi-card--blue[data-v-b7b322fa]{background:linear-gradient(135deg,#1890ff,#69c0ff)}.kpi-card--purple[data-v-b7b322fa]{background:linear-gradient(135deg,#722ed1,#b37feb)}.kpi-card--green[data-v-b7b322fa]{background:linear-gradient(135deg,#52c41a,#95de64)}.kpi-card--cyan[data-v-b7b322fa]{background:linear-gradient(135deg,#13c2c2,#5cdbd3)}.kpi-card--pink[data-v-b7b322fa]{background:linear-gradient(135deg,#eb2f96,#ff85c0)}.kpi-card__value[data-v-b7b322fa]{font-size:28px;font-weight:700;line-height:1.2}.kpi-card__label[data-v-b7b322fa]{margin-top:8px;font-size:13px;opacity:.92}.mode-icon[data-v-f53d7cbf]{margin-right:4px}.course-card-grid__inner[data-v-abe1162d]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.course-card[data-v-abe1162d]{border:1px solid #ebeef5;border-radius:12px;overflow:hidden;background:#fff;cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease;display:flex;flex-direction:column}.course-card[data-v-abe1162d]:hover{border-color:var(--el-color-primary-light-5);box-shadow:0 6px 16px #00000014}.course-card__cover[data-v-abe1162d]{height:140px;background:#e8eef3;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center}.course-card__cover-placeholder[data-v-abe1162d]{font-size:12px;color:#909399}.course-card__body[data-v-abe1162d]{padding:12px 14px;flex:1}.course-card__title[data-v-abe1162d]{margin:0 0 6px;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-card__meta[data-v-abe1162d]{margin:0 0 8px;font-size:12px;color:#909399}.course-card__tags[data-v-abe1162d]{margin-bottom:6px}.course-card__fee[data-v-abe1162d]{margin:0;font-size:12px;color:#606266}.course-card__actions[data-v-abe1162d]{padding:8px 14px 12px;border-top:1px solid #f0f2f5;display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 768px){.course-card-grid__inner[data-v-abe1162d]{grid-template-columns:1fr}}.paper-guide-cards[data-v-7f728623]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.guide-card[data-v-7f728623]{border:1px dashed #d9d9d9;border-radius:12px;padding:24px 16px;text-align:center;cursor:pointer;background:#fafafa;transition:border-color .15s ease,background .15s ease}.guide-card[data-v-7f728623]:hover:not(.guide-card--disabled){border-color:var(--el-color-primary);background:#f0f7ff}.guide-card--disabled[data-v-7f728623]{cursor:default;opacity:.75}.guide-card__icon[data-v-7f728623]{font-size:32px;margin-bottom:8px}.guide-card__title[data-v-7f728623]{margin:0 0 6px;font-size:16px}.guide-card__desc[data-v-7f728623]{margin:0 0 8px;font-size:13px;color:#909399}@media (max-width: 768px){.paper-guide-cards[data-v-7f728623]{grid-template-columns:1fr}}.project-tree-filter[data-v-c82ae331]{border:1px solid #ebeef5;border-radius:8px;background:#fff;min-width:200px;max-height:calc(100vh - 200px);overflow:auto}.project-tree-filter__header[data-v-c82ae331]{padding:12px 16px;font-weight:600;border-bottom:1px solid #ebeef5;font-size:14px}.project-tree-filter[data-v-c82ae331] .el-tree{padding:8px}.grouped-menu[data-v-ecda3cdf]{border-right:none;background:transparent}.grouped-menu[data-v-ecda3cdf] .el-menu-item-group__title{color:var(--tp-sidebar-group, #8c9bab);font-size:12px;padding-left:20px}.grouped-menu[data-v-ecda3cdf] .el-menu-item{color:var(--tp-sidebar-text, #bfcbd9)}.grouped-menu[data-v-ecda3cdf] .el-menu-item.is-active{color:#fff;background:var(--tp-sidebar-active, #263445)}.portal-shell[data-v-97f2b587]{min-height:100vh}.portal-shell__aside[data-v-97f2b587]{background:var(--tp-sidebar-bg);color:#fff}.desktop-aside[data-v-97f2b587]{display:block}.portal-shell__logo[data-v-97f2b587]{padding:20px;font-weight:600;color:#fff;display:flex;align-items:center;gap:10px}.portal-shell__logo-img[data-v-97f2b587]{height:36px;width:auto;max-width:168px;object-fit:contain;background:#fff;padding:4px 8px;border-radius:4px;flex-shrink:0}.portal-shell__header[data-v-97f2b587]{display:flex;justify-content:flex-end;align-items:center;gap:12px;border-bottom:1px solid var(--tp-border);background:var(--tp-surface)}.portal-shell__breadcrumb[data-v-97f2b587]{margin-right:auto}.portal-shell__user[data-v-97f2b587]{font-size:14px;color:var(--tp-muted)}.portal-shell__main[data-v-97f2b587]{background:var(--tp-bg)}.mobile-menu-btn[data-v-97f2b587]{display:none;margin-right:auto;font-size:18px}@media (max-width: 768px){.desktop-aside[data-v-97f2b587]{display:none}.mobile-menu-btn[data-v-97f2b587]{display:inline-flex}.portal-shell__header[data-v-97f2b587]{justify-content:flex-start;flex-wrap:wrap}}.tp-skeleton-faq-list[data-v-db379b68]{border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, 8px);background:var(--color-surface, #fff);overflow:hidden}.tp-skeleton-faq-item[data-v-db379b68]{padding:16px 20px;border-bottom:1px solid var(--color-border, #e5e7eb)}.tp-skeleton-faq-item[data-v-db379b68]:last-child{border-bottom:none}.tp-skeleton-faq-item__title[data-v-db379b68]{height:16px;width:72%}.tp-skeleton-question-grid[data-v-987e16fc]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.tp-skeleton-question-card[data-v-987e16fc]{padding:16px;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, 8px);background:var(--color-surface, #fff)}.tp-skeleton-question-card__tags[data-v-987e16fc]{height:22px;width:45%;margin-bottom:12px}.tp-skeleton-question-card__stem[data-v-987e16fc]{height:14px;width:92%;margin-bottom:8px}.tp-skeleton-question-card__stem--short[data-v-987e16fc]{width:68%}.detail-block[data-v-0a06e8c7]{margin-top:16px}.detail-block h4[data-v-0a06e8c7]{margin:0 0 8px;font-size:14px;color:#606266}.content[data-v-0a06e8c7]{margin:0;line-height:1.6;white-space:pre-wrap}.options[data-v-0a06e8c7]{margin:0;padding:8px;background:#f8f9fa;border-radius:6px;font-size:13px;white-space:pre-wrap}.meta[data-v-45585e60]{margin-bottom:20px}.reject-reason[data-v-45585e60]{color:#f56c6c}.section-title[data-v-45585e60]{margin:24px 0 8px;font-size:16px;font-weight:600}.question-count[data-v-45585e60]{margin:0 0 12px;font-size:13px;color:#909399}.question-card[data-v-45585e60]{border:1px solid #ebeef5;border-radius:8px;padding:12px 14px;margin-bottom:12px}.question-card__head[data-v-45585e60]{display:flex;gap:8px;align-items:flex-start;font-size:14px}.question-content[data-v-45585e60]{flex:1;line-height:1.6}.score[data-v-45585e60]{margin-left:auto;color:#909399;white-space:nowrap}.detail-block[data-v-45585e60]{margin-top:10px}.detail-block h4[data-v-45585e60]{margin:0 0 6px;font-size:13px;color:#606266;font-weight:500}.detail-block p[data-v-45585e60]{margin:0;line-height:1.6}.answer-text[data-v-45585e60]{white-space:pre-wrap}.options[data-v-45585e60]{margin:0;padding:8px 10px;background:#f8f9fa;border-radius:6px;font-size:13px;white-space:pre-wrap}.options-editor[data-v-9c4ac492]{width:100%;display:flex;flex-direction:column;gap:8px}.option-row[data-v-9c4ac492]{display:flex;gap:8px;align-items:center}.option-key[data-v-9c4ac492]{width:56px;flex-shrink:0}.announcement-editor__toolbar[data-v-5de32497]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.announcement-editor__select[data-v-5de32497]{width:108px}.announcement-editor__body[data-v-5de32497]{min-height:220px;padding:12px;border:1px solid var(--el-border-color, #dcdfe6);border-radius:4px;line-height:1.6;outline:none}.announcement-editor__body[data-v-5de32497]:focus{border-color:var(--el-color-primary, #409eff)}.announcement-editor__body[data-v-5de32497] a{color:#409eff;text-decoration:underline}.announcement-editor__body[data-v-5de32497] table{border-collapse:collapse;width:100%;margin:8px 0}.announcement-editor__body[data-v-5de32497] td,.announcement-editor__body[data-v-5de32497] th{border:1px solid #dcdfe6;padding:8px;min-width:40px}.announcement-editor__body[data-v-5de32497] h1{font-size:24px;margin:12px 0 8px}.announcement-editor__body[data-v-5de32497] h2{font-size:20px;margin:10px 0 6px}.announcement-editor__body[data-v-5de32497] h3{font-size:18px;margin:8px 0 4px}.announcement-editor__hint[data-v-5de32497]{margin:8px 0 0;font-size:12px;color:var(--color-muted, #a8abb2)}.sr-only[data-v-5de32497]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.announcement-editor__body[data-v-5de32497]:empty:before{content:attr(data-placeholder);color:var(--color-muted, #a8abb2);pointer-events:none}.timeline-node__head[data-v-51d866c9]{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.timeline-node__badge[data-v-51d866c9]{font-size:12px;color:var(--color-muted, #909399)}.timeline-node__content[data-v-51d866c9]{margin:0 0 8px;font-size:14px;line-height:1.6;white-space:pre-wrap}.timeline-node__files[data-v-51d866c9]{display:flex;flex-direction:column;gap:4px}.file-link[data-v-51d866c9]{font-size:13px;justify-content:flex-start}.timeline-empty[data-v-51d866c9]{text-align:center;color:var(--color-muted, #909399);font-size:13px;padding:16px 0}.cs-drawer[data-v-a8a777a3] .el-drawer__body{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.cs-drawer[data-v-a8a777a3] .el-drawer__footer{padding-top:0}.cs-messages[data-v-a8a777a3]{flex:1;min-height:0;overflow-y:auto;padding:8px 4px 16px;display:flex;flex-direction:column;gap:12px}.cs-loading[data-v-a8a777a3]{text-align:center;color:var(--color-muted);font-size:13px;padding:24px}.cs-msg[data-v-a8a777a3]{max-width:92%}.cs-msg.is-self[data-v-a8a777a3]{align-self:flex-end}.cs-msg.is-bot[data-v-a8a777a3],.cs-msg.is-agent[data-v-a8a777a3]{align-self:flex-start}.cs-msg-meta[data-v-a8a777a3]{display:flex;gap:8px;font-size:11px;color:var(--color-muted);margin-bottom:4px}.cs-msg.is-self .cs-msg-meta[data-v-a8a777a3]{justify-content:flex-end}.cs-msg-bubble[data-v-a8a777a3]{padding:10px 12px;border-radius:12px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.cs-msg.is-self .cs-msg-bubble[data-v-a8a777a3]{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.cs-msg.is-bot .cs-msg-bubble[data-v-a8a777a3],.cs-msg.is-agent .cs-msg-bubble[data-v-a8a777a3]{background:var(--color-bg-muted, #f4f4f5);color:var(--color-text);border-bottom-left-radius:4px}.cs-input[data-v-a8a777a3]{border-top:1px solid var(--color-border);padding-top:12px;display:flex;flex-direction:column;gap:8px}.floating-cs[data-v-e90cbaf4]{position:fixed;right:24px;bottom:24px;z-index:200}.floating-cs-btn[data-v-e90cbaf4]{width:56px;height:56px;border-radius:50%;border:none;background:var(--color-primary);color:#fff;cursor:pointer;box-shadow:0 4px 16px #0000002e;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.floating-cs-btn[data-v-e90cbaf4]:hover{transform:scale(1.05);box-shadow:0 6px 20px #00000038}.floating-cs-icon[data-v-e90cbaf4]{font-size:26px;line-height:1}@media (max-width: 768px){.floating-cs[data-v-e90cbaf4]{right:16px;bottom:16px}}.plain-content[data-v-7964677d]{margin:0;white-space:pre-wrap}.catalog-tree[data-v-75a8585d]{border:1px solid #ebeef5;border-radius:8px;padding:12px;background:#fafafa}.catalog-chapter[data-v-75a8585d]{margin-bottom:12px}.catalog-chapter[data-v-75a8585d]:last-child{margin-bottom:0}.catalog-chapter-head[data-v-75a8585d]{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:6px}.catalog-chapter-name[data-v-75a8585d]{color:#303133}.catalog-videos[data-v-75a8585d]{margin:0;padding-left:20px;list-style:none}.catalog-videos li[data-v-75a8585d]{font-size:13px;color:#606266;line-height:1.8;display:flex;gap:6px}.catalog-index[data-v-75a8585d]{color:#909399;min-width:1.5em}.catalog-title[data-v-75a8585d]{flex:1}.catalog-empty[data-v-75a8585d]{margin:0;font-size:12px;color:#909399;padding-left:4px}.hint[data-v-303ac8f2]{font-size:13px;color:#909399;margin:0 0 12px;line-height:1.5}.select-footer[data-v-303ac8f2]{padding:4px 8px;border-top:1px solid #ebeef5;text-align:center}.upload-file[data-v-303ac8f2]{font-size:12px;color:#606266;margin:0 0 12px;word-break:break-all}.done-alert[data-v-303ac8f2]{margin-bottom:12px}.hint[data-v-c648da03]{font-size:13px;color:#909399;margin:0 0 12px}[data-v-c648da03] .el-table__row{cursor:pointer}
