@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--black:#111;--ink:#222;--muted:#6d6d69;--line:#d5d5d0;--line-dark:#a7a7a2;--paper:#fff;--canvas:#f3f3f1;--soft:#e9e9e5;--success:#303a31;--step-green:#2e8b57;--step-green-soft:#e5f3e9}.topbar{z-index:10;border-bottom:1px solid var(--line);background:#fffffff5;grid-template-columns:1fr auto 1fr;align-items:center;min-height:58px;padding:0 28px;display:grid;position:sticky;top:0}.wordmark,.account-bar,.top-nav{align-items:center;display:flex}.wordmark{letter-spacing:-.02em;gap:10px;width:max-content;font-weight:700}.wordmark-mark{color:#fff;background:var(--black);place-items:center;width:30px;height:30px;font:600 .72rem IBM Plex Mono,monospace;display:grid}.top-nav{color:#444;justify-content:center;gap:24px;font-size:.9rem}.top-nav a{border-bottom:2px solid #0000;padding:18px 2px 16px}.top-nav a:hover{border-bottom-color:var(--black)}.account-bar{justify-content:flex-end;gap:14px;min-width:0;font-size:.82rem}.points-counter{color:#fff;background:var(--black);padding:5px 8px;font-family:IBM Plex Mono,monospace}.account-email{max-width:220px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-button{color:var(--ink);background:0 0;border:0;border-bottom:1px solid;padding:0}.page-frame{width:min(1120px,100% - 48px);margin:0 auto;padding:48px 0 80px}.page-heading{max-width:780px;margin-bottom:38px}.page-heading h1,.auth-hero h1,.toolbar h2,.panel h2,.module-card h2{color:var(--black);letter-spacing:-.035em;margin:0}.page-heading h1{margin-bottom:10px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.03}.page-subtitle{max-width:680px;color:var(--muted);margin:0;font-size:1.05rem}.eyebrow{color:#555;letter-spacing:.11em;text-transform:uppercase;margin:0 0 12px;font:600 .7rem IBM Plex Mono,monospace}.breadcrumbs{scrollbar-width:none;margin-bottom:24px;overflow-x:auto}.breadcrumbs::-webkit-scrollbar{display:none}.breadcrumbs ol{width:max-content;min-width:0;color:var(--muted);align-items:center;margin:0;padding:0;font:500 .72rem IBM Plex Mono,monospace;list-style:none;display:flex}.breadcrumbs li{align-items:center;min-width:0;display:flex}.breadcrumbs a{color:#444;border-bottom:1px solid #0000}.breadcrumbs a:hover{border-bottom-color:var(--line-dark)}.breadcrumbs [aria-current=page] span{max-width:32ch;color:var(--black);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-content,.lesson-layout,.modules-grid,.module-lessons,.checklist,.runner,.auth-form{display:grid}.lesson-pagination{justify-content:space-between;align-items:center;gap:16px;padding-top:8px;display:flex}.lesson-pagination a{border-bottom:1px solid var(--black);padding-bottom:3px;font-size:.86rem;font-weight:600}.overview-grid{border:1px solid var(--line);background:var(--paper);grid-template-columns:1.5fr .75fr .75fr;display:grid}.metric-card{border-right:1px solid var(--line);min-height:142px;padding:22px}.metric-card:last-child{border-right:0}.metric-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;font:500 .68rem IBM Plex Mono,monospace;display:block}.metric-card strong{letter-spacing:-.04em;margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.05;display:block}.metric-card p{color:var(--muted);margin:0;font-size:.88rem}.metric-card.accent{color:#fff;background:var(--black)}.metric-card.accent :is(span,strong,p){color:inherit}.course-progress{border:1px solid var(--line);background:var(--paper);padding:20px 22px}.course-progress-copy{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:12px;display:flex}.course-progress-copy span,.course-progress p{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font:500 .68rem IBM Plex Mono,monospace}.course-progress-copy strong{font:600 1rem IBM Plex Mono,monospace}.course-progress-track{border:1px solid var(--black);background:var(--soft);height:9px}.course-progress-track span{background:var(--black);height:100%;transition:width .5s ease-out;display:block}.course-progress p{letter-spacing:0;text-transform:none;margin:10px 0 0}.activity-panel{border:1px solid var(--line);background:var(--paper);padding:24px}.activity-header,.activity-footer,.streak-stats,.activity-chart,.activity-legend{align-items:center;display:flex}.activity-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px}.activity-header h2{letter-spacing:-.025em;margin:0;font-size:1.35rem}.streak-stats{gap:22px}.streak-stats span{color:var(--muted);text-align:right;gap:2px;font:400 .64rem IBM Plex Mono,monospace;display:grid}.streak-stats strong{color:var(--black);font-size:1.05rem}.activity-scroll{scrollbar-color:var(--line-dark) transparent;scrollbar-width:thin;padding-bottom:4px;overflow-x:auto}.activity-chart{align-items:stretch;width:max-content;min-width:100%}.activity-weekdays{width:24px;color:var(--muted);grid-template-rows:repeat(7,11px);gap:4px;margin-right:8px;font:400 .56rem IBM Plex Mono,monospace;display:grid}.activity-day{background:#efefec;border:1px solid #deded9;width:11px;height:11px;display:block}.activity-day.level-1{background:#c8c8c3;border-color:#c8c8c3}.activity-day.level-2{background:#91918c;border-color:#91918c}.activity-day.level-3{background:#555552;border-color:#555552}.activity-day.level-4{border-color:var(--black);background:var(--black)}.activity-footer{color:var(--muted);justify-content:space-between;gap:20px;margin-top:18px;font-size:.72rem}.activity-legend{flex:none;gap:4px;font:400 .6rem IBM Plex Mono,monospace}.activity-legend i:first-of-type{margin-left:4px}.activity-legend i:last-of-type{margin-right:4px}.toolbar{border-bottom:1px solid var(--black);justify-content:space-between;align-items:end;gap:24px;padding:30px 0 14px;display:flex}.search-input,.auth-form input{border:1px solid var(--line-dark);width:100%;color:var(--black);background:var(--paper);border-radius:0;outline:none;padding:11px 12px}.search-input{max-width:340px}.search-input:focus,.auth-form input:focus,.code-editor:focus{border-color:var(--black);box-shadow:0 0 0 1px var(--black)}.module-card{border:1px solid var(--line);background:var(--paper);overflow:hidden}.module-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:22px;padding:18px 20px;list-style:none;display:flex}.module-summary::-webkit-details-marker{display:none}.module-summary-main,.module-summary-meta{align-items:center;gap:16px;display:flex}.module-mark{border:1px solid var(--black);letter-spacing:.06em;text-transform:uppercase;flex:none;padding:4px 7px;font:500 .62rem IBM Plex Mono,monospace}.module-summary h2{letter-spacing:-.015em;font-size:1.1rem}.module-card-copy{color:var(--muted);margin:3px 0 0;font-size:.82rem}.module-progress-copy{color:var(--muted);white-space:nowrap;font:400 .72rem IBM Plex Mono,monospace}.module-chevron{font-size:1.05rem;transition:transform .15s}.module-details[open] .module-chevron{transform:rotate(180deg)}.module-progress-track span{background:var(--black);height:100%;display:block}.module-footer{border-top:1px solid var(--line);background:#f7f7f5;justify-content:flex-end;padding:14px 20px;display:flex}.module-open-link,.outline-link,.solid-link{border:1px solid var(--black);width:max-content;padding:9px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.module-open-link:hover,.outline-link:hover,.solid-link{color:#fff;background:var(--black)}.solid-link:hover{color:var(--black);background:#fff}.lesson-tile{border-top:1px solid var(--line);background:#fff;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:58px;padding:11px 20px;display:grid}.lesson-status{border:1px solid var(--line-dark);color:#555;border-radius:50%;place-items:center;width:25px;height:25px;font:500 .67rem IBM Plex Mono,monospace;display:grid}.lesson-status.done{color:#fff;border-color:var(--success);background:var(--success)}.lesson-tile-content{gap:4px;min-width:0;display:grid}.lesson-tile-content strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:500;overflow:hidden}.lesson-stages{color:var(--muted);flex-wrap:wrap;gap:12px;font:400 .67rem IBM Plex Mono,monospace;display:flex}.lesson-stages span:before{content:"·";margin-right:5px}.lesson-points{color:#555;font:500 .7rem IBM Plex Mono,monospace}.lesson-layout{max-width:920px;margin:0 auto}.dashboard-actions{grid-template-columns:1.25fr .75fr;gap:16px;display:grid}.dashboard-action{border:1px solid var(--line);background:#fff;align-content:start;min-height:230px;padding:28px;display:grid}.dashboard-action h2,.module-roadmap h2,.module-quiz h2{letter-spacing:-.025em;margin:0}.dashboard-action>p:not(.eyebrow){max-width:52ch;color:var(--muted);margin:10px 0 28px}.dashboard-action :is(.solid-link,.outline-link){align-self:end;margin-top:auto}.primary-action{border-color:var(--black)}.module-page-layout{gap:40px;max-width:920px;margin:0 auto;display:grid}.tests-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:24px;display:grid}.test-catalog{border:1px solid var(--line);background:var(--paper);display:grid;position:sticky;top:82px}.test-catalog-item{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;grid-template-columns:auto 1fr;gap:5px 12px;padding:18px;display:grid}.test-catalog-item:last-child{border-bottom:0}.test-catalog-item>span{color:var(--muted);grid-row:1/3;font:500 .68rem IBM Plex Mono,monospace}.test-catalog-item small{color:var(--muted);font:400 .66rem IBM Plex Mono,monospace}.test-catalog-item:is(:hover,.active) :is(span,small){color:#bdbdb8}.standalone-test{gap:16px;min-width:0;display:grid}.test-source{border:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;padding:18px 20px;display:grid}.test-source p:not(.eyebrow){color:var(--muted);margin:0;font-size:.84rem}.test-source>a{border-bottom:1px solid var(--line-dark);align-self:start;padding-bottom:2px;font-size:.78rem;font-weight:600}.test-source>small{color:var(--muted);grid-column:1/-1;font:400 .64rem IBM Plex Mono,monospace}.module-roadmap,.module-quiz{border:1px solid var(--line);background:#fff}.module-roadmap-header,.module-quiz-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:24px;display:flex}.module-roadmap-header>span{color:#fff;background:var(--black);padding:5px 8px;font:500 .72rem IBM Plex Mono,monospace}.module-roadmap-list{display:grid}.roadmap-lesson{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:16px;min-height:72px;padding:14px 20px;display:grid}.roadmap-lesson:last-child{border-bottom:0}.roadmap-number{border:1px solid var(--line-dark);border-radius:0;place-items:center;width:32px;height:32px;font:500 .7rem IBM Plex Mono,monospace;display:grid}.roadmap-lesson.complete .roadmap-number{color:var(--step-green);border-color:var(--step-green);background:var(--step-green-soft)}.roadmap-copy,.roadmap-final>span:nth-child(2){gap:3px;display:grid}.roadmap-lesson strong{font-size:.95rem}.roadmap-lesson small,.roadmap-final small,.roadmap-action{color:var(--muted);font-size:.74rem}.stage-track{align-items:flex-start;gap:18px;display:flex}.stage-unit{justify-items:center;gap:5px;min-width:44px;display:grid;position:relative}.stage-unit+.stage-unit:before{content:"";background:var(--line-dark);width:18px;height:1px;position:absolute;top:15px;right:calc(50% + 15px)}.stage-unit.completed+.stage-unit:before,.stage-unit.completed:before{background:var(--step-green)}.stage-node{border:1px solid var(--line-dark);color:#555;background:#fff;place-items:center;width:32px;height:32px;font:600 .72rem IBM Plex Mono,monospace;display:grid}.stage-node.practice{letter-spacing:-.08em;font-size:.58rem}.stage-unit.current .stage-node{border:2px solid var(--black);color:var(--black);box-shadow:0 0 0 3px white, 0 0 0 4px var(--black)}.stage-unit.completed .stage-node,.roadmap-final.complete .stage-node{color:#fff;border-color:var(--step-green);background:var(--step-green)}.stage-unit>small{font:400 .56rem IBM Plex Mono,monospace}.roadmap-final{background:#f6f6f3;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;padding:14px 20px;display:grid}.roadmap-final:not(.locked):hover{background:var(--step-green-soft)}.roadmap-final.locked{cursor:not-allowed}.roadmap-final .final-quiz{border-color:var(--black);width:38px;height:38px;color:var(--black);font-size:.92rem}.module-quiz-header>div>p:not(.eyebrow){color:var(--muted);margin:8px 0 0;font-size:.86rem}.quiz-lock{border:1px solid var(--line-dark);color:#555;white-space:nowrap;padding:6px 9px;font:500 .68rem IBM Plex Mono,monospace}.quiz-questions{display:grid}.module-quiz.locked .quiz-questions{opacity:.48;pointer-events:none}.quiz-question{border:0;border-bottom:1px solid var(--line);min-width:0;margin:0;padding:24px}.quiz-question.correct{box-shadow:inset 4px 0 #303a31}.quiz-question.wrong{background:#f0f0ed;box-shadow:inset 4px 0 #777}.quiz-question legend{align-items:flex-start;gap:12px;width:100%;padding:0;font-weight:600;display:flex}.quiz-question legend>span{color:var(--muted);flex:none;font:500 .7rem IBM Plex Mono,monospace}.quiz-options{gap:8px;margin-top:18px;display:grid}.quiz-option{border:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr;align-items:flex-start;gap:12px;padding:12px;display:grid}.quiz-option:hover{border-color:var(--black)}.quiz-option input{width:16px;height:16px;accent-color:var(--black);margin-top:3px}.quiz-option span{font-size:.86rem;line-height:1.45}.match-exercise{gap:18px;margin-top:18px;display:grid}.answer-bank{border:1px dashed var(--line-dark);background:#f4f4f1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.draggable-answer{border:1px solid var(--black);cursor:grab;background:#fff;padding:10px;font-size:.76rem}.draggable-answer:active{cursor:grabbing}.match-items{gap:8px;display:grid}.match-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch;gap:8px;display:grid}.match-row>span,.drop-zone{border:1px solid var(--line);padding:11px;font-size:.78rem}.drop-zone{min-height:58px;color:var(--muted);border-style:dashed;place-items:center start;display:grid}.drop-zone.filled{color:var(--black);border-color:var(--black);background:#f4f4f1;border-style:solid}.question-feedback{text-transform:uppercase;margin:12px 0 0;font:600 .7rem IBM Plex Mono,monospace}.quiz-result{border:1px solid var(--black);align-items:center;gap:14px;margin:20px 24px 0;padding:14px;display:flex}.quiz-result strong{font:600 1.45rem IBM Plex Mono,monospace}.quiz-result.passed{color:#fff;background:var(--black)}.lesson-steps-nav{z-index:4;border:1px solid var(--black);background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:sticky;top:70px}.lesson-steps-nav a{border-right:1px solid var(--line);color:#555;text-align:center;padding:13px 14px;font:500 .72rem IBM Plex Mono,monospace}.lesson-steps-nav a:last-child{border-right:0}.panel{border:1px solid var(--line);background:var(--paper);padding:30px;scroll-margin-top:136px}.panel-header,.runner-top{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.panel h2{font-size:clamp(1.35rem,2.5vw,1.8rem)}#cards .eyebrow:before{content:"Шаг 03 · "}#practice .eyebrow:before{content:"Шаг 04 · "}.spotlight{border-color:var(--black);border-width:2px}.primary-button,.ghost-button,.auth-switch button{border:1px solid var(--black);border-radius:0;min-height:40px;padding:9px 14px;font-weight:600}.primary-button{color:#fff;background:var(--black)}.ghost-button,.auth-switch button,.primary-button:hover{color:var(--black);background:#fff}.ghost-button:hover,.auth-switch button:hover{color:#fff;background:var(--black)}.primary-button:disabled,.ghost-button:disabled{opacity:.42;cursor:not-allowed}.pill,.status-chip{border:1px solid var(--line);color:#555;text-transform:uppercase;background:#f5f5f2;align-items:center;padding:5px 8px;font:400 .65rem IBM Plex Mono,monospace;display:inline-flex}.status-chip.off{color:#666;background:#e5e5e2}.lesson-meta{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.markdown-body.compact{font-size:1.08rem;font-weight:500}.markdown-body :is(h1,h2,h3,h4){letter-spacing:-.02em;margin-top:1.6em}.markdown-body code,.code-editor,.runner-output{font-family:IBM Plex Mono,monospace}.markdown-body code:not(pre code){background:#f4f4f1;border:1px solid #ddd;padding:1px 4px}.syntax-code-block{color:#d4d4d4;background:#1e1e1e;border:1px solid #333;margin:18px 0;font-size:.86rem;overflow:hidden}.syntax-code-header{color:#aaa;letter-spacing:.08em;text-transform:uppercase;background:#181818;border-bottom:1px solid #333;justify-content:space-between;align-items:center;padding:7px 11px;font:500 .62rem IBM Plex Mono,monospace;display:flex}.syntax-code-block pre{border:0!important;font-family:IBM Plex Mono,monospace!important;line-height:1.6!important}.markdown-body pre,.code-editor,.runner-output{color:#f4f4f4;background:#151515;border:1px solid #333;border-radius:0;padding:18px;overflow:auto}.ide-shell{color:#d4d4d4;background:#1e1e1e;border:1px solid #333;margin:24px 0;font-family:IBM Plex Mono,monospace;overflow:hidden}.ide-titlebar,.ide-tabbar,.terminal-tabs,.ide-footer{align-items:center;display:flex}.ide-titlebar{color:#aaa;background:#181818;border-bottom:1px solid #3a3a3a;justify-content:center;min-height:36px;font-size:.68rem;position:relative}.window-controls{gap:6px;display:flex;position:absolute;left:12px}.window-controls span{background:#656565;border-radius:50%;width:9px;height:9px}.window-controls span:first-child{background:#9a5555}.window-controls span:nth-child(2){background:#9a8955}.ide-status{color:#8f8f8f;position:absolute;right:12px}.ide-status:before{content:"";background:#777;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.ide-status.online:before{background:#6a9955}.ide-tabbar{background:#252526;border-bottom:1px solid #333;justify-content:space-between;min-height:39px}.ide-tab{color:#aaa;border-right:1px solid #333;align-self:stretch;align-items:center;gap:8px;padding:0 14px;font-size:.72rem;display:flex}.ide-tab.active{color:#fff;background:#1e1e1e;border-top:1px solid #fff}.ide-tab b{color:#4ec9b0;font-size:.62rem}.run-code-button{color:#f0f0f0;background:#2d2d30;border:0;border-left:1px solid #3a3a3a;align-self:stretch;align-items:center;gap:7px;padding:0 14px;font:500 .68rem IBM Plex Mono,monospace;display:flex}.run-code-button:hover:not(:disabled){background:#3a3a3d}.run-code-button>span{color:#6a9955}.run-code-button:disabled{opacity:.45;cursor:not-allowed}.ide-shell .cm-editor{font-size:.82rem}.ide-shell .cm-scroller{font-family:IBM Plex Mono,monospace;line-height:1.65}.ide-shell .cm-editor.cm-focused{outline:none}.terminal-panel{background:#181818;border-top:1px solid #3a3a3a}.terminal-tabs{color:#888;gap:18px;height:34px;padding:0 14px;font-size:.62rem}.terminal-tabs span{align-self:stretch;align-items:center;display:flex}.terminal-tabs .active{color:#fff;border-bottom:1px solid #fff}.terminal-panel pre{color:#d4d4d4;white-space:pre-wrap;background:#181818;border:0;min-height:112px;margin:0;padding:12px 14px 18px;font:400 .75rem/1.6 IBM Plex Mono,monospace}.terminal-panel pre.terminal-error{color:#f48771}.terminal-prompt{color:#4ec9b0}.ide-footer{color:#fff;background:#303030;justify-content:flex-end;gap:16px;min-height:23px;padding:0 10px;font-size:.58rem}.flashcard{border:1px solid var(--black);width:100%;min-height:230px;color:var(--black);text-align:left;background:#fff;border-radius:0;padding:28px}.flashcard:hover{box-shadow:7px 7px 0 var(--black);transform:translate(-3px,-3px)}.flashcard.revealed{color:#fff;background:var(--black)}.flashcard-label,.card-counter{letter-spacing:.08em;text-transform:uppercase;font:500 .66rem IBM Plex Mono,monospace}.flashcard-body{text-align:center;place-items:center;min-height:145px;font-size:1.08rem;display:grid}.flashcard-controls{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:14px 0;display:grid}.card-counter{color:var(--muted);justify-self:center}.checklist{border:1px solid var(--line);background:var(--line);gap:1px}.checklist-item{background:#fff;align-items:flex-start;gap:12px;padding:14px;display:flex}.checklist-item input{width:16px;height:16px;accent-color:var(--black)}.runner{border-top:1px solid var(--line);gap:12px;margin:24px 0;padding-top:24px}.runner-top p{color:var(--muted);margin:5px 0 0}.code-editor{resize:vertical;width:100%;min-height:220px}.runner-actions{justify-content:flex-end;display:flex}.runner-output{white-space:pre-wrap;overflow-wrap:anywhere;min-height:140px}.muted-box,.error-box,.error-text{border:1px solid var(--line);background:#fff;margin:0;padding:14px}.muted-box{color:var(--muted)}.error-box,.error-text{color:#111;background:#eee;border-color:#111}.auth-layout{border:1px solid var(--black);background:#fff;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);width:min(1080px,100% - 48px);min-height:620px;margin:48px auto;display:grid}.auth-hero,.auth-card{padding:clamp(32px,6vw,64px)}.auth-hero{color:#fff;background:var(--black)}.auth-hero .eyebrow,.auth-hero h1,.auth-hero p{color:#fff}.auth-hero h1{max-width:12ch;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}.auth-hero>p:last-of-type{color:#bdbdbd;max-width:55ch}.hero-stats{border-top:1px solid #444;gap:0;margin-top:48px;display:grid}.hero-stats>div{border-bottom:1px solid #444;grid-template-columns:150px 1fr;gap:18px;padding:14px 0;display:grid}.hero-stats strong{font-size:.88rem}.hero-stats span{color:#aaa;font-size:.8rem}.auth-card{align-self:center}.auth-switch{grid-template-columns:1fr 1fr;margin-bottom:28px;display:grid}.auth-switch .active{color:#fff;background:var(--black)}.auth-form label{color:#444;gap:7px;font-size:.82rem;display:grid}@media (width<=820px){.topbar{grid-template-columns:1fr auto;padding:0 16px}.top-nav,.account-email{display:none}.page-frame{width:min(100% - 28px,1120px);padding-top:30px}.overview-grid,.dashboard-actions,.auth-layout,.tests-layout{grid-template-columns:1fr}.test-catalog{position:static}.test-source{grid-template-columns:1fr}.test-source>small{grid-column:auto}.metric-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.metric-card:last-child{border-bottom:0}.activity-header,.activity-footer{flex-direction:column;align-items:flex-start}.streak-stats{justify-content:space-between;width:100%}.streak-stats span{text-align:left}.toolbar,.panel-header,.runner-top{flex-direction:column;align-items:stretch}.search-input{max-width:none}.module-summary{align-items:flex-start}.module-summary-meta{flex-direction:column-reverse;align-items:flex-end}.module-mark,.module-card-copy,.lesson-stages{display:none}.lesson-steps-nav{grid-template-columns:repeat(4,minmax(105px,1fr));top:58px;overflow-x:auto}.panel{padding:20px}.auth-layout{width:min(100% - 28px,1080px);margin:14px auto}.auth-hero,.auth-card{padding:28px}.answer-bank,.match-row{grid-template-columns:1fr}.module-roadmap-header,.module-quiz-header{flex-direction:column}.roadmap-lesson{grid-template-columns:auto minmax(0,1fr)}.roadmap-lesson .stage-track{grid-column:2;margin-top:8px}.roadmap-lesson>.roadmap-action{display:none}}@media (width<=520px){.wordmark>span:last-child,.points-counter{display:none}.page-heading h1{font-size:2.2rem}.lesson-tile{padding:11px 12px}.module-progress-copy{display:none}.stage-track{gap:10px}.stage-unit+.stage-unit:before{width:10px}.stage-unit>small{display:none}.hero-stats>div{grid-template-columns:1fr;gap:4px}}:root{--black:#171a17;--ink:#252925;--muted:#71776f;--line:#dfe2dc;--line-dark:#b9beb6;--paper:#fff;--canvas:#f4f5f1;--soft:#eceee9;--success:#27864d;--step-green:#27864d;--step-green-soft:#e7f4eb;--rail:#171a17;--rail-muted:#999f98;--radius:12px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--sans:"Helvetica Local", "Helvetica Neue", Helvetica, sans-serif;--mono:"JetBrains Mono", monospace}body{color:var(--ink);background:var(--canvas);font-family:var(--sans)}button,input,textarea{font-family:inherit}.app-shell{min-height:100vh}.mobile-shell-bar,.mobile-bottom-nav,.sidebar-scrim{display:none}.app-shell:before{content:"";z-index:40;background:var(--rail);border-bottom:1px solid #303530;height:84px;position:fixed;inset:0 0 auto 264px}.topbar{z-index:45;color:#fff;background:var(--rail);border:0;flex-direction:column;width:264px;min-height:100vh;padding:30px 24px 24px;transition:width .18s,transform .22s;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-toggle{z-index:2;color:#d9ddd7;background:var(--rail);border:1px solid #414741;border-radius:9px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:28px;right:-15px;box-shadow:0 5px 16px #0000002e}.sidebar-toggle:hover{color:var(--black);background:#fff;border-color:#fff}.sidebar-toggle svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;transition:transform .18s;transform:rotate(180deg)}.wordmark{color:#fff;align-items:center;gap:12px;width:100%;display:flex}.wordmark-mark{width:38px;height:38px;color:var(--rail);font:700 .7rem var(--mono);background:#fff;border:1px solid #4a4f49;border-radius:9px}.wordmark>span:last-child{gap:1px;display:grid}.wordmark strong{letter-spacing:-.02em;font-size:.92rem}.wordmark small{color:var(--rail-muted);font:400 .57rem var(--mono);letter-spacing:.04em}.nav-kicker{color:#777d76;font:500 .58rem var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:56px 12px 12px}.top-nav{color:#b9beb8;gap:7px;width:100%;display:grid}.top-nav a{border:0;border-radius:8px;grid-template-columns:30px 1fr;align-items:center;gap:8px;padding:13px 14px;font-size:.84rem;font-weight:600;display:grid}.top-nav a>span{color:#737a72;font:500 .58rem var(--mono)}.top-nav a>.nav-label{color:inherit;font:inherit}.top-nav a:hover{color:#fff;background:#242824;border:0}.top-nav a.active{color:var(--rail);background:#fff}.top-nav a.active>span{color:var(--success)}.sidebar-progress{border-top:1px solid #343934;gap:3px;width:100%;margin-top:auto;padding:20px 14px 4px;display:grid}.sidebar-progress>span,.sidebar-progress small{color:var(--rail-muted);font:500 .68rem var(--mono)}.sidebar-progress strong{color:#fff;letter-spacing:-.04em;margin:3px 0;font-size:1.5rem}.sidebar-progress small{font-size:.62rem}.user-dock{z-index:50;box-shadow:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:0 0;border:0;border-radius:14px;align-items:center;gap:8px;padding:0;display:flex;position:fixed;top:22px;right:30px}.notifications-menu{position:relative}.notifications-menu summary,.dock-logout{color:#dfe3dd;cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;width:42px;height:42px;padding:0;list-style:none;display:grid;position:relative}.notifications-menu summary::-webkit-details-marker{display:none}.notifications-menu summary:hover,.notifications-menu[open] summary,.dock-logout:hover{color:#fff;background:#2a2f2a}.notifications-menu svg,.dock-logout svg,.profile-dock-link>svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px}.notification-dot{border:2px solid var(--rail);background:var(--success);border-radius:50%;width:7px;height:7px;position:absolute;top:9px;right:9px}.notifications-popover{background:#fff;border:1px solid #d7dad4;border-radius:15px;width:min(370px,100vw - 28px);padding:10px;position:absolute;top:calc(100% + 13px);right:-128px;box-shadow:0 20px 55px #171a1729}.notifications-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 12px 15px;display:flex}.notifications-heading span{color:var(--muted);font-size:.72rem}.notifications-popover article{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr;gap:12px;padding:14px 12px;display:grid}.achievement-mark{color:#176c3b;background:var(--step-green-soft);width:34px;height:34px;font:700 .66rem var(--mono);border-radius:9px;place-items:center;display:grid}.notifications-popover article strong{font-size:.85rem}.notifications-popover article p{color:var(--muted);margin:4px 0 0;font-size:.76rem;line-height:1.45}.notifications-popover>a{color:var(--success);padding:13px 12px 8px;font-size:.78rem;font-weight:750;display:block}.profile-dock-link{min-width:210px;color:var(--black);background:#fff;border-radius:10px;grid-template-columns:38px minmax(110px,1fr) auto;align-items:center;gap:10px;padding:3px 8px 3px 3px;display:grid;box-shadow:0 8px 24px #00000024}.profile-dock-link:hover,.profile-dock-link.active{background:#edf6ef}.dock-avatar{color:#fff;background:var(--success);width:38px;height:38px;font:700 .7rem var(--mono);border-radius:9px;place-items:center;display:grid}.dock-user-copy{gap:1px;min-width:0;display:grid}.dock-user-copy strong{font-size:.78rem}.dock-user-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.profile-dock-link>svg{color:#7f867e;width:15px}.app-shell.sidebar-collapsed:before{left:82px}.app-shell.sidebar-collapsed .topbar{width:82px;padding-inline:14px}.app-shell.sidebar-collapsed .wordmark{justify-content:center}.app-shell.sidebar-collapsed .wordmark>span:last-child,.app-shell.sidebar-collapsed .nav-kicker,.app-shell.sidebar-collapsed .sidebar-progress,.app-shell.sidebar-collapsed .nav-label{display:none}.app-shell.sidebar-collapsed .top-nav{margin-top:58px}.app-shell.sidebar-collapsed .top-nav a{grid-template-columns:1fr;place-items:center;padding:14px 8px;display:grid}.app-shell.sidebar-collapsed .top-nav a>.nav-index{color:inherit;font-size:.66rem}.app-shell.sidebar-collapsed .sidebar-toggle svg{transform:none}.app-shell.sidebar-collapsed .page-frame{margin-left:82px}.page-frame{width:auto;max-width:none;margin:0 0 0 264px;padding:112px clamp(32px,5vw,72px) 84px}.page-heading{max-width:900px;margin:0 0 38px}.page-heading.has-aside{grid-template-columns:minmax(0,1fr) minmax(290px,360px);align-items:end;gap:clamp(28px,5vw,72px);max-width:1320px;display:grid}.page-heading-copy{min-width:0}.page-heading.has-aside .page-heading-copy{max-width:820px}.page-heading-aside{min-width:0}.page-content{max-width:1320px}.breadcrumbs ol{font:500 .62rem var(--mono)}.breadcrumbs li+li:before{content:"›";color:#a4aaa2;margin:0 9px}.breadcrumbs a{color:var(--muted)}.breadcrumbs [aria-current=page] span{color:var(--ink)}.eyebrow{color:var(--success);font:600 .59rem var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px}.page-heading h1{color:var(--black);letter-spacing:-.055em;margin:0 0 10px;font-size:clamp(2.2rem,4.4vw,4.4rem);font-weight:700;line-height:1.01}.page-subtitle{max-width:720px;color:var(--muted);font-size:.98rem;line-height:1.65}.page-content,.lesson-layout{gap:20px}.primary-button,.ghost-button,.module-open-link,.outline-link,.solid-link{border:1px solid var(--black);border-radius:8px;min-height:42px;padding:10px 15px;font-size:.76rem;font-weight:700;transition:transform .12s,color .12s,background .12s}.primary-button,.solid-link{color:#fff;background:var(--black)}.primary-button:not(:disabled):hover,.solid-link:hover{color:#fff;background:#2b302b;transform:translateY(-1px)}.primary-button:disabled{color:#9ca19a;border-color:var(--line);background:var(--soft);cursor:default}.ghost-button,.outline-link,.module-open-link{color:var(--ink);background:#fff}.ghost-button:hover,.outline-link:hover,.module-open-link:hover{color:var(--ink);background:var(--soft)}.error-box,.muted-box{border:1px solid var(--line);background:#fff;border-radius:9px;padding:15px 17px;font-size:.82rem}.overview-grid{background:0 0;border:0;grid-template-columns:1.5fr .7fr .7fr;gap:12px;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-height:150px;padding:22px}.metric-card.accent{color:#fff;border-color:var(--black);background:var(--black)}.metric-card span{color:var(--muted);font:500 .58rem var(--mono);letter-spacing:.09em;margin-bottom:26px}.metric-card strong{font-size:clamp(1.65rem,3vw,2.6rem)}.metric-card p{font-size:.78rem;line-height:1.5}.course-progress,.activity-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:22px 24px}.course-progress-track{background:var(--soft);border:0;border-radius:999px;height:8px;overflow:hidden}.course-progress-track span{border-radius:inherit;background:var(--success)}.course-progress-copy span,.course-progress p{font-family:var(--mono)}.activity-panel{min-width:0;padding:30px 32px 0;overflow:hidden}.activity-header h2,.dashboard-action h2,.toolbar h2,.module-roadmap h2,.module-quiz h2,.panel h2{color:var(--black);letter-spacing:-.035em}.activity-day{background:#e8ebe6;border:0;border-radius:2px}.activity-day.level-1{background:#b9ddc4;border:0}.activity-day.level-2{background:#74bc8b;border:0}.activity-day.level-3{background:#3c9660;border:0}.activity-day.level-4{background:#1f6f40;border:0}.activity-header{margin-bottom:26px;display:block}.activity-header h2{margin:0;font-size:1.45rem;font-weight:650}.activity-scroll{scrollbar-color:var(--line-dark) transparent;scrollbar-width:thin;width:100%;min-width:0;max-width:100%;padding:0 0 8px;overflow-x:auto}.activity-calendar{width:max-content;min-width:100%}.activity-months{color:#858b83;min-width:581px;font:500 .64rem var(--mono);grid-template-columns:repeat(53,9px);column-gap:2px;margin:0 0 8px 31px;display:grid}.activity-months span{white-space:nowrap}.activity-chart{align-items:stretch;width:max-content;min-width:100%;display:flex}.activity-weekdays{color:#92978f;width:24px;font:500 .56rem var(--mono);grid-template-rows:repeat(7,9px);gap:2px;margin-right:7px;display:grid}.activity-weekdays span:first-child{grid-row:2}.activity-weekdays span:nth-child(2){grid-row:4}.activity-weekdays span:nth-child(3){grid-row:6}.activity-grid{grid-template-rows:repeat(7,9px);grid-auto-columns:9px;grid-auto-flow:column;gap:2px;display:grid}.activity-day{background:#e8ebe6;border:0;border-radius:1px;width:9px;height:9px;display:block}.activity-meta{color:#7a8078;justify-content:flex-end;align-items:center;gap:24px;margin-top:5px;font-size:.68rem;display:flex}.activity-legend{font:500 .62rem var(--mono);flex:none;align-items:center;gap:4px;display:flex}.activity-legend .activity-day{width:10px;height:10px}.activity-footer{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:0;margin:18px 0 0;padding:20px 0 24px;display:grid}.activity-footer article{border-right:1px solid var(--line);gap:3px;min-width:0;padding:0 22px;display:grid}.activity-footer article:first-child{padding-left:0}.activity-footer article:last-child{border-right:0;padding-right:0}.activity-footer strong{color:var(--black);letter-spacing:-.05em;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.1}.activity-footer span{color:var(--muted);font-size:.75rem;line-height:1.4}.dashboard-actions{grid-template-columns:1fr 1fr;gap:12px}.dashboard-action{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-height:210px;padding:24px}.dashboard-action.primary-action{border-color:var(--line)}.program-continue-card{color:#fff;background:var(--black);border:1px solid #343934;border-radius:15px;min-height:210px;padding:21px;display:grid}.program-continue-top{color:#aeb4ad;font:600 .6rem var(--mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.program-continue-top b{color:#7fd695;font-size:.7rem}.program-continue-card>small{color:#899089;margin-bottom:5px;font-size:.68rem}.program-continue-card>strong{letter-spacing:-.025em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.08rem;line-height:1.28;display:-webkit-box;overflow:hidden}.program-continue-actions{grid-template-columns:1fr auto;align-self:end;align-items:center;gap:8px;margin-top:24px;display:grid}.program-continue-actions a{border:1px solid #404640;border-radius:8px;min-height:38px;padding:10px 12px;font-size:.68rem;font-weight:700}.program-continue-actions a:first-child{color:var(--black);background:#fff;border-color:#fff;justify-content:space-between;display:flex}.program-continue-actions a:hover{color:var(--black);background:#7fd695;border-color:#7fd695}.program-header-review{color:#7fd695;align-self:end;margin-top:28px;font-size:.72rem;font-weight:700}.program-workspace{grid-template-columns:286px minmax(0,1fr);align-items:start;gap:clamp(24px,3vw,42px);display:grid}.program-overview{color:#fff;background:var(--black);border-radius:16px;padding:24px;position:sticky;top:104px;overflow:hidden}.program-overview-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.program-overview-label,.program-search-row>div>span{color:#aeb4ad;font:600 .62rem var(--mono);letter-spacing:.1em;text-transform:uppercase}.program-overview-head strong{letter-spacing:-.06em;font-size:2.35rem;line-height:.9}.program-overview-track{background:#353a35;border-radius:5px;height:5px;margin:22px 0 24px;overflow:hidden}.program-overview-track span{border-radius:inherit;background:#56bd76;height:100%;display:block}.program-stats{background:#343934;border-block:1px solid #343934;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 -24px;display:grid}.program-stats>div{background:var(--black);padding:17px 12px 16px}.program-stats dt{color:#929991;font:500 .58rem var(--mono);margin-bottom:6px}.program-stats dd{margin:0;font-size:1.15rem;font-weight:750}.program-stats dd span{color:#777e77;font-size:.72rem}.program-guide{grid-template-columns:27px minmax(0,1fr);gap:18px 12px;padding:26px 0;display:grid}.program-guide>span{color:#8f978e;width:27px;height:27px;font:600 .57rem var(--mono);border:1px solid #4a514a;border-radius:7px;place-items:center;display:grid}.program-guide p{gap:3px;margin:0;display:grid}.program-guide strong{font-size:.78rem}.program-guide small{color:#929991;font-size:.68rem;line-height:1.4}.program-review-link{color:#fff;border-top:1px solid #343934;justify-content:space-between;align-items:center;padding-top:17px;font-size:.73rem;font-weight:700;display:flex}.program-review-link:hover{color:#7fd695}.program-review-link span{font-size:1rem}.program-catalog{gap:42px;min-width:0;display:grid}.program-search-row{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:10px 0 18px;display:flex}.program-search-row>div{gap:4px;display:grid}.program-search-row>div>span{color:var(--muted)}.program-search-row>div>strong{font-size:1.08rem}.program-search{border:1px solid var(--line-dark);background:#fff;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;width:min(360px,52%);padding:0 14px;display:grid}.program-search>span{color:#8a9088;font-size:1.2rem}.program-search input{width:100%;min-height:44px;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:.82rem}.program-search:focus-within{border-color:var(--black);box-shadow:0 0 0 3px #171a1712}.program-section{gap:17px;display:grid}.program-section-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.program-section-heading>div{align-items:center;gap:13px;display:flex}.program-section-heading>div>span{color:#fff;background:var(--black);width:34px;height:34px;font:650 .62rem var(--mono);border-radius:9px;place-items:center;display:grid}.program-section-heading h2{letter-spacing:-.035em;margin:0;font-size:1.35rem}.program-section-heading p{color:var(--muted);margin:3px 0 0;font-size:.75rem}.program-section-heading>strong{color:var(--muted);font:600 .65rem var(--mono)}.toolbar{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px 20px}.program-toolbar{padding-top:18px}.search-input,.auth-form input{border:1px solid var(--line);background:#fafbf9;border-radius:8px;padding:12px 14px}.search-input:focus,.auth-form input:focus{border-color:var(--success);box-shadow:0 0 0 3px var(--step-green-soft)}.course-program{gap:8px;display:grid}.module-card{background:#fff;border:1px solid #d7dad4;border-radius:14px;overflow:hidden}.module-summary{min-height:92px;padding:18px 19px}.module-summary:hover{background:#f8f9f6}.module-mark{width:38px;height:38px;color:var(--black);font:700 .62rem var(--mono);background:#f5f6f2;border:1px solid #cfd3cc;border-radius:10px;place-items:center;padding:0;display:grid}.module-artwork{border-radius:14px;width:100%;height:auto;display:block;overflow:hidden}.module-artwork.compact{border-radius:10px;flex:0 0 112px;width:112px;height:64px}.artwork-base{fill:#171a17}.artwork-orbit{fill:var(--cover-accent);opacity:.2}.orbit-two{opacity:.1}.artwork-line,.artwork-grid path{fill:none;stroke:var(--cover-accent);stroke-width:1.5px;opacity:.32}.line-two{opacity:.14}.artwork-grid{opacity:0}.module-artwork.variant-2 .artwork-grid,.module-artwork.variant-4 .artwork-grid{opacity:.75}.module-artwork.variant-2 .artwork-orbit,.module-artwork.variant-3 .artwork-line,.module-artwork.variant-4 .orbit-one{opacity:.07}.module-artwork.variant-3 .artwork-grid{opacity:.28;transform-origin:260px 84px;transform:rotate(12deg)}.artwork-index,.artwork-symbol,.artwork-title{font-family:var(--sans)}.artwork-index{fill:#aeb4ad;font-family:var(--mono);letter-spacing:.08em;font-size:11px;font-weight:600}.artwork-symbol{fill:#fff;letter-spacing:-.04em;font-size:31px;font-weight:700}.artwork-title{fill:#c8cdc7;font-size:13px;font-weight:400}.module-artwork.compact .artwork-symbol{font-size:28px}.module-card-copy,.module-progress-copy,.lesson-stages,.lesson-points{font-family:var(--mono)}.module-progress-track{background:var(--soft);height:3px}.module-progress-track span{background:var(--success)}.lesson-tile{border-top-color:var(--line);min-height:66px;padding:12px 19px}.lesson-tile:hover{background:#f7f8f5;padding-left:20px}.lesson-status{width:28px;height:28px;font-family:var(--mono);border-radius:7px}.lesson-status.done{border-color:var(--success);background:var(--success)}.module-footer{border-top-color:var(--line);background:#fafbf9;padding:14px 20px}.question-deck-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.question-deck-card{min-height:205px;color:var(--ink);background:#fff;border:1px solid #d7dad4;border-radius:14px;grid-template-rows:auto auto auto 1fr auto;grid-template-columns:1fr auto;gap:0 18px;padding:21px;transition:color .17s,background .17s,transform .17s;display:grid;position:relative;overflow:hidden}.question-deck-card>.module-artwork{grid-area:1/1/auto/-1}.question-deck-card:hover{color:#fff;border-color:var(--black);background:var(--black);transform:translateY(-2px)}.deck-count{z-index:1;margin:var(--space-2);padding:var(--space-1);color:var(--muted);font:500 .62rem var(--mono);text-align:right;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0e0cb8;border:1px solid #ffffff24;border-radius:8px;grid-area:1/1/auto/-1;place-self:start end}.deck-count strong{color:var(--success);font-size:.84rem}.question-deck-card h3{margin:var(--space-3) 0 var(--space-1);letter-spacing:-.045em;grid-column:1/-1;font-size:1.42rem;line-height:1.05}.question-deck-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;margin:0 0 22px;font-size:.72rem;line-height:1.5;display:-webkit-box;overflow:hidden}.deck-action{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-self:end;align-items:center;padding-top:13px;font-size:.7rem;font-weight:750;display:flex}.deck-action b{font-size:.92rem}.question-deck-card:hover :is(.deck-index,.deck-count,p){color:#aeb4ad}.question-deck-card:hover .deck-count strong{color:#7fd695}.question-deck-card:hover .deck-action{border-top-color:#3b403b}.module-page-layout,.lesson-layout{max-width:980px}.module-page-layout{gap:22px}.module-roadmap,.module-quiz{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.module-roadmap-header,.module-quiz-header{border-bottom-color:var(--line);padding:22px 24px}.module-roadmap-header>span{font:600 .65rem var(--mono);border-radius:7px;padding:6px 9px}.roadmap-lesson{border-bottom-color:var(--line);min-height:80px;padding:14px 20px}.roadmap-lesson:hover{background:#f8f9f6}.roadmap-number,.stage-node{font-family:var(--mono);border-radius:7px}.stage-unit.current .stage-node{border-color:var(--black);box-shadow:0 0 0 3px white, 0 0 0 5px var(--black)}.stage-unit.completed .stage-node,.roadmap-final.complete .stage-node{border-color:var(--success);background:var(--success)}.stage-unit+.stage-unit:before{background:var(--line-dark)}.roadmap-final{background:#f7f9f6}.roadmap-final .final-quiz{border-radius:9px}.lesson-steps-nav{z-index:12;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));top:94px;overflow:hidden;box-shadow:0 8px 28px #171a1714}.lesson-steps-nav a{border-right-color:var(--line);font:500 .64rem var(--mono);justify-content:center;align-items:center;gap:8px;padding:13px 12px;display:flex;position:relative}.lesson-steps-nav a>span{color:#959b93;font-size:.64rem}.lesson-steps-nav a.completed:not(.active){color:var(--success);background:#f4faf6}.lesson-steps-nav a.active{color:#fff;background:var(--black)}.lesson-steps-nav a.active>span{color:#89c89c}.lesson-steps-nav a:hover,.lesson-steps-nav a:focus{color:#fff;background:var(--black)}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:28px}.panel.spotlight{border:1px solid #b9d9c2;border-left:5px solid var(--success);background:#fbfdfb}.pill,.status-chip{border:1px solid var(--line);font-family:var(--mono);background:#f7f8f5;border-radius:6px}.status-chip.ready{color:var(--success);background:var(--step-green-soft);border-color:#b9d9c2}.markdown-body{color:#303530;font-size:.96rem;line-height:1.78}.markdown-body.compact{background:var(--step-green-soft);border-radius:9px;padding:20px;font-size:1.02rem}.markdown-body h2,.markdown-body h3{color:var(--black);letter-spacing:-.025em}.markdown-body :not(pre)>code{color:#245f39;font-family:var(--mono);background:#f0f4ef;border:1px solid #dde1da;border-radius:4px;padding:2px 5px}.imported-theory{gap:24px;display:grid}.imported-theory-header{border:1px solid var(--line);background:#f7f8f5;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px;display:flex}.imported-theory-header h3{color:var(--black);letter-spacing:-.035em;margin:4px 0 8px;font-size:clamp(1.5rem,3vw,2rem)}.imported-theory-header p:last-child{max-width:660px;color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.imported-theory-header>span{border:1px solid var(--line-dark);color:var(--muted);font:650 .66rem var(--mono);background:#fff;border-radius:7px;flex:none;padding:8px 10px}.imported-theory-list{border:1px solid var(--line);border-radius:12px;display:grid;overflow:hidden}.imported-theory-section{background:#fff;grid-template-columns:56px minmax(0,1fr);display:grid}.imported-theory-section+.imported-theory-section{border-top:1px solid var(--line)}.imported-theory-index{color:var(--success);border-right:1px solid var(--line);text-align:center;font:700 .68rem var(--mono);background:#f7f8f5;padding:24px 8px}.imported-theory-content{min-width:0;padding:24px}.imported-theory-content h4{max-width:800px;color:var(--black);letter-spacing:-.015em;margin:0 0 16px;font-size:1.1rem;line-height:1.45}.imported-theory-content .markdown-body>:first-child{margin-top:0}.imported-theory-content .markdown-body>:last-child{margin-bottom:0}@media (width<=720px){.imported-theory-header{flex-direction:column;align-items:stretch;padding:16px}.imported-theory-header>span{align-self:flex-start}.imported-theory-section{grid-template-columns:40px minmax(0,1fr)}.imported-theory-index,.imported-theory-content{padding:16px 8px}.imported-theory-content{padding-left:16px;padding-right:16px}}.syntax-code-block,.ide-shell{border-radius:10px;overflow:hidden}.flashcard{border:1px solid var(--black);min-height:390px;color:var(--ink);background:#fff;border-radius:14px;grid-template-rows:auto minmax(250px,1fr) auto;padding:0;display:grid;overflow:hidden;transform:none;box-shadow:0 14px 34px #171a1714}.flashcard:hover{border-color:var(--black);transform:none;box-shadow:0 18px 42px #171a171f}.flashcard.revealed{color:var(--ink);background:#fff;border-color:#8dbb9a;box-shadow:0 18px 42px #27864d1f}.flashcard-head,.flashcard-foot{justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.flashcard-head{color:#fff;background:var(--black)}.flashcard.revealed .flashcard-head{background:var(--success)}.flashcard-side{color:#aeb4ad;font-size:.76rem}.flashcard.revealed .flashcard-side{color:#d6eadc}.flashcard-label,.card-counter{font-family:var(--mono)}.flashcard-label{color:inherit;letter-spacing:.1em;text-transform:uppercase}.flashcard-body{text-align:center;place-items:center;min-height:0;padding:38px clamp(24px,6vw,70px);display:grid}.flashcard-body .markdown-content,.flashcard-body>*{max-width:720px}.flashcard-foot{color:var(--muted);border-top:1px solid var(--line);text-align:left;background:#fafbf9;font-size:.78rem}.flashcard-foot kbd{border:1px solid var(--line-dark);color:#60665f;font:500 .62rem var(--mono);box-shadow:0 2px 0 var(--line);background:#fff;border-radius:5px;padding:4px 7px}.flashcard-controls{grid-template-columns:auto minmax(160px,1fr) auto;margin:16px 0 20px}.deck-progress{justify-self:stretch;gap:8px;width:min(320px,100%);margin:0 auto;display:grid}.card-counter{color:var(--muted);letter-spacing:0;text-transform:none;justify-self:center}.deck-progress-track{background:var(--soft);border-radius:999px;height:5px;overflow:hidden}.deck-progress-track i{border-radius:inherit;background:var(--success);height:100%;transition:width .18s;display:block}.checklist{gap:8px}.checklist-item{border:1px solid var(--line);background:#fafbf9;border-radius:8px;padding:14px 15px}.checklist-item:has(input:checked){background:var(--step-green-soft);border-color:#9ac6a6}.ide-shell{border-color:#272b27;box-shadow:0 18px 40px #13161326}.lesson-pagination{z-index:14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #cfd3cc;border-radius:14px;min-height:72px;padding:8px;position:sticky;bottom:16px;box-shadow:0 16px 40px #171a1729}.lesson-pagination a{border:0}.lesson-pagination-back{color:var(--muted);align-items:center;gap:8px;padding:12px 16px;display:inline-flex}.lesson-pagination-next{color:#fff;background:var(--black);border-radius:9px;gap:2px;min-width:min(310px,52vw);padding:10px 16px;display:grid}.lesson-pagination-next small{color:#9ea59d;font:500 .58rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.lesson-pagination-next strong{justify-content:space-between;align-items:center;gap:16px;font-size:.88rem;display:flex}.lesson-pagination-next:hover{color:#fff;background:#2a302a}.quiz-questions{padding:0 24px}.quiz-question{border:0;border-bottom:1px solid var(--line);padding:24px 0}.quiz-question legend{margin-bottom:16px;font-size:.92rem}.quiz-option,.draggable-answer,.drop-zone{border:1px solid var(--line);background:#fafbf9;border-radius:8px}.quiz-option:hover,.draggable-answer:hover{border-color:var(--line-dark);background:#fff}.drop-zone.filled{background:var(--step-green-soft);border-color:#8dbb9a}.quiz-option:has(input:checked){background:var(--step-green-soft);border-color:#8dbb9a}.quiz-question.correct{background:0 0}.quiz-result{border-radius:9px;margin:20px 24px 0}.quiz-submit{margin:20px 24px 24px}.tests-layout{grid-template-columns:260px minmax(0,1fr);gap:16px}.test-catalog{scrollbar-width:thin;border:1px solid var(--line);border-radius:var(--radius);background:#fff;max-height:calc(100vh - 48px);top:24px;overflow:hidden auto}.test-catalog-item{border-bottom-color:var(--line);padding:17px}.test-catalog-item:hover,.test-catalog-item.active{color:#fff;background:var(--black)}.test-source{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:auto minmax(0,1fr);padding:18px 20px}.test-source>div{grid-column:1/-1}.test-source>a{justify-self:start}.test-source>small{grid-column:2;align-self:center}.profile-hero{color:#fff;background:var(--black);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:28px;display:grid}.profile-avatar{width:76px;height:76px;color:var(--black);font:700 1.35rem var(--mono);background:#fff;border:1px solid #515751;border-radius:18px;place-items:center;display:grid}.profile-identity{min-width:0}.profile-identity h2{color:#fff;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin:0 0 6px;font-size:clamp(1.45rem,3vw,2.25rem);overflow:hidden}.profile-identity>p:last-child{color:#aeb4ad;margin:0;font-size:.88rem}.profile-level{color:#d8ddd7;font:500 .76rem var(--mono);border:1px solid #4a504a;border-radius:8px;padding:8px 11px}.profile-stats{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.profile-stats article{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:6px;min-height:145px;padding:20px;display:grid}.profile-stats span,.profile-stats small{color:var(--muted);font:500 .76rem var(--mono)}.profile-stats strong{color:var(--black);letter-spacing:-.06em;align-self:end;font-size:2.2rem;line-height:1}.profile-stats small{font-size:.7rem;font-weight:400}.profile-columns{grid-template-columns:.9fr 1.1fr;gap:12px;display:grid}.profile-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:24px}.profile-card h2{color:var(--black);letter-spacing:-.035em;margin:0;font-size:1.4rem}.profile-progress-card{align-content:start;min-height:290px;display:grid}.profile-progress-card>strong{color:var(--success);letter-spacing:-.08em;margin:auto 0 18px;font-size:clamp(3.6rem,8vw,6.8rem);line-height:.9}.profile-progress-track{background:var(--soft);border-radius:999px;height:10px;overflow:hidden}.profile-progress-track span{border-radius:inherit;background:var(--success);height:100%;display:block}.profile-progress-card>p{color:var(--muted);margin:11px 0 0;font-size:.82rem}.achievement-list{gap:8px;margin-top:18px;display:grid}.achievement-list article{border:1px solid var(--line);color:#8c928a;background:#f8f9f6;border-radius:9px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:11px;display:grid}.achievement-list article>span{border:1px solid var(--line-dark);width:34px;height:34px;font:600 .72rem var(--mono);border-radius:8px;place-items:center;display:grid}.achievement-list article>div{gap:2px;display:grid}.achievement-list strong{font-size:.92rem}.achievement-list small{color:var(--muted);font-size:.74rem}.achievement-list article.unlocked{color:#195f36;background:var(--step-green-soft);border-color:#abd1b7}.achievement-list article.unlocked>span{color:#fff;border-color:var(--success);background:var(--success)}.test-results-card{grid-template-columns:250px minmax(0,1fr);gap:24px;display:grid}.profile-test-list{display:grid}.profile-test-list article{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:52px;display:grid}.profile-test-list article:last-child{border-bottom:0}.profile-test-list span{color:var(--muted);font:500 .68rem var(--mono)}.profile-test-list span.passed{color:var(--success)}.profile-test-list strong{font-size:.88rem}.profile-test-list b{font:600 .84rem var(--mono)}.auth-layout{background:#fff;border:1px solid #282c28;border-radius:18px;grid-template-columns:1.25fr .75fr;width:min(1120px,100% - 40px);min-height:680px;margin:28px auto;display:grid;overflow:hidden;box-shadow:0 24px 70px #14181424}.auth-hero{color:#fff;background:var(--black);flex-direction:column;justify-content:center;padding:64px;display:flex}.auth-hero h1{color:#fff;letter-spacing:-.06em;max-width:760px;font-size:clamp(2.7rem,5vw,5rem);line-height:.98}.auth-hero>p:not(.eyebrow){color:#aeb4ad;max-width:580px}.hero-stats{border-color:#393e39;margin-top:48px}.hero-stats>div{border-color:#393e39}.hero-stats span{color:#8e958d}.auth-card{align-self:center;padding:42px}.auth-switch{background:var(--soft);border-radius:9px;padding:4px}.auth-switch button{background:0 0;border:0;border-radius:7px}.auth-switch .active{color:var(--black);background:#fff;box-shadow:0 2px 8px #14181417}.auth-form{gap:20px}.auth-form label{font-weight:600}.oauth-entry{gap:10px;margin-bottom:20px;display:grid}.auth-section-label{color:var(--muted);font:700 .68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.oauth-provider-button{border:1px solid var(--black);color:#fff;background:var(--black);border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:10px 16px;font-size:.94rem;font-weight:700;transition:transform .16s,background .16s;display:flex}.oauth-provider-button:hover{color:#fff;background:#292d29;transform:translateY(-1px)}.oauth-provider-button svg{width:22px;height:22px}.oauth-provider-button.disabled{cursor:not-allowed;color:#7e837d;border-color:var(--line);background:var(--soft);transform:none}.google-oauth-button:not(.disabled){color:var(--black);background:#fff;border-color:#bfc3bd}.google-oauth-button:not(.disabled):hover{color:var(--black);background:#f5f6f3}.oauth-entry small{color:var(--muted);font-size:.72rem;line-height:1.45}.auth-divider{color:var(--muted);align-items:center;gap:10px;margin:20px 0;font-size:.72rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}html{font-size:17px}.wordmark strong{font-size:1.02rem}.wordmark small,.points-counter small,.account-email{font-size:.74rem}.nav-kicker{font-size:.72rem}.top-nav a{min-height:48px;font-size:.92rem}.top-nav a>span{font-size:.66rem}.points-counter strong{font-size:1.6rem}.text-button{font-size:.82rem}.breadcrumbs ol{font-size:.78rem}.eyebrow{font-size:.76rem}.page-subtitle{max-width:760px;font-size:1.08rem;line-height:1.62}.primary-button,.ghost-button,.module-open-link,.outline-link,.solid-link{min-height:46px;font-size:.86rem}.metric-card span{font-size:.74rem}.metric-card p{font-size:.9rem}.course-progress-copy span,.course-progress p{font-size:.8rem}.activity-header h2{font-size:1.55rem}.streak-stats span,.activity-footer{font-size:.78rem}.streak-stats strong{font-size:1.25rem}.activity-weekdays,.activity-legend{font-size:.72rem}.toolbar h2{font-size:1.7rem}.search-input,.auth-form input{min-height:48px;font-size:.96rem}.module-summary h2{font-size:1.12rem}.module-card-copy{font-size:.86rem}.module-progress-copy,.lesson-stages,.lesson-points{font-size:.78rem}.lesson-tile{min-height:68px}.lesson-tile-content strong{font-size:.98rem}.lesson-status{width:32px;height:32px;font-size:.76rem}.module-roadmap-header h2,.module-quiz-header h2{font-size:1.55rem}.roadmap-copy strong,.roadmap-final strong{font-size:1rem}.roadmap-lesson small,.roadmap-final small,.roadmap-action{font-size:.8rem}.stage-unit>small{font-size:.7rem}.lesson-steps-nav a{min-height:48px;font-size:.72rem}.panel{padding:32px}.panel-header h2{font-size:1.62rem}.pill,.status-chip{font-size:.78rem}.markdown-body{max-width:76ch;font-size:1.06rem;line-height:1.82}.markdown-body.compact{max-width:none;font-size:1.12rem;line-height:1.75}.markdown-body h2{font-size:1.8rem}.markdown-body h3{font-size:1.38rem}.flashcard-label,.card-counter{font-size:.8rem}.flashcard-body{font-size:1.12rem;line-height:1.7}.checklist-item{font-size:.96rem;line-height:1.55}.quiz-question legend{font-size:1.02rem;line-height:1.5}.quiz-option,.draggable-answer,.drop-zone,.match-row{font-size:.94rem}.test-catalog-item strong{font-size:.92rem}.test-catalog-item small,.test-source>small{font-size:.76rem}.test-source p:not(.eyebrow),.test-source>a{font-size:.86rem}.cm-editor,.terminal-panel pre{font-size:15px}@media (width<=980px){.app-shell:before{left:224px}.topbar{width:224px}.page-frame{margin-left:224px;padding:108px 30px 70px}.profile-dock-link{min-width:180px}.page-heading.has-aside{grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:24px}.program-workspace{grid-template-columns:220px minmax(0,1fr);gap:22px}.program-overview{padding:20px}.program-stats{grid-template-columns:1fr;margin-inline:-20px}.program-stats>div{justify-content:space-between;align-items:center;padding:11px 20px;display:flex}.program-stats dt{margin:0}.question-deck-grid{grid-template-columns:1fr}.roadmap-lesson{grid-template-columns:auto minmax(0,1fr)}.roadmap-lesson .stage-track{grid-column:2}.roadmap-lesson>.roadmap-action{display:none}}@media (width<=760px){.app-shell:before{display:none}.topbar{border-bottom:1px solid #333833;grid-template-columns:auto 1fr;width:100%;height:auto;min-height:62px;padding:10px 112px 10px 14px;display:grid;position:sticky;inset:0}.wordmark{width:auto}.wordmark-mark{width:34px;height:34px}.wordmark>span:last-child,.nav-kicker,.sidebar-progress{display:none}.top-nav{justify-content:center;gap:2px;width:auto;display:flex}.top-nav a{padding:9px 10px;font-size:.68rem;display:block}.top-nav a>span{display:none}.page-frame{width:min(100% - 28px,1120px);margin:0 auto;padding:26px 0 60px}.page-heading.has-aside{grid-template-columns:1fr}.program-continue-card{min-height:190px}.program-workspace{grid-template-columns:1fr}.program-overview{position:static}.program-stats{grid-template-columns:repeat(3,1fr)}.program-stats>div{padding:15px 12px;display:block}.program-stats dt{margin-bottom:5px}.program-guide{display:none}.program-review-link{margin-top:20px}.program-search-row{flex-direction:column;align-items:stretch}.program-search{width:100%}.user-dock{box-shadow:none;background:#171a17f5;border-color:#3a3f3a;gap:3px;padding:3px;top:9px;right:10px}.notifications-menu summary,.dock-logout{color:#dfe3dd;width:38px;height:38px}.profile-dock-link{min-width:0;padding:0;display:block}.dock-avatar{width:38px;height:38px;color:var(--black);background:#fff}.dock-user-copy,.profile-dock-link>svg,.dock-logout{display:none}.notifications-popover{position:fixed;top:62px;right:10px}.page-heading h1{font-size:clamp(2.2rem,11vw,3.4rem)}.overview-grid,.dashboard-actions,.tests-layout,.profile-columns,.test-results-card,.auth-layout{grid-template-columns:1fr}.profile-stats{grid-template-columns:1fr 1fr}.metric-card{min-height:126px}.activity-header,.activity-footer,.toolbar,.panel-header,.module-roadmap-header,.module-quiz-header{flex-direction:column;align-items:stretch}.activity-header,.panel-header{gap:16px}.test-catalog{position:static}.test-source{grid-template-columns:1fr}.test-source>div,.test-source>small{grid-column:1}.lesson-steps-nav{top:72px}.panel{padding:20px}.auth-layout{width:min(100% - 24px,680px);min-height:auto;margin:12px auto}.auth-hero,.auth-card{padding:34px 26px}.auth-hero h1{font-size:2.7rem}.hero-stats{margin-top:28px}.profile-hero{grid-template-columns:auto minmax(0,1fr)}.profile-level{grid-column:2;justify-self:start}}.answer-coach{background:linear-gradient(145deg,#f6f7f4 0%,#fff 58%);border:1px solid #cfd2cc;border-radius:20px;margin-top:48px;padding:32px}.answer-coach-heading,.answer-actions,.answer-complete{justify-content:space-between;align-items:center;gap:24px;display:flex}.answer-coach-heading h3{letter-spacing:-.04em;margin:4px 0 8px;font-size:clamp(1.65rem,3vw,2.35rem)}.answer-coach-heading p:last-child,.answer-actions span,.answer-complete p{color:#62665f;margin:0}.answer-provider{color:#4e534c;background:#fff;border:1px solid #cfd2cc;border-radius:999px;flex:none;padding:9px 12px;font-size:.78rem;font-weight:700}.answer-field{gap:9px;margin-top:28px;font-weight:750;display:grid}.answer-field textarea{resize:vertical;color:#171a17;width:100%;min-height:190px;font:inherit;background:#fff;border:1px solid #b8bcb5;border-radius:13px;outline:none;padding:18px 20px;font-size:1rem;line-height:1.65;transition:border-color .16s,box-shadow .16s}.answer-field textarea:focus{border-color:#171a17;box-shadow:0 0 0 3px #171a171a}.answer-field small{color:#737870;justify-self:end;font-weight:600}.answer-field small.invalid{color:#9b3d2d}.answer-actions{justify-content:flex-start;margin-top:16px}.answer-analysis{border-top:1px solid #d7dad4;grid-template-columns:132px minmax(0,1fr);gap:18px;margin-top:28px;padding-top:28px;display:grid}.answer-score{aspect-ratio:1;color:#176c3b;text-align:center;background:#eef8f1;border:1px solid #1f8b4c;border-radius:50%;place-content:center;display:grid}.answer-score strong{letter-spacing:-.06em;font-size:2.6rem;line-height:1}.answer-score span{margin-top:5px;font-size:.76rem;font-weight:700}.answer-verdict{align-self:center}.answer-verdict h4{max-width:680px;margin:5px 0 16px;font-size:1.35rem;line-height:1.3}.answer-score-track{background:#dfe2dc;border-radius:999px;height:7px;overflow:hidden}.answer-score-track span{border-radius:inherit;background:#1f8b4c;height:100%;transition:width .5s;display:block}.answer-feedback{background:#fff;border:1px solid #d7dad4;border-radius:14px;padding:22px}.answer-feedback.good{grid-column:1/2}.answer-feedback.improve{grid-column:2/3}.answer-feedback h4,.missing-concepts h4{margin:0 0 12px;font-size:.92rem}.answer-feedback ul{color:#4f544d;margin:0;padding-left:19px;line-height:1.55}.answer-feedback li+li{margin-top:8px}.missing-concepts,.answer-complete{grid-column:1/-1}.missing-concepts{padding:20px 0}.missing-concepts>div{flex-wrap:wrap;gap:8px;display:flex}.missing-concepts span{background:#fff;border:1px solid #bfc3bc;border-radius:7px;padding:8px 11px;font-size:.84rem;font-weight:750}.answer-complete{background:#171a17;border-radius:13px;padding:20px}.answer-complete p{color:#e1e4df}.answer-complete .primary-button{color:#171a17;background:#fff}.practice-guide{counter-reset:practice-step;background:#d2d5cf;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 28px;padding:1px;list-style:none;display:grid;overflow:hidden}.practice-guide li{counter-increment:practice-step;background:#f7f8f5;gap:7px;min-height:124px;padding:19px;display:grid}.practice-guide li:before{content:counter(practice-step, decimal-leading-zero);color:#7a7e77;letter-spacing:.08em;font-size:.72rem;font-weight:800}.practice-guide strong{font-size:1rem}.practice-guide span{color:#60655e;font-size:.84rem;line-height:1.45}.practice-intro{max-width:720px;color:var(--muted);margin:8px 0 0;font-size:.9rem;line-height:1.55}.practice-deck-note{border:1px solid var(--line);color:#555b54;background:#f7f8f5;border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:.78rem;line-height:1.5}.practice-answers{gap:12px;display:grid}.practice-answer{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:42px minmax(0,1fr);gap:12px 16px;padding:22px;transition:border-color .16s,background .16s;display:grid}.practice-answer.ready{background:#f7fbf8;border-color:#8fc8a0}.practice-question-number{color:#737970;width:38px;height:38px;font:700 .7rem var(--mono);border:1px solid #cfd3cc;border-radius:9px;place-items:center;display:grid}.practice-answer.ready .practice-question-number{color:#176c3b;background:var(--step-green-soft);border-color:#8fc8a0}.practice-answer>strong{align-self:center;font-size:.98rem;line-height:1.5}.practice-answer textarea{resize:vertical;width:100%;min-height:112px;color:var(--ink);background:#fafbf9;border:1px solid #c9cdc6;border-radius:10px;outline:none;grid-column:2;padding:14px 16px;font-size:.92rem;line-height:1.55}.practice-answer textarea:focus{border-color:var(--black);box-shadow:0 0 0 3px #171a1714}.practice-answer small{color:var(--muted);grid-column:2;justify-self:end;font-size:.68rem}.sandbox-disclosure{border:1px solid var(--line);background:#f7f8f5;border-radius:14px;margin-top:22px}.sandbox-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;list-style:none;display:flex}.sandbox-disclosure>summary::-webkit-details-marker{display:none}.sandbox-disclosure>summary>span:first-child{gap:3px;display:grid}.sandbox-disclosure summary strong{font-size:.9rem}.sandbox-disclosure summary small{color:var(--muted);font-size:.74rem}.sandbox-chevron{font-size:1.2rem;transition:transform .16s}.sandbox-disclosure[open] .sandbox-chevron{transform:rotate(180deg)}.sandbox-disclosure .ide-shell{margin:0 12px 12px}.practice-complete-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:22px;padding-top:20px;display:flex}.practice-complete-row>span{color:var(--muted);font-size:.78rem;font-weight:650}.lesson-quiz-list{gap:16px;display:grid}.lesson-quiz-question{border:1px solid var(--line);border-radius:14px;margin:0;padding:24px}.lesson-quiz-question legend{align-items:flex-start;gap:12px;max-width:880px;padding:0 8px;font-size:1rem;font-weight:750;line-height:1.5;display:flex}.lesson-quiz-question legend>span{color:var(--success);font:700 .68rem var(--mono);flex:none}.lesson-quiz-options{gap:9px;margin-top:14px;display:grid}.lesson-quiz-options label{cursor:pointer;background:#fafbf9;border:1px solid #d4d7d1;border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;padding:15px 16px;display:grid}.lesson-quiz-options label:hover{border-color:#9ca199}.lesson-quiz-options label.correct{background:#eff8f2;border-color:#62aa78}.lesson-quiz-options label.wrong{background:#fff5f3;border-color:#c98d82}.lesson-quiz-options input{opacity:0;pointer-events:none;position:absolute}.quiz-radio-mark{border:1px solid #9da29a;border-radius:50%;width:18px;height:18px;margin-top:3px;box-shadow:inset 0 0 0 4px #fafbf9}.lesson-quiz-options label.correct .quiz-radio-mark{border-color:var(--success);background:var(--success)}.lesson-quiz-options label.wrong .quiz-radio-mark{background:#a94f40;border-color:#a94f40}.lesson-quiz-options .markdown-content>:first-child,.lesson-quiz-options .markdown-content>:last-child{margin-top:0;margin-bottom:0}.quiz-feedback{margin:12px 0 0;font-size:.78rem;font-weight:700}.quiz-feedback.correct{color:#176c3b}.quiz-feedback.wrong{color:#963f31}.review-toolbar{border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:24px;padding:18px 20px;display:flex}.review-toolbar>div{align-items:baseline;gap:9px;display:flex}.review-toolbar>div span,.review-toolbar>div small{color:var(--muted);font-size:.75rem}.review-toolbar>div strong{font-size:1.5rem}.review-deck-select{grid-template-columns:auto minmax(150px,230px);align-items:center;gap:9px;margin-left:auto;display:grid}.review-deck-select>span{color:var(--muted);font:600 .62rem var(--mono);text-transform:uppercase}.review-deck-select select{border:1px solid var(--line-dark);min-height:40px;color:var(--ink);background:#fff;border-radius:9px;outline:0;padding:0 34px 0 11px;font-size:.76rem}.review-deck-select select:focus{border-color:var(--black);box-shadow:0 0 0 3px #171a1712}.free-review-toggle{cursor:pointer;align-items:center;gap:11px;display:flex}.free-review-toggle input{width:19px;height:19px;accent-color:var(--success)}.free-review-toggle>span{gap:2px;display:grid}.free-review-toggle strong{font-size:.82rem}.free-review-toggle small{color:var(--muted);font-size:.7rem}.review-session{max-width:900px;margin:22px auto 0}.review-context{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:10px;font-size:.72rem;display:grid}.review-context span{color:var(--success);font-weight:750}.review-context strong{color:var(--ink)}.review-card{width:100%;min-height:390px;color:var(--ink);text-align:left;background:#fff;border:1px solid #cfd3cc;border-radius:20px;grid-template-rows:auto 1fr auto;padding:28px;display:grid;box-shadow:0 18px 45px #171a1714}.review-card.revealed{background:#f5faf6;border-color:#79b98c}.review-details-link{border:1px solid var(--black);color:#fff;background:var(--black);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:10px;padding:14px 16px;font-size:.78rem;font-weight:750;display:flex}.review-details-link:hover{color:#fff;border-color:var(--success);background:var(--success)}.imported-theory-section{scroll-margin-top:170px}.imported-theory-section:target{border-color:var(--success);box-shadow:0 0 0 3px #27864d1f}.review-card-body{text-align:center;place-items:center;padding:34px 7%;font-size:1.15rem;line-height:1.7;display:grid}.review-space-hint{color:var(--muted);justify-content:center;align-items:center;gap:9px;font-size:.72rem;display:flex}.review-space-hint kbd{font:650 .62rem var(--mono);background:#fff;border:1px solid #c9cdc6;border-radius:5px;padding:4px 7px}.review-rating-actions{grid-template-columns:.8fr 1fr 1fr;gap:10px;margin-top:12px;display:grid}.review-rating-actions button{border:1px solid var(--line-dark);background:#fff;border-radius:11px;gap:3px;padding:15px;display:grid}.review-rating-actions button:disabled{opacity:.55;cursor:wait}.review-rating-actions button span{font-weight:750}.review-rating-actions button small{color:var(--muted)}.review-rating-actions .review-skip{color:#555b54;background:#f7f8f5}.review-rating-actions .review-easy{color:#176c3b;background:#f2f9f4;border-color:#79b98c}.review-instruction{color:var(--muted);text-align:center;font-size:.78rem}.review-empty{border:1px solid var(--line);text-align:center;background:#fff;border-radius:18px;place-items:center;min-height:360px;margin-top:22px;padding:40px;display:grid}.review-empty>span{color:#fff;background:var(--success);border-radius:50%;place-items:center;width:54px;height:54px;font-size:1.4rem;display:grid}.review-empty h2{margin:14px 0 5px}.review-empty p{color:var(--muted);margin:0}@media (width<=760px){.answer-coach{padding:22px}.answer-coach-heading,.answer-actions,.answer-complete{flex-direction:column;align-items:flex-start}.answer-analysis{grid-template-columns:1fr}.answer-score{width:116px}.answer-feedback.good,.answer-feedback.improve,.missing-concepts,.answer-complete{grid-column:1}.practice-guide{grid-template-columns:1fr 1fr}.practice-answer{grid-template-columns:1fr}.practice-answer textarea,.practice-answer small{grid-column:1}.practice-complete-row{flex-direction:column;align-items:stretch}.review-toolbar,.review-context{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.review-card{min-height:330px;padding:20px}.review-rating-actions{grid-template-columns:1fr}}@media (width<=520px){.program-section-heading{align-items:flex-start}.program-section-heading>strong{display:none}.question-deck-card{min-height:185px}.top-nav a{padding:9px 7px}.page-heading{margin-bottom:24px}.breadcrumbs{margin-bottom:20px}.overview-grid{gap:8px}.metric-card:first-child{grid-column:1/-1}.activity-panel,.course-progress{padding:18px}.streak-stats{gap:12px}.stage-track{gap:9px}.roadmap-lesson{padding:14px}.roadmap-number{display:none}.roadmap-lesson .roadmap-copy,.roadmap-lesson .stage-track{grid-column:1/-1}.roadmap-final{padding:14px}.flashcard{min-height:260px}.profile-hero{grid-template-columns:1fr}.profile-avatar{width:64px;height:64px}.profile-identity h2{white-space:normal}.profile-level{grid-column:1}.profile-stats{grid-template-columns:1fr}.profile-stats article{min-height:120px}.profile-test-list article{grid-template-columns:1fr auto}.profile-test-list span{grid-column:1/-1}.quiz-questions{padding:0 18px}.practice-guide{grid-template-columns:1fr}}@media (width<=760px){html{background:var(--rail)}body{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.topbar,.app-shell.sidebar-collapsed .topbar,.sidebar-scrim,.mobile-menu-button{display:none}.mobile-shell-bar{height:calc(64px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 64px 10px 16px}.mobile-brand{gap:10px}.user-dock{top:calc(10px + env(safe-area-inset-top))}.user-dock .profile-dock-link,.user-dock .dock-logout{display:none}.page-frame,.app-shell.sidebar-collapsed .page-frame{padding-top:calc(92px + env(safe-area-inset-top));padding-bottom:calc(112px + env(safe-area-inset-bottom))}.mobile-bottom-nav{z-index:75;min-height:68px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#171a17f7;border:1px solid #353a35;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset:auto 8px 8px;box-shadow:0 18px 46px #00000057}.mobile-bottom-nav a{color:#969d96;border-radius:12px;align-content:center;place-items:center;gap:4px;min-width:0;min-height:54px;padding:5px 2px;font-size:.61rem;font-weight:650;display:grid}.mobile-bottom-nav svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.mobile-bottom-nav a.active{color:#fff;background:#2a302a}.mobile-bottom-nav a.active svg{color:#78cc91}.lesson-pagination{bottom:calc(84px + env(safe-area-inset-bottom))}}@media (display-mode:standalone) and (width<=760px){.mobile-bottom-nav{inset-inline:0;border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;bottom:0}}@media (width<=760px){.mobile-shell-bar{z-index:60;color:#fff;background:var(--rail);border-bottom:1px solid #333833;align-items:center;gap:12px;height:64px;padding:10px 112px 10px 12px;display:flex;position:fixed;inset:0 0 auto}.mobile-menu-button{background:0 0;border:1px solid #414741;border-radius:10px;align-content:center;gap:4px;width:40px;height:40px;padding:0 11px;display:grid}.mobile-menu-button span{background:#fff;width:100%;height:1.5px;display:block}.mobile-brand{align-items:center;gap:8px;min-width:0;display:flex}.mobile-brand>span{width:31px;height:31px;color:var(--black);font:700 .58rem var(--mono);background:#fff;border-radius:8px;place-items:center;display:grid}.mobile-brand strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.topbar,.app-shell.sidebar-collapsed .topbar{z-index:90;border:0;flex-direction:column;width:min(320px,86vw);height:100dvh;min-height:100dvh;padding:24px 20px 22px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(calc(-100% - 24px));box-shadow:22px 0 60px #00000047}.app-shell.mobile-nav-open .topbar{transform:translate(0)}.sidebar-toggle{width:36px;height:36px;box-shadow:none;top:23px;right:18px}.sidebar-toggle svg,.app-shell.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}.topbar .wordmark,.app-shell.sidebar-collapsed .topbar .wordmark{justify-content:flex-start;width:calc(100% - 48px)}.topbar .wordmark>span:last-child,.app-shell.sidebar-collapsed .topbar .wordmark>span:last-child{display:grid}.topbar .nav-kicker,.app-shell.sidebar-collapsed .topbar .nav-kicker{margin-top:54px;display:block}.topbar .top-nav,.app-shell.sidebar-collapsed .topbar .top-nav{justify-content:stretch;gap:7px;width:100%;margin-top:0;display:grid}.topbar .top-nav a,.app-shell.sidebar-collapsed .topbar .top-nav a{place-items:initial;grid-template-columns:30px 1fr;align-items:center;padding:13px 14px;font-size:.84rem;display:grid}.topbar .top-nav a>.nav-index{font-size:.58rem;display:inline}.topbar .top-nav .nav-label,.app-shell.sidebar-collapsed .topbar .nav-label{display:inline}.topbar .sidebar-progress,.app-shell.sidebar-collapsed .topbar .sidebar-progress{display:grid}.sidebar-scrim{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#090b098a;border:0;position:fixed;inset:0}.app-shell.mobile-nav-open .sidebar-scrim{display:block}.page-frame,.app-shell.sidebar-collapsed .page-frame{width:min(100% - 28px,1120px);margin:0 auto;padding:92px 0 60px}.user-dock{z-index:70;background:0 0;border:0;gap:4px;padding:0;top:10px;right:12px}.profile-dock-link{min-width:0;box-shadow:none;background:0 0;padding:0;display:block}.profile-dock-link:hover,.profile-dock-link.active{background:0 0}.dock-avatar{color:#fff;background:var(--success);width:40px;height:40px}.notifications-menu summary{color:#fff;border:1px solid #414741;border-radius:10px;width:40px;height:40px}.notifications-popover{top:58px;right:10px}.lesson-steps-nav{top:74px}}.topbar{padding:var(--space-4) var(--space-3) var(--space-3)}.wordmark,.module-summary-main,.module-summary-meta{gap:var(--space-2)}.nav-kicker{margin:56px var(--space-1) var(--space-1)}.top-nav{gap:var(--space-1)}.top-nav a{gap:var(--space-1);padding:var(--space-2)}.sidebar-progress{padding:var(--space-3) var(--space-2) var(--space-1)}.user-dock,.program-continue-actions,.question-deck-grid,.review-rating-actions{gap:var(--space-1)}.profile-dock-link{gap:var(--space-1);padding:var(--space-1)}.notifications-popover{padding:var(--space-1)}.notifications-heading{padding:var(--space-2) var(--space-2) var(--space-2)}.notifications-popover article{gap:var(--space-2);padding:var(--space-2)}.notifications-popover>a{padding:var(--space-2) var(--space-2) var(--space-1)}.page-frame{padding:112px clamp(var(--space-4), 5vw, 72px) 80px}.page-heading{margin-bottom:var(--space-5)}.page-heading.has-aside{gap:clamp(var(--space-3), 5vw, 72px)}.breadcrumbs{margin-bottom:var(--space-3)}.eyebrow,.page-heading h1{margin-bottom:var(--space-1)}.page-content,.lesson-layout,.module-page-layout,.tests-layout,.profile-columns,.answer-coach,.practice-answers{gap:var(--space-3)}.toolbar,.panel,.activity-panel,.course-progress,.dashboard-action,.module-roadmap-header,.module-quiz-header,.answer-coach,.review-card,.review-empty{padding:var(--space-3)}.panel-header{gap:var(--space-3);margin-bottom:var(--space-3)}.primary-button,.ghost-button,.module-open-link,.outline-link,.solid-link{padding:var(--space-1) var(--space-2)}.program-continue-card,.program-overview,.question-deck-card{padding:var(--space-3)}.program-continue-top{margin-bottom:var(--space-3)}.program-continue-actions{margin-top:var(--space-3)}.program-workspace{gap:clamp(var(--space-3), 3vw, var(--space-5))}.program-overview-track{margin:var(--space-3) 0}.program-guide{gap:var(--space-2) var(--space-1);padding:var(--space-3) 0}.program-review-link{padding-top:var(--space-2)}.program-catalog{gap:var(--space-5)}.program-search-row{gap:var(--space-2);padding:var(--space-1) 0 var(--space-2)}.program-search{gap:var(--space-1);padding-inline:var(--space-2)}.program-section{gap:var(--space-2)}.program-section-heading{gap:var(--space-3)}.program-section-heading>div{gap:var(--space-2)}.course-program{gap:var(--space-1)}.module-summary{padding:var(--space-2) var(--space-3)}.lesson-tile{gap:var(--space-2);padding:var(--space-2) var(--space-3)}.lesson-tile:hover{padding-left:var(--space-3)}.module-footer{padding:var(--space-2) var(--space-3)}.question-deck-grid{gap:var(--space-2)}.question-deck-card h3{margin:var(--space-3) 0 var(--space-1)}.question-deck-card p{margin-bottom:var(--space-3)}.deck-action{padding-top:var(--space-2)}.lesson-steps-nav a{gap:var(--space-1);padding:var(--space-2)}.roadmap-lesson{padding:var(--space-2) var(--space-3)}.practice-deck-note{margin-bottom:var(--space-2);padding:var(--space-2)}.practice-answer,.lesson-quiz-question,.quiz-question{gap:var(--space-2);padding:var(--space-3)}.practice-complete-row{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3)}.review-toolbar{gap:var(--space-3);padding:var(--space-2) var(--space-3)}.review-toolbar>div,.review-deck-select,.free-review-toggle,.review-context,.review-space-hint{gap:var(--space-1)}.review-session{margin-top:var(--space-3)}.review-context{margin-bottom:var(--space-1)}.review-card-body{padding:var(--space-4) 8%}.review-rating-actions{margin-top:var(--space-2)}.review-rating-actions button{gap:var(--space-1);padding:var(--space-2)}.auth-layout,.auth-hero,.auth-card,.profile-hero,.profile-stats article,.test-source{padding:var(--space-3)}@media (width<=980px){.page-frame{padding:112px var(--space-4) 72px}.program-workspace{gap:var(--space-3)}.program-overview{padding:var(--space-3)}}@media (width<=760px){.mobile-shell-bar{gap:var(--space-1);padding:var(--space-1) 112px var(--space-1) var(--space-2)}.topbar,.app-shell.sidebar-collapsed .topbar{padding:var(--space-3)}.page-frame,.app-shell.sidebar-collapsed .page-frame{width:calc(100% - var(--space-4));padding:96px 0 var(--space-8)}.page-heading.has-aside,.program-workspace,.program-search-row{gap:var(--space-3)}.panel,.answer-coach,.review-card,.review-empty{padding:var(--space-3)}.review-rating-actions{gap:var(--space-1)}.module-artwork.compact{flex-basis:80px;width:80px;height:48px}}.program-action-strip{gap:var(--space-1);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.program-action-strip>a{gap:var(--space-1) var(--space-2);min-height:112px;padding:var(--space-2);border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;transition:color .16s,border-color .16s,background .16s;display:grid}.program-action-strip>a:hover{color:#fff;border-color:var(--black);background:var(--black)}.program-action-strip>a>span{color:var(--success);font:700 .62rem var(--mono);grid-row:1/3}.program-action-strip small{color:var(--muted);font-size:.68rem}.program-action-strip strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;line-height:1.35;overflow:hidden}.program-action-strip b{grid-area:1/3/3;align-self:center}.program-action-strip>a:hover :is(small,span){color:#aeb4ad}.question-bank-summary{gap:var(--space-1) var(--space-2);min-height:210px;padding:var(--space-3);color:#fff;background:var(--black);border-radius:16px;grid-template-columns:1fr auto;display:grid}.question-workspace-nav{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;display:grid}.question-workspace-nav a{color:var(--muted);border-radius:9px;grid-template-columns:auto 1fr;gap:2px 12px;padding:14px 16px;display:grid}.question-workspace-nav a>span{font:600 .64rem var(--mono);grid-row:1/3;align-self:center}.question-workspace-nav strong{color:var(--black);font-size:.86rem}.question-workspace-nav small{font-size:.7rem}.question-workspace-nav a:hover,.question-workspace-nav a.active{color:#9fd0aa;background:var(--black)}.question-workspace-nav a:hover strong,.question-workspace-nav a.active strong{color:#fff}.question-bank-summary>span{color:#aeb4ad;font:600 .62rem var(--mono);letter-spacing:.08em;text-transform:uppercase;align-self:start}.question-bank-summary>strong{letter-spacing:-.07em;grid-column:1/-1;align-self:end;font-size:3.8rem;line-height:.85}.question-bank-summary>small{color:#aeb4ad;grid-column:1/-1;font-size:.72rem}.question-bank-summary>div{align-items:baseline;gap:var(--space-1);padding-top:var(--space-2);border-top:1px solid #343934;grid-column:1/-1;display:flex}.question-bank-summary>div b{color:#7fd695}.question-bank-summary>div span{color:#929991;font-size:.68rem}.question-bank-layout{gap:var(--space-3);display:grid}.question-bank-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-dark);display:flex}.question-bank-filters{gap:var(--space-1);flex-wrap:wrap;display:flex}.question-bank-filters button{align-items:center;gap:var(--space-1);min-height:40px;padding:var(--space-1) var(--space-2);border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:9px;font-size:.72rem;font-weight:700;display:flex}.question-bank-filters button span{color:#979d96;font:600 .6rem var(--mono)}.question-bank-filters button.active,.question-bank-filters button:hover{color:#fff;border-color:var(--black);background:var(--black)}.question-bank-search{align-items:center;gap:var(--space-1);width:min(320px,42%);padding-inline:var(--space-2);border:1px solid var(--line-dark);background:#fff;border-radius:9px;grid-template-columns:auto minmax(0,1fr);display:grid}.question-bank-search input{background:0 0;border:0;outline:0;min-height:40px}.question-topic-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.question-topic-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:112px minmax(0,1fr);display:grid}.module-artwork.minimal{filter:grayscale()}.module-artwork.minimal .artwork-base{fill:#eef0eb}.module-artwork.minimal :is(.artwork-orbit,.artwork-line,.artwork-grid){opacity:.12}.module-artwork.minimal .artwork-symbol{fill:var(--black)}.module-artwork.minimal .artwork-index{fill:#777d76}.module-artwork.minimal .artwork-title{display:none}.question-topic-copy{min-width:0}.question-topic-copy>span{color:var(--success);font:600 .58rem var(--mono);letter-spacing:.07em;text-transform:uppercase}.question-topic-copy h2{margin:var(--space-1) 0;letter-spacing:-.035em;font-size:1.2rem}.question-topic-copy p{color:var(--muted);margin:0;font-size:.74rem;line-height:1.45}.question-topic-progress{align-items:center;gap:var(--space-2);grid-column:1/-1;grid-template-columns:1fr auto;display:grid}.question-topic-progress>span{background:var(--soft);border-radius:4px;height:4px;overflow:hidden}.question-topic-progress i{background:var(--success);height:100%;display:block}.question-topic-progress small{color:var(--muted);font:600 .62rem var(--mono)}.question-topic-actions{gap:var(--space-1);grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.question-topic-actions a{padding:var(--space-1) var(--space-2);border:1px solid var(--line-dark);text-align:center;border-radius:8px;font-size:.7rem;font-weight:700}.question-topic-actions a:hover,.question-topic-actions .train{color:#fff;border-color:var(--black);background:var(--black)}.question-topic-actions .train:hover{border-color:var(--success);background:var(--success)}@media (width<=1100px){.question-topic-grid{grid-template-columns:1fr}}@media (width<=760px){.program-action-strip,.question-topic-grid{grid-template-columns:1fr}.question-bank-toolbar{flex-direction:column;align-items:stretch}.question-bank-search{width:100%}}@media (width<=520px){.question-workspace-nav{grid-template-columns:1fr}.lesson-pagination{min-height:64px;bottom:8px}.lesson-pagination-back{max-width:34%;padding:8px;font-size:.68rem}.lesson-pagination-next{width:64%;min-width:0;padding:8px 12px}.lesson-pagination-next strong{gap:8px;font-size:.76rem}.question-topic-card{padding:var(--space-2);grid-template-columns:80px minmax(0,1fr)}.question-topic-actions{grid-template-columns:1fr}}@media (width<=760px){.topbar,.app-shell.sidebar-collapsed .topbar,.sidebar-scrim,.mobile-menu-button{display:none}.mobile-shell-bar{height:calc(64px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 64px 10px 16px;display:flex;position:fixed;inset:0 0 auto}.user-dock{top:calc(10px + env(safe-area-inset-top))}.user-dock .profile-dock-link,.user-dock .dock-logout{display:none}.page-frame,.app-shell.sidebar-collapsed .page-frame{padding-top:calc(92px + env(safe-area-inset-top));padding-bottom:calc(112px + env(safe-area-inset-bottom))}.mobile-bottom-nav{z-index:75;min-height:68px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#171a17f7;border:1px solid #353a35;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset:auto 8px 8px;box-shadow:0 18px 46px #00000057}.mobile-bottom-nav a{color:#969d96;border-radius:12px;align-content:center;place-items:center;gap:4px;min-width:0;min-height:54px;padding:5px 2px;font-size:.61rem;font-weight:650;display:grid}.mobile-bottom-nav svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.mobile-bottom-nav a.active{color:#fff;background:#2a302a}.mobile-bottom-nav a.active svg{color:#78cc91}.lesson-pagination{bottom:calc(84px + env(safe-area-inset-bottom))}}@media (display-mode:standalone) and (width<=760px){.mobile-bottom-nav{inset-inline:0;border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;bottom:0}}@font-face{font-family:Helvetica Local;src:url(/assets/helvetica_light-DOrkLW0I.otf)format("opentype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:Helvetica Local;src:url(/assets/helvetica_regular-BBrahH0n.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Helvetica Local;src:url(/assets/helvetica_bold-BH7lDxMt.otf)format("opentype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Helvetica Local;src:url(/assets/helvetica_oblique-NMeqnk9a.otf)format("opentype");font-style:italic;font-weight:400;font-display:swap}@font-face{font-family:Helvetica Local;src:url(/assets/helvetica_boldoblique-BvZKK1zT.otf)format("opentype");font-style:italic;font-weight:700;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#171a17;font-synthesis:none;background:#f4f5f1;font-family:Helvetica Local,Helvetica Neue,Helvetica,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%;margin:0}body{background:#f4f5f1;min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}
