@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,400..800&family=Inter+Tight:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Noto+Serif+SC:wght@400;500;600;700&display=swap";@keyframes enter{0%{opacity:0;top:-10px}5%{opacity:1;top:0}50.9%{opacity:1;top:0}55.9%{opacity:0;top:10px}}body{background:#f8f8f9}#app-loader{margin-top:-27.5px;margin-left:-27.5px;position:absolute;top:50%;left:50%}#app-loader .square{float:left;opacity:0;background:#2d8cf0;width:15px;height:15px;margin-top:5px;margin-right:5px;animation:6s infinite enter;position:relative;top:-10px}#app-loader .enter{opacity:1;top:0}#app-loader .square:first-child{animation-delay:1.8s}#app-loader .square:nth-child(2){animation-delay:2.1s}#app-loader .square:nth-child(3){background:#f90;animation-delay:2.4s}#app-loader .square:nth-child(4){animation-delay:.9s}#app-loader .square:nth-child(5){animation-delay:1.2s}#app-loader .square:nth-child(6){animation-delay:1.5s}#app-loader .square:nth-child(8){animation-delay:.3s}#app-loader .square:nth-child(9){animation-delay:.6s}#app-loader .clear{clear:both}#app-loader .last{margin-right:0}.auth-panel[data-v-ec98360e]{max-width:420px;margin:0 auto;padding:2px 2px 0}.sso-card[data-v-ec98360e]{border:1px solid var(--oj-border);border-radius:var(--oj-radius-medium);background:var(--oj-surface-muted);text-align:center;padding:16px}.sso-eyebrow[data-v-ec98360e]{color:var(--oj-accent);letter-spacing:.16em;font-size:11px;font-weight:800}.sso-copy[data-v-ec98360e]{color:var(--oj-text-muted);margin:8px 0 14px;font-size:13px;line-height:1.6}.sso-button[data-v-ec98360e]{margin-bottom:10px}.sso-register[data-v-ec98360e]{color:var(--oj-accent);cursor:pointer;font-size:13px}.auth-divider[data-v-ec98360e]{color:var(--oj-text-faint);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:12px;margin:18px 0;font-size:12px;display:flex}.auth-divider[data-v-ec98360e]:before,.auth-divider[data-v-ec98360e]:after{content:"";background:var(--oj-border);flex:1;height:1px}.footer[data-v-ec98360e]{text-align:left;margin-top:20px;margin-bottom:-15px;overflow:auto}.footer .btn[data-v-ec98360e]{margin:0 0 15px}.footer .btn[data-v-ec98360e]:last-child{margin:0}.auth-panel[data-v-38af1c90]{max-width:420px;margin:0 auto;padding:2px 2px 0}.sso-card[data-v-38af1c90]{border:1px solid var(--oj-border);border-radius:var(--oj-radius-medium);background:var(--oj-surface-muted);text-align:center;padding:16px}.sso-eyebrow[data-v-38af1c90]{color:var(--oj-accent);letter-spacing:.16em;font-size:11px;font-weight:800}.sso-copy[data-v-38af1c90]{color:var(--oj-text-muted);margin:8px 0 14px;font-size:13px;line-height:1.6}.sso-button[data-v-38af1c90]{margin-bottom:10px}.sso-register[data-v-38af1c90]{color:var(--oj-accent);cursor:pointer;font-size:13px}.footer[data-v-38af1c90]{text-align:left;margin-top:20px;margin-bottom:-15px;overflow:auto}.footer .btn[data-v-38af1c90]{margin:0 0 15px}.footer .btn[data-v-38af1c90]:last-child{margin:0}#header[data-v-c2f25e68]{z-index:1000;background:var(--color-bg);border-bottom:1px solid var(--color-border);min-width:320px;height:56px;position:fixed;inset:0 0 auto}.nav-inner[data-v-c2f25e68]{max-width:var(--layout-max-width);height:56px;padding:0 var(--layout-gutter);box-sizing:border-box;align-items:center;margin:0 auto;display:flex;overflow:hidden}.oj-menu[data-v-c2f25e68]{background:var(--color-bg);border-bottom:0;flex:1;min-width:0;height:56px;min-height:56px;overflow:hidden;border-right:0!important}.logo[data-v-c2f25e68]{height:56px;color:var(--color-text);white-space:nowrap;align-items:center;gap:9px;margin:0 20px 0 0;font-size:17px;font-weight:700;display:inline-flex}.brand-mark[data-v-c2f25e68]{border-radius:var(--radius-sm);background:var(--color-text);color:#fff;letter-spacing:.06em;place-items:center;width:30px;height:30px;font-size:11px;display:inline-grid}.nav-actions[data-v-c2f25e68]{flex:none;align-items:center;gap:6px;margin-left:12px;display:flex}.nav-search[data-v-c2f25e68]{width:210px}.drop-menu-title[data-v-c2f25e68]{color:var(--color-text);align-items:center;gap:7px;display:inline-flex}.user-avatar[data-v-c2f25e68]{background:var(--color-bg-subtle);width:26px;height:26px;color:var(--color-text);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:inline-grid}.modal-title[data-v-c2f25e68]{font-size:18px;font-weight:600;font-family:var(--font-serif)}[data-v-c2f25e68] .el-menu-item,[data-v-c2f25e68] .el-sub-menu__title{border-radius:var(--radius-sm);height:36px;color:var(--color-text-muted);justify-content:flex-start;align-items:center;gap:6px;margin:10px 2px;padding:0 11px;line-height:1;display:inline-flex}[data-v-c2f25e68] .el-menu-item{box-sizing:border-box;height:36px!important;margin:10px 2px!important;line-height:36px!important}[data-v-c2f25e68] .el-sub-menu{height:56px!important}[data-v-c2f25e68] .el-sub-menu__title{box-sizing:border-box;height:36px!important;margin:10px 2px!important;padding:0 11px!important;line-height:36px!important}[data-v-c2f25e68] .legacy-icon{vertical-align:middle;flex:none;justify-content:center;align-items:center;width:16px;height:16px;line-height:1;display:inline-flex}[data-v-c2f25e68] .legacy-icon svg{display:block}[data-v-c2f25e68] .el-menu-item:hover,[data-v-c2f25e68] .el-sub-menu__title:hover,[data-v-c2f25e68] .el-menu-item.is-active{background:var(--color-bg-subtle);color:var(--color-text)}[data-v-c2f25e68] .el-menu-item.is-active,[data-v-c2f25e68] .el-sub-menu.is-active>.el-sub-menu__title{border-bottom:0!important}[data-v-c2f25e68] .el-menu--horizontal>.el-menu-item.is-active:after,[data-v-c2f25e68] .el-menu--horizontal>.el-sub-menu.is-active:after,[data-v-c2f25e68] .el-menu--horizontal>.el-sub-menu .el-sub-menu__title:after{display:none!important}[data-v-c2f25e68] .el-sub-menu .el-sub-menu__icon-arrow{display:none}[data-v-c2f25e68] .el-input__wrapper,[data-v-c2f25e68] .el-button{min-height:34px}@media (width<=1000px){.nav-search[data-v-c2f25e68]{width:160px}[data-v-c2f25e68] .oj-menu>.el-sub-menu{display:none}}@media (width<=760px){.nav-inner[data-v-c2f25e68]{padding:0 14px}.brand-name[data-v-c2f25e68]{display:none}.nav-actions[data-v-c2f25e68]{margin-left:6px}.nav-search[data-v-c2f25e68]{width:140px}.nav-actions>.el-button[data-v-c2f25e68]{padding:0 8px}}@media (width<=640px){[data-v-c2f25e68] .oj-menu>.el-menu-item:nth-of-type(4){display:none}.nav-search[data-v-c2f25e68]{width:120px}}@media (width<=520px){.nav-search[data-v-c2f25e68],[data-v-c2f25e68] .oj-menu>.el-menu-item:nth-of-type(3){display:none}}@media (width<=420px){.nav-actions>.el-button[data-v-c2f25e68]:last-child{display:none}}@media (width<=360px){.logo[data-v-c2f25e68]{display:none}}.content-app{max-width:var(--layout-max-width);width:100%;padding:80px var(--layout-gutter) 0;box-sizing:border-box;margin:0 auto}.footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-faint);margin:48px auto 18px;padding-top:18px;font-size:12px}.footer p{margin:4px 0}.footer a{color:inherit}.fadeInUp-enter-active{animation:.22s both fadeInUp}@media (width<=760px){.content-app{padding:72px 14px 0}}@media (prefers-reduced-motion:reduce){.fadeInUp-enter-active{animation:none}}.page[data-v-7e252dd4]{float:right;margin:20px}.ivu-page-options-sizer{min-width:85px}.problem-list-panel[data-v-1817d727] .el-card__header{justify-content:space-between;align-items:center;gap:20px;display:flex}.problem-list-panel[data-v-1817d727] .panel-title{flex:none}.problem-list-panel[data-v-1817d727] .panel-extra{flex:1;min-width:0;line-height:normal}.problem-filters[data-v-1817d727]{white-space:nowrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.filter-control[data-v-1817d727]{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);height:34px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition), border-color var(--transition), background-color var(--transition);justify-content:center;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.filter-control[data-v-1817d727]:hover{border-color:var(--line-strong);background:var(--color-bg-subtle);color:var(--color-text)}.filter-control.is-active[data-v-1817d727]{border-color:color-mix(in srgb, var(--cat-kaggle) 28%, var(--color-border));background:var(--tag-kaggle-bg);color:var(--cat-kaggle)}.difficulty-filter[data-v-1817d727]{justify-content:space-between;min-width:104px}.keyword-filter[data-v-1817d727]{width:230px}.reset-filter[data-v-1817d727]{color:var(--color-text);background:var(--color-bg-subtle)}.reset-filter[data-v-1817d727]:hover{background:var(--bg-hover)}.taglist-title[data-v-1817d727]{margin:0}.tag-grid[data-v-1817d727]{flex-wrap:wrap;gap:8px;display:flex}.tag-btn[data-v-1817d727]{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);min-width:max-content;min-height:30px;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:color var(--transition), border-color var(--transition), background-color var(--transition);padding:4px 9px;font-size:13px;overflow:hidden}.tag-btn[data-v-1817d727]:hover{border-color:var(--line-strong);background:var(--color-bg-subtle);color:var(--color-text)}.tag-btn.is-selected[data-v-1817d727]{border-color:color-mix(in srgb, var(--cat-tools) 30%, var(--color-border));background:var(--tag-tools-bg);color:var(--cat-tools);font-weight:600}#pick-one[data-v-1817d727]{margin-top:12px}.pick-one-button[data-v-1817d727]>span{justify-content:center;align-items:center;gap:8px;display:inline-flex}[data-v-1817d727] .difficulty-badge{border-radius:var(--radius-sm);border:1px solid #0000;justify-content:center;align-items:center;width:58px;height:24px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}[data-v-1817d727] .problem-title-link{appearance:none;width:100%;color:var(--color-text);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:2px 0;display:block;overflow:hidden}[data-v-1817d727] .problem-title-link:hover{color:var(--color-link)}[data-v-1817d727] .difficulty-low{border-color:color-mix(in srgb, var(--cat-tools) 20%, transparent);background:var(--tag-tools-bg);color:var(--cat-tools)}[data-v-1817d727] .difficulty-mid{border-color:color-mix(in srgb, var(--cat-kaggle) 20%, transparent);background:var(--tag-kaggle-bg);color:var(--cat-kaggle)}[data-v-1817d727] .difficulty-high{border-color:color-mix(in srgb, var(--cat-research) 20%, transparent);background:var(--tag-research-bg);color:var(--cat-research)}[data-v-1817d727] .table-tag-list{flex-wrap:wrap;justify-content:center;gap:6px;margin:8px 0;display:flex}[data-v-1817d727] .table-tag-chip{border-radius:var(--radius-sm);background:var(--color-bg-subtle);min-height:24px;color:var(--color-text-muted);align-items:center;padding:3px 8px;font-size:13px;display:inline-flex}@media (width<=1100px){.problem-list-panel[data-v-1817d727] .el-card__header{flex-direction:column;align-items:flex-start}.problem-list-panel[data-v-1817d727] .panel-extra{width:100%}.problem-filters[data-v-1817d727]{flex-wrap:wrap;justify-content:flex-start}}@media (width<=900px){.problem-list-main[data-v-1817d727],.problem-tag-sidebar[data-v-1817d727]{flex:0 0 100%;width:100%;max-width:100%}.problem-tag-sidebar[data-v-1817d727]{margin-top:18px}}@media (width<=560px){.keyword-filter[data-v-1817d727]{order:5;width:100%}}.container[data-v-89e7c3a0]{text-align:center;width:75%;margin:170px auto;position:relative}.container p[data-v-89e7c3a0]{margin-top:8px;margin-bottom:8px}.container .avatar-container[data-v-89e7c3a0]{z-index:1;position:absolute;top:-90px;left:50%;transform:translate(-50%)}.container .avatar-container .avatar[data-v-89e7c3a0]{width:140px;height:140px;box-shadow:var(--shadow-card);border-radius:50%}.container .emphasis[data-v-89e7c3a0]{font-size:20px;font-weight:600}.container #split[data-v-89e7c3a0]{width:90%;margin:20px auto}.container .flex-container[data-v-89e7c3a0]{margin-top:30px;padding:auto 20px}.container .flex-container .left[data-v-89e7c3a0]{flex:1}.container .flex-container .middle[data-v-89e7c3a0]{border-left:1px solid #999;border-right:1px solid #999;flex:1}.container .flex-container .right[data-v-89e7c3a0]{flex:1}.container #problems[data-v-89e7c3a0]{margin-top:40px;padding-left:30px;padding-right:30px;font-size:18px}.container #problems .btns[data-v-89e7c3a0]{margin-top:15px}.container #problems .btns .problem-btn[data-v-89e7c3a0]{margin:5px;display:inline-block}.container #icons[data-v-89e7c3a0]{position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.container #icons .icon[data-v-89e7c3a0]{padding-left:20px}.container[data-v-d28261b6]{margin-bottom:20px}.container .content[data-v-d28261b6]{margin:0 50px 20px;font-size:16px}.container .content>ul[data-v-d28261b6]{list-style:outside}.container .content>ul li[data-v-d28261b6]{line-height:2}.container .content>ul li .title[data-v-d28261b6]{font-weight:500}.content[data-v-6345508c]{margin:0 50px 40px;font-size:16px}.content>ul[data-v-6345508c]{list-style:outside}.content>ul li[data-v-6345508c]{margin-top:20px;font-size:16px}.content>ul li[data-v-6345508c]:first-child{margin-top:0}.content>ul li p[data-v-6345508c]{margin-top:5px;font-size:14px}@keyframes error404animation-7662361b{0%{transform:rotate(0)}20%{transform:rotate(-60deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(50deg)}80%{transform:rotate(-20deg)}to{transform:rotate(0)}}.error404-body-con[data-v-7662361b]{width:700px;height:500px;margin:0 auto}.error404-body-con-title[data-v-7662361b]{text-align:center;color:#2d8cf0;height:260px;margin-top:40px;font-size:240px;font-weight:700;line-height:260px}.error404-body-con-title span[data-v-7662361b]{color:#19be6b;font-size:230px;animation:3s infinite alternate error404animation-7662361b;display:inline-block}.error404-body-con-message[data-v-7662361b]{text-align:center;letter-spacing:12px;color:#dddde2;font-size:30px;font-weight:500;display:block}.error404-btn-con[data-v-7662361b]{text-align:center;margin-bottom:40px;padding:20px 0}.announcements-container[data-v-5ef425e0]{margin-top:-10px;margin-bottom:10px;padding-left:0}.announcements-container li[data-v-5ef425e0]{border-bottom:1px solid var(--color-border);margin-left:20px;padding-top:15px;padding-bottom:15px;font-size:16px;list-style:none}.announcements-container li[data-v-5ef425e0]:last-child{border-bottom:none}.announcements-container li .flex-container .title[data-v-5ef425e0]{text-align:left;flex:1;padding-left:10px}.announcements-container li .flex-container .title a.entry[data-v-5ef425e0]{color:var(--color-text)}.announcements-container li .flex-container .title a.entry[data-v-5ef425e0]:hover{color:var(--color-link);border-bottom:1px solid var(--color-link)}.announcements-container li .flex-container .creator[data-v-5ef425e0],.announcements-container li .flex-container .date[data-v-5ef425e0]{text-align:center;flex:none;width:200px}.content-container[data-v-5ef425e0]{padding:0 20px 20px}.no-announcement[data-v-5ef425e0]{text-align:center;font-size:16px}.announcement-animate-enter-active[data-v-5ef425e0]{animation:1s fadeIn}.home-page[data-v-40a30500]{width:100%;margin:0;padding:30px 0 24px}.home-section[data-v-40a30500]{padding-top:30px}.section-heading[data-v-40a30500]{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.section-heading h2[data-v-40a30500]{font:600 24px/1.2 var(--font-serif);margin:0}.section-heading span[data-v-40a30500]{color:var(--color-text-faint);font-size:13px}.section-heading a[data-v-40a30500]{color:var(--color-text-muted);font-size:13px}.section-heading a[data-v-40a30500]:hover{color:var(--color-link)}.contest-card[data-v-40a30500],.problem-card[data-v-40a30500]{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;color:var(--color-text);text-align:left;cursor:pointer;transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition), transform .18s ease;align-items:center;display:flex}.contest-card[data-v-40a30500]:hover,.problem-card[data-v-40a30500]:hover{background:var(--color-bg-subtle);border-color:var(--line-strong);box-shadow:var(--shadow-card)}.contest-card[data-v-40a30500]:active,.problem-card[data-v-40a30500]:active{transform:scale(.99)}.contest-main[data-v-40a30500]{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.contest-main strong[data-v-40a30500]{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.contest-main small[data-v-40a30500]{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.contest-arrow[data-v-40a30500]{color:var(--color-text-faint);flex:none;transform:rotate(-90deg)}.home-columns[data-v-40a30500]{grid-template-columns:minmax(0,1fr) minmax(250px,.62fr);align-items:start;gap:24px;padding-top:30px;display:grid}.home-left-column[data-v-40a30500],.home-right-column[data-v-40a30500]{gap:24px;min-width:0;display:grid}.home-columns>.home-section[data-v-40a30500],.home-left-column>.home-section[data-v-40a30500],.home-right-column>.home-section[data-v-40a30500]{padding-top:0}.contest-list[data-v-40a30500]{gap:8px;display:grid}.contest-card[data-v-40a30500]{gap:14px;padding:14px 16px}.contest-date[data-v-40a30500]{white-space:nowrap;width:62px;color:var(--cat-competition);font:600 16px var(--font-serif);flex:0 0 62px;align-items:center;display:inline-flex}.empty-card[data-v-40a30500]{border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-faint);text-align:center;padding:26px}.problem-list[data-v-40a30500]{gap:8px;display:grid}.problem-card[data-v-40a30500]{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;min-height:58px;color:var(--color-text);text-align:left;cursor:pointer;transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition), transform .18s ease;align-items:center;gap:14px;padding:12px 16px;display:flex}.problem-card[data-v-40a30500]:hover{background:var(--color-bg-subtle);border-color:var(--line-strong);box-shadow:var(--shadow-card)}.problem-card[data-v-40a30500]:active{transform:scale(.99)}.problem-id[data-v-40a30500]{min-width:48px;color:var(--cat-tools);font:600 14px var(--font-serif);flex:none}.problem-main[data-v-40a30500]{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.problem-main strong[data-v-40a30500]{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.problem-main small[data-v-40a30500]{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.problem-arrow[data-v-40a30500]{color:var(--color-text-faint);flex:none;transform:rotate(-90deg)}.announcement-board[data-v-40a30500]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);overflow:hidden}.notice-board-header[data-v-40a30500]{border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);align-items:center;gap:12px;padding:14px 16px;display:flex}.notice-icon[data-v-40a30500]{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--cat-research);background:var(--tag-research-bg);place-items:center;display:grid}.notice-board-header>span[data-v-40a30500]:last-child{flex-direction:column;gap:2px;display:flex}.notice-board-header strong[data-v-40a30500]{font-size:14px}.notice-board-header small[data-v-40a30500]{color:var(--color-text-muted);font-size:12px}.ranking-board[data-v-40a30500]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);overflow:hidden}.ranking-link[data-v-40a30500]{appearance:none;border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);text-align:left;cursor:pointer;transition:background-color var(--transition);grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:13px 14px;display:grid}.ranking-link[data-v-40a30500]:last-child{border-bottom:0}.ranking-link[data-v-40a30500]:hover{background:var(--color-bg-subtle)}.ranking-link>span[data-v-40a30500]:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.ranking-link strong[data-v-40a30500]{font-size:14px}.ranking-link small[data-v-40a30500]{color:var(--color-text-muted);font-size:12px}.ranking-link strong b[data-v-40a30500]{color:var(--cat-tools);margin-left:5px;font-size:12px;font-weight:600}.ranking-icon[data-v-40a30500]{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--cat-tools);background:var(--tag-tools-bg);place-items:center;display:grid}.ranking-link:nth-child(2) .ranking-icon[data-v-40a30500]{color:var(--cat-competition);background:var(--tag-competition-bg)}.ranking-link:nth-child(3) .ranking-icon[data-v-40a30500]{color:var(--cat-kaggle);background:var(--tag-kaggle-bg)}.ranking-arrow[data-v-40a30500]{color:var(--color-text-faint);transform:rotate(-90deg)}.announcement-section[data-v-40a30500] .el-card{box-shadow:none;border:0;border-radius:0}.announcement-section[data-v-40a30500] .panel-title{font-size:inherit}.announcement-section[data-v-40a30500] .el-card__header{display:none}.announcement-section[data-v-40a30500] .el-card__body{padding:0 16px}.announcement-section[data-v-40a30500] .announcements-container{margin:0;padding:0}.announcement-section[data-v-40a30500] .announcements-container li{border-bottom:1px solid var(--color-border);margin:0;padding:13px 0}.announcement-section[data-v-40a30500] .announcements-container li:last-child{border-bottom:0}.announcement-section[data-v-40a30500] .flex-container{align-items:center}.announcement-section[data-v-40a30500] .creator{display:none}.announcement-section[data-v-40a30500] .date{width:auto;color:var(--color-text-faint);font-size:12px}.announcement-section[data-v-40a30500] .title{padding-left:0;font-size:14px}.announcement-section[data-v-40a30500] .title a.entry{color:var(--color-text)}.announcement-section[data-v-40a30500] .title a.entry:hover{color:var(--color-link)}.announcement-section[data-v-40a30500] .no-announcement{color:var(--color-text-faint);padding:22px 0;font-size:13px}@media (width<=900px){.home-columns[data-v-40a30500]{grid-template-columns:1fr;gap:24px;padding-top:0}}@media (width<=520px){.home-page[data-v-40a30500]{padding-top:4px}}.panel-title{padding:5px 15px;font-size:21px;font-weight:500;line-height:30px}.feiyue-panel{border-radius:var(--radius-md);box-shadow:var(--shadow-card)!important}.feiyue-panel .el-card__header{border-bottom-color:var(--color-border)}.panel-extra,.panel-extra .ivu-input-icon{line-height:40px}.panel-extra ul.filter>li{padding:0 10px;display:inline-block}.panel-body{word-break:break-all;word-wrap:break-word}.disabled[data-v-839e6875]{opacity:1;pointer-events:none;color:#ccc}.disabled[data-v-839e6875]:hover{color:#ccc;background:#fff;border-left:none}li[data-v-839e6875]{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);text-align:left;padding:15px 20px;display:block}li[data-v-839e6875]:hover{background:var(--color-bg-subtle);border-left:2px solid var(--color-text);color:var(--color-text)}li>.ivu-icon[data-v-839e6875],li>.legacy-icon[data-v-839e6875]{margin-right:8px;font-size:16px}li[data-v-839e6875]:last-child{border-bottom:none}:root{--color-bg:#fff;--color-bg-subtle:#f7f6f3;--bg-hover:#f1f1ef;--color-text:#37352f;--color-text-muted:#787774;--color-text-faint:#9b9a97;--color-border:#edece9;--line-strong:#dcdad4;--color-link:#2383e2;--cat-research:#e03e3e;--cat-course:#d9730d;--cat-recommend:#9065b0;--cat-competition:#b8405e;--cat-kaggle:#0b6e99;--cat-tools:#0f7b6c;--cat-life:#b5926a;--tag-research-bg:#e03e3e1f;--tag-course-bg:#d9730d1f;--tag-recommend-bg:#9065b01f;--tag-competition-bg:#b8405e1f;--tag-kaggle-bg:#0b6e991f;--tag-tools-bg:#0f7b6c1f;--tag-life-bg:#b5926a1f;--tag-tool-bg:var(--tag-tools-bg);--chart-blue:var(--color-link);--chart-teal:#34a896;--code-inline-bg:#87837817;--code-inline-fg:#c84747;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:9999px;--shadow-card:0 1px 2px #0000000a;--transition:.15s ease;--font-sans:"Inter Tight", "PingFang SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif:"Source Serif 4", "Noto Serif SC", Georgia, serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--layout-max-width:1400px;--layout-gutter:20px;--oj-success:var(--cat-tools);--oj-warning:var(--cat-course);--oj-danger:var(--cat-research);--oj-info:var(--cat-kaggle);--oj-border:var(--color-border);--oj-radius-small:var(--radius-sm);--oj-radius-medium:var(--radius-md);--oj-radius-large:var(--radius-lg);--oj-surface:var(--color-bg);--oj-surface-muted:var(--color-bg-subtle);--oj-text:var(--color-text);--oj-text-muted:var(--color-text-muted);--oj-text-faint:var(--color-text-faint);--oj-accent:var(--color-text);--oj-shadow-card:var(--shadow-card);--bg:var(--color-bg);--bg-soft:var(--color-bg-subtle);--fg:var(--color-text);--fg-muted:var(--color-text-muted);--fg-faint:var(--color-text-faint);--line:var(--color-border);--link:var(--color-link);--t-fast:var(--transition);--font-ui:var(--font-sans);--r-sm:var(--radius-sm);--r-md:var(--radius-md);--r-lg:var(--radius-lg)}html,body,#app{background:var(--color-bg);min-height:100%}html{caret-color:#0000}body{min-width:320px;color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:15px;line-height:1.5}*,:before,:after{box-sizing:border-box}button,input,textarea,select{font:inherit}input,textarea,[contenteditable=true],[contenteditable=plaintext-only],.cm-content{caret-color:auto}a{color:var(--color-link);transition:color var(--transition), background-color var(--transition);text-decoration:none}a:hover{color:var(--color-text)}:focus-visible{outline:2px solid color-mix(in srgb, var(--color-link) 38%, transparent);outline-offset:2px}::selection{background:#2383e229}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--line-strong)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--el-color-primary:var(--color-text);--el-color-primary-light-3:#625f58;--el-color-primary-light-5:#8b887f;--el-color-primary-light-7:#b7b4ad;--el-color-primary-light-8:#d2d0cb;--el-color-primary-light-9:var(--color-bg-subtle);--el-color-primary-dark-2:#25231f;--el-color-success:var(--oj-success);--el-color-warning:var(--oj-warning);--el-color-danger:var(--oj-danger);--el-color-info:var(--oj-info);--el-text-color-primary:var(--color-text);--el-text-color-regular:var(--color-text-muted);--el-text-color-secondary:var(--color-text-faint);--el-text-color-placeholder:var(--color-text-faint);--el-border-color:var(--color-border);--el-border-color-light:var(--color-border);--el-border-color-lighter:var(--color-border);--el-bg-color:var(--color-bg);--el-bg-color-page:var(--color-bg);--el-fill-color:var(--color-bg-subtle);--el-fill-color-light:var(--color-bg-subtle);--el-fill-color-lighter:#faf9f7;--el-fill-color-blank:var(--color-bg);--el-box-shadow-light:var(--shadow-card);--el-box-shadow:var(--shadow-card);--el-border-radius-base:var(--radius-sm);--el-border-radius-small:var(--radius-sm);--el-border-radius-round:var(--radius-pill)}.el-button{border-radius:var(--radius-sm);border-color:var(--color-border);min-height:34px;color:var(--color-text);transition:background-color var(--transition), border-color var(--transition), color var(--transition), transform .18s ease, box-shadow var(--transition)}.el-button:hover{color:var(--color-text);border-color:var(--line-strong);background:var(--bg-hover)}.el-button:active{transform:scale(.98)}.el-button--primary{color:#fff;background:var(--color-text);border-color:var(--color-text)}.el-button--primary:hover,.el-button--primary:focus{color:#fff;background:#25231f;border-color:#25231f}.el-button--success{color:var(--oj-success);background:var(--tag-tools-bg);border-color:#0f7b6c47}.el-button--warning{color:var(--oj-warning);background:var(--tag-course-bg);border-color:#d9730d47}.el-button--danger{color:var(--oj-danger);background:var(--tag-research-bg);border-color:#e03e3e47}.el-button.is-disabled,.el-button.is-disabled:hover{opacity:.5;transform:none}.el-button.is-text{background:0 0;border-color:#0000}.el-button.is-text:hover{background:var(--bg-hover)}.el-input__wrapper,.el-textarea__inner{border-radius:var(--radius-sm);background:var(--color-bg);box-shadow:0 0 0 1px var(--color-border) inset;transition:box-shadow var(--transition), background-color var(--transition)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--line-strong) inset}.el-input__wrapper.is-focus,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--color-text) inset, 0 0 0 3px #37352f14}.el-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);box-shadow:var(--shadow-card)}.el-card__header{border-bottom:1px solid var(--color-border);padding:16px 20px}.el-card__body{color:var(--color-text)}.el-menu{border-right:1px solid var(--color-border);background:var(--color-bg)}.el-menu-item,.el-sub-menu__title{color:var(--color-text-muted);transition:background-color var(--transition), color var(--transition)}.el-menu-item:hover,.el-sub-menu__title:hover{color:var(--color-text);background:var(--bg-hover)}.el-menu-item.is-active{color:var(--color-text);background:var(--color-bg-subtle);font-weight:600}.el-table{--el-table-border-color:var(--color-border);--el-table-header-bg-color:var(--color-bg-subtle);--el-table-row-hover-bg-color:var(--color-bg-subtle);color:var(--color-text)}.el-table th.el-table__cell{color:var(--color-text-muted);background:var(--color-bg-subtle);font-weight:600}.el-table td.el-table__cell,.el-table th.el-table__cell{border-bottom-color:var(--color-border)}.el-tag{border-radius:var(--radius-pill);border-color:#0000;font-weight:500}.el-tag--success{color:var(--oj-success);background:var(--tag-tools-bg)}.el-tag--warning{color:var(--oj-warning);background:var(--tag-course-bg)}.el-tag--danger{color:var(--oj-danger);background:var(--tag-research-bg)}.el-tag--info{color:var(--oj-info);background:var(--tag-kaggle-bg)}.el-pagination button,.el-pagination .el-pager li{border-radius:var(--radius-sm);color:var(--color-text-muted)}.el-pagination .el-pager li.is-active{color:#fff;background:var(--color-text)}.el-dialog{border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 14px 40px #37352f1f}.el-dialog__header{border-bottom:1px solid var(--color-border);margin-right:0;padding:18px 20px 14px}.el-dropdown-menu,.el-popper{border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:0 10px 28px #37352f1a}.el-dropdown-menu__item:not(.is-disabled):hover{color:var(--color-text);background:var(--color-bg-subtle)}.el-alert{border:1px solid var(--color-border);border-radius:var(--radius-md)}.el-alert--success{color:var(--oj-success);background:var(--tag-tools-bg)}.el-alert--warning{color:var(--oj-warning);background:var(--tag-course-bg)}.el-alert--error{color:var(--oj-danger);background:var(--tag-research-bg)}.el-message,.el-message-box{border-radius:var(--radius-lg);border-color:var(--color-border);box-shadow:0 10px 30px #37352f1f}.el-carousel__indicators button{background:var(--line-strong)}.section-title,.panel-title{font-family:var(--font-serif);color:var(--color-text)}html,body{background-color:var(--color-bg)}.flex-container{flex-flow:row;justify-content:space-around;align-items:flex-start;width:100%;max-width:100%;display:flex}@media (width<=760px){.flex-container{flex-wrap:wrap}}.section-title{padding-top:10px;padding-bottom:20px;font-size:21px;font-weight:500;line-height:30px}.separator{border:1px dashed var(--color-border);display:block;position:absolute;top:0;bottom:0;left:50%}.oj-captcha{flex-wrap:nowrap;justify-content:space-between;width:100%;height:36px;display:flex}.oj-captcha .oj-captcha-code{flex:auto}.oj-captcha .oj-captcha-img{flex:initial;margin-left:10px;padding:3px}.oj-relative{position:relative}a.emphasis{color:var(--color-text-muted)}a.emphasis:hover{color:var(--color-link)}.MathJax{outline:0}.MathJax_Display{overflow:auto hidden}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--color-text);font-family:var(--font-serif);font-weight:400}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body p{margin-bottom:15px;padding:0}.markdown-body h1{font-size:28px}.markdown-body h2{font-size:24px}.markdown-body h3{font-size:20px}.markdown-body h4{font-size:18px}.markdown-body h5{font-size:14px}.markdown-body a{color:var(--color-link);vertical-align:baseline;margin:0;padding:0}.markdown-body ul,.markdown-body ol{margin:10px 20px;padding:0}.markdown-body ul{list-style-type:disc}.markdown-body ol{list-style-type:decimal}.markdown-body li{line-height:24px}.markdown-body li ul,.markdown-body li ul{margin-left:24px}.markdown-body p,.markdown-body ul,.markdown-body ol{font-size:16px;line-height:24px}.markdown-body pre{white-space:pre-wrap;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);margin-top:15px;margin-bottom:15px;padding:12px 14px}.markdown-body code{background-color:var(--code-inline-bg);color:var(--code-inline-fg);font-size:90%;font-family:var(--font-mono);border-radius:4px;margin:0;padding:1px 4px;line-height:1.5}.markdown-body pre>code{word-break:normal;white-space:pre;background:0 0;border:0;margin:0;padding:0;font-size:100%}.markdown-body aside{float:right;width:390px;display:block}.markdown-body blockquote{border-left:3px solid var(--line-strong);color:var(--color-text-muted);margin-top:10px;margin-bottom:10px;padding-left:10px}.markdown-body hr{text-align:left;width:540px;max-width:100%;color:var(--color-text-faint);margin:0 auto 0 0}.markdown-body table{border-collapse:collapse;border:1px solid var(--color-border);max-width:100%;margin:1em;overflow-x:auto}.markdown-body table thead{background-color:var(--color-bg-subtle)}.markdown-body table thead td{color:var(--color-text-muted)}.markdown-body table td{border:1px solid var(--color-border);padding:.5em 1em}table{width:100%!important}.auto-resize table{table-layout:auto!important}.el-table{border:none}.el-table td{border-bottom-color:var(--color-border)}.el-card__header{border-bottom:1px solid var(--color-border)}.el-table .first-ac,.el-table .ac{background-color:var(--tag-tools-bg);color:var(--cat-tools)}.el-table .wa{color:var(--cat-research);background-color:var(--tag-research-bg)}.el-dialog__footer{border-top-width:0;padding:0 18px 20px}.el-dialog__body{padding:18px}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs-comment,.hljs-quote{color:#a0a1a7;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#a626a4}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e45649}.hljs-literal{color:#0184bb}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#50a14f}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#986801}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#4078f2}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#c18401}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
