.quest-finder{background:#f0f4e7;border:1px solid #d7e1c8;border-radius:8px;padding:25px;margin:28px 0}.quest-finder-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:20px}.quest-finder-heading h2{font-size:20px}.quest-finder-heading p{font-size:12px;color:#4c6440;line-height:1.9}.quest-finder-fields{display:grid;grid-template-columns:minmax(180px,1.45fr) minmax(150px,1fr) minmax(130px,.8fr);gap:16px}.quest-finder-fields label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;color:#435e35;min-width:0}.quest-finder-fields input,.quest-finder-fields select{display:block;min-width:0;width:100%;background:#fffef9;color:#243e2c;border:1px solid #9daf8c;border-radius:5px;padding:12px;font:13px/1.5 Arial,Hiragino Kaku Gothic ProN,sans-serif;min-height:45px}.quest-finder-fields input::placeholder{color:#5e7052;opacity:1}.quest-finder-fields select{cursor:pointer}.quest-finder-fields input:focus-visible,.quest-finder-fields select:focus-visible{outline:3px solid #567b26;outline-offset:3px}.quest-finder-result{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px}.quest-finder-result p{font-size:12px;color:#4e6741}.quest-finder-result strong{font-size:18px;color:#2e512d;margin-right:5px}.quest-filter-reset{font-size:11px;color:#3c5f31;text-decoration:underline;text-underline-offset:4px;padding:9px 0}.quest-filter-reset span{padding-left:7px}.quest-filter-reset:disabled{color:#69775e;opacity:1;cursor:default;text-decoration:none}.map-stage-links{display:flex;align-items:center;gap:15px;margin:17px 0 2px;flex-wrap:wrap}.map-stage-links button{display:flex;align-items:center;gap:11px;font-size:11px;color:#315b2f;border:1px solid #c1d2ae;border-radius:4px;padding:8px 11px;background:#f5f8ed}.map-stage-links button:hover{background:#e7efd9}.map-filtered-caption{font-size:10px;color:#4c6740;margin:13px 0 -7px}.map-quest-name{min-width:0;overflow-wrap:anywhere}.map-review-marker{display:inline-block;font-size:8px;font-weight:600;line-height:1.5;white-space:nowrap;border:1px solid #b8caa1;color:#40632b;background:#eef4e0;border-radius:3px;padding:1px 4px;margin-left:7px;vertical-align:middle}.quest-map-page .quest-list button>span:last-child{flex-shrink:0}.quest-map-page .quest-list small{flex-shrink:0}.map-review-more{margin-top:12px!important;font-size:11px!important;color:#4f6542!important}.quest-no-results{padding:45px 25px;border:1px dashed #acbf98;border-radius:8px;background:#f5f8ec;text-align:center}.quest-no-results>span{font-size:35px;color:#597946}.quest-no-results h2{font-size:21px;margin:10px 0}.quest-no-results p{font-size:13px;line-height:2;color:#506943;margin:10px 0 23px}.quest-no-results .button{font-size:11px}.map-learning-tools{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #d9e3cc;margin-top:43px;padding-top:30px}.map-learning-tools h2{font-size:22px;margin:11px 0}.map-learning-tools p{font-size:12px;color:#526a45;line-height:1.9}.map-learning-tools>div:last-child{display:flex;flex-direction:column;gap:10px;flex-shrink:0}.map-learning-tools .outline-button{font-size:11px;color:#315630;background:#fbfcf6;min-height:43px}.study-checkpoint-link-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}.study-checkpoint-link-row button{font-size:12px;background:#eef4df;color:#31552c;border:1px solid #b4c99a;border-radius:5px;padding:11px 14px;line-height:1.7;text-align:left;min-height:44px}.study-checkpoint-link-row p{font-size:11px;line-height:1.9;color:#4e6740;flex:1;min-width:180px}.study-guide-summary h3{display:block;font-size:17px;font-weight:650;line-height:1.7;letter-spacing:-.4px;margin:0}.study-guide-summary h3:focus{outline:3px solid #567b26;outline-offset:5px}.study-guide-summary h3[id]{scroll-margin-top:30px}@media(max-width:760px){.quest-finder{padding:20px 16px;margin:25px 0}.quest-finder-heading{display:block;margin-bottom:18px}.quest-finder-heading h2{font-size:19px}.quest-finder-heading p{font-size:11px;margin-top:8px}.quest-finder-fields{grid-template-columns:1fr;gap:15px}.quest-finder-fields label{font-size:11px}.quest-finder-fields input,.quest-finder-fields select{font-size:14px;padding:12px 10px}.quest-finder-result{gap:10px}.quest-finder-result p{font-size:11px}.quest-filter-reset{font-size:10px}.quest-map-page .map-stage{padding:18px 15px}.quest-map-page .map-stage-title{gap:11px}.quest-map-page .map-stage-title h2{font-size:17px}.quest-map-page .map-stage-title .stage-glyph{height:40px;width:40px}.quest-map-page .map-stage-title p,.quest-map-page .stage-count{font-size:10px}.map-stage-links{gap:8px;margin-top:16px}.map-stage-links button{font-size:10px;padding:9px 8px;gap:8px}.quest-map-page .quest-list button{gap:9px;font-size:11px}.quest-map-page .quest-list small{font-size:8px}.quest-map-page .quest-list .quest-check{width:24px;height:24px;font-size:8px}.map-review-marker{font-size:8px;margin-left:4px;padding:1px 3px}.quest-no-results{padding:32px 17px}.quest-no-results h2{font-size:19px}.quest-no-results p{font-size:12px}.quest-no-results .button{white-space:normal}.map-learning-tools{display:block;margin-top:33px;padding-top:26px}.map-learning-tools h2{font-size:21px}.map-learning-tools p{font-size:11px}.map-learning-tools>div:last-child{margin-top:20px}.map-learning-tools .outline-button{font-size:11px;gap:12px;white-space:normal;text-align:left;padding:12px}.study-checkpoint-link-row{display:block}.study-checkpoint-link-row button{width:100%;padding:12px;text-align:center}.study-checkpoint-link-row p{font-size:11px;margin-top:10px;min-width:0}.study-guide-summary h3{font-size:14px;line-height:1.75;letter-spacing:-.3px}}@media(max-width:360px){.quest-map-page .section-heading{gap:9px}.quest-map-page .level-pill{padding:8px;font-size:7px}.quest-map-page .level-pill strong{font-size:16px}.quest-map-page .map-stage-title{gap:9px}.quest-map-page .map-stage-title h2{font-size:15px}.quest-map-page .map-stage-title .stage-glyph{width:34px;height:38px}.quest-map-page .map-stage-title p{font-size:9px}.quest-map-page .quest-list button{gap:7px}.quest-map-page .quest-list small{font-size:7px}.quest-map-page .progress-summary{gap:9px;font-size:8px}.quest-map-page .map-stage-links{gap:7px}.quest-map-page .map-stage-links button{font-size:9px;padding:8px 7px}.quest-finder-result{flex-wrap:wrap}}.study-hub>h1{margin:14px 0 19px;font-size:38px}.study-intro{font-size:13px;line-height:2.1;color:#42593b;max-width:760px}.study-notice{display:flex;align-items:flex-start;gap:14px;background:#edf2e3;border:1px solid #e0e8d2;padding:18px 22px;border-radius:7px;margin:27px 0 49px;max-width:850px}.study-notice>span{font-size:23px;color:#42593b;line-height:1.2}.study-notice p{font-size:11px;line-height:1.95;color:#42593b}.study-notice strong{font-weight:650;color:#42593b;margin-right:7px}.study-section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:25px}.study-section-heading h2{font-size:26px;margin-top:10px}.study-section-caption{font-size:10px;color:#42593b;padding-bottom:5px}.study-weeks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.study-week{border:1px solid #dce4d1;background:#fffef9;padding:23px 21px 21px;border-radius:8px;display:flex;flex-direction:column;min-width:0}.study-week-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font:9px monospace;letter-spacing:1px;color:#42593b}.study-week-state{font:8px Arial;letter-spacing:0;color:#42593b;white-space:nowrap}.study-week-state.complete{color:#42593b;background:#ecf2df;padding:3px 6px;border-radius:3px}.study-week h3{font-size:17px;line-height:1.75;margin:21px 0 11px;min-height:59px}.study-week-goal{font-size:11px;line-height:1.95;color:#42593b;min-height:65px}.study-outcomes{margin:21px 0 18px}.study-outcomes h4{font-size:10px;color:#42593b;font-weight:650;margin:0 0 12px}.study-outcomes ul{list-style:none;padding:0;margin:0}.study-outcomes li{font-size:10px;color:#42593b;line-height:1.9;padding-left:14px;position:relative;margin-top:7px}.study-outcomes li:before{content:"·";position:absolute;left:1px;font-size:18px;line-height:1;color:#42593b}.study-practice{border-top:1px solid #e5eadc;border-bottom:1px solid #e5eadc;margin-top:auto}.study-practice summary{cursor:pointer;display:flex;justify-content:space-between;padding:12px 0;align-items:center;font-size:10px;font-weight:600;color:#42593b;list-style:none}.study-practice summary::-webkit-details-marker,.study-guide>summary::-webkit-details-marker{display:none}.study-practice summary>span{font-size:13px;color:#42593b}.study-practice[open] summary>span{transform:rotate(45deg)}.study-practice>p{font-size:10px;line-height:2;color:#42593b;padding:0 0 15px}.study-week-bottom{margin-top:22px}.study-progress-label{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#42593b;gap:8px}.study-week progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:4px;border:0;background:#e8eddf;color:#42593b;margin:10px 0 19px;border-radius:3px;overflow:hidden}.study-week progress::-webkit-progress-bar{background:#e8eddf;border-radius:3px}.study-week progress::-webkit-progress-value{background:#85a45e;border-radius:3px}.study-week progress::-moz-progress-bar{background:#85a45e;border-radius:3px}.study-week .button{width:100%;padding:11px 10px;font-size:10px;gap:10px;justify-content:space-between}.study-notes-section{margin-top:64px}.study-notes-intro{font-size:12px;color:#42593b;line-height:1.9;margin:-5px 0 25px}.study-guides{border-top:1px solid #dbe3d0}.study-guide{border-bottom:1px solid #dbe3d0}.study-guide>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:24px;padding:24px 17px}.study-guide>summary:hover{background:#f0f4e7}.study-guide-number{font:23px monospace;color:#42593b;flex-shrink:0}.study-guide-summary{flex:1}.study-guide-summary small{display:block;font-size:9px;letter-spacing:.5px;color:#42593b;margin-bottom:5px}.study-guide-summary strong{display:block;font-size:17px;font-weight:650;line-height:1.7;letter-spacing:-.4px}.study-guide-count{font:10px monospace;color:#42593b;flex-shrink:0}.study-expand{font-size:21px;font-weight:300;color:#42593b;flex-shrink:0}.study-guide[open]>.study-expand{transform:rotate(45deg)}.study-guide[open]>summary .study-expand{transform:rotate(45deg)}.study-guide[open]>summary{background:#edf2e3}.study-guide-content{padding:30px 65px 36px;background:#fffef9}.study-guide-goal{padding:19px 23px;border-left:3px solid #b4ce7a;background:#f0f4e7;margin-bottom:27px}.study-guide-goal .eyebrow{font-size:8px;letter-spacing:1.4px}.study-guide-goal p{font-size:13px;line-height:1.9;color:#42593b;margin-top:8px}.study-prerequisites{margin-bottom:32px;padding:0 3px}.study-prerequisites h3{font-size:11px;color:#42593b;margin-bottom:8px}.study-prerequisites ul{padding-left:17px;margin:0;font-size:11px;line-height:1.9;color:#42593b}.study-sections{max-width:850px}.study-lesson{margin-top:36px}.study-lesson-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.study-lesson-heading>span{font:9px monospace;color:#42593b}.study-lesson h3{font-size:18px;line-height:1.7}.study-lesson>p{font-size:12px;color:#42593b;line-height:2.2;overflow-wrap:anywhere}.study-code{margin-top:19px;background:#19382d;border:1px solid #2e4c3a;border-radius:6px;overflow:hidden;color:#42593b}.study-code-label{font:8px monospace;letter-spacing:1.5px;color:#42593b;padding:11px 17px;border-bottom:1px solid #36513e;display:flex;justify-content:space-between;gap:15px}.study-code-label span{font:9px Arial;letter-spacing:0;color:#42593b}.study-code pre{margin:0;padding:21px;font-size:12px;line-height:1.95;white-space:pre;overflow-x:auto;overflow-wrap:normal;tab-size:4;scrollbar-color:#69805c #19382d}.study-reflection{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:35px}.study-reflection>section{padding:22px;background:#f5f4e9;border:1px solid #e7e6d7;border-radius:6px;min-width:0}.study-reflection h3{font-size:13px;margin-bottom:17px}.study-reflection h3>span{color:#42593b;padding-right:6px}.study-mistakes dl{margin:0}.study-mistakes dl>div+div{margin-top:17px}.study-mistakes dt{font-size:11px;font-weight:650;color:#42593b;margin-bottom:5px}.study-mistakes dd{font-size:11px;line-height:1.95;color:#42593b;margin:0}.study-reflection>.study-checkpoints{background:#eff4e5;border-color:#e0e9d0}.study-checkpoints>p{font-size:10px;color:#42593b;margin-top:-8px}.study-checkpoints ul{list-style:none;padding:0;margin:16px 0 0}.study-checkpoints li{font-size:11px;line-height:1.95;color:#42593b;position:relative;padding-left:18px;margin-top:9px}.study-checkpoints li:before{content:"◇";color:#42593b;position:absolute;left:0;top:0;font-size:10px}.study-guide-action{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e4eadb;margin-top:30px;padding-top:23px}.study-guide-action p{font-size:11px;color:#42593b}.study-guide-action .button{font-size:10px;padding:12px 17px;flex-shrink:0}.study-scope{padding:25px 0 0;border-top:1px solid #dde5d1;margin-top:45px;max-width:850px}.study-scope h2{font-size:12px;color:#42593b;letter-spacing:0;margin-bottom:10px}.study-scope p{font-size:10px;line-height:2;color:#42593b;margin-top:8px}.study-hub summary:focus-visible,.study-code pre:focus-visible{outline:3px solid #82b348;outline-offset:4px}.study-code pre:focus-visible{outline-offset:-4px}@media(max-width:1100px){.study-weeks{grid-template-columns:repeat(2,minmax(0,1fr))}.study-week h3,.study-week-goal{min-height:0}.study-outcomes{margin-bottom:22px}.study-guide-content{padding-left:40px;padding-right:40px}.study-week .button{padding:12px 15px}}@media(max-width:760px){.study-hub>h1{font-size:28px;line-height:1.65;margin:13px 0 17px}.study-intro{font-size:12px;line-height:2.05}.study-intro br{display:none}.study-notice{margin:23px 0 36px;padding:15px;gap:10px}.study-notice>span{font-size:20px}.study-notice p{font-size:10px}.study-section-heading{display:block;margin-bottom:21px}.study-section-heading h2{font-size:23px}.study-section-caption{display:block;margin-top:10px;font-size:9px}.study-weeks{grid-template-columns:1fr;gap:16px}.study-week{padding:22px}.study-week-top{font-size:10px}.study-week h3{font-size:19px;margin-top:18px;margin-bottom:10px}.study-week-goal{font-size:12px}.study-outcomes h4{font-size:10px}.study-outcomes li{font-size:11px}.study-outcomes{margin:20px 0}.study-practice summary{padding:13px 0;font-size:11px}.study-practice>p{font-size:11px}.study-week-bottom{margin-top:20px}.study-week .button{padding:13px 16px;font-size:11px}.study-notes-section{margin-top:43px}.study-notes-intro{font-size:11px;margin-bottom:20px}.study-guide>summary{padding:20px 6px;gap:13px}.study-guide-number{font-size:21px}.study-guide-summary small{font-size:8px;margin-bottom:5px}.study-guide-summary strong{font-size:14px;line-height:1.75;letter-spacing:-.3px}.study-guide-count{font-size:9px}.study-expand{font-size:18px}.study-guide-content{padding:22px 15px 25px}.study-guide-goal{padding:15px 16px;margin-bottom:22px}.study-guide-goal p{font-size:12px}.study-prerequisites{margin-bottom:25px}.study-prerequisites ul{font-size:10px}.study-lesson{margin-top:28px}.study-lesson-heading{gap:10px;margin-bottom:12px}.study-lesson h3{font-size:16px}.study-lesson>p{font-size:12px;line-height:2.15}.study-code{margin-top:16px}.study-code pre{font-size:10px;padding:16px;line-height:2}.study-code-label{font-size:7px;padding:10px 13px}.study-code-label span{font-size:8px}.study-reflection{grid-template-columns:1fr;gap:14px;margin-top:27px}.study-reflection>section{padding:19px}.study-guide-action{display:block;padding-top:19px;margin-top:23px}.study-guide-action p{font-size:10px;margin-bottom:13px}.study-guide-action .button{width:100%;justify-content:space-between;padding:13px 16px;font-size:11px}.study-scope{margin-top:32px;padding-top:22px}.study-scope p{font-size:9px}}.study-code,.study-code pre,.study-code code,.study-code-label,.study-code-label span{color:#dfebd8}.study-hub p,.study-hub li,.study-mistakes dt,.study-mistakes dd{font-size:14px}.study-scope p,.study-notice p{font-size:13px}.study-section-caption,.study-progress-label,.study-guide-summary small,.study-week-top,.study-week-state,.study-guide-count{font-size:11px}.study-practice summary{font-size:13px}.study-week .button,.study-guide-action .button{color:#fff;font-size:12px}.study-code pre{font-size:13px}.continuing-paths{margin:2rem 0;padding:clamp(1rem,3vw,2rem);border:1px solid var(--line,#dedbd4);border-radius:18px;background:var(--paper,#faf9f6)}.continuing-paths>p{max-width:75ch;line-height:1.9}.continuing-path{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line,#dedbd4)}.continuing-path p{line-height:1.9}.continuing-path ol{padding-left:1.4rem}.continuing-path li{margin:.7rem 0;line-height:1.7}.continuing-path li>span{display:inline-block;min-width:4rem;font-size:.85rem}.continuing-path .text-button{text-align:left;white-space:normal;overflow-wrap:anywhere;line-height:1.7}.editor-input-tools{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px;background:#243c30}.editor-input-tools button{min-height:44px;max-width:100%;white-space:normal;color:#143226;background:#edf5e9;border:1px solid #acc7a9;border-radius:7px;padding:8px 12px;font:inherit;cursor:pointer}.editor-input-tools button:focus-visible{outline:3px solid #ffe08a;outline-offset:3px}.editor-input-help{margin:0;padding:8px 16px 12px;font-size:13px;line-height:1.8;color:#e0ebdc;background:#243c30;overflow-wrap:anywhere}textarea.simple-editor{box-sizing:border-box;max-width:100%;font-size:16px;tab-size:4;white-space:pre;overflow:auto}textarea.simple-editor.compact-editor{min-height:200px;max-height:300px;resize:none}.editor-input-settings{background:#243c30;color:#e0ebdc;font-size:13px}.editor-input-settings>summary{padding:10px 16px;min-height:44px;box-sizing:border-box;cursor:pointer}.editor-input-settings>summary:focus-visible{outline:3px solid #ffe08a;outline-offset:-3px}.editor-input-settings .editor-mode{text-align:left;font-size:13px;min-height:44px;background:#243c30;color:#e0ebdc}.checkpoint-session{max-width:950px;margin:0 auto;padding:55px 30px 65px;color:#203c2d}.checkpoint-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.checkpoint-header>span{font-size:11px;color:#4b6241}.checkpoint-title-row{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:17px 0}.checkpoint-title-row h1{font-size:32px;line-height:1.6}.checkpoint-lesson-link{font-size:12px;color:#315c37;white-space:nowrap;padding:12px 0;text-decoration:underline;text-underline-offset:4px}.checkpoint-lesson-link>span{padding-left:8px}.checkpoint-intro{font-size:14px;color:#4f6445;line-height:2;max-width:730px}.checkpoint-meter{margin:32px 0 24px}.checkpoint-meter>span{display:flex;justify-content:space-between;font:11px monospace;letter-spacing:.5px;color:#46613b}.checkpoint-meter progress{display:block;width:100%;height:5px;margin:12px 0 0;appearance:none;-webkit-appearance:none;background:#e1e8d7;border:0;color:#608344;border-radius:3px;overflow:hidden}.checkpoint-meter progress::-webkit-progress-bar{background:#e1e8d7}.checkpoint-meter progress::-webkit-progress-value{background:#608344}.checkpoint-meter progress::-moz-progress-bar{background:#608344}.checkpoint-question-card,.checkpoint-finish{border:1px solid #cedbc1;border-radius:9px;background:#fffef9;padding:32px}.checkpoint-question-card h2,.checkpoint-finish h2{font-size:23px;line-height:1.7}.checkpoint-code{background:#19382d;border:1px solid #304f3c;border-radius:6px;margin:23px 0 27px;color:#e5f0d9;overflow:hidden}.checkpoint-code>div{padding:10px 16px;border-bottom:1px solid #405d48;display:flex;justify-content:space-between;gap:15px;font:9px monospace;letter-spacing:1px;color:#c0d2b2}.checkpoint-code>div span{font:10px Arial;letter-spacing:0}.checkpoint-code pre{white-space:pre;overflow-x:auto;overflow-wrap:normal;font-size:13px;line-height:1.95;padding:20px;margin:0;tab-size:4;scrollbar-color:#789169 #19382d}.checkpoint-options{border:0;margin:24px 0 0;padding:0;min-width:0}.checkpoint-options legend{font-size:12px;color:#526a45;padding:0;margin:0 0 13px}.checkpoint-option{display:flex;align-items:center;gap:12px;border:1px solid #cbd9bd;border-radius:6px;padding:15px;cursor:pointer;margin-top:11px;background:#fffef9;position:relative;min-width:0}.checkpoint-option:hover{background:#f2f6e8}.checkpoint-option.selected{border-color:#577c3e;background:#f0f6e3;box-shadow:0 0 0 1px #577c3e}.checkpoint-option input{width:17px;height:17px;accent-color:#315c37;flex-shrink:0;margin:0}.checkpoint-letter{font:11px monospace;display:grid;place-items:center;background:#e9efdf;border:1px solid #cbd9bd;width:25px;height:25px;border-radius:4px;flex-shrink:0;color:#46603a}.checkpoint-option-content{font-size:14px;line-height:1.9;min-width:0;overflow-wrap:anywhere}.checkpoint-code-answer{font-family:ui-monospace,Consolas,monospace;white-space:pre-wrap}.checkpoint-option-content strong{display:block;font-size:11px;color:#345526;margin-top:4px}.checkpoint-option.correct{background:#eaf3db;border-color:#73994f}.checkpoint-option.incorrect{background:#fff1e5;border-color:#b87843;box-shadow:0 0 0 1px #b87843}.checkpoint-option.incorrect strong{color:#87421f}.checkpoint-options:disabled .checkpoint-option{cursor:default}.checkpoint-options:disabled input{opacity:1}.checkpoint-feedback-box{border:1px solid #cadcb1;border-radius:6px;background:#eef5df;padding:20px;margin-top:23px}.checkpoint-feedback-box.reconsider{background:#fff5e9;border-color:#dfc3a2}.checkpoint-feedback-box h3{font-size:16px;margin-bottom:10px;color:#325226}.checkpoint-feedback-box.reconsider h3{color:#7d4328}.checkpoint-feedback-box p{font-size:14px;line-height:2;color:#405c34;overflow-wrap:anywhere}.checkpoint-feedback-box.reconsider p{color:#654c32}.checkpoint-correct-answer{font-size:13px;line-height:1.9;font-weight:650;color:#4c5c32;margin:16px 0 8px;border-top:1px solid #d9cfb8;padding-top:13px}.checkpoint-correct-answer>span{white-space:pre-wrap;overflow-wrap:anywhere}.checkpoint-all-feedback{border:1px solid #d7e1cb;border-radius:5px;margin-top:16px;padding:0 17px}.checkpoint-all-feedback summary{cursor:pointer;font-size:12px;font-weight:600;padding:14px 0;color:#456338}.checkpoint-all-feedback dl{margin:0 0 18px}.checkpoint-all-feedback dl>div{border-top:1px solid #e0e7d6;padding:15px 0 0;margin-top:15px}.checkpoint-all-feedback dt{font:12px monospace;color:#355c2f}.checkpoint-all-feedback dt>span{white-space:pre-wrap;font-size:13px;overflow-wrap:anywhere}.checkpoint-all-feedback dd{font-size:13px;line-height:1.95;color:#526647;margin:8px 0 0;overflow-wrap:anywhere}.checkpoint-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #dfe7d4;margin-top:27px;padding-top:21px}.checkpoint-actions p{font-size:11px;color:#4d6542;line-height:1.9}.checkpoint-actions button:disabled{cursor:not-allowed;opacity:1;background:#dfe6d4;color:#45553a}.checkpoint-actions button:disabled span{color:inherit}.checkpoint-finish h2{margin:14px 0 17px}.checkpoint-score{padding:20px;background:#edf4e0;border-radius:6px;display:flex;align-items:center;gap:25px;margin:23px 0}.checkpoint-score strong{font:700 46px monospace;color:#2a512e;white-space:nowrap}.checkpoint-score strong span{font-size:20px;color:#4f6942}.checkpoint-score p{font-size:12px;color:#476039}.checkpoint-finish-intro{font-size:14px;line-height:2;color:#4c6241}.checkpoint-review-list{padding:0;margin:27px 0;list-style:none}.checkpoint-review-list li{display:flex;align-items:flex-start;gap:17px;padding:20px 0;border-top:1px solid #dce5d0}.checkpoint-review-list li>span{font-size:11px;white-space:nowrap;border:1px solid #c5d7ad;background:#edf4e0;padding:4px 7px;border-radius:4px;color:#3d642f;flex-shrink:0}.checkpoint-review-list li>span.checkpoint-review-again{background:#fff1e3;border-color:#dec5a6;color:#854823}.checkpoint-review-list li>div{min-width:0}.checkpoint-review-list strong{font:9px monospace;letter-spacing:1px;color:#536d44}.checkpoint-review-list p{font-size:14px;color:#2b4930;line-height:1.9;margin-top:7px;overflow-wrap:anywhere}.checkpoint-review-list .checkpoint-review-reason{font-size:13px;color:#536a45;margin-top:9px}.checkpoint-finish-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.checkpoint-retry{font-size:12px;color:#3e6132;text-decoration:underline;text-underline-offset:4px;padding:12px 0}.checkpoint-session-note{font-size:12px;line-height:2;color:#546946;margin-top:23px;border-top:1px solid #dce5d0;padding-top:20px}.checkpoint-empty{max-width:900px;padding:40px 25px;margin:auto}.checkpoint-empty h2{font-size:20px;margin-bottom:22px}.checkpoint-session summary:focus-visible,.checkpoint-session input:focus-visible,.checkpoint-session pre:focus-visible{outline:3px solid #567b26;outline-offset:4px}.checkpoint-option:has(input:focus-visible){outline:3px solid #567b26;outline-offset:4px}.checkpoint-session pre:focus-visible{outline-color:#d5f175;outline-offset:-4px}@media(max-width:760px){.checkpoint-session{padding:32px 18px 45px}.checkpoint-header{gap:12px}.checkpoint-header>span{font-size:10px}.checkpoint-title-row{display:block;margin-top:18px}.checkpoint-title-row h1{font-size:27px;line-height:1.65}.checkpoint-lesson-link{font-size:11px;padding:11px 0 3px}.checkpoint-intro{font-size:13px;line-height:2}.checkpoint-meter{margin:24px 0 20px}.checkpoint-question-card,.checkpoint-finish{padding:22px 16px}.checkpoint-question-card h2,.checkpoint-finish h2{font-size:20px}.checkpoint-code{margin-top:20px}.checkpoint-code>div{padding:10px 12px;font-size:8px;flex-wrap:wrap;gap:6px}.checkpoint-code>div span{font-size:9px}.checkpoint-code pre{font-size:12px;padding:17px 13px}.checkpoint-option{padding:13px 10px;gap:9px}.checkpoint-letter{width:23px;height:23px;font-size:10px}.checkpoint-option-content{font-size:13px}.checkpoint-options legend{font-size:11px}.checkpoint-feedback-box{padding:16px 13px}.checkpoint-feedback-box h3{font-size:15px}.checkpoint-feedback-box p{font-size:13px}.checkpoint-actions{display:block;margin-top:22px;padding-top:18px}.checkpoint-actions p{margin-bottom:14px}.checkpoint-actions .button{width:100%;justify-content:space-between;padding:13px 16px;font-size:11px}.checkpoint-all-feedback{padding:0 13px}.checkpoint-all-feedback dd{font-size:12px}.checkpoint-score{gap:18px;padding:16px}.checkpoint-score strong{font-size:40px}.checkpoint-score p{font-size:11px}.checkpoint-finish-intro{font-size:13px}.checkpoint-review-list li{gap:11px}.checkpoint-review-list li>span{font-size:10px;padding:3px 5px}.checkpoint-review-list p{font-size:13px}.checkpoint-review-list .checkpoint-review-reason{font-size:12px}.checkpoint-finish-actions{display:block}.checkpoint-finish-actions .button{font-size:11px;width:100%;padding:13px 11px;gap:12px;justify-content:space-between}.checkpoint-retry{display:block;margin-top:10px}.checkpoint-session-note{font-size:11px}}.checkpoint-recovery{border-left:3px solid #6d8656;background:#f0f5e7;padding:14px;margin:18px 0;min-width:0}.checkpoint-recovery p{font-size:13px;line-height:1.9}.checkpoint-recovery button{white-space:normal;overflow-wrap:anywhere;text-align:left;min-height:44px;margin:10px 0;max-width:100%;line-height:1.8}.checkpoint-recovery small{display:block;font-size:12px;line-height:1.8;color:#4d6241}.checkpoint-finish-actions .button{white-space:normal;overflow-wrap:anywhere;min-height:44px;max-width:100%;line-height:1.8}.checkpoint-actions .button{transition:transform .18s}.checkpoint-review-answer span{white-space:pre-wrap;overflow-wrap:anywhere}.debug-lab{color:#172b24;min-width:0}.debug-lab h1:focus{outline:3px solid #277657;outline-offset:6px}.debug-scope{max-width:76ch;line-height:1.8}.debug-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.debug-cards article,.debug-reflection{background:#fff;border:1px solid #b4c5bb;border-radius:16px;padding:22px;min-width:0}.debug-number{color:#345d49;font-weight:700;font-size:.85rem}.debug-cards p,.debug-workspace p{line-height:1.8}.debug-cards button{white-space:normal;height:auto;min-height:44px}.debug-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px;margin-top:22px}.debug-workspace>section{min-width:0}.debug-workspace h2{font-size:1.3rem;margin:20px 0 12px}.debug-workspace h3{font-size:1rem}.debug-warning{border-left:4px solid #88680c;background:#fff7da;padding:12px;color:#594100}.debug-hypotheses{border:1px solid #a6b9ae;padding:14px;border-radius:12px;min-width:0}.debug-hypotheses legend{font-weight:700;padding:0 4px}.debug-hypotheses label{display:flex;align-items:flex-start;gap:10px;padding:12px 4px;cursor:pointer;min-height:44px}.debug-hypotheses input{margin-top:6px;flex:none;accent-color:#215b42}.debug-feedback{background:#e8f2eb;color:#203d2c;padding:14px;border-radius:10px}.debug-workspace details{margin:18px 0;border:1px solid #b4c5bb;border-radius:10px;padding:12px}.debug-workspace summary{cursor:pointer;min-height:32px;font-weight:700}.debug-workspace pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:.85rem;line-height:1.7}.debug-editor{align-self:start;background:#fff;border:1px solid #b4c5bb;border-radius:14px;overflow:hidden;padding:16px}.debug-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:14px 0}.debug-toolbar button{white-space:normal;min-height:44px}.debug-console{background:#13251d;color:#eef8ef;padding:16px;border-radius:10px;min-height:120px}.debug-console h3{color:#eef8ef}.debug-test{padding:10px 0;border-bottom:1px solid #60776a}.debug-console pre{color:#eef8ef}.debug-reflection{margin-top:28px}.debug-lab button:focus-visible,.debug-lab summary:focus-visible,.debug-lab input:focus-visible{outline:3px solid #205c43;outline-offset:3px}.debug-lab button:disabled{opacity:1;color:#536157;background:#edf0ed;border-color:#a8b3ac}.debug-lab .simple-editor{max-width:100%;box-sizing:border-box}.debug-lab .debug-editor .simple-editor{min-height:250px}.debug-lab .debug-editor .editor-mode{white-space:normal;height:auto;min-height:40px}@media(max-width:1000px){.debug-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.debug-workspace{grid-template-columns:1fr}}@media(max-width:540px){.debug-cards{grid-template-columns:1fr}.debug-cards article,.debug-reflection{padding:16px}.debug-editor{padding:10px}.debug-hypotheses{padding:8px}.debug-toolbar{align-items:stretch}.debug-toolbar button{flex:1 1 180px}.debug-workspace{gap:14px}.debug-lab{overflow-wrap:anywhere}.debug-console{padding:12px}}.progress-transfer{margin-top:36px;padding:26px;border:1px solid #d6e0cb;border-radius:9px;background:#fffef9;min-width:0;overflow-wrap:anywhere}.progress-transfer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.progress-transfer h2{font-size:22px;line-height:1.6;margin:8px 0}.progress-transfer-local{flex-shrink:0;font-size:12px;color:#42593b;border:1px solid #d6e0cb;background:#eff4e5;border-radius:5px;padding:7px 10px}.progress-transfer p{font-size:14px;line-height:1.9;margin:10px 0;color:#42593b}.progress-transfer .progress-transfer-help{font-size:13px}.progress-transfer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0}.progress-transfer-actions button{max-width:100%;white-space:normal;line-height:1.6;min-height:44px;font-size:13px;overflow-wrap:anywhere}.progress-transfer-actions .button.primary{color:#fff}.progress-transfer-actions button:focus-visible{outline:3px solid #42593b;outline-offset:4px}.progress-transfer-actions button:disabled{cursor:not-allowed;opacity:.55}.progress-transfer .progress-transfer-notice{padding:12px 15px;border:1px solid #c7d8b5;background:#eef5e7;border-radius:5px;color:#29432a}.progress-transfer .progress-transfer-error,.progress-transfer .progress-transfer-warning{padding:12px 15px;border:1px solid #ddb5a9;background:#fff2eb;border-radius:5px;color:#783528}.progress-transfer-preview{margin-top:20px;border:1px solid #c7d8b5;background:#f2f6ec;border-radius:7px;padding:20px;min-width:0}.progress-transfer-preview h3{font-size:17px;line-height:1.6;margin:0 0 16px}.progress-transfer-preview dl{margin:0}.progress-transfer-preview dl>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 20px;margin:10px 0}.progress-transfer-preview dt{font-size:14px;font-weight:600}.progress-transfer-preview dd{font-size:15px;margin:0;color:#29432a}.progress-transfer-preview dd span{font-size:13px}.progress-transfer-preview .progress-transfer-actions{margin-bottom:0}@media(max-width:600px){.progress-transfer{padding:19px 15px;margin-top:27px}.progress-transfer-heading{display:block}.progress-transfer h2{font-size:20px}.progress-transfer-local{display:inline-block;margin-top:4px}.progress-transfer p{font-size:13px}.progress-transfer-actions{align-items:stretch;flex-direction:column;gap:10px}.progress-transfer-actions button{width:100%;justify-content:center;padding:12px}.progress-transfer-preview{padding:16px 13px}.progress-transfer-preview dl>div{display:block;margin-bottom:16px}.progress-transfer-preview dd{margin-top:5px}.progress-transfer-preview dd span{display:block}}.account-page{max-width:960px;margin-inline:auto}.account-page .lead{max-width:65ch}.account-notice{border-left:4px solid #487258;background:#eff6ee;padding:20px 24px;border-radius:12px;margin-block:24px}.account-notice p{margin-bottom:0}.account-card{background:#fff;border:1px solid #dce4d9;border-radius:20px;padding:clamp(20px,4vw,36px);margin-block:24px}.account-card h2{font-size:1.4rem}.account-card form{display:grid;gap:18px;max-width:600px}.account-card label{display:grid;gap:8px;font-weight:700}.account-card input:not([type=checkbox]){width:100%;min-width:0;border:1px solid #738375;border-radius:10px;padding:12px;background:#fff;color:#263b2e;font:inherit}.account-card .account-consent{display:flex;align-items:flex-start;gap:12px;font-weight:400}.account-consent input{margin-top:5px;min-width:20px;height:20px}.account-help{font-size:.9rem;color:#53634e}.account-tabs,.account-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:16px}.account-tabs button[aria-pressed=true]{color:#274c37;text-decoration:underline;text-underline-offset:6px}.account-code{display:block;overflow-wrap:anywhere;white-space:normal;background:#f0f5ed;border-radius:8px;padding:14px;margin-block:14px;font-size:1rem;-webkit-user-select:all;user-select:all}.account-recovery,.account-sync-preview{border:1px solid #9bb690;background:#f7faf2;padding:20px;border-radius:12px;margin-block:20px}.account-message{color:#285737;background:#eef6ea;padding:16px;border-radius:12px}.account-error{color:#8f3030;background:#fff2ee;padding:16px;border-radius:12px}.account-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}.account-counts div{border-bottom:1px solid #dce4d9;padding-block:12px}.account-counts dd{margin:6px 0;font-weight:700}.account-page .button,.account-page .outline-button{white-space:normal;min-height:44px}.account-page input:focus-visible{outline:3px solid #376a49;outline-offset:3px}.code-walkthrough{min-width:0;margin:16px 0;border:1px solid var(--border,#d8dce4);border-radius:12px;background:var(--surface,#fff);color:var(--text,#182332)}.code-walkthrough summary{padding:15px 16px;cursor:pointer;font-weight:700;line-height:1.6;overflow-wrap:anywhere}.walkthrough-content{padding:0 16px 16px;min-width:0;font-size:14px;line-height:1.8}.walkthrough-content h3{font-size:17px}.walkthrough-content h4{font-size:15px;margin:16px 0 8px}.walkthrough-content h5{font-size:13px;margin:0 0 8px}.walkthrough-content p{overflow-wrap:anywhere}.walkthrough-note{font-size:13px;color:var(--muted,#536174)}.walkthrough-code{max-width:100%;overflow:auto;background:#10212d;color:#edf4fa;border-radius:8px;padding:12px 0;font-size:13px;line-height:1.9;tab-size:4}.walkthrough-code code>span{display:block;min-width:max-content;padding:0 10px;white-space:pre}.walkthrough-code .walkthrough-active{background:#254d54;box-shadow:inset 3px 0 #8be3b4}.walkthrough-line-number{display:inline-block;min-width:3.3em;color:#b9d6d9;-webkit-user-select:none;user-select:none}.walkthrough-state{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.walkthrough-state section{min-width:0;border:1px solid var(--border,#d8dce4);border-radius:8px;padding:12px}.walkthrough-state dl{margin:0}.walkthrough-state dl>div{display:flex;flex-wrap:wrap;gap:6px 12px}.walkthrough-state dt{font-weight:700}.walkthrough-state dd{margin:0;overflow-wrap:anywhere;min-width:0}.walkthrough-state pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.walkthrough-navigation{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.walkthrough-navigation button{font:inherit;font-size:13px;min-height:44px;padding:8px 12px;border:1px solid #80918d;border-radius:8px;background:#f2faf6;color:#153d31;cursor:pointer}.walkthrough-navigation button:disabled{opacity:.5;cursor:default}.code-walkthrough :focus-visible{outline:3px solid #286d55;outline-offset:3px}@media(max-width:480px){.walkthrough-content{padding:0 12px 12px}.walkthrough-state{grid-template-columns:1fr}.walkthrough-navigation button{flex:1 1 auto}.walkthrough-code{font-size:12px}}@media(prefers-reduced-motion:reduce){.code-walkthrough *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.error-help{margin:16px 0;padding:20px;border:1px solid #ddc7a2;border-radius:7px;background:#fff8e8;color:#4e402d;min-width:0;overflow-wrap:anywhere}.error-help .error-help-label{font-size:12px;font-weight:700;letter-spacing:.08em;color:#685134}.error-help h3{font-size:19px;line-height:1.6;margin:7px 0 10px;color:#4e402d}.error-help p{font-size:14px;line-height:1.9;color:#4e402d;margin:9px 0}.error-help .error-help-line{font-size:13px}.error-help .error-help-action{padding-top:10px;border-top:1px solid #ddc7a2;margin-top:13px}.error-help-action strong{font-weight:700}.error-help-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin-top:16px}.error-help-buttons button{max-width:100%;min-height:44px;white-space:normal;line-height:1.7;font-size:13px;overflow-wrap:anywhere}.error-help-buttons button:focus-visible{outline:3px solid #685134;outline-offset:4px}@media(max-width:600px){.error-help{padding:17px 14px}.error-help h3{font-size:17px}.error-help p{font-size:13px}.error-help-buttons{flex-direction:column;align-items:stretch}.error-help-buttons button{width:100%;justify-content:center;padding:11px}}.comfort-intro{display:flex;align-items:center;gap:16px;padding:16px 0}.guide-portrait{flex:none;object-fit:cover;border-radius:50%}.comfort-intro p{margin:0;font-size:14px;color:#435e50;line-height:1.8}.session-pause{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.session-pause button{font-size:13px}.one-small-fix{background:#fff7e6;border:1px solid #d1b06b;border-radius:12px;padding:16px;color:#3d402f}.one-small-fix h3{font-size:16px;margin-top:0}.one-small-fix p{font-size:14px;line-height:1.8}.one-small-fix pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.technical-detail,.all-test-results{margin-top:16px;border-top:1px solid #d8dfd4;padding-top:12px}.technical-detail summary,.all-test-results summary{cursor:pointer;font-size:13px;line-height:1.8;color:#47574b}.empty-run-note{font-size:14px;line-height:1.8;color:#435e50}.success-card .guide-portrait{width:72px;height:72px}.success-choices{display:flex;flex-wrap:wrap;gap:12px}.session-milestone{font-size:14px}.rest-page{max-width:760px;margin:auto;text-align:center}.rest-illustration{width:min(100%,420px);height:auto;border-radius:24px;display:block;margin:24px auto}.rest-page h1{font-size:clamp(28px,5vw,42px)}.rest-page p{line-height:1.9;color:#435e50}.rest-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.rest-record{padding:20px;border-radius:14px;background:#eaf1e6;margin:24px 0}.rest-record strong{display:block;font-size:28px;color:#214c37}.comfort-spec{margin:18px 0;font-size:14px;line-height:1.9}.comfort-spec summary{cursor:pointer;color:#32583f;font-weight:600}.comfort-spec .description{margin-top:12px}.hero-guide{display:flex;gap:12px;align-items:center;margin-top:25px;max-width:390px}.hero-guide img{border-radius:50%;object-fit:cover;flex:none}.hero-guide p{font-size:13px;color:#435e50;line-height:1.8;margin:0}@media(max-width:600px){.comfort-intro{gap:10px}.comfort-intro .guide-portrait,.success-card .guide-portrait{width:56px;height:56px}.success-choices,.success-choices button{width:100%}.rest-page{padding:28px 18px}.hero-guide img{width:58px;height:58px}}.optional-note{font-size:14px;line-height:1.8;background:#f0eee1;border-radius:10px;padding:14px;color:#4f5740}.bridge-lesson{border:1px solid #b6cbb3;border-radius:12px;padding:16px;margin:18px 0;background:#f4f8ee;font-size:14px;line-height:1.9}.bridge-lesson summary{cursor:pointer;font-weight:700;color:#28523a}.bridge-lesson pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#e8eee0;padding:14px;border-radius:8px;font-size:13px}.map-plain-goal{font-size:14px;color:#425b47;line-height:1.8;margin:0 24px 16px}.rest-page h1{text-wrap:balance}.study-small-step{font-size:15px;line-height:1.9;border-left:3px solid #69865b;padding:12px 18px;background:#f1f5e9}.editor-tip{font-size:12px;padding:10px 16px;margin:0;color:#d0decf;background:#243c30;line-height:1.7}.learning-flow.workspace{max-width:808px;margin:0 auto;padding:24px 24px 64px}.lesson-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#526656;font-size:12px;margin-bottom:25px}.lesson-topline button{font-size:12px;min-height:36px}.lesson-progress{display:flex;list-style:none;padding:0;margin:0 0 25px;gap:24px;color:#657063;font-size:12px}.lesson-progress li{display:flex;align-items:center;gap:7px;min-width:0}.lesson-progress li>span{display:grid;place-items:center;border:1px solid #abb9a5;border-radius:50%;width:24px;height:24px;flex:none;font-size:11px}.lesson-progress [aria-current=step]{color:#173e30;font-weight:700}.lesson-progress [aria-current=step]>span{background:#214b36;color:#fff;border-color:#214b36}.learning-flow h1{font-size:clamp(25px,4vw,34px);line-height:1.45;letter-spacing:-.6px;margin:0 0 24px}.lesson-intro{background:#fffef9;border:1px solid #dce3d5;border-radius:18px;padding:28px 32px 32px}.lesson-guide{display:flex;align-items:center;gap:12px;margin-bottom:20px}.lesson-guide img{border-radius:50%;object-fit:cover;flex:none}.lesson-guide p{font-size:14px;color:#536753;margin:0;line-height:1.7}.learning-flow h2{font-size:19px;line-height:1.6;margin:0 0 10px}.lesson-goal-text{font-size:18px;line-height:1.9;margin:0;color:#234032;overflow-wrap:anywhere}.lesson-example{display:flex;align-items:center;gap:20px;background:#eef4e7;border-radius:10px;padding:20px;margin:24px 0}.lesson-example>div{flex:1;min-width:0}.lesson-example span:not(.example-arrow){display:block;font-size:12px;color:#516448;margin-bottom:9px}.lesson-example pre{font:600 17px/1.7 ui-monospace,monospace;color:#284d30;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.example-arrow{color:#638447;font-size:24px}.lesson-reassurance,.lesson-optional{font-size:13px;line-height:1.8;color:#55664e;margin:0 0 18px}.lesson-primary.button,.lesson-primary.outline-button{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:54px;padding:14px 20px;font-size:16px;border-radius:9px;transition:none}.lesson-write-instruction{margin:0 0 17px}.lesson-write-instruction>p{font-size:15px;line-height:1.85;overflow-wrap:anywhere;margin:0 0 8px}.lesson-write-instruction .lesson-keep{font-size:13px;color:#516249}.lesson-writing-example{font:14px/1.7 ui-monospace,monospace;background:#eaf0e3;border-radius:7px;padding:10px 14px;margin:8px 0;white-space:pre-wrap}.lesson-recall{margin:10px 0 0}.lesson-recall summary{font-size:12px;color:#4e614b;cursor:pointer;padding:6px 0}.lesson-recall p,.lesson-recall pre{font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.lesson-answer{margin:0 0 16px}.lesson-answer>.solution-button{font-size:14px;min-height:44px;padding:10px 0;margin:0;color:#355b37;text-decoration:underline;text-underline-offset:4px}.lesson-answer .solution{border:1px solid #cddbc3;background:#f1f6e9;border-radius:10px;padding:16px}.lesson-answer h3{font-size:17px;line-height:1.6;margin:0 0 12px;color:#24472f}.lesson-answer h3:focus{outline:none}.lesson-answer .solution pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.8 ui-monospace,monospace;margin:12px 0;background:#e7efdd}.lesson-answer .solution p{font-size:14px;line-height:1.85;margin:10px 0;overflow-wrap:anywhere}.lesson-answer .solution .lesson-answer-note{margin-top:0;color:#425b3b}.lesson-answer .outline-button{min-height:44px;font-size:13px;white-space:normal}.learning-flow .coding-panel{border-radius:12px;overflow:hidden;border:1px solid #b7c7b4}.learning-flow .editor-toolbar{padding:12px 18px}.learning-flow .editor-toolbar>span{font-size:13px;letter-spacing:0}.learning-flow .editor-toolbar small{font-size:10px;letter-spacing:0}.lesson-main-action{margin:18px 0 22px;text-align:center}.lesson-main-action>p{font-size:12px;line-height:1.7;color:#53634c;margin:10px 0 0}.lesson-rest{font-size:13px;margin-top:12px;padding:10px}.lesson-feedback{margin:16px 0;outline:none}.lesson-feedback{scroll-margin-top:20px}.successful-test-results>h3{font-size:18px;margin:0 0 8px;color:#234032}.successful-test-results>p{font-size:14px;line-height:1.8;margin:0 0 14px}.learning-flow .successful-test-results .test-result{padding:16px;margin-top:12px;border:1px solid #d4e1c9;background:#f1f6eb;color:#2e4b30;font-size:14px}.result-comparison{margin:12px 0 0;display:grid;gap:12px}.result-comparison dt{font-size:12px;font-weight:600;color:#4b6345}.result-comparison dd{margin:5px 0 0}.learning-flow .result-comparison pre{font:14px/1.8 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 12px;margin:0;border-radius:6px;background:#fffef9;color:#233d2e}.learning-flow .successful-test-results+.success-card{margin-top:22px;padding-top:20px;border-top:1px solid #cdddc0}.lesson-main-action>.lesson-result-next{margin:0 0 12px;font-size:14px}.learning-flow .console{border:1px solid #dce4d3;background:#fffef9;border-radius:12px;padding:20px}.learning-flow .console-heading{font-size:13px;margin:0 0 15px;padding-bottom:12px}.learning-flow .console-heading span{display:none}.learning-flow .success-card{margin:0;padding:0;border:0;background:transparent;display:flex;align-items:flex-start;gap:18px}.learning-flow .success-card h3{font-size:23px;margin:0 0 12px}.learning-flow .success-card p{font-size:15px;line-height:1.85}.learning-flow .success-card b{font-size:12px;display:inline-block;margin-top:12px}.learning-flow .session-milestone{display:none}.learning-flow .error-help{margin:0;border:0;padding:0;background:transparent}.learning-flow .error-help h3{font-size:19px}.lesson-help,.lesson-tools{border-top:1px solid #d8e0d0;color:#3c553e}.lesson-help>summary,.lesson-tools>summary{cursor:pointer;min-height:48px;padding:14px 2px;font-size:14px;font-weight:600}.lesson-tools>summary{font-size:12px;font-weight:400;color:#56664e}.lesson-disclosure-body{padding:4px 0 22px;border:0;margin:0}.lesson-disclosure-body p{font-size:14px;line-height:1.85;margin:10px 0}.lesson-disclosure-body pre{max-width:100%;font:13px/1.8 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;background:#edf2e7;border-radius:7px;padding:14px}.lesson-disclosure-body pre.walkthrough-code{background:#10212d;color:#edf4fa;padding:12px 0}.lesson-disclosure-body .text-button{font-size:13px;display:block;padding:12px 0}.lesson-disclosure-body details{margin-top:15px}.lesson-disclosure-body summary{cursor:pointer;font-size:13px;padding:10px 0}.lesson-disclosure-body h3{font-size:16px;line-height:1.7;margin:16px 0 6px}.lesson-tool-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.lesson-disclosure-body .privacy-note{font-size:12px;color:#58654f;margin-top:20px}.lesson-step-explanation section{border-top:1px solid #dce4d3;padding:5px 0 10px}.learning-flow button:focus-visible,.learning-flow summary:focus-visible,.learn-menu summary:focus-visible{outline:3px solid #658b30;outline-offset:3px}.lesson-write-instruction h2:focus{outline:none}.app.learning-app .header{height:72px;max-width:1200px;padding:0 32px;margin:0 auto;justify-content:space-between;flex-wrap:nowrap}.learning-app .header .brand{font-size:21px}.learning-app .header .brand small{display:none}.learn-menu{position:relative;margin-left:auto}.learn-menu>summary{font-size:13px;color:#50674e;cursor:pointer;min-height:44px;padding:12px 0}.learn-menu nav{position:absolute;right:0;top:48px;z-index:20;display:flex;align-items:stretch;flex-direction:column;background:#fffef9;border:1px solid #ccd8c3;box-shadow:0 10px 30px #183b2717;border-radius:10px;padding:10px;gap:0;min-width:190px;width:max-content;max-width:calc(100vw - 32px)}.learn-menu nav button{font-size:14px;min-height:44px;text-align:left;padding:10px 14px;white-space:normal}@media(max-width:600px){.learning-flow.workspace{padding:16px 18px 40px}.lesson-topline{font-size:10px;gap:8px;margin-bottom:16px}.lesson-topline button{font-size:11px}.lesson-progress{gap:12px;font-size:10px;margin-bottom:20px;justify-content:space-between}.lesson-progress li{gap:4px}.lesson-progress li>span{width:20px;height:20px;font-size:10px}.learning-flow h1{margin-bottom:19px}.lesson-intro{padding:20px 18px;border-radius:12px}.lesson-guide{gap:9px;margin-bottom:16px}.lesson-guide img{width:44px;height:44px}.lesson-guide p{font-size:12px}.lesson-goal-text{font-size:16px}.lesson-example{flex-direction:column;align-items:stretch;gap:9px;padding:16px;margin:20px 0}.lesson-example pre{font-size:16px}.example-arrow{align-self:center;transform:rotate(90deg);font-size:18px;line-height:1}.lesson-primary.button,.lesson-primary.outline-button{font-size:14px;padding:13px 10px}.learning-flow h2{font-size:18px}.lesson-write-instruction>p{font-size:14px}.learning-flow .editor-toolbar{padding:11px 13px}.learning-flow .console{padding:17px}.learning-flow .success-card{gap:12px}.learning-flow .success-card .guide-portrait{width:48px;height:48px}.learning-flow .success-card h3{font-size:20px}.learning-flow .success-card p{font-size:14px}.app.learning-app .header{height:62px;padding:0 18px}.learning-app .header .brand{font-size:18px}.learn-menu nav{top:44px;height:auto;flex-wrap:nowrap;overflow:visible;justify-content:start;gap:0;padding:8px}.learn-menu nav button{font-size:13px}}.learning-flow h1:focus{outline:none}.lesson-writing-example figcaption{font:12px/1.7 sans-serif;color:#4b6044;margin-bottom:8px}.lesson-writing-example pre{font:14px/1.7 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.app-recovery{box-sizing:border-box;max-width:700px;margin:8vh auto;padding:28px 24px;background:#fffdf6;color:#17362a;border:1px solid #c9d7c4;border-radius:18px;line-height:1.9;overflow-wrap:anywhere}.recovery-brand{font-size:18px;font-weight:700;letter-spacing:.03em}.app-recovery h1{font-size:clamp(24px,5vw,34px);line-height:1.5;letter-spacing:0}.recovery-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.recovery-actions button{font:inherit;font-weight:700;min-height:48px;padding:10px 18px;border-radius:8px;border:1px solid #315c43;background:#315c43;color:#fff;cursor:pointer}.recovery-actions button+button{background:#fffdf6;color:#17362a}.recovery-actions button:focus-visible{outline:3px solid #966b13;outline-offset:4px}@media(max-width:600px){.app-recovery{margin:20px 12px;padding:22px 18px}.recovery-actions{flex-direction:column}.recovery-actions button{width:100%}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.py-100{padding-block:calc(var(--spacing) * 100)}.py-101{padding-block:calc(var(--spacing) * 101)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color:#1b3029;font-synthesis:none;--green:#193c2e;--lime:#d5f175;--muted:#748078;--line:#dfe5db;background:#fafbf5;font-family:Arial,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;font-weight:400;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,textarea:focus-visible{outline-offset:4px;outline:3px solid #82b348}button:hover{filter:brightness(.94)}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.04em;line-height:1.5}h1{font-size:46px;font-weight:750}h2{font-size:29px;font-weight:700}h3{font-weight:700}pre,code,textarea{font-family:SFMono-Regular,Consolas,monospace}pre{white-space:pre-wrap;overflow-wrap:anywhere}button{transition:background .18s,transform .18s}button:active{transform:translateY(1px)}.header{border-bottom:1px solid var(--line);align-items:center;gap:45px;max-width:1280px;height:100px;margin:auto;padding:0 48px;display:flex}.brand{text-align:left;letter-spacing:-1px;white-space:nowrap;align-items:center;gap:10px;padding:0;font-size:24px;font-weight:800;line-height:1.2;display:flex}.brand-light{font-weight:400}.brand small{letter-spacing:2px;margin-top:7px;font-size:7px;font-weight:600;display:block}.brand-symbol{flex:none;width:43px;height:43px;display:block;overflow:visible}.brand-light{margin-left:3px}.footer-brand .brand-symbol{width:30px;height:30px}.header nav{gap:33px;margin-left:auto;display:flex}.header nav button{color:#637269;white-space:nowrap;padding:11px 0;font-size:12px;font-weight:600}.header nav button.active{color:var(--green);box-shadow:0 2px var(--green)}.header-start{background:var(--green);color:#fff;white-space:nowrap;border-radius:6px;gap:23px;padding:12px 19px;font-size:12px;display:flex}.header-start span{color:var(--lime)}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:12px;max-width:1280px;min-height:614px;margin:auto;padding:50px 48px 58px;display:grid}.eyebrow{letter-spacing:1.6px;color:#5a6b53;align-items:center;gap:9px;font-size:10px;font-weight:650;display:flex}.status-dot{background:#7e9b48;border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:-2.9px;margin:22px 0;font-size:54px;line-height:1.53}.hero h1 span{z-index:0;position:relative}.hero h1 span:after{content:"";background:var(--lime);z-index:-1;height:13px;position:absolute;bottom:4px;left:-2px;right:-2px;transform:rotate(-2deg)}.hero-description{color:#657066;letter-spacing:.5px;font-size:13px;line-height:2.1}.hero-buttons{align-items:center;gap:24px;margin-top:30px;display:flex}.button{white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:26px;padding:15px 22px;font-size:12px;font-weight:650;display:inline-flex}.primary{background:var(--green);color:#fff}.primary span{color:var(--lime)}.text-button{align-items:center;gap:15px;padding:10px 0;font-size:11px;font-weight:600;display:inline-flex}.hero-notes{color:#7a8379;gap:17px;margin-top:20px;font-size:9px;display:flex}.hero-visual{background:#f0f3e8;border:1px solid #e7eadd;border-radius:120px 8px 8px;height:470px;position:relative;overflow:hidden}.visual-grid{opacity:.4;background-image:linear-gradient(#d9e1cd 1px,#0000 1px),linear-gradient(90deg,#d9e1cd 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.orbit{border:1px dashed #ccd8bd;border-radius:50%;width:330px;height:330px;position:absolute;top:18px;left:110px;transform:rotate(-20deg)}.orbit-two{width:420px;height:420px;top:-25px;left:65px}.mountain{clip-path:polygon(50% 0,100% 100%,0 100%);background:#becfb0;width:280px;height:250px;position:absolute;top:38px;left:140px}.mountain.back{background:#d4dfc9;width:220px;height:210px;top:89px;left:38px}.mountain.front{background:linear-gradient(105deg,#b3c49f 50%,#cddbbc 50%);top:24px}.summit{color:var(--green);font-size:43px;position:absolute;top:1px;left:272px;transform:rotate(-6deg)}.visual-label{letter-spacing:2px;writing-mode:vertical-rl;color:#7b8b6d;font-size:7px;position:absolute;top:26px;right:23px}.little-tree{clip-path:polygon(50% 0,90% 48%,73% 48%,100% 82%,55% 82%,55% 100%,45% 100%,45% 82%,0 82%,26% 48%,10% 48%);background:#6b8762;width:30px;height:55px;position:absolute;top:170px;left:90px}.tree-two{width:24px;height:45px;top:164px;left:390px}.tree-three{width:15px;height:30px;top:180px;left:420px}.code-card{color:#e6eeda;background:#17382d;border:1px solid #345345;border-radius:9px;position:absolute;top:194px;left:38px;right:27px;overflow:hidden;transform:rotate(-3deg);box-shadow:0 20px 40px #27432d24}.code-card-top{color:#9cb1a3;border-bottom:1px solid #355044;justify-content:space-between;align-items:center;padding:12px 16px;font:9px monospace;display:flex}.window-dots{color:#7f9a75;letter-spacing:4px;font-size:9px}.code-lines{white-space:nowrap;padding:22px 10px 24px;font:13px/2 monospace}.code-lines i{color:#6e8a78;margin:0 22px 0 6px;font-style:normal}.syntax-purple{color:#c7b2e1}.syntax-lime{color:#d7ed9e}.cursor{border-right:2px solid #d7ed9e}.code-output{background:#244638;border-radius:4px;margin:0 14px 15px;padding:12px;font:11px monospace}.code-output>span{color:#d5ed9b;padding-right:7px}.code-output b{float:right;color:#d7ed9e;background:#355c3e;border-radius:3px;padding:3px 5px;font:8px Arial}.xp-float{background:#fffefa;border:1px solid #e2e5d7;border-radius:5px;gap:11px;padding:12px 18px;display:flex;position:absolute;bottom:33px;right:17px;transform:rotate(3deg);box-shadow:0 8px 20px #1f402514}.xp-float>span{color:#a1b95a;font-size:29px}.xp-float div{color:#7b8574;font-size:8px}.xp-float strong{letter-spacing:1px;color:#264331;margin-top:3px;font-size:9px;display:block}.xp-float b{color:#7c9250;margin-left:10px}.visual-coordinate{letter-spacing:1.3px;color:#91a081;font:6px monospace;position:absolute;bottom:12px;left:22px}.feature-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);max-width:1184px;margin:auto;padding:30px 0;display:grid}.feature-strip>div{border-right:1px solid var(--line);align-items:center;gap:17px;padding:0 25px;display:flex}.feature-strip>div:last-child{border:0}.feature-icon{color:#5d7548;background:#edf1e3;border-radius:9px;flex-shrink:0;place-items:center;width:45px;height:45px;font-size:25px;display:grid}.feature-strip strong{font-size:12px}.feature-strip p{color:#7c8578;margin-top:3px;font-size:10px}.section{max-width:1184px;margin:auto;padding:64px 0}.section-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.section-heading h2{margin-top:12px}.preview-stages{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px;display:grid}.preview-stage{text-align:left;border:1px solid var(--line);background:#fffef9;border-radius:8px;padding:23px 25px}.preview-stage:hover{background:#f0f4e6;border-color:#b7c6a5}.stage-top{color:#69805d;justify-content:space-between;display:flex}.stage-number{letter-spacing:1.5px;font:9px monospace}.stage-glyph{color:#547346;background:#edf2e1;border-radius:14px;place-items:center;width:60px;height:60px;margin:25px 0 20px;font-size:35px;display:grid}.preview-stage h3{margin-bottom:8px;font-size:18px}.preview-stage p{color:#7a8275;min-height:38px;font-size:11px}.stage-bottom{border-top:1px solid var(--line);color:#6f7c66;justify-content:space-between;align-items:center;margin-top:25px;padding-top:16px;font-size:9px;display:flex}.closing{text-align:center;background:#edf2e3;border-top:1px solid #e5ead9;border-bottom:1px solid #e5ead9;margin:10px 0 70px;padding:55px 25px}.closing .eyebrow{justify-content:center;font-size:8px}.closing h2{margin:12px 0;font-size:31px}.closing p{color:#77816d;margin-bottom:24px;font-size:12px}footer{border-top:1px solid var(--line);align-items:center;gap:28px;max-width:1184px;margin:0 auto;padding:25px 0 35px;display:flex}.footer-brand{gap:4px;font-size:17px}footer p{color:#81887c;font-size:9px}footer>span{color:#90988a;margin-left:auto;font-size:8px}.muted{color:var(--muted);font-size:13px;line-height:1.9}.mobile-only{display:none}.save-error{text-align:center;background:#fff1d2;padding:10px 25px;font-size:12px}.map-page h1,.plans h1,.roadmap h1{margin:12px 0}.level-pill{white-space:nowrap;background:#eef3df;border:1px solid #d6e0bf;border-radius:7px;padding:15px 20px;font-size:11px}.level-pill strong{font-size:23px;display:block}.progress-summary{color:#78826e;align-items:center;gap:22px;padding:24px 0 35px;font-size:11px;display:flex}.progress-track{background:#e6eadf;border-radius:5px;flex:1;height:6px;overflow:hidden}.progress-track i{background:#729552;border-radius:5px;height:100%;display:block}.map-stages{grid-template-columns:1fr 1fr;gap:22px;display:grid}.map-stage{border:1px solid var(--line);background:#fffef9;border-radius:9px;padding:25px}.map-stage-title{align-items:center;gap:18px;display:flex}.map-stage-title .stage-glyph{flex-shrink:0;margin:0;font-size:29px}.map-stage-title small{letter-spacing:1px;color:#758767;font:9px monospace}.map-stage-title h2{font-size:19px}.map-stage-title p{color:#839077;margin-top:5px;font-size:11px}.stage-count{color:#839077;margin-left:auto;font:12px monospace}.quest-list{margin-top:22px}.quest-list button{text-align:left;border-top:1px solid #e8ebdf;align-items:center;gap:12px;width:100%;padding:13px 0;font-size:12px;display:flex}.quest-list small{color:#8b957e;white-space:nowrap;margin-left:auto;font-size:9px}.quest-check{color:#8b977f;border:1px solid #dce3d2;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font:9px monospace;display:grid}.quest-check.done{color:#425f2e;background:#dcebb8;border-color:#bdce9a}.badge-section{margin-top:45px}.badge-section h2{margin-bottom:15px;font-size:21px}.badges{flex-wrap:wrap;gap:12px;display:flex}.badges span{background:#edf2df;border:1px solid #dce5c9;border-radius:7px;padding:12px 17px;font-size:12px}.workspace{max-width:1360px;margin:auto;padding:25px 35px 60px}.workspace-breadcrumb{color:#6d7a65;align-items:center;gap:25px;padding:0 0 22px;font-size:10px;display:flex}.workspace-breadcrumb>span:last-child{margin-left:auto}.workspace-breadcrumb button{padding:0}.workspace-grid{grid-template-columns:350px minmax(0,1fr);gap:35px;display:grid}.quest-panel{padding:20px 4px}.quest-panel .eyebrow{justify-content:space-between}.quest-panel h1{margin:20px 0 24px;font-size:29px}.description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:2.1}.mission-note{color:#6b7a5d;background:#eef2e5;border-radius:5px;margin:24px 0;padding:16px;font-size:11px;line-height:1.9}.mission-note>span{float:left;margin-right:12px;font-size:22px}.support{border-top:1px solid var(--line);padding-top:24px}.support h3{margin-bottom:13px;font-size:12px}.outline-button{background:#fcfdf7;border:1px solid #cbd5be;border-radius:5px;justify-content:space-between;align-items:center;gap:22px;padding:10px 14px;font-size:11px;display:inline-flex}.support>.outline-button{width:100%}.hint{background:#f2f4e8;border-left:2px solid #b9cf80;margin-top:12px;padding:13px;font-size:12px;line-height:1.9}.hint b{letter-spacing:1px;color:#7a9255;margin-bottom:5px;font-size:8px;display:block}.solution-button{color:#6d7e5a;margin-top:12px;display:block}.solution{font-size:12px}.solution pre{background:#eaf0df;margin:10px 0;padding:15px}.solution p{margin:15px 0;line-height:1.9}.privacy-note{color:#929983;margin-top:30px;font-size:9px;line-height:1.9}.coding-panel{background:#fffef9;border:1px solid #d6dece;border-radius:8px;align-self:start;overflow:hidden}.editor-toolbar{color:#dbe6d5;background:#17382d;border-bottom:1px solid #345046;justify-content:space-between;align-items:center;padding:13px 20px;font:11px monospace;display:flex}.editor-toolbar>span{align-items:center;gap:11px;display:flex}.editor-toolbar i{background:#a2c668;border-radius:50%;width:7px;height:7px}.editor-toolbar small{color:#9ab28c;letter-spacing:1px;border:1px solid #496443;padding:2px 4px;font-size:7px}.editor-toolbar button{color:#b6c5ad;font-size:10px}.editor-mode{text-align:right;color:#a7b89d;background:#1e1e1e;width:100%;padding:7px 15px;font-size:9px;display:block}.editor-loading{color:#cad7bb;background:#1e1e1e;place-items:center;height:340px;font-size:12px;display:grid}.simple-editor{color:#e5eedc;resize:vertical;tab-size:4;background:#1e1e1e;border:0;width:100%;height:340px;padding:20px;font-size:14px;line-height:1.8;display:block}.run-toolbar{border-bottom:1px solid var(--line);background:#f4f6ed;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;display:flex}.run-toolbar>div{gap:9px;display:flex}.run-toolbar .button{padding:11px 18px;font-size:11px}.local-badge{color:#7c8b6b;align-items:center;gap:6px;font-size:9px;display:flex}.local-badge i{background:#80a556;border-radius:50%;width:5px;height:5px}.console{min-height:200px;padding:20px;font-size:12px}.console-heading{letter-spacing:1px;color:#567047;border-bottom:1px solid #e7ecdd;margin-bottom:16px;padding-bottom:12px;font:9px monospace}.console-heading span{color:#96a189;margin-left:10px;font:9px Arial}.console-placeholder{color:#9ca58f;font-size:11px;line-height:1.9}.console pre{font-size:12px;line-height:1.8}.error-output{color:#ab4c3b;background:#fff1e8;border-radius:5px;padding:12px}.test-result{border-radius:4px;margin-top:9px;padding:10px 12px;font-size:11px}.test-result.passed{color:#507b34;background:#eef5df}.test-result.failed{color:#9d543b;background:#fff1e7}.test-result pre{margin:7px 0 0;font-size:10px}.success-card{background:#e7f0d2;border:1px solid #ccdcaf;border-radius:7px;flex-wrap:wrap;align-items:start;gap:14px;margin-top:20px;padding:20px;display:flex}.success-card>span{color:#83a440;font-size:29px}.success-card>div{flex:1;min-width:160px}.success-card h3{font-size:19px}.success-card p{margin:8px 0;font-size:11px;line-height:1.9}.success-card b{color:#76934d;font:10px monospace}.success-card .button{padding:11px;font-size:10px}.roadmap-list{margin:40px 0}.roadmap-list button{text-align:left;border-top:1px solid var(--line);align-items:center;gap:30px;width:100%;padding:26px 22px;display:flex}.roadmap-index{color:#a3b58a;font:26px monospace}.roadmap-list h2{font-size:20px}.roadmap-list p{color:#7d8971;margin-top:5px;font-size:12px}.roadmap-list button>span:last-child{white-space:nowrap;color:#6e8259;margin-left:auto;font-size:11px}.plan-cards{grid-template-columns:1fr 1fr;gap:25px;margin-top:40px;display:grid}.plan-card{background:#fffef8;border:1px solid #cbd8b9;border-radius:9px;padding:35px}.plan-tag{letter-spacing:1px;color:#678148;background:#edf4de;border:1px solid #bccfa0;border-radius:3px;padding:5px 8px;font-size:9px}.plan-card h2{margin:20px 0 8px;font-size:29px}.plan-card>p{color:#7a8870;font-size:12px;line-height:1.9}.price{margin:23px 0 12px;font-size:36px;font-weight:700;line-height:1.6}.price small{color:#8c987f;font-size:10px;font-weight:400}.plan-card ul{margin:22px 0 30px;padding:0;font-size:12px;line-height:2.7;list-style:none}.plan-card li:before{content:"✓";color:#91a96a;margin-right:12px}.upcoming{background:#f0f2e9;border-color:#e0e5d6}.upcoming .price{color:#8b987b;font-size:29px}.upcoming .plan-tag{color:#7b8b69;background:#e9ede2;border-color:#d3debf}@media(min-width:1400px){.hero{min-height:680px;padding-top:70px;padding-bottom:75px}.hero-visual{height:490px}.hero h1{font-size:60px}.hero-description{font-size:14px}}@media(max-width:1100px){.header{gap:25px;padding:0 28px}.header nav{gap:20px}.hero{gap:20px;padding-left:28px;padding-right:28px}.hero h1{font-size:44px}.hero-buttons{gap:16px}.hero-buttons .button{padding:14px}.hero-notes{gap:10px;font-size:8px}.hero-visual{height:450px}.code-card{left:18px;right:18px}.code-lines{font-size:11px}.code-lines i{margin-right:14px}.xp-float{padding:10px;right:10px}.section,.feature-strip,footer{margin-left:28px;margin-right:28px}.feature-strip>div{gap:12px;padding:0 15px}.feature-strip strong{font-size:10px}.feature-strip p{font-size:9px}.workspace-grid{grid-template-columns:290px minmax(0,1fr);gap:23px}.workspace{padding-left:25px;padding-right:25px}.local-badge{display:none}.run-toolbar{justify-content:end}.stage-glyph{width:48px;height:48px}}@media(max-width:760px){.header{flex-wrap:wrap;gap:15px;height:79px;padding:0 20px}.brand{font-size:21px}.brand small{letter-spacing:1.5px;font-size:6px}.brand-symbol{width:36px;height:36px}.header nav{border-top:1px solid var(--line);order:3;justify-content:center;gap:40px;width:100%;height:42px;margin:0}.header nav button{font-size:10px}.header-start{gap:15px;margin-left:auto;padding:10px 12px;font-size:9px}.header{height:113px;padding-top:13px}.hero{grid-template-columns:1fr;gap:36px;padding:43px 23px 32px}.hero .eyebrow{letter-spacing:.8px;font-size:8px}.hero h1{letter-spacing:-2.3px;margin:20px 0;font-size:43px}.hero-description{font-size:12px}.hero-buttons{gap:20px;margin-top:26px}.hero-buttons .button{gap:19px;padding:14px 18px;font-size:10px}.hero-buttons .text-button{gap:9px;font-size:10px}.hero-notes{gap:13px;margin-top:17px;font-size:8px}.hero-visual{border-radius:85px 7px 7px;justify-self:center;width:100%;max-width:500px;height:385px}.mountain{top:15px;left:120px}.mountain.front{width:240px;height:205px;top:10px;left:130px}.mountain.back{height:160px;top:53px;left:35px}.summit{top:-15px;left:242px}.code-card{top:156px;left:24px;right:20px}.code-lines{padding:16px 9px;font-size:12px}.code-output{font-size:10px}.xp-float{bottom:28px;right:16px}.tree-one{top:137px;left:70px}.tree-two{top:128px;left:340px}.tree-three{top:145px;left:368px}.feature-strip{grid-template-columns:1fr;margin:0 23px;padding:11px 0}.feature-strip>div{border-bottom:1px solid #e7eadf;border-right:0;gap:17px;padding:15px 6px}.feature-strip strong{font-size:12px}.feature-strip p{font-size:10px}.feature-icon{width:38px;height:38px;font-size:23px}.section{margin:0 23px;padding:43px 0}.section-heading{align-items:start;gap:15px}.section-heading h2{font-size:24px}.section-heading>.text-button{white-space:nowrap;margin-top:13px;font-size:9px}.eyebrow{font-size:8px}.preview-stages{grid-template-columns:1fr;gap:14px;margin-top:23px}.preview-stage{padding:21px}.preview-stage .stage-glyph{float:left;width:48px;height:48px;margin:22px 18px 20px 0;font-size:29px}.preview-stage h3{margin-top:22px;font-size:18px}.preview-stage p{min-height:25px;font-size:10px}.stage-bottom{clear:both;margin-top:20px}.closing{margin-bottom:35px;padding:40px 23px}.closing h2{font-size:25px}.closing p{font-size:11px}.closing .button{font-size:10px}footer{flex-wrap:wrap;gap:12px;margin:0 23px;padding:25px 0}.footer-brand{font-size:15px}footer p{font-size:8px}footer>span{width:100%;margin:0;font-size:7px}.mobile-only{display:block}h1{font-size:32px}.muted{font-size:12px}.map-page .section-heading{align-items:center}.level-pill{padding:10px;font-size:8px}.level-pill strong{font-size:18px}.progress-summary{gap:12px;padding-top:20px;font-size:9px}.map-stages{grid-template-columns:1fr;gap:17px}.map-stage{padding:20px}.map-stage-title{gap:13px}.map-stage-title h2{font-size:18px}.map-stage-title p{font-size:10px}.map-stage-title .stage-glyph{width:44px;height:44px}.quest-list button{font-size:11px}.workspace{padding:20px 17px 40px}.workspace-breadcrumb{flex-wrap:wrap;gap:13px;font-size:8px}.workspace-grid{grid-template-columns:1fr;gap:25px}.quest-panel{padding:0 5px}.quest-panel h1{margin:16px 0;font-size:27px}.description{font-size:12px;line-height:2}.mission-note{margin:20px 0}.support{padding-top:18px}.privacy-note{margin-top:15px}.editor-toolbar,.run-toolbar{padding:12px}.run-toolbar .button{padding:11px 14px}.console{padding:17px}.success-card{padding:15px}.roadmap h1,.plans h1{font-size:30px}.roadmap-list button{gap:17px;padding:22px 0}.roadmap-list h2{font-size:16px}.roadmap-list p{font-size:10px}.roadmap-index{font-size:23px}.roadmap-list button>span:last-child{font-size:8px}.plan-cards{grid-template-columns:1fr;gap:20px;margin-top:26px}.plan-card{padding:25px}.price{font-size:33px}.price small{font-size:9px}.badge-section{margin-top:35px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.test-examples{border:1px solid var(--line);border-radius:6px;margin-top:20px;padding:14px;font-size:12px}.test-examples summary{cursor:pointer;font-weight:600}.test-examples>div{margin-top:12px}.test-examples strong{font-size:11px}.test-examples pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#365344;margin-top:5px;font:12px/1.7 ui-monospace,monospace}@media(max-width:600px){.hero h1{letter-spacing:-1.6px;font-size:clamp(28px,8.6vw,36px)}}.future-path{border:1px solid var(--line);background:#f0f3e9;border-radius:8px;margin-top:50px;padding:30px}.future-path h2{margin:15px 0;font-size:26px}.future-path p{max-width:700px;font-size:13px;line-height:2}.future-path ol{margin-top:20px;padding-left:22px}.future-path li{padding:10px 0;font-size:13px}.future-path li span{color:#586e5d;margin-top:5px;line-height:1.8;display:block}.study-resume{background:#eaf0e6;border-radius:20px;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;padding:2rem;display:grid}.study-resume h2,.study-resume h3{margin:0 0 .7rem}.study-resume p{color:#53615a;line-height:1.8}.review-list{flex-wrap:wrap;gap:.5rem;max-height:240px;display:flex;overflow:auto}.review-toggle{margin-top:1.5rem}.review-toggle[aria-pressed=true]{background:#eaf0e6}@media(max-width:700px){.study-resume{grid-template-columns:1fr;padding:1.25rem}}.monthly-goal{background:#eaf0e6;border-radius:20px;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;padding:2rem;display:grid}.monthly-goal label,.rubric>label{margin:.8rem 0;font-weight:700;display:block}.projects-page select{color:#183e31;max-width:100%;font:inherit;background:#fff;border:1px solid #8b9d91;border-radius:8px;padding:.8rem}.monthly-goal select{width:100%}.project-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.project-card{background:#fff;border:1px solid #d6dfd2;border-radius:18px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.project-card h2{margin:0;font-size:1.4rem;line-height:1.5}.project-card p{margin:0;line-height:1.9}.project-card button{margin-top:auto}.project-card small{color:#53615a;line-height:1.8}.project-deliverable{background:#f4f6ef;border-radius:8px;padding:1rem;font-size:.9rem}.monthly-review,.rubric{border-top:1px solid #d6dfd2;margin-top:3rem;padding-top:2rem}.monthly-review li,.project-workspace li{margin:.7rem 0;line-height:1.9}.projects-page h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.5}.project-intro{font-size:1.1rem;line-height:1.9}.project-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:2rem;margin-top:2rem;display:grid}.project-workspace pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf1e8;border-radius:8px;padding:1rem;font-size:.85rem}.project-workspace .console pre{background:0 0;padding:0}.project-workspace details{border-bottom:1px solid #d6dfd2;padding:1rem 0}.project-workspace summary{cursor:pointer;font-weight:700}.project-workspace h3{margin-top:2rem}.project-requirements{padding-left:1.2rem}.project-passed{color:#b9e98d}.rubric-row{border-bottom:1px solid #d6dfd2;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.rubric-row h3{margin:0}.rubric-row p{max-width:60ch;line-height:1.7}.rubric-row select{flex-shrink:0}@media(max-width:900px){.project-cards,.project-workspace{grid-template-columns:1fr}}@media(max-width:600px){.monthly-goal{grid-template-columns:1fr;padding:1.25rem}.rubric-row{flex-direction:column;align-items:start}.projects-page select{font-size:.9rem}}.plan-faq{max-width:850px;margin-top:3rem}.plan-faq details{border-bottom:1px solid #d6dfd2;padding:1.25rem 0}.plan-faq summary{cursor:pointer;font-weight:700}.plan-faq p{color:#53615a;line-height:1.9}.header nav{gap:1rem}.header nav button{white-space:nowrap}@media(max-width:1150px){.header{flex-wrap:wrap;gap:1rem}.header nav{order:3;justify-content:center;width:100%}.header-start{margin-left:auto}}@media(max-width:600px){.header nav{justify-content:flex-start;gap:.8rem;padding-bottom:.4rem;overflow-x:auto}.header nav button{flex-shrink:0;font-size:.8rem}.header{row-gap:12px;height:auto}.header nav{flex-wrap:wrap;justify-content:center;gap:0 12px;height:auto;min-height:44px;padding:4px 0;overflow:visible}.header nav button{min-width:44px;min-height:44px;padding:10px 4px}.projects-page h1{text-wrap:balance;font-size:clamp(1.6rem,7vw,1.8rem)}}:root{--muted:#536257}.muted,.hero-notes,.feature-strip p,.preview-stage p,.stage-number,.stage-bottom,.closing p,footer p,footer>span,.privacy-note{color:#536257}.hero-notes{font-size:11px}.privacy-note{font-size:12px;line-height:1.9}.syntax-comment{color:#b8c9bb}.xp-float,.xp-float div,.xp-float strong b{color:#35532c}.roadmap h1{text-wrap:balance}.save-error{line-height:1.8}select:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #567b26}.local-badge,.map-stage-title p,.stage-count,.progress-summary,.quest-list small,.workspace-breadcrumb,.plan-card p,.roadmap-list p,.roadmap-index{color:#4b5d50}.map-stage-title small,.quest-check,.roadmap-list button>span:last-child,.plan-tag,.upcoming .plan-tag,.upcoming .price,.price small{color:#43583b}.plan-tag,.price small{font-size:12px}.mission-note,.hint b,.solution-button,.console-heading span,.console-placeholder,.success-card b,.test-result.passed{color:#42583b}.project-passed{color:#315e29;font-weight:700}.hint b,.console-heading,.console-heading span{font-size:11px}.console-placeholder,.success-card p{font-size:12px}.skip-link{z-index:100;color:#fff;background:#164b35;border-radius:8px;padding:12px 20px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.brand-registration{letter-spacing:0;vertical-align:super;margin-left:1px;font-size:8px}.trademark-note{color:#536257;max-width:1184px;margin:0 auto;padding:0 0 24px;font-size:11px;line-height:1.8}@media(max-width:1200px){.trademark-note{margin:0 28px}}@media(max-width:700px){.trademark-note{margin:0 23px;font-size:10px}}
