:root{--platform-bg:#050911;--platform-panel:#0a111c;--platform-panel-2:#0d1724;--platform-line:#97b2d324;--platform-text:#f5f9ff;--platform-muted:#95a6bd;--platform-blue:#2b8cff;--platform-cyan:#39d8ff;--platform-violet:#9a74ff;--platform-green:#2fe0a0;--platform-yellow:#ffc85b}body.platform-active{background:var(--platform-bg);min-width:320px;color:var(--platform-text);margin:0;overflow-x:hidden}body.platform-active:before,body.platform-active:after{display:none}body.platform-active #root{min-height:100vh}.platform-shell,.platform-shell *{box-sizing:border-box}.platform-shell{min-height:100vh;color:var(--platform-text);background:radial-gradient(circle at 76% 8%, #2b8cff1f, transparent 27rem), radial-gradient(circle at 35% 45%, #39d8ff0b, transparent 34rem), var(--platform-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.platform-shell button,.platform-shell a,.platform-shell input{font:inherit}.platform-shell button,.platform-shell a{-webkit-tap-highlight-color:transparent}.platform-header{z-index:50;border-bottom:1px solid var(--platform-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050911eb;align-items:center;gap:22px;height:72px;padding:0 22px;display:flex;position:sticky;top:0}.platform-brand{min-width:112px;color:var(--platform-text);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.platform-brand img{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 0 7px #ffffffe0)drop-shadow(0 0 18px #00a2ff59);border-radius:0;width:92px;height:62px}.platform-brand span{line-height:1;display:none}.platform-brand strong{letter-spacing:.01em;font-size:17px}.platform-brand small{color:var(--platform-cyan);letter-spacing:.28em;text-transform:uppercase;margin-top:5px;font-size:9px;font-weight:800}.platform-track-nav{border:1px solid var(--platform-line);background:#ffffff06;border-radius:13px;align-items:center;gap:5px;padding:5px;display:flex}.platform-track-nav button{min-height:38px;color:var(--platform-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:700;transition:all .16s;display:inline-flex}.platform-track-nav button svg{width:16px;height:16px}.platform-track-nav button:hover,.platform-track-nav button.is-active{color:var(--platform-text);background:#2b8cff21}.platform-track-nav button.is-active{box-shadow:inset 0 0 0 1px #39d8ff29}.platform-header-actions{align-items:center;gap:9px;margin-left:auto;display:flex}.xp-pill,.profile-chip,.round-action{border:1px solid var(--platform-line);min-height:40px;color:var(--platform-text);background:#ffffff08;border-radius:11px}.xp-pill{color:var(--platform-yellow);align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.xp-pill svg{width:16px;height:16px}.round-action{width:40px;color:var(--platform-cyan);cursor:pointer;padding:0}.round-action span{filter:drop-shadow(0 0 6px)}.profile-chip{cursor:pointer;align-items:center;gap:9px;padding:4px 11px 4px 5px;font-size:12px;text-decoration:none;display:inline-flex}.profile-chip .profile-logo{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 0 7px #ffffffe0)drop-shadow(0 0 18px #00a2ff59);flex:none;width:40px;height:36px}.platform-menu-toggle{border:1px solid var(--platform-line);cursor:pointer;background:#ffffff08;border-radius:10px;width:40px;height:40px;padding:10px;display:none}.platform-menu-toggle span{background:var(--platform-text);border-radius:4px;height:2px;margin:4px 0;display:block}.platform-body{grid-template-columns:232px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.platform-sidebar{z-index:30;border-right:1px solid var(--platform-line);background:#050911b8;flex-direction:column;height:calc(100vh - 72px);padding:25px 16px 18px;display:flex;position:sticky;top:72px;overflow-y:auto}.sidebar-label{color:#4fa4ff;letter-spacing:.18em;text-transform:uppercase;margin:0 10px 13px;font-size:10px;font-weight:900}.platform-sidebar nav{gap:5px;display:grid}.platform-sidebar nav>button{width:100%;min-height:44px;color:var(--platform-muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:11px;padding:8px 11px;font-size:13px;font-weight:700;transition:all .16s;display:flex}.platform-sidebar nav>button:hover{color:var(--platform-text);background:#ffffff09}.platform-sidebar nav>button.is-active{color:#eaf6ff;box-shadow:inset 3px 0 0 var(--platform-blue);background:linear-gradient(90deg,#2b8cff2b,#39d8ff0e);border-color:#2b8cff2e}.platform-icon,.platform-icon svg{flex:none;width:19px;height:19px}.sidebar-bottom{gap:9px;margin-top:auto;display:grid}.streak-card{border:1px solid var(--platform-line);background:#ffffff06;border-radius:12px;align-items:center;gap:11px;padding:13px;display:flex}.streak-flame{color:#06111a;background:linear-gradient(135deg, var(--platform-yellow), #ff7d57);border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.streak-card>span:last-child{display:grid}.streak-card strong{font-size:13px}.streak-card small{color:var(--platform-muted);margin-top:2px;font-size:10px}.back-to-site{border:1px solid var(--platform-line);min-height:40px;color:var(--platform-muted);border-radius:10px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.back-to-site svg{width:16px;height:16px}.platform-main{width:min(1180px,100% - 48px);margin:0 auto;padding:38px 0 80px}.eyebrow{color:var(--platform-cyan);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:900;display:inline-block}.platform-main h1,.platform-main h2,.platform-main h3,.platform-main p{margin-top:0}.platform-main h1,.platform-main h2,.platform-main h3{color:var(--platform-text)}.platform-welcome{background:linear-gradient(110deg,#0a1524f5,#060d17e6),radial-gradient(circle at 88%,#39d8ff33,#0000 16rem);border:1px solid #2b8cff3b;border-radius:22px;justify-content:space-between;align-items:center;gap:30px;min-height:230px;padding:38px 42px;display:flex;position:relative;overflow:hidden;box-shadow:0 26px 70px #0000003d}.platform-welcome:after{content:"";border:1px solid #39d8ff24;border-radius:50%;width:330px;height:330px;position:absolute;right:-70px;box-shadow:0 0 0 50px #2b8cff09,0 0 0 100px #2b8cff05}.platform-welcome>*{z-index:1;position:relative}.platform-welcome h1{letter-spacing:-.04em;max-width:670px;margin:11px 0 13px;font-size:clamp(30px,4vw,51px);line-height:1.04}.platform-welcome p{color:#aebdd0;max-width:650px;margin-bottom:0;font-size:15px;line-height:1.7}.welcome-progress{align-items:center;gap:18px;min-width:max-content;display:flex}.welcome-progress>span{display:grid}.welcome-progress strong{font-size:21px}.welcome-progress small{color:var(--platform-muted);margin-top:4px;font-size:11px}.progress-ring{background:conic-gradient(var(--platform-cyan) var(--progress), #ffffff13 0);border-radius:50%;place-items:center;width:100px;height:100px;display:grid;position:relative;box-shadow:0 0 30px #39d8ff21}.progress-ring:before{content:"";border-radius:inherit;background:#09121f;position:absolute;inset:9px}.progress-ring span,.progress-ring small{z-index:1;position:relative}.progress-ring span{align-self:end;font-size:22px;font-weight:900}.progress-ring small{color:var(--platform-cyan);letter-spacing:.16em;text-transform:uppercase;align-self:start;margin-top:2px;font-size:8px;font-weight:900}.metric-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 54px;display:grid}.metric-grid article{border:1px solid var(--platform-line);background:#09111ccc;border-radius:16px;min-height:123px;padding:20px 22px;display:grid}.metric-grid span,.metric-grid small{color:var(--platform-muted);font-size:11px}.metric-grid strong{color:var(--platform-text);margin:5px 0;font-size:29px}.section-title-row{justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px;display:flex}.section-title-row h2{letter-spacing:-.03em;margin:7px 0 0;font-size:28px}.path-legend{color:var(--platform-muted);align-items:center;gap:8px;font-size:10px;display:inline-flex}.path-legend i{background:#536075;border-radius:50%;width:8px;height:8px}.path-legend i.done{background:var(--platform-green)}.path-legend i.active{background:var(--platform-violet)}.learning-map{grid-template-columns:1fr 1fr;gap:38px 70px;padding:16px 0 38px;display:grid;position:relative}.map-line{background:linear-gradient(var(--platform-blue), #9a74ff73, #ffc85b59);opacity:.55;width:2px;position:absolute;top:0;bottom:65px;left:50%}.path-card{border:1px solid var(--platform-line);border-top:2px solid var(--card-accent,var(--platform-blue));background:linear-gradient(145deg,#0e1927fa,#070d16fa);border-radius:17px;min-height:262px;padding:24px;position:relative;box-shadow:0 20px 50px #0003}.path-card:nth-of-type(2n){grid-column:2}.path-card:nth-of-type(odd){grid-column:1}.accent-cyan{--card-accent:var(--platform-cyan)}.accent-blue{--card-accent:var(--platform-blue)}.accent-violet{--card-accent:var(--platform-violet)}.map-step{z-index:2;color:#c7d3e3;background:#0e1723;border:1px solid #ffffff1f;border-radius:9px;place-items:center;width:30px;height:42px;font-size:10px;font-weight:800;display:grid;position:absolute;top:50%;right:-50px;transform:translateY(-50%)}.path-card:nth-of-type(2n) .map-step{left:-50px;right:auto}.path-card-top{align-items:center;gap:9px;display:flex}.path-symbol{border:1px solid color-mix(in srgb, var(--card-accent) 30%, transparent);width:38px;height:38px;color:var(--card-accent);background:color-mix(in srgb, var(--card-accent) 9%, transparent);border-radius:11px;place-items:center;display:grid}.level-badge,.difficulty{min-height:22px;color:var(--platform-green);background:#2fe0a017;border-radius:6px;align-items:center;padding:0 8px;font-size:9px;font-weight:900;display:inline-flex}.path-progress-text{color:var(--card-accent);margin-left:auto;font-size:12px;font-weight:900}.path-category{color:var(--card-accent);letter-spacing:.14em;text-transform:uppercase;margin-top:21px;font-size:9px;font-weight:900;display:block}.path-card h3{margin:6px 0 8px;font-size:23px}.path-card p{min-height:42px;color:var(--platform-muted);margin-bottom:16px;font-size:12px;line-height:1.65}.path-meta{color:#8091a7;flex-wrap:wrap;gap:12px;font-size:10px;font-weight:700;display:flex}.path-card>button{border:1px solid color-mix(in srgb, var(--card-accent) 28%, transparent);width:100%;min-height:40px;color:var(--platform-text);background:color-mix(in srgb, var(--card-accent) 9%, transparent);cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;margin-top:20px;padding:0 14px;font-size:11px;font-weight:800;display:flex}.path-card>button:hover{background:color-mix(in srgb, var(--card-accent) 16%, transparent)}.certificate-node{z-index:2;width:86px;height:86px;color:var(--platform-yellow);background:#0b111b;border:1px solid #ffc85b61;border-radius:50%;grid-column:1/-1;place-items:center;gap:6px;margin:0 auto;display:grid;box-shadow:0 0 30px #ffc85b1f}.certificate-node svg{width:25px;height:25px}.certificate-node strong{letter-spacing:.12em;text-transform:uppercase;font-size:9px}.text-back,.outline-back{color:var(--platform-muted);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:700}.text-back{margin-bottom:20px;padding:0}.path-hero{border:1px solid color-mix(in srgb, var(--card-accent) 22%, transparent);background:radial-gradient(circle at 90% 45%, color-mix(in srgb, var(--card-accent) 13%, transparent), transparent 15rem), linear-gradient(145deg, #0d1723, #080f19);border-radius:20px;justify-content:space-between;align-items:center;gap:28px;padding:35px 38px;display:flex}.path-hero>div:first-child{max-width:780px}.path-hero .eyebrow{color:var(--card-accent);margin-top:18px;display:block}.path-hero h1{letter-spacing:-.045em;margin:8px 0 9px;font-size:clamp(35px,5vw,57px)}.path-hero p{color:#a4b3c7;max-width:670px;font-size:14px;line-height:1.65}.path-meta.large{gap:20px;margin-top:20px;font-size:11px}.tag-row{gap:7px;margin-top:18px;display:flex}.tag-row span{border:1px solid var(--platform-line);color:var(--platform-muted);background:#ffffff06;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:700}.module-list{gap:22px;margin-top:28px;display:grid}.module-card{border:1px solid var(--platform-line);background:#080f19e0;border-radius:16px;overflow:hidden}.module-card>header{border-bottom:1px solid var(--platform-line);align-items:center;gap:14px;padding:18px 20px;display:flex}.module-card>header>span{color:#03111d;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border-radius:9px;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.module-card>header>div{flex:1}.module-card>header h2{margin:0 0 3px;font-size:16px}.module-card>header p,.module-card>header small{color:var(--platform-muted);margin:0;font-size:10px}.module-lessons{display:grid}.module-lessons>button{min-height:72px;color:var(--platform-text);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #97b2d317;grid-template-columns:34px minmax(230px,1fr) auto auto auto auto 18px;align-items:center;gap:12px;padding:11px 18px;display:grid}.module-lessons>button:last-child{border-bottom:0}.module-lessons>button:hover{background:#2b8cff0b}.lesson-number,.lesson-index{border:1px solid var(--platform-line);width:30px;height:30px;color:var(--platform-muted);background:#ffffff06;border-radius:8px;place-items:center;font-size:10px;font-weight:900;display:grid}.lesson-number.is-complete,.lesson-outline button.is-complete .lesson-index{color:#04150f;background:var(--platform-green);border-color:#0000}.lesson-copy{gap:4px;display:grid}.lesson-copy strong{font-size:12px}.lesson-copy small,.lesson-format,.lesson-stat{color:var(--platform-muted);font-size:9px}.difficulty-orta{color:var(--platform-yellow);background:#ffc85b1a}.difficulty-qiyin{color:#ff7b91;background:#ff506f1a}.lesson-stat.xp{color:var(--platform-yellow)}.lesson-arrow{color:var(--platform-muted);font-size:20px}.lesson-outline{padding-right:12px}.outline-back{text-align:left;margin:0 8px 20px;padding:0}.lesson-outline nav{gap:3px}.lesson-outline nav>button{align-items:flex-start;min-height:58px;padding:9px}.lesson-outline nav>button>span:last-child{gap:5px;min-width:0;display:grid}.lesson-outline nav strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.lesson-outline nav small{color:#66778d;font-size:8px}.lesson-outline-stats{grid-template-columns:1fr 1fr;gap:6px;margin-top:auto;display:grid}.lesson-outline-stats span{border:1px solid var(--platform-line);background:#ffffff06;border-radius:9px;gap:4px;padding:10px;display:grid}.lesson-outline-stats small{color:var(--platform-muted);text-transform:uppercase;font-size:8px}.lesson-outline-stats strong{font-size:10px}.lesson-view{width:min(940px,100% - 48px)}.lesson-kicker{gap:8px;display:flex}.lesson-kicker span{border:1px solid var(--platform-line);color:var(--platform-muted);background:#ffffff06;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:800}.lesson-view>h1{letter-spacing:-.04em;margin:18px 0 12px;font-size:clamp(32px,4vw,50px);line-height:1.08}.lesson-lead{color:#afbed0;margin-bottom:38px;font-size:16px;line-height:1.7}.lesson-section{border-bottom:1px solid var(--platform-line);padding:8px 0 27px}.lesson-section+.lesson-section{padding-top:29px}.lesson-section h2{align-items:center;gap:12px;margin-bottom:16px;font-size:23px;display:flex}.lesson-section h2 span{color:var(--platform-cyan)}.lesson-section p,.lesson-section li{color:#b4c1d2;font-size:14px;line-height:1.82}.lesson-section ul{gap:7px;padding-left:22px;display:grid}.lesson-section li::marker{color:var(--platform-blue)}.lesson-table{border:1px solid var(--platform-line);background:#ffffff05;border-radius:13px;overflow:hidden}.lesson-table>div{border-bottom:1px solid var(--platform-line);grid-template-columns:.7fr 1.5fr 1fr;display:grid}.lesson-table>div:last-child{border-bottom:0}.lesson-table span,.lesson-table strong{color:#b7c4d4;padding:13px 15px;font-size:11px}.lesson-table strong{color:#dce8f5;letter-spacing:.1em;text-transform:uppercase;background:#2b8cff11;font-size:9px}.lesson-note{border:1px solid #39d8ff29;border-left:3px solid var(--platform-cyan);background:linear-gradient(90deg,#39d8ff13,#2b8cff06);border-radius:12px;margin:28px 0;padding:20px 22px}.lesson-note strong{color:var(--platform-cyan);font-size:13px}.lesson-note p{color:#b8c6d6;margin:7px 0 0;font-size:12px;line-height:1.7}.practice-list{gap:10px;padding:0;list-style:none;display:grid}.practice-list li{border:1px solid var(--platform-line);background:#ffffff05;border-radius:11px;gap:14px;padding:14px;display:flex}.practice-list li>span{color:#03111b;background:var(--platform-cyan);border-radius:8px;flex:0 0 30px;place-items:center;height:30px;font-size:10px;font-weight:900;display:grid}.practice-list strong{color:var(--platform-text);font-size:12px}.practice-list p{color:var(--platform-muted);margin:2px 0 0;font-size:11px;line-height:1.5}.lesson-actions{justify-content:flex-end;gap:10px;padding-top:28px;display:flex}.primary-action,.secondary-action{cursor:pointer;border-radius:11px;min-height:46px;padding:0 18px;font-weight:900}.primary-action{color:#02101a;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border:0;box-shadow:0 12px 28px #2b8cff33}.primary-action.is-complete{background:var(--platform-green)}.secondary-action{border:1px solid var(--platform-line);color:var(--platform-text);background:#ffffff09}.floating-lab{z-index:35;color:#02101a;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));cursor:pointer;border:0;border-radius:23px;min-height:46px;padding:0 18px;font-weight:900;position:fixed;bottom:22px;right:22px;box-shadow:0 12px 35px #2b8cff52}.simple-view>h1{margin:8px 0 10px;font-size:42px}.simple-view>p{color:var(--platform-muted)}.challenge-grid,.certificate-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;display:grid}.challenge-grid article,.certificate-grid article{border:1px solid var(--platform-line);background:linear-gradient(145deg,#0e1825f5,#070d15f5);border-radius:16px;padding:23px}.challenge-grid article>span{color:var(--platform-cyan);font-weight:900}.challenge-grid small,.certificate-grid span{color:var(--platform-muted);letter-spacing:.12em;text-transform:uppercase;margin-top:20px;font-size:9px;font-weight:800;display:block}.challenge-grid h2,.certificate-grid h2{min-height:52px;margin:7px 0 18px;font-size:18px}.challenge-grid article>div{color:var(--platform-muted);justify-content:space-between;font-size:10px;display:flex}.challenge-grid article>div strong{color:var(--platform-yellow)}.challenge-grid button{border:1px solid var(--platform-line);width:100%;min-height:40px;color:var(--platform-muted);background:#ffffff08;border-radius:9px;margin-top:20px}.leaderboard-card{border:1px solid var(--platform-line);background:#080f18e6;border-radius:16px;margin-top:30px;overflow:hidden}.leaderboard-card>div{border-bottom:1px solid var(--platform-line);grid-template-columns:38px 40px 1fr 150px 90px;align-items:center;gap:12px;min-height:70px;padding:10px 20px;display:grid}.leaderboard-card>div:last-child{border-bottom:0}.leaderboard-card>div.is-current{background:#2b8cff17}.rank{color:var(--platform-muted);font-weight:900}.avatar{color:#06111b;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border-radius:10px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:900;display:grid}.leaderboard-card small{color:var(--platform-muted);font-size:10px}.leaderboard-card b{color:var(--platform-yellow);text-align:right;font-size:11px}.certificate-grid svg{color:#506079;width:37px;height:37px}.certificate-grid p{color:var(--platform-muted);font-size:11px}.certificate-grid strong{color:#718096;font-size:10px}.certificate-grid article.is-unlocked{border-color:#ffc85b4d}.certificate-grid article.is-unlocked svg,.certificate-grid article.is-unlocked strong{color:var(--platform-yellow)}.lab-overlay{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#00040ab8;justify-content:flex-end;display:flex;position:fixed;inset:0}.lab-drawer{background:#08111d;border-left:1px solid #39d8ff33;width:min(430px,92vw);height:100%;padding:40px 28px;position:relative;box-shadow:-25px 0 70px #00000061}.lab-drawer h2{margin:10px 0;font-size:28px}.lab-drawer>p{color:var(--platform-muted);margin-bottom:28px;font-size:13px;line-height:1.7}.lab-drawer label{border-bottom:1px solid var(--platform-line);color:#c7d4e4;align-items:center;gap:11px;min-height:54px;padding:10px 12px;font-size:12px;display:flex}.lab-drawer input{width:18px;height:18px;accent-color:var(--platform-blue)}.lab-drawer .primary-action{width:100%;margin-top:28px}.lab-close{border:1px solid var(--platform-line);width:36px;height:36px;color:var(--platform-text);cursor:pointer;background:#ffffff09;border-radius:10px;font-size:22px;position:absolute;top:18px;right:18px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.catalog-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:28px 0 18px;display:flex}.catalog-toolbar label{flex:1}.catalog-toolbar input,.studio-view input,.studio-view select,.studio-view textarea{border:1px solid var(--platform-line);width:100%;color:var(--platform-text);background:#ffffff09;border-radius:10px;outline:none}.catalog-toolbar input{min-height:44px;padding:0 14px}.catalog-toolbar input:focus,.studio-view input:focus,.studio-view select:focus,.studio-view textarea:focus{border-color:#39d8ff8c;box-shadow:0 0 0 3px #39d8ff14}.catalog-toolbar>div{gap:6px;display:flex;overflow-x:auto}.catalog-toolbar>div button{border:1px solid var(--platform-line);min-height:38px;color:var(--platform-muted);cursor:pointer;white-space:nowrap;background:#ffffff06;border-radius:9px;padding:0 11px;font-size:10px;font-weight:800}.catalog-toolbar>div button.is-active{color:#03111b;background:var(--platform-cyan);border-color:#0000}.challenge-grid article>p{min-height:60px;color:var(--platform-muted);font-size:11px;line-height:1.6}.challenge-grid article.is-solved{border-color:#2fe0a052}.challenge-grid article.is-solved>span{color:var(--platform-green)}.challenge-drawer .safe-task{background:#39d8ff0e;border:1px solid #39d8ff2e;border-radius:11px;margin:22px 0;padding:17px}.challenge-drawer .safe-task strong{color:var(--platform-cyan);font-size:12px}.challenge-drawer .safe-task p{color:#b6c5d6;margin:5px 0 0;font-size:11px;line-height:1.6}.contest-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;display:grid}.contest-grid>article{border:1px solid var(--platform-line);background:linear-gradient(145deg,#0e1825f5,#070d15f5);border-radius:16px;overflow:hidden}.contest-grid article>header{border-bottom:1px solid var(--platform-line);color:var(--platform-cyan);justify-content:space-between;padding:14px 18px;font-size:10px;font-weight:900;display:flex}.contest-grid header small{color:var(--platform-green)}.contest-category{color:var(--platform-muted);letter-spacing:.12em;text-transform:uppercase;margin:20px 20px 5px;font-size:9px;font-weight:900;display:block}.contest-grid h2{min-height:52px;margin:0 20px 10px;font-size:20px}.contest-meta{color:var(--platform-muted);justify-content:space-between;gap:8px;margin:0 20px 18px;font-size:9px;display:flex}.contest-grid ol{border-top:1px solid var(--platform-line);border-bottom:1px solid var(--platform-line);gap:8px;margin:0;padding:16px 20px;list-style:none;display:grid}.contest-grid li{color:#b7c5d5;align-items:center;gap:8px;font-size:10px;display:flex}.contest-grid li span{color:#06111b;background:var(--platform-blue);border-radius:7px;place-items:center;width:22px;height:22px;font-weight:900;display:grid}.contest-grid article>button{width:calc(100% - 36px);min-height:42px;color:var(--platform-text);cursor:pointer;background:#2b8cff17;border:1px solid #2b8cff4d;border-radius:9px;margin:16px 18px;font-size:11px;font-weight:900}.contest-grid article>button.is-registered{color:#04150f;background:var(--platform-green);border-color:#0000}.writeup-search{max-width:520px}.writeup-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px;display:grid}.writeup-grid article{border:1px solid var(--platform-line);background:linear-gradient(145deg,#0e1825f5,#070d15f5);border-radius:15px;padding:23px}.writeup-grid article>span{color:var(--platform-cyan);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.writeup-grid h2{margin:8px 0 10px;font-size:20px}.writeup-grid p{min-height:56px;color:var(--platform-muted);font-size:11px;line-height:1.65}.writeup-grid article>div{color:var(--platform-muted);justify-content:space-between;font-size:9px;display:flex}.writeup-grid button{min-height:38px;color:var(--platform-cyan);cursor:pointer;background:#39d8ff0b;border:1px solid #39d8ff33;border-radius:8px;margin-top:18px;padding:0 13px;font-size:10px;font-weight:900}.writeup-article{width:min(850px,100% - 48px)}.writeup-article>h1{letter-spacing:-.045em;margin:10px 0 12px;font-size:clamp(34px,5vw,55px)}.article-byline{color:var(--platform-muted);gap:15px;font-size:10px;display:flex}.writeup-article>section{border-top:1px solid var(--platform-line);padding:26px 0}.writeup-article section h2{font-size:23px}.writeup-article section p{color:#b3c1d2;font-size:14px;line-height:1.85}.article-checklist{gap:9px;margin-top:18px;display:grid}.article-checklist span{color:#bfe9da;background:#2fe0a00b;border:1px solid #2fe0a02e;border-radius:9px;padding:12px 14px;font-size:11px}.legion-hero{background:radial-gradient(circle at 84%,#39d8ff1f,#0000 16rem),#0b1521;border:1px solid #2b8cff40;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:28px;display:flex}.legion-hero>div{align-items:center;gap:18px;display:flex}.legion-mark{color:#03111b;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border:1px solid #39d8ff59;border-radius:20px;place-items:center;width:76px;height:76px;font-size:22px;font-weight:950;display:grid}.legion-hero small{color:var(--platform-cyan);text-transform:uppercase;font-size:9px;font-weight:900}.legion-hero h2{margin:4px 0;font-size:25px}.legion-hero p{color:var(--platform-muted);margin:0;font-size:11px}.legion-hero>button{min-height:44px;color:var(--platform-text);cursor:pointer;background:#2b8cff1a;border:1px solid #2b8cff47;border-radius:10px;padding:0 16px;font-size:10px;font-weight:900}.legion-hero>button.is-joined{color:#04150f;background:var(--platform-green);border-color:#0000}.legion-stats,.profile-stats{grid-template-columns:repeat(3,1fr);gap:13px;margin:16px 0;display:grid}.legion-stats article,.profile-stats article{border:1px solid var(--platform-line);background:#ffffff06;border-radius:13px;gap:6px;padding:18px;display:grid}.legion-stats span,.profile-stats span{color:var(--platform-muted);text-transform:uppercase;font-size:9px}.legion-stats strong,.profile-stats strong{font-size:22px}.member-card,.season-quests{border:1px solid var(--platform-line);background:#080f18e6;border-radius:15px;overflow:hidden}.member-card header,.season-quests h2{border-bottom:1px solid var(--platform-line);justify-content:space-between;align-items:center;margin:0;padding:17px 20px;display:flex}.member-card header h2,.season-quests h2{font-size:15px}.member-card header span{color:var(--platform-muted);font-size:9px}.member-card>div{border-bottom:1px solid var(--platform-line);grid-template-columns:38px 1fr 100px 80px;align-items:center;gap:10px;min-height:62px;padding:9px 18px;display:grid}.member-card>div:last-child{border-bottom:0}.member-card small{color:var(--platform-muted);font-size:9px}.member-card b{color:var(--platform-yellow);text-align:right;font-size:10px}.season-progress{background:radial-gradient(circle at 80%,#9a74ff21,#0000 18rem),#0a1320;border:1px solid #9a74ff40;border-radius:17px;margin:28px 0 22px;padding:24px}.season-progress>div:first-child{justify-content:space-between;align-items:end;display:flex}.season-progress span,.season-progress small{color:var(--platform-muted);font-size:10px}.season-progress strong{color:var(--platform-violet);font-size:25px}.season-bar{background:#ffffff12;border-radius:8px;height:8px;margin:18px 0 11px;overflow:hidden}.season-bar i{border-radius:inherit;background:linear-gradient(90deg, var(--platform-blue), var(--platform-violet));height:100%;display:block}.rank-road{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:20px;display:grid}.rank-road article{border:1px solid var(--platform-line);color:#607087;text-align:center;background:#ffffff05;border-radius:13px;justify-items:center;gap:8px;padding:18px 8px;display:grid}.rank-road article>span{border:1px solid;border-radius:50%;place-items:center;width:33px;height:33px;font-size:10px;font-weight:900;display:grid}.rank-road h2{margin:0;font-size:12px}.rank-road p{color:currentColor;margin:3px 0 0;font-size:9px}.rank-road article.is-unlocked{color:var(--platform-cyan);background:#39d8ff0b;border-color:#39d8ff40}.season-quests>div{border-bottom:1px solid var(--platform-line);color:#b6c3d3;justify-content:space-between;padding:14px 20px;font-size:11px;display:flex}.season-quests>div:last-child{border-bottom:0}.season-quests strong{color:var(--platform-yellow)}.studio-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;margin-top:28px;display:grid}.studio-layout>form,.studio-layout>section{border:1px solid var(--platform-line);background:#080f18e6;border-radius:15px;padding:23px}.studio-layout form{gap:15px;display:grid}.studio-layout label{color:#c4d1e0;gap:7px;font-size:10px;font-weight:800;display:grid}.studio-view input,.studio-view select,.studio-view textarea{min-height:42px;padding:10px 12px}.studio-view select option{color:#111827}.studio-view textarea{resize:vertical}.studio-layout>section h2{margin-bottom:15px;font-size:18px}.studio-layout>section article{border-top:1px solid var(--platform-line);padding:16px 0}.studio-layout>section article>span,.studio-layout>section article small{color:var(--platform-cyan);text-transform:uppercase;font-size:8px;font-weight:900}.studio-layout article h3{margin:6px 0;font-size:15px}.studio-layout article p{color:var(--platform-muted);margin-bottom:9px;font-size:10px;line-height:1.55}.empty-state{border:1px dashed var(--platform-line);color:var(--platform-muted);text-align:center;border-radius:11px;padding:30px 16px;font-size:11px}.community-layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px;margin-top:28px;display:grid}.community-feed{gap:12px;display:grid}.community-feed article,.community-layout>aside{border:1px solid var(--platform-line);background:#080f18e6;border-radius:14px;padding:20px}.community-feed header{align-items:center;gap:10px;display:flex}.community-feed header>div{gap:3px;display:grid}.community-feed header small{color:var(--platform-muted);font-size:8px}.community-feed article>p{color:#b8c5d5;margin:16px 0;font-size:12px;line-height:1.65}.community-feed footer{color:var(--platform-muted);gap:14px;font-size:9px;display:flex}.community-feed footer button{color:#ff728e;cursor:pointer;background:0 0;border:0}.community-layout>aside{align-self:start}.community-layout aside h2{font-size:15px}.community-layout aside>div{border-bottom:1px solid var(--platform-line);grid-template-columns:25px 1fr auto;gap:8px;padding:12px 0;font-size:10px;display:grid}.community-layout aside b{color:var(--platform-yellow);font-size:9px}.community-layout aside>a{color:var(--platform-cyan);margin-top:17px;font-size:10px;font-weight:900;text-decoration:none;display:block}.pricing-grid{grid-template-columns:repeat(2,minmax(0,380px));gap:17px;margin-top:30px;display:grid}.pricing-grid article{border:1px solid var(--platform-line);background:#080f18e6;border-radius:17px;padding:27px}.pricing-grid article.featured{background:radial-gradient(circle at 80% 10%,#39d8ff1f,#0000 13rem),#0a1420;border-color:#39d8ff4d}.pricing-grid article>span{color:var(--platform-cyan);text-transform:uppercase;font-size:9px;font-weight:900}.pricing-grid h2{margin:8px 0 20px;font-size:29px}.pricing-grid ul{color:#b9c6d6;gap:10px;min-height:130px;padding-left:18px;font-size:11px;display:grid}.pricing-grid li::marker{color:var(--platform-cyan)}.pricing-grid button,.pricing-grid a{width:100%;min-height:44px;color:var(--platform-text);cursor:pointer;background:#39d8ff0e;border:1px solid #39d8ff38;border-radius:10px;place-items:center;font-size:10px;font-weight:900;text-decoration:none;display:grid}.pricing-grid .featured a{color:#03111b;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border:0}.profile-hero{background:radial-gradient(circle at 85%,#39d8ff1f,#0000 15rem),#0a1420;border:1px solid #2b8cff40;border-radius:18px;align-items:center;gap:20px;padding:28px;display:flex}.profile-avatar{color:#03111b;background:linear-gradient(135deg, var(--platform-cyan), var(--platform-blue));border-radius:22px;place-items:center;width:86px;height:86px;font-size:24px;font-weight:950;display:grid}.profile-hero>div{flex:1}.profile-hero h1{margin:4px 0;font-size:32px}.profile-hero p{color:var(--platform-muted);margin:0;font-size:11px}.profile-hero>strong{color:var(--platform-yellow);font-size:23px}.achievement-grid{border:1px solid var(--platform-line);background:#080f18e6;border-radius:15px;margin-top:20px;padding:22px}.achievement-grid>h2{font-size:18px}.achievement-grid>div{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.achievement-grid article{border:1px solid var(--platform-line);color:#526278;text-align:center;border-radius:12px;justify-items:center;gap:7px;padding:18px 9px;display:grid}.achievement-grid article svg{width:28px;height:28px}.achievement-grid article strong{font-size:10px}.achievement-grid article small{font-size:8px}.achievement-grid article.is-unlocked{color:var(--platform-yellow);background:#ffc85b09;border-color:#ffc85b40}.backend-dot{background:#718092;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #7180921f}.backend-dot.is-online{background:#50e3c2;box-shadow:0 0 12px #50e3c2cc}.backend-dot.is-offline{background:#ff887a;box-shadow:0 0 12px #ff887aa6}.auth-overlay{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#00050cd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-dialog{background:linear-gradient(155deg,#0a1929,#06101b 60%);border:1px solid #39d8ff47;border-radius:24px;width:min(100%,470px);max-height:min(760px,100vh - 40px);padding:34px;position:relative;overflow-y:auto;box-shadow:0 35px 100px #0000009e,inset 0 1px #ffffff0a}.auth-dialog>img{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 0 10px #ffffffb8)drop-shadow(0 0 22px #00a2ff52);border-radius:0;width:112px;height:96px;margin-bottom:18px}.auth-dialog h2{margin:8px 0 10px;font-size:clamp(27px,5vw,38px)}.auth-dialog>p,.auth-dialog>small{color:var(--platform-muted);line-height:1.6}.auth-tabs{border:1px solid var(--platform-line);background:#ffffff06;border-radius:13px;grid-template-columns:1fr 1fr;gap:5px;margin:24px 0 18px;padding:5px;display:grid}.auth-tabs button{min-height:40px;color:var(--platform-muted);cursor:pointer;background:0 0;border:0;border-radius:9px}.auth-tabs button.is-active{color:#04111d;background:linear-gradient(135deg, var(--platform-cyan), #50e3c2);font-weight:900}.auth-dialog form{gap:15px;margin-bottom:18px;display:grid}.auth-dialog label,.judge-panel>label{color:#d9e9f7;gap:7px;font-size:12px;font-weight:800;display:grid}.auth-dialog input,.judge-panel select,.code-editor{width:100%;color:var(--platform-text);background:#07111c;border:1px solid #20394d;border-radius:11px;outline:none}.auth-dialog input,.judge-panel select{min-height:46px;padding:0 13px}.auth-dialog input:focus,.judge-panel select:focus,.code-editor:focus{border-color:var(--platform-cyan);box-shadow:0 0 0 3px #39d8ff1a}.form-error{color:#ffb4ab;background:#ff565614;border:1px solid #ff887a57;border-radius:10px;padding:11px 13px;font-size:12px;line-height:1.5}button:disabled{cursor:wait;opacity:.65}.platform-toast{z-index:95;color:#dffcf4;cursor:pointer;background:#0b1d27;border:1px solid #50e3c247;border-radius:13px;align-items:center;gap:18px;max-width:min(420px,100vw - 32px);padding:14px 17px;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 22px 60px #0006}.platform-toast span{color:var(--platform-muted);font-size:18px}.judge-panel{gap:15px;display:grid}.judge-example{border:1px solid var(--platform-line);background:#0000002e;border-radius:10px;gap:6px;padding:12px;display:grid}.judge-example small{color:var(--platform-cyan);font-weight:800}.judge-example code{overflow-wrap:anywhere;color:#d2e6f5}.code-editor{resize:vertical;tab-size:2;min-height:240px;padding:14px;font:13px/1.65 Consolas,Courier New,monospace}.judge-result{color:#bed3e4;background:#07131f;border:1px solid #294156;border-radius:11px;gap:5px;padding:13px;font-size:12px;display:grid}.judge-result.is-passed{color:#8af0d9;border-color:#50e3c266}.judge-result.is-failed,.judge-result.is-error{color:#ffb4ab;border-color:#ff887a66}.lab-security-list{gap:8px;margin:20px 0;display:grid}.lab-security-list span{color:#bdeee2;background:#50e3c209;border:1px solid #50e3c229;border-radius:10px;padding:10px 12px;font-size:12px}.lab-runtime{border:1px solid var(--platform-line);border-radius:11px;gap:5px;margin:18px 0;padding:13px;display:grid}.lab-runtime small{color:var(--platform-muted)}.lab-runtime.is-running strong{color:#50e3c2}.lab-open-link{place-items:center;margin-top:12px;text-decoration:none;display:grid}.inline-action{width:auto;margin-top:22px}.current-plan{color:var(--platform-muted);border:1px solid #39d8ff33;border-radius:999px;gap:7px;margin:5px 0 22px;padding:9px 13px;display:inline-flex}.current-plan strong{color:var(--platform-cyan)}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-system-banner{background:linear-gradient(120deg,#50e3c20e,#39d8ff06);border:1px solid #50e3c238;border-radius:15px;justify-content:space-between;align-items:center;gap:20px;margin:24px 0 18px;padding:18px 20px;display:flex}.lab-system-banner div{gap:5px;display:grid}.lab-system-banner strong{color:#e7fff8}.lab-system-banner span{color:var(--platform-muted);font-size:12px}.lab-system-banner b{color:var(--platform-mint);flex:none;font-size:12px}.lab-system-banner b.is-waiting{color:var(--platform-yellow)}.lab-filters{margin-bottom:18px;display:block}.lab-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.lab-catalog-grid>article{border:1px solid var(--platform-line);background:linear-gradient(150deg,#0e1f30f5,#050d17f5);border-radius:18px;min-height:300px;padding:22px;transition:transform .16s,border-color .16s;display:grid;position:relative;overflow:hidden}.lab-catalog-grid>article:after{content:"";border:1px solid #39d8ff1f;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-70px;right:-55px;box-shadow:0 0 60px #39d8ff0b}.lab-catalog-grid>article:hover{border-color:#39d8ff4d;transform:translateY(-3px)}.lab-catalog-grid>article.is-complete{border-color:#50e3c252;box-shadow:inset 0 0 38px #50e3c206}.lab-catalog-grid header,.lab-catalog-grid footer,.lab-card-meta{z-index:1;align-items:center;gap:9px;display:flex;position:relative}.lab-catalog-grid header>span{width:34px;height:34px;color:var(--platform-cyan);border:1px solid #39d8ff3b;border-radius:9px;place-items:center;font-weight:900;display:grid}.lab-catalog-grid header small{color:var(--platform-muted);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.lab-catalog-grid header b{color:var(--platform-mint);margin-left:auto;font-size:10px}.lab-catalog-grid h2,.lab-catalog-grid p{z-index:1;position:relative}.lab-catalog-grid h2{margin:25px 0 9px;font-size:23px}.lab-catalog-grid p{color:var(--platform-muted);margin:0 0 18px;line-height:1.65}.lab-card-meta{flex-wrap:wrap;align-self:end;margin-bottom:18px}.lab-card-meta span{border:1px solid var(--platform-line);color:#a9c5d8;background:#ffffff06;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:800}.lab-card-meta span:last-child{color:var(--platform-yellow)}.lab-catalog-grid footer{border-top:1px solid var(--platform-line);justify-content:space-between;padding-top:16px}.lab-catalog-grid footer small{color:var(--platform-muted)}.lab-catalog-grid footer button{z-index:2;min-height:36px;color:var(--platform-cyan);cursor:pointer;background:#39d8ff0b;border:1px solid #39d8ff3d;border-radius:9px;padding:0 12px;font-size:11px;font-weight:900;position:relative}.sidebar-scrim{display:none}@media (width<=1080px){.platform-track-nav button{padding:0 9px}.platform-track-nav button svg,.profile-chip strong{display:none}.profile-chip{padding-right:5px}.module-lessons>button{grid-template-columns:34px minmax(220px,1fr) auto auto 18px}.lesson-format,.lesson-stat:not(.xp){display:none}}@media (width<=860px){.platform-header{gap:12px;padding:0 14px}.platform-menu-toggle{display:block}.platform-brand{min-width:0}.platform-brand>span{display:none}.platform-track-nav{flex:1;overflow-x:auto}.platform-track-nav button{white-space:nowrap}.xp-pill{display:none}.platform-body{display:block}.platform-sidebar{z-index:45;background:#07101b;width:min(290px,86vw);height:calc(100vh - 72px);transition:transform .2s;position:fixed;top:72px;bottom:0;left:0;transform:translate(-105%);box-shadow:25px 0 60px #0000006b}.platform-sidebar.is-open{transform:translate(0)}.sidebar-scrim{z-index:40;background:#00040aa8;border:0;width:100%;display:block;position:fixed;inset:72px 0 0}.platform-main{width:min(100% - 28px,760px);padding-top:25px}.platform-welcome{padding:30px}.welcome-progress>span{display:none}.learning-map{grid-template-columns:1fr;gap:22px;padding-left:36px}.map-line{left:14px}.path-card,.path-card:nth-of-type(2n),.path-card:nth-of-type(odd){grid-column:1}.map-step,.path-card:nth-of-type(2n) .map-step{left:-38px;right:auto}.certificate-node{margin-left:-28px}.challenge-grid,.certificate-grid,.contest-grid,.writeup-grid,.pricing-grid,.lab-catalog-grid,.community-layout,.studio-layout{grid-template-columns:1fr}.rank-road{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.platform-header{height:64px}.platform-brand img{width:78px;height:54px}.platform-track-nav button{min-height:34px;padding:0 10px;font-size:11px}.round-action,.profile-chip{display:none}.platform-sidebar{height:calc(100vh - 64px);top:64px}.sidebar-scrim{inset:64px 0 0}.platform-welcome{min-height:0;padding:26px 23px;display:block}.platform-welcome h1{font-size:34px}.welcome-progress{margin-top:25px}.progress-ring{width:82px;height:82px}.metric-grid{grid-template-columns:1fr;margin-bottom:40px}.metric-grid article{min-height:105px}.section-title-row{display:block}.path-legend{margin-top:14px}.path-card{padding:20px}.path-hero{padding:25px 22px;display:block}.path-hero .progress-ring{margin-top:25px}.module-card>header{padding:15px}.module-lessons>button{grid-template-columns:30px 1fr 18px;gap:9px;padding:13px}.difficulty,.lesson-format,.lesson-stat{display:none}.lesson-copy strong{font-size:11px}.lesson-view>h1{font-size:34px}.lesson-lead{font-size:14px}.lesson-table{overflow-x:auto}.lesson-table>div{min-width:600px}.lesson-actions{display:grid}.floating-lab{bottom:14px;right:14px}.leaderboard-card>div{grid-template-columns:30px 34px 1fr auto;gap:8px;padding:10px 12px}.leaderboard-card small{display:none}.catalog-toolbar,.lab-system-banner{display:grid}.catalog-toolbar>div{padding-bottom:3px;overflow-x:auto}.legion-hero,.profile-hero{display:grid}.legion-hero>button,.profile-xp{justify-self:start}.legion-stats,.profile-stats{grid-template-columns:1fr}.member-card>div{grid-template-columns:34px minmax(0,1fr) auto}.member-card>div>small{display:none}.rank-road,.achievement-grid>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.platform-shell *,.platform-shell :before,.platform-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
