@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{color:#252b36;font-synthesis:none;text-rendering:optimizelegibility;--ink:#252b36;--muted:#7f8794;--green:#2d805e;--green-dark:#206748;--green-pale:#e8f3ed;--line:#e9ebef;--mono:"DM Mono", monospace;background:#f5f6f8;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:360px;margin:0}button,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{background:#fff;border-right:1px solid #eceef1;flex-direction:column;flex-shrink:0;width:256px;height:100vh;padding:27px 15px 17px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:11px;margin-bottom:40px;padding:0 10px;text-decoration:none;display:flex}.brand-mark{color:#fff;width:39px;height:39px;font:600 14px var(--mono);letter-spacing:-2px;background:#286f52;border-radius:12px;place-items:center;display:grid;box-shadow:0 4px 9px #286f5230}.brand-copy{flex-direction:column;gap:1px;display:flex}.brand-copy strong{letter-spacing:-.8px;font:800 18px Manrope,sans-serif}.brand-copy strong span{color:#47a477}.brand-copy small{font:500 8px var(--mono);color:#9ca3ad;letter-spacing:1.1px}.sidebar-label{color:#9da4ae;font:500 9px var(--mono);letter-spacing:1.2px;margin-bottom:11px;padding:0 11px}.main-nav{gap:4px;margin-bottom:28px;display:grid}.nav-link{text-align:left;color:#707986;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:11px 10px;font-size:12px;display:flex;position:relative}.nav-link>span{text-align:center;width:17px;font-size:16px}.nav-link.active{color:#216c4d;background:#edf6f0;font-weight:700}.nav-link i{font:10px var(--mono);color:#8b948f;margin-left:auto;font-style:normal}.roadmap-label{margin-bottom:12px}.pattern-nav{scrollbar-width:thin;padding-right:2px;overflow:auto}.pattern-group{margin-bottom:18px}.pattern-group-title{color:#9aa1ab;padding:0 10px 6px;font-size:10px;display:block}.pattern-link{text-align:left;color:#69717e;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;width:100%;padding:7px 10px;font-size:11px;display:flex}.pattern-link:hover,.pattern-link.selected{color:#246c4e;background:#f1f6f2}.pattern-icon{color:#8d9a93;text-align:center;width:17px;font:13px var(--mono)}.pattern-link.selected .pattern-icon{color:var(--green)}.sidebar-bottom{border-top:1px solid #eff0f2;align-items:flex-start;gap:10px;margin-top:auto;padding:15px 7px 0;display:flex}.streak-icon{color:#c59235;background:#f7f1e4;border-radius:8px;place-items:center;width:27px;height:27px;font-size:14px;display:grid}.sidebar-bottom strong{font-size:10px}.sidebar-bottom p{color:#8b929d;margin:4px 0 0;font-size:9px;line-height:1.5}.main-area{flex:1;min-width:0}.topbar{background:#fff9;border-bottom:1px solid #e9ebef;justify-content:space-between;align-items:center;height:61px;padding:0 42px;display:flex}.breadcrumb{color:#9299a4;align-items:center;gap:11px;font-size:11px;display:flex}.breadcrumb b{color:#c3c8ce;font-weight:400}.breadcrumb strong{color:#4a515d;font-weight:600}.topbar-right{color:#45505b;align-items:center;gap:9px;font-size:10px;display:flex}.progress-label{color:#9199a4;font:9px var(--mono);letter-spacing:.6px}.mini-progress{background:#e9ecee;border-radius:5px;width:74px;height:4px;margin-left:5px;overflow:hidden}.mini-progress span{border-radius:inherit;background:#59a27a;height:100%;transition:width .2s;display:block}.avatar{color:#397756;background:#e5efe9;border-radius:50%;place-items:center;width:27px;height:27px;margin-left:9px;font-size:11px;font-weight:700;display:grid}.page-content{max-width:1440px;margin:0 auto;padding:32px 42px 55px}.welcome-row{justify-content:space-between;align-items:center;min-height:230px;display:flex}.eyebrow{font:500 9px var(--mono);letter-spacing:1.1px;color:#738078}.eyebrow-dot{vertical-align:1px;background:#55a67c;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}h1,h2,h3,p{margin-top:0}.welcome-row h1,.page-heading h1{letter-spacing:-1.6px;color:#262d38;margin:15px 0 11px;font:700 39px/1.12 Manrope,sans-serif}.welcome-row h1 span,.page-heading h1 span{color:#32805c}.welcome-copy,.page-heading>div>p{color:#7f8791;margin:0;font-size:13px}.welcome-art{place-items:center;width:300px;height:195px;margin-right:54px;display:grid;position:relative}.orbit{border:1px solid #d9e8dd;border-radius:50%;width:170px;height:170px;position:absolute;transform:rotate(-28deg)scaleY(.55)}.orbit-two{border-color:#e5ece6;width:235px;height:235px;transform:rotate(38deg)scaleY(.47)}.orbit-core{z-index:1;color:#fff;width:84px;height:84px;font:700 28px var(--mono);background:#2f7756;border-radius:24px;place-items:center;display:grid;box-shadow:0 13px 28px #2f775637}.orbit-core span{color:#9de0b7}.art-chip{z-index:2;color:#43825f;font:10px var(--mono);background:#fff;border:1px solid #ecefeb;border-radius:6px;padding:7px 10px;position:absolute;box-shadow:0 4px 13px #2136290d}.chip-top{top:35px;right:36px}.chip-bottom{color:#738176;bottom:34px;left:15px}.art-spark{color:#d5ad5c;position:absolute;bottom:42px;right:60px}.learning-layout{grid-template-columns:minmax(0,1.65fr) minmax(265px,.85fr);align-items:start;gap:20px;display:grid}.section-heading{justify-content:space-between;align-items:end;margin-bottom:15px;display:flex}.section-heading h2{letter-spacing:-.45px;margin:5px 0 0;font:700 20px Manrope,sans-serif}.phase-pill{color:#68776d;background:#fff;border:1px solid #e7ebe8;border-radius:5px;padding:6px 9px;font-size:9px}.lesson-card,.progress-card,.roadmap-card,.quiz-card,.note-card{background:#fff;border:1px solid #eaedf0;border-radius:9px}.lesson-card{padding:22px 23px 20px}.lesson-top{align-items:center;gap:15px;display:flex}.large-pattern-icon{color:#367e59;width:40px;height:40px;font:17px var(--mono);background:#edf5ef;border-radius:10px;flex:none;place-items:center;display:grid}.label-small{color:#969ea7;font:9px var(--mono);letter-spacing:.7px;display:block}.lesson-top p{color:#444d58;margin:5px 0 0;font-size:12px;line-height:1.6}.lesson-rule{background:#f1f7f2;border-radius:6px;align-items:flex-start;gap:11px;margin:20px 0 18px;padding:12px 13px;display:flex}.rule-icon{color:#448b61;font-size:14px}.lesson-rule strong{color:#3e7454;font-size:11px}.lesson-rule p{color:#67786d;margin:4px 0 0;font-size:11px;line-height:1.5}.lesson-details{grid-template-columns:1fr 1fr;gap:15px 22px;display:grid}.lesson-details>div:first-child{grid-column:1/-1}.lesson-details p{color:#5c6570;margin:5px 0 0;font-size:10px;line-height:1.55}.lesson-actions{gap:12px;margin-top:14px;display:flex}.button{cursor:pointer;border:0;border-radius:6px;padding:11px 14px;font-size:10px;font-weight:600;transition:all .15s}.button-primary{color:#fff;background:#2d7653;box-shadow:0 3px 7px #286d4b1c}.button-primary:hover{background:#215e41;transform:translateY(-1px)}.button-primary:disabled{opacity:.7;cursor:wait;transform:none}.button-primary span,.button-quiet span{margin-left:9px}.button-quiet{color:#626c77;background:0 0;border:1px solid #e5e8eb}.button-quiet:hover{background:#fff}.progress-card{padding:20px 19px}.progress-card-head{justify-content:space-between;align-items:center;display:flex}.progress-card-head h3{letter-spacing:-.3px;margin:8px 0 0;font:700 16px/1.35 Manrope,sans-serif}.progress-ring{--progress:0%;background:radial-gradient(closest-side, white 80%, transparent 82%), conic-gradient(#55a477 var(--progress), #e9efeb 0);border-radius:50%;place-items:center;width:63px;height:63px;display:grid}.progress-ring span{color:#347451;font:700 14px Manrope,sans-serif}.progress-ring small{font-size:9px}.progress-description{color:#858d97;margin:13px 0 15px;font-size:10px;line-height:1.6}.progress-divider{background:#eff0f2;height:1px;margin-bottom:15px}.phase-progress{margin-bottom:14px}.phase-progress>div:first-child{align-items:center;gap:7px;display:flex}.phase-number{color:#3d7e59;width:19px;height:19px;font:10px var(--mono);background:#edf4ef;border-radius:6px;flex:none;place-items:center;display:inline-grid}.phase-progress strong{font-size:10px;font-weight:600}.phase-count{font:9px var(--mono);color:#9ca3ac;margin-left:auto}.phase-track{background:#edf0ee;border-radius:4px;height:3px;margin:8px 0 0 26px}.phase-track i{background:#6eaf88;border-radius:4px;height:100%;display:block}.text-button{color:#367e59;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:600}.text-button span{margin-left:6px}.roadmap-section{margin-top:37px}.roadmap-section .section-heading{align-items:end}.roadmap-caption{color:#939aa4;font-size:10px}.roadmap-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.roadmap-card{padding:15px 16px;transition:border-color .2s}.roadmap-card.current{border-color:#b8d8c2;box-shadow:0 0 0 2px #e6f2e9}.roadmap-card-top{color:#9aa1a9;justify-content:space-between;align-items:center;font-size:9px;display:flex}.roadmap-card h3{margin:13px 0 5px;font:700 14px Manrope,sans-serif}.roadmap-card>p{color:#8b929b;min-height:30px;margin-bottom:12px;font-size:10px;line-height:1.5}.roadmap-patterns{flex-wrap:wrap;gap:5px;display:flex}.roadmap-patterns button{color:#6a737e;cursor:pointer;background:#fff;border:1px solid #eceef0;border-radius:4px;padding:5px 7px;font-size:9px}.roadmap-patterns button:hover,.roadmap-patterns button.current-pattern{color:#317750;background:#f3f8f4;border-color:#bdd9c5}.page-heading{justify-content:space-between;align-items:end;margin-bottom:26px;display:flex}.page-heading h1{margin:12px 0 8px}.practice-heading{margin-bottom:20px}.exercise-count{color:#387b55;font:700 20px Manrope,sans-serif}.exercise-count span{color:#939aa4;text-align:right;margin-top:2px;font:10px DM Sans,sans-serif;display:block}.progress-load-error{background:#fff8f6;border:1px solid #eed1ca;border-radius:7px;justify-content:space-between;align-items:center;gap:14px;margin:-5px 0 16px;padding:12px 14px;display:flex}.progress-load-error strong{color:#965747;font-size:12px}.progress-load-error p{color:#856d68;overflow-wrap:anywhere;margin:3px 0 0;font-size:11px;line-height:1.5}.progress-load-error .button{flex:none}.practice-workspace{grid-template-columns:218px minmax(260px,.9fr) minmax(360px,1.2fr);align-items:stretch;gap:13px;height:min(720px,100vh - 270px);min-height:570px;display:grid}.exercise-list-panel,.problem-panel,.editor-panel{background:#fff;border:1px solid #e9ecef;border-radius:8px;min-width:0;overflow:hidden}.exercise-list-panel{flex-direction:column;display:flex}.panel-title{color:#9299a3;font:9px var(--mono);letter-spacing:.8px;border-bottom:1px solid #eef0f2;justify-content:space-between;padding:14px 13px;display:flex}.panel-title span:last-child{color:#747d87}.exercise-list-scroll{scrollbar-width:thin;flex:1;min-height:0;overflow-y:auto}.exercise-list-item{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #f0f1f3;align-items:center;gap:9px;width:100%;padding:12px 10px;display:flex}.exercise-list-item:hover{background:#f7faf8}.exercise-list-item.active{background:#eff6f1;box-shadow:inset 2px 0 #4d966b}.exercise-index{color:#858d96;width:21px;height:21px;font:9px var(--mono);background:#f2f3f5;border-radius:6px;flex:none;place-items:center;display:grid}.exercise-list-item.active .exercise-index,.exercise-index.solved{color:#32744f;background:#dceee1}.exercise-item-copy{gap:4px;min-width:0;display:grid}.exercise-item-copy strong{font-size:10px;line-height:1.3}.exercise-item-copy small{color:#949ba5;font-size:8px}.item-arrow{color:#a4abb4;margin-left:auto}.exercise-tip{color:#ab8642;background:#faf7ef;border-radius:5px;gap:8px;margin:13px 10px;padding:10px;display:flex}.exercise-tip p{color:#8d8068;margin:0;font-size:9px;line-height:1.5}.problem-panel{scrollbar-width:thin;padding:17px 17px 20px;overflow-y:auto}.problem-meta{color:#8b929c;flex-wrap:wrap;align-items:center;gap:7px;font-size:9px;display:flex}.difficulty{color:#397b55;background:#edf6ef;border-radius:4px;padding:4px 7px;font-weight:600}.difficulty.medium{color:#a87a2f;background:#fbf3e5}.meta-dot{background:#bcc2c8;border-radius:50%;width:3px;height:3px}.pattern-tag{color:#4d7d5d;cursor:pointer;background:#fff;border:1px solid #e7ece8;border-radius:4px;margin-left:auto;padding:5px 7px;font-size:8px}.problem-panel h2{letter-spacing:-.45px;margin:19px 0 10px;font:700 18px/1.3 Manrope,sans-serif}.exercise-pagination{color:#929ba2;font:10px var(--mono);justify-content:space-between;align-items:center;gap:8px;margin:0 0 13px;display:flex}.exercise-pagination button:disabled{color:#c2c7cb;cursor:default}.problem-description{color:#69727d;margin-bottom:16px;font-size:10px;line-height:1.75}.example-block{color:#636d78;border-left:2px solid #c7dbce;margin:13px 0;padding:2px 0 2px 10px;font-size:9px;line-height:1.8}.example-block>strong{color:#434b55;margin-bottom:3px;font-size:9px;display:block}.example-block span{color:#929aa3}.example-block code{font:9px var(--mono);color:#4c6956;white-space:normal;overflow-wrap:anywhere}.hint-box{color:#4d8c64;background:#f3f7f4;border-radius:6px;gap:9px;margin-top:17px;padding:11px;display:flex}.hint-box>span{font-size:13px}.hint-box strong{font-size:9px;display:block}.hint-box p{color:#6c7a70;margin:4px 0 0;font-size:9px;line-height:1.5}.exercise-constraints{color:#77818a;background:#f8f9fa;border-radius:6px;margin-top:15px;padding:10px 12px;font-size:10px}.exercise-constraints strong{color:#5b6570}.exercise-constraints ul,.solution-explanation ul,.common-mistakes ul{margin:6px 0 0;padding-left:18px;line-height:1.6}.hint-ladder{gap:7px;margin-top:17px;display:grid}.hint-step{background:#fff;border:1px solid #e9eee9;border-radius:6px;overflow:hidden}.hint-step.open{background:#f6faf7;border-color:#d8e8dc}.hint-step-toggle{color:#59665d;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:9px 10px;font-size:10px;font-weight:600;display:flex}.hint-step-toggle:disabled{color:#a9afb4;cursor:not-allowed}.hint-step-number{color:#62806b;width:20px;height:20px;font:10px var(--mono);background:#edf2ee;border-radius:50%;place-items:center;display:grid}.hint-step.open .hint-step-number{color:#32744f;background:#dceee1}.hint-step-chevron{color:#7d9382;margin-left:auto}.hint-step-content{color:#65736a;padding:0 11px 11px 39px;font-size:10px;line-height:1.6}.hint-step-content p{margin:0}.hint-step-content pre{white-space:pre-wrap;font:10px/1.65 var(--mono);margin:0}.solution-explanation p+p{margin-top:8px}.solution-explanation pre{color:#394e40;background:#eef3ef;border-radius:5px;margin:10px 0;padding:10px;overflow-x:auto}.solution-explanation ul{padding-left:15px}.editor-panel{background:#fff;flex-direction:column;min-height:0;display:flex}.editor-header{color:#929aa4;font:9px var(--mono);letter-spacing:.8px;border-bottom:1px solid #edf0f2;justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.language-toggle{border:1px solid #e9ecee;border-radius:5px;gap:2px;padding:2px;display:flex}.language-toggle button{color:#868e97;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:5px 7px;font:8px DM Sans,sans-serif}.language-toggle button.active{color:#317650;background:#eaf3ed;font-weight:700}.editor-function{color:#8d9b91;font:9px var(--mono);background:#fbfcfb;border-bottom:1px solid #f0f1f3;align-items:center;gap:7px;padding:10px 13px;display:flex}.function-dot{background:#72ad85;border-radius:50%;width:5px;height:5px}.reset-template{color:#598267;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font:9px DM Sans,sans-serif}.reset-template:hover{color:#236542;text-decoration:underline}.editor-workspace{flex-direction:column;flex:0 0 60%;min-height:0;display:flex}.code-editor{flex:1;min-height:0;overflow:hidden}.cm-editor{height:100%}.cm-scroller{font-size:13px}.editor-footer{border-top:1px solid #eceef0;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.editor-hint{color:#a1a7ae;font:8px var(--mono)}.run-button{padding:9px 11px;font-size:9px}.test-results{scrollbar-width:thin;border-top:1px solid #eceef0;flex:1;min-height:0;overflow-y:auto}.empty-results,.running-results{color:#999fa8;padding:12px;font-size:9px}.empty-results span{vertical-align:-1px;color:#7ba287;margin-right:5px;font-size:15px}.running-results{align-items:center;gap:8px;display:flex}.spinner{border:2px solid #dce9df;border-top-color:#41845e;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-summary{align-items:center;gap:7px;padding:11px 12px 7px;font-size:9px;display:flex}.result-summary>span{color:#fff;background:#d27764;border-radius:50%;place-items:center;width:17px;height:17px;display:grid}.result-summary.passed>span{background:#53a074}.result-summary strong{color:#555f69}.result-summary small{color:#7c8790;font:9px var(--mono);margin-left:auto}.result-list{padding:1px 12px 8px}.result-row{color:#707984;flex-wrap:wrap;align-items:center;gap:7px;padding:5px 0;font-size:8px;display:flex}.result-check{font-size:10px}.result-check.ok{color:#4d9b6c}.result-check.no{color:#c86b59}.result-row code{color:#a05e52;font:8px var(--mono);overflow-wrap:anywhere}.result-case{border:1px solid #edf0f0;border-radius:5px;margin:0 10px 8px;padding:8px}.result-case.failed{background:#fffaf9;border-color:#f0d8d4}.result-case-title{color:#65716b;align-items:center;gap:7px;font-size:10px;display:flex}.result-case-title>span{color:#4d9b6c}.result-case.failed .result-case-title>span{color:#c86b59}.failure-kind{color:#a35548;margin:0 12px 7px;font-size:10px;font-weight:700}.failure-case{color:#8c959d;grid-template-columns:54px minmax(0,1fr);gap:4px 7px;margin-top:7px;font-size:9px;display:grid}.failure-case code{color:#a05e52;font:9px/1.45 var(--mono);overflow-wrap:anywhere;white-space:pre-wrap}.console-output{color:#66706b;background:#f5f6f6;border-radius:4px;margin:8px 0 0;padding:7px;font-size:9px}.console-output pre{white-space:pre-wrap;overflow-wrap:anywhere;font:9px/1.5 var(--mono);margin:4px 0 0}.compile-error{white-space:pre-wrap;color:#ac5e53;font:9px/1.5 var(--mono);padding:0 12px 12px}.success-lesson{background:#f5faf6;border:1px solid #d8e9dd;border-radius:7px;margin:8px 10px 10px;padding:11px}.success-heading{align-items:flex-start;gap:8px;display:flex}.success-heading>span{color:#fff;background:#55a074;border-radius:50%;place-items:center;width:19px;height:19px;display:grid}.success-heading strong{color:#39744f;font-size:11px}.success-heading p{color:#7b8980;margin:3px 0 0;font-size:9px}.complexity-question,.recommended-solution{border-top:1px solid #e6eee8;margin-top:10px;padding-top:9px}.complexity-question>strong,.recommended-solution>strong,.common-mistakes summary{color:#5c6e60;font-size:10px}.complexity-question>div{gap:5px;margin-top:6px;display:grid}.complexity-option{color:#68746c;text-align:left;font:9px var(--mono);cursor:pointer;background:#fff;border:1px solid #e0e8e2;border-radius:4px;padding:6px 7px}.complexity-option:hover,.complexity-option.selected{border-color:#8eb99a}.complexity-option.correct{color:#34754f;background:#eff8f1;border-color:#a5d0b0}.complexity-option.incorrect{color:#a35548;background:#fff6f4;border-color:#e4b4ab}.complexity-question>p{margin:6px 0 0;font-size:9px;line-height:1.45}.complexity-feedback-correct{color:#39744f}.complexity-feedback-incorrect{color:#a35548}.recommended-solution p{color:#67746b;margin:5px 0;font-size:9px;line-height:1.5}.recommended-solution small{color:#73847a;font:9px var(--mono)}.recommended-code{margin-top:7px}.recommended-code summary{color:#43805b;cursor:pointer;font-size:9px}.recommended-code pre{color:#394e40;max-height:220px;font:9px/1.55 var(--mono);background:#eef3ef;border-radius:4px;margin:6px 0 0;padding:8px;overflow:auto}.common-mistakes{margin-top:9px}.common-mistakes summary{cursor:pointer}.common-mistakes ul{color:#747d77;font-size:9px}.success-actions{flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;display:flex}.success-actions .button{padding:7px 9px;font-size:9px}.success-actions .text-button{font-size:9px}.mobile-exercise-picker,.mobile-practice-tabs{display:none}.practice-bottom{color:#9097a0;align-items:center;gap:9px;margin-top:16px;font-size:10px;display:flex}.signup-invite{background:#f4f9f5;border:1px solid #dcebe0;border-radius:7px;align-items:center;gap:13px;margin-top:17px;padding:14px 44px 14px 15px;display:flex;position:relative}.signup-invite-icon{color:#43835a;background:#e4f0e6;border-radius:50%;flex:0 0 30px;place-items:center;height:30px;display:grid}.signup-invite-copy{flex:1}.signup-invite-copy strong{color:#3b6246;font-size:11px}.signup-invite-copy p{color:#728078;margin:3px 0 0;font-size:10px;line-height:1.5}.signup-invite>.button{flex:none;text-decoration:none}.signup-invite-dismiss{color:#87958a;cursor:pointer;background:0 0;border:0;padding:2px 5px;font-size:18px;line-height:1;position:absolute;top:8px;right:9px}.signup-invite-dismiss:hover{color:#3d7650}.quiz-card{max-width:740px;margin:0 auto;overflow:hidden}.quiz-top{border-bottom:1px solid #eff0f2;justify-content:space-between;align-items:center;padding:17px 22px;display:flex}.quiz-counter{font:9px var(--mono);letter-spacing:.8px;color:#43805b}.quiz-counter span{color:#a1a7ae}.quiz-progress{gap:4px;display:flex}.quiz-progress i{background:#edf0ee;border-radius:3px;width:20px;height:3px}.quiz-progress i.passed{background:#7eb28f}.quiz-progress i.missed{background:#d99b8e}.quiz-progress i.current{background:#3f8a5e}.recognition-toolbar{color:#87918a;align-items:center;gap:10px;max-width:740px;margin:-5px auto 14px;font-size:10px;display:flex}.recognition-toolbar label{color:#59675e;font-weight:600}.recognition-toolbar select{color:#4d5c51;min-width:210px;font:inherit;background:#fff;border:1px solid #e5eae6;border-radius:5px;padding:8px 10px}.recognition-toolbar>span{margin-left:auto}.quiz-body{padding:30px 44px 34px}.quiz-icon{color:#4c8b62;background:#edf5ef;border-radius:12px;place-items:center;width:39px;height:39px;margin-bottom:18px;font:700 18px Manrope,sans-serif;display:grid}.quiz-body h2{letter-spacing:-.4px;max-width:580px;margin:10px 0 23px;font:700 22px/1.4 Manrope,sans-serif}.quiz-clue{color:#315f40;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#e2f1e5;border-radius:2px;padding:0 2px}.quiz-options{gap:8px;display:grid}.quiz-option{text-align:left;cursor:pointer;background:#fff;border:1px solid #e8ebed;border-radius:6px;align-items:center;gap:12px;width:100%;padding:12px 13px;font-size:11px;display:flex}.quiz-option:hover:not(:disabled){background:#f8fbf9;border-color:#9ec8ab}.quiz-option:disabled{cursor:default}.option-letter{color:#88919a;width:22px;height:22px;font:9px var(--mono);border:1px solid #e6e9eb;border-radius:5px;place-items:center;display:grid}.option-status{color:#a2a9b0;margin-left:auto}.quiz-option.correct{color:#34754f;background:#f0f8f2;border-color:#8bc29b}.quiz-option.correct .option-letter,.quiz-option.correct .option-status{color:#3d8959;border-color:#bcdcc5}.quiz-option.incorrect{color:#a35548;background:#fff8f6;border-color:#e5b2a9}.quiz-option.incorrect .option-letter,.quiz-option.incorrect .option-status{color:#b86152;border-color:#edc9c2}.quiz-feedback{background:#f1f7f2;border-radius:6px;margin-top:15px;padding:12px}.quiz-feedback.try-again{background:#fbf5eb}.quiz-feedback strong{color:#407851;font-size:10px}.quiz-feedback.try-again strong{color:#997740}.quiz-feedback p{color:#68766d;margin:4px 0 0;font-size:10px;line-height:1.55}.quiz-feedback .also-valid-note{border-top:1px solid #dfece2;padding-top:7px}.why-not-list{border-top:1px solid #e1ebe3;margin-top:11px;padding-top:9px}.why-not-list>strong{color:#4d6252;font-size:10px}.why-not-list p{margin-top:5px}.practice-recognition{margin-top:11px}.next-question{margin-top:16px}.quiz-footer{color:#a0a6ae;font:8px var(--mono);letter-spacing:.5px;border-top:1px solid #eff0f2;justify-content:space-between;gap:12px;padding:12px 22px;display:flex}.quiz-note{color:#858d97;max-width:740px;margin:15px auto;font-size:10px;line-height:1.6}.quiz-note span{color:#55956c;margin-right:5px}.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.note-card{padding:16px}.note-card-header{align-items:center;gap:11px;display:flex}.note-card-header h2{margin:4px 0 0;font:700 14px Manrope,sans-serif}.note-prompt{color:#79828d;margin:13px 0 10px;font-size:10px;line-height:1.6}.note-prompt strong{color:#4d7759}.note-input{resize:vertical;color:#4c5661;border:1px solid #eaedef;border-radius:5px;outline:0;width:100%;min-height:80px;padding:9px;font-size:10px;line-height:1.5}.note-input:focus{border-color:#99c5a7}.note-input::placeholder{color:#b0b5bc}.note-practice{margin-top:10px}.flashcard-heading{align-items:center;gap:20px}.flashcard-counts{color:#7f8791;background:#fff;border:1px solid #e7ebe8;border-radius:8px;flex-shrink:0;align-items:baseline;gap:8px;padding:14px 16px;font-size:11px;display:flex}.flashcard-counts strong{color:#327652;font:600 20px var(--mono)}.flashcard-counts i{background:#e8ece9;width:1px;height:22px;margin:0 5px}.flashcard-review{max-width:820px;margin:18px auto 0}.flashcard-toolbar{background:#fff;border:1px solid #eaedf0;border-radius:7px;align-items:center;gap:12px;margin-bottom:13px;padding:11px 14px;display:flex}.flashcard-toolbar label{color:#848c96;align-items:center;gap:8px;font-size:11px;display:flex}.flashcard-toolbar select{color:#48534c;min-width:105px;font:inherit;background:#fff;border:1px solid #e8ece9;border-radius:4px;padding:6px 8px}.flashcard-session-count{color:#768078;font:11px var(--mono);margin-left:auto}.flashcard-storage-error{color:#9b5c4f;background:#fcf3f0;border:1px solid #f0d9d4;border-radius:6px;margin:0 0 12px;padding:11px 13px;font-size:12px;line-height:1.5}.flashcard-card,.flashcard-finished{background:#fff;border:1px solid #e8ece9;border-radius:10px;min-height:365px;padding:28px 34px;box-shadow:0 10px 35px #273a2e08}.flashcard-meta{color:#929a94;font:10px var(--mono);letter-spacing:.6px;align-items:center;gap:9px;display:flex}.flashcard-meta>span:first-child{color:#3f815c}.flashcard-meta>span:last-child{margin-left:auto}.flashcard-level{background:#f1f3f4;border-radius:4px;padding:4px 6px;font-size:9px}.flashcard-level.senior{color:#987440;background:#f6f0e5}.flashcard-card h2{color:#2b333e;text-align:center;max-width:680px;margin:29px auto 35px;font:700 25px/1.45 Manrope,sans-serif}.flashcard-reveal{justify-content:center;align-items:center;gap:14px;min-height:44px;margin:0 auto;display:flex}.flashcard-reveal kbd{color:#e5f1e9;border:1px solid #fff5;border-radius:4px;padding:2px 6px;font-size:10px}.flashcard-answer{color:#55615a;background:#f7f9f7;border-radius:7px;padding:19px 21px;font-size:13px;line-height:1.7}.flashcard-answer p{margin:0 0 11px}.flashcard-answer p:last-child{margin-bottom:0}.flashcard-answer strong{color:#3c6149}.flashcard-answer :not(pre)>code{color:#38644a;font:11px var(--mono);white-space:nowrap;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#e9efea;border-radius:3px;padding:2px 4px}.flashcard-answer pre{color:#e2e9e3;font:11px/1.65 var(--mono);white-space:pre;background:#252d35;border-radius:5px;margin:12px 0;padding:13px;overflow:auto}.flashcard-answer pre code{color:inherit;font:inherit;background:0 0;padding:0}.flashcard-answer ul,.flashcard-answer ol{margin:0 0 11px;padding-left:22px}.flashcard-answer li+li{margin-top:4px}.flashcard-answer h1,.flashcard-answer h2,.flashcard-answer h3,.flashcard-answer h4{color:#3c6149;margin:15px 0 8px;font:700 14px Manrope,sans-serif}.flashcard-answer a{color:#327652;text-decoration:underline}.flashcard-grades{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.flashcard-grade{cursor:pointer;background:#fff;border:1px solid #e7ebe8;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:51px;display:flex}.flashcard-grade:hover:not(:disabled){background:#f9fcf9;border-color:#a7cbb1}.flashcard-grade:disabled{cursor:not-allowed;opacity:.55}.flashcard-grade span{font-size:11px;font-weight:600}.flashcard-grade kbd{color:#909991;font:9px var(--mono);border:1px solid #e6e9e7;border-radius:3px;margin-right:3px;padding:1px 4px}.flashcard-grade small{color:#939b96;font:9px var(--mono)}.flashcard-grade.grade-again span{color:#b35d4f}.flashcard-grade.grade-hard span{color:#b17d34}.flashcard-grade.grade-good span{color:#3c8158}.flashcard-grade.grade-easy span{color:#477a9d}.flashcard-shortcuts{color:#9ba29d;text-align:center;padding:10px 2px;font-size:10px}.flashcard-finished{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:340px;display:flex}.flashcard-finished-icon{color:#42845d;background:#e9f4ed;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:17px;font-size:20px;display:grid}.flashcard-finished h2{margin:10px 0;font:700 23px Manrope,sans-serif}.flashcard-finished p{color:#838c95;max-width:430px;margin:0 0 18px;font-size:12px;line-height:1.6}.flashcard-history{color:#959d97;text-align:center;padding:12px 3px;font-size:10px}.flashcard-report{text-align:center;border-top:1px solid #edf0ee;margin-top:18px;padding-top:12px}.flashcard-report>.text-button,.flashcard-report>a{color:#89918c;font-size:10px}.flashcard-report-form{text-align:left;gap:8px;max-width:520px;margin:12px auto 0;display:grid}.flashcard-report-form label{color:#6e7971;font-size:11px}.flashcard-report-form textarea{resize:vertical;color:#49554d;min-height:76px;font:inherit;border:1px solid #e5eae6;border-radius:5px;padding:9px 10px;font-size:12px;line-height:1.5}.flashcard-report-form textarea:focus{border-color:#99c5a7;outline:0}.flashcard-report-form p{color:#a4584c;margin:0;font-size:11px}.flashcard-report-form .button{justify-self:end}.toast{z-index:10;color:#fff;opacity:0;pointer-events:none;background:#293c31;border-radius:6px;padding:11px 16px;font-size:11px;transition:all .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);box-shadow:0 8px 25px #15271c2c}.toast.visible{opacity:1;transform:translate(-50%)}@media (max-width:1160px){.sidebar{width:225px}.topbar,.page-content{padding-left:25px;padding-right:25px}.practice-workspace{grid-template-columns:190px minmax(240px,.85fr) minmax(320px,1.15fr);gap:9px}.pattern-link{font-size:10px}}@media (max-width:900px){.sidebar{width:67px;padding-left:8px;padding-right:8px}.brand{margin-bottom:30px;padding:0 5px}.brand-copy,.sidebar-label,.nav-link:not(.active),.nav-link{font-size:0}.nav-link{justify-content:center;padding:11px 4px}.nav-link>span{font-size:18px}.nav-link i,.pattern-nav,.sidebar-bottom>div:not(.streak-icon){display:none}.nav-link i.flashcard-nav-count{color:#fff;width:17px;height:17px;font:9px var(--mono);background:#3c8158;border:1px solid #fff;border-radius:50%;place-items:center;margin:-17px 0 0 30px;display:grid;position:absolute}.sidebar-bottom{justify-content:center}.main-nav{margin-bottom:15px}.learning-layout{grid-template-columns:minmax(0,1fr)}.progress-card{display:none}.practice-workspace{grid-template-rows:minmax(0,.8fr) minmax(0,1.2fr);grid-template-columns:185px minmax(0,1fr);height:calc(100vh - 260px);min-height:570px}.exercise-list-panel{grid-row:1/3}.problem-panel{grid-area:1/2}.editor-panel{grid-area:2/2}.problem-panel{min-height:0}.code-editor{min-height:220px}}@media (max-width:650px){.sidebar{width:54px}.brand{padding:0}.brand-mark{width:36px;height:36px}.topbar{height:52px;padding:0 14px}.topbar-right .progress-label,.topbar-right .mini-progress{display:none}.page-content{padding:24px 14px 38px}.welcome-row{min-height:205px}.welcome-row h1,.page-heading h1{font-size:31px}.welcome-copy{max-width:330px;font-size:11px;line-height:1.6}.welcome-art{opacity:.13;pointer-events:none;width:230px;position:absolute;right:-95px;transform:scale(.8)}.welcome-row{position:relative;overflow:hidden}.section-heading h2{font-size:17px}.phase-pill,.roadmap-caption{display:none}.lesson-card{padding:16px}.lesson-details{gap:12px}.roadmap-cards{grid-template-columns:1fr}.roadmap-card>p{min-height:0}.page-heading{align-items:start}.page-heading>div>p{font-size:11px;line-height:1.5}.exercise-count{display:none}.practice-workspace{flex-direction:column;display:flex}.exercise-list-panel{order:0}.exercise-list-panel .exercise-list-item{width:100%;display:inline-flex}.problem-panel{order:1;min-height:0}.editor-panel{order:2}.code-editor{min-height:220px}.exercise-tip{display:none}.notes-grid{grid-template-columns:1fr}.flashcard-heading{flex-direction:column;align-items:stretch;gap:14px}.flashcard-counts{align-self:start}.flashcard-toolbar{flex-wrap:wrap}.flashcard-session-count{width:100%;margin-left:0}.flashcard-card,.flashcard-finished{min-height:320px;padding:21px 16px}.flashcard-card h2{margin:24px 0;font-size:20px}.flashcard-answer{padding:14px;font-size:12px}.flashcard-grades{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-body{padding:24px 17px}.quiz-body h2{font-size:18px}.quiz-footer{padding:11px 13px;font-size:7px}.quiz-progress i{width:13px}.lesson-actions{flex-wrap:wrap}}body{font-size:16px}.brand-copy small{font-size:9px}.sidebar-label,.eyebrow{font-size:10px}.pattern-group-title{font-size:11px}.pattern-link{font-size:12px}.nav-link{font-size:13px}.breadcrumb{font-size:12px}.progress-label{font-size:10px}.welcome-row h1,.page-heading h1{font-size:42px}.welcome-copy,.page-heading>div>p{font-size:14px}.section-heading h2{font-size:22px}.label-small{font-size:10px}.lesson-top p{font-size:14px}.lesson-rule strong,.lesson-rule p,.lesson-details p{font-size:12px}.phase-pill,.roadmap-caption{font-size:11px}.button,.text-button{font-size:12px}.progress-card-head h3{font-size:18px}.progress-description,.phase-progress strong{font-size:12px}.roadmap-card h3{font-size:16px}.roadmap-card>p{font-size:12px}.roadmap-patterns button{font-size:10px}.exercise-count span{font-size:11px}.panel-title,.editor-header,.quiz-counter{font-size:10px}.exercise-filter-label{color:#8c949e;font:10px var(--mono);letter-spacing:.5px;padding:10px 11px 5px;display:block}.exercise-filter{color:#56635a;background:#fff;border:1px solid #e4e8e5;border-radius:5px;width:calc(100% - 20px);margin:0 10px 9px;padding:8px 7px;font-size:12px}.exercise-list-scroll{scrollbar-width:thin;max-height:430px;overflow-y:auto}.exercise-item-copy strong{font-size:11px}.exercise-item-copy small{font-size:10px}.problem-meta{font-size:11px}.pattern-tag{font-size:10px}.problem-panel h2{font-size:20px}.problem-description{font-size:12px}.example-block,.example-block>strong{font-size:11px}.example-block code{font-size:10px}.hint-box strong,.hint-box p{font-size:11px}.editor-function{font-size:10px}.code-editor{font-size:13px}.editor-hint{font-size:10px}.run-button,.empty-results,.running-results{font-size:11px}.result-summary,.result-row{font-size:10px}.quiz-body h2{font-size:24px}.quiz-option{font-size:13px}.quiz-feedback strong,.quiz-feedback p,.quiz-note{font-size:12px}.quiz-footer{font-size:9px}.note-card-header h2{font-size:16px}.note-prompt,.note-input{font-size:12px}@media (max-width:650px){.welcome-row h1,.page-heading h1{font-size:34px}.welcome-copy,.page-heading>div>p{font-size:13px}.section-heading h2{font-size:19px}.lesson-top p{font-size:13px}.quiz-body h2{font-size:20px}.quiz-option{font-size:12px}.recognition-toolbar{flex-wrap:wrap;align-items:flex-start}.recognition-toolbar select{order:2;width:100%}.recognition-toolbar>span{margin-left:auto}.exercise-list-scroll{max-height:275px}.signup-invite{flex-wrap:wrap}.signup-invite-copy{flex-basis:calc(100% - 46px)}.signup-invite>.button{margin-left:43px}}.decision-banner{text-align:left;cursor:pointer;background:linear-gradient(100deg,#f2f8f3,#fff);border:1px solid #cfe2d4;border-radius:8px;align-items:center;gap:13px;width:100%;margin:4px 0 28px;padding:14px 17px;display:flex}.decision-banner:hover{border-color:#8cbd9a;box-shadow:0 3px 12px #3267470c}.decision-banner-icon{color:#398158;background:#e0efe4;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.decision-banner>span:nth-child(2){gap:4px;display:grid}.decision-banner strong{color:#345a41;font-size:14px}@media (max-width:650px){.practice-workspace{flex-direction:column;gap:9px;height:auto;min-height:0;display:flex}.mobile-exercise-picker{color:#79837c;justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex}.mobile-exercise-picker select{color:#4f6154;background:#fff;border:1px solid #e3e9e4;border-radius:5px;min-width:0;max-width:78%;padding:8px;font-size:11px}.mobile-practice-tabs{background:#fff;border:1px solid #e7ebe8;border-radius:7px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.mobile-practice-tabs button{color:#758078;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:8px 4px;font-size:11px}.mobile-practice-tabs button[aria-selected=true]{color:#276b49;background:#edf6f0;font-weight:700}.practice-workspace>.exercise-list-panel{display:none}.practice-workspace>.problem-panel,.practice-workspace>.editor-panel{width:100%;height:calc(100dvh - 300px);min-height:0;max-height:720px;display:none}.practice-workspace[data-mobile-view=statement]>.problem-panel{display:block}.practice-workspace[data-mobile-view=code]>.editor-panel,.practice-workspace[data-mobile-view=results]>.editor-panel{display:flex}.practice-workspace[data-mobile-view=results] .editor-header,.practice-workspace[data-mobile-view=results] .editor-function,.practice-workspace[data-mobile-view=results] .editor-workspace{display:none}.practice-workspace[data-mobile-view=results] .test-results,.practice-workspace[data-mobile-view=code] .editor-workspace{flex:1}.practice-workspace[data-mobile-view=code] .test-results{flex:0 38%}.exercise-pagination{font-size:11px}.hint-step-toggle,.hint-step-content{font-size:12px}.hint-step-content pre{font-size:11px}.success-actions .button{font-size:10px}}.decision-banner small{color:#7b8980;font-size:12px}.decision-banner-link{white-space:nowrap;color:#347b52;margin-left:auto;font-size:12px;font-weight:700}.decision-heading{align-items:center}.decision-score{color:#377b54;white-space:nowrap;font:700 20px Manrope,sans-serif}.decision-score span{color:#8a939c;text-align:right;margin-top:3px;font:11px DM Sans,sans-serif;display:block}.decision-layout{grid-template-columns:minmax(210px,.7fr) minmax(0,1.7fr) minmax(205px,.75fr);align-items:start;gap:14px;display:grid}.decision-list-panel,.decision-card{background:#fff;border:1px solid #e8ece9;border-radius:9px;min-width:0;overflow:hidden}.decision-list-panel{max-height:min(720px,100vh - 240px);overflow-y:auto}.decision-list-panel .panel-title{font-size:10px}.decision-list-item{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #f0f2f0;align-items:center;gap:10px;width:100%;padding:12px 11px;display:flex}.decision-list-item:hover{background:#f8faf8}.decision-list-item.active{background:#eff6f0;box-shadow:inset 3px 0 #53966a}.decision-index{color:#65766a;width:27px;height:27px;font:10px var(--mono);background:#f0f3f1;border-radius:7px;flex:none;place-items:center;display:grid}.decision-list-item.active .decision-index{color:#34774f;background:#dbece0}.decision-index.completed{color:#fff;background:#4b9567;font-size:13px}.decision-list-item>span:nth-child(2){gap:4px;min-width:0;display:grid}.decision-list-item strong{color:#46504a;font-size:12px;line-height:1.4}.decision-list-item small{color:#929b94;font-size:10px}.decision-list-item .item-arrow{margin-left:auto}.decision-reminder{background:#faf7ef;border-radius:6px;margin:12px;padding:12px}.decision-reminder>span{color:#927a4e;font:11px var(--mono);letter-spacing:.5px}.decision-reminder p{color:#817660;margin:5px 0 0;font-size:11px;line-height:1.55}.decision-card{padding:21px 23px 23px}.decision-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.decision-card-top>div{align-items:center;gap:10px;display:flex}.decision-level{color:#738078;background:#f1f4f1;border-radius:4px;padding:5px 7px;font-size:10px}.decision-difficulty{color:#858e87;border:1px solid #ecefea;border-radius:4px;padding:4px 7px;font-size:9px}.decision-card>h2{color:#2c3430;letter-spacing:-.5px;margin:20px 0 7px;font:700 22px Manrope,sans-serif}.decision-prompt{color:#707a73;margin:0;font-size:14px;line-height:1.65}.decision-clue{color:#315f40;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#e2f1e5;border-radius:2px;padding:0 2px}.decision-sample{color:#738078;background:#fafbf9;border:1px solid #edf0ed;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:15px;padding:10px 12px;font-size:11px;display:flex}.decision-sample .label-small{margin-right:3px}.decision-sample code{color:#4b6352;font:11px/1.5 var(--mono);overflow-wrap:anywhere}.decision-sample>span[aria-hidden]{color:#55956c;font-size:15px}.decision-ladder{grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0 22px;display:grid}.decision-ladder-step{color:#959c97;background:#f5f6f5;border-radius:5px;align-items:center;gap:7px;padding:9px 10px;display:flex}.decision-ladder-step>span{width:21px;height:21px;font:10px var(--mono);border:1px solid #e1e5e2;border-radius:50%;flex:none;place-items:center;display:grid}.decision-ladder-step small{font:9px var(--mono);letter-spacing:.45px}.decision-ladder-step.current{color:#347c52;background:#edf5ef}.decision-ladder-step.current>span,.decision-ladder-step.done>span{color:#fff;background:#4b9567;border-color:#4b9567}.decision-ladder-step.done{color:#578164;background:#f1f7f2}.decision-question-label{color:#44835d}.decision-question{color:#343d37;margin:8px 0 4px;font:700 17px/1.4 Manrope,sans-serif}.decision-subtitle{color:#858e87;margin:0 0 13px;font-size:12px;line-height:1.55}.decision-options{gap:8px;display:grid}.decision-option{color:#566059;text-align:left;cursor:pointer;background:#fff;border:1px solid #e7ebe8;border-radius:6px;align-items:center;gap:11px;width:100%;padding:12px;font-size:13px;line-height:1.5;transition:all .15s;display:flex}.decision-option:hover:not(:disabled){background:#f9fcf9;border-color:#a5c9ad}.decision-option .option-letter{flex:none;width:24px;height:24px}.decision-option .option-status{flex:none}.decision-option.correct{color:#33744c;background:#f0f8f1;border-color:#91c39c}.decision-option.correct .option-letter,.decision-option.correct .option-status{color:#347b4e;border-color:#b8d9c0}.decision-option.incorrect{color:#955a4e;background:#fff8f6;border-color:#e4b8ac}.decision-option.incorrect .option-status{color:#a66052}.decision-option:disabled{cursor:default}.decision-feedback{background:#f3f8f4;border:1px solid #dcebe0;border-radius:6px;margin-top:12px;padding:13px 14px}.decision-feedback.retry{background:#fcf8ef;border-color:#f0e2c6}.decision-feedback strong{color:#397750;font-size:13px}.decision-feedback.retry strong{color:#957139}.decision-feedback p{color:#65736a;margin:5px 0 0;font-size:12px;line-height:1.6}.decision-feedback .button,.decision-feedback .text-button{margin-top:11px}.decision-feedback .text-button{color:#866b3e}.decision-complete{background:#f2f8f3;border:1px solid #dcebe0;border-radius:7px;align-items:flex-start;gap:13px;padding:17px;display:flex}.decision-complete-icon{color:#fff;background:#4b9567;border-radius:50%;flex:none;place-items:center;width:29px;height:29px;font-weight:700;display:grid}.decision-complete h3{color:#32764e;font:700 17px var(--mono);margin:7px 0 5px}.decision-complete p,.decision-review p{color:#65736a;margin:0;font-size:12px;line-height:1.6}.decision-review{background:#f8faf8;border-left:3px solid #86b594;border-radius:3px;margin:12px 0 16px;padding:13px}.decision-review strong{color:#4a5c4e;margin-bottom:5px;font-size:12px;display:block}.decision-review code{color:#347b52;font:11px var(--mono)}.decision-code{background:#fbfcfb;border:1px solid #e8ece9;border-radius:7px;gap:10px;margin:15px 0;padding:14px;display:grid}.decision-code>div p{color:#79837b;margin:5px 0 0;font-size:11px}.decision-code textarea{resize:vertical;color:#344238;width:100%;min-height:115px;font:12px/1.55 var(--mono);tab-size:2;background:#fff;border:1px solid #e2e8e3;border-radius:5px;padding:11px}.decision-code textarea:focus{border-color:#91bd9c;outline:0;box-shadow:0 0 0 2px #e5f1e8}.decision-code-result{color:#397750;background:#f0f8f1;border-radius:5px;padding:10px;font-size:11px}.decision-code-result.failed{color:#955a4e;background:#fff7f4}.decision-code-result p{margin:5px 0 0}.decision-code-result pre{white-space:pre-wrap}.decision-related{margin:0 10px 10px 0}.decision-next{font-size:12px}.decision-reference{background:#fff;border:1px solid #e8ece9;border-radius:9px;min-width:0;max-height:min(720px,100vh - 240px);overflow:auto}.decision-reference>summary{cursor:pointer;gap:6px;padding:15px;list-style:none;display:grid}.decision-reference>summary::-webkit-details-marker{display:none}.decision-reference>summary strong{color:#46524a;font:700 14px Manrope,sans-serif}.decision-reference>summary:after{content:"Abrir o cerrar consulta";color:#8a938c;font-size:10px}.decision-method-list{gap:7px;padding:0 10px 10px;display:grid}.decision-method-list .method-card{min-height:0;padding:9px}.decision-method-list .method-card code{margin-bottom:5px;font-size:9px}.decision-method-list .method-card strong{font-size:11px}.decision-method-list .method-card p{font-size:10px}.decision-mobile-picker{display:none}.progress-skeleton{vertical-align:middle;background:linear-gradient(90deg,#edf1ed 25%,#f8faf8 50%,#edf1ed 75%) 0 0/200% 100%;border-radius:4px;width:38px;height:13px;animation:1.3s ease-in-out infinite progress-shimmer;display:inline-block}.progress-unavailable{color:#925746;background:#fff0eb;border-radius:50%;place-items:center;width:17px;height:17px;font-size:11px;display:inline-grid}@keyframes progress-shimmer{to{background-position:-200% 0}}.method-reference{margin-top:35px}.method-reference .section-heading{gap:15px}.method-reference .section-heading h2{font-size:20px}.method-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.method-card{background:#fff;border:1px solid #e8ece9;border-radius:7px;min-height:119px;padding:12px}.method-card code{color:#377b52;font:10px var(--mono);background:#eff5f0;border-radius:4px;margin-bottom:9px;padding:4px 6px;display:inline-block}.method-card strong{color:#46524a;font-size:12px;display:block}.method-card p{color:#828b84;margin:5px 0 0;font-size:11px;line-height:1.5}.decision-footer{color:#858e87;align-items:center;gap:8px;margin-top:19px;font-size:12px;display:flex}@media (max-width:1050px){.method-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.decision-layout{grid-template-columns:minmax(190px,.75fr) minmax(0,1.5fr)}.decision-reference{grid-column:1/-1;max-height:340px}.decision-method-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.decision-list-item strong{font-size:11px}.decision-card{padding:18px}.decision-ladder-step{justify-content:center}.decision-ladder-step small{font-size:8px}}@media (max-width:650px){.decision-banner{align-items:flex-start;gap:9px;margin-bottom:22px;padding:11px}.decision-banner-icon{width:30px;height:30px}.decision-banner strong{font-size:12px}.decision-banner small{font-size:11px;line-height:1.5}.decision-banner-link{display:none}.decision-heading{align-items:flex-start}.decision-score{padding-top:17px;font-size:17px}.decision-score span{white-space:nowrap;font-size:9px}.decision-layout{flex-direction:column;display:flex}.decision-list-panel,.decision-card{width:100%}.decision-mobile-picker{color:#68766d;gap:6px;font-size:11px;display:grid}.decision-mobile-picker select{color:#46524a;width:100%;font:inherit;background:#fff;border:1px solid #e5eae6;border-radius:5px;padding:10px}.decision-list-panel{display:none}.decision-list-item{padding:9px 10px}.decision-reference{width:100%;max-height:none}.decision-method-list{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-card{padding:15px}.decision-card>h2{font-size:19px}.decision-prompt{font-size:13px}.decision-ladder{gap:5px}.decision-ladder-step{flex-direction:column;gap:4px;padding:7px 3px}.decision-ladder-step small{font-size:7px}.decision-option{align-items:flex-start;padding:10px;font-size:12px}.decision-option .option-status{margin-top:2px}.decision-feedback p,.decision-complete p,.decision-review p{font-size:11px}.method-reference .section-heading{flex-direction:column;align-items:flex-start}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.method-card{min-height:122px;padding:10px}.method-card p{font-size:10px}.decision-footer{flex-direction:column;align-items:flex-start}}.marketing-page,.auth-page{color:#27312b;background:#fbfcfa;min-height:100vh}.marketing-header,.auth-header{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:22px 34px;display:flex}.marketing-brand{margin:0;padding:0}.marketing-nav{align-items:center;gap:25px;display:flex}.marketing-nav>a:not(.button),.auth-back-link{color:#68736b;font-size:13px;text-decoration:none}.marketing-nav>a:not(.button):hover,.auth-back-link:hover{color:#28754c}.marketing-cta{padding:10px 14px}.marketing-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:30px;max-width:1200px;min-height:560px;margin:0 auto;padding:50px 45px 65px;display:grid}.marketing-hero-copy{max-width:600px}.marketing-hero h1{color:#27312b;letter-spacing:-3px;margin:19px 0 18px;font:800 clamp(42px,5.1vw,66px)/1.08 Manrope,sans-serif}.marketing-hero h1 span,.marketing-method h2 span{color:#378059}.marketing-hero-copy>p{color:#78827a;max-width:535px;margin:0;font-size:16px;line-height:1.8}.marketing-actions{align-items:center;gap:12px;margin-top:25px;display:flex}.marketing-actions .button{padding:13px 16px;font-size:13px;text-decoration:none}.marketing-proof{color:#808a82;align-items:center;gap:12px;margin-top:30px;font-size:11px;display:flex}.marketing-proof i{background:#7eb28f;border-radius:50%;width:3px;height:3px}.marketing-hero-art{place-items:center;min-height:390px;display:grid;position:relative}.marketing-orbit{border:1px solid #e0ebe2;border-radius:50%;width:365px;height:365px;position:absolute;transform:scaleY(.78)rotate(-20deg)}.marketing-orbit:before,.marketing-orbit:after{content:"";border:1px solid #e5eee6;border-radius:50%;position:absolute;inset:28px;transform:rotate(48deg)scaleY(.78)}.marketing-orbit:after{inset:61px;transform:rotate(-60deg)scaleY(.72)}.marketing-code-card{z-index:1;background:#fff;border:1px solid #e6ece7;border-radius:12px;width:min(100%,345px);padding:25px;box-shadow:0 22px 60px #244a3414}.code-card-label{color:#97a198;font:10px var(--mono);letter-spacing:.8px}.marketing-code-card>p{color:#535f56;margin:9px 0 15px;font-size:14px;line-height:1.55}.marketing-code-card p code{color:#347a50;font:12px var(--mono)}.code-card-divider{background:#edf0ed;height:1px;margin:17px 0}.code-card-result{color:#548063;background:#f3f8f4;border-radius:6px;align-items:center;gap:9px;margin-top:18px;padding:11px;font-size:12px;display:flex}.code-card-result code{color:#347a50;font:12px var(--mono)}.code-card-result b{color:#85a38c;margin-left:auto}.code-card-result strong{color:#347a50;font:12px var(--mono)}.marketing-floating-chip{z-index:2;color:#3c8055;font:11px var(--mono);background:#fff;border:1px solid #e6ece7;border-radius:6px;padding:8px 12px;position:absolute;box-shadow:0 5px 18px #244a3410}.chip-map{top:65px;right:35px}.chip-complexity{bottom:57px;left:13px}.marketing-star{color:#d4ad5d;font-size:18px;position:absolute;bottom:71px;right:37px}.marketing-method{text-align:center;background:#f3f6f3;padding:68px max(40px,50vw - 550px) 77px}.marketing-method h2{color:#2b342e;letter-spacing:-1px;margin:13px 0 35px;font:700 34px/1.3 Manrope,sans-serif}.marketing-steps{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-width:1100px;margin:0 auto;display:grid}.marketing-step{background:#fff;border:1px solid #e6ebe6;border-radius:8px;padding:22px}.marketing-step>span{color:#478762;font:12px var(--mono)}.marketing-step h3{color:#39443c;margin:17px 0 7px;font:700 16px Manrope,sans-serif}.marketing-step p{color:#7d877f;margin:0;font-size:13px;line-height:1.7}.marketing-bottom{justify-content:space-between;align-items:center;gap:25px;max-width:1100px;margin:0 auto;padding:60px 35px;display:flex}.marketing-bottom h2{color:#303a33;max-width:630px;margin:9px 0 0;font:700 25px/1.4 Manrope,sans-serif}.marketing-bottom>.button{flex:none;padding:13px 16px;text-decoration:none}.marketing-footer{color:#89928b;border-top:1px solid #edf0ed;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:17px 34px 22px;font-size:11px;display:flex}.auth-page{flex-direction:column;display:flex}.auth-header{width:100%}.auth-card{background:#fff;border:1px solid #e8ece8;border-radius:10px;width:min(100% - 32px,460px);margin:36px auto;padding:30px;box-shadow:0 14px 50px #1e462c0a}.auth-card-mark{color:#fff;width:43px;height:43px;font:600 15px var(--mono);letter-spacing:-2px;background:#2f7756;border-radius:13px;place-items:center;margin-bottom:22px;display:grid;box-shadow:0 6px 14px #2f775625}.auth-card h1{color:#28322b;letter-spacing:-.7px;margin:10px 0 7px;font:700 28px Manrope,sans-serif}.auth-intro{color:#7c867e;margin:0;font-size:13px;line-height:1.6}.auth-form{gap:15px;margin-top:24px;display:grid}.auth-form label{color:#4f5b52;gap:7px;font-size:12px;font-weight:600;display:grid}.auth-form input{color:#38443b;background:#fff;border:1px solid #e1e7e2;border-radius:5px;outline:0;width:100%;min-height:43px;padding:10px 12px;font-size:13px}.auth-form input::placeholder{color:#a6aea8}.auth-form input:focus{border-color:#78ac87;box-shadow:0 0 0 3px #eaf4ec}.auth-submit{min-height:44px;margin-top:5px;font-size:13px}.auth-submit span{margin-left:9px}.forgot-password-link{color:#387b55;text-align:right;margin-top:13px;font-size:11px;font-weight:600;text-decoration:none;display:block}.forgot-password-link:hover{color:#245e3d;text-decoration:underline}.auth-switch{color:#7e8880;text-align:center;margin:19px 0 0;font-size:12px}.auth-switch a{color:#337a50;font-weight:700;text-decoration:none}.auth-notice{color:#816c43;background:#f9f4e9;border-radius:5px;margin:15px 0 0;padding:10px;font-size:12px;line-height:1.5}.auth-demo-note{color:#708075;background:#f5f7f5;border-radius:5px;gap:9px;margin-top:19px;padding:11px;display:flex}.auth-demo-note>span{color:#5c8a68;flex:none}.auth-demo-note p{margin:0;font-size:11px;line-height:1.55}.auth-separator{color:#9aa29b;align-items:center;gap:10px;margin:19px 0 13px;font-size:11px;display:flex}.auth-separator:before,.auth-separator:after{content:"";background:#edf0ed;flex:1;height:1px}.google-auth-button{color:#49554c;cursor:pointer;background:#fff;border:1px solid #e0e6e1;border-radius:5px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:43px;font-size:13px;font-weight:600;display:flex}.google-auth-button:hover{background:#fbfdfb;border-color:#a8c8af}.google-auth-button>span{color:#4285f4;font:700 16px Arial,sans-serif}.auth-notice.error{color:#995c4e;background:#fbf0ed}.auth-footer{color:#929b94;text-align:center;margin-top:auto;padding:20px;font-size:11px}.practice-account-bar{color:#7c867f;background:#fff;border-bottom:1px solid #e8ece9;justify-content:flex-end;align-items:center;gap:14px;min-height:42px;padding:0 28px;font-size:11px;display:flex}.practice-account-bar strong{color:#3c7650;font-weight:600}.practice-account-bar button{color:#67746a;cursor:pointer;background:#fff;border:1px solid #e6ebe7;border-radius:4px;padding:5px 9px;font-size:10px}.practice-account-bar button:hover{color:#32774d;border-color:#bad3bf}@media (max-width:760px){.marketing-header,.auth-header{padding:15px 17px}.marketing-nav{gap:13px}.marketing-nav>a:not(.button){font-size:11px}.marketing-cta{padding:9px 10px;font-size:11px}.marketing-hero{grid-template-columns:1fr;gap:5px;padding:52px 22px 35px}.marketing-hero h1{letter-spacing:-2px;font-size:clamp(40px,9vw,58px)}.marketing-hero-copy>p{font-size:14px}.marketing-hero-art{min-height:315px}.marketing-orbit{width:300px;height:300px}.marketing-method{padding:50px 18px}.marketing-method h2{font-size:28px}.marketing-steps{grid-template-columns:1fr}.marketing-step{padding:18px}.marketing-bottom{flex-direction:column;align-items:flex-start;padding:42px 20px}.marketing-bottom h2{font-size:21px}.marketing-footer{flex-direction:column;align-items:flex-start;gap:15px;padding:18px 20px}.auth-card{margin:20px auto;padding:23px 19px}.practice-account-bar{padding:0 12px}}@media (max-width:430px){.marketing-nav{gap:9px}.marketing-nav>a:not(.button){font-size:10px}.marketing-cta{padding:8px;font-size:10px}.marketing-proof{flex-wrap:wrap;gap:8px;font-size:10px}}
