/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#243244;--muted:#75808e;--line:#e4e8ec;--soft:#f7f9fb;--green:#35b86b;--green-dark:#249453;--purple:#7c63dc;--purple-dark:#6248c4;--blue:#3d9de8;--blue-dark:#267fc4;--gold:#f7b731;--red:#ef596f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}button,input,textarea,select{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;padding-top:70px}.topbar{z-index:50;border-bottom:2px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;height:70px;padding:0 34px;display:flex;position:fixed;inset:0 0 auto}.logo{align-items:center;height:48px;display:flex}.logo img{object-fit:cover;border-radius:8px;width:132px;height:44px;display:block}.top-stats{align-items:center;gap:26px;display:flex}.stat{align-items:center;gap:7px;font-size:14px;font-weight:800;display:flex}.stat b{font-size:20px}.fire{color:#ef8d32}.gem{color:#438fe7}.heart{color:var(--red)}.online-dot{background:var(--green);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #dbf5e5}.online-dot.offline{background:var(--red);box-shadow:0 0 0 4px #fde2e7}.side-nav{z-index:30;isolation:isolate;border-right:2px solid var(--line);background:#fff;width:250px;padding:28px 18px;position:fixed;top:70px;bottom:0;left:0;overflow-y:auto}.nav-active-indicator{z-index:0;width:var(--indicator-width,0px);height:var(--indicator-height,0px);opacity:0;pointer-events:none;transform:translate3d(var(--indicator-x,0px), var(--indicator-y,0px), 0);background:#ebfaf1;border:2px solid #bdebd0;border-radius:12px;transition:transform .52s cubic-bezier(.22,1.35,.36,1),width .38s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1),opacity .12s;position:absolute;top:0;left:0;box-shadow:0 5px 14px #35b86b21}.nav-active-indicator[data-ready=true]{opacity:1}.side-nav>button{z-index:1;cursor:pointer;text-align:left;background:0 0;border:2px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:48px;margin-bottom:7px;padding:0 14px;font-size:14px;font-weight:800;display:flex;position:relative}.side-nav>button:hover{background:var(--soft)}.side-nav>button.active{color:var(--green-dark);background:0 0;border-color:#0000}.side-nav>button>span{text-align:center;width:23px;font-size:21px}.side-nav>button.active>span{animation:.42s cubic-bezier(.22,1.35,.36,1) nav-icon-settle}@keyframes nav-icon-settle{0%{transform:scale(.96)}55%{transform:scale(1.07)}to{transform:scale(1)}}.stage-dropdown{z-index:1;border:1px solid var(--line);background:var(--soft);border-radius:13px;margin:0 0 12px;padding:8px;position:relative}.stage-toggle{color:#89939e;cursor:pointer;letter-spacing:.07em;background:0 0;border:0;justify-content:space-between;width:100%;padding:5px 7px 10px;font-size:10px;font-weight:900;display:flex}.stage-option{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:27px 1fr;align-items:center;gap:8px;width:100%;min-height:53px;padding:8px;display:grid}.stage-option:hover{background:#fff}.stage-option.selected{background:#fff;box-shadow:0 1px 4px #1c2b3c14}.stage-option>span{color:#78838e;background:#e4e9ed;border-radius:8px;place-items:center;width:26px;height:26px;font-size:10px;font-weight:900;display:grid}.stage-option.selected>span{background:var(--purple);color:#fff}.stage-option div{gap:3px;min-width:0;display:grid}.stage-option strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.stage-option small{color:var(--muted);font-size:9px}.nav-divider{background:var(--line);height:2px;margin:22px 4px}.side-nav>p{color:#9aa2ad;letter-spacing:.1em;text-transform:uppercase;margin:0 12px 12px;font-size:11px;font-weight:900}.side-nav .unit-link{min-height:42px;color:var(--muted);font-size:12px}.side-nav .unit-link span{background:#edf0f3;border-radius:8px;place-items:center;width:26px;height:26px;font-size:11px;display:grid}.side-nav .unit-link.selected{color:var(--ink);background:var(--soft)}.side-nav .unit-link.selected span{background:var(--purple);color:#fff}.overall-card{z-index:1;background:var(--soft);border:1px solid var(--line);border-radius:14px;margin-top:26px;padding:16px;position:relative}.overall-card>div:first-child{justify-content:space-between;font-size:12px;font-weight:800;display:flex}.mini-progress,.banner-progress,.quest-progress{background:#e2e7eb;border-radius:99px;height:8px;overflow:hidden}.mini-progress{margin:12px 0 9px}.mini-progress i,.banner-progress i,.quest-progress i{border-radius:inherit;background:var(--green);height:100%;transition:width .35s;display:block}.overall-card small{color:var(--muted);font-size:10px}.learn-layout{grid-template-columns:minmax(450px,1fr) 310px;gap:76px;width:min(1080px,100% - 274px);margin-left:max(274px,50vw - 505px);padding:36px 24px 80px;display:grid}.unit-banner{color:#fff;border-radius:22px;min-height:185px;padding:30px 34px 42px;position:relative;overflow:hidden;box-shadow:0 6px #00000029}.unit-banner.green{background:linear-gradient(135deg, var(--green), #69cf83)}.unit-banner.purple{background:linear-gradient(135deg, var(--purple), #a178e8)}.unit-banner.blue{background:linear-gradient(135deg, var(--blue), #5ec7e8)}.unit-banner:after{content:"</>";font-family:var(--font-geist-mono), monospace;color:#ffffff21;font-size:116px;font-weight:900;position:absolute;bottom:-25px;right:-12px;transform:rotate(-8deg)}.unit-banner>div:first-child{z-index:1;max-width:440px;position:relative}.unit-banner span{letter-spacing:.12em;text-transform:uppercase;opacity:.82;font-size:12px;font-weight:900}.unit-banner h1{letter-spacing:-.04em;margin:8px 0;font-size:30px}.unit-banner p{opacity:.86;margin:0;font-size:13px;line-height:1.6}.unit-score{z-index:2;flex-direction:column;align-items:center;display:flex;position:absolute;top:24px;right:28px}.unit-score strong{font-size:20px}.unit-score span{font-size:9px}.banner-progress{background:#0000002b;position:absolute;bottom:22px;left:34px;right:34px}.banner-progress i{background:#fff}.journey{min-height:760px;padding:50px 0 40px;position:relative}.path-line{background:repeating-linear-gradient(#e4e8eb 0 18px,#0000 18px 30px);border-radius:10px;width:10px;position:absolute;top:76px;bottom:104px;left:50%;transform:translate(-50%)}.lesson-stop{justify-content:center;align-items:center;min-height:122px;display:flex;position:relative}.lesson-stop.stop-0{transform:translate(-86px)}.lesson-stop.stop-1{transform:translate(4px)}.lesson-stop.stop-2{transform:translate(88px)}.lesson-node{z-index:2;cursor:pointer;color:#fff;border:0;border-radius:50%;place-items:center;width:76px;height:70px;padding:0;transition:transform .15s,filter .15s;display:grid;position:relative;box-shadow:0 7px #0003}.lesson-node:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-3px)}.lesson-node:active:not(:disabled){transform:translateY(4px);box-shadow:0 3px #0003}.lesson-node.green{background:var(--green)}.lesson-node.purple{background:var(--purple)}.lesson-node.blue{background:var(--blue)}.lesson-node span{max-width:62px;font-family:var(--font-geist-mono), monospace;font-size:17px;font-weight:900;line-height:1}.lesson-stop.done .lesson-node{background:var(--gold)}.lesson-stop.locked .lesson-node{color:#96a0aa;cursor:not-allowed;background:#d5dbe0;box-shadow:0 7px #b7c0c8}.lesson-stop.current .lesson-node:before{content:"";opacity:.2;border:4px solid;border-radius:50%;animation:1.7s infinite pulse;position:absolute;inset:-8px}@keyframes pulse{50%{opacity:.5}}.start-bubble{z-index:4;background:var(--ink);color:#fff;white-space:nowrap;border-radius:9px;padding:7px 12px;font-size:10px;font-weight:900;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.start-bubble:after{content:"";border:5px solid #0000;border-top-color:var(--ink);border-bottom:0;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.lesson-label{flex-direction:column;gap:4px;width:175px;display:flex;position:absolute;left:calc(50% + 58px)}.stop-2 .lesson-label{text-align:right;left:auto;right:calc(50% + 58px)}.lesson-label strong{font-size:13px}.lesson-label small{color:var(--muted);font-size:10px;line-height:1.4}.unit-finish{border:2px solid var(--line);background:var(--soft);color:#9aa3ab;border-radius:15px;grid-template-columns:48px 1fr;align-items:center;width:180px;min-height:80px;margin:24px auto 0;padding:12px 16px;display:grid}.unit-finish>span{filter:grayscale();grid-row:1/3;font-size:32px}.unit-finish strong{font-size:12px}.unit-finish small{font-size:10px}.unit-finish.unlocked{color:#a57505;background:#fff9e8;border-color:#f3d27f}.unit-finish.unlocked>span{filter:none}.quest-column{padding-top:4px}.quest-column>section{border:2px solid var(--line);background:#fff;border-radius:16px;margin-bottom:18px;padding:20px}.card-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.card-heading h2{margin:0;font-size:15px}.card-heading>span{color:#e88c24;font-size:12px;font-weight:900}.week-row{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.week-row>div{flex-direction:column;align-items:center;gap:6px;display:flex}.week-row span{color:#fff;background:#edf0f2;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;font-weight:900;display:grid}.week-row span.checked{background:#f3a43d;box-shadow:0 3px #d8821b}.week-row small{color:var(--muted);font-size:9px}.streak-card p{color:var(--muted);text-align:center;margin:16px 0 0;font-size:11px}.daily-item{grid-template-columns:42px 1fr;align-items:center;gap:12px;display:grid}.target-icon{width:40px;height:40px;color:var(--blue);background:#e9f7ff;border-radius:12px;place-items:center;font-size:24px;font-weight:900;display:grid}.daily-item strong{font-size:12px}.quest-progress{height:7px;margin:8px 0 5px}.quest-progress i{background:var(--blue)}.daily-item small{color:var(--muted);font-size:9px}.daily-card button{width:100%;height:42px;color:var(--blue-dark);cursor:pointer;background:#edf8ff;border:0;border-radius:10px;margin-top:17px;font-size:11px;font-weight:900}.daily-card button:hover{background:#dff2ff}.tip-card{grid-template-columns:44px 1fr;gap:13px;display:grid;background:#f7f4ff!important;border-color:#ded6f7!important}.tip-icon{background:var(--purple);color:#fff;width:42px;height:42px;font-family:var(--font-geist-mono), monospace;border-radius:12px;place-items:center;font-size:12px;font-weight:900;display:grid}.tip-card strong{font-size:12px}.tip-card p{color:var(--muted);margin:6px 0 0;font-size:10px;line-height:1.6}.practice-page{grid-template-columns:1fr 1fr;gap:32px;width:min(980px,100% - 310px);margin-left:max(278px,50vw - 475px);padding:48px 24px 90px;display:grid}.practice-title{color:#fff;background:linear-gradient(135deg,#26364a,#394d69);border-radius:22px;grid-column:1/-1;justify-content:space-between;align-items:center;min-height:190px;padding:34px 38px;display:flex}.practice-title>div:first-child{max-width:620px}.practice-title>div>span{color:#76e0a0;letter-spacing:.1em;font-size:11px;font-weight:900}.practice-title h1{letter-spacing:-.05em;margin:10px 0;font-size:34px}.practice-title p{color:#ffffffa6;margin:0;font-size:13px}.practice-xp{flex-direction:column;align-items:center;min-width:110px;display:flex}.practice-xp strong{font-size:42px}.practice-xp span{color:#ffffff8c;font-size:10px}.practice-form,.practice-history{border:2px solid var(--line);background:#fff;border-radius:18px;padding:26px}.practice-form h2,.practice-history h2{justify-content:space-between;margin:0 0 22px;font-size:17px;display:flex}.practice-form h2 span,.practice-history h2 span{color:var(--green);font-size:11px}.practice-form label{gap:7px;margin-bottom:16px;display:grid}.practice-form label>span{color:var(--muted);font-size:10px;font-weight:900}.practice-form input,.practice-form textarea,.practice-form select{border:2px solid var(--line);background:var(--soft);border-radius:10px;outline:none;width:100%;padding:12px 13px}.practice-form input:focus,.practice-form textarea:focus,.practice-form select:focus{border-color:var(--green);background:#fff}.practice-form textarea{resize:vertical}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.input-suffix{position:relative}.input-suffix input{padding-right:48px}.input-suffix i{color:var(--muted);font-size:10px;font-style:normal;position:absolute;top:14px;right:12px}.practice-form>button{background:var(--green);color:#fff;width:100%;height:48px;box-shadow:0 5px 0 var(--green-dark);cursor:pointer;border:0;border-radius:11px;justify-content:space-between;align-items:center;padding:0 18px;font-weight:900;display:flex}.practice-form>button:active{box-shadow:0 1px 0 var(--green-dark);transform:translateY(4px)}.practice-history article{border-top:1px solid var(--line);grid-template-columns:34px 1fr auto;gap:12px;padding:17px 0;display:grid}.history-icon{width:31px;height:31px;color:var(--green);background:#dcf7e7;border-radius:50%;place-items:center;font-weight:900;display:grid}.practice-history article strong{font-size:12px}.practice-history article p{color:var(--muted);margin:5px 0;font-size:10px;line-height:1.5}.practice-history article small{color:#a1a8b0;font-size:9px}.practice-history article>span{color:var(--green);font-size:10px;font-weight:900}.empty-history{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;display:flex}.empty-history span{color:var(--gold);margin-bottom:13px;font-size:34px}.empty-history strong{font-size:13px}.empty-history p{color:var(--muted);font-size:10px}.lesson-page{width:min(1080px,100% - 298px);margin-left:max(274px,50vw - 495px);padding:34px 24px 90px}.back-to-map{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-bottom:18px;padding:9px 0;font-size:12px;font-weight:800}.back-to-map:hover{color:var(--purple)}.lesson-page-hero{color:#fff;border-radius:23px;justify-content:space-between;align-items:center;min-height:270px;padding:42px;display:flex;position:relative;overflow:hidden;box-shadow:0 7px #0000002b}.lesson-page-hero.green{background:linear-gradient(135deg, var(--green), #70d78c)}.lesson-page-hero.purple{background:linear-gradient(135deg, var(--purple), #9e7ae8)}.lesson-page-hero.blue{background:linear-gradient(135deg, var(--blue), #64c5e8)}.lesson-page-hero>div:first-child{z-index:2;max-width:720px;position:relative}.lesson-page-hero span{letter-spacing:.1em;opacity:.75;font-size:11px;font-weight:900}.lesson-page-hero p{font-family:var(--font-geist-mono), monospace;opacity:.8;margin:25px 0 6px;font-size:12px;font-weight:900}.lesson-page-hero h1{letter-spacing:-.055em;margin:0 0 12px;font-size:clamp(30px,4vw,47px);line-height:1.14}.lesson-page-hero strong{opacity:.78;font-size:13px}.lesson-page-mark{color:#ffffff38;min-width:130px;font-family:var(--font-geist-mono), monospace;text-align:center;font-size:70px;font-weight:900;transform:rotate(-7deg)}.lesson-content-grid{grid-template-columns:1fr 280px;align-items:start;gap:30px;margin-top:32px;display:grid}.lesson-main-content{border:2px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.lesson-main-content>section{border-bottom:1px solid var(--line);grid-template-columns:38px 1fr;gap:18px;padding:30px;display:grid}.lesson-main-content>section:last-child{border-bottom:0}.content-number{width:34px;height:30px;color:var(--purple);font-family:var(--font-geist-mono), monospace;background:#f0ecff;border-radius:9px;place-items:center;font-size:10px;font-weight:900;display:grid}.lesson-main-content h2{margin:3px 0 16px;font-size:18px}.lesson-main-content p,.lesson-main-content li{color:var(--muted);font-size:12px;line-height:1.8}.lesson-main-content ul{margin:0;padding-left:18px}.lesson-main-content li+li{margin-top:5px}.code-section{min-width:0}.code-section pre{color:#edf6ff;background:#243244;border-radius:11px;margin:0;padding:18px;font-size:11px;line-height:1.7;overflow-x:auto}.lesson-side-panel{border:2px solid var(--line);background:var(--soft);border-radius:17px;padding:22px;position:sticky;top:94px}.lesson-side-panel>div:first-child{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:16px;font-size:11px;display:flex}.lesson-side-panel>div:first-child span{color:var(--muted)}.lesson-side-panel>div:first-child strong{color:var(--green-dark)}.lesson-checklist{gap:10px;padding:20px 0;display:grid}.lesson-checklist p{margin:0 0 3px;font-size:11px;font-weight:900}.lesson-checklist span{color:var(--muted);font-size:10px}.lesson-side-panel>button{color:#fff;cursor:pointer;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;height:47px;padding:0 16px;font-weight:900;display:flex;box-shadow:0 5px #0000002e}.lesson-side-panel>button.green{background:var(--green)}.lesson-side-panel>button.purple{background:var(--purple)}.lesson-side-panel>button.blue{background:var(--blue)}.class-practice>p{margin-top:0}.class-practice>div{background:var(--soft);border:2px dashed #d7dce0;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:16px;display:flex}.class-practice>div>span{color:var(--muted);font-size:10px;font-weight:800}.class-practice button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;box-shadow:0 3px 0 var(--green-dark);border:0;border-radius:9px;padding:10px 14px;font-size:10px;font-weight:900}.class-practice button:disabled{color:#929ba4;cursor:not-allowed;box-shadow:none;background:#dfe4e8}.prompt-example>div{background:#faf8ff;border:2px solid #ded6f7;border-radius:12px;padding:18px}.prompt-example small{color:var(--purple);letter-spacing:.1em;font-size:9px;font-weight:900}.prompt-example p{color:var(--ink);margin:10px 0 0}.problem-bank-page,.contest-hub-page{width:min(1120px,100% - 310px);margin-left:max(278px,50vw - 495px);padding:42px 24px 90px}.bank-hero{color:#fff;background:linear-gradient(135deg,#25374d,#3f5878);border-radius:23px;justify-content:space-between;align-items:center;gap:30px;min-height:230px;padding:38px 42px;display:flex;box-shadow:0 7px #18283b}.ai-bank .bank-hero{background:linear-gradient(135deg,#5c43c3,#9273e7);box-shadow:0 7px #48349e}.bank-hero>div:first-child{max-width:720px}.bank-hero>div:first-child>span{color:#7fe1a1;letter-spacing:.12em;font-size:10px;font-weight:900}.ai-bank .bank-hero>div:first-child>span{color:#d8ceff}.bank-hero h1{letter-spacing:-.05em;margin:12px 0;font-size:clamp(30px,4vw,44px);line-height:1.12}.bank-hero p{color:#ffffffad;margin:0;font-size:12px;line-height:1.75}.bank-total{background:#ffffff14;border:2px solid #fff3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;min-width:118px;height:118px;display:flex}.bank-total strong{font-size:40px}.bank-total span{color:#ffffff9e;margin-top:2px;font-size:9px}.bank-toolbar{justify-content:space-between;gap:18px;margin:28px 0 14px;display:flex}.bank-toolbar>div{gap:8px;display:flex}.bank-toolbar button{border:2px solid var(--line);height:38px;color:var(--muted);cursor:pointer;background:#fff;border-radius:9px;padding:0 14px;font-size:10px;font-weight:900}.bank-toolbar button.selected{border-color:var(--green);color:var(--green-dark);background:#edfbf2}.ai-bank .bank-toolbar button.selected{border-color:var(--purple);color:var(--purple);background:#f4f0ff}.bank-toolbar label{border:2px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:8px;width:270px;height:38px;padding:0 12px;display:flex}.bank-toolbar label span{color:var(--muted)}.bank-toolbar input{border:0;outline:0;flex:1;min-width:0;font-size:10px}.problem-table{border:2px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.problem-table-head,.problem-table article{grid-template-columns:76px minmax(220px,1fr) 150px 80px 90px;align-items:center;gap:14px;display:grid}.problem-table-head{background:var(--soft);min-height:43px;color:var(--muted);padding:0 20px;font-size:9px;font-weight:900}.problem-table article{border-top:1px solid var(--line);min-height:77px;padding:12px 20px}.problem-id{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:10px;font-weight:900}.problem-table article>div{flex-direction:column;gap:6px;display:flex}.problem-table article strong{font-size:12px}.problem-table article small{color:#a3abb3;font-size:9px}.topic-tag{color:#4d7188;background:#eef6fb;border-radius:99px;width:fit-content;padding:6px 9px;font-size:9px;font-weight:800}.difficulty-tag{width:fit-content;font-size:10px;font-weight:900}.difficulty-入门{color:var(--green-dark)}.difficulty-适中{color:#d68a13}.difficulty-挑战{color:#d45757}.problem-table article>button{height:34px;color:var(--blue-dark);cursor:pointer;background:#edf8ff;border:0;border-radius:8px;font-size:9px;font-weight:900}.ai-bank .problem-table article>button{color:var(--purple);background:#f2efff}.oj-placeholder{background:#fafbfc;border:2px dashed #d8dde1;border-radius:14px;grid-template-columns:46px 1fr auto;align-items:center;gap:15px;margin-top:18px;padding:18px 22px;display:grid}.oj-placeholder>span{color:#fff;width:42px;height:42px;font-family:var(--font-geist-mono), monospace;background:#344a64;border-radius:11px;place-items:center;font-size:11px;font-weight:900;display:grid}.oj-placeholder strong{font-size:12px}.oj-placeholder p{color:var(--muted);margin:5px 0 0;font-size:10px}.oj-placeholder em{color:var(--muted);background:#edf0f2;border-radius:99px;padding:6px 9px;font-size:9px;font-style:normal;font-weight:900}.judge-page{width:min(1280px,100% - 295px);margin-left:max(270px,50vw - 515px);padding:24px 20px 80px}.judge-topline{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.judge-topline>button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:900}.judge-topline>div{align-items:center;gap:8px;display:flex}.judge-topline span,.judge-topline b{border-radius:7px;padding:6px 9px;font-size:8px}.judge-topline span{color:#9b6a12;background:#fff4d8;font-weight:900}.judge-topline b{color:#45657a;background:#edf4f8}.judge-topline span.real-judge-badge{color:var(--green-dark);background:#e8f8ed}.judge-title{border:2px solid var(--line);background:#fff;border-radius:17px 17px 0 0;justify-content:space-between;align-items:center;gap:20px;padding:25px 30px;display:flex}.judge-title>div>span{color:var(--blue-dark);font-family:var(--font-geist-mono), monospace;font-size:9px;font-weight:900}.judge-title h1{margin:7px 0 12px;font-size:25px}.judge-title>div>div{flex-wrap:wrap;gap:7px;display:flex}.judge-title small{background:var(--soft);color:var(--muted);border-radius:7px;padding:5px 8px;font-size:8px;font-weight:800}.judge-title>strong{color:#2d455b;min-width:92px;font-family:var(--font-geist-mono), monospace;text-align:right;font-size:15px}.judge-title>strong small{color:#e19831;letter-spacing:.12em;background:0 0;padding:0;font-size:7px;display:block}.judge-workspace{border:2px solid var(--line);background:#f5f7f9;border-top:0;border-radius:0 0 17px 17px;grid-template-columns:minmax(360px,.78fr) minmax(480px,1.22fr);display:grid}.problem-statement{border-right:2px solid var(--line);background:#fff;min-width:0;padding:7px 28px 32px}.problem-statement section{border-bottom:1px solid var(--line);padding:23px 0}.problem-statement section:last-child{border:0}.problem-statement h2{margin:0 0 12px;font-size:15px}.problem-statement p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.sample-case{border:1px solid #d9dfe4;border-radius:10px;margin-top:12px;overflow:hidden}.sample-case>div{color:#6c7b86;background:#f5f7f9;justify-content:space-between;align-items:center;min-height:32px;padding:0 12px;font-size:8px;font-weight:900;display:flex}.sample-case button{color:var(--blue-dark);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:900}.sample-case pre{color:#263545;font-family:var(--font-geist-mono), monospace;background:#fff;margin:0;padding:12px;font-size:10px;line-height:1.6;overflow-x:auto}.problem-hint{background:#fffaf0;border-radius:10px;margin-top:4px;border:1px solid #e8d9ac!important;padding:17px!important}.coding-panel{min-width:0;padding:16px}.editor-card,.sample-console,.judge-result{background:#fff;border:1px solid #cfd6dc;border-radius:11px;overflow:hidden}.editor-card header,.sample-console header,.judge-result header{background:#edf1f4;border-bottom:1px solid #d8dee3;justify-content:space-between;align-items:center;height:40px;padding:0 13px;display:flex}.editor-card header>div,.judge-result header>div{align-items:center;gap:8px;display:flex}.editor-card header i,.judge-result header i{background:var(--green);border-radius:50%;width:7px;height:7px}.editor-card header span,.sample-console header strong,.judge-result header strong{color:#405464;font-family:var(--font-geist-mono), monospace;font-size:9px}.editor-card select{color:#526572;background:#fff;border:1px solid #cfd6dc;border-radius:6px;outline:0;padding:5px 8px;font-size:8px}.editor-body{background:#1f2b38;grid-template-columns:38px 1fr;height:410px;display:grid}.line-gutter{color:#66788a;font-family:var(--font-geist-mono), monospace;-webkit-user-select:none;user-select:none;border-right:1px solid #334253;flex-direction:column;align-items:flex-end;padding:13px 8px;font-size:10px;line-height:1.72;display:flex;overflow:hidden}.editor-body textarea{resize:none;color:#e6edf3;caret-color:#fff;width:100%;height:100%;font-family:var(--font-geist-mono), monospace;tab-size:4;background:#1f2b38;border:0;outline:0;padding:13px 15px;font-size:10px;line-height:1.72}.sample-console{margin-top:12px}.sample-console header{height:34px}.sample-console header span{color:#8c98a1;font-size:7px;font-weight:900}.sample-console textarea{resize:vertical;color:#354755;width:100%;height:80px;font-family:var(--font-geist-mono), monospace;border:0;outline:0;padding:12px;font-size:9px}.judge-result{margin-top:12px}.judge-result header{height:36px}.judge-result header span{color:#8a969f;font-size:7px;font-weight:800}.judge-result p{color:var(--muted);margin:0;padding:13px;font-size:9px;line-height:1.6}.judge-result>div{background:#f3f6f8;border-radius:7px;margin:0 13px 13px;padding:10px}.judge-result>div small{color:#71808b;font-size:7px}.judge-result>div pre{font-family:var(--font-geist-mono), monospace;margin:5px 0 0;font-size:9px}.judge-result.success{border-color:#9cd8ae}.judge-result.success header{background:#eaf8ee}.judge-result.success header i{background:var(--green)}.judge-result.error{border-color:#e5a3a3}.judge-result.error header{background:#fff0f0}.judge-result.error header i{background:#df5f5f}.judge-actions{justify-content:flex-end;gap:9px;margin-top:13px;display:flex}.judge-actions button{cursor:pointer;border:0;border-radius:8px;height:40px;padding:0 17px;font-size:9px;font-weight:900}.judge-actions button:first-child{color:#41596a;background:#e8eef2}.judge-actions button:last-child{background:var(--green);color:#fff;box-shadow:0 3px 0 var(--green-dark)}.simulation-notice{color:#89949c;text-align:right;margin:13px 3px 0;font-size:8px;line-height:1.6}.judge-actions button:disabled{opacity:.58;cursor:wait;box-shadow:none}.editor-body textarea:disabled,.sample-console textarea:disabled{opacity:.72;cursor:wait}.contest-hub-hero{color:#fff;background:linear-gradient(135deg,#202f43,#42627f);border-radius:24px;min-height:290px;padding:46px;box-shadow:0 7px #142234}.contest-hub-hero>span{color:#91d6ff;letter-spacing:.13em;font-size:10px;font-weight:900}.contest-hub-hero h1{letter-spacing:-.055em;max-width:760px;margin:15px 0;font-size:clamp(34px,4vw,50px);line-height:1.12}.contest-hub-hero p{color:#ffffffad;max-width:760px;margin:0;font-size:12px;line-height:1.8}.contest-hub-hero>div{background:#ffffff1a;border-radius:99px;align-items:center;gap:9px;width:fit-content;margin-top:28px;padding:9px 13px;font-size:10px;font-weight:800;display:flex}.contest-hub-hero b{color:#85dfa3}.format-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;display:grid}.format-grid article{border:2px solid var(--line);background:#fff;border-radius:17px;padding:25px}.format-grid article>span{color:#355f7e;width:48px;height:34px;font-family:var(--font-geist-mono), monospace;background:#eaf2f8;border-radius:9px;place-items:center;font-size:10px;font-weight:900;display:grid}.format-grid h2{margin:20px 0 9px;font-size:17px}.format-grid p{min-height:66px;color:var(--muted);margin:0;font-size:10px;line-height:1.7}.format-grid article>div{flex-wrap:wrap;gap:6px;margin:18px 0;display:flex}.format-grid small{background:var(--soft);color:var(--muted);border-radius:6px;padding:5px 7px;font-size:8px}.format-grid button{color:#355f7e;cursor:pointer;background:#edf5fa;border:0;border-radius:8px;width:100%;height:38px;font-size:9px;font-weight:900}.contest-list{border:2px solid var(--line);background:#fff;border-radius:17px;margin-top:20px;overflow:hidden}.contest-list-title{justify-content:space-between;align-items:center;padding:21px 23px;display:flex}.contest-list-title span{color:#47718f;letter-spacing:.1em;font-size:9px;font-weight:900}.contest-list-title h2{margin:5px 0 0;font-size:18px}.contest-list-title button{color:#47718f;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:900}.contest-list>article{border-top:1px solid var(--line);grid-template-columns:54px 1fr 70px 82px;align-items:center;gap:15px;min-height:75px;padding:13px 22px;display:grid}.contest-type{color:#fff;height:32px;font-family:var(--font-geist-mono), monospace;border-radius:8px;place-items:center;font-size:9px;font-weight:900;display:grid}.contest-type.io{background:#5587aa}.contest-type.oi{background:#7a61c9}.contest-type.acm{background:#d47c43}.contest-list article strong{font-size:12px}.contest-list article p{color:var(--muted);margin:6px 0 0;font-size:9px}.contest-list article em{color:#a0a7ae;font-size:9px;font-style:normal}.contest-list article button{background:var(--soft);color:#4d6475;cursor:pointer;border:0;border-radius:8px;height:33px;font-size:9px;font-weight:900}.feature-page{width:min(980px,100% - 310px);margin-left:max(278px,50vw - 475px);padding:48px 24px 90px}.feature-hero{color:#fff;background:linear-gradient(135deg,#5f45c7,#9172e8);border-radius:24px;min-height:285px;padding:48px;position:relative;overflow:hidden;box-shadow:0 7px #4935a3}.feature-hero:after{content:none}.feature-kicker{letter-spacing:.12em;text-transform:uppercase;opacity:.78;font-size:11px;font-weight:900}.feature-hero h1{z-index:1;letter-spacing:-.055em;max-width:650px;margin:16px 0 14px;font-size:clamp(34px,4vw,50px);line-height:1.12;position:relative}.feature-hero p{z-index:1;color:#ffffffc2;max-width:610px;margin:0;font-size:13px;line-height:1.8;position:relative}.feature-status{background:#ffffff21;border-radius:99px;align-items:center;gap:8px;width:fit-content;margin-top:28px;padding:8px 12px;font-size:10px;font-weight:800;display:flex}.feature-status i{background:#7ef0a6;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #7ef0a629}.contest-hero{background:linear-gradient(135deg,#26384f,#416486);box-shadow:0 7px #19283b}.feature-mark{color:#ffffff1f;font-family:var(--font-geist-mono), monospace;font-size:120px;font-weight:900;position:absolute;bottom:-25px;right:35px;transform:rotate(-7deg)}.feature-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;display:grid}.feature-grid article{border:2px solid var(--line);background:#fff;border-radius:17px;min-height:190px;padding:24px}.feature-grid article>span{width:34px;height:30px;color:var(--purple);font-family:var(--font-geist-mono), monospace;background:#f0ecff;border-radius:9px;place-items:center;font-size:10px;font-weight:900;display:grid}.contest-page .feature-grid article>span{color:#356180;background:#eaf2f8}.feature-grid h2{margin:22px 0 9px;font-size:16px}.feature-grid p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.coming-panel{background:#faf8ff;border:2px dashed #d9d2f1;border-radius:16px;grid-template-columns:44px 1fr;align-items:center;gap:15px;margin-top:22px;padding:22px 24px;display:grid}.coming-panel>span{background:var(--purple);color:#fff;border-radius:12px;place-items:center;width:42px;height:42px;font-size:18px;display:grid}.coming-panel strong{font-size:13px}.coming-panel p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.6}.contest-page .coming-panel{background:#f5f9fc;border-color:#d8e3eb}.contest-page .coming-panel>span{background:#365d7b}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1d28368c;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.lesson-modal{background:#fff;border-radius:22px;width:min(460px,100%);padding:36px;animation:.22s pop;position:relative;box-shadow:0 24px 70px #151f2c4d}@keyframes pop{0%{opacity:0;transform:scale(.94)translateY(10px)}}.close-modal{background:var(--soft);width:32px;height:32px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;font-size:20px;position:absolute;top:15px;right:16px}.modal-icon{color:#fff;width:68px;height:64px;font-family:var(--font-geist-mono), monospace;border-radius:50%;place-items:center;margin-bottom:22px;font-size:18px;font-weight:900;display:grid;box-shadow:0 6px #00000029}.modal-icon.green,.finish-button.green{background:var(--green)}.modal-icon.purple,.finish-button.purple{background:var(--purple)}.modal-icon.blue,.finish-button.blue{background:var(--blue)}.modal-unit{color:var(--purple);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.lesson-modal h2{margin:8px 0 12px;font-size:28px}.lesson-modal>p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.8}.lesson-modal pre{color:#edf6ff;background:#243244;border-radius:10px;margin:0 0 18px;padding:16px;font-size:11px;line-height:1.7;overflow-x:auto}.lesson-reward{color:#bf8215;background:#fff8e7;border-radius:11px;align-items:center;gap:12px;margin:20px 0;padding:13px 15px;display:flex}.lesson-reward>span{font-size:25px}.lesson-reward div{flex-direction:column;display:flex}.lesson-reward strong{font-size:11px}.lesson-reward small{color:#a58855;font-size:9px}.finish-button{color:#fff;cursor:pointer;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;height:50px;padding:0 18px;font-weight:900;display:flex;box-shadow:0 5px #0003}.celebration{z-index:120;background:#fff;border:2px solid #f5d27d;border-radius:14px;justify-content:center;align-items:center;gap:14px;min-width:230px;padding:14px 22px;animation:1.5s forwards celebrate;display:flex;position:fixed;top:92px;left:50%;transform:translate(-50%);box-shadow:0 12px 38px #0000002b}.celebration span{color:#d99716;font-weight:900}.celebration strong{font-size:13px}@keyframes celebrate{0%{opacity:0;transform:translate(-50%,-20px)scale(.8)}18%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-15px)}}.ai-assessment-page{width:min(1180px,100% - 294px);margin-left:max(270px,50vw - 505px);padding:34px 20px 80px}.ai-center-hero,.ai-bank-heading{color:#fff;background:linear-gradient(135deg,#18382d,#2e7154);border-radius:24px;justify-content:space-between;align-items:center;gap:28px;min-height:230px;padding:40px 44px;display:flex;overflow:hidden;box-shadow:0 7px #10291f}.ai-center-hero>div:first-child,.ai-bank-heading>div:first-child{max-width:760px}.ai-center-hero>div>span,.ai-bank-heading>div>span{color:#85e6ac;letter-spacing:.14em;font-size:10px;font-weight:900}.ai-center-hero h1,.ai-bank-heading h1{letter-spacing:-.055em;margin:13px 0;font-size:clamp(31px,4vw,47px);line-height:1.12}.ai-center-hero p,.ai-bank-heading p{color:#ffffffad;margin:0;font-size:12px;line-height:1.8}.ai-center-summary,.ai-bank-heading>div:last-child{flex-direction:column;align-items:center;min-width:128px;display:flex}.ai-center-summary strong,.ai-bank-heading>div:last-child strong{font-size:48px}.ai-center-summary span,.ai-bank-heading>div:last-child span{color:#ffffff9e;font-size:10px}.ai-bank-heading>div:last-child b{color:#a1efbf;background:#ffffff1f;border-radius:99px;margin-top:12px;padding:6px 10px;font-size:9px}.assessment-type-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px;display:grid}.assessment-type-card{border:2px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;justify-content:space-between;min-height:310px;padding:24px;transition:transform .18s,box-shadow .18s;display:flex}.assessment-type-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #23324417}.assessment-type-card header,.assessment-type-card footer{justify-content:space-between;align-items:center;gap:13px;display:flex}.assessment-type-card header>span{width:54px;height:50px;font-family:var(--font-geist-mono), monospace;border-radius:14px;place-items:center;font-size:17px;font-weight:900;display:grid}.assessment-type-card.green header>span{color:var(--green-dark);background:#e9f8ef}.assessment-type-card.purple header>span{color:var(--purple);background:#f0ecff}.assessment-type-card.blue header>span{color:var(--blue-dark);background:#eaf6ff}.assessment-type-card header b{color:var(--green-dark);background:#e9f8ef;border-radius:99px;padding:6px 9px;font-size:8px}.assessment-type-card h2{margin:28px 0 10px;font-size:23px}.assessment-type-card p{min-height:44px;color:var(--muted);margin:0;font-size:11px;line-height:1.8}.assessment-type-card div>strong{color:#4a5a69;margin-top:17px;font-size:9px;display:block}.assessment-type-card footer{border-top:1px solid var(--line);padding-top:18px}.assessment-type-card footer small{max-width:150px;color:var(--muted);font-size:9px;line-height:1.5}.assessment-type-card footer button{cursor:pointer;color:var(--green-dark);background:0 0;border:0;flex:none;padding:8px 0;font-size:10px;font-weight:900}.assessment-type-card.purple footer button{color:var(--purple-dark)}.assessment-type-card.blue footer button{color:var(--blue-dark)}.assessment-safety-note{background:#f7fbf8;border:1px solid #d9e8e0;border-radius:14px;align-items:center;gap:13px;margin-top:20px;padding:17px 20px;display:flex}.assessment-safety-note>span{width:28px;height:28px;color:var(--green-dark);background:#dff4e7;border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.assessment-safety-note p{color:var(--muted);margin:0;font-size:10px;line-height:1.65}.assessment-safety-note strong{color:var(--ink);margin-right:6px}.assessment-back{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-bottom:15px;padding:7px 0;font-size:10px;font-weight:900}.ai-bank-heading{background:linear-gradient(135deg,#243a54,#3c6480);min-height:190px;padding:30px 38px;box-shadow:0 7px #192a3d}.ai-bank-heading h1{font-size:clamp(29px,3vw,40px)}.ai-bank-filters{grid-template-columns:minmax(260px,1fr) repeat(3,132px);gap:10px;margin:24px 0 14px;display:grid}.ai-bank-filters label{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:8px;min-height:45px;padding:0 12px;display:flex}.ai-bank-filters label>span{color:#8a959f;white-space:nowrap;font-size:9px;font-weight:900}.ai-bank-filters input,.ai-bank-filters select{color:#465766;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:10px}.ai-search>span{font-size:18px!important}.ai-bank-table{border:2px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.ai-bank-table-head,.ai-bank-row{grid-template-columns:80px minmax(210px,1.5fr) 125px 70px 80px 90px 88px;align-items:center;gap:10px;display:grid}.ai-bank-table-head{z-index:2;color:#87919a;background:#f5f7f9;min-height:42px;padding:0 18px;font-size:8px;font-weight:900;position:sticky;top:70px}.ai-bank-row{border-top:1px solid var(--line);cursor:pointer;outline:none;min-height:77px;padding:12px 18px}.ai-bank-row:hover,.ai-bank-row:focus-visible{box-shadow:inset 3px 0 var(--green);background:#fafcfb}.ai-bank-row>div{gap:5px;display:grid}.ai-bank-row strong{font-size:11px}.ai-bank-row small{color:var(--muted);font-size:8px}.ai-bank-row>span{color:#6f7d88;font-size:9px}.ai-bank-row .problem-id{color:#3a5d77;font-family:var(--font-geist-mono), monospace;font-weight:900}.assessment-kind,.difficulty-tag,.assessment-status{white-space:nowrap;border-radius:7px;width:fit-content;padding:5px 7px;font-weight:900;font-size:8px!important}.assessment-kind.quiz{color:var(--green-dark);background:#e9f8ef}.assessment-kind.prompt{color:var(--purple-dark);background:#f0ecff}.assessment-kind.local{color:var(--blue-dark);background:#e9f5fc}.assessment-status.not-started{color:#7d8891;background:#f0f2f4}.assessment-status.in-progress{color:#a77116;background:#fff4d9}.assessment-status.completed{color:var(--blue-dark);background:#e9f5fc}.assessment-status.passed{color:var(--green-dark);background:#e9f8ef}.ai-bank-row>button{height:32px;color:var(--green-dark);cursor:pointer;background:#edf7f1;border:0;border-radius:8px;font-size:8px;font-weight:900}.ai-bank-empty{min-height:260px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:8px;display:grid}.ai-bank-empty>span{font-size:30px}.ai-bank-empty strong{color:var(--ink);font-size:13px}.ai-bank-empty p{margin:0;font-size:9px}.assessment-workspace{background:#f4f6f8;width:calc(100% - 250px);min-height:calc(100vh - 70px);margin-left:250px}.assessment-workspace:fullscreen{background:#f4f6f8;width:100%;height:100%;margin:0;overflow:auto}.assessment-workspace-header{background:#fff;border-bottom:1px solid #dbe1e6;align-items:center;gap:12px;min-height:76px;padding:12px 22px;display:flex}.assessment-workspace-header>.workspace-back{border-radius:9px;place-items:center;width:36px;height:36px;padding:0;font-size:18px;display:grid}.assessment-workspace-header>div:nth-child(2){min-width:220px;margin-right:auto}.assessment-workspace-header small{color:var(--blue-dark);font-family:var(--font-geist-mono), monospace;font-size:8px;font-weight:900}.assessment-workspace-header h1{margin:4px 0 0;font-size:16px}.assessment-workspace-header>button{cursor:pointer;color:#60707d;background:#fff;border:1px solid #dbe1e6;border-radius:8px;height:34px;padding:0 10px;font-size:9px;font-weight:800}.workspace-tags{align-items:center;gap:7px;display:flex}.workspace-online{color:var(--green-dark);background:#e7f8ed;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:900}.workspace-help{color:#655b7d;background:#f8f6ff;border-bottom:1px solid #e2dafa;align-items:center;gap:12px;min-height:54px;padding:12px 22px;display:flex}.workspace-help b{font-size:10px}.workspace-help p{margin:0 auto 0 0;font-size:9px}.workspace-help button{color:var(--purple-dark);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:900}.assessment-workspace-grid{grid-template-columns:minmax(360px, var(--left-pane)) 10px minmax(420px, 1fr);min-height:calc(100vh - 146px);display:grid}.workspace-problem-pane,.workspace-answer-pane{background:#fff;min-width:0}.workspace-problem-pane{border-right:1px solid #dbe1e6}.workspace-answer-pane{background:#f4f6f8;padding:18px}.workspace-divider{cursor:col-resize;touch-action:none;background:#eef1f3;border:0;border-left:1px solid #dbe1e6;border-right:1px solid #dbe1e6;width:10px;padding:0;position:relative}.workspace-divider i{background:#b9c3ca;border-radius:99px;width:4px;height:38px;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.workspace-divider:hover i{background:var(--green)}.workspace-tabs{border-bottom:1px solid var(--line);gap:25px;height:48px;padding:0 18px;display:flex}.workspace-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:10px;font-weight:900;position:relative}.workspace-tabs button.active{color:var(--green-dark)}.workspace-tabs button.active:after{content:"";background:var(--green);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:0;right:0}.workspace-problem-content{height:calc(100vh - 194px);padding:28px 30px 50px;overflow-y:auto}.problem-meta{align-items:center;gap:8px;display:flex}.problem-meta span,.problem-meta b,.problem-meta em{color:var(--green-dark);background:#e9f8ef;border-radius:7px;padding:5px 8px;font-size:8px;font-style:normal}.problem-meta b{color:var(--purple-dark);background:#f0ecff}.problem-meta em{color:var(--muted);background:#f0f2f4;margin-left:auto}.workspace-problem-content>h2{margin:22px 0 28px;font-size:25px;line-height:1.35}.workspace-problem-content section{margin:0 0 28px}.workspace-problem-content h3{margin:0 0 11px;font-size:13px}.workspace-problem-content p,.workspace-problem-content li{color:#667581;font-size:10px;line-height:1.85}.workspace-problem-content ul,.workspace-problem-content ol{padding-left:19px}.workspace-problem-content li+li{margin-top:6px}.question-jump-list{flex-wrap:wrap;gap:7px;margin-top:28px;display:flex}.question-jump-list button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;width:31px;height:29px;font-size:8px;font-weight:900}.question-jump-list button.active{border-color:var(--green);color:var(--green-dark);background:#e9f8ef}.assessment-example{border:1px solid #dce2e6;border-radius:10px;margin-top:25px;overflow:hidden}.assessment-example>div{background:#f3f5f7;justify-content:space-between;align-items:center;min-height:34px;padding:0 12px;font-size:9px;display:flex}.assessment-example p{font-family:var(--font-geist-mono), monospace;border-bottom:1px solid #e0e5e9;margin:0;padding:13px}.assessment-copy{color:var(--blue-dark);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:900}.public-rules-note{background:#fff8e8;border-radius:9px;padding:13px;color:#806b3e!important}.locked-analysis{text-align:center;align-content:center;place-items:center;min-height:330px;display:grid}.locked-analysis>span{color:#aeb8bf;font-size:30px}.locked-analysis h2{margin:13px 0 7px;font-size:16px}.locked-analysis p{max-width:290px;margin:0}.quiz-analysis{background:#f7f9fa;border-radius:10px;padding:15px}.quiz-analysis.correct{border-left:3px solid var(--green)}.quiz-analysis.wrong{border-left:3px solid var(--red)}.quiz-analysis h3{justify-content:space-between;display:flex}.quiz-analysis h3 span{color:var(--green-dark);font-size:8px}.quiz-analysis.wrong h3 span{color:var(--red)}.quiz-analysis small{color:#71808a;font-size:8px}.public-dimension-grid{grid-template-columns:1fr 1fr;gap:9px;margin:20px 0;display:grid}.public-dimension-grid div{border:1px solid var(--line);border-radius:9px;align-items:center;gap:9px;padding:13px;display:flex}.public-dimension-grid span{width:22px;height:22px;color:var(--purple);background:#f0ecff;border-radius:7px;place-items:center;font-size:8px;display:grid}.public-dimension-grid b{font-size:9px}.workspace-history>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 70px 60px;align-items:center;min-height:55px;font-size:9px;display:grid}.workspace-history span{color:var(--muted)}.workspace-history b{color:var(--green-dark)}.assessment-loading,.assessment-error{align-content:center;place-items:center;gap:12px;min-height:calc(100vh - 146px);display:grid}.assessment-loading span{border:3px solid #dce5df;border-top-color:var(--green);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite assessment-spin}.assessment-loading strong{font-size:10px}.assessment-error>span{width:42px;height:42px;color:var(--red);background:#feecef;border-radius:50%;place-items:center;font-weight:900;display:grid}.assessment-error h2{margin:4px 0 0;font-size:18px}.assessment-error p{color:var(--muted);margin:0;font-size:10px}.assessment-error button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;height:36px;padding:0 15px;font-size:9px;font-weight:900}@keyframes assessment-spin{to{transform:rotate(360deg)}}.quiz-answer-panel,.prompt-editor-panel,.local-task-panel{background:#fff;border:1px solid #d5dce1;border-radius:12px;min-height:100%;padding:20px}.assessment-panel-kicker{color:var(--green-dark);justify-content:space-between;font-size:9px;font-weight:900;display:flex}.assessment-panel-kicker b{color:#a17315}.quiz-progress{align-items:center;gap:10px;margin:15px 0 25px;display:flex}.quiz-progress>div{background:#edf0f2;border-radius:99px;flex:1;height:7px;overflow:hidden}.quiz-progress i{background:var(--green);height:100%;display:block}.quiz-progress span{color:var(--muted);font-size:8px}.quiz-answer-panel h2,.local-task-panel h2{margin:0 0 8px;font-size:20px;line-height:1.45}.answer-hint{color:var(--muted);margin:0 0 18px;font-size:9px}.quiz-options{gap:10px;display:grid}.quiz-options label{cursor:pointer;color:#566672;border:2px solid #e3e7ea;border-radius:10px;grid-template-columns:20px 34px 1fr auto;align-items:center;gap:9px;min-height:58px;padding:11px 13px;font-size:10px;line-height:1.55;display:grid}.quiz-options label:hover{border-color:#b9ddc7}.quiz-options label.selected{border-color:var(--green);background:#f3fbf6}.quiz-options label.correct{border-color:var(--green);background:#eefaf2}.quiz-options label.wrong{background:#fff5f6;border-color:#eda8b3}.quiz-options input{accent-color:var(--green)}.option-letter{width:30px;height:30px;font-family:var(--font-geist-mono), monospace;background:#edf0f2;border-radius:8px;place-items:center;font-size:9px;font-weight:900;display:grid}.quiz-options label b{color:var(--green-dark);font-size:7px}.quiz-result-summary{background:#edf9f1;border-radius:10px;align-items:center;gap:14px;margin-top:17px;padding:14px;display:flex}.quiz-result-summary.retry{background:#fff7e8}.quiz-result-summary>div{align-items:baseline;display:flex}.quiz-result-summary>div span{color:var(--muted);margin-right:9px;font-size:8px}.quiz-result-summary strong{font-size:25px}.quiz-result-summary small{font-size:8px}.quiz-result-summary p{color:var(--muted);margin:0;font-size:9px}.quiz-result-summary p b{color:var(--green-dark);margin-right:7px}.assessment-action-row{align-items:center;gap:8px;margin-top:20px;display:flex}.assessment-action-row>span{flex:1}.assessment-action-row button{cursor:pointer;color:#5a6b77;background:#fff;border:1px solid #d7dde1;border-radius:8px;min-height:36px;padding:0 13px;font-size:8px;font-weight:900}.assessment-action-row button.primary{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 3px 0 var(--green-dark)}.assessment-action-row button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.assessment-inline-message{color:#64747f;text-align:right;margin:11px 0 0;font-size:8px}.prompt-editor-panel{padding:0;overflow:hidden}.prompt-toolbar{background:#edf1f4;border-bottom:1px solid #d3d9de;justify-content:space-between;align-items:center;min-height:45px;padding:0 13px;display:flex}.prompt-toolbar>div{align-items:center;gap:8px;display:flex}.prompt-toolbar small{color:#788691;font-size:7px}.prompt-toolbar button{color:#526675;cursor:pointer;background:0 0;border:0;font-size:8px}.prompt-editor-shell{background:#1e242b;grid-template-columns:40px 1fr;height:330px;display:grid}.prompt-line-numbers{color:#67737e;font-family:var(--font-geist-mono), monospace;-webkit-user-select:none;user-select:none;border-right:1px solid #333c45;flex-direction:column;align-items:flex-end;padding:13px 8px;font-size:10px;line-height:1.72;display:flex;overflow:hidden}.prompt-editor-shell textarea{resize:none;color:#edf1f4;caret-color:#fff;width:100%;height:100%;font-family:var(--font-geist-mono), monospace;tab-size:2;background:#1e242b;border:0;outline:0;padding:13px 15px;font-size:10px;line-height:1.72}.prompt-editor-meta{color:#84919b;background:#252d35;border-top:1px solid #313a43;justify-content:space-between;align-items:center;min-height:31px;padding:0 13px;font-size:7px;display:flex}.prompt-actions{margin:13px}.prompt-result-tabs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:18px;min-height:40px;padding:0 13px;display:flex}.prompt-result-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0;font-size:8px;font-weight:900}.prompt-result-tabs button.active{border-color:var(--green);color:var(--green-dark)}.prompt-result-content{min-height:210px;padding:15px}.assessment-empty-result{text-align:center;align-content:center;place-items:center;min-height:170px;display:grid}.assessment-empty-result span{color:#aeb7be;font-size:25px}.assessment-empty-result p{color:var(--muted);margin:8px 0 0;font-size:8px}.structure-score{align-items:center;gap:10px;display:flex}.structure-score strong{color:var(--purple);font-size:26px}.structure-score span{color:var(--muted);font-size:8px}.prompt-result-content ul{grid-template-columns:1fr 1fr;gap:7px;margin:12px 0 0;padding:0;list-style:none;display:grid}.prompt-result-content li{color:#667580;align-items:center;gap:7px;font-size:8px;display:flex}.prompt-result-content li span{width:19px;height:19px;color:var(--green-dark);background:#e7f7ed;border-radius:50%;flex:none;place-items:center;display:grid}.prompt-result-content li.missing span{color:#a46d11;background:#fff1da}.prompt-score-card{background:#eaf8ef;border-radius:10px;align-items:center;gap:13px;padding:13px;display:flex}.prompt-score-card.retry{background:#fff6e6}.prompt-score-card>strong{font-size:28px}.prompt-score-card>div{gap:4px;display:grid}.prompt-score-card b{font-size:10px}.prompt-score-card span{color:var(--muted);font-size:7px}.dimension-list{gap:8px;margin-top:13px;display:grid}.dimension-list>div{grid-template-columns:90px 1fr 32px;align-items:center;gap:8px;font-size:8px;display:grid}.dimension-list i{background:#e7eaed;border-radius:99px;height:6px;overflow:hidden}.dimension-list i b{border-radius:inherit;background:var(--purple);height:100%;display:block}.result-matched,.result-advice,.result-warnings{background:#edf9f1;border-radius:8px;margin-top:12px;padding:10px;font-size:8px}.result-advice{background:#f6f3ff}.result-warnings{background:#fff5e7}.result-matched p,.result-advice p,.result-warnings p{color:var(--muted);margin:5px 0 0}.assessment-history>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 48px 50px;align-items:center;min-height:40px;font-size:8px;display:grid}.assessment-history span{color:var(--muted)}.assessment-history em{color:var(--green-dark);font-style:normal}.local-task-label{color:var(--blue-dark);justify-content:space-between;font-size:9px;font-weight:900;display:flex}.local-task-panel h2{margin-top:19px}.local-task-panel>p{color:var(--muted);font-size:9px;line-height:1.7}.local-progress{background:#e8ecef;border-radius:99px;height:7px;margin:18px 0;overflow:hidden}.local-progress i{border-radius:inherit;background:var(--blue);height:100%;display:block}.local-checklist h3{margin:0 0 11px;font-size:12px}.local-checklist label{border:1px solid var(--line);cursor:pointer;border-radius:9px;grid-template-columns:18px 28px 1fr;align-items:center;gap:8px;min-height:48px;padding:9px 11px;display:grid}.local-checklist label+label{margin-top:7px}.local-checklist label.checked{background:#f1faf4;border-color:#a9d9bc}.local-checklist input{accent-color:var(--green)}.local-checklist label>span{width:25px;height:25px;color:var(--blue-dark);background:#eaf4fa;border-radius:7px;place-items:center;font-size:8px;font-weight:900;display:grid}.local-checklist label.checked>span{background:var(--green);color:#fff}.local-checklist p{color:#5d6d78;margin:0;font-size:9px;line-height:1.5}.local-note{gap:7px;margin-top:16px;display:grid}.local-note>span{font-size:9px;font-weight:900}.local-note textarea{resize:vertical;color:#4f606c;border:1px solid #d9dfe3;border-radius:9px;outline:0;min-height:100px;padding:11px;font-size:9px;line-height:1.6}.local-note textarea:focus{border-color:var(--blue)}.local-save-note{font-size:8px!important}@media (width<=1080px){.side-nav{width:84px;padding:24px 10px}.side-nav>button{justify-content:center;padding:0;font-size:0}.side-nav>button>span{font-size:20px}.side-nav>p,.side-nav .unit-link,.stage-dropdown,.overall-card{display:none}.learn-layout{grid-template-columns:minmax(430px,620px) 280px;gap:34px;width:calc(100% - 104px);margin-left:92px}.practice-page,.feature-page,.lesson-page,.problem-bank-page,.contest-hub-page{width:calc(100% - 110px);margin-left:92px}.judge-page,.ai-assessment-page{width:calc(100% - 104px);margin-left:88px}.assessment-workspace{width:calc(100% - 84px);margin-left:84px}}@media (width<=820px){.learn-layout{grid-template-columns:1fr}.quest-column{grid-template-columns:1fr 1fr;gap:14px;display:grid}.quest-column>section{margin:0}.tip-card{grid-column:1/-1}.practice-page{grid-template-columns:1fr}.practice-title{grid-column:1}.feature-grid,.format-grid,.lesson-content-grid{grid-template-columns:1fr}.lesson-side-panel{position:static}.problem-table{overflow-x:auto}.problem-table-head,.problem-table article{min-width:760px}.judge-workspace{grid-template-columns:1fr}.problem-statement{border-right:0;border-bottom:2px solid var(--line)}.editor-body{height:360px}.assessment-type-grid{grid-template-columns:1fr}.assessment-type-card{min-height:260px}.ai-bank-filters{grid-template-columns:1fr 1fr}.ai-search{grid-column:1/-1}.ai-bank-table{background:0 0;border:0;overflow:visible}.ai-bank-table-head{display:none}.ai-bank-row{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:75px 1fr auto;gap:9px;margin-bottom:10px;padding:15px}.ai-bank-row>span:nth-of-type(n+3){display:none}.ai-bank-row>button{grid-area:1/3/3}.assessment-workspace-grid{display:block}.workspace-divider{display:none}.workspace-problem-pane{border:0;border-bottom:2px solid var(--line)}.workspace-problem-content{height:auto;max-height:none}.workspace-answer-pane{padding:14px}.assessment-workspace-header{flex-wrap:wrap}.workspace-tags{order:3;width:100%}.prompt-editor-shell{height:380px}}@media (width<=620px){.app-shell{padding-top:62px;padding-bottom:70px}.topbar{height:62px;padding:0 16px}.logo strong{display:none}.top-stats{gap:14px}.heart{display:none}.stat{font-size:11px}.stat b{font-size:16px}.side-nav{z-index:45;border:0;border-top:2px solid var(--line);grid-template-columns:repeat(6,1fr);width:100%;height:72px;padding:6px 4px;display:grid;top:auto;bottom:0}.side-nav>button{text-align:center;flex-direction:column;gap:2px;min-width:0;margin:0;padding:0 2px;font-size:7px;line-height:1.15;display:flex}.side-nav>button>span{font-size:15px}.nav-divider,.side-nav>p,.side-nav .unit-link,.stage-dropdown,.overall-card{display:none}.learn-layout,.practice-page,.feature-page,.lesson-page,.problem-bank-page,.contest-hub-page,.judge-page{width:100%;margin:0;padding:20px 14px 40px}.unit-banner{min-height:176px;padding:24px 22px 42px}.unit-banner h1{max-width:260px;font-size:25px}.unit-banner p{max-width:250px}.unit-score{top:18px;right:20px}.journey{overflow:hidden}.lesson-stop.stop-0{transform:translate(-52px)}.lesson-stop.stop-1{transform:none}.lesson-stop.stop-2{transform:translate(52px)}.lesson-label{width:130px;left:calc(50% + 48px)}.stop-2 .lesson-label{right:calc(50% + 48px)}.quest-column{grid-template-columns:1fr}.tip-card{grid-column:1}.practice-title{min-height:200px;padding:26px}.practice-title h1{font-size:27px}.practice-xp{display:none}.form-row{grid-template-columns:1fr}.feature-hero{min-height:300px;padding:32px 24px}.feature-hero:after{font-size:110px;right:12px}.feature-grid{grid-template-columns:1fr;gap:12px}.feature-grid article{min-height:150px}.coming-panel{padding:18px}.lesson-page-hero{min-height:300px;padding:30px 24px}.lesson-page-mark{display:none}.lesson-main-content>section{grid-template-columns:31px 1fr;gap:12px;padding:22px 18px}.lesson-modal{padding:30px 22px}.bank-hero,.contest-hub-hero{min-height:250px;padding:30px 24px}.bank-total{display:none}.bank-toolbar{flex-direction:column;align-items:stretch}.bank-toolbar>div{overflow-x:auto}.bank-toolbar label{width:100%}.class-practice>div{flex-direction:column;align-items:flex-start}.contest-list>article{grid-template-columns:48px 1fr}.contest-list>article>em,.contest-list>article>button{display:none}.judge-title{padding:20px}.judge-title>strong{display:none}.judge-title h1{font-size:21px}.problem-statement{padding:4px 20px 26px}.coding-panel{padding:10px}.editor-body{height:330px}.judge-actions{grid-template-columns:1fr 1fr;display:grid}.judge-actions button{padding:0 8px}.simulation-notice{text-align:left}.ai-assessment-page,.assessment-workspace{width:100%;margin:0}.ai-assessment-page{padding:18px 13px 38px}.ai-center-hero,.ai-bank-heading{min-height:245px;padding:30px 23px}.ai-center-summary,.ai-bank-heading>div:last-child{display:none}.assessment-type-grid{gap:12px;margin-top:18px}.assessment-type-card{min-height:245px;padding:20px}.ai-bank-filters{grid-template-columns:1fr}.ai-search{grid-column:auto}.ai-bank-row{grid-template-columns:66px 1fr}.ai-bank-row>button{grid-area:auto/1/auto/-1}.assessment-workspace-header{padding:10px 12px}.assessment-workspace-header>div:nth-child(2){flex:1;min-width:0}.assessment-workspace-header>button span{display:none}.workspace-tags{overflow-x:auto}.workspace-problem-content{padding:23px 18px 36px}.workspace-problem-content>h2{font-size:22px}.workspace-answer-pane{padding:9px}.quiz-answer-panel,.local-task-panel{padding:16px 13px}.quiz-options label{grid-template-columns:17px 31px 1fr}.quiz-options label b{grid-column:3}.assessment-action-row{flex-wrap:wrap}.assessment-action-row>span{display:none}.assessment-action-row button{flex:1}.assessment-action-row button.primary{flex-basis:100%}.prompt-editor-shell{height:315px}.prompt-result-content ul,.public-dimension-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}.platform-shell{background:#f8faf9;min-height:100vh;padding-top:72px}.platform-topbar{z-index:80;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #e2e8e5;justify-content:space-between;align-items:center;height:72px;padding:0 30px;display:flex;position:fixed;inset:0 0 auto}.platform-logo{align-items:center;height:48px;display:flex}.platform-logo img{object-fit:cover;border-radius:9px;width:132px;height:44px;display:block}.platform-top-actions{align-items:center;gap:18px;display:flex}.platform-status{color:#718079;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.platform-status i{background:#35b86b;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #e2f7e9}.platform-login-link{color:#247e49;background:#eff9f2;border:1px solid #cfe4d6;border-radius:11px;place-items:center;min-width:76px;height:38px;padding:0 16px;font-size:13px;font-weight:900;display:grid}.platform-nav{z-index:60;isolation:isolate;background:#fff;border-right:1px solid #e2e8e5;width:224px;padding:28px 16px;position:fixed;top:72px;bottom:0;left:0;overflow-y:auto}.platform-nav-indicator{z-index:0;width:var(--platform-indicator-width,0);height:var(--platform-indicator-height,0);opacity:0;pointer-events:none;transform:translate3d(var(--platform-indicator-x,0),var(--platform-indicator-y,0),0);background:#ebfaf1;border:2px solid #bdebd0;border-radius:12px;transition:transform .52s cubic-bezier(.22,1.35,.36,1),width .38s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1),opacity .12s;position:absolute;top:0;left:0;box-shadow:0 7px 18px #35b86b1f}.platform-nav-indicator[data-ready=true]{opacity:1}.platform-nav>a[data-platform-nav]{z-index:1;color:#596963;border-radius:12px;align-items:center;gap:13px;min-height:52px;margin-bottom:8px;padding:0 14px;font-size:14px;display:flex;position:relative}.platform-nav>a[data-platform-nav]:hover{background:#f5f8f6}.platform-nav>a[data-platform-nav].active{color:#176f3d}.platform-nav>a[data-platform-nav]>span{text-align:center;color:#74817c;width:27px;font-family:var(--font-geist-mono),monospace;font-size:18px}.platform-nav>a[data-platform-nav].active>span{color:#208b4e;animation:.42s cubic-bezier(.22,1.35,.36,1) platform-icon-settle}.platform-nav>a[data-platform-nav] b{font-weight:850}@keyframes platform-icon-settle{0%{transform:scale(.96)}55%{transform:scale(1.07)}to{transform:scale(1)}}.platform-nav-note{background:#f8faf9;border:1px solid #e5ebe8;border-radius:14px;gap:4px;margin:34px 8px 0;padding:16px;display:grid}.platform-nav-note strong{color:#263a31;font-size:12px}.platform-nav-note span{color:#87938e;font-size:9px;line-height:1.5}.course-nav-back{z-index:2;color:#668078;margin:0 4px 22px;font-size:11px;font-weight:850;display:block;position:relative}.course-nav>a[data-platform-nav]>span{font-size:11px;font-weight:900}.platform-main{min-height:calc(100vh - 72px);margin-left:224px}.platform-page{width:min(1180px,100% - 64px);margin:0 auto;padding:42px 0 72px}.platform-hero{background:radial-gradient(circle at 80% 22%,#5ed48a33,#0000 33%),linear-gradient(135deg,#f6fcf8,#eef8f2);border:1px solid #d9e9df;border-radius:30px;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:70px;min-height:430px;padding:58px 62px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #2e5b4014}.platform-hero:before{content:"Q";color:#2494530e;font-family:Arial,sans-serif;font-size:360px;font-weight:900;line-height:1;position:absolute;bottom:-105px;right:-15px}.eyebrow,.page-intro span,.section-heading span,.stage-map-heading span{color:#20894d;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:900}.platform-hero h1{color:#203128;letter-spacing:-.045em;max-width:690px;margin:18px 0;font-size:clamp(36px,4.4vw,64px);line-height:1.08}.platform-hero p{color:#687970;max-width:650px;margin:0;font-size:15px;line-height:1.9}.hero-actions{flex-wrap:wrap;gap:11px;margin-top:32px;display:flex}.hero-actions a{color:#fff;background:#249453;border:1px solid #249453;border-radius:12px;place-items:center;min-height:46px;padding:0 22px;font-size:13px;font-weight:900;display:grid;box-shadow:0 8px 20px #24945333}.hero-actions a.secondary{box-shadow:none;color:#416151;background:#fff;border-color:#d4e2da}.hero-route-card{grid-template-columns:42px 1fr;align-items:center;gap:10px 14px;display:grid;position:relative}.hero-route-card span{color:#20894d;width:42px;height:42px;font-family:var(--font-geist-mono),monospace;background:#fff;border:1px solid #b8dfc7;border-radius:13px;place-items:center;font-size:11px;font-weight:900;display:grid}.hero-route-card strong{color:#31473b;font-size:15px}.hero-route-card i{background:linear-gradient(#a7dabb,#d7eadf);grid-column:1;width:2px;height:34px;margin:auto}.announcement-card{background:#fff;border:1px solid #e2e7e4;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:24px 0 58px;padding:18px 22px;display:grid}.announcement-card>span{color:#20894d;background:#eaf8ef;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:900}.announcement-card strong{font-size:13px}.announcement-card p{color:#77847e;margin:5px 0 0;font-size:11px}.announcement-card time{color:#9aa39f;font-size:10px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.section-heading h2{letter-spacing:-.03em;margin:8px 0 0;font-size:28px}.section-heading small{color:#8a9590;font-size:10px}.course-card-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.course-card-grid.large{margin-top:28px}.course-card{background:#fff;border:1px solid #dfe7e2;border-radius:22px;flex-direction:column;min-height:300px;padding:28px;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;overflow:hidden}.course-card:hover{border-color:#b9ddc7;transform:translateY(-4px);box-shadow:0 20px 50px #2654391a}.course-card.ai:hover{border-color:#cfc4f4}.course-card header{justify-content:space-between;align-items:center;display:flex}.course-card header span{color:#24894d;min-width:58px;height:52px;font-family:var(--font-geist-mono),monospace;background:#eaf8ef;border-radius:16px;place-items:center;padding:0 11px;font-size:16px;font-weight:900;display:grid}.course-card.ai header span{color:#6c52ca;background:#f0ecff}.course-card header small{color:#819089;font-size:10px;font-weight:800}.course-card>div{margin:auto 0}.course-card h2{margin:30px 0 10px;font-size:27px}.course-card p{color:#718079;margin:0;font-size:12px;line-height:1.75}.course-card footer{border-top:1px solid #edf0ee;justify-content:space-between;gap:16px;padding-top:19px;display:flex}.course-card footer b{color:#84908b;font-size:10px}.course-card footer span{color:#247e49;font-size:11px;font-weight:900}.course-card.ai footer span{color:#654bc1}.capsule-tabs{background:#f1f4f2;border:1px solid #e0e6e2;border-radius:999px;gap:3px;width:fit-content;padding:4px;display:flex}.capsule-tabs button,.capsule-tabs a{color:#718079;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;min-height:36px;padding:0 17px;font-size:11px;font-weight:850;display:grid}.capsule-tabs .active{color:#20894d;background:#fff;box-shadow:0 2px 8px #2a44351a}.ranking-list{background:#fff;border:1px solid #e0e6e2;border-radius:18px;margin-top:14px;overflow:hidden}.ranking-list article{border-bottom:1px solid #eef1ef;grid-template-columns:36px 42px 1fr auto;align-items:center;gap:14px;min-height:70px;padding:0 22px;display:grid}.ranking-list article:last-child{border:0}.ranking-list article>strong{color:#9aa39f;font-family:var(--font-geist-mono),monospace;font-size:11px}.ranking-list article>span{color:#247e49;background:#ecf7f0;border-radius:12px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.ranking-list article div{gap:4px;display:grid}.ranking-list b{font-size:12px}.ranking-list small{color:#8d9792;font-size:9px}.ranking-list em{color:#247e49;font-size:11px;font-style:normal;font-weight:900}.page-intro{background:linear-gradient(135deg,#fff,#f0f8f3);border:1px solid #dce8e1;border-radius:26px;justify-content:space-between;align-items:center;gap:40px;min-height:250px;padding:46px 50px;display:flex;overflow:hidden}.page-intro h1{letter-spacing:-.04em;margin:13px 0 12px;font-size:clamp(32px,4vw,52px)}.page-intro p{color:#6d7d75;max-width:720px;margin:0;font-size:13px;line-height:1.85}.page-intro>strong{color:#2494532e;font-family:var(--font-geist-mono),monospace;font-size:90px}.stage-card-grid{gap:12px;margin-top:22px;display:grid}.stage-card-grid>a{background:#fff;border:1px solid #e0e6e2;border-radius:17px;grid-template-columns:54px 1fr 34px;align-items:center;gap:20px;min-height:126px;padding:22px 25px;display:grid}.stage-card-grid>a:hover{border-color:#b5dcc4}.stage-card-grid>a>span{color:#20894d;width:50px;height:50px;font-family:var(--font-geist-mono),monospace;background:#eaf8ef;border-radius:15px;place-items:center;font-size:12px;font-weight:900;display:grid}.stage-card-grid small{color:#8a9590;font-size:9px}.stage-card-grid h2{margin:5px 0;font-size:19px}.stage-card-grid p{color:#75827c;margin:0;font-size:11px}.stage-card-grid b{color:#269150;font-size:20px}.stage-card-grid>a.future{opacity:.72}.stage-map-heading{background:#fff;border:1px solid #dce8e1;border-radius:22px;justify-content:space-between;align-items:center;gap:30px;min-height:170px;padding:36px 40px;display:flex}.stage-map-heading h1{margin:10px 0 8px;font-size:38px}.stage-map-heading p{color:#74817b;margin:0;font-size:12px}.stage-map-heading a{color:#397258;border:1px solid #d6e4db;border-radius:10px;padding:10px 14px;font-size:10px;font-weight:900}.quest-map{width:min(780px,100%);margin:40px auto 0;padding-bottom:30px;position:relative}.quest-map:before{content:"";background:linear-gradient(#7cd19d,#d9e8df);border-radius:99px;width:3px;position:absolute;top:40px;bottom:70px;left:50%;transform:translate(-50%)}.quest-map-row{grid-template-columns:1fr 86px 1fr;align-items:center;min-height:160px;display:grid;position:relative}.quest-map-row>a{z-index:2;background:#e5ebe7;border:7px solid #fff;border-radius:26px;grid-column:2;place-items:center;width:78px;height:78px;display:grid;position:relative;box-shadow:0 4px #c9d3cd,0 10px 26px #2c493821}.quest-map-row>a.available{color:#fff;background:#35b86b;box-shadow:0 5px #258f51,0 12px 30px #35b86b38}.quest-map-row>a span{font-size:20px}.quest-map-row>a b{color:#527062;background:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:9px;display:grid;position:absolute;bottom:-8px;right:-8px}.quest-map-row>div{background:#fff;border:1px solid #e1e7e3;border-radius:15px;grid-column:3;width:270px;padding:18px;box-shadow:0 10px 28px #2d45370f}.quest-map-row.row-1>div{text-align:right;grid-area:1/1;justify-self:end}.quest-map-row small{color:#299054;font-size:9px;font-weight:900}.quest-map-row strong{margin-top:7px;font-size:13px;display:block}.quest-map-row p{color:#83908a;margin:6px 0 0;font-size:9px;line-height:1.5}.unit-breadcrumb{color:#72827a;justify-content:space-between;margin-bottom:17px;font-size:10px;font-weight:800;display:flex}.unit-title-card{background:linear-gradient(135deg,#eff9f2,#fff);border:1px solid #dce8e1;border-radius:24px;align-items:center;gap:32px;min-height:220px;padding:40px 46px;display:flex}.unit-title-card>span{color:#fff;min-width:86px;height:86px;font-family:var(--font-geist-mono),monospace;background:#35b86b;border-radius:25px;place-items:center;font-weight:900;display:grid;box-shadow:0 7px #258f51}.unit-title-card small{color:#26864c;font-size:10px;font-weight:900}.unit-title-card h1{margin:8px 0;font-size:35px}.unit-title-card p{color:#718079;max-width:680px;margin:0;font-size:11px;line-height:1.75}.unit-two-column{grid-template-columns:1.35fr .8fr;gap:18px;margin-top:20px;display:grid}.unit-two-column>article{background:#fff;border:1px solid #e0e6e2;border-radius:19px;min-height:390px;padding:28px}.unit-two-column>article>span{color:#249453;font-family:var(--font-geist-mono),monospace;font-size:11px;font-weight:900}.unit-two-column h2{margin:10px 0;font-size:22px}.unit-two-column p{color:#73817a;font-size:11px;line-height:1.75}.content-skeleton{gap:9px;margin-top:22px;display:grid}.content-skeleton>i{background:#edf1ef;border-radius:99px;height:8px}.content-skeleton>i:nth-child(2){width:82%}.content-skeleton>i:nth-child(3){width:64%}.content-skeleton pre{color:#dff5e7;background:#202a25;border-radius:12px;margin:17px 0 0;padding:18px;font-size:11px;line-height:1.7}.exercise-placeholder{background:#f5f8f6;border-radius:14px;gap:9px;margin-top:24px;padding:22px;display:grid}.exercise-placeholder b{font-size:13px}.exercise-placeholder small{color:#7d8983;font-size:9px;line-height:1.6}.exercise-placeholder button{color:#88918d;background:#dfe6e2;border:0;border-radius:10px;height:39px;margin-top:12px;font-size:10px;font-weight:900}.practice-choice-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:24px;display:grid}.practice-choice-grid>a{background:#fff;border:1px solid #e0e6e2;border-radius:22px;flex-direction:column;min-height:330px;padding:32px;display:flex}.practice-choice-grid>a:hover{border-color:#b5dcc4;box-shadow:0 18px 44px #2d4e3b14}.practice-choice-grid>a>span{color:#20894d;width:64px;height:58px;font-family:var(--font-geist-mono),monospace;background:#eaf8ef;border-radius:18px;place-items:center;font-size:17px;font-weight:900;display:grid}.practice-choice-grid>a:nth-child(2)>span{color:#6b50ca;background:#f0ecff}.practice-choice-grid small{color:#8a9590;margin-top:30px;font-size:9px;font-weight:850}.practice-choice-grid h2{margin:8px 0;font-size:27px}.practice-choice-grid p{color:#75827c;margin:0;font-size:11px;line-height:1.7}.practice-choice-grid b{color:#27854c;margin-top:auto;font-size:11px}.filter-frame{background:#fff;border:1px solid #e1e7e3;border-radius:14px;align-items:center;gap:8px;margin:22px 0 13px;padding:10px;display:flex}.filter-frame label{border:1px solid #e2e7e4;border-radius:10px;align-items:center;gap:10px;height:38px;margin-right:auto;padding:0 12px;display:flex}.filter-frame label span{color:#7b8882;font-size:9px;font-weight:900}.filter-frame input{color:#3e5047;border:0;outline:0;min-width:260px;font-size:10px}.filter-frame button{color:#78857f;background:0 0;border:0;border-radius:9px;height:36px;padding:0 13px;font-size:9px;font-weight:850}.filter-frame button.active{color:#20894d;background:#eaf8ef}.platform-problem-list{background:#fff;border:1px solid #e0e6e2;border-radius:17px;overflow:hidden}.platform-problem-list>div,.platform-problem-list>article{border-bottom:1px solid #edf0ee;grid-template-columns:90px minmax(200px,1fr) 160px 80px 90px;align-items:center;gap:14px;min-height:62px;padding:0 20px;display:grid}.platform-problem-list>div{color:#8b9590;background:#f5f7f6;min-height:45px;font-size:9px;font-weight:900}.platform-problem-list article>span{color:#39845a;font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:900}.platform-problem-list article strong{font-size:11px}.platform-problem-list article em{color:#718079;font-size:9px;font-style:normal}.platform-problem-list article small{color:#8a6a22;font-size:9px}.platform-problem-list article a{color:#20894d;background:#edf8f1;border-radius:9px;place-items:center;height:33px;font-size:9px;font-weight:900;display:grid}.centered-screen{place-items:center;min-height:calc(100vh - 72px);display:grid}.login-card{background:#fff;border:1px solid #dde7e1;border-radius:24px;width:min(470px,100%);padding:42px;box-shadow:0 24px 70px #2a48361a}.login-mark{color:#fff;background:#17231d;border-radius:19px;place-items:center;width:60px;height:60px;margin-bottom:22px;font-size:30px;font-weight:900;display:grid}.login-card>small{color:#24894d;letter-spacing:.16em;font-size:9px;font-weight:900}.login-card h1{margin:9px 0;font-size:32px}.login-card>p{color:#76837d;margin:0;font-size:11px;line-height:1.7}.login-card form{gap:15px;margin-top:26px;display:grid}.login-card label{color:#52645b;gap:7px;font-size:10px;font-weight:850;display:grid}.login-card input{border:1px solid #dbe3df;border-radius:11px;outline:0;height:44px;padding:0 13px;font-size:11px}.login-card input:focus{border-color:#7bc99a;box-shadow:0 0 0 3px #eaf8ef}.login-card form button{color:#83908a;background:#dfe6e2;border:0;border-radius:11px;height:44px;font-size:11px;font-weight:900}.login-card>div{color:#8a9590;justify-content:space-between;margin-top:18px;font-size:9px;display:flex}.login-card>div a{color:#27854c;font-weight:900}.profile-guest-card{background:#fff;border:1px solid #e0e6e2;border-radius:19px;grid-template-columns:72px 1fr auto;align-items:center;gap:24px;margin-top:24px;padding:30px;display:grid}.profile-guest-card>span{color:#89958f;background:#edf1ef;border-radius:21px;place-items:center;width:68px;height:68px;font-size:24px;font-weight:900;display:grid}.profile-guest-card small{color:#26894e;font-size:9px;font-weight:900}.profile-guest-card h2{margin:7px 0;font-size:20px}.profile-guest-card p{color:#78857f;margin:0;font-size:10px}.profile-guest-card a{color:#20894d;background:#edf8f1;border-radius:10px;padding:11px 15px;font-size:10px;font-weight:900}.contest-card-list{gap:12px;margin-top:24px;display:grid}.contest-card-list article{background:#fff;border:1px solid #e0e6e2;border-radius:17px;grid-template-columns:60px 1fr auto;align-items:center;gap:20px;min-height:125px;padding:22px 24px;display:grid}.contest-card-list article>span,.contest-detail-heading>span{color:#416cc4;width:56px;height:52px;font-family:var(--font-geist-mono),monospace;background:#eef3ff;border-radius:15px;place-items:center;font-size:11px;font-weight:900;display:grid}.contest-card-list small{color:#a17315;font-size:9px;font-weight:900}.contest-card-list h2{margin:5px 0;font-size:18px}.contest-card-list p{color:#7b8781;margin:0;font-size:10px}.contest-card-list a{color:#27854c;font-size:10px;font-weight:900}.contest-detail-heading{background:#fff;border:1px solid #dfe6e2;border-radius:22px;align-items:center;gap:25px;min-height:190px;padding:34px 40px;display:flex}.contest-detail-heading small{color:#a17315;font-size:9px;font-weight:900}.contest-detail-heading h1{margin:7px 0;font-size:32px}.contest-detail-heading p{color:#7b8781;margin:0;font-size:11px}.route-tabs{margin:18px 0}.contest-question-frame{background:#fff;border:1px solid #e0e6e2;border-radius:18px;grid-template-columns:90px 1fr;min-height:410px;display:grid;overflow:hidden}.contest-question-frame aside{background:#f6f8f7;border-right:1px solid #e5eae7;align-content:start;gap:8px;padding:16px;display:grid}.contest-question-frame aside button{color:#678077;height:46px;font-family:var(--font-geist-mono),monospace;background:#fff;border:1px solid #dce4df;border-radius:10px;font-size:10px}.contest-question-frame article{padding:48px}.contest-question-frame small{color:#24894d;font-size:9px;font-weight:900}.contest-question-frame h2{margin:12px 0;font-size:26px}.contest-question-frame p{color:#75827c;max-width:620px;font-size:11px;line-height:1.8}.admin-link-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px;display:grid}.admin-link-grid a{background:#fff;border:1px solid #e0e6e2;border-radius:17px;flex-direction:column;min-height:210px;padding:24px;display:flex}.admin-link-grid span{color:#24894d;font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:900}.admin-link-grid h2{margin:25px 0 8px;font-size:18px}.admin-link-grid p{color:#798680;margin:0;font-size:10px;line-height:1.6}.admin-link-grid b{color:#27854c;margin-top:auto;font-size:9px}.platform-empty{text-align:center;background:#fff;border:1px dashed #cedbd3;border-radius:20px;align-content:center;place-items:center;min-height:330px;margin-top:22px;padding:40px;display:grid}.platform-empty>span{color:#27854c;min-width:52px;height:52px;font-family:var(--font-geist-mono),monospace;background:#edf8f1;border-radius:16px;place-items:center;padding:0 13px;font-size:13px;font-weight:900;display:grid}.platform-empty h2{margin:18px 0 8px;font-size:21px}.platform-empty p{color:#7b8781;max-width:520px;margin:0;font-size:11px;line-height:1.7}.platform-legacy-host{background:#fff;min-height:calc(100vh - 72px)}.platform-legacy-host .app-shell{min-height:auto;padding-top:0}.platform-legacy-host .topbar,.platform-legacy-host .side-nav{display:none!important}.platform-legacy-host :is(.learn-layout,.practice-page,.feature-page,.lesson-page,.problem-bank-page,.contest-hub-page,.judge-page,.ai-assessment-page,.assessment-workspace){width:100%;margin-left:0}.platform-legacy-host .assessment-workspace{min-height:calc(100vh - 72px)}@media (width<=1040px){.platform-nav{width:88px;padding:24px 10px}.platform-nav>a[data-platform-nav]{justify-content:center;padding:0}.platform-nav>a[data-platform-nav] b,.platform-nav-note,.course-nav-back{display:none}.platform-nav>a[data-platform-nav]>span{width:auto;font-size:16px}.platform-main{margin-left:88px}.platform-page{width:min(100% - 40px,980px)}.platform-hero{grid-template-columns:1fr 240px;gap:35px;padding:46px}.admin-link-grid{grid-template-columns:1fr 1fr}}@media (width<=720px){.platform-shell{padding-top:62px;padding-bottom:72px}.platform-topbar{height:62px;padding:0 15px}.platform-logo img{width:108px;height:36px}.platform-status{display:none}.platform-login-link{min-width:62px;height:34px}.platform-nav{z-index:90;border-top:1px solid #dce4df;border-right:0;grid-template-columns:repeat(4,1fr);width:100%;height:72px;padding:6px;display:grid;top:auto;bottom:0;right:0;overflow:visible}.platform-nav>a[data-platform-nav]{flex-direction:column;justify-content:center;gap:3px;min-height:58px;margin:0;padding:4px;font-size:9px}.platform-nav>a[data-platform-nav] b{display:block}.platform-nav>a[data-platform-nav]>span{font-size:14px}.platform-main{min-height:calc(100vh - 134px);margin-left:0}.platform-page{width:calc(100% - 26px);padding:20px 0 38px}.platform-hero{border-radius:22px;grid-template-columns:1fr;gap:32px;min-height:530px;padding:34px 25px}.platform-hero h1{font-size:38px}.platform-hero p{font-size:12px}.hero-route-card{width:260px}.announcement-card{grid-template-columns:auto 1fr;margin:13px 0 38px}.announcement-card time{display:none}.announcement-card p{font-size:9px;line-height:1.5}.course-card-grid,.practice-choice-grid,.unit-two-column{grid-template-columns:1fr}.course-card{min-height:270px}.section-heading{flex-direction:column;align-items:start}.section-heading h2{font-size:24px}.page-intro{border-radius:20px;min-height:260px;padding:32px 24px}.page-intro h1{font-size:33px}.page-intro>strong{display:none}.stage-card-grid>a{grid-template-columns:45px 1fr 20px;gap:12px;padding:18px}.stage-card-grid>a>span{width:43px;height:43px}.stage-map-heading{flex-direction:column;align-items:flex-start;padding:28px 23px}.stage-map-heading h1{font-size:30px}.quest-map{padding-left:4px}.quest-map:before{left:40px}.quest-map-row{grid-template-columns:80px 1fr;min-height:155px}.quest-map-row>a{grid-column:1;width:70px;height:70px}.quest-map-row>div,.quest-map-row.row-1>div{text-align:left;grid-area:1/2;justify-self:stretch;width:auto}.unit-title-card{flex-direction:column;align-items:flex-start;padding:28px 23px}.unit-title-card>span{border-radius:19px;min-width:65px;height:65px}.unit-title-card h1{font-size:28px}.filter-frame{flex-wrap:wrap;align-items:stretch}.filter-frame label{width:100%;margin:0}.filter-frame input{width:100%;min-width:0}.platform-problem-list>div{display:none}.platform-problem-list>article{grid-template-columns:70px 1fr auto;gap:8px;padding:17px}.platform-problem-list article em{grid-column:2}.platform-problem-list article small{grid-area:1/3}.platform-problem-list article a{grid-column:1/-1}.profile-guest-card{grid-template-columns:58px 1fr;padding:23px}.profile-guest-card>span{width:54px;height:54px}.profile-guest-card a{text-align:center;grid-column:1/-1}.contest-card-list article{grid-template-columns:50px 1fr;padding:19px}.contest-card-list article>span{width:48px;height:48px}.contest-card-list article a{grid-column:1/-1}.contest-detail-heading{flex-direction:column;align-items:flex-start;padding:25px}.contest-question-frame{grid-template-columns:1fr}.contest-question-frame aside{border-bottom:1px solid #e5eae7;border-right:0;display:flex;overflow-x:auto}.contest-question-frame aside button{min-width:46px}.contest-question-frame article{padding:28px 22px}.admin-link-grid{grid-template-columns:1fr}.login-card{padding:30px 23px}.login-card>div{flex-direction:column;gap:12px}.platform-legacy-host .judge-page,.platform-legacy-host .ai-assessment-page,.platform-legacy-host .assessment-workspace{padding-bottom:20px}}@media (prefers-reduced-motion:reduce){.platform-nav-indicator,.course-card{transition:none!important}.platform-nav>a[data-platform-nav].active>span{animation:none!important}}.capsule-tabs{background:#f4f7f5;border-color:#dde5e0;gap:4px;padding:5px;box-shadow:0 3px 10px #32463b14}.capsule-tabs button,.capsule-tabs a{color:#596a62;min-height:40px;padding:0 22px;font-size:12px;transition:background-color .2s,color .2s,box-shadow .2s}.capsule-tabs .active{color:#193c2a;box-shadow:0 3px 10px #2a443524}.course-structure-progress{background:#fff;border:1px solid #e0e7e3;border-radius:16px;margin-top:20px;padding:20px 24px}.course-structure-progress>div{color:#677972;grid-template-columns:1fr auto auto;align-items:center;gap:18px;display:grid}.course-structure-progress span{font-size:11px;font-weight:900}.course-structure-progress strong,.course-structure-progress b{font-family:var(--font-geist-mono),monospace;font-size:11px}.course-structure-progress strong{color:#537067}.course-structure-progress b{color:#7b8a84;text-align:right;min-width:36px}.course-structure-progress>i{background:#e3e9ed;border-radius:999px;height:10px;margin-top:13px;display:block;overflow:hidden}.course-structure-progress>i>span{border-radius:inherit;background:linear-gradient(90deg,#49d4e8 0%,#67cfe3 50%,#ffd64c 100%);height:100%;display:block}.contest-question-frame{display:block}.contest-question-frame nav{background:#fbfcfb;border-bottom:1px solid #e3e9e5;padding:25px 30px}.contest-question-frame nav>div{flex-wrap:wrap;gap:12px;display:flex}.contest-question-frame nav button{color:#62766f;width:56px;height:56px;font-family:var(--font-geist-mono),monospace;cursor:pointer;background:#fff;border:1px solid #dce5e0;border-radius:14px;font-size:16px}.contest-question-frame nav button.current{color:#fff;background:#12a8e8;border-color:#12a8e8;box-shadow:0 7px 18px #12a8e833}.contest-question-frame nav button.completed{color:#168b61;background:#e9faf3;border-color:#20b982}.contest-question-frame nav>p{border-top:1px solid #e6ebe8;flex-wrap:wrap;gap:20px;margin:20px 0 0;padding-top:16px;display:flex}.contest-question-frame nav>p span{color:#71837b;align-items:center;gap:7px;font-size:10px;display:flex}.contest-question-frame nav>p i{background:#fff;border:1px solid #d4dfd9;border-radius:50%;width:9px;height:9px}.contest-question-frame nav>p i.current{background:#12a8e8;border-color:#12a8e8}.contest-question-frame nav>p i.completed{background:#20b982;border-color:#20b982}@media (width<=720px){.capsule-tabs{width:100%;overflow-x:auto}.capsule-tabs button,.capsule-tabs a{flex:1;min-width:max-content;padding:0 15px}.course-structure-progress{padding:18px}.contest-question-frame nav{padding:20px;overflow:hidden}.contest-question-frame nav>div{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.contest-question-frame nav button{width:50px;min-width:50px;height:50px}}@media (prefers-reduced-motion:reduce){.capsule-tabs button,.capsule-tabs a{transition:none!important}}.platform-legacy-host .ai-bank-row>a{height:32px;color:var(--green-dark);background:#edf7f1;border-radius:8px;place-items:center;font-size:8px;font-weight:900;display:grid}.platform-shell{background:radial-gradient(circle at 8% 4%,#687af61f,#0000 28%),radial-gradient(circle at 95% 96%,#30958914,#0000 25%),#eceef2;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Helvetica Neue,Arial,sans-serif}.platform-topbar{-webkit-backdrop-filter:blur(24px)saturate(1.08);backdrop-filter:blur(24px)saturate(1.08);background:#f8f9fbdb;border-bottom-color:#2c32401a}.platform-nav{-webkit-backdrop-filter:blur(28px)saturate(1.08);backdrop-filter:blur(28px)saturate(1.08);background:#f4f5f8d1;border-right-color:#262b3717}.platform-page>:is(section,article,.home-intro-grid,.platform-ranking){filter:saturate(.96)}.platform-command-button{color:#626874;cursor:pointer;width:100%;min-height:44px;font:inherit;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:12px;margin:18px 0 0;padding:0 14px;transition:background .18s,color .18s,transform .14s;display:flex}.platform-command-button:active{transform:scale(.985)}.platform-command-button>span{text-align:center;width:27px;font-size:18px}.platform-command-button b{font-size:14px;font-weight:700}.platform-command-button kbd{color:#9298a3;background:#fff9;border:1px solid #2c324014;border-radius:6px;margin-left:auto;padding:3px 6px;font-size:10px}.platform-command-overlay{z-index:200;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#14171f3d;justify-content:center;align-items:flex-start;padding-top:14vh;display:flex;position:fixed;inset:0}.platform-command-palette{background:#fffffff5;border:1px solid #ffffffe6;border-radius:22px;width:min(590px,100vw - 32px);animation:.24s cubic-bezier(.22,.85,.24,1) platform-palette-in;overflow:hidden;box-shadow:0 30px 80px #191d2a3d}.platform-command-search{color:#7d8490;border-bottom:1px solid #2c324017;align-items:center;gap:11px;height:58px;padding:0 17px;display:flex}.platform-command-search input{color:#1b1d22;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:15px}.platform-command-search kbd{color:#8a909b;background:#eef0f4;border-radius:6px;padding:3px 6px;font-size:10px}.platform-command-list{padding:8px}.platform-command-list button{color:#59606c;cursor:pointer;width:100%;height:47px;font:inherit;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:0 12px;transition:background .18s,color .18s,transform .14s;display:flex}.platform-command-list button:hover,.platform-command-list button:focus-visible{color:#303644;background:#f0f2f8;outline:0}.platform-command-list button:active{transform:scale(.99)}.platform-command-list button>span{color:#5668f5;text-align:center;width:22px;font-size:16px}.platform-command-list button strong{font-size:13px;font-weight:700}.platform-command-list button small{color:#969ca6;margin-left:auto;font-size:11px}.platform-command-list p{color:#777d88;text-align:center;margin:12px;font-size:13px}@keyframes platform-palette-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:none}}@media (width<=720px){.platform-command-button{flex-direction:column;justify-content:center;gap:3px;min-height:58px;margin:0;padding:4px;font-size:9px}.platform-command-button b{font-size:9px}.platform-command-button kbd{display:none}.platform-command-overlay{padding-top:9vh}.platform-command-palette{width:calc(100vw - 26px)}}@media (prefers-reduced-motion:reduce){.platform-command-palette,.platform-command-button,.platform-command-list button{transition:none;animation:none}}@media (width<=720px){.platform-nav{grid-template-columns:repeat(5,1fr)}}.home-intro-grid{grid-template-columns:minmax(0,1fr) 250px;align-items:stretch;gap:18px;display:grid}.home-intro-grid .platform-hero{grid-template-columns:1fr;min-height:360px;padding:52px 58px}.home-intro-grid .platform-hero h1{max-width:760px}.home-intro-grid .platform-hero p{color:#4f6258;max-width:720px;font-size:17px}.home-intro-grid .announcement-card{border-radius:22px;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px;width:auto;min-height:250px;margin:0;padding:26px;display:flex}.home-intro-grid .announcement-card>div{gap:8px;display:grid}.home-intro-grid .announcement-card strong{font-size:16px;line-height:1.45}.home-intro-grid .announcement-card p,.home-intro-grid .announcement-card .safe-markdown{color:#53645b;font-size:14px;line-height:1.7}.platform-ranking{margin-top:34px}.platform-page :is(input,textarea,select,button){font-size:14px}.platform-page :is(label,small,time){color:#53645b;font-size:12px}.platform-page :is(.section-heading span,.page-intro span,.stage-map-heading span,.eyebrow){font-size:13px}.platform-page :is(.ranking-list b,.ranking-list strong,.ranking-list em){font-size:14px}.platform-page :is(.ranking-list small,.ranking-list article>span){font-size:12px}.platform-page :is(.course-card p,.announcement-card p,.page-intro p,.stage-card-grid p,.unit-two-column p){font-size:15px;line-height:1.8}.platform-account-popover{gap:10px;padding:18px}.platform-account-popover>a,.platform-account-popover>button{min-height:42px;font-size:13px}.platform-account-popover header small{font-size:12px}@media (width<=800px){.home-intro-grid{grid-template-columns:1fr}.home-intro-grid .announcement-card{aspect-ratio:auto;min-height:0}.home-intro-grid .platform-hero{min-height:340px;padding:38px 28px}.home-intro-grid .platform-hero p{font-size:15px}}@media (width<=960px){.platform-legacy-host .ai-bank-row>a{grid-area:1/3/3}}@media (width<=720px){.platform-legacy-host .ai-bank-row>a{grid-area:auto/1/auto/-1}}.platform-account-loading{background:#edf2ef;border-radius:11px;width:74px;height:36px}.platform-account-menu{position:relative}.platform-avatar-button{cursor:pointer;background:#fff;border:1px solid #d8e5dd;border-radius:14px;align-items:center;gap:9px;height:44px;padding:4px 10px 4px 5px;display:flex}.platform-avatar-button img,.platform-avatar-button>span{color:#1f7a46;object-fit:cover;background:#e8f7ee;border-radius:11px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:900;display:grid;overflow:hidden}.platform-avatar-button b{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:11px;overflow:hidden}.platform-account-popover{z-index:120;opacity:0;pointer-events:none;transform-origin:100% 0;background:#fff;border:1px solid #dce5e0;border-radius:17px;gap:8px;width:270px;padding:16px;transition:opacity .22s,transform .26s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;top:52px;right:0;transform:translateY(-7px)scale(.98);box-shadow:0 22px 60px #1e372929}.platform-account-popover[data-open=true]{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.platform-account-popover header{border-bottom:1px solid #edf1ef;gap:4px;padding-bottom:10px;display:grid}.platform-account-popover header strong{font-size:13px}.platform-account-popover header small{color:#84908a;font-size:9px}.platform-account-popover>p{color:#8b6114;background:#fff5dc;border-radius:9px;margin:0;padding:9px;font-size:9px;line-height:1.5}.platform-account-popover>a,.platform-account-popover>button{color:#4e6258;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;min-height:36px;padding:0 10px;font-size:10px;font-weight:850;display:flex}.platform-account-popover>a:hover,.platform-account-popover>button:hover{color:#1f7a46;background:#eff8f2}.level-color.level-1{color:#b42318}.level-color.level-2{color:#b54708}.level-color.level-3{color:#765900}.level-color.level-4{color:#1f7a46}.level-color.level-5{color:#087f8c}.level-color.level-6{color:#2457b2}.level-color.level-7{color:#6d3cc3}.level-color.level-8{color:#111827;font-weight:950}.experience-progress{min-width:260px}.experience-progress>div{color:#677b71;grid-template-columns:1fr auto auto;align-items:center;gap:16px;display:grid}.experience-progress strong{color:#20794a;font-size:12px}.experience-progress span,.experience-progress b{font-family:var(--font-geist-mono),monospace;font-size:10px}.experience-progress b{color:#72817a}.experience-progress>i{background:#dfe7e3;border-radius:99px;height:10px;margin-top:11px;display:block;overflow:hidden}.experience-progress>i>span{border-radius:inherit;background:linear-gradient(90deg,#29c7bc,#35b86b);height:100%;display:block}.experience-progress>i>span.animate{transition:width .46s cubic-bezier(.22,1,.36,1)}.experience-progress.compact{min-width:0;padding:7px 0 10px}.experience-progress.compact>i{height:7px}.profile-loading{color:#74827b;place-items:center;min-height:420px;display:grid}.profile-hero-card{background:linear-gradient(135deg,#fff,#eef8f2);border:1px solid #dce7e0;border-radius:24px;grid-template-columns:104px 1fr auto;align-items:center;gap:28px;min-height:230px;padding:36px 40px;display:grid}.profile-avatar-large{color:#fff;background:#35b86b;border:7px solid #fff;border-radius:30px;place-items:center;width:96px;height:96px;font-size:34px;font-weight:900;display:grid;overflow:hidden;box-shadow:0 10px 28px #26734533}.profile-avatar-large img{object-fit:cover;width:100%;height:100%}.profile-hero-card small{color:#25894e;letter-spacing:.14em;font-size:9px;font-weight:900}.profile-hero-card h1{margin:7px 0;font-size:34px}.profile-hero-card p{color:#67776f;margin:0 0 8px;font-size:11px}.profile-hero-card div>span{color:#8b9791;font-size:9px}.profile-level-badge{min-width:72px;height:58px;font-family:var(--font-geist-mono),monospace;background:#fff;border:1px solid;border-radius:18px;place-items:center;font-size:18px;font-weight:950;display:grid}.profile-xp-card{background:#fff;border:1px solid #dfe7e2;border-radius:18px;grid-template-columns:160px 1fr;align-items:center;gap:25px;margin-top:18px;padding:24px 28px;display:grid}.profile-xp-card>div{gap:5px;display:grid}.profile-xp-card>div span{color:#75837c;font-size:9px;font-weight:900}.profile-xp-card>div strong{font-size:23px}.profile-security-warning{color:#7b5714;background:#fff8e7;border:1px solid #f0d59c;border-radius:13px;margin-top:16px;padding:15px 18px;font-size:10px;line-height:1.6}.form-message{color:#1d7443;background:#ecf8f0;border-radius:10px;margin:14px 0 0;padding:11px 13px;font-size:10px}.form-message.error{color:#a42d22;background:#fff0ee}.profile-settings-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.profile-panel{background:#fff;border:1px solid #dfe7e2;border-radius:19px;flex-direction:column;gap:13px;min-height:410px;padding:28px;display:flex}.profile-panel>span{color:#25894e;font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:900}.profile-panel h2{margin:5px 0 10px;font-size:22px}.profile-panel label,.admin-create-form label,.admin-announcement-form label{color:#52645b;gap:7px;font-size:10px;font-weight:850;display:grid}.profile-panel input,.profile-panel textarea,.admin-feature-page input,.admin-feature-page textarea,.admin-feature-page select{min-height:42px;font:inherit;background:#fff;border:1px solid #dbe4df;border-radius:10px;outline:0;padding:10px 12px}.profile-panel textarea{resize:vertical;min-height:90px}.profile-panel small{color:#87928d;font-size:8px;line-height:1.55}.profile-panel button,.admin-feature-page form button{color:#fff;cursor:pointer;background:#258f51;border:0;border-radius:10px;height:42px;margin-top:auto;font-size:10px;font-weight:900}.profile-panel button:disabled,.admin-feature-page button:disabled{opacity:.5;cursor:not-allowed}.profile-avatar-library{margin-top:34px}.profile-avatar-library>div:last-child{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.profile-avatar-library button{cursor:pointer;background:#fff;border:1px solid #dfe6e2;border-radius:15px;justify-items:center;gap:8px;min-height:155px;padding:15px;display:grid}.profile-avatar-library button.selected{border-color:#35b86b;box-shadow:0 0 0 3px #e5f7ec}.profile-avatar-library button:disabled{opacity:.52;cursor:not-allowed}.profile-avatar-library img{object-fit:cover;border-radius:22px;width:72px;height:72px}.profile-avatar-library button span{color:#257b49;font-size:9px;font-weight:900}.profile-avatar-library button small{color:#87938d;font-size:8px}.safe-markdown{color:#6f7d76;font-size:10px;line-height:1.65}.safe-markdown :is(p,h2,h3,h4,ul){margin:4px 0}.safe-markdown a{color:#1f7a46;text-decoration:underline}.safe-markdown code{background:#edf2ef;border-radius:4px;padding:2px 4px}.announcement-card.published{align-items:start}.announcement-card.published .safe-markdown{margin-top:5px}.ranking-list.pending{text-align:center;align-content:center;place-items:center;gap:7px;min-height:170px;padding:30px;display:grid}.ranking-list.pending>span{color:#25894e;font-size:9px;font-weight:900}.ranking-list.pending>strong{font-size:16px}.ranking-list.pending>p{color:#85908b;margin:0;font-size:9px}.capsule-tabs{isolation:isolate;position:relative}.capsule-tabs button,.capsule-tabs a{z-index:1;position:relative}.capsule-slider{z-index:0;pointer-events:none;background:#fff;border-radius:999px;width:calc(50% - 6px);height:calc(100% - 10px);transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .22s;position:absolute;top:5px;left:5px;transform:translate(0);box-shadow:0 3px 10px #2a443524}.capsule-slider.second,.capsule-tabs.second-active .capsule-slider{transform:translate(calc(100% + 4px))}.capsule-tabs .active{box-shadow:none;background:0 0}.admin-access-state{text-align:center;background:#f8faf9;align-content:center;place-items:center;gap:10px;min-height:100vh;display:grid}.admin-access-state strong{font-size:24px}.admin-access-state p{color:#76847d;margin:0;font-size:11px}.admin-access-state a{color:#1f7a46;background:#eaf8ef;border-radius:10px;padding:11px 16px;font-size:10px;font-weight:900}.admin-feature-page>.page-intro{min-height:200px}.admin-create-form{background:#fff;border:1px solid #dfe6e2;border-radius:15px;grid-template-columns:1fr 1fr 1fr 130px 120px;align-items:end;gap:10px;margin:18px 0;padding:18px;display:grid}.admin-create-form.avatar{grid-template-columns:1fr 180px 150px}.admin-feature-page form button{margin:0}.admin-data-table{background:#fff;border:1px solid #dfe6e2;border-radius:16px;overflow:auto}.admin-data-table>header,.admin-data-table>article{border-bottom:1px solid #edf0ee;grid-template-columns:160px 150px 110px 80px 180px 1fr;align-items:center;gap:12px;min-width:980px;padding:13px 18px;display:grid}.admin-data-table>header{color:#7a8780;background:#f5f8f6;min-height:42px;font-size:8px;font-weight:900}.admin-data-table>article{min-height:72px}.admin-data-table article>div:first-child{gap:4px;display:grid}.admin-data-table strong,.admin-data-table b{font-size:10px}.admin-data-table small,.admin-data-table span{color:#7e8a84;font-size:8px}.admin-data-table em{border-radius:6px;width:fit-content;padding:5px 7px;font-size:8px;font-style:normal}.admin-data-table em.active{color:#1f7a46;background:#e9f8ef}.admin-data-table em.disabled{color:#747e79;background:#f1f2f2}.admin-data-table article>div:last-child{gap:5px;display:flex}.admin-data-table button,.admin-avatar-grid button,.admin-announcement-list button{color:#257849;cursor:pointer;background:#f0f8f3;border:1px solid #d5e2da;border-radius:8px;min-height:32px;padding:0 9px;font-size:8px;font-weight:900}.admin-avatar-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.admin-avatar-grid article{background:#fff;border:1px solid #dfe6e2;border-radius:15px;grid-template-columns:80px 1fr;align-items:center;gap:12px;padding:16px;display:grid}.admin-avatar-grid img{object-fit:cover;border-radius:22px;grid-row:1/4;width:78px;height:78px}.admin-avatar-grid article div{gap:4px;display:grid}.admin-avatar-grid strong{font-size:10px}.admin-avatar-grid small{color:#829088;font-size:8px}.admin-avatar-grid select{min-height:34px;padding:5px 8px}.admin-avatar-grid button{height:34px}.admin-announcement-form{background:#fff;border:1px solid #dfe6e2;border-radius:16px;grid-template-columns:1fr 180px;gap:12px;margin:18px 0;padding:20px;display:grid}.admin-announcement-form label:nth-child(2){grid-column:1/-1}.admin-announcement-list{gap:12px;display:grid}.admin-announcement-list article{background:#fff;border:1px solid #dfe6e2;border-radius:16px;padding:22px}.admin-announcement-list header{justify-content:space-between;align-items:start;gap:20px;display:flex}.admin-announcement-list header small{color:#24854b;font-size:8px;font-weight:900}.admin-announcement-list h2{margin:5px 0 12px;font-size:18px}.admin-announcement-list time{color:#89948f;font-size:8px}.admin-announcement-list footer{border-top:1px solid #edf0ee;margin-top:14px;padding-top:12px}@media (width<=960px){.profile-settings-grid{grid-template-columns:1fr}.admin-create-form{grid-template-columns:1fr 1fr}.admin-create-form button{min-height:42px}.platform-avatar-button b{display:none}}@media (width<=720px){.platform-top-actions{gap:8px}.platform-avatar-button{padding-right:5px}.platform-account-popover{width:auto;position:fixed;top:68px;left:12px;right:12px}.profile-hero-card{grid-template-columns:74px 1fr;gap:18px;padding:26px 22px}.profile-avatar-large{border-radius:23px;width:72px;height:72px}.profile-hero-card h1{font-size:26px}.profile-level-badge{grid-column:1/-1;width:100%;height:42px}.profile-xp-card{grid-template-columns:1fr;padding:20px}.experience-progress{min-width:0}.profile-panel{padding:22px}.admin-create-form,.admin-create-form.avatar,.admin-announcement-form{grid-template-columns:1fr}.admin-announcement-form label:nth-child(2){grid-column:auto}.admin-avatar-grid{grid-template-columns:1fr}.capsule-slider{display:block}}@media (prefers-reduced-motion:reduce){.platform-account-popover,.experience-progress>i>span.animate,.capsule-slider{transition:none!important}}.problem-bank-health{color:#718079;align-items:center;gap:9px;margin:18px 0 -9px;font-size:9px;display:flex}.problem-bank-health i{border-radius:50%;width:8px;height:8px}.problem-bank-health i.online{background:#35b86b;box-shadow:0 0 0 4px #e2f7e9}.problem-bank-health i.fallback{background:#d9972b;box-shadow:0 0 0 4px #fff3dc}.phase4-filters label{flex:1}.phase4-filters>button:first-of-type{color:#fff;background:#238d50}.problem-list-state{color:#79877f;text-align:center;margin:0;padding:42px;font-size:10px}.problem-pagination{justify-content:center;align-items:center;gap:13px;margin-top:15px;display:flex}.problem-pagination button{color:#257849;cursor:pointer;background:#fff;border:1px solid #d5e2da;border-radius:9px;height:34px;padding:0 13px;font-size:9px;font-weight:900}.problem-pagination button:disabled{opacity:.45;cursor:not-allowed}.problem-pagination span{color:#7a8780;font-size:9px}.problem-route-loading{color:#708078;text-align:center;align-content:center;place-items:center;gap:10px;min-height:calc(100vh - 72px);padding:42px;display:grid}.problem-route-loading strong{color:#273a31;font-size:22px}.problem-route-loading p{margin:0}.problem-route-loading a{color:#207849;background:#eaf8ef;border-radius:9px;padding:10px 14px;font-weight:900}.problem-rich-text{color:inherit;line-height:1.75}.problem-rich-text :is(p,h2,h3,h4,ul,ol,pre){margin:0 0 12px}.problem-rich-text h3{font-size:1.05em}.problem-rich-text code{background:#edf2ef;border-radius:5px;padding:2px 5px}.problem-rich-text pre{color:#dff5e7;background:#17231d;border-radius:10px;padding:15px;overflow:auto}.problem-rich-text pre code{background:0 0;padding:0}.problem-rich-text img{border-radius:12px;max-width:100%;height:auto}.admin-problems-screen{width:min(1440px,100% - 42px)}.admin-problems-screen>.page-intro{min-height:190px}.admin-problem-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;margin-top:18px;display:grid}.admin-problem-sidebar{background:#fff;border:1px solid #dfe7e2;border-radius:18px;max-height:calc(100vh - 110px);position:sticky;top:88px;overflow:auto}.admin-problem-sidebar>div{border-bottom:1px solid #edf1ef;grid-template-columns:1fr 92px;gap:8px;padding:14px;display:grid}.admin-problem-sidebar input,.admin-problem-sidebar select,.admin-problem-editor input,.admin-problem-editor select,.admin-problem-editor textarea{color:#36483f;width:100%;min-height:39px;font:inherit;background:#fff;border:1px solid #dbe4df;border-radius:9px;outline:0;padding:9px 11px}.admin-problem-sidebar input{grid-column:1/-1}.admin-problem-sidebar button{color:#217a47;cursor:pointer;background:#eaf8ef;border:0;border-radius:9px;min-height:36px;font-size:9px;font-weight:900}.admin-problem-sidebar .create-problem{color:#fff;background:#258f51;width:calc(100% - 28px);margin:14px}.admin-problem-sidebar nav{padding:0 8px 10px;display:grid}.admin-problem-sidebar nav button{text-align:left;background:0 0;border-radius:11px;grid-template-columns:54px 1fr;align-items:center;gap:3px 7px;min-height:74px;padding:11px;display:grid}.admin-problem-sidebar nav button.active{background:#eaf8ef;box-shadow:inset 0 0 0 1px #c6ead4}.admin-problem-sidebar nav span{color:#26844c;font-family:var(--font-geist-mono),monospace;grid-row:1/3;font-size:9px;font-weight:900}.admin-problem-sidebar nav strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-problem-sidebar nav small{color:#85918b;font-size:8px}.admin-problem-editor{background:#fff;border:1px solid #dfe7e2;border-radius:19px;gap:20px;padding:24px;display:grid}.admin-problem-editor>header{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-problem-editor>header small{color:#25894e;font-size:9px;font-weight:900}.admin-problem-editor>header h2{margin:5px 0 0;font-size:24px}.admin-problem-editor>header>div:last-child{gap:8px;display:flex}.admin-problem-editor button{color:#257849;cursor:pointer;background:#eff8f2;border:1px solid #d5e2da;border-radius:9px;min-height:38px;padding:0 13px;font-size:9px;font-weight:900}.admin-problem-editor button[type=submit]{color:#fff;background:#258f51;border-color:#258f51}.admin-problem-editor button:disabled{opacity:.48;cursor:not-allowed}.problem-core-fields{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.problem-core-fields label,.problem-secondary-fields label,.programming-problem-fields label,.danger-zone label{color:#506159;gap:7px;font-size:9px;font-weight:900;display:grid}.problem-core-fields label.wide{grid-column:1/-1}.markdown-editor-frame{border:1px solid #dce5e0;border-radius:15px;grid-template-columns:1fr 1fr;min-height:440px;display:grid;overflow:hidden}.markdown-editor-frame>div{flex-direction:column;min-width:0;display:flex}.markdown-editor-frame>div+div{background:#fafcfb;border-left:1px solid #dce5e0}.markdown-editor-frame header{border-bottom:1px solid #e5ebe7;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 14px;display:flex}.markdown-editor-frame header strong{font-size:10px}.markdown-editor-frame header span{color:#8b9691;font-size:8px}.markdown-editor-frame textarea{resize:vertical;min-height:390px;font-family:var(--font-geist-mono),monospace;border:0;border-radius:0;padding:17px;font-size:10px;line-height:1.7}.problem-markdown-preview{color:#43564c;padding:20px;font-size:11px;line-height:1.75;overflow:auto}.problem-markdown-preview :is(h2,h3,p,pre){margin:0 0 13px}.problem-markdown-preview pre{color:#dff5e7;background:#17231d;border-radius:10px;padding:14px;overflow:auto}.problem-markdown-preview img{border-radius:12px;max-width:100%;height:auto}.latex-inline-preview{color:#315c94;background:#eaf4ff;border-radius:6px;padding:2px 7px;font-family:Georgia,serif;font-style:italic}.latex-preview{background:#f2f8ff;border:1px solid #d9e8f7;border-radius:10px;gap:7px;margin-bottom:13px;padding:14px;display:grid}.latex-preview span{color:#527496;font-size:8px;font-weight:900}.latex-preview code{color:#274c73}.problem-secondary-fields{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.admin-problem-editor textarea{resize:vertical;line-height:1.55}.programming-problem-fields,.choice-problem-fields,.problem-private-tools,.danger-zone{background:#fafcfb;border:1px solid #e0e7e3;border-radius:15px;padding:20px}.programming-problem-fields>h3,.choice-problem-fields h3,.problem-private-tools h3,.danger-zone h3{margin:0 0 13px;font-size:15px}.programming-problem-fields>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.programming-problem-fields>label{margin-top:13px}.programming-problem-fields>header,.choice-problem-fields>header{justify-content:space-between;align-items:center;margin:18px 0 10px;display:flex}.sample-editor-row{grid-template-columns:30px 1fr 1fr auto;gap:8px;margin-top:8px;display:grid}.sample-editor-row>span{color:#25894e;padding-top:10px;font-size:9px;font-weight:900}.choice-problem-fields>div{grid-template-columns:70px 1fr 100px auto;align-items:center;gap:8px;margin-top:8px;display:grid}.choice-problem-fields>div label{color:#4d6157;align-items:center;gap:6px;font-size:9px;font-weight:900;display:flex}.choice-problem-fields input[type=radio],.choice-problem-fields input[type=checkbox]{width:16px;min-height:16px}.problem-private-tools{background:#f6faf7;grid-template-columns:1fr 1.15fr;gap:20px;display:grid}.problem-private-tools>div+div{border-left:1px solid #dfe7e2;padding-left:20px}.problem-private-tools p,.danger-zone p{color:#7b8882;font-size:9px;line-height:1.55}.problem-private-tools ul{gap:7px;padding:0;list-style:none;display:grid}.problem-private-tools li{color:#708078;background:#fff;border-radius:8px;grid-template-columns:40px 1fr auto;padding:9px 10px;font-size:8px;display:grid}.problem-private-tools li em{color:#27814b;font-style:normal;font-weight:900}.problem-asset-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:9px;margin-top:12px;display:grid}.problem-asset-grid figure{background:#fff;border:1px solid #dfe7e2;border-radius:10px;margin:0;padding:7px}.problem-asset-grid img{object-fit:contain;border-radius:7px;width:100%;height:80px}.problem-asset-grid figcaption{color:#7b8781;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:8px;overflow:hidden}.danger-zone{background:#fff9f8;border-color:#efc9c4;grid-template-columns:1fr 230px auto;align-items:end;gap:15px;display:grid}.danger-zone h3{color:#9d3026}.danger-zone button{color:#fff;background:#b23a2f;border-color:#b23a2f}@media (width<=1100px){.admin-problem-layout{grid-template-columns:230px minmax(0,1fr)}.problem-core-fields{grid-template-columns:1fr 1fr}.markdown-editor-frame{grid-template-columns:1fr}.markdown-editor-frame>div+div{border-top:1px solid #dce5e0;border-left:0}.problem-secondary-fields,.problem-private-tools{grid-template-columns:1fr}.problem-private-tools>div+div{border-top:1px solid #dfe7e2;border-left:0;padding:18px 0 0}}@media (width<=800px){.admin-problems-screen{width:calc(100% - 26px)}.admin-problem-layout{grid-template-columns:1fr}.admin-problem-sidebar{max-height:none;position:static}.admin-problem-sidebar nav{max-height:260px;overflow:auto}.admin-problem-editor{padding:18px}.admin-problem-editor>header{flex-direction:column;align-items:flex-start}.problem-core-fields{grid-template-columns:1fr}.problem-core-fields label.wide{grid-column:auto}.programming-problem-fields>div,.sample-editor-row,.choice-problem-fields>div,.danger-zone{grid-template-columns:1fr}}@media (width<=720px){.phase4-filters label{flex:100%;width:100%}.phase4-filters>button{flex:calc(25% - 8px)}.problem-pagination{justify-content:space-between}.markdown-editor-frame header{flex-direction:column;justify-content:center;align-items:flex-start}.admin-problem-editor{padding:14px}.problem-private-tools,.programming-problem-fields,.choice-problem-fields,.danger-zone{padding:15px}}.latex-rendered{color:#315c94;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400}.latex-block-preview{color:#274c73;text-align:center;font-size:17px;display:block}.latex-frac{vertical-align:middle;text-align:center;grid-template-rows:auto auto;margin:0 .18em;line-height:1.1;display:inline-grid}.latex-frac>span:first-child{border-bottom:1px solid;padding:0 .16em .08em}.latex-frac>span:last-child{padding:.08em .16em 0}.latex-root{align-items:flex-start;display:inline-flex}.latex-root>span{border-top:1px solid;padding:.02em .12em 0}.latex-preview>span:first-child{color:#527496;font-family:inherit;font-size:8px;font-style:normal;font-weight:900}.public-problem-detail{gap:14px;width:min(980px,100% - 42px);margin:0 auto;padding:34px 0 64px;display:grid}.public-problem-detail>header,.public-problem-detail>section,.public-problem-detail>footer{background:#fff;border:1px solid #dfe7e2;border-radius:17px;padding:26px 30px}.public-problem-detail>header{background:linear-gradient(135deg,#f0f9f3,#fff);justify-content:space-between;align-items:center;gap:25px;min-height:180px;display:flex}.public-problem-detail header span{color:#24864c;font-size:9px;font-weight:900}.public-problem-detail h1{margin:9px 0;font-size:32px}.public-problem-detail header p{color:#7d8983;margin:0;font-size:10px}.public-problem-detail header a,.public-problem-detail footer a{color:#217a47;background:#eaf8ef;border-radius:9px;padding:10px 13px;font-size:9px;font-weight:900}.public-problem-detail h2{margin:0 0 13px;font-size:17px}.public-choice-options{gap:9px;display:grid}.public-choice-options h2{margin-bottom:4px}.public-choice-options label{border:1px solid #e1e8e4;border-radius:11px;grid-template-columns:18px 30px 1fr;align-items:center;gap:8px;padding:12px 14px;display:grid}.public-choice-options label>span{color:#24864c;font-weight:900}.public-choice-options .problem-rich-text p{margin:0}.public-problem-sample{margin-top:9px}.public-problem-sample strong{color:#26844c;font-size:9px}.public-problem-sample pre{color:#dff5e7;background:#17231d;border-radius:9px;padding:13px;font-size:10px;line-height:1.6;overflow:auto}.public-problem-detail>footer{color:#7c8982;justify-content:space-between;align-items:center;font-size:10px;display:flex}@media (width<=720px){.public-problem-detail{width:calc(100% - 26px);padding:18px 0 36px}.public-problem-detail>header,.public-problem-detail>section,.public-problem-detail>footer{padding:21px}.public-problem-detail>header{flex-direction:column;align-items:flex-start}.public-problem-detail h1{font-size:27px}.public-problem-detail>footer{flex-direction:column;align-items:flex-start;gap:12px}}.course-structure-progress>i{background:#e2e9e5;border-radius:99px;height:8px;display:block;overflow:hidden}.course-structure-progress>i>span{border-radius:inherit;background:linear-gradient(90deg,#48d5e6,#ffd044);height:100%;transition:width .35s;display:block}.stage-card-grid em{color:#2b9b60;margin-top:8px;font-size:9px;font-style:normal;font-weight:800;display:block}.quest-map-row .completed{color:#25894e;background:#dff6e8}.learning-lesson{color:#4b5b54;line-height:1.8}.learning-lesson h2,.learning-lesson h3,.learning-lesson p,.learning-lesson pre{margin:0 0 13px}.learning-lesson pre{color:#dff5e7;background:#17231d;border-radius:10px;padding:14px;overflow:auto}.learning-problem-link{color:#25894e;border:1px solid #dce8e0;border-radius:10px;margin:10px 0;padding:12px 14px;font-weight:800;display:block}.learning-complete,.learning-login{color:#fff;text-align:center;width:100%;font:inherit;cursor:pointer;background:#258f51;border:0;border-radius:10px;margin-top:18px;padding:12px 15px;font-weight:900;display:block}.learning-complete:disabled{opacity:.55;cursor:not-allowed}.learning-login{color:#217a47;background:#eaf8ef}.learning-message{color:#25894e;margin-top:12px;font-size:10px;display:block}.ranking-real-list{gap:0;display:grid}.ranking-real-list article{border-bottom:1px solid #edf1ef;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:14px 16px;display:grid}.ranking-real-list article:last-child{border-bottom:0}.ranking-real-list article>b{color:#25894e}.ranking-real-list article>span{color:#75827b;font-size:9px}@media (prefers-reduced-motion:reduce){.course-structure-progress>i>span{transition:none}}:root{--fresh-bg:#f1f6f3;--fresh-surface:#fff;--fresh-surface-muted:#f1f5f2;--fresh-sidebar:#edf3ef;--fresh-text:#17211b;--fresh-text-2:#647169;--fresh-text-3:#919b95;--fresh-line:#dce5df;--fresh-line-strong:#c5d3cb;--fresh-primary:#1f8a5b;--fresh-primary-strong:#126b44;--fresh-primary-soft:#ddf5e9;--fresh-clay:#f06b4f;--fresh-clay-soft:#ffe7df;--fresh-motion:cubic-bezier(.2,.75,.25,1)}html,body{background:var(--fresh-bg)}body{color:var(--fresh-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font-family:inherit}.platform-shell{background:var(--fresh-bg)}.platform-topbar{border-bottom-color:var(--fresh-line);background:#fafcfbf0;box-shadow:0 1px #14342105}.platform-nav{border-right-color:var(--fresh-line);background:var(--fresh-sidebar)}.platform-status{color:var(--fresh-text-2)}.platform-status i{background:var(--fresh-primary);box-shadow:0 0 0 4px var(--fresh-primary-soft)}.platform-login-link{background:var(--fresh-primary-soft);color:var(--fresh-primary-strong);border-color:#b9ddc7}.platform-nav-indicator{background:var(--fresh-surface);border-color:#b8ddc6;box-shadow:0 5px 14px #1f563612}.platform-nav>a[data-platform-nav]{color:#616d65}.platform-nav>a[data-platform-nav]:hover{color:var(--fresh-text);background:#ffffff8c}.platform-nav>a[data-platform-nav].active,.platform-nav>a[data-platform-nav].active>span{color:var(--fresh-primary-strong)}.platform-nav-note{border-color:var(--fresh-line);background:#ffffff80}.platform-nav-note strong{color:var(--fresh-text)}.platform-nav-note span,.course-nav-back{color:var(--fresh-text-2)}.platform-page{color:var(--fresh-text)}.platform-page p{color:var(--fresh-text-2)}.eyebrow,.page-intro span,.section-heading span,.stage-map-heading span{color:var(--fresh-primary)}.platform-hero{background:var(--fresh-primary);box-shadow:none;border-color:#0000}.platform-hero:before{color:#ffffff12}.platform-hero h1{color:#fff}.platform-hero p,.home-intro-grid .platform-hero p{color:#fffc}.platform-hero .eyebrow{color:#bcebd3}.hero-actions a{color:var(--fresh-primary-strong);box-shadow:none;background:#fff;border-color:#fff}.hero-actions a.secondary{color:#fff;background:#ffffff1a;border-color:#ffffff52}.announcement-card,.course-card,.ranking-list,.page-intro,.stage-card-grid>a,.stage-map-heading,.unit-title-card,.unit-two-column>article,.practice-choice-grid>a,.filter-frame,.platform-problem-list,.profile-guest-card,.contest-card-list article,.contest-detail-heading,.contest-question-frame,.admin-link-grid>a,.login-card,.profile-hero-card,.profile-xp-card,.profile-panel,.admin-create-form,.admin-data-table,.admin-avatar-grid article,.admin-announcement-form,.admin-announcement-list article,.admin-problem-sidebar,.admin-problem-editor,.markdown-editor-frame,.public-problem-detail>header,.public-problem-detail>section,.public-problem-detail>footer{border-color:var(--fresh-line);background:var(--fresh-surface);box-shadow:none}.page-intro,.unit-title-card,.profile-hero-card,.public-problem-detail>header{background:var(--fresh-surface)}.announcement-card>span,.course-card header span,.stage-card-grid>a>span,.practice-choice-grid>a>span,.ranking-list article>span,.filter-frame button.active,.platform-problem-list article a,.learning-login,.profile-guest-card a{background:var(--fresh-primary-soft);color:var(--fresh-primary-strong)}.course-card.ai header span,.practice-choice-grid>a:nth-child(2)>span{color:var(--fresh-primary-strong);background:#e5ebe3}.course-card.ai footer span,.course-card footer span,.practice-choice-grid b,.ranking-list em,.ranking-real-list article>b{color:var(--fresh-primary)}.course-card:hover,.practice-choice-grid>a:hover,.stage-card-grid>a:hover{border-color:#afd3bc;box-shadow:0 12px 28px #204a3012}.capsule-tabs{border-color:var(--fresh-line);background:var(--fresh-surface-muted)}.capsule-tabs .active{color:var(--fresh-primary-strong)}.capsule-slider{box-shadow:0 2px 7px #1e412d1a}.ranking-list article,.ranking-real-list article{border-color:#e9efeb}.platform-page :is(input,textarea,select),.login-card input,.admin-problem-sidebar input,.admin-problem-sidebar select,.admin-problem-editor input,.admin-problem-editor select,.admin-problem-editor textarea{border-color:var(--fresh-line);color:var(--fresh-text);background:#fff}.platform-page :is(input,textarea,select):focus,.login-card input:focus{border-color:#8ec3a2;box-shadow:0 0 0 3px #1f8a5b1a}.learning-complete,.profile-panel button,.admin-feature-page form button,.admin-problem-sidebar .create-problem,.admin-problem-editor button[type=submit]{background:var(--fresh-primary)}.course-structure-progress>i,.experience-progress>i{background:#dfe7e2}.course-structure-progress>i>span,.experience-progress>i>span{background:var(--fresh-primary)}.platform-avatar-button{border-color:var(--fresh-line);box-shadow:none;background:#fff}.platform-avatar-button img,.platform-avatar-button>span{background:var(--fresh-primary-soft);color:var(--fresh-primary-strong)}.platform-account-popover{border-color:var(--fresh-line);box-shadow:0 20px 55px #1a392726}.platform-account-popover>a:hover,.platform-account-popover>button:hover{background:var(--fresh-primary-soft);color:var(--fresh-primary-strong)}.platform-command-button{color:#616d65}.platform-command-button:hover{color:var(--fresh-text);background:#ffffff94}.platform-command-button>span{color:var(--fresh-primary)}.platform-command-button kbd{border-color:var(--fresh-line);color:var(--fresh-text-3);background:#ffffffb8}.platform-command-overlay{background:#11201747}.platform-command-palette{border-color:#ffffffdb;box-shadow:0 28px 75px #14311f3d}.platform-command-search{border-color:var(--fresh-line)}.platform-command-search input{color:var(--fresh-text)}.platform-command-list button{color:var(--fresh-text-2)}.platform-command-list button:hover,.platform-command-list button:focus-visible{background:var(--fresh-primary-soft);color:var(--fresh-primary-strong)}.platform-command-list button>span{color:var(--fresh-primary)}.problem-rich-text pre,.learning-lesson pre,.content-skeleton pre,.public-problem-sample pre,.problem-markdown-preview pre{color:#e4f5ea;background:#1c2c23}.platform-page :is(a,button,input,select,textarea),.platform-avatar-button,.platform-command-button{transition:border-color .18s var(--fresh-motion),background-color .18s var(--fresh-motion),color .18s var(--fresh-motion),box-shadow .18s var(--fresh-motion),transform .14s var(--fresh-motion)}.platform-page :is(button,a):active,.platform-avatar-button:active,.platform-command-button:active{transform:scale(.985)}.platform-page :is(button,a):focus-visible,.platform-avatar-button:focus-visible,.platform-command-button:focus-visible{outline-offset:2px;outline:3px solid #1f8a5b2e}@media (prefers-reduced-motion:reduce){.platform-page :is(a,button,input,select,textarea),.platform-avatar-button,.platform-command-button{transition:none!important}}
