@import url('/assets/base.css');
/* System fonts keep the first render independent of third-party services. */
:root{--ink:#22312c;--muted:#65716b;--paper:#faf9f5;--line:#dfE5dd;--primary:#245b4c;--accent:#f5cc68;--soft:#edf3ee;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.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}
/* Course pages */
.course-layout{max-width:1440px;display:grid;grid-template-columns:250px minmax(0,1fr) 220px;margin:auto;min-height:75vh}.course-sidebar{border-right:1px solid var(--line);padding:36px 22px}.course-sidebar>.eyebrow{font-size:9px;letter-spacing:.09em}.course-home{display:flex;justify-content:space-between;font-size:14px;font-weight:650;padding:10px 0 20px;margin-bottom:12px;border-bottom:1px solid var(--line)}.nav-chapter{margin:0 0 6px}.nav-chapter summary{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:550;padding:10px 0;list-style:none}.nav-chapter summary::-webkit-details-marker{display:none}.nav-chapter summary>span{font:10px var(--mono);color:#788779}.nav-chapter summary>b{margin-left:auto;font-weight:400;color:var(--muted)}.nav-chapter[open] summary>b{transform:rotate(45deg)}.nav-chapter ul{list-style:none;margin:0 0 15px 15px;padding:0 0 0 15px;border-left:1px solid #d8e1d6}.nav-chapter li a{display:block;color:#667269;font-size:11px;padding:7px 8px;line-height:1.65;border-radius:4px}.nav-chapter li a:hover{color:var(--primary);background:var(--soft)}.nav-chapter li a[aria-current]{background:var(--soft);color:var(--primary);font-weight:650}.sidebar-exercises{display:block;margin-top:17px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;font-weight:600}.sidebar-note{font-size:11px;color:var(--muted);line-height:1.9;border:1px solid var(--line);border-radius:7px;padding:17px;margin-top:30px}.sidebar-note>span{float:left;font-size:23px;color:var(--primary);margin-right:12px}.lesson-main{padding:32px 48px 65px;min-width:0;max-width:900px}.breadcrumbs{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted);margin-bottom:40px}.breadcrumbs a:hover{text-decoration:underline}.lesson-label{font-size:9px;letter-spacing:.15em;color:var(--primary);font-weight:750;margin-bottom:14px}.lesson-main>h1{font-size:clamp(29px,3vw,42px);line-height:1.15;letter-spacing:-.045em;font-weight:650;margin-bottom:28px}.page-sidebar{padding:100px 25px 30px 0;align-self:start;position:sticky;top:0;max-height:100vh;overflow:auto}.page-sidebar>.eyebrow{font-size:9px;letter-spacing:.1em}.page-sidebar>nav{display:flex;flex-direction:column;border-left:1px solid var(--line);margin:20px 0 30px}.page-sidebar>nav a{font-size:10px;line-height:1.7;padding:8px 0 8px 14px;color:var(--muted)}.page-sidebar>nav a:hover{color:var(--primary);border-left:2px solid var(--primary);margin-left:-1px}.practice-callout{background:var(--soft);border:1px solid #d5e1d3;border-radius:7px;padding:20px}.practice-callout>span{font:22px var(--mono);color:var(--primary)}.practice-callout h3{font-size:17px;margin:17px 0 10px}.practice-callout p{font-size:11px;color:var(--muted)}.practice-callout a{font-size:11px;font-weight:650;color:var(--primary)}.prose{font-size:15px;line-height:1.9;overflow-wrap:break-word}.prose p{margin:0 0 20px}.prose h2{font-size:25px;margin:42px 0 19px;font-weight:650;scroll-margin-top:25px}.prose h3{font-size:20px;margin:32px 0 17px;scroll-margin-top:25px}.prose h4,.prose h5,.prose h6{font-size:16px;margin:25px 0 15px}.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.prose a:hover{text-decoration-thickness:2px}.prose ul,.prose ol{padding-left:23px;margin:15px 0 25px}.prose li{margin:7px 0}.prose blockquote{border-left:3px solid var(--primary);background:var(--soft);padding:18px 23px;margin:25px 0;font-size:17px}.prose blockquote p:last-child{margin:0}.prose hr{border:0;border-top:1px solid var(--line);margin:30px 0}.prose .intro_block{font-size:17px;color:#52645a;line-height:1.85}.prose code{font: .88em/1.7 var(--mono);background:var(--soft);padding:2px 5px;border-radius:4px;color:var(--primary)}.prose pre{position:relative;background:#23372e;border:1px solid #314d3e;border-radius:8px;padding:43px 22px 22px;overflow:auto;white-space:pre;line-height:1.8;margin:25px 0 30px;tab-size:4;color:#ecf1e7}.prose pre code{background:none;color:inherit;padding:0;font:12px/1.85 var(--mono);border-radius:0}.copy-code{position:absolute;top:9px;right:10px;background:#344e40;border:1px solid #58725e;border-radius:4px;color:#e4ecdf;padding:4px 9px;font:10px var(--sans)}.prose figure{margin:25px 0}.prose figure:has(img){text-align:center}.prose figure img{object-fit:contain;max-height:480px}.prose figcaption{font-size:11px;color:var(--muted);margin-top:8px}.wp-block-columns{display:flex;gap:24px;align-items:center;margin-bottom:23px}.wp-block-column{flex:1;min-width:0}.prose .wp-block-columns figure img{max-height:180px}.prose .wp-block-table{overflow:auto;max-width:100%}.prose table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.prose th{background:var(--soft);font-weight:650}.prose td,.prose th{padding:11px 13px;border:1px solid var(--line);vertical-align:top}.prose details.solution{border:1px solid #d6e0d2;border-radius:7px;margin:17px 0;background:#fffef9;overflow:hidden}.prose .solution summary{padding:15px 20px;font-size:13px;font-weight:650;color:var(--primary)}.prose .solution[open] summary{border-bottom:1px solid var(--line);background:var(--soft)}.prose .solution>div{padding:22px}.prose .solution>div>:last-child{margin-bottom:0}.exercise-note{font-size:12px;padding:13px 17px;background:#f6eedb;border-left:3px solid #c8a348;margin-bottom:28px;color:#675b3d}.pagination{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px}.pagination a{border:1px solid var(--line);border-radius:7px;padding:17px;display:flex;flex-direction:column;gap:8px}.pagination a:hover{border-color:var(--primary)}.pagination a:last-child{text-align:right}.pagination small{font-size:10px;color:var(--muted)}.pagination strong{font-size:13px;font-weight:600}.exercise-list{list-style:none!important;padding:0!important;display:grid;gap:9px}.exercise-list li{margin:0}.exercise-list a{display:flex;justify-content:space-between;gap:15px;text-decoration:none;padding:16px 19px;border:1px solid var(--line);background:#fffef9;border-radius:6px;font-size:13px}.exercise-list a:hover{border-color:var(--primary);background:var(--soft)}.exercise-list a>span:last-child{color:var(--muted);font-size:11px;flex-shrink:0}.search-form{margin:28px 0}.search-form label{display:block;font-size:12px;font-weight:650;margin-bottom:8px}.search-form input{width:100%;padding:15px;border:1px solid #a9bbab;border-radius:7px;background:#fffefb;color:var(--ink)}.search-count{font-size:12px;color:var(--muted);margin:15px 0}.search-results{list-style:none!important;padding:0!important}.search-results li{padding:18px 0;border-bottom:1px solid var(--line)}.search-results a{font-weight:650;text-decoration:none;font-size:16px}.search-results p{font-size:12px;color:var(--muted);margin:8px 0 0}.ad-slot{min-height:250px;border:1px solid var(--line);margin:25px 0;text-align:center}.ad-slot>span{font-size:9px;display:block;color:var(--muted)}.adsbygoogle{display:block}.media-note{font-size:12px;color:var(--muted);font-style:italic}
@media(min-width:1450px){.hero-inner{padding-top:90px;padding-bottom:80px}.hero h1{font-size:64px}.hero-description{font-size:16px}}
@media(max-width:1240px){.facts-strip,.exercise-banner{margin-left:42px;margin-right:42px}.course-layout{grid-template-columns:220px minmax(0,1fr) 180px}.course-sidebar{padding:32px 18px}.lesson-main{padding:32px 30px 55px}.page-sidebar{padding-right:18px}.hero-inner{gap:35px}.hero-actions{gap:17px}.hero-actions .button{padding:14px 16px;font-size:12px;gap:15px}.header-nav{gap:24px}.chapter-card{padding:19px}.chapter-card h3{font-size:18px}}
@media(max-width:1000px){.page-sidebar{display:none}.course-layout{grid-template-columns:220px minmax(0,1fr)}.hero-inner{padding-top:55px;padding-bottom:45px;gap:32px}.hero h1{font-size:45px}.hero-description{font-size:13px}.window-code{font-size:11px;padding:24px 15px}.hero-footnote{font-size:9px;gap:5px}.hero-footnote>span:not(:first-child){margin-left:4px}.floating-label{right:-7px;font-size:10px;padding:8px 11px}.facts-strip{grid-template-columns:1fr 1.2fr 1fr}.facts-strip>p{display:none}.facts-strip>div:last-of-type{border:0}.chapter-grid{grid-template-columns:repeat(2,1fr)}.chapter-card{min-height:230px}.exercise-banner{flex-wrap:wrap}.exercise-banner>.button{margin-left:105px}.site-footer{flex-wrap:wrap}.site-footer nav{gap:18px}.header-nav{gap:20px}.header-nav>.button{display:none}}
@media(max-width:700px){html{scroll-padding-top:20px}.site-header{height:78px}.header-inner{padding:0 22px}.brand-icon{width:36px;height:38px;font-size:20px;border-radius:9px}.brand{font-size:11px;gap:9px}.brand-subject{font-size:22px}.header-nav{display:none}.mobile-menu{display:block}.mobile-menu>summary{list-style:none;font-size:12px;display:flex;gap:14px;align-items:center;padding:12px 0}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>nav{position:absolute;top:77px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:18px 25px 28px;max-height:80vh;overflow:auto;box-shadow:0 10px 20px #23372e10}.mobile-menu>nav>a{display:block;padding:10px 0;font-size:13px}.hero-inner{padding:42px 23px 32px;grid-template-columns:1fr;gap:25px}.hero h1{font-size:47px;margin:21px 0}.hero-description{font-size:14px;max-width:450px;margin-top:20px}.hero-actions{gap:22px;flex-wrap:wrap}.hero-actions .button{font-size:12px;padding:14px 17px}.hero-footnote{font-size:9px;gap:7px;margin-top:23px}.hero-footnote>span:not(:first-child){margin-left:5px}.hero-visual{max-width:460px;width:95%;margin:5px auto 0}.window-code{font-size:12px;padding:26px 18px}.visual-note{font-size:13px}.floating-label{bottom:19px;right:-14px;font-size:9px}.facts-strip{margin:0 23px;padding:23px 0;gap:5px}.facts-strip>div{padding:0 11px;display:block}.facts-strip>div:first-child{padding-left:0}.facts-strip strong{display:block;font-size:25px}.facts-strip span{font-size:9px;display:block;margin-top:3px}.chapters-section{padding:43px 23px 40px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:29px;max-width:300px}.section-heading>p{font-size:12px;margin-top:15px}.section-heading>p br{display:none}.chapter-grid{gap:12px}.chapter-card{padding:17px;min-height:240px}.chapter-card h3{font-size:18px}.chapter-card p{font-size:11px}.card-top{margin-bottom:23px}.card-bottom{font-size:9px}.exercise-banner{margin:0 23px 40px;padding:25px;display:block}.banner-icon{width:54px;height:54px;font-size:21px;margin-bottom:22px}.exercise-banner h2{font-size:26px}.exercise-banner p br{display:none}.exercise-banner>.button{margin:22px 0 0;font-size:12px}.site-footer{padding:28px 23px;gap:23px;align-items:start}.site-footer nav{flex-direction:column;gap:10px}.site-footer small{width:100%}.course-sidebar{display:none}.course-layout{display:block}.lesson-main{padding:23px 23px 45px;max-width:100%}.breadcrumbs{margin-bottom:28px}.lesson-main>h1{font-size:33px}.prose{font-size:14px;line-height:1.9}.prose h2{font-size:23px;margin-top:33px}.prose h3{font-size:19px}.prose pre{margin-left:0;margin-right:0;padding:42px 15px 18px}.prose pre code{font-size:11px}.wp-block-columns{flex-direction:column;gap:12px;align-items:stretch}.wp-block-column{width:100%}.prose .wp-block-columns figure img{max-height:150px}.prose .solution>div{padding:17px}.pagination{gap:10px}.pagination a{padding:12px}.pagination strong{font-size:11px}.exercise-list a{padding:13px;font-size:12px}.exercise-list a>span:last-child{font-size:10px}.prose .intro_block{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
