.academy{--ok:#2f9e6a;--ok-bg:#2f9e6a1f;--warn:#b7791f;--warn-bg:#b7791f1f;--bad:#d64545;--bad-bg:#d645451f;--pro:var(--primary);--pro-bg:color-mix(in srgb, var(--primary) 11%, transparent);--free:var(--foreground-muted);--free-bg:var(--background-alt);--ide-bg:#1e1e1e;--ide-panel:#181818;--ide-chrome:#252526;--ide-border:#3c3c3c;--ide-fg:#d4d4d4;--ide-muted:#9d9d9d;--ide-accent:#0e639c;--radius:6px;--mono:"JetBrains Mono", "Fira Code", Consolas, monospace;max-width:1200px;color:var(--foreground);margin:auto;padding:24px 24px 80px}.academy a{color:var(--primary)}.academy a:hover{text-underline-offset:4px;text-decoration:underline}.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}.academy-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--primary);margin-bottom:12px;font-size:12px;font-weight:700}.academy h1{font-family:var(--font-serif,Georgia, serif);letter-spacing:-.03em;max-width:820px;margin:0 0 16px;font-size:clamp(30px,4.6vw,50px);line-height:1.12}.academy h2{font-family:var(--font-serif,Georgia, serif);letter-spacing:-.01em;margin:0 0 14px;font-size:clamp(22px,2.6vw,30px);line-height:1.25}.academy h3{letter-spacing:-.01em;margin:0 0 10px;font-size:18px;font-weight:650}.academy p{color:var(--foreground-muted);margin-bottom:16px;line-height:1.75}.academy p code,.academy li code,.academy legend code,.academy label code,.academy summary code,.academy span code{font-family:var(--mono);background:var(--background-alt);border:1px solid var(--border);color:var(--foreground);border-radius:5px;padding:1px 5px;font-size:.9em}.academy-intro{max-width:680px;font-size:18px}.academy small{color:var(--foreground-muted)}.academy-button{border:1px solid var(--primary);background:var(--primary);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:600;line-height:1.2;transition:background .15s,border-color .15s;display:inline-flex;color:#fff!important;text-decoration:none!important}.academy-button:hover{background:var(--primary-dark);border-color:var(--primary-dark);text-decoration:none!important}.academy-button small{color:#fffc;margin-left:6px;font-size:11px;font-weight:500;display:block}.academy-button.secondary{background:var(--background);border-color:var(--border-strong);color:var(--foreground)!important}.academy-button.secondary:hover{background:var(--background-alt);border-color:var(--primary)}.academy-button.ghost{background:0 0;border-color:#0000;padding-left:10px;padding-right:10px;color:var(--primary)!important}.academy-button.ghost:hover{background:var(--background-alt);box-shadow:none;transform:none}.academy-button.large{padding:14px 24px;font-size:15px}.academy-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.academy-button:focus-visible,.academy input:focus-visible,.academy textarea:focus-visible,.academy a:focus-visible,.academy button:focus-visible,.academy select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.academy-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;display:flex}.chip{background:var(--background-alt);color:var(--foreground-muted);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.chip.free{background:var(--free-bg);color:var(--free);border-color:var(--border)}.chip.pro{background:var(--pro-bg);color:var(--pro);border-color:color-mix(in srgb, var(--primary) 24%, transparent)}.chip.ok{background:var(--ok-bg);color:var(--ok);border-color:#0000}.progress{background:var(--border);border-radius:999px;height:6px;margin:8px 0;overflow:hidden}.progress span{background:linear-gradient(90deg, var(--primary), var(--ok));border-radius:999px;height:100%;transition:width .4s;display:block}.academy-message{border-left:3px solid var(--primary);background:var(--background-alt);border-radius:0 8px 8px 0;margin:16px 0;padding:14px 18px;line-height:1.6}.academy-tag{background:var(--background-alt);color:var(--foreground-muted);border-radius:20px;margin-bottom:16px;padding:3px 9px;font-size:12px;display:inline-block}.academy-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);padding:24px}.academy-card ul,.academy-card ol{margin:12px 0;padding-left:20px}.academy-card li{color:var(--foreground-muted);padding:4px 0;line-height:1.55}.academy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0;display:grid}.academy-price{letter-spacing:-.02em;margin:10px 0 4px;font-size:40px;font-weight:700}.academy-price small{font-size:14px;font-weight:400}.academy details{border-top:1px solid var(--border);padding:14px 0}.academy details:last-of-type{border-bottom:1px solid var(--border)}.academy summary{cursor:pointer;justify-content:space-between;align-items:center;font-weight:600;list-style:none;display:flex}.academy summary:after{content:"+";color:var(--foreground-muted);font-size:18px}.academy details[open] summary:after{content:"−"}.academy details p{margin:12px 0 0}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:56px;margin:4px 0 48px;display:grid}.hero>*{min-width:0}.hero-facts{color:var(--foreground-muted);flex-wrap:wrap;gap:10px 26px;margin:26px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.hero-facts strong{color:var(--foreground);font-size:17px;display:block}.hero-demo .ide{box-shadow:0 24px 48px -32px #000000a6}.hero-demo .ide-run{pointer-events:none}.hero-code{min-height:150px;border-radius:0!important;margin:0!important}.continue-banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--background-alt);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin:0 0 40px;padding:20px 24px;display:flex}.continue-banner>div:first-child{flex:260px}.continue-banner .academy-eyebrow{margin-bottom:4px}.features{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 56px;display:grid}.feature{border-top:1px solid var(--foreground);background:var(--background);padding:22px 0}.feature-index{color:var(--foreground-muted);font:600 11px/1.4 var(--mono);letter-spacing:.08em;margin-bottom:18px;display:block}.feature h3{font-size:16px}.feature p{margin:0;font-size:14.5px}.curriculum-overview{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,.75fr) minmax(0,1.55fr);gap:52px;margin:0 0 54px;padding:42px 0;display:grid}.curriculum-intro h2{max-width:410px;margin-bottom:10px}.curriculum-intro p{max-width:390px;margin:0}.curriculum-stages{margin:0;padding:0;list-style:none}.curriculum-stages li{border-top:1px solid var(--border)}.curriculum-stages li:last-child{border-bottom:1px solid var(--border)}.curriculum-stages a{grid-template-columns:44px 1fr auto;align-items:start;gap:16px;padding:17px 4px;display:grid;color:var(--foreground)!important;text-decoration:none!important}.curriculum-stages a:hover .curriculum-stage-copy>strong,.curriculum-stages a:hover .curriculum-arrow{color:var(--primary)}.curriculum-number{color:var(--foreground-muted);font:600 12px/1.7 var(--mono)}.curriculum-stage-copy{grid-template-columns:1fr auto;gap:2px 18px;min-width:0;display:grid}.curriculum-stage-copy>strong{font-family:var(--font-serif,Georgia, serif);font-size:17px;transition:color .15s}.curriculum-stage-copy>small{font:600 11px/1.8 var(--mono);color:var(--primary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;grid-area:1/2}.curriculum-stage-copy>span{color:var(--foreground-muted);grid-column:1/-1;font-size:14px;line-height:1.55}.curriculum-arrow{color:var(--foreground-muted);padding-top:1px;transition:color .15s,transform .15s}.curriculum-stages a:hover .curriculum-arrow{transform:translate(2px)}.catalog{margin-bottom:56px}.catalog-level{margin-bottom:36px}.catalog-level-head{flex-wrap:wrap;align-items:baseline;gap:18px;margin-bottom:16px;display:flex}.catalog-level-head h2,.catalog-level-head p{margin:0}.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.course-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);flex-direction:column;padding:22px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.course-card:hover{border-color:var(--border-strong);box-shadow:0 12px 30px -24px #00000080}.course-card.pro,.course-card.free{border-top-color:var(--border)}.course-card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.course-number{font-family:var(--mono);color:var(--foreground-muted);font-size:13px}.course-card h3{font-size:19px;font-family:var(--font-serif,Georgia, serif)}.course-card h3 a{color:var(--foreground);text-decoration:none}.course-card p{flex:1;font-size:15px}.course-facts{color:var(--foreground-muted);gap:14px;margin:0 0 12px;padding:0;font-size:13px;list-style:none;display:flex}.course-card-actions{gap:8px;margin-top:10px;display:flex}.pricing-teaser{border-top:2px solid var(--foreground);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:center;gap:40px;margin:0 0 64px;padding:34px 0;display:grid}.pricing-teaser h2{margin-bottom:8px}.pricing-teaser p{margin:0}.pricing-teaser-offer{border-left:1px solid var(--border);padding-left:32px}.pricing-teaser-price{align-items:baseline;gap:9px;display:flex}.pricing-teaser-price strong{font-family:var(--font-serif,Georgia, serif);letter-spacing:-.035em;font-size:40px;line-height:1}.pricing-teaser-price span{color:var(--foreground-muted);font-size:14px}.pricing-teaser-offer>small{margin-top:7px;display:block}.pricing-teaser-offer .academy-actions{margin-bottom:0}.faq{max-width:760px;margin:0 auto 40px}.lesson-head{margin-bottom:22px}.lesson-head.centered{text-align:center}.lesson-head.centered h1,.lesson-head.centered .academy-intro{margin-left:auto;margin-right:auto}.lesson-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.lesson-crumbs{color:var(--foreground-muted);flex-wrap:wrap;gap:8px;margin-bottom:14px;font-size:13px;display:flex}.lesson-summary{max-width:700px;font-size:17px;margin-bottom:12px!important}.lesson-meta{color:var(--foreground-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.lesson-meta>span:not(.chip){padding:3px 0}.lesson-meta>span:not(.chip):not(:last-child):after{content:"·";color:var(--border-strong);margin-left:8px}.lesson-progress{min-width:240px}.lesson-progress small{font-size:12px}.lesson-complete{border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border);color:var(--foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;padding:14px 0;display:flex}.lesson-complete strong{color:var(--foreground)}.lesson-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:36px;display:grid}.lesson-grid>*{min-width:0}.lesson-code{position:sticky;top:72px}.workspace-intro{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:10px;display:flex}.workspace-intro>div{gap:2px;display:grid}.workspace-intro strong{color:var(--foreground);font-size:14px}.workspace-intro>div span{color:var(--foreground-muted);font-size:12.5px}.workspace-tip{text-align:right;max-width:230px;color:var(--foreground-muted);font-size:11.5px;line-height:1.45}.workspace-tip kbd{border:1px solid var(--border-strong);background:var(--background-alt);color:var(--foreground);font:11px var(--mono);border-bottom-width:2px;border-radius:4px;padding:1px 5px;display:inline-block}.lesson-learn>p{font-size:16.5px}.lesson-learn h3{margin-top:30px}.lesson-note{font-size:14px!important}.lesson-task{border-radius:var(--radius);border:1px solid var(--border);background:var(--background-alt);margin-top:30px;padding:22px}.lesson-task h3{margin-top:0}.lesson-task>p{color:var(--foreground);font-weight:500}.steps{gap:8px;margin:12px 0 16px;padding:0;list-style:none;display:grid}.steps li{background:var(--background);border:1px solid var(--border);border-radius:9px;align-items:flex-start;gap:12px;padding:10px 12px;font-size:14.5px;line-height:1.5;transition:border-color .2s,background .2s;display:flex}.steps li.done{background:var(--ok-bg);border-color:#2f9e6a80}.steps-mark{background:var(--background-alt);width:22px;height:22px;color:var(--foreground-muted);border:1px solid var(--border);border-radius:50%;flex:none;place-items:center;margin-top:1px;font-size:12px;font-weight:700;display:inline-grid}.steps li.done .steps-mark{background:var(--ok);color:#fff;border-color:var(--ok)}.lesson-help .academy-actions{margin:10px 0 0}.hint{border-left:3px solid var(--accent);background:var(--background);border-radius:0 8px 8px 0;margin:10px 0;padding:12px 14px}.hint strong{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:4px;font-size:12px;display:block}.hint p{margin:0;font-size:14.5px}.solution{background:var(--background);border:1px dashed var(--border-strong);border-radius:9px;margin-top:14px;padding:14px}.solution strong{margin-bottom:8px;display:block}.solution p{margin:10px 0;font-size:14px}.takeaway{border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border);margin-top:30px;padding:18px 0}.takeaway .academy-eyebrow{margin-bottom:6px}.takeaway p{color:var(--foreground);margin:0;font-size:16px}.lesson-nav{border-top:1px solid var(--border);justify-content:space-between;gap:16px;margin-top:32px;padding-top:18px;font-size:14px;font-weight:500;display:flex}.lesson-skeleton div{background:linear-gradient(90deg, var(--background-alt), var(--border), var(--background-alt));background-size:200% 100%;border-radius:6px;height:14px;margin:12px 0;animation:1.4s infinite shimmer}.lesson-skeleton div:nth-child(2){width:85%}.lesson-skeleton div:nth-child(3){width:92%}.lesson-skeleton div:nth-child(4){width:60%;height:120px}@keyframes shimmer{to{background-position:-200% 0}}.locked{border-radius:var(--radius);border:1px solid var(--border);background:var(--background-alt);max-width:720px;padding:36px}.quiz{border:1px solid var(--border-strong);background:var(--background-alt);border-radius:10px;margin-top:36px;padding:26px}.quiz-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.quiz-head .academy-eyebrow{margin-bottom:5px}.quiz-head h3{font-family:var(--font-serif,Georgia, serif);margin:0 0 4px;font-size:24px}.quiz-head p{margin:0;font-size:13.5px}.quiz-score{border:1px solid var(--border);background:var(--background);border-radius:8px;flex:none;align-items:center;gap:7px;min-width:82px;padding:8px 10px;display:flex}.quiz-score strong{font:700 24px/1 var(--font-serif,Georgia, serif);color:var(--foreground)}.quiz-score small{text-transform:uppercase;letter-spacing:.05em;font-size:10.5px;line-height:1.15}.quiz-score.complete{border-color:color-mix(in srgb, var(--ok) 45%, var(--border));background:var(--ok-bg)}.quiz-score.complete strong{color:var(--ok)}.quiz-progress{background:var(--border);height:3px;margin:0 0 4px;overflow:hidden}.quiz-progress span{background:var(--primary);height:100%;transition:width .2s;display:block}.quiz-question{border:0;border-top:1px solid var(--border);margin:0;padding:22px 0 4px}.quiz-number{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:10.5px;font-weight:700;display:block}.quiz-question legend{font-family:var(--font-serif,Georgia, serif);float:left;width:100%;margin-bottom:13px;padding:0;font-size:17px;font-weight:700;line-height:1.45}.quiz-question legend+*{clear:both}.quiz-option{border:1px solid var(--border);cursor:pointer;background:var(--background);grid-template-columns:30px 1fr;align-items:center;gap:11px;min-height:48px;margin:7px 0;padding:9px 13px;font-size:14px;line-height:1.45;transition:border-color .12s,background .12s,box-shadow .12s;display:grid;position:relative}.quiz-option:hover{border-color:var(--primary)}.quiz-option:focus-within{outline:2px solid var(--primary);outline-offset:2px}.quiz-option.selected{border-color:color-mix(in srgb, var(--primary) 58%, var(--border));box-shadow:inset 3px 0 0 var(--primary)}.quiz-option input{opacity:0;pointer-events:none;position:absolute}.quiz-option-mark{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--foreground-muted);font:700 11px/1 var(--font-sans,system-ui, sans-serif);background:var(--background-alt);border-radius:50%;place-items:center;display:inline-grid}.quiz-option-copy{min-width:0;color:var(--foreground)}.quiz-option.correct{border-color:var(--ok);background:var(--ok-bg);box-shadow:inset 3px 0 0 var(--ok)}.quiz-option.correct .quiz-option-mark{color:#fff;background:var(--ok);border-color:var(--ok)}.quiz-option.wrong{border-color:var(--bad);background:var(--bad-bg);box-shadow:inset 3px 0 0 var(--bad)}.quiz-option.wrong .quiz-option-mark{color:#fff;background:var(--bad);border-color:var(--bad)}.quiz-check{border:1px solid var(--border-strong);background:var(--foreground);color:var(--background);cursor:pointer;border-radius:5px;margin-top:10px;padding:8px 13px;font-size:13px;font-weight:650}.quiz-check:disabled{opacity:.35;cursor:not-allowed}.quiz-feedback{background:var(--background);border-left:3px solid;grid-template-columns:auto 1fr;gap:10px;margin:11px 0 2px;padding:11px 13px;font-size:13.5px;display:grid}.quiz-feedback strong{white-space:nowrap}.quiz-feedback.ok{border-color:var(--ok);color:var(--foreground)}.quiz-feedback.ok strong{color:var(--ok)}.quiz-feedback.no{border-color:var(--warn);color:var(--foreground)}.quiz-feedback.no strong{color:var(--warn)}.lean-code{background:var(--ide-bg);color:var(--ide-fg);font:13.5px/1.7 var(--mono);white-space:pre;tab-size:2;border:1px solid #2a2a2a;border-radius:10px;margin:12px 0 16px;padding:16px 18px;overflow:auto}.tk-keyword{color:#569cd6;font-weight:600}.tk-tactic{color:#c586c0}.tk-type{color:#4ec9b0}.tk-qualified{color:#9cdcfe}.tk-number{color:#b5cea8}.tk-comment{color:#6a9955;font-style:italic}.tk-command{color:#dcdcaa}.tk-operator{color:#ff9e64}.tk-invalid{color:#f14c4c;-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.ide{background:var(--ide-bg);color:var(--ide-fg);border:1px solid var(--ide-border);font-family:var(--font-sans,system-ui, sans-serif);border-radius:12px;overflow:hidden;box-shadow:0 24px 50px -30px #0009}.ide-titlebar{background:var(--ide-chrome);border-bottom:1px solid var(--ide-border);align-items:center;gap:4px;height:40px;padding:0 10px 0 12px;display:flex}.ide-dots{gap:6px;margin-right:10px;display:inline-flex}.ide-dots i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.ide-dots i:nth-child(2){background:#febc2e}.ide-dots i:nth-child(3){background:#28c840}.ide-tab{height:40px;color:var(--ide-muted);border-right:1px solid var(--ide-border);font-size:12.5px;font-family:var(--mono);white-space:nowrap;align-items:center;padding:0 14px;display:inline-flex}.ide-tab.active{color:#fff;background:var(--ide-bg);border-top:1px solid var(--ide-accent);border-left:1px solid var(--ide-border)}.ide-version{color:var(--ide-muted);font:11.5px var(--mono);white-space:nowrap;padding:0 14px}.ide-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.ide-checks{color:var(--ide-muted);white-space:nowrap;font-size:12px}.ide-run{background:var(--ide-accent);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex;color:#fff!important;text-decoration:none!important}.ide-run:hover{background:#17b}.ide-run:disabled{opacity:.45;cursor:not-allowed}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.lean-editor{background:var(--ide-bg)}.lean-editor-header{font:14px/24px var(--mono);scrollbar-width:thin;background:#1a1a1a;border-bottom:1px dashed #3a3a3a;padding:10px 0 0;overflow-x:auto}.lean-editor-header-line{white-space:pre;min-width:max-content;padding-right:16px;display:flex}.lean-editor-gutter{text-align:right;color:#5a5a5a;-webkit-user-select:none;user-select:none;flex:none;width:52px;padding-right:18px}.lean-editor-header-code{color:var(--ide-fg)}.lean-editor-header-note{font:11px/1 var(--font-sans,sans-serif);color:#6b6b6b;-webkit-user-select:none;user-select:none;padding:6px 0 6px 52px}.lean-editor-loading{height:100%;color:var(--ide-muted);background:var(--ide-bg);place-items:center;font-size:13px;display:grid}.lean-editor-monaco{min-height:220px}.lean-editor-monaco .monaco-editor .margin,.lean-editor-monaco .monaco-editor,.lean-editor-monaco .monaco-editor-background{background:var(--ide-bg)!important}.lean-editor-textarea{resize:none;background:var(--ide-bg);width:100%;color:var(--ide-fg);font:14px/24px var(--mono);tab-size:2;border:0;padding:12px 12px 12px 52px;display:block}.lean-editor-resize{cursor:ns-resize;touch-action:none;background:#202020;border:0;border-top:1px solid #2f2f2f;place-items:center;width:100%;height:17px;padding:0;display:grid}.lean-editor-resize:hover,.lean-editor-resize:focus-visible{background:#2a2a2a;outline:none}.lean-editor-resize span{background:#656565;border-radius:99px;width:36px;height:3px}.lean-editor-resize:hover span,.lean-editor-resize:focus-visible span{background:#9a9a9a}.lean-editor-fallback-note{color:var(--ide-muted);margin:0;padding:6px 12px;font-size:12px}.ide-symbols{background:var(--ide-chrome);border-top:1px solid var(--ide-border);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 10px;display:flex}.ide-symbols button{min-width:30px;height:28px;color:var(--ide-fg);font:15px var(--mono);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:0 7px}.ide-symbols button:hover{background:#3a3d41;border-color:#4a4d51}.ide-symbols-hint{color:var(--ide-muted);margin-left:auto;font-size:11.5px}.ide-symbols-hint code{font-family:var(--mono);color:#ddd;background:#333;border-radius:4px;padding:1px 5px}.ide-panel{border-top:1px solid var(--ide-border);background:var(--ide-panel)}.ide-panel-tabs{border-bottom:1px solid var(--ide-border);background:var(--ide-chrome);gap:2px;padding:0 8px;display:flex}.ide-panel-tabs button{color:var(--ide-muted);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 12px;font-size:11.5px}.ide-panel-tabs button.active{color:#fff;border-bottom-color:var(--ide-accent)}.ide-panel-body{min-height:150px;max-height:320px;padding:12px 14px;font-size:13px;overflow:auto}.ide-empty{font-size:13px;color:var(--ide-muted)!important;margin:4px 0!important}.ide-empty code{color:#ddd!important;background:#333!important;border-color:#444!important}.ide-error{color:#ffb3b3;background:#f14c4c26;border:1px solid #f14c4c66;border-radius:6px;margin-bottom:10px;padding:10px 12px}.ide-output{font:13px/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ide-fg);margin:0}.problems{gap:6px;margin:0;padding:0;list-style:none;display:grid}.problems li>button,.problems li>div{text-align:left;width:100%;color:var(--ide-fg);font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.problems li>button{cursor:pointer}.problems li>button:hover{background:#2a2d2e;border-color:#3a3d41}.problem-icon{border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-top:1px;font-size:10px;font-weight:700;display:inline-grid}.problem-icon.error{color:#fff;background:#f14c4c}.problem-icon.warning{color:#1e1e1e;background:#cca700}.problem-icon.info{color:#fff;background:#3794ff}.problem-text{gap:4px;min-width:0;display:grid}.problem-title{line-height:1.45}.problem-detail{font:12.5px/1.55 var(--mono);color:#cfcfcf;white-space:pre-wrap;overflow-wrap:anywhere;background:#111;border-radius:5px;margin:0;padding:8px 10px}.problem-meta{color:var(--ide-muted);font-size:11.5px}.goals{gap:12px;display:grid}.goal{font:13.5px/1.7 var(--mono);background:#151515;border:1px solid #2c2c2c;border-radius:6px;padding:10px 12px}.goal-case{color:#dcdcaa;border:1px solid #4a4a2a;border-radius:4px;margin-bottom:4px;padding:1px 6px;font-size:11px;display:inline-block}.goal-hyp{grid-template-columns:auto auto 1fr;gap:8px;display:grid}.goal-names{color:#9cdcfe}.goal-colon{color:gray}.goal-type{color:#d4d4d4;overflow-wrap:anywhere}.goal-target{color:#fff;overflow-wrap:anywhere;border-top:1px solid #2c2c2c;gap:10px;margin-top:6px;padding-top:6px;display:flex}.goal-turnstile{color:#ff9e64;font-weight:700}.goals-done{color:var(--ide-fg);align-items:center;gap:11px;padding:10px 2px;display:flex}.goals-done>span{color:#c8c8c8;border:1px solid #5a5a5a;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;display:inline-grid}.goals-done>div{gap:2px;display:grid}.goals-done strong{color:#f2f2f2;font-size:13px}.goals-done small{color:var(--ide-muted);font-size:11.5px}.ide-status{background:var(--ide-chrome);height:26px;color:var(--ide-muted);border-top:1px solid var(--ide-border);align-items:center;gap:18px;padding:0 12px;font-size:12px;display:flex}.ide.ok .ide-status,.ide.error .ide-status,.ide.warn .ide-status,.ide.busy .ide-status{background:var(--ide-chrome)}.ide.ok .ide-status-state:before{content:"●";color:#8fba9e;margin-right:7px;font-size:8px}.ide-status-state{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.ide-status span{white-space:nowrap}.ide.demo .ide-panel-body{min-height:0}.playground-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;font-size:14px;display:flex}.playground-toolbar label{align-items:center;gap:10px;font-weight:500;display:inline-flex}.playground-toolbar select{border:1px solid var(--border-strong);background:var(--background);color:var(--foreground);font:inherit;border-radius:8px;padding:8px 12px}.playground-limits{color:var(--foreground-muted);font-size:13px}.playground-tips{margin-top:32px}.playground-tips h3{font-size:16px}.playground-tips p{margin:0;font-size:14.5px}.course-layout{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:start;gap:36px;display:grid}.course-aside{gap:16px;display:grid;position:sticky;top:72px}.course-aside h3{font-size:15px}.outcomes{list-style:none;margin:0!important;padding:0!important}.outcomes li{position:relative;padding:5px 0 5px 24px!important}.outcomes li:before{content:"✓";color:var(--ok);font-weight:700;position:absolute;left:0}.outcomes.plain li:before{content:"→";color:var(--foreground-muted)}.syllabus-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.syllabus-head>div{flex:220px}.syllabus-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.syllabus-list a{border:1px solid var(--border);background:var(--background);border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .12s,transform .12s;display:grid;color:var(--foreground)!important;text-decoration:none!important}.syllabus-list a:hover{border-color:var(--primary);transform:translate(2px)}.syllabus-list li.done a{background:var(--ok-bg);border-color:#2f9e6a59}.syllabus-mark{background:var(--background-alt);border:1px solid var(--border);width:30px;height:30px;color:var(--foreground-muted);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:inline-grid}.syllabus-list li.done .syllabus-mark{background:var(--ok);border-color:var(--ok);color:#fff}.syllabus-body{gap:2px;min-width:0;display:grid}.syllabus-title{font-weight:600}.syllabus-summary{color:var(--foreground-muted);font-size:13.5px}.syllabus-minutes{color:var(--foreground-muted);white-space:nowrap;font-size:12.5px}.pricing-head{max-width:760px;margin:18px 0 44px}.plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 20px;display:grid}.plan{border:1px solid var(--border);background:var(--background);border-radius:2px;flex-direction:column;padding:30px;display:flex;position:relative}.plan.featured{border-color:var(--border-strong);box-shadow:inset 0 2px 0 var(--primary)}.plan-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.plan-kicker{color:var(--foreground-muted);font:600 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;display:block}.plan h2{margin-bottom:0}.academy-price{align-items:baseline;gap:10px;margin:22px 0 5px;display:flex}.academy-price>span{font-family:var(--font-serif,Georgia, serif);letter-spacing:-.035em;font-size:42px;font-weight:700;line-height:1}.academy-price small{font-size:13px}.plan-note{min-height:23px;margin:0 0 20px;font-size:13px}.plan-details{border-top:1px solid var(--border);flex:1;margin:0 0 26px}.plan-details>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:10px 0;font-size:14px;display:flex}.plan-details dt{color:var(--foreground-muted)}.plan-details dd{color:var(--foreground);text-align:right;margin:0;font-weight:600}.credit-offer{border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:28px;margin:0 0 58px;padding:24px 0;display:flex}.credit-offer h2{margin-bottom:3px;font-size:23px}.credit-offer p{margin:0;font-size:14px}.credit-offer .plan-kicker{margin-bottom:5px}.section-rule-heading{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:baseline;gap:20px;display:flex}.section-rule-heading h2,.section-rule-heading p{margin-bottom:10px}.plan-courses{max-width:820px;margin:0 auto 30px}.plan-table{border-collapse:collapse;width:100%;font-size:14.5px}.plan-table-wrap{max-width:100%;overflow-x:auto}.plan-table-wrap .plan-table{min-width:620px}.plan-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--foreground-muted);border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px}.plan-table td{border-bottom:1px solid var(--border);padding:11px 12px}.plan-legal{max-width:820px;margin:16px auto 44px;font-size:13px}.pricing-assurance{text-align:center;max-width:720px;margin:0 auto 44px;font-size:13.5px}.credit-counts{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:16px;padding:14px 0;display:grid}.credit-counts>div{gap:3px;display:grid}.credit-counts>div+div{border-left:1px solid var(--border);padding-left:16px}.credit-counts strong{font-family:var(--font-serif,Georgia, serif);font-size:30px}.credit-counts span{color:var(--foreground-muted);font-size:12px}.account-secondary-action{margin-top:10px}.account-courses{margin-top:24px}.account-course-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.account-course-list li{border:1px solid var(--border);border-radius:10px;padding:16px 18px}.account-course-head{align-items:center;gap:10px;font-weight:600;display:flex}.account-course-count{color:var(--foreground-muted);margin-left:auto;font-size:13px;font-weight:500}.account-course-next{font-size:14px}.account-course-next.done{color:var(--ok);font-weight:600}.auth{grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:start;gap:48px;display:grid}.auth-perks{margin:0;padding:0;list-style:none}.auth-perks li{color:var(--foreground-muted);padding:6px 0 6px 26px;position:relative}.auth-perks li:before{content:"✓";color:var(--ok);font-weight:700;position:absolute;left:0}.auth-form{border:1px solid var(--border);background:var(--background);border-radius:16px;padding:28px}.auth-form label,.academy label{font-size:14px;font-weight:600;display:block}.auth-form input,.academy input[type=email],.academy input[type=password]{border:1px solid var(--border-strong);background:var(--background);width:100%;color:var(--foreground);font:inherit;border-radius:8px;margin:6px 0 16px;padding:12px}.auth-fineprint{font-size:13px}.auth-form .academy-button{width:100%}.auth-form .academy-actions{justify-content:space-between;margin-bottom:0}@media (max-width:1080px){.hero{grid-template-columns:minmax(0,1fr);gap:28px}.features,.course-grid,.academy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-overview{grid-template-columns:1fr;gap:26px}.lesson-grid{grid-template-columns:1fr}.lesson-code{order:-1;position:static}.course-layout{grid-template-columns:1fr}.course-aside{position:static}.pricing-teaser{grid-template-columns:1fr;gap:24px}.pricing-teaser-offer{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}}@media (max-width:720px){.academy{padding:16px 16px 56px}.features,.course-grid,.academy-grid,.path-steps,.plans,.auth{grid-template-columns:1fr}.credit-offer,.section-rule-heading{flex-direction:column;align-items:flex-start}.curriculum-overview{margin-bottom:42px;padding:32px 0}.curriculum-stages a{grid-template-columns:36px 1fr auto;gap:10px}.curriculum-stage-copy{grid-template-columns:1fr}.curriculum-stage-copy>small{grid-area:auto/1;margin-bottom:3px}.ide-tab:not(.active),.ide-symbols-hint{display:none}.ide-panel-body{max-height:260px}.syllabus-list a{grid-template-columns:30px 1fr}.syllabus-minutes{display:none}.lesson-head-row,.workspace-intro{align-items:flex-start}.workspace-tip{display:none}.quiz{padding:20px 16px}.quiz-head{align-items:center}.quiz-head p{display:none}.quiz-feedback{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){.academy *{transition:none!important;animation:none!important}}
