:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172b42;background:#f4f6fa;font-synthesis:none;font-weight:400;line-height:1.6;--navy:#172b42;--blue:#2765e8;--lime:#cbf36c;--muted:#65758a;--border:#e3e8ef}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #2765e8}button{color:inherit}button svg{flex-shrink:0}button{border:0}button:hover:not(:disabled){filter:brightness(.96)}button:active:not(:disabled){transform:translateY(1px)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.18}h1{font-size:2.9rem;letter-spacing:-.045em;margin-bottom:16px}h2{font-size:1.45rem;letter-spacing:-.025em}h3{font-size:1.1rem}p{margin-bottom:18px}main:focus{outline:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:256px;flex-shrink:0;background:#fff;border-right:1px solid var(--border);position:fixed;inset:0 auto 0 0;padding:35px 22px 23px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;background:none;text-align:left;font-weight:800;font-size:1.3rem;line-height:1.1;letter-spacing:-.045em;padding:0 10px}.brand-icon{width:42px;height:46px;border-radius:12px;background:var(--navy);display:grid;place-items:center;color:var(--lime)}.brand-second{display:block}.brand-dot{color:var(--blue)}.sidebar-middle{margin-top:59px}.eyebrow{font-size:.75rem;font-weight:750;letter-spacing:.1em;line-height:1.5}.sidebar-label{display:block;color:#7e8b9b;letter-spacing:.08em;font-size:.7rem;padding:0 13px;margin-bottom:13px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px;border-radius:9px;background:transparent;font-size:.9rem;font-weight:600}.nav-item.active{color:var(--blue);background:#edf3ff}.sidebar-course{margin-top:34px}.course-link{display:flex;gap:12px;align-items:center;width:100%;background:transparent;padding:15px 9px;text-align:left;line-height:1.5;font-size:.86rem}.course-link>span:nth-child(2){flex:1}.course-link.selected{background:#f1f5fc;border-radius:9px}.course-number{font-family:monospace;color:var(--muted);font-size:.82rem}.course-link small{display:block;color:var(--muted);font-size:.75rem;margin-top:3px}.upcoming{color:#7e8b9b}.upcoming small{color:#8995a4}.sidebar-bottom{margin-top:auto;padding-top:28px}.encouragement{border-top:1px solid var(--border);padding:23px 10px 18px;display:flex;gap:9px;align-items:flex-start;color:var(--muted)}.encouragement svg{margin-top:5px;color:#729353}.encouragement p{font-size:.8rem;line-height:1.8;margin:0}.encouragement strong{font-weight:500;color:var(--navy)}.backup-buttons{display:flex;gap:16px;padding:0 10px}.backup-buttons button{display:flex;gap:6px;align-items:center;background:none;color:var(--muted);font-size:.78rem;padding:3px 0}.workspace{margin-left:256px;width:calc(100% - 256px)}.topbar{height:83px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 48px;color:var(--muted);font-size:.85rem}.local-pill{display:flex;gap:7px;align-items:center;font-size:.75rem}.local-pill svg{color:var(--blue)}main{max-width:1280px;margin:0 auto;padding:46px 48px 25px}.page-intro .eyebrow{color:var(--blue);display:block;margin-bottom:14px}.page-intro p{color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:31px}.accent-dot{color:var(--blue)}.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px}.lesson-card{background:var(--navy);color:#fff;border-radius:18px;padding:28px 32px 30px;overflow:hidden;position:relative}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.tag{display:inline-flex;align-items:center;border-radius:5px;background:#eef3fd;color:#31598c;font-size:.7rem;letter-spacing:.075em;font-weight:700;padding:5px 9px;line-height:1.5}.lesson-card .tag{color:var(--lime);background:#2e424d}.lesson-number{font-family:monospace;font-size:.8rem;color:#94a6ba}.lesson-card h2{font-size:2.75rem;line-height:1.08;letter-spacing:-.045em;margin-bottom:18px}.lesson-card>p{color:#becbd9;max-width:370px;font-size:.92rem;margin-bottom:20px}.list-diagram{display:flex;gap:8px;margin:22px 0;flex-wrap:wrap}.list-item{display:flex;flex:1;min-width:90px;flex-direction:column;gap:5px}.index-label{font-family:monospace;font-size:.75rem;color:var(--muted)}.film-value{border:1px solid #dae2eb;background:#f5f8fd;border-radius:7px;padding:12px 8px;display:block;text-align:center;font-family:monospace;font-size:.9rem;overflow-wrap:anywhere}.lesson-card .index-label{color:#9aacc1}.lesson-card .film-value{background:#253c54;border:1px solid #3c546b;color:#e9f1fb}.lesson-card .list-item:first-child .film-value{color:var(--lime);border-color:#91b052}.lesson-meta{display:flex;gap:17px;flex-wrap:wrap;color:#becbd9;font-size:.77rem;margin:24px 0}.lesson-meta span{display:flex;gap:6px;align-items:center}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:8px;padding:12px 20px;font-size:.88rem;font-weight:650;line-height:1.5;min-height:46px;transition:filter .15s}.primary{background:var(--blue);color:#fff}.lesson-card .primary{background:var(--lime);color:var(--navy);padding:13px 22px}.secondary{background:#fff;border:1px solid #d7dfeb}.prerequisite{display:block;color:#9caec2;font-size:.75rem;margin-top:13px}.progress-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:26px 23px}.progress-card>.eyebrow{color:var(--muted);font-size:.68rem}.progress-card h3{font-size:1.25rem;margin-top:12px;margin-bottom:23px}.progress-ring{background:conic-gradient(var(--blue) var(--progress),#eaf0f9 0);width:158px;height:158px;margin:0 auto 26px;border-radius:100%;padding:8px;transform:rotate(0)}.progress-ring>div{background:#fff;border-radius:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.progress-ring strong{font-size:2.1rem;line-height:1.5;letter-spacing:-.04em}.progress-ring strong span{font-size:1.1rem;font-weight:400;color:#8996a7}.progress-ring small{font-size:.65rem;color:var(--muted)}.milestone{display:flex;align-items:center;gap:11px;margin:20px 0}.milestone-icon{background:#f0f4fa;color:#73839a;width:35px;height:35px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.milestone strong{display:block;font-size:.8rem;font-weight:650}.milestone small{display:block;color:var(--muted);font-size:.71rem;margin-top:3px}.done{background:#e9f6dd!important;color:#486c24!important}.text-button{padding:0;background:transparent;color:var(--blue);font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:31px 0 16px}.section-title h2{margin:0;font-size:1.2rem}.section-title>span{font-size:.8rem;color:var(--muted)}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.journey-step{background:#fff;border:1px solid var(--border);padding:20px 21px;border-radius:12px;position:relative}.step-label{position:absolute;right:18px;top:17px;font-family:monospace;font-size:.72rem;color:#7f8ba0}.journey-step>svg{color:var(--blue);margin-bottom:12px}.journey-step h3{font-size:.96rem;margin-bottom:9px}.journey-step p{color:var(--muted);font-size:.84rem;line-height:1.7;margin-bottom:0;max-width:240px}.home-footer{font-size:.76rem;color:var(--muted);margin-top:24px;margin-bottom:0}.lesson-header{display:flex;align-items:center;gap:22px;margin-bottom:27px}.back-button{background:none;padding:0;display:flex;align-items:center;gap:4px;color:var(--muted);font-size:.85rem}.lesson-header .eyebrow{font-size:.7rem;color:var(--muted)}.reading-time{margin-left:auto;color:var(--muted);font-size:.78rem}.reading-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:25px}.chapter-nav{align-self:start;position:sticky;top:28px}.chapter-nav h3{font-size:.9rem;margin:0 0 17px}.chapter-nav button{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:10px 7px;background:transparent;font-size:.82rem;color:var(--muted);border-radius:6px;margin-bottom:5px}.chapter-nav button>span{border-radius:50%;background:#e6ebf3;color:#718097;width:23px;height:23px;font-size:.72rem;flex-shrink:0;display:grid;place-items:center}.chapter-nav button.current{color:var(--blue);background:#e9f0fd;font-weight:650}.chapter-nav button.current>span{color:#fff;background:var(--blue)}.chapter-nav .quiz-nav{margin-top:18px;border-top:1px solid var(--border);padding-top:17px;border-radius:0;color:var(--blue);font-weight:650}.reading-card{border-radius:15px;padding:32px 36px;background:#fff;border:1px solid var(--border);min-width:0}.chapter-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.chapter-topline>span:last-child{color:var(--muted);font-size:.8rem}.reading-card h1{font-size:2rem;line-height:1.2}.reading-card>p{font-size:1rem;line-height:1.85;color:#40536b}.reading-card .reading-intro{font-size:1.08rem;line-height:1.7;color:var(--navy);margin-bottom:28px}.code-panel{background:#15283d;border-radius:10px;color:#dce8f6;margin:25px 0;overflow:hidden;min-width:0}.code-label{padding:10px 16px;display:flex;justify-content:space-between;color:#9db1c8;font-size:.65rem;font-weight:650;letter-spacing:.1em;border-bottom:1px solid #304156}.code-panel pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.85rem;line-height:1.95;margin:0;padding:16px 15px;overflow:auto}.code-line{display:inline-flex;min-height:1.5em}.line-number{width:30px;-webkit-user-select:none;user-select:none;color:#6e859d;flex-shrink:0}.code-line>span:last-child{white-space:pre}.takeaway{border-radius:9px;background:#f0f6e8;border:1px solid #deebc9;display:flex;gap:12px;padding:19px;margin:25px 0}.takeaway>span{color:#628526;padding-top:2px;flex-shrink:0}.takeaway strong{font-size:.85rem;color:#3a5520}.takeaway p{font-size:.94rem;line-height:1.7;color:#496136;margin:5px 0 0}.reading-actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:24px;margin-top:30px}.exercise{background:#f5f8fc;border:1px solid var(--border);border-radius:12px;padding:22px;margin-top:25px}.section-heading{display:flex;gap:12px;align-items:center;margin-bottom:23px}.section-heading h3{margin-bottom:4px;font-size:1rem}.section-heading p{font-size:.8rem;color:var(--muted);margin:0}.icon-badge{display:grid;place-items:center;background:#e2ebfd;color:var(--blue);width:38px;height:38px;border-radius:10px;flex-shrink:0}.exercise label{display:block;font-size:.85rem;font-weight:600;margin-bottom:9px}.input-row{display:flex;gap:9px}.input-row input{min-width:0;flex:1;border:1px solid #c5d1e0;border-radius:7px;padding:10px 13px;background:#fff;color:var(--navy);font-size:1rem}.exercise-result{margin:22px 0;border-top:1px solid var(--border);padding-top:20px}.success-title{display:flex;align-items:center;gap:9px;font-weight:650;color:#486c24;font-size:.9rem}.exercise-result p{font-size:.9rem;margin:0}.small-text{font-size:.75rem;color:var(--muted)}.exercise>.small-text{margin:17px 0 0}.error-text{color:#a83c32;font-size:.9rem;margin-top:10px}.quiz-page,.result-page{max-width:850px;margin:0 auto}.quiz-progress{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:25px;font-size:.85rem;color:var(--muted)}.progress-track{width:100%;height:5px;background:#e2e8f2;border-radius:4px;overflow:hidden}.progress-track>div{height:100%;background:var(--blue);border-radius:4px;transition:width .2s}.quiz-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:32px 36px}.quiz-card h1{font-size:1.85rem;margin:22px 0;line-height:1.35}.choices{border:0;margin:23px 0;padding:0;display:grid;gap:11px}.choice{display:flex;align-items:center;gap:13px;cursor:pointer;border:1px solid #d9e1ed;padding:14px 16px;border-radius:9px;font-size:.94rem;line-height:1.55}.choice:hover{border-color:#95b4ef}.choice input{position:absolute;width:1px;height:1px;opacity:0}.choice:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:3px}.choice:has(input:disabled){cursor:default}.choice-letter{border-radius:6px;background:#f0f3f8;display:grid;place-items:center;min-width:29px;height:29px;font-size:.75rem;font-weight:650;color:var(--muted)}.choice>span:nth-last-child(1){flex:1}.choice.chosen{border-color:var(--blue);background:#f2f6ff}.choice.chosen .choice-letter{background:var(--blue);color:#fff}.choice.correct{background:#f1f8e8;border-color:#95b568}.choice.correct svg{margin-left:auto;color:#527d26}.choice.incorrect{background:#fff5ed;border-color:#dca878}.answer-feedback{border-radius:9px;padding:20px;margin-top:20px}.answer-feedback.right{background:#f0f7e6;color:#446126}.answer-feedback.wrong{background:#fff5e8;color:#805619}.answer-feedback strong{font-size:.95rem}.answer-feedback p{font-size:.94rem;margin:8px 0 0;line-height:1.7}.quiz-bottom{border-top:1px solid var(--border);padding-top:23px;margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:15px}.quiz-bottom p{font-size:.78rem;color:var(--muted);margin:0;max-width:260px}.result-hero{text-align:center;padding:35px 30px 30px;background:#fff;border:1px solid var(--border);border-radius:16px}.result-icon{margin:0 auto 15px;display:grid;place-items:center;width:60px;height:60px;background:var(--lime);border-radius:18px;color:var(--navy)}.result-hero>.eyebrow{display:block;color:var(--blue);margin-bottom:14px}.result-hero h1{font-size:2.2rem}.result-hero>p{max-width:570px;margin:0 auto;color:var(--muted);font-size:1rem}.score{margin:18px 0;display:flex;gap:15px;justify-content:center;align-items:center}.score strong{font-size:3.2rem;letter-spacing:-.07em;color:var(--blue)}.score span{color:var(--muted);font-size:1rem}.result-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.result-heading{font-size:1.15rem;margin:32px 0 17px}.answer-list{display:grid;gap:13px}.answer-summary{display:flex;align-items:flex-start;gap:14px;padding:22px;background:#fff;border:1px solid var(--border);border-radius:11px}.summary-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;flex-shrink:0;margin-top:3px}.review{background:#fff1da;color:#9b722d}.answer-summary>div{flex:1;min-width:0}.answer-summary h3{font-size:1rem;margin:7px 0 13px;line-height:1.5}.answer-summary p{font-size:.88rem;line-height:1.7;color:#53667d;margin-bottom:9px}.result-status{font-size:.7rem;white-space:nowrap;border-radius:5px;padding:4px 7px;font-weight:600;margin-top:3px}.green{color:#486c24;background:#edf6e1}.amber{color:#906322;background:#fff2df}.answer-summary .code-panel{margin:15px 0}.next-note{display:flex;gap:13px;align-items:flex-start;margin:27px 0;color:var(--muted)}.next-note svg{color:var(--blue);flex-shrink:0;margin-top:4px}.next-note p{font-size:.85rem;line-height:1.8}.next-note strong{color:var(--navy)}.notice{background:#eaf1ff;border:1px solid #c7d9ff;border-radius:8px;padding:13px 16px;margin-bottom:22px;display:flex;justify-content:space-between;gap:12px;font-size:.9rem}.notice button{background:none;display:grid;place-items:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:15px;top:-60px;background:#fff;color:var(--blue);padding:10px 15px;border:2px solid var(--blue);z-index:10;border-radius:5px}.skip-link:focus{top:15px}@media(min-width:1500px){main{padding-top:58px}.lesson-card{padding:35px 38px}.lesson-card h2{font-size:3.2rem}}@media(max-width:1200px){.sidebar{width:220px;padding-left:15px;padding-right:15px}.workspace{margin-left:220px;width:calc(100% - 220px)}main{padding:35px 30px 25px}.topbar{padding:0 30px}.home-grid{grid-template-columns:minmax(0,1fr) 245px}.lesson-card{padding:24px}.lesson-card h2{font-size:2.4rem}.lesson-meta{gap:12px}.progress-card{padding:24px 18px}.section-title>span{font-size:.72rem}.reading-layout{grid-template-columns:170px minmax(0,1fr);gap:17px}.reading-card{padding:28px}.reading-card h1{font-size:1.8rem}}@media(max-width:1000px){.sidebar{width:190px;padding:28px 12px 18px}.brand{font-size:1.2rem;padding:0 3px;gap:9px}.brand-icon{width:38px;height:41px}.workspace{margin-left:190px;width:calc(100% - 190px)}.sidebar-middle{margin-top:40px}.sidebar-label{font-size:.65rem;padding:0 9px}.course-link{padding:13px 5px;gap:8px;font-size:.8rem}.course-link small{font-size:.68rem}.encouragement{padding-left:3px;gap:7px}.encouragement p{font-size:.7rem}.local-pill{display:none}.home-grid{grid-template-columns:minmax(0,1fr)}.progress-card{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.progress-card h3{grid-column:1}.progress-ring{grid-column:2;grid-row:1 / 5;width:130px;height:130px;align-self:center;margin:0 auto}.milestone{grid-column:1;margin:8px 0}.progress-card .text-button{grid-column:1;text-align:left;margin-top:10px}.section-title>span{display:none}.journey-step{padding:18px 15px}.reading-layout{grid-template-columns:1fr}.chapter-nav{position:static;display:flex;gap:5px;flex-wrap:wrap;margin-bottom:4px}.chapter-nav h3{display:none}.chapter-nav button{width:auto;font-size:.74rem;padding:6px}.chapter-nav button>span{width:20px;height:20px}.chapter-nav .quiz-nav{margin-top:0;border:0;padding-top:6px}.reading-time{display:none}.quiz-card{padding:26px}.quiz-bottom{align-items:flex-start;flex-direction:column}.answer-summary{padding:18px}.result-status{display:none}}@media(max-width:700px){.app-shell{display:block}.sidebar{position:static;width:100%;padding:15px 20px;border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.brand{font-size:1rem;flex-shrink:0}.brand-icon{width:33px;height:37px}.brand-icon svg{width:20px}.sidebar-middle{margin:0}.sidebar-middle>.sidebar-label,.sidebar-course,.sidebar-bottom .encouragement{display:none}.nav-item{font-size:.75rem;padding:9px;gap:6px}.nav-item svg{width:16px}.sidebar-bottom{margin:0;padding:0}.backup-buttons{gap:10px;padding:0}.backup-buttons button{font-size:0;gap:0;padding:7px}.backup-buttons svg{width:18px;height:18px}.workspace{margin:0;width:100%}.topbar{height:45px;padding:0 22px;font-size:.73rem;background:#f4f6fa;border-bottom:0}main{padding:22px 20px 25px}h1{font-size:2.25rem}.page-intro>.eyebrow{font-size:.65rem}.page-intro p{font-size:.92rem}.desktop-break{display:none}.home-grid{gap:15px}.lesson-card{padding:24px}.lesson-card h2{font-size:2.5rem}.lesson-meta{gap:13px;font-size:.73rem}.progress-card{padding:22px 20px}.progress-card h3{font-size:1.1rem}.progress-ring{width:115px;height:115px;padding:6px}.progress-ring strong{font-size:1.9rem}.progress-ring small{font-size:.58rem}.journey-grid{grid-template-columns:1fr}.journey-step{display:grid;grid-template-columns:35px 1fr;column-gap:12px;padding:19px}.journey-step>svg{grid-row:1 / 3;margin-top:5px}.journey-step h3{margin-right:25px}.journey-step p{max-width:none;font-size:.86rem}.home-footer{font-size:.73rem}.lesson-header{gap:12px;margin-bottom:20px}.lesson-header .eyebrow{font-size:.62rem}.chapter-nav{gap:4px;margin-bottom:10px}.chapter-nav button{font-size:.71rem}.reading-card{padding:24px 20px}.reading-card h1{font-size:1.75rem}.reading-card>p{font-size:1rem}.reading-card .reading-intro{font-size:1rem}.reading-actions .button{padding:11px 13px;font-size:.8rem}.code-panel pre{font-size:.76rem;padding:13px 10px}.line-number{width:23px}.exercise{padding:17px}.input-row{flex-direction:column}.exercise .input-row .button{align-self:flex-start}.film-value{font-size:.8rem}.quiz-card{padding:23px 20px}.quiz-card h1{font-size:1.5rem}.choice{padding:12px;gap:10px;font-size:.9rem}.result-hero{padding:27px 20px}.result-hero h1{font-size:1.8rem}.answer-summary{gap:10px;padding:17px 13px}.summary-icon{width:27px;height:27px}.answer-summary .small-text{font-size:.66rem}}@media(max-width:700px){.sidebar{flex-wrap:wrap}.sidebar-bottom{margin-left:auto}.lesson-header{flex-wrap:wrap}.choice>span{overflow-wrap:anywhere}.progress-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.milestone{min-width:0}.milestone>div{min-width:0;overflow-wrap:anywhere}.page-intro h1,.reading-card h1,.quiz-card h1{overflow-wrap:anywhere}.reading-actions{flex-wrap:wrap}}.sidebar{overflow-y:auto}.guide-nav{margin-top:18px}.featured-title{white-space:pre-line}.lesson-path{margin-top:30px}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.path-card{display:flex;align-items:flex-start;gap:15px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:23px;text-align:left;min-width:0}.path-card:hover{border-color:#8aacdf}.path-number{font-family:monospace;font-size:.88rem;color:var(--blue);background:#edf3ff;border-radius:7px;padding:5px 8px}.path-content{flex:1;min-width:0}.path-card h3{font-size:1.05rem;margin:4px 0 10px}.path-card p{font-size:.9rem;line-height:1.65;color:var(--muted);margin-bottom:13px}.path-meta{font-size:.8rem;color:#496581}.path-check{color:#527d26;margin-top:5px;flex-shrink:0}.guide-invite{display:flex;align-items:center;gap:17px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:23px;margin:22px 0}.guide-invite>div{flex:1;min-width:0}.guide-invite h2{font-size:1.13rem;margin-bottom:8px}.guide-invite p{font-size:.9rem;line-height:1.65;color:var(--muted);margin:0}.guide-invite .button{flex-shrink:0}.dictionary-diagram{margin:22px 0;font-family:monospace;font-size:.88rem}.dictionary-diagram>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:15px;border-bottom:1px solid #dce4ee;padding:9px 12px;background:#f4f7fc}.dictionary-diagram>div:first-child{border-radius:7px 7px 0 0}.dictionary-diagram>div:last-child{border-radius:0 0 7px 7px;border-bottom:0}.dictionary-diagram dt{color:#607892;overflow-wrap:anywhere}.dictionary-diagram dd{margin:0;overflow-wrap:anywhere}.lesson-card .dictionary-diagram>div{background:#253c54;border-color:#3c546b}.lesson-card .dictionary-diagram dt{color:#b0c5dc}.lesson-card .dictionary-diagram dd{color:var(--lime)}.set-preview,.structure-preview{display:flex;gap:9px;flex-wrap:wrap;margin:23px 0}.set-preview>span,.structure-preview>span{background:#eef4ff;border:1px solid #cbdaf2;padding:10px 15px;border-radius:8px;font-family:monospace;font-size:.88rem;overflow-wrap:anywhere;max-width:100%}.set-preview>small{display:block;width:100%;font-size:.85rem;color:var(--muted)}.lesson-card .set-preview>span,.lesson-card .structure-preview>span{background:#253c54;border-color:#47637d;color:var(--lime)}.lesson-card .set-preview>small{color:#becbd9}.exercise select{padding:11px 13px;width:100%;background:#fff;border:1px solid #c5d1e0;border-radius:7px;color:var(--navy);font:inherit}.scenario-prompt{margin:20px 0;color:#40536b;font-size:1rem;line-height:1.75}.structure-choices{border:0;margin:20px 0;padding:0}.structure-choices legend{font-size:.88rem;font-weight:600;margin-bottom:12px}.structure-choices label{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:.94rem;font-weight:400}.structure-choices input,.guide-checkbox input{width:19px;height:19px;accent-color:var(--blue);flex-shrink:0}.guide-page{max-width:910px;margin:0 auto}.guide-page .page-intro>p{max-width:750px}.guide-progress{display:flex;align-items:center;gap:16px;background:#edf3ff;border:1px solid #d5e2fa;border-radius:12px;padding:20px 24px;margin:26px 0}.guide-progress>svg{color:var(--blue);flex-shrink:0}.guide-progress strong{font-size:1rem}.guide-progress p{font-size:.9rem;color:var(--muted);margin:4px 0 0;line-height:1.65}.guide-steps{display:grid;gap:22px}.guide-step{background:#fff;border:1px solid var(--border);border-radius:14px;padding:30px 34px}.guide-step-header{display:flex;gap:14px;align-items:center;margin-bottom:23px}.guide-step-header h2{font-size:1.3rem;margin:0;flex:1;overflow-wrap:anywhere}.guide-number{width:41px;height:41px;background:#edf3ff;color:var(--blue);border-radius:10px;display:grid;place-items:center;font-family:monospace;flex-shrink:0}.guide-step>p{font-size:1rem;line-height:1.85;color:#40536b}.guide-success{display:flex;gap:10px;background:#f0f6e8;border:1px solid #deebc9;border-radius:8px;padding:15px 17px;margin:23px 0}.guide-success>svg{color:#628526;flex-shrink:0;margin-top:4px}.guide-success p{font-size:.94rem;line-height:1.7;color:#496136;margin:0}.guide-step details{padding:14px 0;border-bottom:1px solid var(--border);margin:15px 0}.guide-step summary{cursor:pointer;font-size:.94rem;font-weight:600;color:#496581}.guide-step details p{margin:13px 0 0;font-size:.94rem;line-height:1.8;color:var(--muted)}.guide-links{display:flex;gap:8px 17px;flex-wrap:wrap;margin:18px 0}.guide-links a{font-size:.85rem;color:var(--blue);text-underline-offset:3px}.guide-checkbox{display:flex;align-items:center;gap:10px;font-size:.94rem;font-weight:600;margin:21px 0 0;cursor:pointer}.guide-maintenance{margin:26px 0 0;padding:23px;background:#fff;border:1px solid var(--border);border-radius:12px}.guide-maintenance h2{font-size:1.1rem}.guide-maintenance p{font-size:.94rem;line-height:1.8;margin:0;color:var(--muted)}.code-label button{display:flex;align-items:center;gap:6px;color:#d9e8ff;font-size:.82rem;background:transparent;padding:2px 0}.copy-message{padding:8px 16px;border-top:1px solid #304156;font-size:.85rem;color:#cbf36c;letter-spacing:0}.code-panel pre{max-width:100%}.progress-card>.small-text{margin:18px 0 0;line-height:1.65}.guide-progress,.guide-step,.guide-maintenance{min-width:0}@media(max-width:1000px){.guide-invite{flex-wrap:wrap}.guide-invite>.button{margin-left:55px}.lesson-grid{grid-template-columns:1fr}.progress-card>.small-text{grid-column:1 / -1}.guide-step{padding:26px}}@media(max-width:700px){.sidebar .guide-nav{display:none}.sidebar{overflow-y:visible}.path-card{padding:20px 17px;gap:12px}.path-card h3{font-size:1rem}.path-card p{font-size:.9rem}.guide-invite{padding:20px 18px;gap:12px}.guide-invite h2{font-size:1.05rem}.guide-invite>.button{margin-left:50px}.guide-step{padding:23px 20px}.guide-step-header{gap:11px;flex-wrap:wrap}.guide-step-header h2{font-size:1.2rem}.guide-step-header .tag{margin-left:52px}.guide-progress{padding:18px}.guide-page h1{font-size:2rem;overflow-wrap:anywhere}.guide-success{padding:14px}.dictionary-diagram>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;padding:9px}.guide-invite .button{white-space:normal}.guide-links{flex-direction:column}.guide-number{font-size:.9rem}.path-card,.guide-invite,.guide-progress,.guide-step{overflow-wrap:anywhere}.progress-ring small{text-align:center;max-width:95%}}.code-label{flex-wrap:wrap;gap:8px}.code-label>span{min-width:0;overflow-wrap:anywhere}@media(max-width:700px){.guide-invite>.button{margin-left:0;max-width:100%;flex-shrink:1}.result-buttons .button{max-width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.guide-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}.guide-tabs button{border:1px solid var(--border);border-radius:8px;padding:10px 16px;background:#fff;font-weight:600}.guide-tabs button[aria-pressed=true]{background:#edf3ff;color:var(--blue);border-color:#aac5f5}.git-states{list-style:none;margin:18px 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.git-states li{padding:13px;background:#fff;border:1px solid var(--border);border-radius:8px;min-width:0;overflow-wrap:anywhere}.git-states strong,.git-states span{display:block}.git-states strong{font-size:.9rem}.git-states span{font-size:.85rem;color:var(--muted);margin-top:5px}.git-message{font-size:.95rem;line-height:1.7}.git-actions{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.git-actions .button{font-size:.85rem;white-space:normal;max-width:100%}.git-actions+.text-button{display:flex;gap:7px;align-items:center;margin-bottom:14px}@media(max-width:700px){.git-states{grid-template-columns:1fr}.guide-tabs button{max-width:100%;overflow-wrap:anywhere}}.environment-link{margin-top:24px;font-size:.86rem;gap:8px}.environment-link>span{min-width:0;overflow-wrap:anywhere}.environment-page{max-width:960px;margin:0 auto}.environment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.environment-card{display:flex;flex-direction:column;align-items:flex-start;padding:28px;background:#fff;border:1px solid var(--border);border-radius:14px;min-width:0}.environment-card .card-top{width:100%;margin-bottom:18px}.environment-card .icon-badge{margin-bottom:19px}.environment-card h2{font-size:1.35rem;overflow-wrap:anywhere}.environment-card>p{font-size:.95rem;color:var(--muted);line-height:1.8}.environment-card>.small-text{margin-top:auto}.environment-status{display:flex;gap:7px;align-items:center;margin:17px 0;color:#496581;font-size:.87rem}.environment-status svg{flex-shrink:0;color:#527d26}.environment-card .button{white-space:normal}.module-note{display:flex;align-items:flex-start;gap:15px;padding:22px;background:#edf3ff;border:1px solid #d5e2fa;border-radius:12px;color:#40536b}.module-note svg{color:var(--blue);flex-shrink:0;margin-top:4px}.module-note p{margin:0;font-size:.95rem;line-height:1.8}.environment-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 27px;padding-bottom:20px;border-bottom:1px solid var(--border)}.environment-nav button{padding:9px 13px;border-radius:8px;background:#fff;border:1px solid var(--border);font-size:.82rem;font-weight:600}.environment-nav button[aria-current=page]{background:#edf3ff;color:var(--blue);border-color:#b3ccf6}.tutorial-image{margin:24px 0;min-width:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#f5f7fa}.tutorial-image>a{display:block}.tutorial-image img{display:block;width:100%;height:auto}.tutorial-image figcaption{padding:15px 17px;font-size:.83rem;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.tutorial-image figcaption span{display:block;margin-top:8px}.tutorial-image a{color:var(--blue);text-underline-offset:3px}@media(max-width:1000px){.environment-grid{gap:15px}.environment-card{padding:23px}.environment-link{font-size:.8rem}}@media(max-width:700px){.sidebar-middle{display:flex;flex-direction:column;align-items:stretch}.environment-link{margin-top:3px;font-size:.72rem;padding:6px 9px}.environment-grid{grid-template-columns:1fr}.environment-card{padding:23px 20px}.environment-nav button{max-width:100%;overflow-wrap:anywhere}.environment-page h1{overflow-wrap:anywhere;font-size:2rem}.module-note{padding:18px;gap:11px}.tutorial-image figcaption{padding:13px}.environment-card .button{max-width:100%}}.environment-page{overflow-wrap:anywhere}.module-note p,.environment-status span{min-width:0}.environment-card .card-top{flex-wrap:wrap;gap:8px}.reading-card{overflow-wrap:anywhere}.back-button{max-width:100%;overflow-wrap:anywhere;white-space:normal;text-align:left}.guide-page{overflow-wrap:anywhere}.course-page{max-width:1100px;margin:auto}.course-group-title{margin:28px 0 15px}.course-run{margin-top:14px}.mac-practice{margin:28px 0;padding:24px;border:1px solid var(--border);border-radius:16px;background:#f5f8f4}.mac-practice li{margin-bottom:12px}.mac-practice code{overflow-wrap:anywhere}.demo-films{padding:0;list-style:none}.demo-films li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid #dce4da}.demo-films li span{flex:1;overflow-wrap:anywhere;min-width:120px}.exercise>input{width:100%;box-sizing:border-box}.course-link-nav span{overflow-wrap:anywhere}.html-preview{padding:20px;background:#fff;border-radius:12px}.course-page .page-intro{margin-top:25px}.result-page,.quiz-page{overflow-wrap:anywhere}.course-link-nav{margin-top:15px;text-align:left}@media(max-width:700px){.course-link-nav{margin-top:3px;padding:6px 9px;font-size:.72rem}.result-hero .button{max-width:100%;white-space:normal}}.answer-list{grid-template-columns:minmax(0,1fr)}.project-download a.button,.mac-practice a.button{color:var(--navy);text-decoration:none}@media(max-width:700px){.project-download{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start}.project-download>.button{grid-column:1/-1;justify-self:start;margin-left:0}}
