.ed-page{background:#fff;color:#101f37}.ed-container{max-width:1320px;margin:0 auto;padding-left:40px;padding-right:40px}.ed-mini{font-size:11px;letter-spacing:2.5px;color:#758293;font-weight:600}.ed-carousel{height:610px;background:#101f37;position:relative;isolation:isolate;color:#fff;overflow:hidden}.ed-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s;pointer-events:none}.ed-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.ed-slide__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.ed-slide__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#061327e0,#091a2fab,#091a2f0a 76%),linear-gradient(0deg,rgba(5,17,34,.8),transparent 40%)}.ed-slide__inner{max-width:1320px;height:100%;margin:auto;padding:68px 40px 120px;display:flex;align-items:flex-end;justify-content:space-between}.ed-copy{max-width:660px}.ed-kicker{display:flex;align-items:center;gap:12px;color:#c0d4ee;font-size:12px;font-weight:600;letter-spacing:2.5px;margin-bottom:24px}.ed-kicker>span{display:block;width:26px;height:1px;background:#b5cae5}.ed-copy h1{font-size:clamp(38px,4.1vw,60px);line-height:1.3;color:#fff;margin:0;letter-spacing:1px}.ed-copy p{font-size:16px;line-height:1.95;color:#d4e0ee;margin:23px 0 46px}.ed-hero-actions{display:flex;align-items:center;gap:30px}.ed-cta{display:inline-flex;align-items:center;gap:48px;background:#fff;color:#101f37;border-radius:8px;padding:18px 28px;font-size:16px;font-weight:600;min-height:60px}.ed-cta:hover{text-decoration:none;color:#2859df}.ed-secondary{color:#e6edf5}.ed-carousel__bottom{position:absolute;left:0;right:0;bottom:34px;max-width:1320px;margin:auto;padding:0 40px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.ed-pagination{display:flex;gap:28px;max-width:74%}.ed-selector{background:none;border:0;text-align:left;padding:0;min-height:56px;min-width:176px;opacity:.55}.ed-selector.is-active{opacity:1}.ed-selector__line{display:block;height:2px;background:#ffffff4d;margin-bottom:8px}.ed-selector.is-active .ed-selector__line{background:#fff}.ed-selector__label{color:#fff;font-size:15px;display:flex;gap:10px}.ed-selector__label small{color:#9db1c9}.ed-controls{display:flex;align-items:center;gap:8px;color:#fff}.ed-controls button{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff}.ed-discover{display:grid;grid-template-columns:300px 1fr;gap:30px;align-items:center;background:#fff;border:1px solid #d7e0ec;border-radius:16px;box-shadow:0 3px 16px #1532540d;padding:30px 36px;margin-top:32px;overflow:visible}.ed-discover h2{font-size:26px;margin:10px 0 0}.ed-levels{display:grid;grid-template-columns:repeat(4,1fr)}.ed-levels a{padding:6px 26px;border-left:1px solid #e4eaf0;color:#101f37}.ed-levels a:first-child{border-left:0}.ed-levels a:hover{text-decoration:none;background:#f5f8fc}.ed-level-top{font-size:19px;font-weight:650;display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:5px}.ed-level-top>span{font-size:17px;color:#9aacbf}.ed-level-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:12px;background:#edf3fc;color:#315b91;margin-bottom:10px}.ed-level-icon svg{width:24px;height:24px}.ed-level-item:nth-child(2) .ed-level-icon{background:#eaf3f3;color:#357c7a}.ed-level-item:nth-child(3) .ed-level-icon{background:#f0edf8;color:#736098}.ed-level-item:nth-child(4) .ed-level-icon{background:#f9f0e3;color:#9c7841}.ed-levels small{font-size:12px;color:#758293}.ed-section{padding-top:56px;padding-bottom:52px}.ed-section__title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.ed-section__title h2{font-size:30px;margin:0}.ed-text-link{font-size:14px;color:#263f63;white-space:nowrap;padding-bottom:5px}.ed-text-link span{margin-left:18px}.ed-text-link:hover{color:#2859df}.ed-section__intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:10px}.ed-section__intro p{color:#62738a}.ed-filters{display:flex;gap:8px}.ed-filters button{padding:6px 14px;border:0;background:transparent;color:#728095;font-size:13px;border-radius:5px;cursor:pointer;transition:background .16s,color .16s}.ed-filters button:hover{color:#2859df}.ed-filters button.active{background:#eaf0fd;color:#2859df}.home-page.home-immersive{background:#fff}.ed-featured{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:26px}.ed-course{border:1px solid #e6ebf1;border-radius:10px;overflow:hidden;background:#fff}.ed-course__art{display:block;padding:26px;height:200px;color:#fff;background:linear-gradient(135deg,#234968,#3a6ea5);position:relative}.ed-course__art.v1{background:linear-gradient(135deg,#234968,#4a7fb5)}.ed-course__art.v2{background:linear-gradient(135deg,#285957,#4a9a8e)}.ed-course__art.v3{background:linear-gradient(135deg,#554562,#9a7fb5)}.ed-course__art strong{display:block;font-size:26px;margin-top:22px;line-height:1.4}.ed-course__index{font-size:10px;letter-spacing:2px;opacity:.65}.ed-course__sub{font-size:12px;opacity:.8}.ed-course__arrow{position:absolute;right:25px;bottom:23px;width:31px;height:31px;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-items:center;font-size:15px}.ed-course__body{padding:22px}.ed-course__meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#5479a4;margin-bottom:11px}.ed-course__meta small{font-size:11px;color:#8290a2}.ed-course__body h3{font-size:19px;margin:0}.ed-course__body h3 a{color:#1a304b}.ed-course__body p{font-size:13px;color:#758398;line-height:1.8;margin:10px 0 16px;min-height:47px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ed-course__footer{display:flex;justify-content:space-between;border-top:1px solid #eef2f6;padding-top:14px;font-size:12px;color:#58708e}.ed-course__footer a{color:inherit;cursor:pointer}.ed-course__footer a:hover{color:#2859df}.major-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.ed-section .major-grid{margin-top:26px}.major-card{border:1px solid #e3e9f1;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.major-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px #102f5112}.major-card-cover{display:flex;flex-direction:column;min-height:178px;padding:25px;color:#fff}.major-card-cover:hover{text-decoration:none;color:#fff}.major-card-cover.theme-blue{background:#234968}.major-card-cover.theme-purple{background:#554562}.major-card-cover.theme-teal{background:#285957}.major-card-cover.theme-default{background:#233d61}.major-code{font-size:10px;letter-spacing:2px;color:#ffffffa6}.major-cover-title{font-size:26px;font-weight:600;margin:22px 0 14px;line-height:1.45}.major-cover-bottom{font-size:12px;color:#ffffffb3;display:flex;justify-content:space-between;align-items:center;margin-top:auto}.major-cover-bottom>span{font-size:22px}.major-card-content{padding:22px;flex:1;display:flex;flex-direction:column}.major-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:15px}.major-tags span{font-size:11px;background:#f3f6fa;color:#687a91;padding:3px 7px;border-radius:4px}.major-card h3{font-size:19px;line-height:1.5;min-height:57px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.major-card h3 a{color:#1a304b}.major-desc{font-size:13px;color:#758398;line-height:1.8;margin:10px 0 20px;min-height:47px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.major-course-preview{background:#f6f8fc;padding:15px;border-radius:8px;margin-top:auto}.major-course-preview ol{list-style:none;padding:0;margin:13px 0}.major-course-preview li{font-size:12px;margin:8px 0;color:#42546e;display:flex;gap:10px}.major-course-preview li>span{color:#9aa8ba;font-size:10px}.major-course-preview li.is-empty{color:#c2ccd8}.major-course-preview li.is-empty>span{color:#d3dae3}.major-more-courses{font-size:11px;display:flex;justify-content:space-between;color:#315b91}.major-card-bottom{display:flex;justify-content:space-between;font-size:12px;color:#758293;margin-top:16px}.major-card-bottom a{color:inherit;cursor:pointer}.major-card-bottom a:hover{color:#2859df}.ed-breadcrumb{display:flex;gap:8px;font-size:13px;color:#758293;padding:26px 0 18px}.ed-breadcrumb a{color:#2859df}.majors-page{padding:0 0 30px}.major-directory-hero{background:#edf2f8;color:#142744;border-radius:16px;padding:50px 50px 36px;margin:32px 0 0;position:relative}.major-directory-hero .home-mini{font-size:10px;letter-spacing:2px;color:#64799a;font-weight:650;margin-bottom:9px}.major-directory-hero h1{font-size:42px;line-height:1.45;font-weight:650;margin:14px 0;color:#142744}.major-directory-hero p{font-size:15px;color:#6a7d94;max-width:600px;line-height:1.9}.major-hero-foot{display:flex;gap:28px;margin-top:26px;font-size:12px;color:#50749a}.major-directory-tools{padding:36px 0 24px}.major-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.major-section-heading h2{font-size:25px}.major-section-heading p{font-size:13px;color:#7b899c;margin-top:8px}.major-heading-tools{display:flex;align-items:center;gap:12px;flex-shrink:0}.major-heading-tools .major-school-select{min-width:180px}.major-search input{font-size:13px}.major-category-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;border-bottom:1px solid #e4eaf2;padding-bottom:19px}.major-category-tabs button{background:transparent;border:0;color:#647993;font-size:14px;padding:9px 21px;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.major-category-tabs button:hover{color:#2859df}.major-category-tabs button.active{background:#eaf0fc;color:#2859df;font-weight:650}.major-results-line{display:flex;justify-content:space-between;margin-top:20px;font-size:13px;color:#64758c}.major-results-line small{font-size:11px}.major-help{margin-top:42px;padding:32px;background:#f2f5f9;border-radius:12px}.major-help h2{font-size:21px}.major-help p{font-size:14px;color:#7a889c;max-width:760px;margin:10px 0 18px}.major-help a{font-size:13px;color:#2859df;cursor:pointer}.major-audience{background:#f6f8fc;border-radius:10px;padding:20px;margin-top:18px}.major-curriculum-item{display:flex;gap:18px;border:1px solid #e4eaf1;border-radius:12px;padding:20px;margin-bottom:14px;align-items:flex-start}.major-lesson-number{font-size:22px;font-weight:700;color:#c6d3e5}.major-stage{font-size:11px;color:#2859df;font-weight:600}.major-curriculum-item h3{margin:6px 0;font-size:16px}.major-curriculum-item p{font-size:13px;color:#62738a}.major-curriculum-item button{margin-left:auto;white-space:nowrap}.major-skill-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.major-skill-tags span{background:#edf3fc;color:#315b91;border-radius:16px;padding:6px 14px;font-size:12px}.major-related{display:block;border-top:1px solid #eef2f6;padding:12px 0;color:#1a304b}.major-related small{display:block;color:#8995a6;font-size:11px}.template-sheet{max-width:900px;margin:40px auto 64px;border:1px solid #e4eaf1;border-radius:16px;padding:48px;background:#fff}.template-sheet h1{font-size:34px;margin:0}.template-sheet__lead{color:#62738a;line-height:2;margin-top:16px}.template-sheet__divider{height:1px;background:#eef2f6;margin:28px 0}.template-page__content{color:#33465e;font-size:15px;line-height:2}.template-page__content h1,.template-page__content h2,.template-page__content h3{color:#142744;line-height:1.5;margin:28px 0 12px}.template-page__content h1{font-size:24px}.template-page__content h2{font-size:20px}.template-page__content h3{font-size:17px}.template-page__content p{margin:12px 0}.template-page__content a{color:#2859df}.template-page__content ul,.template-page__content ol{padding-left:22px;margin:12px 0}.template-page__content li{margin:6px 0}.template-page__content blockquote{margin:16px 0;padding:12px 18px;border-left:3px solid #2859df;background:#f3f6fc;border-radius:0 8px 8px 0;color:#42546e}.template-page__content code{background:#f3f6fa;border-radius:4px;padding:2px 6px;font-size:13px;color:#9c4461}.template-page__content pre{background:#101f37;color:#e6edf5;border-radius:10px;padding:18px;overflow:auto;line-height:1.7}.template-page__content pre code{background:transparent;color:inherit;padding:0}.template-page__content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.template-page__content th,.template-page__content td{border:1px solid #e3e9f1;padding:10px 14px;text-align:left}.template-page__content th{background:#f6f8fc;color:#142744}.template-page__content img{max-width:100%;border-radius:10px}.template-page__content hr{border:0;border-top:1px solid #eef2f6;margin:24px 0}@media(max-width:1000px){.ed-featured,.major-grid{grid-template-columns:repeat(2,1fr)}.ed-discover{grid-template-columns:1fr}}@media(max-width:760px){.ed-container{padding-left:22px;padding-right:22px}.ed-carousel{height:590px}.ed-slide__inner{padding:48px 25px 160px;align-items:flex-start}.ed-copy h1{font-size:37px}.ed-carousel__bottom{flex-direction:column-reverse;align-items:stretch;padding:0 25px;bottom:24px}.ed-pagination{max-width:none}.ed-featured,.major-grid{grid-template-columns:1fr 1fr;gap:12px}.major-directory-hero{padding:26px 22px}.template-sheet{padding:26px 22px;margin:24px 16px 40px}}.ed-top.home-header{background:#fff!important;border-bottom:1px solid #e3e9f1;height:76px;padding:0 30px;box-shadow:none!important}.ed-top .home-header__inner{max-width:none;margin:0;height:76px;padding:0 8px}.ed-top .home-brand__title{color:#142744;text-shadow:none;font-weight:800}.ed-top .home-brand__logo{filter:none;height:40px}.ed-top .home-nav{gap:30px}.ed-top .home-nav__button,.ed-top .cl-nav .home-nav__button{color:#202f47;font-size:14px;font-weight:500;letter-spacing:.3px;padding:8px 2px;position:relative;transition:color .16s ease}.ed-top .home-nav__button:hover,.ed-top .home-nav__button:focus-visible,.ed-top .cl-nav .home-nav__button:hover,.ed-top .cl-nav .home-nav__button:focus-visible{color:#202f47!important;background:transparent!important}.ed-top .home-nav__button>span{color:inherit}.ed-top .home-nav__button.is-active{color:#142744!important;font-weight:650;background:transparent!important;border-radius:0}.ed-top .home-login-button{border:1px solid #e3e9f1;color:#202f47;background:#fff;border-radius:8px}.ed-top .home-register-button{background:#2859df;border-color:#2859df;color:#fff;border-radius:8px}@media(max-width:760px){.ed-top.home-header{height:64px;padding:0 18px}.ed-top .home-header__inner{height:64px}}.ed-page-head{padding:14px 0 20px}.ed-page-head h1{font-size:36px;margin:0;letter-spacing:-.5px;color:#142744}.ed-page-head p{color:#64748b;margin:8px 0 0}.ed-filter-card{background:#fff;border:1px solid #e3e9f1;border-radius:12px;padding:20px 22px;margin-bottom:24px;box-shadow:0 3px 16px #15325408}.ed-search-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.ed-search-row input[type=text],.ed-search-row input:not([type]){border:1px solid #e3e9f1;border-radius:8px;padding:9px 16px;min-width:240px;flex:1}.ed-search-row select{border:1px solid #e3e9f1;border-radius:8px;padding:9px 12px;color:#202f47;background:#fff}.ed-container .cl-filter-bar{background:transparent!important;border:0!important;padding:0!important}.ed-container .cl-filter-bar__inner{max-width:none!important;margin:0!important;padding:16px 20px!important;background:#fff!important;border:1px solid #eef2f6!important;border-radius:12px;box-shadow:none!important}.cl-filter-bar__inner{background:#fff;border:1px solid #e3e9f1;border-radius:12px;padding:20px 22px;box-shadow:0 3px 16px #15325408}.ed-container .cl-filter-tag,.ed-container .cl-tabs__item{border:0!important;background:transparent!important;box-shadow:none!important;padding:6px 4px;margin-right:18px;font-size:14px;color:#62738a;position:relative;height:auto;border-radius:0;font-weight:400}.ed-container .cl-filter-tag:hover,.ed-container .cl-tabs__item:hover{color:#2859df!important;background:transparent!important;border:0!important;box-shadow:none!important}.ed-container .cl-filter-tag.is-active,.ed-container .cl-tabs__item.is-active{background:transparent!important;border:0!important;box-shadow:none!important;color:#1d4fc4!important;font-weight:700}.ed-container .cl-filter-tag.is-active:after,.ed-container .cl-tabs__item.is-active:after{content:"";position:absolute;left:4px;right:4px;bottom:0;height:2px;border-radius:2px;background:#2859df}.ed-course__art,.ed-course__art.v1{background:linear-gradient(120deg,#1c3e64,#426986)}.ed-course__art.v2{background:linear-gradient(120deg,#244e52,#457879)}.ed-course__art.v3{background:linear-gradient(120deg,#524b6d,#82728e)}.cl-filter-bar__label{color:#758293!important;font-weight:500!important}.cl-filter-bar__row+.cl-filter-bar__row{border-top-color:#eef2f6!important}.cl-filter-tag{gap:4px}.cl-filter-tag__count{background:transparent!important;color:#9aa8ba!important;font-weight:500!important}.cl-filter-tag.is-active .cl-filter-tag__count{color:#9db8e8!important}.cl-tabs{border-bottom:1px solid #eef2f6}.cl-tabs__stat{color:#758293!important}.cl-tabs__stat strong{color:#101f37!important}.cl-search-input .ant-input-affix-wrapper{border-radius:8px!important;height:44px!important;border:1px solid #e3e9f1!important;background:#fff!important;box-shadow:none!important}.cl-search-input .ant-input-affix-wrapper:hover{border-color:#c6d3f7!important}.cl-search-input .ant-input-affix-wrapper-focused,.cl-search-input .ant-input-affix-wrapper:focus{border-color:#2859df!important;box-shadow:0 0 0 3px #2859df1a!important}.ed-container .micro-major-filter{background:transparent!important;border:0!important;padding:0!important;margin-bottom:28px}.ed-container .micro-major-filter__inner{background:#fff;border:1px solid #e3e9f1;border-radius:12px;box-shadow:0 3px 16px #15325408;padding:20px 22px}.ed-container .micro-major-filter__label{color:#758293!important;font-weight:500!important}.ed-container .micro-major-filter__school{border:0!important;background:transparent!important;box-shadow:none!important;padding:6px 4px!important;margin-right:18px;font-size:14px;color:#62738a;position:relative;border-radius:0!important;height:auto}.ed-container .micro-major-filter__school:hover{color:#2859df!important}.ed-container .micro-major-filter__school.is-active{background:transparent!important;color:#1d4fc4!important;font-weight:700}.ed-container .micro-major-filter__school.is-active:after{content:"";position:absolute;left:4px;right:4px;bottom:0;height:2px;border-radius:2px;background:#2859df}.ed-container .micro-major-filter__stat{color:#758293!important}.ed-container .micro-major-filter__stat strong{color:#101f37!important}.ed-container .micro-major-filter__search.ant-input-affix-wrapper{border-radius:8px!important;border:1px solid #e3e9f1!important;box-shadow:none!important}.ed-container .micro-major-filter__search.ant-input-affix-wrapper:hover{border-color:#c6d3f7!important}.ed-container .micro-major-filter__search.ant-input-affix-wrapper-focused{border-color:#2859df!important;box-shadow:0 0 0 3px #2859df1a!important}.ed-container .cl-pagination{margin:36px 0 8px;display:flex;justify-content:center}.ed-container .cl-pagination .ant-pagination-total-text{color:#7a8798;font-size:13px;margin-right:18px;line-height:38px}.ed-container .cl-pagination .ant-pagination-item{min-width:36px;height:36px;line-height:34px;border:0;background:transparent;border-radius:10px}.ed-container .cl-pagination .ant-pagination-item a{color:#5b6b82;font-size:14px}.ed-container .cl-pagination .ant-pagination-item:hover{background:#eef3fd}.ed-container .cl-pagination .ant-pagination-item:hover a{color:#2859df}.ed-container .cl-pagination .ant-pagination-item-active{background:#2859df!important}.ed-container .cl-pagination .ant-pagination-item-active a{color:#fff!important}.ed-container .cl-pagination .ant-pagination-prev,.ed-container .cl-pagination .ant-pagination-next{min-width:36px;height:36px}.ed-container .cl-pagination .ant-pagination-prev .ant-pagination-item-link,.ed-container .cl-pagination .ant-pagination-next .ant-pagination-item-link{border:0;background:transparent;color:#5b6b82;border-radius:10px}.ed-container .cl-pagination .ant-pagination-prev:hover .ant-pagination-item-link,.ed-container .cl-pagination .ant-pagination-next:hover .ant-pagination-item-link{background:#eef3fd;color:#2859df}.ed-container .cl-pagination .ant-pagination-disabled .ant-pagination-item-link{color:#c0c8d4;background:transparent}.ed-container section:last-child{padding-bottom:40px}.ed-container .cl-list-section__inner{max-width:none!important;padding-left:0!important;padding-right:0!important}.ed-container .cl-list-section{padding-top:0}.ed-container .cl-filter-bar{margin-bottom:22px}.ed-container .cl-search-bar{margin-bottom:4px}.ed-levels,.ed-level-item{position:relative}.ed-level-item>a{display:block;padding:6px 26px;border-left:1px solid #e4eaf0;color:#101f37}.ed-level-item:first-child>a{border-left:0}.ed-level-item>a:hover{text-decoration:none;background:#f5f8fc}.ed-level-menu{position:absolute;top:100%;left:0;z-index:50;min-width:380px;max-width:460px;background:#fff;border:1px solid #e3e9f1;border-radius:14px;box-shadow:0 24px 60px #101f3729;padding:22px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s}.ed-level-item:hover .ed-level-menu,.ed-level-item:focus-within .ed-level-menu{opacity:1;visibility:visible;transform:translateY(4px)}.ed-level-menu__title{font-size:13px;font-weight:700;color:#101f37;margin-bottom:14px}.ed-level-menu__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ed-level-menu__grid button{border:0;background:#f3f6fa;border-radius:8px;padding:10px 8px;font-size:13px;color:#42546e;display:flex;align-items:center;justify-content:center;gap:6px}.ed-level-menu__grid button em{font-style:normal;font-size:11px;color:#9aa8ba}.ed-level-menu__grid button:hover:not(:disabled){background:#e8effc;color:#1d4fc4}.ed-level-menu__grid button:disabled{opacity:.45;cursor:not-allowed}.ed-level-menu__more{display:block;margin-top:14px;font-size:13px;color:#2859df}.ed-top .home-nav__button:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;background:#2859df;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.ed-top .home-nav__button:hover:after,.ed-top .home-nav__button:focus-visible:after{transform:scaleX(1)}.ed-top .home-nav__button.is-active{color:#142744!important;font-weight:700}.ed-top .home-nav__button.is-active:after{transform:scaleX(1)}.major-cta.is-enrolled{display:inline-flex;align-items:center;gap:4px;padding:7px 12px;border:1px solid #2859df;border-radius:8px;background:#fff;color:#2859df!important;font-size:12px;font-weight:700;transition:background .15s,border-color .15s}.major-cta.is-enrolled:hover{background:#f3f7ff;border-color:#1846bc;color:#1846bc!important}body[data-theme=portal]{--home-page-bg: #f3f8ff;--home-surface: #ffffff;--home-surface-soft: rgba(255, 255, 255, .72);--home-border: #d9e7ff;--home-text: #16386f;--home-text-muted: #607aa7;--home-primary: #1677ff;--home-primary-deep: #0e63d8;--home-accent: #2fa8ff;--home-hero-overlay: linear-gradient(105deg, rgba(7, 72, 169, .96) 0%, rgba(7, 89, 195, .78) 42%, rgba(5, 62, 153, .9) 100%);--home-header-overlay: linear-gradient(90deg, rgba(8, 93, 190, .96) 0%, rgba(28, 146, 226, .9) 100%);--home-glass: rgba(255, 255, 255, .18);--home-glass-border: rgba(255, 255, 255, .3);--home-shadow: 0 20px 60px rgba(17, 76, 160, .14);--home-card-shadow: 0 16px 40px rgba(22, 77, 160, .12)}body[data-theme=light]{--home-page-bg: #f8fafc;--home-surface: #ffffff;--home-surface-soft: rgba(255, 255, 255, .92);--home-border: #dbe5f2;--home-text: #183153;--home-text-muted: #6b7a90;--home-primary: #2573e6;--home-primary-deep: #1d5fcc;--home-accent: #d16900;--home-hero-overlay: linear-gradient(105deg, rgba(16, 73, 158, .88) 0%, rgba(22, 111, 215, .72) 48%, rgba(13, 69, 145, .86) 100%);--home-header-overlay: linear-gradient(90deg, rgba(16, 96, 188, .94) 0%, rgba(55, 147, 231, .9) 100%);--home-glass: rgba(255, 255, 255, .2);--home-glass-border: rgba(255, 255, 255, .3);--home-shadow: 0 20px 60px rgba(26, 67, 127, .1);--home-card-shadow: 0 14px 34px rgba(27, 74, 146, .1)}.home-page{background:radial-gradient(1000px 300px at 50% -100px,#3882f614,#3882f600 70%),linear-gradient(180deg,#fff9,#fff0 280px),var(--home-page-bg)}.cl-page.ant-layout{min-height:100vh;display:flex;flex-direction:column;background:#fff}.cl-page>.ant-layout-content{flex:1 1 auto;min-height:calc(100vh - 76px)}.home-header{background:var(--home-header-overlay);padding:0 40px;position:sticky;top:0;z-index:1000;height:76px;line-height:76px;box-shadow:0 10px 36px #083b842e}.home-header__inner{max-width:1480px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.home-brand{display:flex;align-items:center;gap:12px;min-width:0}.home-brand__logo{height:64px;width:auto;max-width:none;object-fit:contain;flex-shrink:0;display:block;filter:drop-shadow(0 2px 4px rgba(5,40,92,.16))}.home-brand__title{color:#fff;font-size:24px;font-weight:700;letter-spacing:.02em;line-height:1;white-space:nowrap;text-shadow:0 1px 2px rgba(6,32,74,.22)}.home-header__left{display:flex;align-items:center;gap:24px;min-width:0}.home-nav{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-width:0}.home-nav__button{height:44px;padding:0 10px;border-radius:22px;background:transparent;border:1px solid transparent;color:#ffffffd1;font-size:17px;font-weight:600;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.home-nav__button:hover,.home-nav__button:focus{color:#fff!important;background:#ffffff14!important;border-color:#ffffff2e!important}.home-nav__button.is-active{color:#fff!important;background:#ffffff29!important;border-color:#ffffff3d!important}.home-header__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}@media(min-width:1280px){.home-header__inner{position:relative}.home-nav{position:absolute;left:50%;transform:translate(-50%)}}.home-header__search{width:320px}.home-header__search .ant-input-affix-wrapper{border-radius:999px;height:42px;padding-inline:14px;background:#ffffff2e;border-color:#ffffff52;box-shadow:none}.home-header__search .ant-input,.home-header__search .ant-input::placeholder,.home-header__search .ant-input-prefix{color:#fff}.home-login-button,.home-register-button{height:40px;border-radius:999px;padding:0 20px;font-weight:600}.home-login-button{border-color:#ffffff52;background:transparent;color:#fff}.home-register-button{border:none;background:linear-gradient(135deg,#fff,#d8ebff);color:#0d57ba}.home-hero{position:relative;overflow:hidden;padding:72px 48px 132px;background:var(--home-hero-overlay),url(/assets/home-portal-hero-bg.png) center/cover no-repeat}.home-hero:before{content:"";position:absolute;top:0;left:0;background:radial-gradient(circle at 16% 18%,rgba(143,214,255,.36) 0%,transparent 24%),radial-gradient(circle at 84% 28%,rgba(255,255,255,.18) 0%,transparent 18%),radial-gradient(circle at 62% 82%,rgba(71,198,255,.16) 0%,transparent 16%);pointer-events:none}.home-hero:before{right:0;bottom:0}.home-hero__shell{max-width:1480px;margin:0 auto;position:relative;z-index:1}.home-hero__grid{min-height:360px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:36px}.home-hero__title{color:#fff!important;font-size:clamp(38px,4.6vw,58px)!important;line-height:1.16!important;font-weight:800!important;margin-bottom:14px!important;letter-spacing:-.03em;text-shadow:0 10px 30px rgba(3,30,80,.24)}.home-hero__title strong{color:#bfe7ff;font-weight:800}.home-hero__description{max-width:680px;color:#ffffffe0!important;font-size:18px!important;line-height:1.72!important;margin-bottom:22px!important}.home-hero__cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.home-hero__primary,.home-hero__secondary{height:50px;border-radius:999px;padding:0 30px;font-size:16px;font-weight:700}.home-hero__primary{border:none;background:linear-gradient(135deg,#fff,#d6ecff);color:#0b57bd;box-shadow:0 12px 28px #0531753d}.home-hero__secondary{border-color:#ffffff47;background:#ffffff1a;color:#fff}.home-hero__aside{display:flex;justify-content:flex-end}.home-hero-panel{width:100%;max-width:360px;border-radius:28px;padding:24px;background:linear-gradient(135deg,#0a3c8ce6,#1450a0d9);border:1px solid rgba(255,255,255,.25);box-shadow:0 20px 48px #072e6766}.home-hero-panel__heading{color:#16386f;font-size:18px;font-weight:700;margin-bottom:16px}.home-hero-panel__list{display:grid;gap:12px}.home-hero-panel__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:16px;background:#ffffff26;border:1px solid rgba(255,255,255,.2)}.home-hero-panel__item strong{color:#16386f;font-size:15px;font-weight:700;display:block}.home-hero-panel__item span{color:#607aa7;font-size:12px;display:block;margin-top:4px}.home-ai-badge{position:absolute;left:8px;bottom:44px;width:118px;height:118px;border-radius:30px;transform:rotate(-8deg);background:linear-gradient(180deg,#ffffff2e,#67b5ff38);border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 60px #072e672e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;color:#ffffffbd;font-size:48px;font-weight:800;letter-spacing:.06em}.home-showcase{padding:24px 0 72px;position:relative;z-index:1}.home-showcase__shell{max-width:none;margin:0 180px;display:grid;gap:24px}.home-course-panel{border-radius:0;padding:8px 0;background:transparent;border:none;box-shadow:none}.home-course-panel__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.home-course-panel__title-wrap{display:flex;align-items:center;gap:12px}.home-course-panel__title{margin:0!important;color:var(--home-text)!important;font-size:24px!important;font-weight:800!important;letter-spacing:.02em}.home-course-panel__more{height:auto;padding:4px 2px;border:none;border-radius:0;background:transparent;box-shadow:none;display:inline-flex;align-items:center;gap:6px;color:var(--home-text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:color .2s ease}.home-course-panel__more:hover{background:transparent;color:var(--home-primary);transform:none}.portal-course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.portal-course-card{padding:10px;text-align:left;border:1.5px solid #e2e7f0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 2px 10px #1018280d;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;display:flex;flex-direction:column}.portal-course-card.is-enrolled{border-color:#bcd0f5;box-shadow:0 2px 10px #1d4ed814}.portal-course-card.is-open{border-color:#e2e7f0}.portal-course-card:hover{transform:translateY(-4px);border-color:#b9cdf3;box-shadow:0 16px 32px #172a5a24,0 2px 6px #171a210f}.portal-course-card--loading{cursor:default}.portal-course-card--loading:hover{transform:none}.portal-course-card__cover{position:relative;width:100%;padding-top:56.25%;background:#1a6dd8;background-size:cover;background-position:center;overflow:hidden;border-radius:12px;outline:1px solid rgba(16,24,40,.06);outline-offset:-1px}.portal-course-card__cover:after{content:"";position:absolute;top:0;left:0;background:linear-gradient(180deg,#00000005,#0000001f 48%,#081b3e8c);pointer-events:none;z-index:1}.portal-course-card__cover:after{right:0;bottom:0}.portal-course-card__cover.is-placeholder{background:linear-gradient(145deg,#1559c2,#0b3c8c 60%,#0a2e6e)}.portal-course-card__cover.is-art{background:#efe7d6}.portal-course-card__cover.is-art:after{display:none}.portal-course-card__cover.is-placeholder:after{background:radial-gradient(circle at 18% 24%,rgba(255,255,255,.14) 0,rgba(255,255,255,.14) 18px,transparent 19px),radial-gradient(circle at 82% 26%,rgba(255,255,255,.09) 0,rgba(255,255,255,.09) 28px,transparent 29px),radial-gradient(circle at 70% 78%,rgba(255,255,255,.07) 0,rgba(255,255,255,.07) 22px,transparent 23px),linear-gradient(180deg,#0000000d,#081b3e7a)}.portal-course-card__cover-fallback{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;color:#ffffffb3;font-size:52px;z-index:2}.portal-course-card__cover-fallback{right:0;bottom:0}.portal-course-card__cover-badges{position:absolute;top:8px;left:8px;right:8px;z-index:3;display:flex;align-items:flex-start;justify-content:flex-end;gap:6px}.portal-course-card__cover-badge{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.portal-course-card__cover-badge--subject{background:#eff6ffeb;color:#2b6de8;border:1px solid rgba(255,255,255,.7);box-shadow:0 2px 8px #1e50b424}.portal-course-card__cover-badge--enrolled{background:linear-gradient(135deg,#0ea05a,#17b96a);color:#fff;box-shadow:0 3px 12px #0c8a4666}.portal-course-card__cover-badge--quality{background:linear-gradient(135deg,#e8870a,#f2a50b);color:#fff;box-shadow:0 3px 12px #b460065c}.portal-course-card__cover-overlay{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:28px 14px 10px;background:linear-gradient(180deg,transparent 0%,rgba(6,20,48,.72) 100%)}.portal-course-card__cover-overlay-title{color:#fff;font-size:13px;font-weight:700;line-height:1.38;max-height:36px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 3px rgba(0,0,0,.36)}.portal-course-card__body{flex:1;padding:14px 8px 8px;display:flex;flex-direction:column;gap:10px;min-height:60px;background:#fff}.portal-course-card__meta-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.portal-course-card__org{color:#8d9bbb!important;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.portal-course-card__org,.portal-course-card__teacher .ant-typography,.portal-course-card__count,.portal-course-card__subject-raw{color:var(--home-text-muted)!important}.portal-course-card__org{font-size:11px;color:#8d9bbb!important;font-weight:600;letter-spacing:.02em}.portal-course-card__status{margin:0!important;border:none!important;border-radius:999px!important;font-size:11px!important;font-weight:700!important;padding:2px 10px!important}.portal-course-card__status--open{background:#eef5ff!important;color:#2b77eb!important}.portal-course-card__status--enrolled{background:#dbeafe!important;color:#1d4ed8!important;box-shadow:inset 0 0 0 1px #1d4ed81a}.portal-course-card__title{margin-bottom:0!important;color:#111827!important;font-size:21px!important;font-weight:800!important;line-height:1.35!important;letter-spacing:.01em;display:block!important;min-width:0;flex-shrink:0;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;overflow-wrap:normal}.portal-course-card__school{display:flex;align-items:center;gap:6px;min-width:0;color:#33393f;font-size:13px;font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-course-card__school .anticon{color:#8a94a0;font-size:14px;flex-shrink:0}.portal-course-card__school-divider{color:#d1d5db;margin:0 2px;flex-shrink:0}.portal-course-card__school-name,.portal-course-card__school-teacher{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}.portal-course-card__school-name{flex:0 1 auto;max-width:46%}.portal-course-card__school-teacher{flex:1 1 auto;color:#4b5563}.portal-course-card__description{margin-bottom:0!important;background:#f2f4f8;border-radius:8px;padding:8px 14px 8px 12px!important;color:#5b626c!important;font-size:13px!important;line-height:20px!important;box-sizing:border-box;min-height:56px;max-height:56px;overflow:hidden}.portal-course-card__description-inner{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;word-break:break-word}.portal-course-card__subject-line{display:flex;align-items:center;gap:8px;margin-top:auto}.portal-course-card__subject-tag{margin:0!important;padding:3px 8px!important;border:none!important;border-radius:999px!important;background:#f0f6ff!important;color:#256bd4!important;font-weight:700!important;font-size:11px!important}.portal-course-card__subject-raw{font-size:11px;color:var(--home-text-muted)!important}.portal-course-card__footer{padding-top:2px;margin-top:0;border-top:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.portal-course-card__progress{display:inline-flex;align-items:center;gap:5px;color:#1677ff;font-size:13px;font-weight:700;white-space:nowrap;flex-shrink:0}.portal-course-card__progress .anticon{font-size:14px}.portal-course-card__progress--enrolled{color:#0ea05a}.portal-course-card__learners{display:inline-flex;align-items:center;gap:5px;color:#9aa3b2;font-size:13px;white-space:nowrap;flex-shrink:0;margin-left:auto}.portal-course-card__learners .anticon{font-size:14px}.portal-course-card__footer-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.portal-course-card__teacher-initial{width:20px;height:20px;border-radius:50%;background:#1f3a54;color:#fff;font-size:10px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.portal-course-card__count{white-space:nowrap;font-size:11px;color:#97a8c2!important}.portal-course-card__study-badge{display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:999px;background:linear-gradient(135deg,#0ea05a,#0fba60);color:#fff;font-size:10px;font-weight:800;letter-spacing:.02em;white-space:nowrap}.portal-course-card__skeleton-cover{display:block!important;width:100%!important;height:0!important;padding-top:56.25%!important;border-radius:12px!important;overflow:hidden}.cl-subject-panel{position:relative;background:radial-gradient(ellipse at 20% 50%,rgba(22,119,255,.06) 0%,transparent 60%),radial-gradient(ellipse at 80% 30%,rgba(47,168,255,.05) 0%,transparent 50%),var(--home-page-bg);padding:40px 0 36px;border-bottom:1px solid var(--home-border)}.cl-subject-panel__inner{max-width:1480px;margin:0 auto;padding:0 48px}.cl-subject-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}.cl-subject-panel__head-left{display:flex;flex-direction:column;gap:4px}.cl-subject-panel__title{margin:0!important;color:var(--home-text)!important;font-size:24px!important}.cl-subject-panel__hint{color:var(--home-text-muted);font-size:14px}.cl-subject-panel__toggle{display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:16px;background:var(--home-surface);border:1px solid var(--home-border);box-shadow:0 2px 8px #164c9c0f}.cl-subject-panel__toggle span{color:var(--home-text-muted);font-size:13px}.cl-subject-grid{display:flex;flex-wrap:wrap;gap:12px}.cl-subject-chip{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:8px 16px;border-radius:14px;border:1.5px solid var(--home-border);background:var(--home-surface);color:var(--home-text);font-size:14px;font-weight:600;cursor:pointer;transition:all .22s ease;box-shadow:0 2px 6px #1345930a}.cl-subject-chip:hover{border-color:var(--home-primary);transform:translateY(-2px);box-shadow:0 6px 16px #1677ff1f}.cl-subject-chip.is-active{border-color:transparent;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);color:#fff;box-shadow:0 8px 20px #1677ff47;transform:translateY(-2px)}.cl-subject-chip.is-empty{opacity:.45;border-style:dashed}.cl-subject-chip__name{white-space:nowrap}.cl-subject-chip__count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:20px;padding:0 7px;border-radius:10px;font-size:12px;font-weight:700;background:#eef6ff;color:var(--home-primary-deep)}.cl-subject-chip:hover .cl-subject-chip__count{background:#d6ebff}.cl-subject-chip.is-active .cl-subject-chip__count{background:#ffffff38;color:#fff}.cl-list-section{padding:0 0 72px}.cl-list-section__inner{max-width:1480px;margin:0 auto;padding:0 48px}.cl-tabs{display:flex;align-items:center;gap:4px;padding:28px 0 20px;margin-bottom:8px;border-bottom:2px solid #edf3ff}.cl-tabs__item{display:inline-flex;align-items:center;gap:7px;padding:10px 22px;border:none;border-radius:12px;background:transparent;color:var(--home-text-muted);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.cl-tabs__item:hover{color:var(--home-primary);background:#f0f7ff}.cl-tabs__item.is-active{color:#fff;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);box-shadow:0 4px 14px #1677ff3d}.cl-tabs__stat{margin-left:auto;font-size:14px;color:var(--home-text-muted)}.cl-tabs__stat strong{color:var(--home-primary);font-weight:700;font-size:18px}.cl-pagination{margin-top:36px;display:flex;justify-content:center}@media(max-width:992px){.cl-subject-panel__inner,.cl-list-section__inner{padding:0 20px}.cl-subject-panel__head{flex-direction:column}}@media(max-width:768px){.cl-subject-grid{gap:8px}.cl-subject-chip{min-height:38px;padding:6px 12px;font-size:13px;border-radius:10px}.cl-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}}.home-course-section{position:relative;z-index:1;padding:32px 48px 64px}.home-course-section__shell{max-width:1480px;margin:0 auto}.home-filter-panel{border-radius:28px;background:linear-gradient(180deg,#f1f6fff5,#fff);border:1px solid rgba(214,228,255,.92);box-shadow:var(--home-shadow);padding:28px 32px;margin-bottom:30px}.home-filter-panel__header{margin-bottom:18px}.home-filter-panel__title{color:var(--home-text)!important;margin-bottom:0!important}.home-filter-row{display:grid;grid-template-columns:108px minmax(0,1fr);align-items:flex-start;gap:18px;padding:16px 0;border-top:1px solid #edf3ff}.home-filter-row:first-of-type{border-top:none;padding-top:0}.home-filter-row__label{color:var(--home-text);font-size:16px;font-weight:700;padding-top:10px}.home-filter-row__content{min-width:0}.home-filter-row__search .ant-input-affix-wrapper,.home-filter-row__select .ant-select-selector{height:48px!important;min-height:48px!important;border-radius:16px!important;border-color:#d5e4ff!important;box-shadow:none!important}.home-filter-row__search .ant-input-affix-wrapper{padding-inline:16px;background:#f8fbff}.home-filter-row__select .ant-select-selector{padding:0 16px!important;display:flex!important;align-items:center!important;background:#f8fbff!important}.home-filter-row__select .ant-select-selection-item,.home-filter-row__select .ant-select-selection-placeholder{line-height:46px!important}.home-filter-row__select .ant-select-selection-search-input{height:46px!important}.home-filter-row__tags{display:flex;flex-wrap:wrap;gap:12px}.home-filter-tag{padding:8px 18px;border-radius:999px;border:1px solid #d9e7ff;background:#fff;color:var(--home-text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.home-filter-tag:hover{color:var(--home-primary);border-color:#bdd6ff;box-shadow:0 8px 18px #1677ff14}.home-filter-tag.is-active{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);box-shadow:0 10px 24px #1677ff2e}.home-course-grid{padding:4px 0 0}.home-course-grid__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px;flex-wrap:wrap}.home-course-grid__title{color:var(--home-text)!important;margin:0!important}.home-course-grid__count{color:var(--home-text-muted);font-size:14px}.home-course-card{height:100%;border-radius:22px!important;overflow:hidden;border:1px solid rgba(216,229,255,.92)!important;box-shadow:0 12px 32px #10469314;transition:transform .24s ease,box-shadow .24s ease}.home-course-card:hover{transform:translateY(-6px);box-shadow:var(--home-card-shadow)}.home-course-card__cover{position:relative;height:124px;background:linear-gradient(135deg,#1677ff,#67c3ff);background-size:cover;background-position:center}.home-course-card__cover:after{content:"";position:absolute;top:0;left:0;background:linear-gradient(180deg,#0e2d5f0f,#0e39798a)}.home-course-card__cover:after{right:0;bottom:0}.home-course-card__cover-icon{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;font-size:42px;color:#ffffff8a;z-index:1}.home-course-card__cover-icon{right:0;bottom:0}.home-course-card__tags{position:absolute;top:12px;left:12px;right:12px;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.home-course-card__tags-left,.home-course-card__tags-right{display:flex;gap:8px;flex-wrap:wrap}.home-course-card__tag{margin:0;padding:4px 10px;border-radius:999px;border:none;font-size:12px;font-weight:700}.home-course-card__tag--category{background:#ffffff29;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home-course-card__tag--published{background:#e6fbf3;color:#0c9664}.home-course-card__tag--draft{background:#eef4ff;color:#6f7f9c}.home-course-card__tag--enrolled{background:#094da5d1;color:#fff}.home-course-card__body{padding:14px;display:flex;flex-direction:column;gap:10px}.home-course-card__title{color:var(--home-text)!important;font-size:15px!important;line-height:1.42!important;min-height:42px;margin-bottom:0!important}.home-course-card__description{color:var(--home-text-muted);font-size:12px;line-height:1.6;min-height:38px;margin-bottom:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-course-card__meta{display:flex;flex-direction:column;gap:10px;margin-top:auto}.home-course-card__meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.home-course-card__meta-item{display:flex;align-items:center;gap:6px;min-width:0;color:var(--home-text-muted);font-size:12px}.home-course-card__meta-item--wide{flex:1}.home-course-card__footer{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding-top:10px;border-top:1px solid #edf4ff}.home-course-card__metrics{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-course-card__metric{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:#f4f8ff;color:var(--home-primary-deep);font-size:12px;font-weight:600}.home-course-card__link{height:36px!important;border-radius:12px!important;border:1px solid #cfe0ff!important;background:linear-gradient(180deg,#f7fbff,#ebf4ff)!important;color:var(--home-primary-deep)!important;font-weight:700!important;box-shadow:none!important}.home-pagination{text-align:center;margin-top:42px}.home-pagination .ant-pagination-item,.home-pagination .ant-pagination-prev,.home-pagination .ant-pagination-next{border-radius:12px;border-color:#d7e5ff}.home-empty{padding:72px 0 24px}@media(max-width:1200px){.home-hero__grid{grid-template-columns:1fr}.home-hero__aside{justify-content:flex-start}.portal-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1080px){.home-nav__button{height:38px;padding:0 12px;font-size:14px;border-radius:18px}.home-brand__title{font-size:17px}.home-brand__logo{height:44px}.home-header{padding:0 28px}.home-hero{padding:48px 24px 120px}.portal-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:992px){.home-header{height:auto;line-height:normal;padding:12px 16px}.home-header__inner{flex-direction:row;align-items:center;gap:12px}.home-header__left{flex:1;min-width:0}.home-header__actions{flex-shrink:0;flex-wrap:wrap;gap:8px}.home-header__search{width:100%}.home-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}.home-nav::-webkit-scrollbar{display:none}.home-nav__button{flex-shrink:0}.home-hero{padding:56px 20px 128px}.home-showcase,.home-course-section{margin-top:0;padding:16px 12px 32px}.home-filter-panel,.home-hero-panel{padding:22px}.home-course-panel{margin-top:0}.home-filter-panel__header{flex-direction:column}.home-filter-row{grid-template-columns:1fr;gap:12px}.home-filter-row__label{padding-top:0}.portal-subject-grid,.portal-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cl-filter-bar__row{flex-direction:column;gap:8px}.cl-filter-bar__label{width:auto;text-align:left;padding-top:0}.cl-filter-bar__toggle{margin-left:0}}@media(max-width:768px){.home-brand__title{font-size:16px;white-space:nowrap}.home-brand__logo{height:44px}.home-nav{gap:8px}.home-nav__button{padding:0 14px;height:38px;font-size:14px}.home-hero__description{font-size:16px!important}.home-hero__stats{grid-template-columns:1fr}.home-ai-badge{display:none}.portal-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-course-card__title{font-size:17px!important}.cl-filter-bar__row{flex-direction:row;align-items:flex-start}.cl-filter-bar__label{width:48px;padding-top:8px;font-size:13px;text-align:left}.cl-filter-bar__content{flex-wrap:nowrap!important;flex-direction:row;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}.cl-filter-bar__content::-webkit-scrollbar{display:none}.cl-filter-tag{flex-shrink:0;height:32px;padding:0 12px;font-size:13px}.cl-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:20px 0 12px}}@media(max-width:576px){.portal-course-grid,.portal-course-grid--wide,.portal-subject-grid{grid-template-columns:1fr}.portal-course-card__cover{padding-top:62%}.portal-course-card__skeleton-cover{padding-top:62%!important}}@media(max-width:576px){.cl-page .home-header{padding:0 12px}.cl-filter-bar{padding:8px 0}.cl-filter-bar__inner{padding:0 12px}.cl-filter-bar__row{padding:6px 0;gap:8px}.cl-filter-bar__label{width:36px;padding-top:6px;font-size:12px}.cl-filter-summary{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.cl-filter-summary__text{font-size:12px}.cl-tabs{padding:6px 12px;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.cl-tabs::-webkit-scrollbar{display:none}.cl-tabs__item{padding:6px 10px;font-size:13px;white-space:nowrap;flex-shrink:0}.cl-tabs__stat{display:none}.cl-filter-bar--mobile .cl-filter-tag{font-size:11px;padding:3px 10px;border-radius:12px;white-space:nowrap}.cl-pagination{padding:12px 0}}.cl-page .home-header{padding:0 32px}.cl-filter-bar{background:#fff;border-bottom:1px solid #edf3ff;padding:20px 0}.cl-filter-bar__inner{max-width:1600px;margin:0 auto;padding:0 48px}.cl-filter-bar__row{display:flex;align-items:flex-start;gap:16px;padding:10px 0}.cl-filter-bar__row+.cl-filter-bar__row{border-top:1px solid #f0f5ff}.cl-filter-bar__label{flex-shrink:0;width:56px;padding-top:8px;font-size:14px;font-weight:700;color:var(--home-text);text-align:right}.cl-filter-bar__content{display:flex;flex-wrap:wrap;gap:10px;flex:1;min-width:0}.cl-filter-bar__toggle{flex-shrink:0;display:flex;align-items:center;gap:6px;margin-left:16px;padding-top:6px}.cl-filter-bar__toggle-text{font-size:13px;color:var(--home-text-muted);white-space:nowrap}.cl-filter-tag{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 18px;border:1.5px solid #e4edf8;border-radius:19px;background:#fff;color:var(--home-text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.cl-filter-tag:hover{color:var(--home-primary);border-color:#bdd6ff;background:#f5f9ff}.cl-filter-tag.is-active{color:#fff;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);border-color:transparent;box-shadow:0 4px 12px #1677ff3d}.cl-filter-tag.is-empty{opacity:.4;border-style:dashed}.cl-filter-tag__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:9px;font-size:11px;font-weight:700;background:#ffffff4d}.cl-filter-tag:not(.is-active) .cl-filter-tag__count{background:#eef6ff;color:var(--home-primary-deep)}.portal-course-grid--wide{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.cl-list-section__inner{max-width:1600px!important}.cl-search-bar{padding:20px 0 0}.cl-search-input{max-width:560px}.cl-search-input .ant-input-affix-wrapper{border-radius:24px!important;height:48px!important;padding:0 20px;border:2px solid #d5e4ff!important;background:#f8fbff;font-size:15px;transition:all .2s ease}.cl-search-input .ant-input-affix-wrapper:focus,.cl-search-input .ant-input-affix-wrapper-focused{border-color:var(--home-primary)!important;box-shadow:0 0 0 3px #1677ff1a!important}.cl-search-input .ant-input{background:transparent}@media(max-width:1280px){.portal-course-grid--wide{grid-template-columns:repeat(3,minmax(0,1fr))}.cl-tabs__item{padding:8px 16px;font-size:14px}}@media(max-width:1100px){.cl-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:20px 0 12px;gap:6px}.cl-tabs__item{padding:7px 14px;font-size:13px;flex-shrink:0}.cl-tabs__stat{flex-shrink:0}.cl-page .home-header{padding:0 24px}}@media(max-width:992px){.cl-filter-bar__inner{padding:0 20px}.cl-filter-bar__row{flex-direction:column;gap:8px}.cl-filter-bar__label{width:auto;text-align:left;padding-top:0}.cl-filter-bar__toggle{margin-left:0}}@media(max-width:768px){.portal-course-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:576px){.portal-course-grid--wide{grid-template-columns:1fr}}.mobile-full-menu{position:fixed;top:0;left:0;z-index:1200;background:#050c1899;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-full-menu{right:0;bottom:0}.mobile-full-menu.is-open{opacity:1;pointer-events:auto}.mobile-full-menu__panel{position:absolute;top:0;right:0;bottom:0;width:86%;max-width:340px;background:#fff;display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:-12px 0 48px #0000002e}.mobile-full-menu.is-open .mobile-full-menu__panel{transform:translate(0)}.mobile-full-menu__header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #f0f2f5}.mobile-full-menu__brand{display:flex;align-items:center;gap:10px}.mobile-full-menu__logo{height:36px;object-fit:contain}.mobile-full-menu__app-name{font-size:16px;font-weight:700;color:#1f2937;white-space:nowrap}.mobile-full-menu__close{width:36px;height:36px;border-radius:10px!important;background:#f5f6f8!important;border:none!important;color:#555!important;font-size:15px;transition:background .15s ease,transform .15s ease}.mobile-full-menu__close:active{transform:scale(.9)}.mobile-full-menu__close:hover{background:#e8eaed!important}.mobile-full-menu__section{padding:20px 18px 0;flex:1}.mobile-full-menu__eyebrow{margin-bottom:12px;font-size:11px;font-weight:700;letter-spacing:.1em;color:#9ca3af;text-transform:uppercase;padding-left:2px}.mobile-full-menu__nav{display:flex;flex-direction:column;gap:2px}.mobile-full-menu__nav-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;border-radius:12px;background:transparent;border:none;color:#374151;font-size:16px;font-weight:500;cursor:pointer;text-align:left;position:relative;opacity:0;transform:translate(16px);transition:background .15s ease,color .15s ease,transform .15s ease}.mobile-full-menu.is-open .mobile-full-menu__nav-item{opacity:1;transform:translate(0);transition:opacity .3s ease,transform .3s cubic-bezier(.16,1,.3,1),background .15s ease}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(1){transition-delay:.05s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(2){transition-delay:.1s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(3){transition-delay:.15s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(4){transition-delay:.2s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(5){transition-delay:.25s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(6){transition-delay:.3s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(7){transition-delay:.35s}.mobile-full-menu.is-open .mobile-full-menu__nav-item:nth-child(8){transition-delay:.4s}.mobile-full-menu__nav-item:active{transform:scale(.97)!important;background:#f3f4f6}.mobile-full-menu__nav-item.is-active{background:#eef4ff;color:#2563eb;font-weight:700}.mobile-full-menu__nav-item.is-active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 4px 4px 0;background:#2563eb}.mobile-full-menu__nav-item .anticon{color:inherit;opacity:.4;font-size:13px;transition:transform .2s ease,opacity .2s ease}.mobile-full-menu__nav-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#f3f4f6;color:#6b7280;font-size:14px;flex-shrink:0;transition:background .15s ease,color .15s ease}.mobile-full-menu__nav-item.is-active .mobile-full-menu__nav-icon{background:#2563eb;color:#fff}.mobile-full-menu__nav-item.is-active .anticon{opacity:.6;transform:translate(4px)}.mobile-full-menu__auth{margin-top:auto;padding:20px 18px 28px;display:flex;flex-direction:column;gap:10px;border-top:1px solid #f0f2f5}.mobile-full-menu__auth .ant-btn{height:46px;border-radius:12px;font-weight:700}.cl-filter-bar--mobile{padding:10px 0}.cl-filter-bar--mobile .cl-filter-bar__inner{padding:0 16px}.cl-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0}.cl-filter-summary__text{flex:1;min-width:0;font-size:13px!important;color:#475569!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cl-filter-bar--mobile .cl-filter-bar__row{flex-direction:column;align-items:flex-start;gap:6px;margin-top:10px}.cl-filter-bar--mobile .cl-filter-bar__label{width:auto;font-size:12px;color:#94a3b8;font-weight:700}.cl-filter-bar--mobile .cl-filter-bar__content{width:100%;flex-wrap:wrap;gap:8px}.cl-filter-bar--mobile .cl-filter-tag{font-size:12px;padding:5px 10px;border-radius:999px;background:#f3f6fb;border:1px solid transparent}.cl-filter-bar--mobile .cl-filter-tag.is-active{background:#202f47;color:#fff;font-weight:700}@media(max-width:640px){.cl-tabs{position:sticky;top:76px;z-index:50;background:#fff;margin:0 -16px;padding:12px 16px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;flex-wrap:nowrap;border-bottom:1px solid #edf3ff}.cl-tabs__item{flex:0 0 auto;padding:7px 14px!important;font-size:13px!important;scroll-snap-align:start}.cl-tabs__stat{flex:0 0 auto;padding-left:8px}.cl-list-section__inner{padding:12px 16px 24px!important}.cl-pagination{margin-top:16px}.portal-course-card{border-radius:14px!important}.portal-course-card__body{padding:12px!important}.portal-course-card__cover{border-top-left-radius:14px!important;border-top-right-radius:14px!important}}.micro-major-hero-panel__item-title{color:var(--home-text);font-size:16px;font-weight:700;margin-bottom:8px}.home-hero-section{position:relative;overflow:hidden;padding:48px;background:linear-gradient(135deg,#0b4ca8,#1a6dd8,#0e63d8)}.home-hero-section:before{content:"";position:absolute;top:0;left:0;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.15) 0%,transparent 30%),radial-gradient(circle at 80% 60%,rgba(255,255,255,.1) 0%,transparent 25%);pointer-events:none}.home-hero-section:before{right:0;bottom:0}.home-hero-section__inner{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-height:260px;padding:0 48px;position:relative;z-index:1}.home-hero-section__headline{display:flex;align-items:center;gap:16px;margin-bottom:8px}.home-hero-section__badge{display:inline-block;padding:6px 16px;border-radius:999px;background:#fff3;color:#ffffffe6;font-size:13px;font-weight:600;margin-bottom:0}.home-hero-section__title{color:#fff!important;font-size:clamp(22px,2.5vw,32px)!important;line-height:1.2!important;font-weight:800!important;margin-bottom:0!important;text-shadow:0 8px 24px rgba(3,30,80,.24)}.home-hero-section__subtitle{color:#ffffffe0!important;font-size:16px!important;line-height:1.7!important;margin-bottom:20px!important}.home-hero-section__cta{display:flex;gap:12px;flex-wrap:wrap}.home-hero-section__cta-item{padding:8px 16px;border-radius:999px;background:#ffffff26;color:#fffffff2;font-size:14px;font-weight:500}.home-hero-section__stats{display:flex;gap:32px}.home-hero-section__stat{text-align:center}.home-hero-section__stat-num{display:block;color:#fff;font-size:32px;font-weight:800;line-height:1;margin-bottom:4px}.home-hero-section__stat-label{color:#ffffffb3;font-size:13px}.home-hero-section__visual{display:flex;justify-content:center;align-items:center}.home-hero-section__image{width:100%;height:auto;max-height:280px;border-radius:20px;box-shadow:0 24px 64px #00000040;object-fit:cover}.home-hero-panel{padding:48px 24px;background:linear-gradient(180deg,#f3f8ff,#fff)}.home-hero-panel__inner{max-width:1600px;margin:0 auto;padding:0 24px;box-sizing:border-box}.home-hero-panel__header{text-align:center;margin-bottom:36px}.home-hero-panel__title{color:var(--home-text);font-size:26px;font-weight:700;margin-bottom:10px}.home-hero-panel__subtitle{color:var(--home-text-muted);font-size:15px}.home-hero-panel__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.home-hero-panel__item{background:#fff;border-radius:20px;padding:24px;box-shadow:0 8px 24px #164da014;border:1px solid var(--home-border);position:relative;overflow:hidden;transition:all .3s ease}.home-hero-panel__item:hover{transform:translateY(-4px);box-shadow:0 16px 40px #164da024}.home-hero-panel__item-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}.home-hero-panel__item-title{color:var(--home-text);font-size:18px;font-weight:700;margin-bottom:8px}.home-hero-panel__item-desc{color:var(--home-text-muted);font-size:14px;line-height:1.6;margin-bottom:16px}.home-hero-panel__item-img{width:100%;height:120px;object-fit:cover;border-radius:12px}@media(max-width:1024px){.home-hero-section__inner{align-items:flex-start;text-align:left}.home-hero-section__stats{justify-content:center}.home-hero-section__visual{display:none}.home-hero-panel__grid{grid-template-columns:1fr}}@media(max-width:768px){.home-hero-section{padding:32px 16px 40px}.home-hero-section__inner{padding:0 16px;align-items:flex-start;text-align:left}.home-hero-section__title{font-size:24px!important}.home-hero-section__subtitle{font-size:13px!important;line-height:1.6!important}.home-hero-section__stats{gap:20px}.home-hero-section__stat-num{font-size:24px}}.micro-major-hero-panel{padding:40px 0 0;background:#fff}.micro-major-hero-panel__inner{max-width:1600px;margin:0 auto;padding:0 48px}.micro-major-hero-panel__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.micro-major-hero-panel__item{display:flex;flex-direction:column;gap:12px;background:var(--home-page-bg);border-radius:20px;padding:24px;box-shadow:0 4px 12px #164da00f}.micro-major-hero-panel__item-header{display:flex;align-items:center;gap:12px}.micro-major-hero-panel__item-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.micro-major-hero-panel__item-title{color:var(--home-text);font-size:16px;font-weight:700;margin-bottom:0}.micro-major-hero-panel__item-desc{color:var(--home-text-muted);font-size:13px;line-height:1.6;margin-bottom:0}.micro-major-hero-panel__item-img{width:100%;height:140px;object-fit:cover;border-radius:12px;object-position:center}.micro-major-filter{background:#fff;padding:24px 0 32px;border-bottom:none}.micro-major-filter__inner{max-width:1600px;margin:0 auto;display:flex;align-items:center;gap:32px;padding:0 48px}.micro-major-filter__left{display:flex;align-items:center;gap:16px;flex-shrink:0}.micro-major-filter__label{font-size:14px;font-weight:700;color:var(--home-text);white-space:nowrap}.micro-major-filter__schools{display:flex;gap:10px;flex-wrap:wrap}.micro-major-filter__school{padding:0 18px;height:38px;border-radius:19px;border:1.5px solid var(--home-border);background:#fff;color:var(--home-text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.micro-major-filter__school:hover{border-color:var(--home-primary);color:var(--home-primary);background:#f0f7ff;border-radius:19px}.micro-major-filter__school.is-active{border-color:transparent;border-radius:19px;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);color:#fff;box-shadow:0 6px 16px #1677ff47}.micro-major-filter__school.is-active{border-color:transparent;background:linear-gradient(135deg,var(--home-primary) 0%,var(--home-accent) 100%);color:#fff;box-shadow:0 6px 16px #1677ff47}.micro-major-filter__stat{display:flex;align-items:center;gap:4px;flex-shrink:0;font-size:13px;color:var(--home-text-muted);white-space:nowrap;padding-left:20px;border-left:1px solid var(--home-border)}.micro-major-filter__stat strong{color:var(--home-text);font-weight:700}.micro-major-filter__right{flex:1;max-width:400px;margin-left:auto}.micro-major-filter__search .ant-input-affix-wrapper{border-radius:24px!important;height:44px!important;padding:0 16px;border:2px solid var(--home-border)!important;background:#f8fbff}.micro-major-filter__search .ant-input-affix-wrapper:focus,.micro-major-filter__search .ant-input-affix-wrapper-focused{border-color:var(--home-primary)!important;box-shadow:0 0 0 3px #1677ff1a!important}@media(max-width:992px){.micro-major-filter__inner{flex-direction:column;align-items:stretch;gap:16px}.micro-major-filter__right{max-width:none;margin-left:0}.micro-major-filter__left{flex-direction:column;align-items:flex-start;gap:12px}.micro-major-filter__stat{width:100%;padding-left:0;border-left:none}}.portal-hero{position:relative;background:linear-gradient(180deg,#f3f8ff,#fff);padding:24px 24px 0}.portal-hero__shell{max-width:1600px;margin:0 auto}.portal-hero__grid{display:grid;grid-template-columns:220px minmax(0,1fr) 240px;gap:18px;align-items:stretch}.portal-hero__menu{display:flex;flex-direction:column;border-radius:16px;background:#fff;border:1px solid var(--home-border);box-shadow:0 10px 30px #164c9c14;overflow:hidden}.portal-hero__menu-header{padding:14px 18px 12px;background:linear-gradient(135deg,#f3f8ff,#e7f0fb);border-bottom:1px solid var(--home-border)}.portal-hero__menu-title{display:block;color:var(--home-text);font-size:15px;font-weight:700;margin-bottom:2px}.portal-hero__menu-subtitle{display:block;color:var(--home-text-muted);font-size:12px}.portal-hero__menu-list{list-style:none;padding:0 0 6px;margin:0;flex:1;max-height:360px;overflow-y:auto}.portal-hero__menu-group{list-style:none}.portal-hero__menu-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 18px;background:transparent;border:none;border-left:3px solid transparent;cursor:pointer;transition:all .2s ease;color:var(--home-text);font-size:14px;text-align:left}.portal-hero__menu-group.is-active>.portal-hero__menu-group-header{color:var(--home-primary-deep);font-weight:600;background:linear-gradient(90deg,#f0f7ff,#fff);border-left-color:var(--home-primary)}.portal-hero__menu-group.is-active>.portal-hero__menu-group-header:hover{background:linear-gradient(90deg,#e0efff,#f0f7ff)}.portal-hero__menu-group.is-active>.portal-hero__menu-group-header:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--home-primary);box-shadow:0 0 0 3px #1673e626;flex-shrink:0}.portal-hero__menu-group.is-empty>.portal-hero__menu-group-header{color:#b0bcd2;cursor:pointer}.portal-hero__menu-group-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-hero__menu-group-meta{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.portal-hero__menu-group-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;padding:0 6px;border-radius:9px;background:#eef6ff;color:var(--home-primary-deep);font-size:11px;font-weight:700}.portal-hero__menu-group.is-empty .portal-hero__menu-group-count{background:#f2f4f8;color:#98a2b3}.portal-hero__menu-group-caret{font-size:11px;color:#98a2b3;transition:transform .25s ease}.portal-hero__menu-group.is-open>.portal-hero__menu-group-header .portal-hero__menu-group-caret{transform:rotate(180deg);color:var(--home-primary)}.portal-hero__menu-group-children{list-style:none;padding:0;margin:0;background:#fafcff;border-left:3px solid transparent}.portal-hero__menu-item{display:flex;align-items:center;padding:9px 18px;cursor:pointer;transition:background-color .15s ease,color .15s ease;color:var(--home-text);font-size:14px}.portal-hero__menu-item:hover{background-color:#f5f8fc;color:var(--home-primary-deep)}.portal-hero__menu-item.is-active{color:var(--home-primary-deep);font-weight:600;background-color:#f5f8fc}.portal-hero__menu-item.is-active:hover{background-color:#ebf2fa}.portal-hero__menu-item.is-empty{color:#b0bcd2;cursor:not-allowed}.portal-hero__menu-soon{flex-shrink:0;font-size:10px;font-weight:500;padding:1px 6px;border-radius:8px;background:#f2f4f8;color:#98a2b3;letter-spacing:.5px}.portal-hero__menu-name{flex:1;display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}.portal-hero__menu-name-text{overflow:hidden;text-overflow:ellipsis}.portal-hero__menu-count{flex-shrink:0;font-size:12px;color:#98a2b3;font-weight:400;font-variant-numeric:tabular-nums}.portal-hero__menu-arrow{margin-left:auto;font-size:12px!important;color:#c4ccda;transition:transform .15s ease,color .15s ease}.portal-hero__menu-item:hover .portal-hero__menu-arrow{color:var(--home-primary);transform:translate(2px)}.portal-hero__menu-more{display:flex;align-items:center;justify-content:center;gap:4px;padding:12px;background:#f7fbff;border:none;border-top:1px solid var(--home-border);color:var(--home-primary-deep);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.portal-hero__menu-more:hover{background:#eaf3ff}.portal-hero__slider{position:relative;border-radius:20px;overflow:hidden;height:420px;box-shadow:0 14px 40px #164c9c24}.portal-hero__slides{display:flex;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1)}.portal-hero__slide{position:relative;flex-shrink:0;width:100%;height:100%;overflow:hidden;display:flex;align-items:center}.portal-hero__slide-content{position:relative;z-index:1;padding:0 56px;max-width:720px}.portal-hero__slide-badge{display:inline-block;padding:4px 14px;border-radius:999px;background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:13px;font-weight:600;margin-bottom:18px;border:1px solid rgba(255,255,255,.25)}.portal-hero__slide-title{color:#fff!important;font-size:42px!important;font-weight:800!important;line-height:1.2!important;margin:0 0 14px!important;text-shadow:0 6px 18px rgba(3,30,80,.32)}.portal-hero__slide-subtitle{color:#ffffffeb!important;font-size:16px!important;line-height:1.7!important;margin:0 0 28px!important;text-shadow:0 2px 8px rgba(3,30,80,.2)}.portal-hero__slide-cta{background:#fff!important;border:none!important;color:var(--home-primary-deep)!important;font-weight:700!important;height:44px!important;padding:0 28px!important;box-shadow:0 10px 24px #0000002e!important}.portal-hero__arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;background:#ffffff40;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease;z-index:2;opacity:0}.portal-hero__slider:hover .portal-hero__arrow{opacity:1}.portal-hero__arrow:hover{background:#ffffff73}.portal-hero__arrow--prev{left:16px}.portal-hero__arrow--next{right:16px}.portal-hero__indicators{position:absolute;bottom:18px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:2}.portal-hero__indicator{width:24px;height:4px;border-radius:2px;border:none;background:#ffffff73;cursor:pointer;transition:all .3s ease}.portal-hero__indicator.is-active{width:36px;background:#fff}.portal-hero__stats{display:flex;flex-direction:column;gap:12px}.portal-hero__stat-card{flex:1;display:flex;flex-direction:column;justify-content:center;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid var(--home-border);box-shadow:0 6px 20px #164c9c0f;transition:all .2s ease}.portal-hero__stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #164c9c1f}.portal-hero__stat-num{font-size:28px;font-weight:800;background:linear-gradient(135deg,#1677ff,#2fa8ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;line-height:1.1;margin-bottom:4px}.portal-hero__stat-label{color:var(--home-text-muted);font-size:13px}.portal-hero--mobile{background:linear-gradient(180deg,#f3f8ff,#fff);padding:0}.portal-hero__mobile-banner{position:relative;height:200px;background:linear-gradient(135deg,#0b4ca8,#1a6dd8,#2fa8ff);overflow:hidden}.portal-hero__mobile-content{position:relative;z-index:1;padding:24px 20px;color:#fff;height:100%;display:flex;flex-direction:column;justify-content:center}.portal-hero__mobile-badge{display:inline-block;align-self:flex-start;padding:3px 10px;border-radius:999px;background:#ffffff38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:11px;font-weight:600;margin-bottom:8px;border:1px solid rgba(255,255,255,.25)}.portal-hero__mobile-title{color:#fff!important;font-size:22px!important;font-weight:800!important;margin:0 0 6px!important;line-height:1.25!important;text-shadow:0 2px 8px rgba(3,30,80,.24)}.portal-hero__mobile-subtitle{color:#ffffffeb!important;font-size:13px!important;line-height:1.55!important;margin:0 0 14px!important}.portal-hero__mobile-cta{align-self:flex-start;background:#fff!important;border:none!important;color:var(--home-primary-deep)!important;font-weight:600!important;height:32px!important;padding:0 16px!important;font-size:13px!important}.portal-hero__mobile-dots{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:2}.portal-hero__mobile-dot{width:16px;height:3px;border-radius:2px;background:#fff6;cursor:pointer;transition:all .3s ease}.portal-hero__mobile-dot.is-active{width:24px;background:#fff}.portal-hero__mobile-search{padding:12px 16px 4px;background:transparent}.portal-hero__mobile-search-bar{display:flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:4px 4px 4px 16px;box-shadow:0 6px 18px #164c9c14;border:1px solid var(--home-border)}.portal-hero__mobile-search-bar input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:var(--home-text);padding:8px 0}.portal-hero__mobile-search-bar input::placeholder{color:#97a3bc}.portal-hero__mobile-search-bar button{height:32px;padding:0 16px;font-size:13px}.portal-hero__mobile-subjects{padding:12px 0 16px;background:transparent}.portal-hero__mobile-subjects-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;margin-bottom:8px}.portal-hero__mobile-subjects-title{color:var(--home-text);font-size:15px;font-weight:700}.portal-hero__mobile-subjects-header a{color:var(--home-primary);font-size:13px;cursor:pointer}.portal-hero__mobile-subjects-scroll{display:flex;gap:8px;padding:4px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.portal-hero__mobile-subjects-scroll::-webkit-scrollbar{display:none}.portal-hero__mobile-subject{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--home-border);color:var(--home-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.portal-hero__mobile-subject:active{background:#eaf3ff;border-color:var(--home-primary)}.portal-hero__mobile-subject small{font-size:11px;color:var(--home-primary);background:#eaf3ff;padding:0 5px;border-radius:8px;font-weight:700}.portal-hero__mobile-subject.is-empty{opacity:.5;cursor:not-allowed}.portal-hero__mobile-subject.is-empty small{background:#f0f0f0;color:#999}.portal-subject-section{margin-bottom:8px;padding:4px 0;border-radius:0;background:transparent;border:none;box-shadow:none}.portal-subject-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.portal-subject-section__title-wrap{display:flex;align-items:center;gap:10px}.portal-subject-section__icon{width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2177ff24,#3daaff38);color:var(--home-primary);font-size:16px}.portal-subject-section__title{margin:0!important;color:var(--home-text)!important;font-size:22px!important}.portal-subject-section__count{margin:0!important;padding:3px 10px!important;border-radius:999px!important;background:#eaf3ff!important;border:none!important;color:var(--home-primary-deep)!important;font-weight:600!important;font-size:12px!important}.portal-subject-section__more{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:999px;border:none;background:#eaf3ff;color:var(--home-primary-deep);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.portal-subject-section__more:hover{background:#d6e9ff;transform:translate(2px)}.portal-subject-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.portal-course-card__teacher{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.portal-course-card__teacher .ant-typography{color:#7a8dae!important}.portal-course-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid #f0f4fa;margin-top:auto}@media(max-width:1200px){.portal-hero__grid{grid-template-columns:200px minmax(0,1fr)}.portal-hero__stats{display:none}.portal-hero__slide-title{font-size:32px!important}}@media(max-width:992px){.portal-hero{padding:20px 20px 0}.portal-hero__grid{grid-template-columns:180px minmax(0,1fr);gap:14px}.portal-hero__menu-item{padding:8px 14px;font-size:13px}.portal-hero__slide-title{font-size:28px!important}.portal-hero__slide-subtitle{font-size:14px!important}.portal-hero__slider{height:360px}.portal-subject-section{padding:18px}.portal-subject-section__title{font-size:18px!important}.portal-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:768px){.portal-hero{padding:0}.portal-subject-section{border-radius:14px;padding:14px;margin-bottom:16px}.portal-subject-section__title{font-size:16px!important}.portal-subject-section__icon{width:28px;height:28px;border-radius:8px;font-size:13px}.portal-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media(max-width:576px){.portal-subject-grid{grid-template-columns:1fr}}.mobile-nav-list{display:flex;flex-direction:column;gap:4px}.mobile-nav-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:none;background:#f7fbff;border-radius:12px;color:var(--home-text);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.mobile-nav-item:active{background:#eaf3ff;transform:scale(.98)}.mobile-nav-item.is-active{background:linear-gradient(135deg,#1677ff,#2fa8ff);color:#fff}.mobile-nav-item.is-active span{color:#fff}.mobile-nav-item .anticon{color:inherit;opacity:.5}.mobile-nav-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid #edf3ff}@media(max-width:768px){.home-header{height:56px;line-height:56px;padding:0 12px}.home-header__inner{gap:6px;justify-content:space-between}.home-header__left{flex:0 1 auto;min-width:0}.home-brand{gap:8px}.home-brand__title{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.home-brand__logo{height:32px;flex-shrink:0}.home-header__actions{flex-shrink:0;display:flex;align-items:center;gap:2px;margin-left:auto}.home-header__search-btn{color:#fff;background:transparent;border:none;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:18px}.home-header__login-text{color:#fff;background:transparent;border:none;height:32px;padding:0 10px;font-size:14px;font-weight:600;white-space:nowrap}}.mobile-promo-banner{padding:12px 12px 0;background:transparent}.mobile-promo-banner__gradient{position:relative;overflow:hidden;border-radius:18px;padding:18px 18px 22px;color:#fff;background:radial-gradient(circle at 100% 0%,rgba(255,255,255,.18) 0%,transparent 55%),linear-gradient(135deg,#2155d9,#3a6fe0,#5b8bf3);box-shadow:0 14px 32px #2155d947;min-height:200px}.mobile-promo-banner__pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.mobile-promo-banner__pill{padding:4px 10px;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);color:#fff;font-size:11px;font-weight:600;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap}.mobile-promo-banner__title{margin:0 0 6px;font-size:22px;font-weight:800;color:#fff;line-height:1.25;text-shadow:0 2px 6px rgba(7,33,90,.22)}.mobile-promo-banner__subtitle{margin:0 0 14px;font-size:13px;color:#ffffffe6}.mobile-promo-banner__cta{display:block;width:100%;max-width:240px;margin:12px auto 0;background:linear-gradient(135deg,#ffd23f,#ffb400);color:#6b3d00;border:none;padding:9px 18px;border-radius:999px;font-size:14px;font-weight:700;box-shadow:0 4px 10px #78480038;cursor:pointer;text-align:center}.mobile-subject-grid-section{padding:16px 12px 4px;background:transparent}.mobile-subject-grid-section__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px 4px;padding:16px 6px;background:#fff;border-radius:16px;box-shadow:0 6px 18px #164c9c0f}.mobile-subject-grid-section__item{display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:transparent;padding:4px 2px;cursor:pointer;min-width:0}.mobile-subject-grid-section__icon{width:42px;height:42px;border-radius:50%;background:var(--tile-bg, #5b8ff9);color:#fff;font-size:19px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0000001a;flex-shrink:0}.mobile-subject-grid-section__label{font-size:12px;color:#333;text-align:center;line-height:1.3;width:100%;word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mobile-subject-grid-section__count{font-size:10px;color:#999;text-align:center;line-height:1}.national-quality-section{padding:16px 12px 24px;background:transparent}.national-quality-section__header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px}.national-quality-section__title{margin:0;font-size:18px;font-weight:800;color:var(--home-text)}.national-quality-section__more{font-size:13px;color:var(--home-primary);cursor:pointer;display:inline-flex;align-items:center;gap:2px}.national-quality-section__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.nqc-card{display:block;border:none;padding:0;background:transparent;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #164c9c14;text-align:left;cursor:pointer;width:100%}.nqc-card__cover{position:relative;aspect-ratio:4 / 3;background-size:cover;background-position:center;background-color:#d9e7ff}.nqc-card__cover:after{content:"";position:absolute;left:0;right:0;bottom:0;height:56%;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.55) 100%)}.nqc-card__enrolled-badge{position:absolute;left:8px;top:8px;z-index:2;padding:2px 8px;border-radius:999px;background:linear-gradient(135deg,#ff5a5f,#ff8a3d);color:#fff;font-size:10px;font-weight:700}.nqc-card__cover-fallback{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;background:#d9e7ff;top:0;left:0}.nqc-card__cover-fallback{right:0;bottom:0}.nqc-card__cover-fallback .anticon{font-size:28px;color:#b0c8e8}.nqc-card__cover-title{position:absolute;left:8px;right:8px;bottom:6px;z-index:2;color:#fff;font-size:12px;font-weight:700;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.45);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:32px;overflow-wrap:break-word;word-break:break-word}.nqc-card__title{padding:10px 10px 4px;box-sizing:border-box;font-size:14px;font-weight:700;color:var(--home-text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;max-height:38px;overflow-wrap:break-word;word-break:break-word}.nqc-card__org,.nqc-card__teacher{padding:0 10px;font-size:11px;color:#8a96ad;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.nqc-card__teacher{padding-bottom:10px}@media(min-width:768px){.mobile-promo-banner,.mobile-subject-grid-section,.national-quality-section{display:none}}@media(max-width:1024px){.xyedu-quick-entry,.xyedu-subject-panels,.xyedu-portal-main,.xyedu-hero{display:none!important}}.home-immersive .home-header{position:absolute;top:0;left:0;right:0;background:linear-gradient(180deg,rgba(4,22,55,.55) 0%,rgba(4,22,55,.15) 70%,transparent 100%);box-shadow:none;z-index:10}.home-immersive .ant-layout-content{min-height:100vh;display:flex;flex-direction:column}.home-immersive .xyedu-hero{flex:none;padding:110px 48px 56px;min-height:600px;display:flex;align-items:center;justify-content:center}.home-immersive .xyedu-hero__slide{min-height:240px;gap:26px}.home-immersive .xyedu-hero__title{font-size:clamp(38px,4.5vw,60px);letter-spacing:.04em}.home-immersive .xyedu-hero__accent{display:none}.home-immersive .xyedu-hero__indicators{position:absolute;bottom:20px;left:0;right:0;margin-top:0}.home-immersive .xyedu-hero__indicator{width:44px;height:6px;border-radius:999px;background:#ffffff59}.home-immersive .xyedu-hero__indicator.is-active{width:44px;background:#fff;box-shadow:0 0 12px #fffc}.home-immersive .xyedu-portal-main{margin-top:16px;position:relative;z-index:5;padding-bottom:16px}.xyedu-hero{position:relative;overflow:hidden;padding:72px 48px 60px;min-height:420px;display:flex;align-items:center;justify-content:center;background:var(--hero-image, url(/assets/home-portal-hero-bg.png)) center/cover no-repeat,var(--hero-bg, linear-gradient(135deg, #0E5BB8 0%, #1F8FE0 60%, #42C2F5 100%));transition:background .6s ease;isolation:isolate}.xyedu-hero:before{content:"";position:absolute;top:0;left:0;background:var(--hero-overlay, none);z-index:0;pointer-events:none;transition:background .6s ease}.xyedu-hero:before{right:0;bottom:0}.xyedu-hero:after{display:none}.xyedu-hero__shell{position:relative;z-index:1;max-width:1200px;width:100%;margin:0 auto;text-align:center}.xyedu-hero__slide{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:220px;animation:xyedu-hero-fade .6s ease}@keyframes xyedu-hero-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.xyedu-hero__accent{display:inline-flex;align-items:center;gap:8px;padding:6px 18px;border-radius:999px;background:linear-gradient(135deg,#ffffff2e,#ffffff14);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.xyedu-hero__title{margin:0;font-size:44px;font-weight:800;line-height:1.2;color:#fff;letter-spacing:.02em;text-shadow:0 2px 8px rgba(8,27,62,.55),0 0 20px rgba(8,27,62,.35);max-width:980px}.xyedu-hero__subtitle{margin:0;font-size:18px;font-weight:500;color:#fffffff5;letter-spacing:.02em;max-width:720px;text-shadow:0 1px 4px rgba(8,27,62,.55),0 0 12px rgba(8,27,62,.3)}.xyedu-hero__indicators{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:22px}.xyedu-hero__indicator{width:10px;height:10px;border-radius:50%;border:none;background:#fff6;cursor:pointer;padding:0;transition:width .3s ease,background .3s ease}.xyedu-hero__indicator.is-active{width:28px;border-radius:999px;background:#fff}.xyedu-portal-main{position:relative;padding:32px 0 8px;background:transparent}.xyedu-portal-main__shell{max-width:none;margin:0 180px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:24px;align-items:stretch;background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.xyedu-portal-main__left{background:#fff;border:1px solid #e4e9f1;box-shadow:0 6px 24px #1e40780f;border-radius:16px;padding:12px 16px;display:flex;flex-direction:column;height:auto;min-height:0;align-self:stretch}.xyedu-portal-main__left-header{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:0 4px}.xyedu-portal-main__left-icon{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1677ff,#2fa8ff);color:#fff;font-size:18px;flex-shrink:0}.xyedu-portal-main__left-title{margin:0;font-size:18px;font-weight:800;color:#16386f;letter-spacing:.02em}.xyedu-portal-main__right{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;gap:10px 20px;height:100%}.xyedu-quick-entry{position:relative;background:transparent;flex:1;display:flex;flex-direction:column;min-height:0}.xyedu-quick-entry__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;flex:1;height:auto;min-height:200px;align-content:stretch}@supports not (gap: 6px){.xyedu-quick-entry__grid{display:flex;flex-wrap:wrap;margin:-3px}.xyedu-quick-entry__card{width:calc(25% - 6px);margin:3px}}.xyedu-quick-entry__card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:0 2px 2px;border:none;border-radius:0;background:transparent;cursor:pointer;transition:transform .25s ease;position:relative;overflow:hidden;min-width:0;height:100%}.xyedu-quick-entry__card:hover{transform:translateY(-3px);box-shadow:none;background:transparent}.xyedu-quick-entry__card:hover .xyedu-quick-entry__icon{transform:scale(1.1)}.xyedu-quick-entry__icon{width:auto;height:auto;border-radius:0;display:inline-flex;align-items:center;justify-content:center;color:var(--entry-color, #2f7cf6);font-size:48px;box-shadow:none;background:transparent;transition:transform .25s ease;position:relative;z-index:1}.xyedu-quick-entry__img{width:64px;height:64px;object-fit:contain;display:block;-webkit-user-select:none;user-select:none}.xyedu-quick-entry__text{display:flex;flex-direction:column;align-items:center;gap:0;position:relative;z-index:1;min-width:0;max-width:100%}.xyedu-quick-entry__label{font-size:14px;font-weight:700;color:#16386f;letter-spacing:0;text-align:center;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;max-width:100%}.xyedu-quick-entry__subtitle{display:none}.xyedu-subject-panel{position:relative;padding:10px 14px;border-radius:16px;background:#fff;border:1px solid #e4e9f1;box-shadow:0 6px 24px #1e40780f;transition:none;display:flex;flex-direction:column;gap:6px;min-width:0}.xyedu-subject-panel:hover{transform:none;box-shadow:none}.xyedu-subject-panel__header{display:flex;align-items:center;gap:10px;flex-shrink:0;width:100%;padding:0;margin:0;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:opacity .2s ease}.xyedu-subject-panel__header:hover{opacity:.85}.xyedu-subject-panel__header:focus-visible{outline:2px solid var(--accent-color, #1677ff);outline-offset:2px;border-radius:6px}.xyedu-subject-panel__icon{width:auto;height:auto;border-radius:0;display:inline-flex;align-items:center;justify-content:center;color:var(--accent-color, #2f7cf6);background:transparent;font-size:28px;flex-shrink:0}.xyedu-subject-panel__img{width:32px;height:32px;border-radius:9px;object-fit:contain;display:block;-webkit-user-select:none;user-select:none}.xyedu-subject-panel--blue .xyedu-subject-panel__icon{background:transparent;color:#2f7cf6}.xyedu-subject-panel--purple .xyedu-subject-panel__icon{background:transparent;color:#7b61ff}.xyedu-subject-panel--orange .xyedu-subject-panel__icon{background:transparent;color:#ff8a3d}.xyedu-subject-panel--green .xyedu-subject-panel__icon{background:transparent;color:#16b67f}.xyedu-subject-panel__title{margin:0;font-size:19px;font-weight:800;color:#16386f;letter-spacing:.02em;flex:1;min-width:0}.xyedu-subject-panel__chips{display:flex;align-items:center;gap:8px 14px;flex:1;min-width:0;flex-wrap:nowrap;overflow:hidden;white-space:nowrap;mask-image:linear-gradient(90deg,#000 0%,#000 calc(100% - 48px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 calc(100% - 48px),transparent 100%)}.xyedu-subject-panel__chip{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap;border:none;background:transparent;cursor:pointer;font-size:14px;color:#4a5e80;font-weight:500;padding:2px 0;transition:color .2s ease}.xyedu-subject-panel__chip.is-empty{color:#8ba0bd;font-weight:400;cursor:not-allowed;opacity:.6}.xyedu-subject-panel .xyedu-subject-panel__chip.is-empty:hover,.xyedu-subject-panel .xyedu-subject-panel__chip.is-empty:focus-visible{color:#8ba0bd}.xyedu-subject-panel__count{display:none}.xyedu-subject-panel__chip:hover,.xyedu-subject-panel--blue .xyedu-subject-panel__chip:hover{color:#1677ff}.xyedu-subject-panel--purple .xyedu-subject-panel__chip:hover{color:#7b61ff}.xyedu-subject-panel--orange .xyedu-subject-panel__chip:hover{color:#ff8a3d}.xyedu-subject-panel--green .xyedu-subject-panel__chip:hover{color:#16b67f}.xyedu-subject-panel__empty{font-size:13px;color:#95a8c2;font-weight:500;padding:2px 0}.xyedu-subject-panel__more{display:inline-flex;align-items:center;font-size:16px;color:#1677ff;transition:transform .2s ease,color .2s ease;flex-shrink:0}.xyedu-subject-panel__header:hover .xyedu-subject-panel__more{transform:translate(3px)}.xyedu-subject-panel--purple .xyedu-subject-panel__more{color:#7b61ff}.xyedu-subject-panel--orange .xyedu-subject-panel__more{color:#ff8a3d}.xyedu-subject-panel--green .xyedu-subject-panel__more{color:#16b67f}.about-page__grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:44px;align-items:start}.about-page__side{position:sticky;top:96px}@media(max-width:1024px){.about-page__grid{grid-template-columns:minmax(0,1fr);gap:32px}.about-page__side{position:static}}.cl-layout{display:grid;grid-template-columns:236px minmax(0,1fr);gap:30px;align-items:start}.cl-main{min-width:0}.cl-sidebar{position:sticky;top:88px;display:flex;flex-direction:column;gap:24px}.cl-side-group__title{font-size:13px;font-weight:650;color:#263f63;margin-bottom:10px}.cl-side-list{display:flex;flex-direction:column;gap:2px}.cl-side-list--scroll{max-height:216px;overflow-y:auto;padding-right:4px}.cl-side-link{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#43536b;font-size:14px;line-height:1.4;cursor:pointer;text-align:left;transition:background .15s,color .15s}.cl-side-link:hover{background:#f5f7fa;color:#1a304b}.cl-side-link.is-active{background:#f1f4f9;color:#1a304b;font-weight:650}.cl-side-link.is-empty{color:#b6c0cf}.cl-side-link__count{font-size:12px;color:#94a3b8;font-variant-numeric:tabular-nums}.cl-side-link.is-active .cl-side-link__count{color:#64748b}.cl-side-toggle{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:#64748b;cursor:pointer}.cl-side-toggle__text{font-size:12px!important;color:#64748b!important}.cl-cc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line, #e3e9f1);border-radius:14px;padding:24px;color:#202f47}.cl-cc.is-enrolled{border-color:#c7d8fb;box-shadow:0 8px 24px #2859df0f}.cl-cc__cover{display:flex;flex-direction:column;justify-content:space-between;min-height:145px;padding:25px;border-radius:10px;background:#e9efff;color:#31508d;cursor:pointer;overflow:hidden}.cl-cc__cover.alt{background:#e7f4f0;color:#246958}.cl-cc__cover.third{background:#f5edfa;color:#75538b}.cl-cc__cover small{font-size:10px;letter-spacing:2px;opacity:.65}.cl-cc__cover b{font-size:24px;font-weight:600;line-height:1.45;max-width:240px}.cl-cc__cover-sub{font-size:12px;opacity:.8}.cl-cc h3{font-size:20px;font-weight:650;line-height:1.5;margin:18px 0 7px;color:#1a304b}.cl-cc h3 a{color:inherit}.cl-cc__meta{font-size:14px;color:#64748b;margin:0 0 6px}.cl-cc p{font-size:14px;line-height:1.7;color:#64748b;margin:0;min-height:3.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cl-cc__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.cl-cc__tag{display:inline-block;font-size:12px;font-weight:600;color:#202f47;white-space:nowrap}.cl-cc__tag.is-enrolled{color:#202f47}.cl-cc__btn{border:1px solid var(--line, #e3e9f1);background:#fff;padding:7px 12px;border-radius:8px;color:#202f47;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.cl-cc__btn:hover{background:#f5f7fa;border-color:#d9e1ec;color:#202f47}.cl-result{font-size:13px;color:#64748b;padding:4px 0 16px}.cl-result strong{color:#202f47}@media(max-width:992px){.cl-layout{grid-template-columns:minmax(0,1fr)}.cl-sidebar{display:none}}.cl-search-row{display:flex;align-items:center;gap:24px}.cl-search-row .cl-search-input{flex:1;min-width:0}.cl-cat-list{display:flex;align-items:center;gap:20px;flex-shrink:0}.cl-cat-item{display:inline-flex;align-items:baseline;gap:6px;border:0;background:transparent;padding:2px 0;color:#64748b;font-size:14px;cursor:pointer;white-space:nowrap;transition:color .15s}.cl-cat-item:hover{color:#1a304b}.cl-cat-item.is-active{color:#1a304b;font-weight:650}.cl-cat-item__count{font-size:12px;color:#94a3b8;font-variant-numeric:tabular-nums}.cl-cat-item.is-active .cl-cat-item__count{color:#64748b}@media(max-width:992px){.cl-search-row{gap:0}.cl-cat-list{display:none}}.cl-page .cl-sidebar,.cl-page .cl-side-list--scroll,.cl-page .cl-main{scrollbar-width:thin;scrollbar-color:transparent transparent}.cl-page .cl-sidebar:hover,.cl-page .cl-side-list--scroll:hover,.cl-page .cl-main:hover{scrollbar-color:#d5dde8 transparent}.cl-page .cl-sidebar::-webkit-scrollbar,.cl-page .cl-side-list--scroll::-webkit-scrollbar,.cl-page .cl-main::-webkit-scrollbar{width:6px;height:6px}.cl-page .cl-sidebar::-webkit-scrollbar-track,.cl-page .cl-side-list--scroll::-webkit-scrollbar-track,.cl-page .cl-main::-webkit-scrollbar-track{background:transparent}.cl-page .cl-sidebar::-webkit-scrollbar-thumb,.cl-page .cl-side-list--scroll::-webkit-scrollbar-thumb,.cl-page .cl-main::-webkit-scrollbar-thumb{background:transparent;border-radius:999px}.cl-page .cl-sidebar:hover::-webkit-scrollbar-thumb,.cl-page .cl-side-list--scroll:hover::-webkit-scrollbar-thumb,.cl-page .cl-main:hover::-webkit-scrollbar-thumb{background:#d5dde8}.cl-page .cl-sidebar::-webkit-scrollbar-thumb:hover,.cl-page .cl-side-list--scroll::-webkit-scrollbar-thumb:hover,.cl-page .cl-main::-webkit-scrollbar-thumb:hover{background:#c2ccd9}.major-heading-tools{align-items:center}.major-heading-tools .major-school-select,.major-search{display:inline-flex;align-items:center}.major-search input{vertical-align:middle}.major-search .ant-input-affix-wrapper{align-items:center;width:280px}.cl-pagination .ant-pagination-item,.cl-pagination .ant-pagination-prev .ant-pagination-item-link,.cl-pagination .ant-pagination-next .ant-pagination-item-link{border-radius:8px}.cl-pagination .ant-pagination-item a,.cl-pagination .ant-pagination-prev .ant-pagination-item-link,.cl-pagination .ant-pagination-next .ant-pagination-item-link{color:#202f47}.cl-pagination .ant-pagination-item:hover,.cl-pagination .ant-pagination-prev:hover .ant-pagination-item-link,.cl-pagination .ant-pagination-next:hover .ant-pagination-item-link{border-color:#2859df}.cl-pagination .ant-pagination-item:hover a,.cl-pagination .ant-pagination-prev:hover .ant-pagination-item-link,.cl-pagination .ant-pagination-next:hover .ant-pagination-item-link{color:#2859df}.cl-pagination .ant-pagination-item-active{background:#2859df;border-color:#2859df}.cl-pagination .ant-pagination-item-active a{color:#fff!important}.cl-pagination .ant-pagination-disabled .ant-pagination-item-link{color:#c0c8d4}.major-help a{color:#2859df;font-weight:600}.major-help a:hover{color:#1846bc}.cl-cc__btn.is-enrolled{background:#fff;border-color:#2859df;color:#2859df;font-weight:700}.cl-cc__btn.is-enrolled:hover{background:#f3f7ff;border-color:#1846bc;color:#1846bc}.module-switcher{display:inline-flex;align-items:center;gap:30px;flex-shrink:0}.module-switcher__item{position:relative;border:0;background:transparent;padding:8px 2px;color:#202f47;font-size:14px;font-weight:500;letter-spacing:.3px;line-height:1.4;cursor:pointer;white-space:nowrap;transition:color .16s ease}.module-switcher__item:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:#2859df;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.module-switcher__item:hover:after,.module-switcher__item:focus-visible:after{transform:scaleX(1)}.module-switcher__item.is-active{color:#142744;font-weight:700;cursor:default}.module-switcher__item.is-active:after{transform:scaleX(1)}@media(max-width:768px){.module-switcher{gap:20px}.module-switcher__item{font-size:14px}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;-webkit-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.docx-preview{line-height:1.75;color:#1f2937;font-size:14px;word-break:break-word}.docx-preview h1,.docx-preview h2,.docx-preview h3,.docx-preview h4,.docx-preview h5,.docx-preview h6{margin:20px 0 10px;font-weight:600;line-height:1.4}.docx-preview h1.docx-title{font-size:22px;text-align:center;margin-bottom:18px}.docx-preview h2{font-size:18px}.docx-preview h3{font-size:16px}.docx-preview h4{font-size:15px}.docx-preview p{margin:0 0 10px}.docx-preview img{max-width:100%;height:auto;border-radius:4px}.docx-preview table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}.docx-preview table th,.docx-preview table td{border:1px solid #e5e7eb;padding:6px 10px;text-align:left}.docx-preview table th{background:#f5f7fa;font-weight:600}.docx-preview ul,.docx-preview ol{padding-left:24px;margin:0 0 10px}.docx-preview blockquote{margin:12px 0;padding:6px 14px;border-left:3px solid #d9d9d9;color:#4b5563;background:#fafafa}.teacher-dashboard{--td-blue: #2859df;--td-navy: #142744;--td-ink: #202f47;--td-muted: #64748b;--td-line: #e3e9f1;--td-radius: 14px;color:var(--td-ink);width:100%;max-width:1700px;margin:0 auto;padding:26px 34px 50px}.teacher-dashboard .page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.teacher-dashboard .page-head h1{font-size:29px;font-weight:650;letter-spacing:-.5px;line-height:1.5;color:var(--td-ink);margin:0}.teacher-dashboard .page-head p{font-size:14px;color:var(--td-muted);margin:6px 0 0}.teacher-dashboard .row{display:flex;align-items:center;gap:12px}.teacher-dashboard .grid{display:grid;gap:20px}.teacher-dashboard .stats{grid-template-columns:repeat(4,1fr);margin-bottom:24px}.teacher-dashboard .two{grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr)}.teacher-dashboard .three{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-dashboard .card{background:#fff;border:1px solid var(--td-line);border-radius:var(--td-radius);padding:24px;min-width:0}.teacher-dashboard .card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.teacher-dashboard .card-title h2{font-size:20px;font-weight:650;color:var(--td-ink);margin:0}.teacher-dashboard .stat{position:relative;padding:20px 23px}.teacher-dashboard .stat small{color:var(--td-muted);font-size:13px}.teacher-dashboard .stat .number{font-size:32px;font-weight:650;line-height:1.5;margin:8px 0;color:var(--td-ink);font-variant-numeric:tabular-nums}.teacher-dashboard .stat .number small{font-weight:400;margin-left:5px}.teacher-dashboard .stat-icon{position:absolute;right:22px;top:22px;color:var(--td-blue);background:#edf2ff;padding:8px;border-radius:9px;line-height:1;display:inline-flex}.teacher-dashboard .tag{display:inline-block;border-radius:5px;padding:3px 9px;background:#eaf6f0;color:#137b62;font-size:12px;white-space:nowrap}.teacher-dashboard .tag.blue{background:#edf1ff;color:var(--td-blue)}.teacher-dashboard .chart{display:flex;align-items:flex-end;height:170px;gap:18px;padding:15px 12px 0;border-bottom:1px solid var(--td-line);margin-bottom:30px}.teacher-dashboard .bar{flex:1;height:var(--h);background:#5e83ef;border-radius:5px 5px 0 0;position:relative;min-width:12px;cursor:pointer;transition:transform .15s ease,background .15s ease,box-shadow .15s ease,filter .15s ease}.teacher-dashboard .bar:nth-child(2n){background:#b8cafb}.teacher-dashboard .bar:hover{background:var(--td-blue);transform:translateY(-3px);box-shadow:0 8px 16px #5e83ef59;filter:brightness(1.05)}.teacher-dashboard .bar:hover span{color:var(--td-blue);font-weight:600}.teacher-dashboard .bar span{position:absolute;bottom:-29px;font-size:12px;color:var(--td-muted);width:100%;text-align:center}.teacher-dashboard .legend{display:flex;gap:18px;color:var(--td-muted);font-size:12px;margin-top:15px}.teacher-dashboard .item{padding:15px 0;border-bottom:1px solid #edf0f5;display:flex;justify-content:space-between;gap:15px;align-items:center}.teacher-dashboard .item:last-child{border:0}.teacher-dashboard .item h3{font-size:17px;font-weight:600;color:var(--td-ink);margin:0}.teacher-dashboard .item p{font-size:14px;color:var(--td-muted);margin:4px 0 0}.teacher-dashboard .item-number{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:#f0f4fc;color:var(--td-blue);flex-shrink:0;font-weight:600}.teacher-dashboard .todo-arrow{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:var(--td-muted);font-size:15px;cursor:pointer;transition:all .16s ease}.teacher-dashboard .todo-arrow:hover{color:#fff;background:var(--td-blue);transform:translate(2px)}.teacher-dashboard .catalog-title{display:flex;justify-content:space-between;align-items:center;margin:30px 0 20px}.teacher-dashboard .catalog-title h2{font-size:20px;font-weight:650;color:var(--td-ink);margin:0}.teacher-dashboard a{color:var(--td-blue);text-decoration:none;cursor:pointer}.teacher-dashboard a:hover{text-decoration:underline}.teacher-dashboard .course-cover{background:#e9efff;color:#31508d;padding:25px;border-radius:10px;min-height:145px;display:flex;flex-direction:column;justify-content:space-between}.teacher-dashboard .course-cover.alt{background:#e7f4f0;color:#246958}.teacher-dashboard .course-cover.third{background:#f5edfa;color:#75538b}.teacher-dashboard .course-cover b{font-size:24px;max-width:240px;line-height:1.45}.teacher-dashboard .course-cover small{font-size:13px;color:var(--td-muted)}.teacher-dashboard .course-cover>span{font-size:12px}.teacher-dashboard .course-card h3{margin:18px 0 7px;font-size:17px;font-weight:650;color:var(--td-ink)}.teacher-dashboard .course-card p{font-size:14px;color:var(--td-muted);margin:0}.teacher-dashboard .course-card .row{justify-content:space-between;margin-top:15px}.teacher-dashboard .course-card .course-card-desc{margin:8px 0 0;min-height:3.2em;line-height:1.6;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis}.teacher-dashboard .ant-btn{border-radius:8px;min-height:40px;padding:0 16px;font-weight:400}.teacher-dashboard .ant-btn-default{background:#fff;border-color:var(--td-line);color:var(--td-ink)}.teacher-dashboard .ant-btn-default:not(:disabled):hover{background:#edf2ff;border-color:#c6d3f7;color:var(--td-ink)}@media(max-width:1100px){.teacher-dashboard{padding:22px 22px 40px}.teacher-dashboard .stats{grid-template-columns:repeat(2,1fr)}.teacher-dashboard .two,.teacher-dashboard .three{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.teacher-dashboard{padding:18px 16px 32px}.teacher-dashboard .page-head{align-items:flex-start;flex-wrap:wrap}.teacher-dashboard .page-head h1{font-size:25px}.teacher-dashboard .stats{gap:12px}.teacher-dashboard .stat{padding:15px}.teacher-dashboard .stat-icon{display:none}.teacher-dashboard .stat .number{font-size:27px}.teacher-dashboard .card{padding:18px}.teacher-dashboard .three{grid-template-columns:minmax(0,1fr)}}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{-ms-touch-action:none;touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{position:absolute;inset:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;inset:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(-50%);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(50%);transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(50%);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(-50%);transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.sp-ai-practice{display:flex;align-items:center;gap:16px}.sp-ai-practice__icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:#e8eeff;color:var(--pu-blue, #2859df);font-size:22px;flex-shrink:0}.sp-ai-practice__main{flex:1;min-width:0}.sp-ai-practice__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sp-ai-practice__scene{display:inline-flex;align-items:center;color:var(--pu-blue, #2859df);font-size:12px;font-weight:600;flex-shrink:0}.sp-ai-practice__title{margin:0;font-size:17px;font-weight:650;color:var(--pu-ink, #202f47);line-height:1.4}.sp-ai-practice__desc{margin:6px 0 0;font-size:13px;color:#64748b;line-height:1.6}.sp-ai-practice__role{margin:6px 0 0;font-size:12.5px;color:#8593a8;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sp-ai-practice__cta{flex-shrink:0;height:40px;padding:0 24px;border-radius:10px;font-weight:600}@media(max-width:640px){.sp-ai-practice{flex-direction:column;align-items:stretch}.sp-ai-practice__cta{width:100%}}.ai-exercise-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;align-items:stretch;height:calc(100vh - 210px);min-height:520px}.ai-exercise-form,.ai-exercise-preview{height:100%;overflow-y:auto}.ai-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}.ai-field{display:flex;flex-direction:column;gap:8px;min-width:0}.ai-field.full{grid-column:1 / -1}.ai-field__label{font-size:13px;color:#64748b;font-weight:500}.ai-field .ant-select,.ai-field .ant-input-number,.ai-field .ant-input{width:100%}.ai-form-actions{border-top:1px solid #edf0f5;margin-top:24px;padding-top:18px;display:flex;flex-direction:column;align-items:flex-start}.ai-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;color:#64748b}.ai-preview-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#e8eeff;color:#2859df;font-weight:700;margin-bottom:16px}.ai-preview-empty h2{font-size:20px;font-weight:650;color:#202f47;margin:0 0 8px}.ai-preview-empty p{margin:0 0 6px;font-size:14px}.ai-preview-empty small{color:#94a3b8}.ai-preview-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.ai-question-item{padding:14px 0;border-bottom:1px solid #edf0f5}.ai-question-item:last-child{border-bottom:0}@media(max-width:900px){.ai-exercise-split{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.ai-exercise-form,.ai-exercise-preview{height:auto;overflow:visible}.ai-field-grid{grid-template-columns:1fr}}.ai-exercise-form{counter-reset:ai-step}.ai-section-title.ant-typography{display:flex;align-items:center;gap:8px;margin-bottom:16px!important;font-weight:600;color:#1f2937;font-size:16px;counter-increment:ai-step}.ai-section-title.ant-typography:before{content:counter(ai-step);display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:#2573e6;color:#fff;font-size:12px;font-weight:600;flex-shrink:0;line-height:1}.ai-exercise-form .ant-tree-switcher{width:28px;height:28px;line-height:28px}.ai-exercise-form .ant-tree-switcher .ant-tree-switcher-icon{font-size:15px}.ai-exercise-form .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background:transparent;color:#2573e6;font-weight:600}.ai-exercise-form .ant-tree .ant-tree-node-content-wrapper,.ai-exercise-form .ant-tree .ant-tree-node-content-wrapper:focus,.ai-exercise-form .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{outline:none!important}.ai-exercise-form .ant-tree .ant-tree-node-content-wrapper,.ai-exercise-form .ant-tree .ant-tree-switcher,.ai-exercise-form .ant-tree .ant-tree-treenode{transition:none!important;animation:none!important}.ci-multiline{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:22px;white-space:pre-wrap;word-break:break-word}.virtual-room{--vr-blue: #2859df;--vr-ink: #202f47;--vr-muted: #64748b;--vr-line: #e3e9f1;--vr-radius: 14px;color:var(--vr-ink);width:100%;max-width:1700px;margin:0 auto;padding:26px 34px 50px}.virtual-room .page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.virtual-room .page-head h1{font-size:29px;font-weight:650;letter-spacing:-.5px;line-height:1.5;color:var(--vr-ink);margin:0}.virtual-room .page-head p{font-size:14px;color:var(--vr-muted);margin:6px 0 0}.virtual-room .row{display:flex;align-items:center;gap:12px}.virtual-room .tabs{display:flex;gap:26px;border-bottom:1px solid var(--vr-line);margin-bottom:24px;overflow:auto}.virtual-room .tabs button{border:0;border-radius:0;background:transparent;white-space:nowrap;padding:12px 2px;color:var(--vr-muted);font-size:14px;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px;transition:color .16s}.virtual-room .tabs button:hover{color:var(--vr-blue)}.virtual-room .tabs button.active{color:var(--vr-blue);border-bottom:3px solid var(--vr-blue);font-weight:650}.virtual-room .grid{display:grid;gap:20px}.virtual-room .two{grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr)}.virtual-room .card{background:#fff;border:1px solid var(--vr-line);border-radius:var(--vr-radius);padding:24px;min-width:0}.virtual-room .card h2{font-size:20px;font-weight:650;color:var(--vr-ink);margin:0}.virtual-room .item{padding:15px 0;border-bottom:1px solid #edf0f5;display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.virtual-room .item:last-child{border:0}.virtual-room .avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e8eeff;color:var(--vr-blue);font-weight:700;flex-shrink:0;overflow:hidden}.virtual-room .avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.virtual-room .item__body{flex:1;min-width:0}.virtual-room .item h3{font-size:17px;font-weight:600;color:var(--vr-ink);margin:0}.virtual-room .item small{display:block;color:var(--vr-muted);font-size:13px;margin-top:2px}.virtual-room .item p{font-size:14px;color:var(--vr-muted);margin:13px 0;line-height:1.75}.virtual-room .replies{margin-top:10px;border-top:1px dashed #e6ebf3;padding-top:10px}.virtual-room .replies__head{font-size:13px;color:var(--vr-muted);margin-bottom:8px}.virtual-room .reply{display:flex;gap:10px;padding:10px 12px;background:#f7f9fc;border-radius:10px;margin-bottom:8px}.virtual-room .reply__avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e8eeff;color:var(--vr-blue);font-weight:700;font-size:13px;flex-shrink:0;overflow:hidden}.virtual-room .reply__avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.virtual-room .reply__body{flex:1;min-width:0}.virtual-room .reply__body small{display:block;color:var(--vr-muted);font-size:12px}.virtual-room .reply__body p{margin:4px 0 0;font-size:14px;color:var(--vr-ink);line-height:1.7;white-space:pre-wrap}.virtual-room .reply-box{display:flex;gap:8px;align-items:flex-end;margin-top:8px}.virtual-room .reply-box__input{flex:1}.virtual-room .item__side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.virtual-room .item__delete{border:0;background:transparent;color:#b8c2cf;font-size:12px;width:24px;height:24px;padding:0;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,color .15s,background .15s}.virtual-room .item:hover .item__delete{opacity:1}.virtual-room .item__delete:hover{color:#c93d50;background:#fdeef1}.virtual-room .tag{display:inline-block;border-radius:5px;padding:3px 9px;background:#eaf6f0;color:#137b62;font-size:12px;white-space:nowrap}.virtual-room .tag.blue{background:#edf1ff;color:var(--vr-blue)}.virtual-room .note{padding:18px;border-left:3px solid var(--vr-blue);background:#f5f8ff;font-size:14px;line-height:1.85;color:#62738a;border-radius:0 10px 10px 0}.virtual-room .muted{color:var(--vr-muted)}.virtual-room .module{margin-bottom:0}.virtual-room .module-tabs{display:inline-flex;gap:4px;padding:4px;background:#eef2f9;border-radius:10px;margin-bottom:24px}.virtual-room .module-tabs button{border:0;background:transparent;color:var(--vr-muted);font-size:14px;font-weight:500;padding:8px 20px;border-radius:7px;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.virtual-room .module-tabs button:hover{color:var(--vr-blue)}.virtual-room .module-tabs button.active{background:#fff;color:var(--vr-blue);font-weight:650;box-shadow:0 1px 3px #2859df29}.virtual-room .module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.virtual-room .module-toolbar .tabs{flex:1;margin-bottom:0}.virtual-room .course-group{background:#fff;border:1px solid var(--vr-line);border-radius:var(--vr-radius);overflow:hidden;margin-bottom:16px}.virtual-room .course-group:last-child{margin-bottom:0}.virtual-room .course-group__head{display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer;transition:background .15s}.virtual-room .course-group__head:hover{background:#f7f9ff}.virtual-room .course-group__arrow,.virtual-room .course-group__icon{color:var(--vr-blue);font-size:15px}.virtual-room .course-group__title{font-size:16px;font-weight:600;color:var(--vr-ink)}.virtual-room .course-group__count{margin-left:auto;font-size:13px;color:var(--vr-muted)}.virtual-room .course-group__body{padding:0 20px 20px}.virtual-room .teacher-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.virtual-room .teacher-card{display:flex;background:#fff;border:1px solid var(--vr-line);border-radius:12px;overflow:hidden;transition:border-color .18s,box-shadow .18s}.virtual-room .teacher-card:hover{border-color:#c6d3f7;box-shadow:0 6px 18px #2859df1a}.virtual-room .teacher-card__side{width:128px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 12px;background:#f6f8fe;border-right:1px solid var(--vr-line)}.virtual-room .teacher-card__name{font-size:14px;font-weight:600;color:var(--vr-ink);text-align:center;line-height:1.4}.virtual-room .teacher-card__title{font-size:12px;color:var(--vr-muted);text-align:center}.virtual-room .role-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;border-radius:5px;padding:2px 8px}.virtual-room .role-tag.primary{background:#e8eeff;color:var(--vr-blue)}.virtual-room .role-tag.assistant{background:#e3f5ee;color:#137b62}.virtual-room .role-tag.guest{background:#f3e8fd;color:#6b3fa0}.virtual-room .teacher-card__main{flex:1;min-width:0;padding:14px 16px;display:flex;flex-direction:column}.virtual-room .teacher-card__label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#404040;margin-bottom:6px}.virtual-room .teacher-card__label .anticon{color:#8c8c8c}.virtual-room .teacher-card__bio{font-size:13px;color:var(--vr-muted);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.virtual-room .teacher-card__bio.empty{font-style:italic;color:#a8b4c4}.virtual-room .teacher-card__foot{margin-top:auto;padding-top:10px;border-top:1px solid #f0f0f0;display:flex;flex-wrap:wrap;gap:6px 14px}.virtual-room .teacher-card__contact{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--vr-muted);cursor:pointer;transition:color .15s}.virtual-room .teacher-card__contact:hover{color:var(--vr-blue)}.virtual-room .ant-btn{border-radius:8px;min-height:40px;padding:0 16px;font-weight:400}.virtual-room .ant-btn-default{background:#fff;border-color:var(--vr-line);color:var(--vr-ink)}.virtual-room .ant-btn-default:not(:disabled):hover{background:#edf2ff;border-color:#c6d3f7;color:var(--vr-ink)}@media(max-width:1100px){.virtual-room{padding:22px 22px 40px}.virtual-room .two{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.virtual-room{padding:18px 16px 32px}.virtual-room .page-head{align-items:flex-start;flex-wrap:wrap}.virtual-room .page-head h1{font-size:25px}.virtual-room .card{padding:18px}.virtual-room .tabs{gap:18px}}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:grab}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.33"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.ai-assistant-page{height:calc(100vh - 60px)}.ai-assistant-page .pu-breadcrumb{margin:0;padding:20px 24px 0}.ai-assistant-inner{display:flex;flex-direction:column;height:100%;min-height:0;padding:20px 24px 28px;gap:16px}.ai-split{flex:1;min-height:0;display:grid;grid-template-columns:250px 1fr;gap:24px}.ai-card{background:#fff;border:1px solid var(--pu-line, #e3e9f1);border-radius:14px;min-width:0}.ai-tree{padding:24px;display:flex;flex-direction:column}.ai-tree h3{font-size:17px;font-weight:650;color:var(--pu-ink, #202f47);margin:0 0 12px}.ai-tree__list{display:flex;flex-direction:column}.ai-tree__list button{display:block;width:100%;text-align:left;margin:5px 0;border:0;background:transparent;padding:9px 12px;border-radius:8px;color:#202f47;font-size:14px;cursor:pointer;transition:background .15s,color .15s}.ai-tree__list button:hover{background:#f2f5fb;color:var(--pu-blue, #2859df)}.ai-tree__list button.is-active{background:#eaf0fd;color:var(--pu-blue, #2859df);font-weight:600}.ai-conv-list{flex:1;min-height:0;overflow-y:auto;gap:2px}.ai-conv{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;cursor:pointer;color:#202f47;font-size:14px;transition:background .15s,color .15s}.ai-conv:hover{background:#f2f5fb}.ai-conv.is-active{background:#eaf0fd;color:var(--pu-blue, #2859df);font-weight:600}.ai-conv__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-conv__actions{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;opacity:0;transition:opacity .15s}.ai-conv:hover .ai-conv__actions,.ai-conv.is-active .ai-conv__actions{opacity:1}.ai-conv__btn{color:#8a97a8;font-size:13px;cursor:pointer}.ai-conv__btn:hover{color:var(--pu-blue, #2859df)}.ai-conv__btn--danger:hover{color:#ff4d4f}.ai-note{margin-top:auto;padding:14px 16px;border-left:3px solid var(--pu-blue, #2859df);background:#f5f8ff;border-radius:0 10px 10px 0;font-size:12px;line-height:1.7;color:#62738a}.ai-chat{display:flex;flex-direction:column;overflow:hidden}.ai-chat__header{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--pu-line-soft, #edf0f5);flex-shrink:0}.ai-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e8eeff;color:var(--pu-blue, #2859df);font-weight:700;flex-shrink:0}.ai-avatar--lg{width:56px;height:56px;font-size:20px;margin:0 auto 12px}.ai-chat__header h3{font-size:16px;font-weight:650;color:var(--pu-ink, #202f47);margin:0}.ai-chat__header small{display:block;color:#64748b;font-size:12px;margin-top:2px}.ai-chat__switch{margin-left:auto;min-width:150px}.ai-chat__body{flex:1;min-height:0;display:flex}.ai-chat__body>*{flex:1;min-width:0}.ai-chat__empty{display:flex;align-items:center;justify-content:center;width:100%;color:#64748b;text-align:center;padding:24px}.ai-chat__empty p{margin:0;font-size:14px}.ai-chat .aui-thread-header{display:none}.ai-assistant-page .aui-thread-viewport{padding:20px 22px;gap:18px}.ai-assistant-page .aui-message-bubble{box-shadow:none;font-size:15px;padding:16px 20px}.ai-assistant-page .aui-message-row-assistant .aui-message-bubble{background:#f1f5fc;color:#202f47;border:0;border-radius:0 14px 14px}.ai-assistant-page .aui-message-row-user .aui-message-bubble{background:#eaf0ff;color:#202f47;border-radius:14px 0 14px 14px}.ai-assistant-page .aui-message-row-user .aui-message-bubble,.ai-assistant-page .aui-message-row-user .aui-message-bubble *{color:#202f47}.ai-assistant-page .aui-message-row .ant-avatar{background:#e8eeff!important;color:#2859df!important}.ai-assistant-page .aui-message-column{max-width:80%}.ai-assistant-page .aui-composer-root{padding:14px 22px 18px;border-top:1px solid #edf0f5;background:#fff}.ai-assistant-page .aui-composer-shell{background:#fff;border:1px solid #d9e1ec;border-radius:10px}.ai-assistant-page .aui-composer-shell:focus-within{border-color:#2859df;box-shadow:0 0 0 3px #2859df1a}.ai-assistant-page .aui-composer-send{background:#2859df;border-radius:8px}.ai-assistant-page .aui-composer-send:hover{background:#1846bc}@media(max-width:992px){.ai-assistant-page{height:auto}.ai-split{grid-template-columns:minmax(0,1fr)}.ai-tree{display:none}.ai-chat{min-height:70vh}}.major-courses-page{padding:24px;min-height:100vh;background:#f5f7fa}.major-courses-page .loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 0}.major-courses-page .page-header{margin-bottom:24px;border-radius:8px}.major-courses-page .courses-list{border-radius:8px}.course-index{width:40px;height:40px;border-radius:50%;background:#e6f7ff;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#1890ff;font-size:12px}.course-index .anticon{font-size:16px;margin-bottom:2px}.course-index span{line-height:1}.module-home-page{--module-home-panel-height: clamp(580px, 64vh, 660px);min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#ffffffdb,#f6f8fcf0 44%,#eef2f7),#f5f7fb;color:#182230}.module-home-header{height:76px;flex-shrink:0;background:#fffffff0;display:flex;align-items:center;justify-content:space-between;padding:0 40px;position:relative;z-index:5;box-shadow:0 1px 8px #0f172a12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.module-home-brand{display:flex;align-items:center;gap:12px;cursor:pointer;min-width:0}.module-home-logo{height:44px;object-fit:contain}.module-home-brand-text{font-size:19px;font-weight:700;font-family:Manrope,sans-serif;color:#182230;white-space:nowrap}.module-home-actions{display:flex;align-items:center;gap:12px}.module-home-main{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:48px 40px 54px}.module-home-backdrop{position:absolute;top:0;left:0;pointer-events:none;background:linear-gradient(90deg,#e8eff9e6,#fff0 24% 76%,#efe8dbdb),linear-gradient(135deg,#1f5fbf0f,#fff0 42%,#7a4a120f)}.module-home-backdrop{right:0;bottom:0}.module-home-content{position:relative;z-index:1;width:min(1480px,100%)}.module-home-content .pu-head{justify-content:center;text-align:center;margin-bottom:34px}.module-home-content .pu-head>div{width:100%;max-width:760px;margin-inline:auto}.module-home-content .pu-head h1{font-size:32px}.module-home-content .pu-head p{max-width:640px;margin-inline:auto}.module-home-grid{width:100%;height:var(--module-home-panel-height);margin-inline:0!important}.module-home-grid>.ant-col{display:flex;height:100%;padding-top:0!important;padding-bottom:0!important}.module-home-portal{width:min(1120px,100%);margin-inline:auto}@media(max-width:1180px){.module-home-content{width:min(920px,100%);margin-inline:auto}}@media(max-width:768px){.module-home-header{padding:0 16px;height:64px}.module-home-brand{gap:8px}.module-home-brand-text{font-size:15px}.module-home-logo{height:36px}.module-home-actions{gap:6px}.module-home-main{padding:34px 16px 42px;align-items:flex-start}.module-home-grid{height:auto}.module-home-grid>.ant-col{height:auto;padding-top:14px!important;padding-bottom:14px!important}.module-home-module-card{border-radius:18px}.module-home-content .pu-head{margin-bottom:24px}.module-home-content .pu-head h1{font-size:25px}.module-home-content .pu-head p{font-size:13.5px}.module-home-module-hero{height:210px}.module-home-module-hero-copy{left:22px;right:22px;bottom:16px}.module-home-module-hero-copy strong{font-size:22px}.module-home-module-hero-copy span{font-size:12px}.module-home-module-body{padding:22px 22px 24px}.module-home-module-desc{font-size:14px;line-height:1.85;margin-bottom:18px}.module-home-module-stats{margin-bottom:18px}.module-home-module-stat{font-size:14px}.module-home-module-features{gap:10px}.module-home-module-feature{padding:13px 14px;gap:10px}.module-home-module-feature-label{font-size:13.5px}}@media(max-width:480px){.module-home-header{padding:0 10px;height:60px}.module-home-logo{height:30px}.module-home-brand-text{display:none}.module-home-actions{gap:4px}.module-home-main{padding:24px 12px 36px}.module-home-module-card{border-radius:16px}.module-home-module-hero{height:180px}.module-home-module-hero-copy{left:18px;right:18px;bottom:14px}.module-home-module-hero-copy strong{font-size:20px}.module-home-module-hero-copy span{font-size:11.5px}.module-home-module-body{padding:18px}.module-home-module-desc{font-size:13.5px;margin-bottom:16px}.module-home-module-stats{margin-bottom:16px}.module-home-module-stat{font-size:13px}.module-home-module-features{gap:8px}.module-home-module-feature{padding:12px;gap:9px;border-radius:10px}.module-home-module-feature-icon{font-size:17px}.module-home-module-feature-label{font-size:13px}}.module-home-module-card{display:flex;flex-direction:column;height:100%;padding:0;border:none;border-radius:22px;background:#fff;box-shadow:0 18px 44px #0f172a12;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}.module-home-module-card:hover{transform:translateY(-4px);box-shadow:0 26px 56px #0f172a24}.module-home-module-card:focus-visible{outline:3px solid #94b2ff;outline-offset:3px}.module-home-module-hero{position:relative;height:240px;flex-shrink:0;overflow:hidden}.module-home-module-hero img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.95) contrast(.98);transition:transform .4s ease}.module-home-module-card:hover .module-home-module-hero img{transform:scale(1.05)}.module-home-module-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f172a14,#0f172aad)}.module-home-module-hero-copy{position:absolute;left:26px;right:26px;bottom:20px;z-index:1;color:#fff}.module-home-module-hero-copy strong{display:block;font-size:25px;font-weight:760;line-height:1.15;margin-bottom:5px}.module-home-module-hero-copy span{display:block;font-size:13px;font-weight:600;letter-spacing:.2px;color:#ffffffe0}.module-home-module-body{flex:1;display:flex;flex-direction:column;padding:26px 30px 28px;background:linear-gradient(168deg,color-mix(in srgb,var(--module-soft) 55%,#fff),#fff 52%)}.module-home-module-desc{font-size:15px;line-height:1.9;color:#55617a;margin:0 0 20px}.module-home-module-stats{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:22px}.module-home-module-stat{display:inline-flex;align-items:center;font-size:15px;font-weight:650;letter-spacing:.2px;color:var(--module-accent)}.module-home-module-stat+.module-home-module-stat:before{content:"·";margin:0 12px;color:#c3ccdb;font-weight:700}.module-home-module-features{margin-top:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.module-home-module-feature{display:flex;align-items:center;gap:12px;padding:15px 16px;background:#fff;border:1px solid #edf0f6;border-radius:12px;box-shadow:0 2px 8px #1018280a;transition:border-color .18s ease,box-shadow .18s ease}.module-home-module-card:hover .module-home-module-feature{border-color:color-mix(in srgb,var(--module-accent) 22%,#edf0f6);box-shadow:0 6px 16px #10182812}.module-home-module-feature-icon{display:inline-flex;align-items:center;justify-content:center;font-size:19px;line-height:1;color:var(--module-accent);flex-shrink:0}.module-home-module-feature-label{font-size:14.5px;font-weight:600;color:#2b3a55;white-space:nowrap}.course-detail-page{--blue: #2859df;--navy: #142744;--ink: #202f47;--muted: #64748b;--line: #e3e9f1;--bg: #f5f7fb;--green: #137b62;--radius: 14px;background:#fff;color:var(--ink);font:16px/1.65 Segoe UI,Microsoft YaHei,sans-serif}.course-detail-page *,.course-detail-page *:before,.course-detail-page *:after{box-sizing:border-box}.course-detail-page h1,.course-detail-page h2,.course-detail-page h3,.course-detail-page p{margin:0}.course-detail-page h1{font-size:29px;letter-spacing:-.5px;line-height:1.5}.course-detail-page h2{font-size:20px}.course-detail-page h3{font-size:17px}.course-detail-page small{color:var(--muted)}.course-detail-page .cd-container{max-width:1280px;margin:0 auto;padding:40px 32px 64px}.course-detail-page .row{display:flex;align-items:center;gap:12px}.course-detail-page .grid{display:grid;gap:20px}.course-detail-page .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0;box-shadow:0 3px 16px #15325403}.course-detail-page .tag{display:inline-block;border-radius:5px;padding:3px 9px;background:#eaf6f0;color:var(--green);font-size:12px;white-space:nowrap}.course-detail-page .tag.blue{background:#edf1ff;color:var(--blue)}.course-detail-page .tag.gray{background:#f0f3f7;color:#64748b}.course-detail-page .item{padding:15px 0;border-bottom:1px solid #edf0f5;display:flex;justify-content:space-between;gap:15px;align-items:center}.course-detail-page .item:last-child{border:0}.course-detail-page .item p{font-size:14px;color:var(--muted);margin-top:4px}.course-detail-page .item-number{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:#f0f4fc;color:var(--blue);flex-shrink:0}.course-detail-page .metric-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.course-detail-page .metric-list>div{background:#f4f7fc;padding:14px;border-radius:10px}.course-detail-page .metric-list strong{display:block;font-size:24px}.course-detail-page .note{padding:18px;border-left:3px solid var(--blue);background:#f5f8ff;font-size:14px}.course-detail-page button{font:inherit;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 16px;color:var(--ink);transition:.16s}.course-detail-page button:hover{background:#edf2ff;border-color:#c6d3f7}.course-detail-page button.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.course-detail-page button.primary:hover{background:#1846bc;color:#fff}.course-detail-page button:disabled{opacity:.55;cursor:not-allowed}.course-detail-page button:disabled:hover{background:#fff;border-color:var(--line)}.course-detail-page .major-breadcrumb{display:flex;gap:13px;font-size:12px;color:#8794a5;margin:0 0 24px}.course-detail-page .major-breadcrumb a{color:#617791;text-decoration:none}.course-detail-page .major-breadcrumb a:hover{color:var(--blue)}.course-detail-page .home-mini{font-size:14px;letter-spacing:2px;color:#64799a;font-weight:650;margin-bottom:9px;display:block}.course-detail-page .eyebrow{color:var(--blue);font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:8px}.course-detail-page .course-public-hero{padding:44px;background:#edf3fa;border:1px solid #e4ebf4;border-radius:16px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:50px;align-items:center}.course-detail-page .course-public-hero h1{font-size:40px;margin:14px 0}.course-detail-page .course-public-hero>div>p{color:#62738a;line-height:1.9}.course-detail-page .course-provider{display:flex;align-items:center;gap:14px;margin:27px 0}.course-detail-page .level-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:12px;background:#edf3fc;color:#315b91;margin-bottom:10px}.course-detail-page .level-icon svg{width:24px;height:24px}.course-detail-page .provider-icon .level-icon{margin:0;background:#fff;width:48px;height:48px}.course-detail-page .course-provider small{display:block;font-size:14px;color:#63748a}.course-detail-page .course-provider strong{display:block;font-size:20px;margin-top:3px}.course-detail-page .course-provider strong span{font-size:14px;font-weight:400;color:#65748b;border:1px solid #d4dfeb;padding:2px 8px;margin-left:8px;border-radius:4px}.course-detail-page .course-public-tags{display:flex;gap:12px;flex-wrap:wrap}.course-detail-page .course-public-tags>span{font-size:14px;color:#58708e;border-right:1px solid #ccd9e8;padding-right:12px}.course-detail-page .course-public-tags>span:last-child{border:0}.course-detail-page .course-start-card{padding:27px;background:#fff;border-radius:12px;box-shadow:0 10px 35px #16365409}.course-detail-page .course-start-card h2{font-size:24px;margin:10px 0}.course-detail-page .course-start-card p{font-size:12px}.course-detail-page .course-start-card button{width:100%;margin-top:23px;min-height:46px}.course-detail-page .course-start-card>a{display:block;text-align:center;margin-top:14px;font-size:12px;color:var(--blue);text-decoration:none;cursor:pointer}.course-detail-page .course-start-hint{margin-top:10px;font-size:12px;color:#8a97a8;text-align:center}.course-detail-page .course-classic .tabs{gap:30px;margin-bottom:26px}.course-detail-page .course-classic .tabs button{font-size:16px;min-height:50px}.course-detail-page .course-classic .grid.two{grid-template-columns:minmax(0,1.9fr) minmax(270px,1fr);gap:25px}.course-detail-page .course-classic .card{padding:28px}.course-detail-page .course-classic .card>p{line-height:2}.course-detail-page .course-classic .metric-list{gap:14px}.course-detail-page .course-classic .metric-list>div{background:#f6f8fb;padding:18px}.course-detail-page .course-classic .metric-list strong{font-size:27px}.course-detail-page .course-classic .note{border-left-width:2px;background:#f7f9fc;color:#62738a;line-height:1.85}.course-detail-page .course-classic .item{padding:19px 0}.course-detail-page .course-classic .item h3{font-size:16px}.course-detail-page .course-classic>.course-demo{margin-top:22px}.course-detail-page .course-reference-hero{padding:48px;margin-bottom:30px;grid-template-columns:minmax(0,1fr) 300px;gap:48px;background:#eef3fb;min-height:360px}.course-detail-page .course-reference-hero h1{font-size:42px;line-height:1.35;margin:20px 0}.course-detail-page .course-reference-hero .course-provider{margin:30px 0}.course-detail-page .course-reference-hero .course-start-card{padding:30px;border-radius:14px}.course-detail-page .course-reference-hero .course-start-card h2{font-size:26px;margin:14px 0}.course-detail-page .course-reference-hero .course-start-card button{margin-top:25px;min-height:48px}.course-detail-page .course-reference-hero .course-start-card a{min-height:32px;padding-top:5px}.course-detail-page #course-information{scroll-margin-top:105px}.course-detail-page .course-demo{padding-top:16px;font-size:12px;line-height:1.85;color:#718197}.course-detail-page .course-long-copy{line-height:1.95;color:#62738a;font-size:14px;margin-top:16px;white-space:pre-wrap}.course-detail-page .tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow:auto}.course-detail-page .tabs button{border:0;border-radius:0;background:transparent;white-space:nowrap;padding:12px 2px;color:var(--muted);cursor:pointer}.course-detail-page .tabs button.active{color:var(--blue);border-bottom:3px solid var(--blue);font-weight:650}@media(max-width:1000px){.course-detail-page .course-public-hero{grid-template-columns:1fr 260px;gap:26px;padding:30px}.course-detail-page .course-reference-hero{padding:32px;gap:28px;grid-template-columns:minmax(0,1fr) 260px}.course-detail-page .course-reference-hero h1{font-size:35px}.course-detail-page .course-reference-hero .course-start-card{padding:24px}}@media(max-width:900px){.course-detail-page .course-classic .grid.two{grid-template-columns:1fr}}@media(max-width:760px){.course-detail-page .cd-container{padding:25px 16px 40px}.course-detail-page .course-public-hero{grid-template-columns:1fr;padding:26px 22px;gap:25px}.course-detail-page .course-public-hero h1{font-size:30px}.course-detail-page .course-public-hero>div>p{font-size:14px}.course-detail-page .course-provider{gap:10px;margin:23px 0}.course-detail-page .course-provider strong{font-size:18px}.course-detail-page .course-public-tags{gap:8px}.course-detail-page .course-public-tags>span{font-size:13px;padding-right:8px}.course-detail-page .course-start-card{padding:22px}.course-detail-page .course-reference-hero{grid-template-columns:1fr;gap:26px;padding:26px 22px;margin-bottom:24px}.course-detail-page .course-reference-hero h1{font-size:30px;margin:16px 0}.course-detail-page .course-reference-hero .course-provider{margin:24px 0}.course-detail-page .course-reference-hero .course-start-card{padding:22px}.course-detail-page .course-reference-hero .course-start-card h2{font-size:23px}.course-detail-page .course-classic .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 8px;overflow:visible;background:#f4f7fb;padding:6px;border:0;border-radius:10px}.course-detail-page .course-classic .tabs button{font-size:15px;padding:10px 4px;border:0;border-radius:6px}.course-detail-page .course-classic .tabs button.active{background:#fff;box-shadow:0 2px 8px #1427440b}.course-detail-page .course-classic .card{padding:22px}.course-detail-page .course-classic .metric-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.course-detail-page .course-classic .metric-list>div{padding:12px}.course-detail-page .course-classic .metric-list strong{font-size:23px}.course-detail-page .course-classic .item{gap:10px}.course-detail-page .course-classic .item h3{font-size:14px}.course-detail-page .course-classic .item p{font-size:12px}.course-detail-page .item-number{width:29px;height:29px;font-size:12px}}.dz-root{--dz-accent: #2f6fde;--dz-accent-ink: #1d45a0;--dz-accent-soft: #e8eefc;--dz-bg: #e9ecf0;--dz-panel: #fff;--dz-line: #d5dae0;--dz-line-soft: #edf0f4;--dz-sub: #f7f8fa;--dz-ink: #1b2430;--dz-body: #2a3441;--dz-muted: #5f6b7a;display:flex;flex-direction:column;gap:16px;box-sizing:border-box;color:var(--dz-ink);font-size:15px}.dz-root button,.dz-root input,.dz-root textarea{font-family:inherit}.dz-root :focus-visible{outline:2px solid var(--dz-accent);outline-offset:2px}.dz-panel{background:var(--dz-panel);border:1px solid var(--dz-line);border-radius:8px;overflow:hidden}.dz-panel-head{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid #e3e7ed}.dz-h1{margin:0;font-size:20px;font-weight:700}.dz-grow{flex:1;font-size:22px}.dz-muted{color:var(--dz-muted);font-size:13px}.dz-btn{height:40px;padding:0 18px;border:1px solid var(--dz-line);border-radius:8px;background:#fff;color:var(--dz-ink);font-size:15px;font-weight:500;cursor:pointer}.dz-btn-primary{border-color:var(--dz-accent);background:var(--dz-accent);color:#fff}.dz-btn:disabled{opacity:.45;cursor:not-allowed}.dz-panel-head>.dz-btn-primary:last-child{margin-left:auto}.dz-link{border:0;background:none;padding:0;color:var(--dz-muted);font-size:13px;cursor:pointer}.dz-link:hover{color:var(--dz-accent)}.dz-crumb{display:flex;gap:8px;align-items:center}.dz-crumb .dz-link{font-size:14px}.dz-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#dce6fb;color:var(--dz-accent-ink);font-weight:500;overflow:hidden}.dz-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.dz-tag{padding:0 8px;border-radius:4px;background:var(--dz-accent-soft);color:var(--dz-accent-ink);font-size:13px;line-height:20px;font-weight:500}.dz-toolbar{display:flex;align-items:center;gap:20px;padding:0 20px;height:40px;background:var(--dz-sub);border-bottom:1px solid #e3e7ed}.dz-tab{border:0;background:none;padding:0;font-size:14px;color:var(--dz-muted);cursor:pointer}.dz-tab.is-active{color:var(--dz-accent);font-weight:500}.dz-toolbar-count{margin-left:auto}.dz-list{margin:0;padding:0;list-style:none}.dz-row{display:flex;gap:16px;padding:16px 20px;border-bottom:1px solid var(--dz-line-soft)}.dz-row:last-child{border-bottom:0}.dz-count{width:56px;flex:none;text-align:center;padding-top:2px;color:var(--dz-muted);font-size:13px}.dz-count strong{display:block;font-size:22px;line-height:1.2;color:#8a94a3}.dz-count strong.has-reply{color:var(--dz-accent)}.dz-row-main{flex:1;min-width:0}.dz-title-link{display:block;max-width:100%;border:0;background:none;padding:0;text-align:left;font-size:18px;font-weight:600;line-height:1.5;color:var(--dz-ink);cursor:pointer}.dz-title-link:hover{color:var(--dz-accent)}.dz-preview{margin:4px 0 0;color:var(--dz-muted);font-size:15px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;word-break:break-word}.dz-meta{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:14px;color:var(--dz-muted)}.dz-row-last{width:180px;flex:none;text-align:right;font-size:14px;line-height:1.7;color:var(--dz-muted);padding-top:2px}.dz-empty{margin:0;padding:48px 20px;text-align:center;color:var(--dz-muted)}.dz-floor{display:flex;border-bottom:1px solid #e3e7ed}.dz-floor:last-child{border-bottom:0}.dz-floor-user{width:140px;flex:none;box-sizing:border-box;padding:20px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--dz-sub);border-right:1px solid var(--dz-line-soft)}.dz-floor-name{font-weight:500;word-break:break-all;text-align:center}.dz-floor-body{flex:1;min-width:0;min-height:96px;padding:20px 24px 12px;display:flex;flex-direction:column}.dz-floor-content{flex:1;margin:0;font-size:16px;line-height:1.8;color:var(--dz-body);white-space:pre-wrap;word-break:break-word}.dz-floor-foot{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;font-size:14px;color:var(--dz-muted)}.dz-form,.dz-reply-box{display:flex;flex-direction:column;gap:10px;padding:20px 24px}.dz-form label,.dz-reply-box label{font-weight:500}.dz-input,.dz-textarea{width:100%;box-sizing:border-box;padding:10px 14px;border:1px solid var(--dz-line);border-radius:8px;font-size:15px;line-height:1.7;color:var(--dz-ink)}.dz-input{height:44px;padding-top:0;padding-bottom:0}.dz-textarea{height:100px;resize:vertical}.dz-form-actions{display:flex;justify-content:flex-end;gap:12px}@media(max-width:640px){.dz-root{padding:16px 12px}.dz-row-last{display:none}.dz-floor{flex-direction:column}.dz-floor-user{width:auto;flex-direction:row;padding:12px 16px;border-right:0;border-bottom:1px solid var(--dz-line-soft)}.dz-floor-user .dz-avatar{width:32px!important;height:32px!important;font-size:14px!important}}.dz-item{border-bottom:1px solid var(--dz-line-soft)}.dz-item:last-child{border-bottom:0}.dz-inline-reply{display:flex;flex-direction:column;gap:8px;padding:4px 20px 16px 88px}.dz-inline-reply .dz-textarea{height:76px}.dz-toggle{margin-left:4px;color:var(--dz-accent)}.dz-peek{margin:0;padding:4px 20px 16px 88px;list-style:none;display:flex;flex-direction:column;gap:12px}.dz-peek-item{display:flex;gap:10px;padding:12px 14px;background:var(--dz-sub);border-radius:6px}.dz-peek-body{flex:1;min-width:0}.dz-peek-head{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--dz-muted)}.dz-peek-head strong{color:var(--dz-ink);font-weight:500}.dz-peek-body p{margin:4px 0 0;line-height:1.7;color:var(--dz-body);white-space:pre-wrap;word-break:break-word}.dz-peek-more{font-size:13px;color:var(--dz-muted)}.dz-peek-more .dz-link{color:var(--dz-accent)}.dz-reply-link:hover,.dz-reply-link:focus-visible{color:var(--dz-accent)}.dz-quote{margin:0 0 12px;padding:8px 12px;background:var(--dz-sub);border:1px solid var(--dz-line-soft);border-radius:6px;font-size:13px;line-height:1.6;color:var(--dz-muted)}.dz-quote-head{font-weight:500;color:var(--dz-body)}.dz-quote-text{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dz-target{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--dz-accent-soft);color:var(--dz-accent-ink);border-radius:6px;font-size:13px}.dz-target span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dz-target em{font-style:normal;opacity:.8}.dz-target .dz-link{flex:none;color:var(--dz-accent-ink)}@media(max-width:640px){.dz-peek{padding-left:20px}}.practice-session-page{height:calc(100vh - 60px);display:flex;flex-direction:column;padding:20px 24px 24px;gap:16px;min-height:0}.practice-session-head{display:flex;align-items:center;gap:12px;flex-shrink:0}.practice-session-head h1{font-size:20px;font-weight:650;color:var(--pu-ink, #202f47);margin:0}.practice-session-head p{margin:2px 0 0;color:#64748b;font-size:13px}.practice-session-head__back{margin-left:auto}.practice-session-card{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--pu-line, #e3e9f1);border-radius:14px;overflow:hidden}.practice-session-card__header{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--pu-line-soft, #edf0f5);flex-shrink:0}.practice-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e8eeff;color:var(--pu-blue, #2859df);font-weight:700;flex-shrink:0}.practice-session-card__header h3{font-size:16px;font-weight:650;color:var(--pu-ink, #202f47);margin:0}.practice-session-card__header small{display:block;color:#64748b;font-size:12px;margin-top:2px}.practice-session-card__guide{flex-shrink:0;padding:14px 22px;border-bottom:1px solid var(--pu-line-soft, #edf0f5);background:#e7eefb}.practice-session-card__guide-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:650;color:var(--pu-blue, #2859df);margin-bottom:6px}.practice-session-card__guide p{margin:4px 0;font-size:13px;line-height:1.7;color:#42546e}.practice-session-card__guide strong{color:#202f47}.practice-session-body{flex:1;min-height:0;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:18px;background:#fbfcfe}.practice-msg-row{display:flex;gap:10px;align-items:flex-start}.practice-msg-row--user{flex-direction:row-reverse}.practice-msg-bubble{max-width:80%;padding:14px 18px;font-size:15px;line-height:1.7;color:#202f47;word-break:break-word}.practice-msg-bubble--ai{background:#f1f5fc;border-radius:0 14px 14px}.practice-msg-bubble--user{background:#eaf0ff;border-radius:14px 0 14px 14px}.practice-msg-bubble p{margin:6px 0}.practice-msg-bubble p:first-child{margin-top:0}.practice-msg-bubble p:last-child{margin-bottom:0}.practice-msg-bubble pre{background:#f6f8fa;padding:12px;border-radius:8px;overflow:auto;margin:8px 0;font-family:monospace;font-size:13px}.practice-msg-bubble code{background:#eef2f7;padding:2px 6px;border-radius:4px;font-size:13px}.practice-session-empty{margin:auto;text-align:center;color:#64748b;font-size:14px}.practice-composer{flex-shrink:0;padding:14px 22px 18px;border-top:1px solid #edf0f5;background:#fff}.practice-composer__row{display:flex;gap:10px;align-items:flex-end}.practice-composer textarea{resize:none}.practice-composer__send{flex-shrink:0}@media(max-width:768px){.practice-session-page{height:auto}.practice-session-card{min-height:70vh}.practice-msg-bubble{max-width:90%}}.mm-detail-top{padding-top:28px}.mm-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:16px;padding:0;border:0;background:none;color:#62738a;font-size:14px;cursor:pointer;transition:color .16s ease}.mm-back:hover{color:#2859df}.mm-hero{padding:48px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#101f37,#234968 68%,#2859df 140%)}.mm-hero.theme-blue{background:linear-gradient(135deg,#101f37,#234968 68%,#2859df 140%)}.mm-hero.theme-purple{background:linear-gradient(135deg,#101f37,#3a2f52 68%,#554562 140%)}.mm-hero.theme-teal{background:linear-gradient(135deg,#101f37,#1e4a47 68%,#285957 140%)}.mm-hero__code{font-size:11px;letter-spacing:2px;font-weight:600;color:#fff9;text-transform:uppercase}.mm-hero h1{margin:14px 0 0;font-size:clamp(34px,4vw,46px);line-height:1.3;font-weight:800;color:#fff}.mm-hero h1 span{font-weight:400}.mm-hero p{max-width:760px;margin:18px 0 0;font-size:16px;line-height:1.9;color:#ffffffd1}.mm-hero__tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.mm-hero__tags span{padding:5px 14px;border:1px solid rgba(255,255,255,.35);border-radius:20px;font-size:12px}.mm-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px;border:1px solid #e3e9f1;border-radius:12px;overflow:hidden;background:#fff}.mm-fact{display:flex;flex-direction:column;gap:6px;padding:22px 26px;border-left:1px solid #eef2f6}.mm-fact:first-child{border-left:0}.mm-fact__label{font-size:13px;color:#758293}.mm-fact__value{font-size:18px;font-weight:700;color:#101f37}.mm-fact--action{align-items:flex-start}.mm-fact__value--muted{color:#758293;font-weight:600;font-size:15px}.mm-status-tag{padding:6px 16px;border-radius:8px;font-size:14px;line-height:1.3}.mm-detail-body{padding:34px 0 60px}.mm-detail-body__inner{width:100%}.mm-detail-anchor{position:sticky;top:92px;z-index:10;display:flex;gap:4px;margin-bottom:20px;padding:6px;border:1px solid #e3e9f1;border-radius:12px;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mm-detail-anchor a{flex:1;padding:10px 8px;text-align:center;border-radius:8px;color:#42546e;font-size:14px;font-weight:500;transition:color .16s ease,background .16s ease}.mm-detail-anchor a:hover{color:#2859df;background:#f5f8fc;text-decoration:none}.mm-detail-card{margin-bottom:20px;border-radius:12px!important;border:1px solid #e3e9f1!important;box-shadow:none!important;overflow:hidden}.mm-detail-card .ant-card-head{min-height:60px;padding:0 30px;border-bottom:1px solid #eef2f6;background:#fff}.mm-detail-card .ant-card-head-title{color:#101f37;font-size:18px;font-weight:800}.mm-detail-card .ant-card-body{padding:30px}.mm-detail-card--feature .ant-card-body{padding:34px 38px}.mm-detail-card__heading.ant-typography{margin:0 0 16px!important;color:#101f37!important;font-size:22px!important;font-weight:800!important}.mm-detail-section{padding:18px 0;border-top:1px solid #eef2f6}.mm-detail-section:first-of-type{padding-top:0;border-top:none}.mm-detail-section__title{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#14223a;font-size:16px;font-weight:700}.mm-detail-section__title-icon{color:#2859df;font-size:16px}.mm-detail-section__content.ant-typography{margin:0!important;color:#62738a;font-size:15px;line-height:1.95;white-space:pre-wrap}.mm-detail-top .mm-course-table{margin:-30px}.mm-detail-top .mm-course-table .ant-table-thead>tr>th{background:#f5f8fc!important;color:#42546e;font-size:13px;font-weight:700;padding:16px 22px;border-bottom:1px solid #e3e9f1!important}.mm-detail-top .mm-course-table .ant-table-tbody>tr>td{padding:18px 22px;border-bottom:1px solid #eef2f6!important}.mm-detail-top .mm-course-table .ant-table-tbody>tr:hover>td{background:#f8fbff!important}.mm-course-info{display:flex;align-items:center;gap:16px}.mm-course-cover{width:92px;height:60px;flex:0 0 92px;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;color:#fff;font-size:26px;background:linear-gradient(135deg,#101f37,#234968)}.mm-course-cover img{width:100%;height:100%;display:block;object-fit:cover}.mm-course-detail{min-width:0}.mm-course-title{display:block;margin-bottom:6px;color:#101f37;font-size:15px;font-weight:700}.mm-course-desc.ant-typography{margin:0!important;max-width:520px;color:#758293;font-size:13px;line-height:1.65;cursor:help}.mm-course-desc-tooltip .ant-tooltip-inner{max-width:520px;padding:12px 14px;border-radius:8px;color:#eef6ff;line-height:1.8;background:#0f2340f5}.mm-teacher-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mm-teacher-card{display:flex;gap:18px;padding:22px;border:1px solid #e3e9f1;border-radius:12px;background:#fff;transition:box-shadow .2s ease,transform .2s ease}.mm-teacher-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #102f510f}.mm-teacher-card__avatar{position:relative;flex:0 0 auto;padding-top:6px}.mm-teacher-card__avatar .ant-avatar{border:3px solid #eef2f6;background:#edf3fc}.mm-teacher-card__role-badge{position:absolute;left:50%;bottom:-8px;transform:translate(-50%);min-width:64px;padding:2px 10px;border-radius:999px;text-align:center;color:#fff;background:#2859df;font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:.5px}.mm-teacher-card__content{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.mm-teacher-card__name{color:#101f37;font-size:17px;font-weight:800;line-height:1.3}.mm-teacher-card__title{color:#2859df;font-size:13px;font-weight:600}.mm-teacher-card__meta{display:block;color:#8a9aaa;font-size:12px;line-height:1.4}.mm-teacher-card__bio.ant-typography{margin:8px 0 0!important;color:#5a6a7e;font-size:13px;line-height:1.7;white-space:pre-wrap}@media(max-width:1000px){.mm-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-fact:nth-child(2){border-right:1px solid #eef2f6}.mm-fact:nth-child(3){border-left:0;border-top:1px solid #eef2f6}.mm-fact:nth-child(4){border-top:1px solid #eef2f6}}@media(max-width:768px){.mm-detail-top{padding-top:18px}.mm-hero{padding:28px 22px}.mm-hero h1{font-size:30px}.mm-hero p{font-size:15px}.mm-facts{grid-template-columns:1fr}.mm-fact{border-left:0;border-top:1px solid #eef2f6}.mm-fact:first-child{border-top:0}.mm-detail-anchor{top:76px;overflow-x:auto}.mm-detail-anchor a{flex:0 0 auto;white-space:nowrap}.mm-detail-card .ant-card-body,.mm-detail-card--feature .ant-card-body{padding:20px}.mm-detail-top .mm-course-table{margin:-20px}.mm-teacher-list{grid-template-columns:1fr;gap:14px}.mm-teacher-card{padding:18px;gap:16px}.mm-teacher-card__avatar .ant-avatar{width:64px!important;height:64px!important;line-height:64px!important}.mm-teacher-card__name{font-size:16px}.mm-teacher-card__bio.ant-typography{font-size:12px;line-height:1.6}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}.flex-tabs{display:flex;flex-direction:column;min-height:0}.flex-tabs>.ant-tabs-content-holder{flex:1;min-height:0;display:flex;flex-direction:column}.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content{flex:1;min-height:0;display:flex;flex-direction:column}.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane{flex:1;min-height:0;display:flex;flex-direction:column}.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane-active{flex:1;min-height:0;display:flex;flex-direction:column}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background:transparent!important}.ant-tree .ant-tree-treenode-selected>.ant-tree-node-content-wrapper{background:transparent!important;outline:2px solid #2573E6;outline-offset:-2px;border-radius:6px}.ant-tree .ant-tree-treenode-selected:before{background:transparent!important}.markdown-preview{line-height:1.8;font-size:14px;color:#424754;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.markdown-preview h1{font-size:20px;font-weight:700;margin:16px 0 10px;padding-bottom:8px;border-bottom:1px solid #e8e8e8;color:#191c1d}.markdown-preview h2{font-size:17px;font-weight:700;margin:14px 0 8px;color:#191c1d}.markdown-preview h3{font-size:15px;font-weight:600;margin:12px 0 6px;color:#191c1d}.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{font-size:14px;font-weight:600;margin:10px 0 4px;color:#333}.markdown-preview p{margin:6px 0}.markdown-preview ul,.markdown-preview ol{margin:6px 0;padding-left:24px}.markdown-preview li{margin:2px 0}.markdown-preview strong{font-weight:700;color:#191c1d}.markdown-preview em{font-style:italic}.markdown-preview code{font-family:SF Mono,Fira Code,Fira Mono,Menlo,Consolas,monospace;font-size:13px;background:#f0f0f0;padding:2px 6px;border-radius:4px;color:#d4380d}.markdown-preview pre{margin:8px 0;padding:12px 16px;background:#f6f8fa;border:1px solid #e8e8e8;border-radius:8px;overflow-x:auto}.markdown-preview pre code{background:transparent;padding:0;color:#424754;font-size:13px}.markdown-preview blockquote{margin:8px 0;padding:8px 14px;border-left:3px solid #2573E6;background:#2573e60a;color:#555}.markdown-preview table{width:100%;border-collapse:collapse;margin:8px 0;font-size:13px}.markdown-preview th,.markdown-preview td{border:1px solid #e8e8e8;padding:8px 12px;text-align:left}.markdown-preview th{background:#f6f8fa;font-weight:700;color:#191c1d}.markdown-preview tr:nth-child(2n){background:#fafbfc}.markdown-preview a{color:#2573e6;text-decoration:none}.markdown-preview a:hover{text-decoration:underline}.markdown-preview hr{margin:16px 0;border:none;border-top:1px solid #e8e8e8}.markdown-preview img{max-width:100%;border-radius:8px}.video-player-modal .ant-modal-content{padding:0!important;background:#000!important;border-radius:8px!important;overflow:hidden}:root{--theme-primary: #2573E6;--theme-primary-hover: #2563EB;--theme-success: #52C41A;--theme-background: #F0F2F5;--theme-card-bg: #FFFFFF;--theme-text-primary: #1F2937;--theme-text-secondary: #6B7280;--theme-border: #E5E7EB;--theme-star: #F5C518;--theme-level-beginner: #52C41A;--theme-level-intermediate: #2573E6;--theme-level-advanced: #D4A843}.theme-layout{min-height:100vh;background:var(--theme-background)}.theme-container{max-width:1400px;margin:0 auto;padding:0 24px}.theme-container-narrow{max-width:800px;margin:0 auto;padding:0 24px}.theme-header{background:var(--theme-card-bg);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--theme-border);height:64px}.theme-header-logo{display:flex;align-items:center;gap:12px}.theme-header-logo-icon{font-size:28px;color:var(--theme-primary)}.theme-header-title{color:var(--theme-text-primary);margin:0;font-weight:600}.theme-header-user{display:flex;align-items:center;gap:16px}.theme-hero{background:var(--theme-card-bg);padding:64px 24px 48px;text-align:center;border-bottom:1px solid var(--theme-border)}.theme-hero-title{color:var(--theme-text-primary);margin-bottom:12px;font-size:42px;font-weight:700;line-height:1.2}.theme-hero-subtitle{font-size:18px;color:var(--theme-text-secondary);display:block;margin-bottom:32px}.theme-search-box{display:flex;max-width:640px;margin:0 auto 20px;border:1px solid var(--theme-border);border-radius:4px;overflow:hidden;box-shadow:0 2px 8px #00000014}.theme-search-input{flex:1;border:none;outline:none;padding:14px 16px;font-size:16px}.theme-search-button{background:var(--theme-primary)!important;border-color:var(--theme-primary)!important;border-radius:0!important;padding:0 32px;height:auto!important;font-size:16px!important;font-weight:500!important}.theme-popular-tags{color:var(--theme-text-secondary);font-size:14}.theme-popular-tag{color:var(--theme-primary);margin-left:8px;cursor:pointer;text-decoration:none}.theme-popular-tag:hover{text-decoration:underline}.theme-filter-bar{background:var(--theme-card-bg);padding:16px 32px;border-bottom:1px solid var(--theme-border);position:sticky;top:64px;z-index:100}.theme-filter-bar-inner{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.theme-filter-tabs{display:flex;gap:8px;overflow-x:auto;flex:1}.theme-filter-tab{color:var(--theme-text-secondary);font-weight:400;border-bottom:3px solid transparent;border-radius:0;padding:8px 16px;height:auto;white-space:nowrap}.theme-filter-tab-active{color:var(--theme-primary);font-weight:600;border-bottom:3px solid var(--theme-primary)}.theme-content{padding:32px 24px}.theme-result-count{margin-bottom:24px;font-size:14px;color:var(--theme-text-secondary)}.theme-result-count strong{color:var(--theme-text-primary)}.theme-course-card{height:100%;border-radius:8px!important;overflow:hidden;border:1px solid var(--theme-border)!important;transition:all .2s ease}.theme-course-card:hover{border-color:var(--theme-primary)!important;box-shadow:0 4px 12px #0000001a}.theme-course-cover{height:160px;background-size:cover;background-position:center;position:relative}.theme-course-cover-placeholder{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center}.theme-course-cover-placeholder{right:0;bottom:0}.theme-course-cover-placeholder-icon{font-size:48px;color:#fff9}.theme-course-level-tag{position:absolute;top:12px;left:12px;border:none;font-size:11px;font-weight:500}.theme-course-enrolled-tag{position:absolute;top:12px;right:12px;background:var(--theme-success)!important;color:#fff!important;border:none}.theme-course-body{padding:16px}.theme-course-title{margin-bottom:8px;font-size:15px;line-height:1.4;min-height:42px}.theme-course-org{font-size:13px;color:var(--theme-text-secondary);display:block;margin-bottom:12px}.theme-course-rating{display:flex;align-items:center;gap:8px;margin-bottom:12px}.theme-course-meta{display:flex;gap:12px}.theme-card{border-radius:8px!important;border:1px solid var(--theme-border)!important;box-shadow:none!important}.theme-card-hoverable:hover{border-color:var(--theme-primary)!important;box-shadow:0 4px 12px #0000001a!important}.theme-card-title{color:var(--theme-text-primary);margin-bottom:12px}.theme-card-title-primary{color:var(--theme-primary)}.theme-btn-primary{background:var(--theme-primary)!important;border-color:var(--theme-primary)!important}.theme-btn-primary:hover{background:var(--theme-primary-hover)!important;border-color:var(--theme-primary-hover)!important}.theme-loading{text-align:center;padding:100px}.theme-loading-text{margin-top:16px;color:var(--theme-text-secondary)}.theme-empty{text-align:center;padding:64px}.theme-grid{display:flex;flex-wrap:wrap;margin:-12px}.theme-grid-item{padding:12px}.theme-grid-4{width:100%}@media(min-width:768px){.theme-grid-4{width:50%}}@media(min-width:1200px){.theme-grid-4{width:25%}}.theme-grid-3{width:100%}@media(min-width:768px){.theme-grid-3{width:50%}}@media(min-width:992px){.theme-grid-3{width:33.333%}}.theme-grid-2{width:100%}@media(min-width:768px){.theme-grid-2{width:50%}}.theme-table .ant-table-thead>tr>th{background:var(--theme-background)!important;font-weight:600;color:var(--theme-text-primary);border-bottom:1px solid var(--theme-border);text-align:center;vertical-align:middle;padding:12px 8px!important}.theme-table .ant-table-thead>tr>th:first-child{text-align:left}.theme-table .ant-table-tbody>tr>td{border-bottom:1px solid var(--theme-border);vertical-align:middle;padding:10px 8px!important;text-align:center}.theme-table .ant-table-tbody>tr>td:first-child{text-align:left}.theme-table .ant-table-tbody>tr:hover>td{background:var(--theme-background)!important}.theme-table .ant-table-title{padding:4px 8px!important;margin-bottom:8px!important}.ant-card-body>.theme-table,.ant-card-body>*>.theme-table,.ant-card-body>*>*>.theme-table{margin-top:-14px}.theme-table .ant-table-cell-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-form .ant-form-item-label>label{color:var(--theme-text-primary);font-weight:500}.theme-form .ant-input,.theme-form .ant-select-selector,.theme-form .ant-picker{border-color:var(--theme-border)!important;border-radius:4px!important}.theme-form .ant-input:focus,.theme-form .ant-input:hover,.theme-form .ant-select-focused .ant-select-selector,.theme-form .ant-select-selector:hover{border-color:var(--theme-primary)!important;box-shadow:0 0 0 2px #3b82f61a!important}.theme-tabs .ant-tabs-nav:before{border-bottom:1px solid var(--theme-border)}.theme-tabs .ant-tabs-tab{color:var(--theme-text-secondary);padding:12px 16px}.theme-tabs .ant-tabs-tab:hover{color:var(--theme-text-primary)}.theme-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--theme-primary)}.theme-tabs .ant-tabs-ink-bar{background:var(--theme-primary)}.theme-pagination .ant-pagination-item{border-color:var(--theme-border)}.theme-pagination .ant-pagination-item a{color:var(--theme-text-secondary)}.theme-pagination .ant-pagination-item-active{background:var(--theme-primary);border-color:var(--theme-primary)}.theme-pagination .ant-pagination-item-active a{color:#fff}.theme-pagination .ant-pagination-prev button,.theme-pagination .ant-pagination-next button{color:var(--theme-text-secondary)}.theme-tag{border-radius:4px;font-size:12px;padding:2px 8px}.theme-tag-primary{background:#3b82f61a;color:var(--theme-primary);border:none}.theme-tag-success{background:#18842c1a;color:var(--theme-success);border:none}.theme-tag-warning{background:#d4a8431a;color:var(--theme-warning);border:none}.theme-steps .ant-steps-item-process .ant-steps-item-icon{background:var(--theme-primary);border-color:var(--theme-primary)}.theme-steps .ant-steps-item-finish .ant-steps-item-icon{border-color:var(--theme-primary)}.theme-steps .ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon{color:var(--theme-primary)}.theme-statistic .ant-statistic-title{color:var(--theme-text-secondary);font-size:12px}.theme-statistic .ant-statistic-content-value{color:var(--theme-primary)}.theme-breadcrumb .ant-breadcrumb-link,.theme-breadcrumb .ant-breadcrumb-separator{color:var(--theme-text-secondary)}.theme-breadcrumb a:hover{color:var(--theme-primary)}.theme-modal .ant-modal-header{border-bottom:1px solid var(--theme-border)}.theme-modal .ant-modal-title{color:var(--theme-text-primary);font-weight:600}.theme-drawer .ant-drawer-header{border-bottom:1px solid var(--theme-border)}.theme-drawer .ant-drawer-title{color:var(--theme-text-primary);font-weight:600}.theme-empty .ant-empty-description,.theme-spin .ant-spin-text{color:var(--theme-text-secondary)}.knowledge-tree .ant-tree-treenode{padding:6px 0}.knowledge-tree .ant-tree-node-content-wrapper{padding:6px 10px;border-radius:6px}.knowledge-tree .ant-tree-node-content-wrapper:hover{background:#f0f4f8}.knowledge-tree .ant-tree-switcher{width:20px;height:20px}:root{--color-nav-bg: #FFFFFF;--color-nav-hover: #F3F4F6;--color-nav-text: #191C1D;--color-nav-text-muted: #757780;--color-primary: #2573E6;--color-primary-light: #D8E2FF;--color-primary-hover: #1D5FCC;--color-secondary: #6177A5;--color-tertiary: #D16900;--color-accent: #D16900;--color-success: #10B981;--color-bg: #F8F9FA;--color-bg-page: #F8F9FA;--color-bg-card: #FFFFFF;--color-text-primary: #191C1D;--color-text-secondary: #757780;--color-border: #E1E3E4;--color-footer-bg: #191C1D}:root{--pu-blue: #2859df;--pu-blue-strong: #1846bc;--pu-blue-soft: #edf2ff;--pu-navy: #142744;--pu-ink: #202f47;--pu-muted: #64748b;--pu-line: #e3e9f1;--pu-line-soft: #edf0f5;--pu-bg: #f5f7fb;--pu-green: #137b62;--pu-red: #c93d50;--pu-radius: 14px}.pu-page,.pu-page-fill,.pu-app{width:100%;color:var(--pu-ink);font-size:15px}.pu-page{max-width:1600px;margin:0 auto;padding:10px 16px 44px}.pu-app{background:var(--pu-bg);min-height:100%;padding:0}.pu-app .ant-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.pu-app .ant-table-wrapper .ant-table-container{width:100%}.pu-page-fill{padding:8px 12px 12px;display:flex;flex-direction:column;flex:1;min-height:0}.pu-breadcrumb{font-size:13px;color:#77869a;margin-bottom:18px}.pu-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.pu-head h1{font-size:29px;font-weight:650;letter-spacing:-.5px;line-height:1.5;color:var(--pu-ink)}.pu-head p{font-size:14px;color:var(--pu-muted);margin-top:6px;line-height:1.65}.pu-head__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pu-eyebrow{color:var(--pu-blue);font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.pu-grid{display:grid;gap:20px}.pu-grid--stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}.pu-grid--two{grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr)}.pu-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.pu-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.pu-stack{display:flex;flex-direction:column;gap:20px}.pu-card{background:#fff;border:1px solid var(--pu-line);border-radius:var(--pu-radius);padding:24px;min-width:0}.pu-card--flush{padding:0;overflow:hidden}.pu-card--soft{background:#f9fbff}.pu-card-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.pu-card-title h2{font-size:22px;font-weight:650;color:var(--pu-ink)}.pu-card-title h3{font-size:19px;font-weight:650;color:var(--pu-ink)}.pu-card h2{font-size:22px;font-weight:650}.pu-card h3{font-size:19px;font-weight:650}.pu-section-title{font-size:17px;font-weight:650;color:var(--pu-ink);margin-bottom:14px}.pu-divider{height:1px;background:var(--pu-line-soft);margin:20px 0}.pu-stat{position:relative;padding:20px 23px;background:#fff;border:1px solid var(--pu-line);border-radius:var(--pu-radius);min-width:0}.pu-stat__label{font-size:13px;color:var(--pu-muted)}.pu-stat__num{font-size:32px;font-weight:650;line-height:1.5;margin:8px 0;color:var(--pu-ink);font-variant-numeric:tabular-nums}.pu-stat__num small{font-size:14px;font-weight:400;margin-left:5px;color:var(--pu-muted)}.pu-stat__desc{font-size:12px;color:var(--pu-muted)}.pu-stat__icon{position:absolute;right:22px;top:22px;color:var(--pu-blue);background:var(--pu-blue-soft);padding:8px;border-radius:9px;line-height:1;display:inline-flex}.pu-welcome{background:#eaf0ff;border:1px solid #dce5ff;border-radius:var(--pu-radius);padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.pu-welcome h2{font-size:25px;font-weight:650;line-height:1.5;color:var(--pu-ink)}.pu-welcome p{color:#647695;font-size:14px;margin:8px 0 18px;line-height:1.8}.pu-welcome__metric{text-align:center;flex-shrink:0}.pu-welcome__metric b{font-size:40px;font-weight:650;color:var(--pu-blue);line-height:1.2}.pu-welcome__metric b small{font-size:16px;font-weight:500}.pu-welcome__metric p{margin:4px 0 0}.pu-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:center;background:#eef3fb;border:1px solid #e4ebf4;border-radius:16px;padding:44px;margin-bottom:24px}.pu-hero h1{font-size:40px;font-weight:650;line-height:1.35;margin:14px 0;letter-spacing:-.5px;color:var(--pu-ink)}.pu-hero>div>p{color:#62738a;line-height:1.9;font-size:14px}.pu-hero__card{background:#fff;border-radius:14px;padding:28px;box-shadow:0 10px 35px #16365409}.pu-hero__card>small{color:var(--pu-muted);font-size:12px}.pu-hero__card h2{font-size:24px;font-weight:650;margin:10px 0}.pu-hero__card p{font-size:12px;color:var(--pu-muted);margin-bottom:22px}.pu-hero__card .ant-btn{min-height:46px;font-weight:600}.pu-hero__card>a,.pu-hero__card .pu-hero__link{display:block;text-align:center;margin-top:14px;font-size:12px;color:var(--pu-blue);cursor:pointer}.pu-provider{display:flex;align-items:center;gap:14px;margin:26px 0}.pu-provider__icon{width:48px;height:48px;border-radius:12px;background:#fff;color:#315b91;display:grid;place-items:center;font-size:22px;flex-shrink:0}.pu-provider small{display:block;font-size:12px;color:#63748a}.pu-provider strong{display:block;font-size:17px;font-weight:600;margin-top:3px;color:var(--pu-ink)}.pu-provider strong span{font-size:10px;font-weight:400;color:#65748b;border:1px solid #d4dfeb;padding:2px 5px;margin-left:7px;border-radius:4px}.pu-tag{display:inline-block;border-radius:5px;padding:3px 9px;background:#eaf6f0;color:var(--pu-green);font-size:12px;white-space:nowrap;line-height:1.6}.pu-tag--blue{background:#edf1ff;color:var(--pu-blue)}.pu-tag--amber{background:#fff4df;color:#956009}.pu-tag--gray{background:#f0f3f7;color:#64748b}.pu-tag--red{background:#fdeef1;color:var(--pu-red)}.pu-tags{display:flex;flex-wrap:wrap;gap:8px}.pu-tags--plain .pu-tag{background:transparent;padding:0;color:var(--pu-muted);font-size:14px}.pu-tabs{display:flex;gap:26px;border-bottom:1px solid var(--pu-line);margin-bottom:24px;overflow-x:auto;scrollbar-width:none}.pu-tabs::-webkit-scrollbar{display:none}.pu-tabs__item{border:0;border-radius:0;background:transparent;white-space:nowrap;padding:12px 2px;color:var(--pu-muted);font-size:18px;cursor:pointer;transition:color .16s;border-bottom:3px solid transparent;margin-bottom:-1px}.pu-tabs__item:hover{color:var(--pu-blue)}.pu-tabs__item.is-active{color:var(--pu-blue);border-bottom-color:var(--pu-blue);font-weight:650}.pu-item{padding:15px 0;border-bottom:1px solid var(--pu-line-soft);display:flex;justify-content:space-between;gap:15px;align-items:center}.pu-item:last-child{border-bottom:0}.pu-item h3{font-size:16px;font-weight:600;color:var(--pu-ink)}.pu-item p{font-size:15px;color:var(--pu-muted);margin-top:4px;line-height:1.7}.pu-item__num{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:#f0f4fc;color:var(--pu-blue);flex-shrink:0;font-weight:600;font-size:14px}.pu-item__body{flex:1;min-width:0}.pu-progress{height:6px;border-radius:5px;background:#edf1f7;overflow:hidden;margin:15px 0 10px}.pu-progress i{display:block;height:100%;border-radius:5px;background:#4776e8}.pu-progress--sm{margin:8px 0}.pu-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-start;margin-bottom:22px}.pu-filters>*{margin-left:0!important}.pu-filters--flush{margin-bottom:0}.pu-search{flex:1;max-width:360px;min-width:180px}.pu-hint{background:#f1f5fe;color:#546e97;border-radius:10px;padding:12px 16px;font-size:14px;line-height:1.75;margin-bottom:22px}.pu-note{padding:18px;border-left:3px solid var(--pu-blue);background:#f5f8ff;font-size:14px;line-height:1.85;color:#62738a;border-radius:0 10px 10px 0}.pu-empty{text-align:center;padding:60px 20px;color:var(--pu-muted)}.pu-empty h2{margin:10px 0;color:var(--pu-ink)}.pu-empty p{margin-bottom:18px}.pu-chart{display:flex;align-items:flex-end;height:170px;gap:18px;padding:15px 12px 0;border-bottom:1px solid var(--pu-line);margin-bottom:30px}.pu-chart__bar{flex:1;height:var(--h, 40%);background:#5e83ef;border-radius:5px 5px 0 0;position:relative;min-width:12px;transition:background .16s}.pu-chart__bar:not(:first-child){background:#b8cafb}.pu-chart__bar:hover{background:var(--pu-blue)}.pu-chart__bar span{position:absolute;bottom:-29px;font-size:12px;color:var(--pu-muted);width:100%;text-align:center;left:0}.pu-legend{display:flex;gap:18px;color:var(--pu-muted);font-size:12px;margin-top:15px}.pu-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.pu-metrics>div{background:#f6f8fb;padding:16px 18px;border-radius:10px}.pu-metrics strong{display:block;font-size:26px;font-weight:650;line-height:1.5;color:var(--pu-ink)}.pu-metrics small{font-size:12px;color:var(--pu-muted)}.pu-preview{background:#f6f8fc;padding:15px;border-radius:10px}.pu-cover{background:#e9efff;color:#31508d;padding:25px;border-radius:10px;min-height:145px;display:flex;flex-direction:column;justify-content:space-between}.pu-cover--alt{background:#e7f4f0;color:#246958}.pu-cover--third{background:#f5edfa;color:#75538b}.pu-cover b{font-size:24px;max-width:260px;line-height:1.45}.pu-table-wrap{overflow:auto}.pu-table-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;font-size:13px;color:var(--pu-muted);flex-wrap:wrap}:is(.pu-page,.pu-page-fill,.pu-app) .ant-card{border-radius:var(--pu-radius);border-color:var(--pu-line);box-shadow:none}:is(.pu-page,.pu-page-fill,.pu-app) .ant-card-head{border-bottom-color:var(--pu-line-soft);font-weight:650}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table{font-size:16px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-thead>tr>th{background:#f6f8fc!important;color:var(--pu-muted)!important;font-size:16px!important;font-weight:500!important;padding:14px!important;border-bottom:1px solid var(--pu-line)!important;white-space:nowrap}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-thead>tr>th:before{display:none!important}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-tbody>tr>td{font-size:16px!important;padding:17px 14px!important;border-bottom:1px solid var(--pu-line-soft)!important;white-space:nowrap}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table .pu-cell-wrap{white-space:normal}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table .ant-tag{font-size:16px;line-height:24px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table .ant-typography{font-size:16px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-content>table,:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-body>table{table-layout:auto!important}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-cell-ellipsis{width:100%}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-tbody>tr:last-child>td{border-bottom:1px solid var(--pu-line-soft)!important}:is(.pu-page,.pu-page-fill,.pu-app) .ant-table-tbody>tr:hover>td{background:#f8fafd!important}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination{font-size:13px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item,:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-prev,:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-next{border-radius:8px!important}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item a{color:#374151}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item:hover{border-color:var(--pu-blue)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item:hover a{color:var(--pu-blue)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item-active{border-color:var(--pu-blue);background:var(--pu-blue-soft)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-pagination-item-active a{color:var(--pu-blue)!important;font-weight:600}:is(.pu-page,.pu-page-fill,.pu-app) .ant-tabs-top>.ant-tabs-nav:before{border-bottom:1px solid var(--pu-line)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-tabs-tab{font-size:14px;padding:12px 2px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:650}:is(.pu-page,.pu-page-fill,.pu-app) .ant-tabs-top>.ant-tabs-nav .ant-tabs-ink-bar{height:3px;border-radius:2px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn{border-radius:8px;font-weight:400}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-default:not(:disabled):not(.ant-btn-disabled){background:#fff;border-color:var(--pu-line);color:var(--pu-ink)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-default:not(:disabled):not(.ant-btn-disabled):hover{background:#edf2ff;border-color:#c6d3f7;color:var(--pu-ink)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-primary:not(:disabled):not(.ant-btn-disabled){background:var(--pu-blue);border-color:var(--pu-blue)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-primary:not(:disabled):not(.ant-btn-disabled):hover{background:var(--pu-blue-strong);border-color:var(--pu-blue-strong)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled){background:transparent;border-color:var(--pu-blue);color:var(--pu-blue)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-btn-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:var(--pu-blue-soft);border-color:var(--pu-blue);color:var(--pu-blue)}:is(.pu-page,.pu-page-fill,.pu-app) .pu-head__actions .ant-btn{min-height:38px;padding:0 16px}:is(.pu-page,.pu-page-fill,.pu-app) .ant-input,:is(.pu-page,.pu-page-fill,.pu-app) .ant-input-affix-wrapper,:is(.pu-page,.pu-page-fill,.pu-app) .ant-select-selector,:is(.pu-page,.pu-page-fill,.pu-app) .ant-picker{border-radius:8px!important;border-color:#d9e1ec}:is(.pu-page,.pu-page-fill,.pu-app) .ant-empty-description{color:var(--pu-muted)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-descriptions-bordered .ant-descriptions-item-label{background:#f6f8fc;color:var(--pu-muted)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-collapse{border:1px solid var(--pu-line);border-radius:var(--pu-radius);background:#fff}:is(.pu-page,.pu-page-fill,.pu-app) .ant-collapse>.ant-collapse-item{border-bottom-color:var(--pu-line-soft)}:is(.pu-page,.pu-page-fill,.pu-app) .ant-typography h1,.pu-page h1.ant-typography{font-size:29px}.pu-shell{display:grid;grid-template-columns:244px minmax(0,1fr);flex:1;min-width:0;width:100%}.pu-aside{background:#fff;border-right:1px solid var(--pu-line);padding:20px 14px 30px;position:sticky;top:60px;align-self:start;height:calc(100vh - 60px);overflow-y:auto}.pu-shell--teacher .pu-aside{top:76px;height:calc(100vh - 76px)}.pu-scope{border:1px solid var(--pu-line);border-radius:10px;padding:13px;margin-bottom:18px;font-size:14px}.pu-scope small{color:var(--pu-muted);font-size:12px}.pu-scope b{display:block;margin-top:4px;color:var(--pu-ink);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pu-nav-search{margin-bottom:14px}.pu-nav-group{margin:16px 12px 6px;color:#8090a5;font-size:12px;letter-spacing:1px}.pu-nav-group__toggle{display:flex;align-items:center;justify-content:space-between;width:auto;border:0;background:transparent;padding:0;cursor:pointer;text-align:left;transition:color .15s}.pu-nav-group__toggle:hover{color:var(--pu-blue)}.pu-nav-group__toggle .anticon{font-size:11px}.pu-nav-link{display:flex;align-items:center;gap:11px;width:100%;color:#596b84;padding:9px 13px;margin:3px 0;border-radius:8px;font-size:14px;min-height:42px;border:0;background:transparent;cursor:pointer;text-align:left;transition:background .15s,color .15s}.pu-nav-link:hover{background:#f2f5fb}.pu-nav-link.active{background:#eaf0ff;color:var(--pu-blue);font-weight:650}.pu-nav-icon{display:inline-flex;font-size:16px;flex-shrink:0}.pu-workspace{min-width:0;display:flex;flex-direction:column}@media(max-width:900px){.pu-shell{grid-template-columns:minmax(0,1fr)}.pu-shell>.pu-aside{display:none}}.ant-drawer .pu-aside{position:static;height:auto;border-right:none;padding:16px 10px 24px}.pu-login-wrap{width:100%;max-width:1280px;margin:0 auto;padding:36px 24px 48px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch;flex:1;min-height:0}.pu-login-wrap>.pu-card{display:flex;flex-direction:column;justify-content:center}.pu-login-art{background:linear-gradient(150deg,#3565e6,#2859df 45%,#173ea8);border-radius:20px;padding:46px 42px 42px;min-height:420px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;position:relative}.pu-login-art:after{content:"";position:absolute;right:-120px;bottom:-140px;width:360px;height:360px;border-radius:50%;background:#ffffff14;pointer-events:none}.pu-login-art__img{display:block;width:100%;flex:1;min-height:180px;margin-top:30px;border-radius:14px;object-fit:cover}.pu-login-art h1{font-size:38px;font-weight:650;line-height:1.4;letter-spacing:-.5px;color:#fff;margin:0}.pu-login-art p{margin-top:22px;color:#ffffffdb;font-size:15px;line-height:1.9}.pu-login-art .pu-eyebrow{color:#ffffffd9}.pu-role-option{display:flex;align-items:center;gap:16px;width:100%;padding:18px 20px;background:#fff;border:1px solid var(--pu-line);border-radius:14px;cursor:pointer;text-align:left;transition:border-color .16s,background .16s,transform .16s}.pu-role-option:hover{border-color:var(--pu-blue);background:#f7faff;transform:translate(4px)}.pu-role-option__icon{width:50px;height:50px;border-radius:13px;background:var(--pu-blue-soft);color:var(--pu-blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}@media(max-width:900px){.pu-login-wrap{grid-template-columns:1fr;gap:18px;padding:16px 14px 32px}.pu-login-art{min-height:0;padding:28px 24px}.pu-login-art__img{min-height:150px;margin-top:20px}.pu-login-art h1{font-size:27px}}.ed-course.is-enrolled{border:1px solid #c7d8fb;box-shadow:0 8px 24px #2859df0f}@media(max-width:1200px){.pu-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.pu-grid--stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pu-hero{grid-template-columns:minmax(0,1fr) 260px;gap:28px;padding:32px}.pu-hero h1{font-size:34px}.pu-grid--two,.pu-grid--three{grid-template-columns:minmax(0,1fr)}.pu-page{padding:8px 12px 36px}}@media(max-width:760px){.pu-page{padding:6px 10px 32px}.pu-head{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:20px}.pu-head h1{font-size:24px}.pu-head__actions{width:100%}.pu-card{padding:18px}.pu-grid{gap:14px}.pu-grid--stats,.pu-grid--four,.pu-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}.pu-welcome{flex-direction:column;align-items:flex-start;padding:22px}.pu-hero{grid-template-columns:1fr;gap:26px;padding:26px 22px}.pu-hero h1{font-size:30px}.pu-hero__card{padding:22px}.pu-welcome h2{font-size:21px}.pu-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pu-metrics>div{padding:12px}.pu-metrics strong{font-size:22px}.pu-stat__num{font-size:26px}.pu-stat__icon{display:none}.pu-tabs{gap:18px}.pu-filters .ant-input-affix-wrapper,.pu-filters .ant-select{width:100%;max-width:none}}.pu-info{border:1px solid var(--pu-line);border-radius:12px;overflow:hidden}.pu-info__row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:12px 18px;border-bottom:1px solid var(--pu-line-soft);font-size:14px}.pu-info__row:last-child{border-bottom:0}.pu-info__row:nth-child(odd){background:#fafbfd}.pu-info__label{color:var(--pu-muted)}.pu-info__value{color:var(--pu-ink);font-weight:600}@media(max-width:760px){.pu-info__row{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:11px 14px}}.pu-intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:36px;align-items:start}@media(max-width:992px){.pu-intro-grid{grid-template-columns:minmax(0,1fr);gap:20px}}.pu-intro-card{margin-bottom:18px}.pu-intro-stats .pu-grid--stats{margin-bottom:24px}.pu-welcome--plain{background:transparent;border:none;border-radius:0;padding:0}.pu-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.pu-detail-side{position:sticky;top:16px}@media(max-width:1100px){.pu-detail-layout{grid-template-columns:minmax(0,1fr)}.pu-detail-side{position:static}}.profile-learn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.profile-learn-card{display:flex;flex-direction:row;align-items:center;gap:12px;padding:16px;min-height:84px;border:1px solid var(--pu-line, #e3e9f1);border-radius:12px;background:#fff;cursor:pointer;text-align:left;transition:border-color .15s,transform .15s,box-shadow .15s}.profile-learn-card:hover{border-color:#c7d8fb;box-shadow:0 6px 18px #2859df0f;transform:translateY(-2px)}.profile-learn-card__body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.profile-learn-card__title{font-size:15px;font-weight:650;color:var(--pu-ink, #202f47);line-height:1.4}.profile-learn-card__meta{font-size:12px;color:var(--pu-muted, #64748b)}.profile-learn-card__arrow{flex-shrink:0;font-size:16px;color:var(--pu-muted, #94a3b8);transition:color .15s,transform .15s}.profile-learn-card:hover .profile-learn-card__arrow{color:var(--pu-blue, #2859df);transform:translate(2px)}.profile-learn-more{margin-top:12px;padding:7px 16px;border:1px solid var(--pu-line, #e3e9f1);border-radius:8px;background:#fff;font-size:13px;color:var(--pu-ink, #202f47);cursor:pointer}.profile-learn-more:hover{background:#f5f7fa}.profile-learn-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.profile-learn-columns .pu-item:last-of-type{border-bottom:0}.profile-learn-columns .pu-item{padding:15px 12px;margin:0 -12px;border-radius:10px;transition:background .15s ease,box-shadow .15s ease}.profile-learn-columns .pu-item:hover{background:#edf2ff;box-shadow:inset 0 0 0 1px #d6e2ff}.profile-learn-columns .pu-item h3{font-size:18px;font-weight:650}.profile-learn-columns .pu-item .anticon{color:#b6c1d4;font-size:16px;transition:color .15s ease,transform .15s ease}.profile-learn-columns .pu-item:hover .anticon{color:var(--pu-blue);transform:translate(3px)}@media(max-width:900px){.profile-learn-columns{grid-template-columns:minmax(0,1fr)}}.user-menu-trigger{transition:opacity .15s}.user-menu-trigger:hover{opacity:.82}.user-menu-trigger:focus-visible{outline:2px solid var(--pu-blue, #2859df);outline-offset:2px;border-radius:8px}.ant-modal .ant-form-item-label>label{font-size:15px}.ant-modal .ant-form-item .ant-input,.ant-modal .ant-form-item .ant-input-affix-wrapper,.ant-modal .ant-form-item .ant-select-single .ant-select-selector,.ant-modal .ant-form-item .ant-select-multiple .ant-select-selector,.ant-modal .ant-form-item .ant-input-number,.ant-modal .ant-form-item .ant-picker{font-size:15px}.aui-thread-root{height:100%;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#fff,#f7f9fc)}.aui-thread-header{padding:12px 24px;border-bottom:1px solid #f0f0f0;font-weight:600;font-size:15px;background-color:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0}.aui-thread-viewport{flex:1;overflow-y:auto;padding:16px 24px;scroll-behavior:smooth;display:flex;flex-direction:column;gap:16px;min-height:0}.aui-message-row{display:flex;gap:12px}.aui-message-row-user{flex-direction:row-reverse}.aui-message-column{max-width:75%;display:flex;flex-direction:column;gap:8px}.aui-message-column-user{align-items:flex-end}.aui-message-column-assistant{align-items:flex-start}.aui-message-name{font-size:12px;font-weight:500;color:#8a97a8;padding:0 2px}.aui-message-bubble{border-radius:16px;padding:10px 16px;font-size:14px;line-height:1.6;word-break:break-word;box-shadow:0 6px 18px #0f172a0f}.aui-message-row-user .aui-message-bubble{background:linear-gradient(135deg,#1677ff,#3b82f6);color:#fff}.aui-message-row-assistant .aui-message-bubble{background:#fff;color:#1f2937;border:1px solid #eef2f7}.aui-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;color:#999;gap:12px;padding:24px 40px;flex:1}.aui-composer-root{padding:12px 24px 20px;border-top:1px solid #f0f0f0;background-color:#fff;flex-shrink:0}.aui-composer-shell{display:flex;gap:8px;align-items:flex-end;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:12px;padding:4px 4px 4px 0;transition:border-color .2s}.aui-composer-shell:focus-within{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.aui-composer-leading{display:flex;align-items:center;padding-left:8px;flex-shrink:0}.aui-composer-leading .ant-select-single,.aui-composer-leading .ant-select-single .ant-select-selector{height:40px}.aui-composer-leading .ant-select-single .ant-select-selection-item,.aui-composer-leading .ant-select-single .ant-select-selection-placeholder{line-height:38px}.aui-composer-input{flex:1;border:none;border-radius:12px;padding:8px 12px;font-size:14px;resize:none;min-height:40px;max-height:120px;outline:none;font-family:inherit;line-height:1.5;background:transparent}.aui-composer-input::placeholder{color:#bfbfbf}.aui-composer-action{width:36px;height:36px;border:none;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;flex-shrink:0;transition:transform .15s ease,opacity .15s ease}.aui-composer-action:hover{transform:translateY(-1px)}.aui-composer-action:disabled{opacity:.4;cursor:default;transform:none}.aui-composer-send{background:#1677ff}.aui-composer-cancel{background:#ff4d4f}.aui-tool-call{max-width:100%;border-radius:14px;padding:10px 14px;font-size:13px;display:flex;align-items:center;gap:8px;line-height:1.5}.aui-tool-call-running{background:#fff7e6;border:1px solid #ffd591;color:#8c5a00}.aui-tool-call-complete{background:#f6ffed;border:1px solid #b7eb8f;color:#237804}.aui-tool-call-error{background:#fff2f0;border-color:#ffccc7;color:#cf1322}.aui-tool-call-name{font-weight:600}.aui-markdown-content{line-height:1.6;word-break:break-word}.aui-markdown-content>*:first-child{margin-top:0}.aui-markdown-content>*:last-child{margin-bottom:0}.aui-markdown-content p{margin:8px 0}.aui-message-row-user .aui-markdown-content code{background-color:#ffffff2e}.aui-markdown-content code{background-color:#f5f5f5;padding:2px 6px;border-radius:4px;font-size:.9em}.aui-message-row-user .aui-markdown-content pre{background-color:#ffffff24}.aui-markdown-content pre{background-color:#f6f8fa;padding:12px;border-radius:8px;overflow-x:auto}.aui-markdown-content pre code{background-color:transparent;padding:0}.aui-markdown-content ul,.aui-markdown-content ol{padding-left:20px;margin:8px 0}.aui-markdown-content li{margin:4px 0}.aui-markdown-content table{border-collapse:collapse;width:100%;margin:12px 0}.aui-markdown-content th,.aui-markdown-content td{border:1px solid #e0e0e0;padding:8px 12px;text-align:left}.aui-markdown-content th{background-color:#f9fafb;font-weight:600}.aui-markdown-content h1,.aui-markdown-content h2,.aui-markdown-content h3{margin-top:16px;margin-bottom:8px}.aui-markdown-content blockquote{border-left:4px solid #1677ff;margin:8px 0;padding:4px 16px;background-color:#f5f5f5;border-radius:0 4px 4px 0}.ant-layout,.ant-layout-content,.flex-tabs,.flex-tabs>.ant-tabs-content-holder,.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content,.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane,.flex-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane-active{min-height:0}.mindmap-transform,.mindmap-container,[class*=graph-],.ant-pro-layout-content,.ant-layout-content,.mindmap-node{min-height:0;min-width:0}div[style*=echarts],div[ref=chartRef],canvas{min-width:0;min-height:0}.front-dashboard-feature-card--album,.front-dashboard-album-stage{min-height:0;min-width:0}.front-dashboard-album-card.is-prev,.front-dashboard-album-card.is-next,.front-dashboard-album-card.is-active{pointer-events:auto!important}.front-dashboard-album-card{min-width:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cl-search-input .ant-input-affix-wrapper{border-radius:24px;-webkit-border-radius:24px}.front-dashboard-page .ant-card,.front-dashboard-glass-card,.front-dashboard-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.ant-modal-mask,.ant-modal-wrap,.ant-drawer:not(.ant-drawer-inline),.ant-drawer-mask,.ant-spin-fullscreen{top:0;left:0}.ant-modal-mask,.ant-modal-wrap,.ant-drawer:not(.ant-drawer-inline),.ant-drawer-mask,.ant-spin-fullscreen{right:0;bottom:0}.ant-drawer-top>.ant-drawer-content-wrapper,.ant-drawer-bottom>.ant-drawer-content-wrapper{left:0;right:0}.front-dashboard-album-card__media{top:0;left:0}.front-dashboard-album-card__media{right:0;bottom:0}.ReactCrop__crop-mask{top:0;left:0}.ReactCrop__crop-mask{right:0;bottom:0}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{top:-1px;left:-1px}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{right:-1px;bottom:-1px}
