:root{--ion-ink:#1d1d1f;--ion-muted:#68686d;--ion-orange:#b94b00;--ion-line:#dcdcdf;--ion-ground:#f5f5f7;--ion-green:#296346}.ion-wordmark{white-space:nowrap;letter-spacing:-1.1px;color:var(--ion-ink);align-items:baseline;font-size:23px;font-weight:800;display:inline-flex}.ion-wordmark>span{color:var(--ion-orange)}.brand .ion-wordmark>span{font:inherit}.section-kicker,.eyebrow{letter-spacing:.085em;text-transform:uppercase;color:var(--ion-muted);font-size:12px;font-weight:650;display:block}.platform-primary{background:var(--ion-ink);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:16px;min-height:52px;padding:12px 22px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.platform-primary:hover{color:#fff;background:#353538}.platform-primary:disabled{opacity:.5}.text-action{min-height:44px;color:var(--ion-ink);text-underline-offset:4px;background:0 0;border:0;align-items:center;padding:8px 0;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.platform-error,.platform-success,.quiet-notice{overflow-wrap:anywhere;border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.5}.platform-error{color:#805100;background:#fff5e8;border:1px solid #e9d0a8;margin:16px 0}.platform-error button{min-height:44px;font-weight:600;text-decoration:underline;display:block}.platform-success{color:#245b39;background:#edf5ee;margin:16px 0}.quiet-notice{background:#ededf0;margin:16px 0}.platform-page{max-width:820px;margin:12px auto 60px}.platform-page h1{margin:9px 0 15px;font-size:36px}.platform-page h1>span,.study-greeting h1>span,.coding-heading h2>span{color:var(--ion-orange)}.page-lead{max-width:580px;color:var(--ion-muted);margin:0 0 26px;line-height:1.6}.gate-loading{text-align:center;min-height:100dvh;color:var(--ion-muted);flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:24px;display:flex}.gate-loading p{max-width:36ch;margin:0}.login-shell{flex-direction:column;max-width:1220px;min-height:100dvh;margin:auto;padding:32px 48px 24px;display:flex}.shared-login-shell .login-panel{width:min(100%,460px);margin:auto}.shared-login-shell .login-panel h1{margin:0 0 16px;font-size:28px;line-height:1.2}.shared-login-shell .telegram-link{border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:12px;text-decoration:none;display:flex}.login-shell>header{justify-content:space-between;align-items:center;gap:20px;display:flex}.login-shell>header>span:last-child{color:var(--ion-muted);font-size:14px}.login-layout{flex:1;grid-template-columns:1fr 430px;align-items:center;gap:80px;padding:64px 0;display:grid}.login-intro h1{letter-spacing:-2.4px;margin:18px 0 24px;font-size:56px;line-height:1.05}.login-intro>p:not(.eyebrow){color:var(--ion-muted);font-size:19px;line-height:1.55}.code-motif{border:1px solid var(--ion-line);background:#fff;border-radius:26px;place-items:center;width:100px;height:100px;margin-bottom:32px;display:grid}.code-motif>span{letter-spacing:-9px;font-family:monospace;font-size:56px;line-height:1;transform:translate(-5px)}.code-motif i{color:var(--ion-orange);font-style:normal}.login-topics{color:var(--ion-muted);gap:22px;margin-top:32px;font-size:13px;display:flex}.login-panel{border:1px solid var(--ion-line);background:#fff;border-radius:22px;min-width:0;padding:36px}.login-panel h2{margin:9px 0 16px;font-size:28px}.login-panel>p{color:var(--ion-muted);margin-bottom:24px;font-size:16px}.login-panel .platform-primary{width:100%;margin:24px 0 18px}.login-panel>small{color:var(--ion-muted);margin-top:25px;font-size:12px;line-height:1.5;display:block}.login-panel .login-recovery{font-size:14px;line-height:1.5}.login-wait{justify-content:center;align-items:center;gap:9px;display:flex;font-size:13px!important}.login-wait>span{background:var(--ion-orange);border-radius:50%;width:7px;height:7px}.test-login{border-top:1px solid var(--ion-line);margin-top:28px;padding-top:12px}.test-login summary{color:var(--ion-muted);cursor:pointer;align-items:center;min-height:44px;font-size:14px;display:flex}.test-login summary:after{content:"+";margin-left:auto;font-size:20px}.test-login[open] summary:after{content:"−"}.test-login form{gap:15px;margin-top:8px;display:grid}.test-login label,.field-label{color:var(--ion-muted);flex-direction:column;gap:7px;min-width:0;font-size:14px;display:flex}.test-login input,.field-label input,.field-label select{width:100%;min-width:0;min-height:48px;color:var(--ion-ink);background:#fff;border:1px solid #b8b8bd;border-radius:10px;padding:10px 12px;font-size:16px;line-height:1.4}.login-shell>footer{color:var(--ion-muted);justify-content:space-between;gap:16px;font-size:12px;display:flex}.login-shell input:focus-visible,.platform-page input:focus-visible{outline-offset:3px;outline:3px solid #0071e3}.study-home{max-width:900px;margin:4px auto 40px}.study-greeting{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.study-greeting h1{overflow-wrap:anywhere;margin-top:7px;font-size:32px}.avatar{border:1px solid var(--ion-line);background:#ececef;border-radius:50%;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:21px;font-weight:600;display:grid}.study-today{align-items:center;gap:18px;margin-bottom:25px;display:flex}.study-today>div:last-child>strong{font-size:17px}.study-today p{color:var(--ion-muted);margin-top:4px;font-size:14px}.daily-ring{flex:0 0 74px;place-items:center;height:74px;display:grid;position:relative}.daily-ring svg{width:74px;height:74px;position:absolute;inset:0;transform:rotate(-90deg)}.daily-ring circle{fill:none;stroke:#e4e4e8;stroke-width:5px}.daily-ring circle+circle{stroke:var(--ion-orange);stroke-linecap:round;transition:stroke-dashoffset .4s}.daily-ring strong{font-size:23px}.daily-ring strong svg{width:26px;height:26px;display:block;position:static;inset:auto;transform:none}.resume-arrow svg{width:24px;height:24px;display:block}.cloud-status svg,.platform-success svg{vertical-align:-3px;width:17px;height:17px;margin-right:3px;display:inline-block}.platform-page .text-action svg{vertical-align:-3px;width:18px;height:18px;margin-left:3px;display:inline-block}.study-stats{border-top:1px solid var(--ion-line);grid-template-columns:repeat(3,1fr);gap:16px;padding:20px 0 24px;display:grid}.study-stats>div{flex-direction:column;gap:3px;display:flex}.study-stats>div+div{border-left:1px solid var(--ion-line);padding-left:24px}.study-stats strong{letter-spacing:-.6px;font-size:26px;line-height:1.3}.study-stats strong small{color:var(--ion-muted);letter-spacing:0;font-size:13px;font-weight:400}.study-stats span{color:var(--ion-muted);font-size:12px}.resume-lesson{background:var(--ion-ink);color:#fff;text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;width:100%;padding:20px 24px;display:flex}.resume-lesson:hover{background:#343437}.resume-lesson>span:first-child{flex-direction:column;gap:5px;min-width:0;display:flex}.resume-lesson small{color:#d0d0d5;font-size:12px}.resume-lesson strong{font-size:18px;line-height:1.4}.resume-arrow{flex-shrink:0;font-size:27px}.cloud-status{color:var(--ion-muted);text-align:center;min-height:20px;margin-top:11px;font-size:12px}.cloud-status.is-pending{color:#805100}.coding-heading h2{font-size:26px}.coding-heading .coding-progress,.coding-resume{display:none}.coding-heading{margin-bottom:20px!important}.space-nav svg{width:20px;height:20px}.topbar-brand,.mobile-bottom-nav{display:none}.segmented{background:#e9e9ed;border-radius:12px;gap:4px;margin-bottom:20px;padding:4px;display:inline-flex}.segmented button{min-height:44px;color:var(--ion-muted);border-radius:9px;padding:9px 20px;font-size:14px;font-weight:600}.segmented button[aria-pressed=true]{color:var(--ion-ink);background:#fff}.ranking-list{border-top:1px solid var(--ion-line);margin:8px 0 24px;padding:0;list-style:none}.ranking-list li{border-bottom:1px solid var(--ion-line);grid-template-columns:2.5ch minmax(0,1fr) auto;align-items:baseline;column-gap:16px;padding:18px 12px;display:grid}.ranking-list li.is-you{background:#fff2e8}.rank-place{font-variant-numeric:tabular-nums;color:var(--ion-muted);font-size:16px;font-weight:500}.rank-person{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.rank-person>strong{overflow-wrap:anywhere;font-size:16px;line-height:1.45}.rank-meta .rank-you{color:var(--ion-orange);font-weight:600}.rank-person>span{color:var(--ion-muted);flex-wrap:wrap;gap:4px 10px;font-size:14px;line-height:1.45;display:flex}.rank-score{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:22px;line-height:1.3}.rank-score small{color:var(--ion-muted);margin-left:5px;font-size:11px;font-weight:500}.empty-state{text-align:center;padding:48px 18px}.empty-state h2{margin:15px 0 10px;font-size:23px}.empty-state p{color:var(--ion-muted);max-width:350px;margin:0 auto 24px}.empty-state .platform-primary{display:inline-flex}.empty-code{color:#97979e;font:500 40px ui-monospace,monospace}.fine-print{color:var(--ion-muted);margin-top:24px;font-size:12px;line-height:1.7}.loading-state{min-height:150px;color:var(--ion-muted);place-items:center;display:grid}.profile-page{max-width:640px}.profile-identity{align-items:center;gap:16px;margin:28px 0;display:flex}.profile-identity strong{font-size:19px}.profile-identity p{color:var(--ion-muted);font-size:14px}.settings-section{border-top:1px solid var(--ion-line);margin-top:24px;padding:26px 0}.settings-section h2{margin:0 0 22px;font-size:21px}.settings-section p{color:var(--ion-muted);font-size:14px;line-height:1.65}.fields-pair{grid-template-columns:1fr 2fr;gap:16px;margin-top:18px;display:grid}.setting-toggle{cursor:pointer;border-bottom:1px solid #e8e8eb;justify-content:space-between;align-items:center;gap:20px;min-height:66px;padding:18px 0;display:flex}.setting-toggle>span{min-width:0}.setting-toggle strong{font-size:15px;font-weight:500;display:block}.setting-toggle small{color:var(--ion-muted);margin-top:4px;font-size:12px;line-height:1.5;display:block}.setting-toggle input{appearance:none;cursor:pointer;background:0 0;border:0;flex:0 0 48px;width:48px;height:44px;position:relative}.setting-toggle input:before{content:"";background:#85858c;border-radius:20px;width:48px;height:28px;transition:background .15s;position:absolute;top:8px;left:0}.setting-toggle input:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:12px;left:4px}.setting-toggle input:checked:before{background:var(--ion-green)}.setting-toggle input:checked:after{transform:translate(20px)}.setting-toggle input:disabled{opacity:.4;cursor:default}.settings-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.settings-actions>.text-action{margin-right:14px}.install-help{border:1px solid var(--ion-line);border-radius:12px;margin-top:22px;padding:20px}.install-help strong{margin-bottom:5px;font-size:14px;display:block}.install-help p+strong{margin-top:20px}.profile-page form>.platform-primary{min-width:220px}.page-title-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.page-title-row h1{margin-bottom:14px}.admin-page{max-width:1080px}.admin-filters{grid-template-columns:2fr 1fr;gap:16px;margin:25px 0;display:grid}.student-table-head,.student-row{grid-template-columns:1.2fr 1.7fr 1fr .8fr;align-items:center;gap:20px;display:grid}.student-table-head{color:var(--ion-muted);border-bottom:1px solid var(--ion-line);padding:14px 0;font-size:12px}.student-row{border-bottom:1px solid var(--ion-line);padding:17px 0;font-size:14px}.student-row>div{overflow-wrap:anywhere;min-width:0}.student-row button{text-align:left;width:100%;min-height:44px;display:block}.student-row button strong{text-underline-offset:4px;text-decoration:underline}.student-row small{color:var(--ion-muted);margin-top:4px;font-size:12px;display:block}.pagination{justify-content:space-between;align-items:center;gap:16px;margin-top:24px;font-size:13px;display:flex}.student-detail{border-top:2px solid var(--ion-ink);margin-top:36px;padding-top:25px}.student-detail h2{overflow-wrap:anywhere;font-size:23px}.student-detail>p{color:var(--ion-muted);margin-top:15px;font-size:14px}.student-detail ol{margin-top:20px;padding:0;list-style:none}.student-detail li{border-top:1px solid var(--ion-line);justify-content:space-between;gap:18px;padding:13px 0;font-size:14px;display:flex}.student-detail li strong{white-space:nowrap}@media (width>=901px){.app-shell:not(.is-studying) .topbar{height:66px}.app-shell:not(.is-studying) .main-content{padding-top:30px}.topbar-brand{display:block}.topbar-brand .ion-wordmark{font-size:17px}.brand .ion-wordmark{font-size:24px}.course-map{max-width:900px}}@media (width<=1050px){.login-layout{grid-template-columns:1fr 400px;gap:40px}.login-intro h1{font-size:46px}.login-shell{padding:28px 32px}.student-table-head,.student-row{gap:12px}}@media (width<=900px){.app-shell:not(.is-studying){padding-bottom:calc(78px + env(safe-area-inset-bottom))}.mobile-bottom-nav{z-index:40;border-top:1px solid var(--ion-line);padding:6px 12px calc(7px + env(safe-area-inset-bottom));background:#fff;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav button{min-height:54px;color:var(--ion-muted);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;display:flex}.mobile-bottom-nav svg{width:22px;height:22px}.mobile-bottom-nav button[aria-current=page]{color:var(--ion-orange);background:#fff4ec}.topbar-brand{display:block}.topbar-brand .ion-wordmark{font-size:19px}.app-shell:not(.is-studying) .topbar-python{display:none}.app-shell:not(.is-studying) .lesson-counter{font-size:12px}.app-shell:not(.is-studying) .topbar{padding-top:env(safe-area-inset-top);min-height:62px}.study-home{margin-top:4px}.study-greeting h1{font-size:29px}.platform-page{margin-top:8px}.platform-page h1{font-size:32px}.login-layout{grid-template-columns:1fr;align-self:center;gap:32px;width:100%;max-width:460px;padding:32px 0}.login-intro h1{letter-spacing:-1.4px;margin:12px 0 15px;font-size:38px;line-height:1.1}.login-intro h1 br{display:none}.login-intro>p:not(.eyebrow){font-size:16px}.login-intro>p br,.code-motif,.login-topics{display:none}.login-panel{padding:28px}.login-shell>header>span:last-child{display:none}.login-shell>footer{font-size:11px}.login-layout .login-intro{padding:0 8px}.login-shell{padding:24px 20px calc(22px + env(safe-area-inset-bottom))}.login-intro .eyebrow{font-size:11px}}@media (width<=600px){.study-home{margin-bottom:32px}.study-greeting{margin-bottom:22px}.study-greeting .avatar{width:42px;height:42px;font-size:18px}.study-greeting h1{font-size:28px}.study-today{gap:13px;margin-bottom:22px}.study-today>div:last-child>strong{font-size:15px;line-height:1.4;display:block}.study-today p{font-size:13px}.daily-ring,.daily-ring svg{width:66px;height:66px}.daily-ring{flex-basis:66px}.study-stats{gap:9px;padding:18px 0 20px}.study-stats>div+div{padding-left:15px}.study-stats strong{font-size:24px}.study-stats strong small{font-size:12px}.study-stats span{font-size:11px}.resume-lesson{min-height:88px;padding:17px 18px}.resume-lesson strong{font-size:16px}.coding-heading h2{font-size:24px}.coding-heading p{font-size:14px}.platform-page{margin-bottom:24px}.platform-page h1{font-size:30px}.page-lead{margin-bottom:22px;font-size:15px}.segmented{display:flex}.segmented button{flex:1;padding:9px 12px}.ranking-list li{gap:12px;padding:16px 7px}.rank-score{font-size:21px}.fields-pair{grid-template-columns:1fr;gap:16px}.settings-section{padding-top:24px}.settings-section h2{font-size:20px}.settings-actions{flex-direction:column;align-items:stretch}.settings-actions .text-action{align-self:flex-start}.settings-actions>[data-slot=button]{white-space:normal;min-height:48px}.profile-page form>.platform-primary{width:100%}.admin-filters{grid-template-columns:1fr;gap:13px}.student-table-head{display:none}.student-row{grid-template-columns:1fr 1fr;gap:13px 16px;padding:19px 0}.student-row>div:first-child,.student-row>div:nth-child(2){grid-column:1/-1}.student-row>div:last-child{text-align:right}.student-row button{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-row button strong{font-size:16px}.student-row button small{margin:0}.empty-state{padding:35px 8px}.empty-state h2{font-size:21px}.page-title-row h1{font-size:29px}.page-title-row{gap:12px}.student-detail .page-title-row h2{font-size:21px}.login-shell>footer>span{display:none}.login-panel{padding:25px 23px}.login-panel .platform-primary{padding:13px 14px;font-size:15px}.login-layout{gap:27px;padding-top:30px}.login-intro h1{font-size:36px}.login-panel h2{font-size:25px}.cloud-status{font-size:11px}.is-studying .main-content{padding-bottom:calc(130px + env(safe-area-inset-bottom))}.lesson-action-dock{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}@media (width<=350px){.study-stats>div+div{padding-left:9px}.study-stats strong{font-size:22px}.study-stats span{font-size:10px}.login-shell{padding-left:14px;padding-right:14px}.login-panel{padding:22px 18px}.login-intro h1{font-size:32px}.study-greeting h1{font-size:25px}}@media (prefers-reduced-motion:reduce){.daily-ring circle,.setting-toggle input:before,.setting-toggle input:after{transition:none}}.platform-primary[data-slot=button]{border-radius:12px;min-height:52px;font-size:16px}.login-intro h1{word-spacing:0}.course-map .coding-resume{display:none}.app-shell .course-map .coding-heading p{font-size:14px}.brand .ion-wordmark{color:var(--ion-ink)}.brand .ion-wordmark>span{color:var(--ion-orange)}.platform-page>a{align-items:center;min-height:44px;display:inline-flex}.login-methods{width:100%;display:flex}.login-methods button{white-space:nowrap;flex:1;padding:9px 8px}.password-login,.credentials-form{gap:18px;display:grid}.password-login .login-recovery{margin:0}.password-login>.text-action{justify-self:start}.credentials-form .field-label small{font-size:13px;line-height:1.5}.credentials-form>.platform-primary{justify-self:start}.credentials-section>p{margin-bottom:18px}.credentials-section .platform-error,.credentials-section .platform-success,.login-panel .password-login .platform-primary{margin:0}.profile-page .credentials-form>.platform-primary{margin-top:0}@media (width<=760px){.login-shell-password .login-intro{display:none}.login-shell-password .login-layout{padding-top:28px}}.recall-invitation{border:0;border-bottom:1px solid var(--ion-line);text-align:left;width:100%;color:var(--ion-ink);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.recall-invitation>span{gap:4px;min-width:0;display:grid}.recall-invitation strong{font-size:17px}.recall-invitation span span{color:var(--ion-muted);font-size:16px}.recall-invitation>svg{flex-shrink:0;width:24px;height:24px}.legacy-progress summary{cursor:pointer;align-items:center;min-height:48px;font-size:18px;font-weight:650;display:flex}.legacy-progress summary:after{content:"+";margin-left:auto;padding-left:16px}.legacy-progress[open] summary:after{content:"−"}.legacy-progress p{font-size:16px;line-height:1.55}.legacy-progress>button{white-space:normal;width:100%;min-height:48px;margin-top:12px}.legacy-ownership{cursor:pointer;align-items:flex-start;gap:12px;padding:16px 0;font-size:16px;line-height:1.5;display:flex}.legacy-ownership input{width:22px;height:22px;accent-color:var(--ion-orange);flex-shrink:0;margin:1px 0 0}.legacy-conflicts{border-left:3px solid var(--ion-orange);padding-left:12px}.daily-recall>p{margin-bottom:24px}.course-map:has(>.daily-recall)>.daily-recall~*{display:none}.daily-recall>.text-action{gap:8px;margin-bottom:12px;text-decoration:none}.daily-recall>.text-action svg{width:20px;height:20px}.legacy-progress>button,.daily-recall>button:not(.text-action){min-height:48px;font-size:16px}.daily-recall>button:not(.text-action){width:100%;margin-top:16px}.login-completed{max-width:440px;margin:24px auto}.login-completed h1{font-size:28px;line-height:1.2}.login-completed p{font-size:16px;line-height:1.5}.login-completed .platform-primary{width:100%;margin:24px 0}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--radius-xs:.125rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#f5f5f7;--color-foreground:#1d1d1f;--color-muted-foreground:#68686d;--color-border:#dcdcdf;--color-ring:#0071e3}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-4{top:calc(var(--spacing) * 4)}.right-0{right:calc(var(--spacing) * 0)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-50{z-index:50}.m-4{margin:calc(var(--spacing) * 4)}.mt-auto{margin-top:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-2{height:calc(var(--spacing) * 2)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-auto{height:auto}.h-full{height:100%}.w-3\/4{width:75%}.w-full{width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.touch-none{touch-action:none}.resize{resize:both}.flex-col{flex-direction:column}.place-content-center{place-content:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:2147483647px}.rounded-md{border-radius:10px}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-input{border-color:#dcdcdf}.border-primary{border-color:#1d1d1f}.bg-background{background-color:#f5f5f7}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-destructive{background-color:#98412e}.bg-muted{background-color:#ededf0}.bg-primary{background-color:#1d1d1f}.bg-primary\/20{background-color:oklab(23.1576% .00105516 -.00365597/.2)}.bg-secondary{background-color:#ededf0}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-current{color:currentColor}.text-foreground{color:#1d1d1f}.text-muted-foreground{color:#68686d}.text-primary{color:#1d1d1f}.text-primary-foreground{color:#fff}.text-secondary-foreground{color:#1d1d1f}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-ring\/50{--tw-ring-color:oklab(56.2923% -.0462607 -.187713/.5)}.ring-offset-background{--tw-ring-offset-color:#f5f5f7}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:bg-accent:hover{background-color:#ededf0}.hover\:bg-destructive\/90:hover{background-color:oklab(48.7407% .100864 .0675701/.9)}.hover\:bg-primary\/90:hover{background-color:oklab(23.1576% .00105516 -.00365597/.9)}.hover\:bg-secondary\/80:hover{background-color:oklab(94.6957% .0011248 -.00384074/.8)}.hover\:text-accent-foreground:hover{color:#1d1d1f}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:#0071e3}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:#0071e3}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:oklab(48.7407% .100864 .0675701/.2)}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:oklab(56.2923% -.0462607 -.187713/.5)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:#98412e}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:oklab(48.7407% .100864 .0675701/.2)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing) * 44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing) * 1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:#1d1d1f}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:#1d1d1f}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:#fff}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:#ededf0}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}@media (width>=40rem){.sm\:max-w-sm{max-width:var(--container-sm)}}@media (prefers-color-scheme:dark){.dark\:border-input{border-color:#dcdcdf}.dark\:bg-destructive\/60{background-color:oklab(48.7407% .100864 .0675701/.6)}.dark\:bg-input\/30{background-color:oklab(89.5355% .00114039 -.0038954/.3)}@media (hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:oklab(94.6957% .0011248 -.00384074/.5)}.dark\:hover\:bg-input\/50:hover{background-color:oklab(89.5355% .00114039 -.0038954/.5)}}.dark\:focus-visible\:ring-destructive\/40:focus-visible,.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:oklab(48.7407% .100864 .0675701/.4)}.dark\:data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:#1d1d1f}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}@font-face{font-family:Bad Script;src:url(/fonts/bad-script.ttf)format("truetype");font-display:swap}:root{color:#1d1d1f;font-synthesis:none;-webkit-font-smoothing:antialiased;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}svg{flex-shrink:0}code,pre,textarea{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}code{font-size:.9em}p{margin:0}h1,h2,h3,h4{letter-spacing:-.035em;margin:0;font-weight:600;line-height:1.2}h1{font-size:34px}h2{font-size:26px}h3{letter-spacing:-.015em;font-size:17px}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #0071e3}h1:focus,main:focus{outline:none}::selection{color:#1d1d1f;background:#c4dcf7}[data-slot=button]{min-height:44px;box-shadow:none;border-radius:10px;font-size:14px;transition:background .15s,opacity .15s}[data-slot=button][data-size=icon]{width:44px;height:44px}[data-slot=button]:disabled{opacity:.46}.primary{color:#fff;background:#1d1d1f;padding:0 22px}.primary:hover{background:#353538}.secondary{color:#1d1d1f;background:#fff;border:1px solid #dcdcdf}.secondary:hover{background:#f5f5f7}.quiet{color:#68686d}.skip-link{z-index:100;background:#fff;padding:10px 16px;position:fixed;top:8px;left:280px;transform:translateY(-150%)}.skip-link:focus{transform:none}.sidebar{background:#f5f5f7;border-right:1px solid #dcdcdf;flex-direction:column;width:260px;padding:26px 16px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{text-align:left;letter-spacing:-.055em;padding:3px 12px 22px;font-size:25px;font-weight:750}.brand span{color:#b94b00}.side-content{scrollbar-width:thin;flex:1;min-height:0;padding-right:3px;overflow:auto}.space-nav{gap:4px;margin-bottom:26px;display:grid}.space-nav button{text-align:left;color:#68686d;border-radius:8px;align-items:center;gap:11px;min-height:44px;padding:10px 12px;font-size:14px;display:flex}.space-nav button.selected{color:#1d1d1f;background:#e8e8ed;font-weight:600}.side-part{margin-bottom:22px}.side-part-title{gap:3px;padding:0 12px 12px;display:grid}.side-part-title span{color:#68686d;font-size:12px}.side-part-title strong{font-size:15px;font-weight:600}.side-module{margin-bottom:5px}.side-module-title{cursor:pointer;border-radius:8px;gap:2px;min-height:44px;padding:10px 29px 10px 12px;list-style:none;display:grid;position:relative}.side-module-title::-webkit-details-marker{display:none}.side-module-title:hover{background:#e8e8ed}.side-module-title:focus-visible{outline-offset:-3px;outline:3px solid #0071e3}.side-module-title svg{color:#68686d;transition:transform .18s;position:absolute;top:24px;right:9px}.side-module[open]>summary svg{transform:rotate(90deg)}.side-module nav{margin:3px 0 9px}.side-module-title span{color:#68686d;font-size:12px}.side-module-title strong{font-size:14px;font-weight:600}.lesson-link{text-align:left;color:#53535a;border-radius:8px;align-items:center;gap:9px;width:100%;min-height:44px;padding:9px 10px;font-size:14px;line-height:1.4;display:flex}.lesson-link:hover:not(:disabled){background:#e8e8ed}.lesson-link.active{color:#1d1d1f;background:#fff;font-weight:600}.lesson-link:disabled{color:#7e7e85}.lesson-link>span:nth-child(2){flex:1}.lesson-number{color:#68686d;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;font-size:12px;display:flex}.lesson-number svg{color:#296346}.side-footer{border-top:1px solid #dcdcdf;margin-top:12px;padding:17px 12px 0}.progress-label{justify-content:space-between;margin-bottom:9px;font-size:12px;display:flex}.progress-label strong{font-weight:600}.side-footer [data-slot=progress]{background:#dedee3;height:5px}.side-footer p{color:#68686d;margin-top:7px;font-size:12px}.signature{color:#b94b00;margin-top:16px;font:18px/1.5 Bad Script,cursive;display:block}.app-workspace{background:#fff;min-height:100vh;margin-left:260px}.topbar{border-bottom:1px solid #ececef;justify-content:space-between;align-items:center;height:72px;padding:0 38px;font-size:14px;display:flex}.topbar>div{align-items:center;gap:20px;display:flex}.topbar-python{color:#68686d;align-items:center;gap:7px;display:flex}.lesson-counter{color:#68686d;border-left:1px solid #dcdcdf;padding-left:20px;font-size:12px}.mobile-trigger{display:none}.main-content{max-width:1050px;margin:auto;padding:46px 42px 24px}.eyebrow{color:#68686d;letter-spacing:.025em;margin-bottom:14px;font-size:12px;font-weight:500;display:block}.storage-error{color:#98412e;border:1px solid #98412e;border-radius:10px;align-items:center;gap:12px;margin-bottom:28px;padding:15px;font-size:14px;display:flex}.storage-error p{flex:1}.course-map{max-width:820px;margin:auto}.course-map h1{letter-spacing:-.045em;font-size:44px;line-height:1.13}.map-lead{color:#68686d;max-width:570px;margin-top:22px;font-size:17px;line-height:1.65}.map-start{flex-wrap:wrap;align-items:center;gap:18px;margin-top:25px;display:flex}.map-start>span{color:#68686d;font-size:13px}.map-progress{align-items:center;gap:15px;max-width:360px;margin-top:26px;display:flex}.map-progress [data-slot=progress]{background:#e8e8ed;height:5px}.map-progress>span{color:#68686d;font-size:12px}.map-module{margin-top:30px}.map-part{margin-top:44px}.part-heading{border-top:2px solid #1d1d1f;padding:21px 0 24px}.part-heading h2{font-size:29px}.part-heading .eyebrow{margin-bottom:8px}.part-heading p{color:#68686d;max-width:650px;margin-top:10px;font-size:15px}.module-heading{border-bottom:1px solid #dcdcdf;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.module-index{color:#68686d;padding-top:19px;font:600 27px/1.2 SFMono-Regular,monospace}.module-heading>div{flex:1}.module-heading h3{letter-spacing:-.035em;font-size:26px}.map-lesson h4{letter-spacing:-.015em;font-size:17px}.module-heading .eyebrow{margin-bottom:6px}.module-heading p{color:#68686d;margin-top:8px;font-size:14px}.module-check{color:#296346;margin-top:20px}.map-lesson{border-bottom:1px solid #ececef;grid-template-columns:36px 1fr auto;align-items:center;gap:16px;padding:23px 0;display:grid;position:relative}.map-lesson-index{color:#68686d;align-self:start;padding-top:3px;font-size:13px}.map-lesson-index svg{color:#296346}.map-lesson p{color:#68686d;margin-top:7px;font-size:14px}.lesson-meta{color:#68686d;margin-top:9px;font-size:12px;display:block}.map-lesson button{min-width:103px}.map-lesson.locked h3{color:#68686d}.unlock-note{text-align:right;color:#68686d;grid-column:3;margin-top:-12px;font-size:12px}.lesson-reader{max-width:820px;margin:auto}.lesson-reader.with-code{max-width:960px}.reader-part{color:#68686d;margin-bottom:15px;font-size:12px}.author-intro{align-items:center;gap:20px;margin:8px 0 25px;display:flex}.author-intro img{object-position:50% 0%;object-fit:cover;border-radius:14px;width:88px;height:88px}.author-intro div{gap:5px;display:grid}.author-intro strong{font-size:21px;font-weight:600}.author-intro span{color:#68686d;font-size:14px}.reader-meta{color:#68686d;justify-content:space-between;gap:16px;font-size:12px;display:flex}.reader-meta button{text-align:left;border-radius:8px;min-height:44px;margin-top:-12px;margin-left:-10px;padding:10px;font-size:14px}.reader-meta button:hover{background:#f5f5f7}.reader-meta button span{margin:0 7px}.block-progress{gap:5px;margin:10px 0 32px;display:flex}.block-progress i{background:#e8e8ed;border-radius:2px;flex:1;height:4px}.lesson-stage{transition:opacity .14s,transform .14s}.motion-leave.forward{opacity:0;transform:translate(-12px)}.motion-leave.back{opacity:0;transform:translate(12px)}.motion-enter.forward{animation:.28s cubic-bezier(.22,1,.36,1) enter-forward}.motion-enter.back{animation:.28s cubic-bezier(.22,1,.36,1) enter-back}@keyframes enter-forward{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@keyframes enter-back{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.block-content>h1{max-width:680px;margin-bottom:25px}.short-prose{max-width:650px;font-size:17px;line-height:1.75}.short-prose p+p{margin-top:15px}.short-prose code,.inline-note code,.feedback code,.hint-copy code{background:#ededf0;border-radius:4px;padding:2px 5px}.hint-copy code.multiline-code{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;margin:8px 0;padding:8px;font-size:14px;line-height:1.6;display:block}.lesson-illustration{max-width:580px;margin:25px 0 0}.lesson-illustration>img{border-radius:14px;width:100%;height:auto}.lesson-illustration figcaption{color:#68686d;align-items:center;gap:12px;margin-top:13px;font-size:12px;line-height:1.5;display:flex}.lesson-illustration figcaption img{object-fit:cover;border-radius:50%;width:38px;height:38px}.code-example{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f5f7;border:1px solid #e5e5ea;border-radius:10px;margin:20px 0;padding:19px 22px;font-size:16px;line-height:1.9}.concept-list{margin:22px 0 0;padding:0;list-style:none}.concept-list li{border-bottom:1px solid #ececef;align-items:baseline;gap:17px;padding:15px 0;font-size:16px;display:flex}.concept-list li>span{color:#68686d;font:12px/1.5 monospace}.inline-note{color:#53535a;border-left:3px solid #c8c8cf;margin-top:23px;padding:10px 0 10px 18px;font-size:16px;line-height:1.7}.reader-bottom{border-top:1px solid #ececef;margin-top:31px;padding-top:19px}.reader-actions{justify-content:space-between;gap:15px;margin-top:16px;display:flex}.exercise-prompt{max-width:720px;margin-bottom:24px;font-size:16px;line-height:1.7}.lesson-summary>svg{color:#296346;margin-bottom:23px}.lesson-summary h1{margin-bottom:24px}.summary-points{border-top:1px solid #ececef;margin-top:25px}.summary-points p{border-bottom:1px solid #ececef;align-items:center;gap:13px;padding:15px 0;font-size:15px;display:flex}.summary-points svg{color:#296346}.lesson-summary .reader-actions{margin-top:28px}.sandbox h1{margin-bottom:28px}.sandbox>.visual-caption{margin-top:23px}.choice-options{gap:9px;margin:23px 0;display:grid}.choice-option{cursor:pointer;border:1px solid #dcdcdf;border-radius:10px;align-items:flex-start;gap:14px;min-height:56px;padding:16px 18px;font-size:15px;line-height:1.55;display:flex}.choice-option:hover{background:#f8f8fa}.choice-option [data-slot=radio-group-item],.choice-option [data-slot=checkbox]{flex-shrink:0;width:19px;height:19px;margin-top:3px}.choice-option [data-slot=radio-group-item]:disabled,.choice-option [data-slot=checkbox]:disabled{opacity:1}.feedback{border-radius:10px;align-items:flex-start;gap:11px;margin:20px 0;padding:14px 16px;font-size:14px;line-height:1.65;display:flex}.feedback svg{margin-top:2px}.feedback.success{color:#296346;background:#f0f6f2}.feedback.incorrect{color:#98412e;background:#fcf3ef}.hints{margin-top:14px}.hint-button{color:#68686d;padding-left:0;font-size:14px}.hint-copy{color:#53535a;border-left:2px solid #dcdcdf;margin:18px 0 7px;padding-left:16px;font-size:14px}.hint-copy p+p{margin-top:9px}.python-workspace{border:1px solid #dcdcdf;border-radius:14px;grid-template-columns:1.12fr 1fr;display:grid;overflow:hidden}.code-side{color:#ededf0;background:#202023;min-width:0}.code-toolbar{color:#b4b4bd;border-bottom:1px solid #3a3a40;justify-content:space-between;align-items:center;padding:15px 18px;font-size:12px;display:flex}.code-toolbar>span:first-child{align-items:center;gap:8px;display:flex}.editor-wrap{position:relative;overflow:hidden}.editor-wrap textarea{resize:none;color:#f5f5f7;white-space:pre;tab-size:4;caret-color:#fff;background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:16px 16px 16px 47px;font-size:14px;line-height:28px;position:absolute;inset:0;overflow:auto;outline:none!important}.editor-wrap:focus-within{box-shadow:inset 0 0 0 2px #72aeef}.line-numbers{text-align:right;color:#86868f;pointer-events:none;width:36px;font:12px/28px monospace;display:grid;position:absolute;top:16px;left:0}.line-numbers span{height:28px}.line-numbers span.active{color:#ffad72}.line-highlight{pointer-events:none;background:#a3643526;height:28px;position:absolute;left:0;right:0}.run-toolbar{justify-content:space-between;align-items:center;padding:8px 13px 13px;display:flex}.run-button{padding:0 16px;color:#1d1d1f!important;background:#f5f5f7!important}.run-button:hover{background:#fff!important}.run-toolbar>[data-variant=ghost]:hover{color:#fff;background:#3a3a40}.runtime-error{padding:10px 18px;font-size:14px}.console{border-top:1px solid #3a3a40;padding:15px 18px}.console-title{color:#b4b4bd;justify-content:space-between;gap:12px;font-size:12px;display:flex}.console pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#ededf0;min-height:44px;margin:11px 0 0;font-size:14px;line-height:1.7}.trace-side{background:#fafafb;flex-direction:column;min-width:0;display:flex}.trace-toolbar{border-bottom:1px solid #e5e5ea;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;padding:15px 18px;font-size:12px;display:flex}.trace-toolbar strong{font-size:14px;font-weight:500}.trace-toolbar>span{color:#68686d}.variable-table{padding:8px 18px 0}.variable-head,.variable-row{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:10px;min-height:40px;display:grid}.variable-head{color:#68686d;border-bottom:1px solid #dcdcdf;font-size:12px}.variable-row{overflow-wrap:anywhere;border-bottom:1px solid #e5e5ea;font-size:14px}.variable-row>code:nth-child(2){color:#68686d}.variable-row strong{font:500 14px/1.6 monospace}.variable-row.changed strong{color:#296346;animation:.2s value-in}.typed-value{gap:2px;padding:9px 0;display:grid}.typed-value small{color:#68686d;font-size:12px}.program-input{border-top:1px solid #3a3a40;padding:16px 18px}.program-input label{flex-wrap:wrap;justify-content:space-between;gap:6px;margin-bottom:9px;font-size:14px;display:flex}.program-input label span{color:#b4b4bd;font-size:12px}.program-input textarea{resize:vertical;color:#f5f5f7;background:#2b2b30;border:1px solid #56565e;border-radius:8px;width:100%;min-height:72px;padding:10px 12px;font-size:14px;line-height:1.65}.program-input p{color:#b4b4bd;margin-top:8px;font-size:12px;line-height:1.6}.input-read{border-bottom:1px solid #dcdcdf;gap:4px;margin-bottom:7px;padding-bottom:12px;display:grid}.input-read span,.input-read small{color:#68686d;font-size:12px}.input-read code{overflow-wrap:anywhere;font-size:14px}@keyframes value-in{0%{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:none}}.calculation{flex-direction:column;gap:6px;min-height:145px;padding:20px 18px;font-size:14px;display:flex}.calculation>span{color:#68686d;font-size:12px}.calculation>code{overflow-wrap:anywhere;font-size:15px}.calculation p{color:#68686d;font-size:13px;line-height:1.65}.calculation p code{color:#1d1d1f}.trace-controls{margin-top:auto;padding:0 16px 16px}.playback{align-items:center;gap:0;margin-bottom:13px;display:flex}.playback>span{color:#68686d;margin-left:auto;font-size:12px}.trace-controls [data-slot=slider]{min-height:44px;padding:12px 0}.trace-controls [data-slot=slider-track]{height:4px}.trace-controls [data-slot=slider-thumb]{width:18px;height:18px}.speed-control{color:#68686d;justify-content:space-between;align-items:center;margin-top:13px;font-size:12px;display:flex}.speed-control select{color:#1d1d1f;background:#fff;border:1px solid #dcdcdf;border-radius:8px;min-height:44px;padding:0 10px;font-size:14px}.empty-state{line-height:1.7;list-style:none;color:#68686d!important;padding:19px 0!important;font-size:13px!important}.simulation-layout{grid-template-columns:1.1fr 1fr;gap:28px;display:grid}.panel-label{justify-content:space-between;align-items:center;margin-bottom:17px;font-size:14px;font-weight:500;display:flex}.panel-label>span{color:#68686d;font-size:12px;font-weight:400}.command-palette{flex-wrap:wrap;gap:7px;margin-bottom:14px;display:flex}.command-palette button{padding:0 10px}.command-list{border-top:1px solid #dcdcdf;min-height:120px;max-height:320px;margin:0;padding:0;list-style:none;overflow:auto}.command-list li{border-bottom:1px solid #e5e5ea;align-items:center;gap:8px;min-height:50px;font-size:14px;display:flex}.instruction-number{color:#68686d;flex-shrink:0;width:18px;font:12px/1.5 monospace}.command-list li strong{font-weight:500}.command-list li.active,.ordering-list li.active{background:#f8eade}.command-list li.executed .instruction-number{color:#296346}.row-actions{flex-shrink:0;margin-left:auto;display:flex}.row-actions button{border-radius:5px}.simulation-controls{flex-wrap:wrap;align-items:center;gap:7px;margin-top:18px;display:flex}.robot-board{background:#fafafb;border:1px solid #dcdcdf;border-radius:14px;width:100%;display:grid;position:relative;overflow:hidden}.robot-cell{border-bottom:1px solid #e5e5ea;border-right:1px solid #e5e5ea;justify-content:center;align-items:center;min-height:0;display:flex}.robot-cell.wall{color:#7b7b84;background:#e4e4e9}.robot-cell.goal{color:#296346;background:#edf4ef}.robot-marker{color:#fff;background:#1d1d1f;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;transition:left .3s,top .3s,background .2s;display:flex;position:absolute;transform:translate(-50%,-50%)}.robot-marker svg{transition:transform .2s}.robot-marker.arrived{background:#296346}.visual-caption{color:#68686d;margin-top:12px;font-size:12px;line-height:1.7}.ordering-layout{grid-template-columns:1.25fr 1fr;gap:24px;display:grid}.ordering-list{border-top:1px solid #dcdcdf;margin:0;padding:0;list-style:none}.ordering-list li{border-bottom:1px solid #e5e5ea;align-items:center;gap:6px;min-height:60px;padding:6px 0;display:flex}.ordering-list li>svg{color:#9999a0;cursor:grab;width:14px}.ordering-list li>code{overflow-wrap:anywhere;font-size:16px;line-height:1.65}.ordering-controls{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.ordering-view{background:#f5f5f7;border:1px solid #e5e5ea;border-radius:12px;min-width:0;padding:18px;font-size:16px}.ordering-view>p{margin-bottom:12px;font-size:16px;line-height:1.7}.ordering-value{border-bottom:1px solid #dcdcdf;justify-content:space-between;gap:12px;padding:9px 0;display:flex}.ordering-value strong{font-size:16px;font-weight:500}.ordering-output{white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0 0;font-size:16px}.mobile-drawer{width:min(320px,88vw);max-width:none;box-shadow:none;background:#f5f5f7;gap:0;padding:24px 15px 20px}.mobile-drawer>button[data-slot=sheet-close],.mobile-drawer>button:last-child{justify-content:center;align-items:center;width:44px;height:44px;display:flex;top:15px;right:11px}.mobile-drawer .brand{padding-bottom:22px}@media (width<=1150px){.sidebar{width:230px;padding-left:12px;padding-right:12px}.app-workspace{margin-left:230px}.main-content{padding:34px 28px 24px}.topbar{padding:0 28px}.python-workspace{grid-template-columns:1fr}.trace-side{border-top:1px solid #dcdcdf}.calculation{min-height:110px}.simulation-layout,.ordering-layout{gap:20px}.simulation-layout{grid-template-columns:1.05fr 1fr}.course-map h1{font-size:39px}}@media (width<=900px){.simulation-layout,.ordering-layout{grid-template-columns:1fr}.simulation-view{max-width:480px}.command-list li .row-actions button{width:44px}.ordering-view{min-height:140px}.lesson-counter{display:none}.course-map h1{font-size:37px}.map-lesson{gap:11px}.map-lesson button{min-width:96px;padding:0 13px}}@media (width<=767px){.sidebar{display:none}.app-workspace{margin-left:0}.mobile-trigger{display:inline-flex}.topbar{height:64px;padding:0 17px;font-size:13px}.topbar>div{gap:9px}.topbar-python{gap:5px;font-size:12px}.topbar-python svg{width:14px}.main-content{padding:29px 20px 22px}.course-map h1{font-size:35px;line-height:1.12}.map-lead{margin-top:19px;font-size:16px}.map-start{gap:12px;margin-top:22px}.map-module{margin-top:27px}.map-part{margin-top:34px}.part-heading h2{font-size:27px}.module-heading{gap:13px;padding-bottom:19px}.module-index{font-size:23px}.module-heading h3{font-size:24px}.module-heading p{font-size:13px}.map-lesson{grid-template-columns:28px 1fr;gap:12px;padding:22px 0}.map-lesson button{grid-column:2;justify-self:start;min-width:107px;margin-top:1px}.map-lesson h4{font-size:17px}.map-lesson p{font-size:14px}.unlock-note{text-align:left;grid-column:2;margin-top:0}.eyebrow{margin-bottom:12px}.reader-meta{align-items:baseline;gap:10px;font-size:12px}.program-input textarea{font-size:16px}.reader-meta button{max-width:70%}.block-progress{margin-bottom:28px}h1{font-size:29px;line-height:1.18}.block-content>h1{margin-bottom:22px}.short-prose{font-size:16px;line-height:1.75}.exercise-prompt{margin-bottom:22px;font-size:16px}.lesson-illustration{margin-top:23px}.choice-option{padding:15px 14px;font-size:15px}.reader-bottom{margin-top:28px}.reader-actions button{white-space:normal;max-width:80%;padding-top:9px;padding-bottom:9px;line-height:1.4}.lesson-summary .reader-actions{align-items:flex-start}.code-example{padding:17px 16px;font-size:16px}.code-toolbar{padding:14px}.editor-wrap textarea{font-size:16px}.trace-toolbar{padding:15px 14px}.variable-table{padding-left:14px;padding-right:14px}.calculation{padding:18px 14px}.console{padding:15px 14px}.console-title span:last-child{font-size:12px}.python-workspace{border-radius:12px}.simulation-layout,.ordering-layout{gap:23px}.command-palette{gap:6px}.command-palette button{flex:1;padding:0 8px;font-size:14px}.command-list li{font-size:14px}.command-list li>.row-actions{gap:0}.ordering-list li>code{min-width:0;font-size:16px}.ordering-list li{gap:5px}.ordering-list .row-actions button{width:44px}.ordering-list li>.instruction-number{width:13px}.ordering-view{padding:17px}.feedback{padding:13px 14px;font-size:14px}.storage-error{flex-wrap:wrap}.storage-error p{flex-basis:80%}.skip-link{left:16px}.lesson-illustration figcaption{font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.restart-course{color:#68686d;margin-top:32px;font-size:14px}.restart-course>div{flex-wrap:wrap;gap:9px;margin-top:12px;display:flex}.restart-course>p{margin-bottom:10px}.code-example code{font-size:inherit}.variable-row code,.ordering-value code{font-size:16px}.calculation p code,.calculation p{font-size:14px}.cover-workshop{margin-top:20px}.cover-workshop .exercise-prompt{margin:0 0 24px}.cover-demo-grid,.cover-compare{grid-template-columns:1fr 1fr;gap:24px;margin:24px 0;display:grid}.cover-photo{min-width:0;margin:0}.cover-photo figcaption{color:#53585a;margin-bottom:10px;font-size:13px;font-weight:550}.photo-mat{background:#f1f3f2;border:1px solid #e2e7e3;border-radius:10px;justify-content:center;align-items:center;height:286px;padding:14px;display:flex;overflow:hidden}.photo-mat svg{width:100%;height:100%;display:block}.cover-photo>p{color:#68686d;margin-top:10px;font-size:12px;line-height:1.45}.cover-read-commands{gap:6px;margin:18px 0;padding:0;list-style:none;display:grid}.cover-read-commands li{background:#f5f5f7;border-radius:7px;align-items:center;gap:10px;min-height:42px;padding:10px 12px;font-size:14px;display:flex}.cover-read-commands li>span{color:#737777;width:22px;font-size:12px}.cover-read-commands li>svg{margin-left:auto}.cover-rules{color:#565b58;border-block:1px solid #e6e9e6;gap:12px;padding:18px 0;font-size:14px;display:grid}.cover-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0 12px;display:flex}.motion-toggle{color:#5e6460;cursor:pointer;align-items:center;gap:7px;min-height:44px;margin-left:auto;font-size:13px;display:flex}.motion-toggle input{accent-color:#1d1d1f;width:17px;height:17px}.cover-small,.cover-step-description{color:#646a66;font-size:13px;line-height:1.55}.cover-step-description{margin:14px 0}.cover-feedback{background:#f1f5f2;border-left:3px solid #a6b4aa;align-items:flex-start;gap:10px;margin:20px 0;padding:16px 18px;font-size:15px;line-height:1.6;display:flex}.cover-feedback.success{color:#296346;border-color:#477457}.cover-feedback.error{color:#87442e;background:#faf2ee;border-color:#b46345}.cover-feedback.error button{margin-left:8px}.cover-editor{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:26px;display:grid}.cover-visuals{grid-template-columns:1fr 1fr;gap:14px;display:grid}.cover-command-panel h2{margin-bottom:7px;font-size:20px}.command-palette{gap:7px;margin-top:13px;display:grid}.command-palette>button{text-align:left;background:#fff;border:1px solid #dcdcdf;border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:10px 12px;font-size:14px;display:flex}.command-palette>button:enabled:hover{background:#f3f6f3;border-color:#8c9b90}.command-palette>button>svg:last-child{margin-left:auto}.command-palette>button:disabled{color:#7d847f;background:#f5f6f5;border-color:#e7eae7}.command-palette small{font-size:11px;display:block}.command-sequence{gap:7px;margin:0;padding:0;list-style:none;display:grid}.command-sequence li{background:#f5f5f7;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:7px;font-size:13px;display:flex}.sequence-number{color:#747d76;text-align:center;flex-shrink:0;width:16px}.sequence-name{flex:1;line-height:1.3}.sequence-name small{color:#42624c;margin-top:4px;font-size:10px;display:block}.command-sequence li>div{flex-shrink:0;display:flex}.command-sequence button{color:#515c54;background:0 0;border:0;border-radius:5px;place-items:center;width:30px;height:36px;display:grid}.command-sequence button:hover:enabled{background:#e1e7e1}.command-sequence button:disabled{opacity:.28}.cover-workshop li.executing{background:#f6e6d7;border:1px solid #bc6b36}.empty-sequence{color:#737b76;border:1px dashed #cbd5cc;border-radius:8px;padding:22px 16px;font-size:13px}.cover-help-rules{color:#58625a;margin-top:18px;font-size:13px}.cover-help-rules summary{cursor:pointer;text-underline-offset:3px;padding:6px 0;text-decoration:underline}.cover-help-rules p{margin:12px 0}.cover-support{border-top:1px solid #e5e8e5;margin-top:22px;padding-top:10px}.cover-support>p{color:#616962;padding:14px 0;font-size:14px}.cover-support>.cover-read-commands{max-width:450px}.cover-prediction{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.cover-concept{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;margin:30px 0;display:grid}.cover-concept .photo-mat{height:245px}.cover-concept>div{text-align:center}.cover-concept>div>svg{margin:auto}.cover-concept>div>span{color:#68686d;font-size:12px}.finish-cover{grid-template-columns:1fr 1fr}.finish-cover .photo-mat{height:260px}.optional-task{background:#f3f5f3;border-radius:8px;justify-content:space-between;align-items:center;gap:15px;margin:0 0 20px;padding:12px;font-size:14px;display:flex}.cover-transfer-finish{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.cover-transfer-finish p{color:#626a65;width:100%;font-size:14px}.no-motion *,.no-motion :before,.no-motion :after{transition:none!important;animation:none!important}@media (width<=1200px){.cover-editor{grid-template-columns:1fr}.cover-visuals .photo-mat{height:280px}.cover-command-panel{max-width:none}.command-palette{grid-template-columns:repeat(3,minmax(0,1fr))}.command-palette>button{flex-wrap:wrap;align-content:start;gap:5px}.command-palette>button>span{width:100%}.command-palette>button>svg:last-child{display:none}.command-sequence button{width:40px;height:40px}}@media (width<=700px){.cover-demo-grid,.cover-compare{gap:12px}.photo-mat{height:225px;padding:7px}.cover-photo figcaption{font-size:12px}.cover-photo>p{font-size:11px}.cover-visuals{gap:12px}.cover-visuals .photo-mat{height:235px}.command-palette{grid-template-columns:1fr}.command-palette>button{flex-wrap:nowrap;align-items:center;gap:10px;font-size:14px}.command-palette>button>span{width:auto}.command-palette>button>svg:last-child{display:block}.command-sequence button{width:44px;height:44px}.command-sequence li{flex-wrap:wrap;padding:8px}.sequence-name{min-width:calc(100% - 32px)}.command-sequence li>div{margin-left:22px}.sequence-name small{font-size:11px}.motion-toggle{width:100%;margin-left:0}.cover-toolbar{gap:10px}.cover-toolbar>.primary{padding-inline:12px;font-size:13px}.cover-read-commands li{gap:6px;padding:9px;font-size:12px}.cover-concept{grid-template-columns:1fr 1fr;gap:12px}.cover-concept>div{grid-area:2/1/auto/-1}.cover-concept .photo-mat{height:230px}.finish-cover>ol,.finish-cover>figure{grid-column:1/-1}.optional-task{flex-direction:column;align-items:flex-start}}@media (width<=370px){.photo-mat,.cover-visuals .photo-mat{height:198px}.cover-toolbar>.primary{width:100%}}@media (prefers-reduced-motion:reduce){.cover-workshop *{transition:none!important;animation:none!important}}.command-palette small,.sequence-name small{font-size:12px}@media (width<=700px){.cover-photo>p,.cover-read-commands li{font-size:12px}.command-sequence li,.cover-toolbar>.primary{font-size:14px}}.sequence-number{color:#536057}.cover-help-rules summary{min-height:44px;padding-block:12px;display:list-item}.control-mark{justify-content:center;align-items:center;min-width:18px;font-family:Arial,sans-serif;font-size:20px;font-weight:500;line-height:1;display:inline-flex}.nav-code{color:#b94b00;width:24px;font-family:monospace;font-size:18px;font-weight:700}.pixel-tick{border-bottom:2px solid;border-left:2px solid;flex-shrink:0;width:13px;height:8px;display:inline-block;transform:rotate(-45deg)}.radio-dot{background:currentColor;border-radius:50%;width:9px;height:9px}.disclosure-mark{font-size:22px;line-height:24px;transition:transform .15s;position:absolute;top:13px;right:8px}details[open]>summary .disclosure-mark{transform:rotate(90deg)}.side-module-title{flex-direction:row;align-items:baseline;gap:12px;padding:12px 28px 12px 12px;display:flex}.side-module-title .module-index{color:#68686d;font-family:monospace;font-size:13px}.side-module-title strong{font-size:14px}.side-part-title{margin-top:28px}.side-part-title>span{display:none}.side-part-title strong{color:#68686d;font-size:13px;font-weight:400}.side-footer .signature{margin-top:18px}[data-slot=sheet-close]{place-items:center;min-width:44px;min-height:44px;display:grid}.coding-journey{max-width:1000px;margin:auto}.coding-heading{justify-content:space-between;align-items:center;gap:24px;margin:6px 0 30px;display:flex}.coding-heading h1{letter-spacing:-.055em;font-size:clamp(30px,3vw,42px);line-height:1.12}.coding-heading h1>span{color:#b94b00}.coding-heading p{color:#68686d;margin-top:14px;font-size:16px}.coding-progress{flex-shrink:0;width:120px}.coding-progress strong{letter-spacing:-.055em;text-align:right;margin-bottom:5px;font-size:42px;font-weight:550;display:block}.coding-progress strong span{color:#68686d;margin-left:3px;font-size:20px}.coding-progress [data-slot=progress]{height:5px}.coding-progress [data-slot=progress-indicator]{background:#b94b00}.coding-resume{border-block:1px solid #e7e7eb;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.coding-resume>div{align-items:center;gap:12px;display:flex}.coding-resume strong{font-size:16px;font-weight:550}.resume-dot{background:#b94b00;border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 0 5px #f8eee6}.coding-world{margin-top:38px}.coding-part{letter-spacing:-.02em;align-items:center;gap:12px;padding:4px 0 22px;font-size:18px;display:flex}.coding-part>span{color:#68686d;font-family:monospace;font-size:14px;font-weight:400}.coding-zone{background:#f8f8fa;border:1px solid #e2e2e7;border-radius:20px;margin-bottom:16px;overflow:hidden}.coding-zone.zone-2{background:#f7f5f2}.coding-zone.zone-3{background:#f3f5f7}.coding-zone.zone-4{background:#f4f5f4}.coding-zone.zone-5{background:#f4f2f0}.coding-zone.zone-6{background:#f0f3f5}.coding-zone.zone-7{background:#f4f4f5}.coding-world>section+section{margin-top:44px}.zone-intro{justify-content:space-between;align-items:center;gap:10px;height:215px;padding:20px 36px 0;display:flex}.zone-intro>div{max-width:50%}.zone-number{color:#b94b00;font-family:monospace;font-size:16px}.zone-intro h3{margin-top:12px;font-size:26px;line-height:1.1}.zone-intro p{color:#6c6c72;margin-top:10px;font-size:15px}.developer-scene{flex-shrink:0;width:320px;max-width:49%;height:auto;display:block}.coding-route{margin:0 25px;position:relative}.coding-route>svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.coding-route path{fill:none;stroke:#d5d4d9;stroke-width:3px;stroke-dasharray:6 8}.coding-route path.route-done{stroke:#56565d;stroke-dasharray:none}.code-stop{z-index:1;position:absolute;transform:translate(-50%,-50%)}.code-stop:focus-within{z-index:4}.code-stop:has(button:hover){z-index:4}.code-stop button{color:#787880;background:#eeeef1;border:2px solid #d8d8df;border-radius:18px;place-items:center;width:54px;height:54px;font:600 16px/1 monospace;transition:transform .15s,box-shadow .15s;display:grid;box-shadow:0 4px #d4d4db}.code-stop button:enabled:hover{transform:translateY(-3px);box-shadow:0 7px #d4d4db}.code-stop.complete button{color:#fff;background:#303034;border-color:#303034;box-shadow:0 4px #151518}.code-stop.current button{color:#fff;background:#b94b00;border-color:#b94b00;box-shadow:0 4px #7b3100,0 0 0 7px #f4e5da}.code-stop.current button:hover{box-shadow:0 7px #7b3100,0 0 0 7px #f4e5da}.cursor-face{letter-spacing:-2px;font-size:20px}.route-lesson-label{text-align:center;color:#55555c;width:170px;font-size:14px;line-height:1.3;position:absolute;top:72px;left:50%;transform:translate(-50%)}.stop-tooltip{color:#fff;text-align:center;pointer-events:none;opacity:0;background:#252529;border-radius:10px;width:180px;padding:12px;font-size:14px;line-height:1.4;transition:opacity .15s;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}.code-stop:hover .stop-tooltip,.code-stop:focus-within .stop-tooltip{opacity:1}.coding-finish{text-align:center;padding:50px 20px}.coding-finish>span{color:#b94b00;font:700 48px/1 monospace}.coding-finish h2{margin-top:20px;font-size:24px}.is-studying .sidebar{display:none}.is-studying .app-workspace{margin-left:0}.is-studying .topbar{border:0;max-width:1100px;height:76px;margin:auto;padding:0 34px}.is-studying .topbar-python{display:none}.is-studying .lesson-counter{border:0;font-size:14px}.is-studying .lesson-reader{max-width:700px}.is-studying .lesson-reader.with-code{max-width:880px}.back-to-map{color:#68686d;min-height:44px;font-size:15px}.back-to-map:hover{color:#1d1d1f}.reader-meta{margin:0 0 13px;font-size:14px}.reader-meta>span{white-space:nowrap;flex-shrink:0}.reader-meta>.lesson-sound{flex-shrink:0}.reader-meta button{text-align:left;font-size:15px}.block-progress{gap:5px;margin-bottom:36px}.block-progress i{border-radius:5px;height:5px}.block-progress i.done{background:#b94b00}.block-progress i.current{background:#e7ac83}.block-content>h1{letter-spacing:-.04em;margin-bottom:18px;font-size:32px}.exercise-prompt{margin-bottom:25px;font-size:18px;line-height:1.5}.short-prose p{font-size:18px;line-height:1.65}.reader-bottom{border:0;margin-top:28px;padding-top:20px}.reader-actions{border-top:1px solid #e9e9ed;min-height:63px;padding-top:18px}.reader-actions .primary{min-width:150px}.summary-symbol{color:#b94b00;margin-bottom:30px;font:700 48px monospace}.summary-points{gap:8px;display:grid}.summary-points .pixel-tick{color:#296346}.choice-options{gap:12px}.choice-option{border:2px solid #e5e5e9;border-radius:12px;min-height:64px;padding:16px 20px;font-size:17px}.choice-option.selected{background:#fff9f4;border-color:#b94b00}.choice-option.verified{background:#f1f7f2;border-color:#477457}.feedback{border:0;border-radius:10px;padding:18px 20px;font-size:16px}.hints{border:0;margin-top:15px;padding-top:0}.hint-button{text-underline-offset:4px;color:#68686d;text-decoration:underline}.cover-workshop .exercise-prompt{margin-bottom:22px}.cover-demo-grid,.cover-compare{gap:28px;margin:22px 0}.photo-mat{background:#f4f4f6;border:0;border-radius:14px;height:250px;padding:16px}.cover-photo figcaption{color:#515157;text-align:center;margin-bottom:10px;font-size:16px}.cover-photo figcaption.sr-only{margin:0}.cover-read-commands{gap:8px}.cover-workshop>.cover-read-commands{grid-template-columns:repeat(2,minmax(0,1fr))}.cover-read-commands li{min-height:48px;padding:12px 16px;font-size:15px}.cover-read-commands li>span:first-child{font-size:14px}.cover-toolbar{gap:12px;margin-top:22px}.cover-step-description{color:#55555c;font-size:16px}.cover-feedback{border-left:0;border-radius:10px;font-size:16px}.cover-editor{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:30px}.cover-editor .cover-visuals{display:block}.cover-editor .photo-mat{height:345px}.cover-command-panel .command-palette{gap:8px;margin:0 0 26px;display:flex}.cover-command-panel .command-palette button{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-width:0;padding:10px 6px;font-size:13px;line-height:1.3;position:relative}.cover-command-panel .command-palette button>.control-mark{min-width:12px;font-size:16px;position:absolute;top:5px;right:5px}.command-symbol{color:#b94b00;place-items:center;min-width:36px;height:36px;font:500 19px monospace;display:grid}.symbol-crop{border:2px solid;border-radius:3px;font-size:13px}.symbol-title{font:600 30px Georgia,serif}.symbol-mono{color:#fff;background:#303034;border-radius:50%;font-size:12px}.cover-command-panel .command-palette button:disabled .command-symbol{opacity:.45}.cover-command-panel h3{margin:0 0 12px;font-size:16px}.command-sequence li{cursor:grab;min-height:56px;padding:5px 8px;font-size:15px}.command-sequence button{width:38px;height:44px}.command-sequence button .control-mark{font-size:18px}.sequence-number{font-family:monospace;font-size:14px}.empty-sequence{place-items:center;min-height:70px;font-size:15px;display:grid}.cover-help-rules{margin-top:12px;font-size:15px}.cover-support{border:0;margin-top:12px;padding:0}.cover-support>p{font-size:16px}.motion-settings{color:#68686d;margin-left:auto;font-size:14px;position:relative}.motion-settings summary{cursor:pointer;align-items:center;min-height:44px;list-style:none;display:flex}.motion-settings summary::-webkit-details-marker{display:none}.motion-settings[open] .motion-toggle{white-space:nowrap;z-index:5;background:#fff;border:1px solid #ddd;border-radius:10px;padding:12px 16px;font-size:14px;position:absolute;top:44px;right:0}.cover-concept{margin:24px 0}.robot-pointer{border-bottom:24px solid #fff;border-left:10px solid #0000;border-right:10px solid #0000;width:0;height:0;display:block}.robot-target{border:6px solid #b94b00;border-radius:50%;width:24px;height:24px;box-shadow:0 0 0 4px #f5dfcf}.robot-wall{background:#a6a6b0;border:3px solid #91919c;border-radius:4px;width:70%;height:70%}.command-palette .control-mark{font-size:21px}@media (width<=1100px){.zone-intro{padding-inline:24px}.zone-intro h3{font-size:23px}.coding-route{margin-inline:14px}.route-lesson-label{width:130px;font-size:13px}}@media (width<=700px){.coding-heading{gap:14px;margin:0 0 24px}.coding-heading h1{font-size:28px}.coding-heading p{font-size:15px}.coding-progress{width:60px}.coding-progress strong{font-size:30px}.coding-progress strong span{font-size:16px}.coding-resume{flex-wrap:wrap;gap:15px;padding:18px 0}.coding-resume .primary{width:100%}.coding-world{margin-top:28px}.coding-part{gap:9px;font-size:16px}.coding-zone{border-radius:16px}.zone-intro{align-items:flex-start;height:240px;padding:16px 18px 0;position:relative}.zone-intro>div{z-index:1;max-width:70%;position:relative}.zone-intro h3{max-width:190px;margin-top:8px;font-size:22px}.zone-intro p{font-size:14px}.zone-intro .developer-scene{opacity:.9;width:190px;max-width:60%;position:absolute;bottom:0;right:0}.zone-number{font-size:14px}.coding-route{margin:0 7px}.code-stop button{border-radius:14px;width:46px;height:46px;font-size:15px}.route-lesson-label{width:82px;font-size:12px;top:63px}.stop-tooltip{width:130px;font-size:13px}.code-stop:nth-of-type(4n+1) .stop-tooltip{left:-8px;transform:none}.code-stop:nth-of-type(4n) .stop-tooltip{left:auto;right:-8px;transform:none}.is-studying .topbar{height:64px;padding:0 20px}.is-studying .mobile-trigger{display:none}.is-studying .main-content{padding:8px 20px 28px}.block-progress{margin-bottom:28px}.block-content>h1{font-size:28px}.reader-meta{gap:12px;font-size:13px}.reader-meta button{max-width:80%;font-size:14px}.exercise-prompt,.short-prose p{font-size:17px}.cover-demo-grid,.cover-compare{gap:12px}.photo-mat{height:210px;padding:8px}.cover-editor{grid-template-columns:1fr;gap:20px}.cover-editor .photo-mat{height:270px}.cover-command-panel .command-palette{margin-bottom:20px}.command-sequence button{width:44px;height:44px}.cover-workshop>.cover-read-commands{grid-template-columns:1fr}.cover-read-commands li{font-size:14px}.cover-toolbar .primary{flex:1;min-width:150px}.motion-settings{margin-left:0}.cover-concept{grid-template-columns:1fr}.cover-concept .photo-mat{height:230px}.reader-actions .primary{min-width:130px}.choice-option{padding:16px;font-size:16px}}@media (prefers-reduced-motion:reduce){.code-stop button,.stop-tooltip,.disclosure-mark{transition:none}}.cover-workshop li.executed{background:#eeeef1}.course-map{max-width:1000px}.route-lesson-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cover-command-panel .command-palette .command-symbol{flex:none;width:36px}.command-sequence li{touch-action:none;-webkit-user-select:none;user-select:none}.command-sequence li[data-dragging]{cursor:grabbing;background:#faeee5;outline:2px solid #b94b00}.python-workspace.trace-closed{grid-template-columns:minmax(0,1fr)}.editor-keys{border-top:1px solid #3a3a40;flex-wrap:wrap;gap:2px;padding:4px 8px;display:flex}.editor-keys button{color:#ededf0;min-width:36px;min-height:44px;padding:6px;font:18px monospace}.editor-keys button:hover{color:#fff;background:#3a3a40}.check-detail{white-space:pre-wrap;overflow-wrap:anywhere;color:#683a20;background:#fff3e9;margin:0;padding:12px 16px;font-size:14px;line-height:1.5}.trace-toggle{min-height:44px;margin:8px 0}.lesson-summary.milestone-summary .course-emblem{width:72px;height:72px;margin:0 auto 12px}.lesson-summary.milestone-summary h1{margin:0 0 12px;font-size:clamp(26px,5vw,36px)}.lesson-summary.milestone-summary .exercise-prompt{margin:0 auto 12px;font-size:16px}.lesson-summary.milestone-summary .reader-actions{gap:8px;margin:16px 0}.summary-details{width:100%;margin-top:12px}.summary-details summary,.study-history summary{cursor:pointer;color:#74747d;min-height:44px;padding:12px 0;font-size:14px}.today-skill{gap:6px;margin:18px 0;line-height:1.5;display:grid}.today-skill strong{color:#6d6d76;font-size:13px}.today-skill span{font-size:18px;font-weight:600}.study-history{margin-top:16px}.study-history .study-stats{margin-top:0}.evidence-list{gap:12px;margin:16px 0;padding:0;list-style:none;display:grid}.evidence-list li{border-bottom:1px solid #e5e5e9;gap:4px;padding-bottom:12px;display:grid}.evidence-list span{font-size:14px}@media (width<=600px){.lesson-summary.milestone-summary{padding:0}.lesson-summary.milestone-summary .reader-actions{flex-direction:column;display:flex}.lesson-summary.milestone-summary .reader-actions button{width:100%;min-height:48px}.editor-keys{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:0;padding:4px;display:grid}.editor-keys button{min-width:0}.python-exercise .run-toolbar{padding:8px 12px}.python-exercise .program-input{padding:10px 16px}.python-exercise .program-input p{margin:6px 0 0;font-size:12px}}.workspace-heading{justify-content:flex-end;margin-bottom:12px;display:flex}.workspace-task{margin-bottom:16px}.workspace-task>summary,.python-limits>summary,.program-input>summary{cursor:pointer;align-items:center;min-height:44px;font-size:14px;font-weight:600;display:flex}.workspace-task[open]>summary{color:var(--muted,#68686d)}.python-exercise .run-toolbar{z-index:6;background:#fff;border-bottom:1px solid #dcdcdf;gap:6px;padding:8px 12px;position:sticky;top:0}.python-exercise .run-toolbar .run-button{min-height:44px}.compact-hints{position:relative;margin:0 0 0 auto!important}.compact-hints .hint-copy{right:max(16px,50vw - 440px);bottom:calc(90px + env(safe-area-inset-bottom));overscroll-behavior:contain;z-index:40;color:#1d1d1f;background:#fff;border:1px solid #dcdcdf;border-radius:10px;width:min(360px,100% - 32px);max-height:min(55dvh,420px);padding:12px;position:fixed;overflow:auto;box-shadow:0 6px 20px #0002}.compact-hints .hint-tools{z-index:1;background:#fff;justify-content:space-between;align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex;position:sticky;top:-12px}.python-exercise .editor-keys{flex-wrap:nowrap;gap:2px;padding:4px;display:flex;overflow-x:auto}.python-exercise .editor-keys button{flex:1 0 44px;min-width:44px;height:44px}.python-exercise .program-input{border-bottom:1px solid #dcdcdf;padding:4px 12px}.python-exercise .program-input>summary{white-space:normal;word-break:break-word;color:#1d1d1f}.python-exercise .program-input p{margin:8px 0;font-size:13px}.python-exercise .console{min-height:76px}.python-limits{margin-top:16px;font-size:14px;line-height:1.6}.focus-mode{z-index:100;top:var(--app-visible-top,0px);height:var(--app-visible-height,100dvh);overscroll-behavior:contain;background:#f5f5f7;padding:8px max(8px,50vw - 440px) 20px;position:fixed;left:0;right:0;overflow:auto}.focus-mode .workspace-heading{z-index:8;background:#f5f5f7;margin:0;padding-bottom:4px;position:sticky;top:0}.focus-mode .run-toolbar{top:48px}.focus-mode .workspace-task{margin:0}.focus-mode .code-toolbar{padding:8px 12px}.focus-mode .editor-wrap{min-height:100px;height:min(256px,40dvh)!important}.focus-mode .feedback{margin-top:12px}.coding-zone>summary{cursor:pointer;list-style:none}.coding-zone>summary::-webkit-details-marker{display:none}.coding-zone>summary>span:last-child{margin-left:auto}@media (width<=600px){.python-exercise .run-toolbar{padding:6px 8px}.python-exercise .code-toolbar{font-size:12px}.lesson-summary .reader-actions{gap:12px;display:grid}.coding-heading p,.session-route-note{font-size:14px}.python-workspace{overflow:visible}}.project-plan{margin:12px 0;font-size:14px}.project-plan summary{cursor:pointer;min-height:44px;font-weight:600}.project-plan label{margin:12px 0;display:block}.project-plan textarea{width:100%;font:inherit;background:#fff;border:1px solid #dcdcdf;border-radius:8px;margin-top:6px;padding:10px;display:block}.daily-recall h1{font-size:26px}.student-detail pre{white-space:pre-wrap;overflow-wrap:anywhere}@media (width<=650px){.command-lab .command-workbench{overflow:visible}.command-workbench>.command-scene{z-index:4;object-fit:contain;background:#fff;height:170px;position:sticky;top:0}.command-workbench .lab-program{gap:3px;padding:8px}.nested-program.lab-program{gap:0}.command-lab .exercise-prompt{margin-bottom:14px;font-size:16px}.with-command-lab .block-progress{margin-bottom:12px}.command-lab .lab-token,.command-lab .condition-select{min-height:44px}.study-greeting h1{font-size:26px}.study-greeting{margin-bottom:14px}.study-today{padding:12px 0}}.python-exercise .code-side .program-input,.python-exercise .program-input textarea{color:#1d1d1f;background:#fff}.python-exercise .run-toolbar button{color:#1d1d1f}.python-exercise .run-toolbar .run-button{color:#fff;background:#1d1d1f}.python-exercise .editor-keys{gap:1px}.python-exercise .editor-keys button{padding:0}.focus-mode .editor-wrap{height:min(256px,calc(var(--app-visible-height,100dvh) * .38))!important}@media (width<=650px){.command-workbench .lab-program li{scroll-margin-top:180px;scroll-margin-bottom:100px}.lesson-summary.milestone-summary .reader-actions{width:100%;max-width:350px;margin:16px auto}.lesson-summary.milestone-summary .reader-actions button{max-width:none}.with-command-lab .reader-meta{justify-content:flex-end;margin-bottom:8px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}button,a,summary,input,textarea,select{-webkit-tap-highlight-color:transparent}button,input:not([type=checkbox]):not([type=radio]),textarea,select{appearance:none}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2354545e' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 5 5 5-5'/%3E%3C/svg%3E")!important;background-position:right 10px center!important;background-repeat:no-repeat!important;background-size:18px 18px!important;padding-right:36px!important}.motion-toggle input[type=checkbox]{appearance:none;background:#fff;border:1.5px solid #71717a;border-radius:5px;flex:0 0 22px;width:22px;height:22px;position:relative}.motion-toggle input[type=checkbox]:checked{background:#1d1d1f;border-color:#1d1d1f}.motion-toggle input[type=checkbox]:checked:after{content:"";border-bottom:2px solid #fff;border-right:2px solid #fff;width:7px;height:12px;position:absolute;top:2px;left:6px;transform:rotate(42deg)}.motion-toggle input[type=checkbox]:focus-visible{outline-offset:3px;outline:2px solid #0071e3}button,a,summary{touch-action:manipulation}button{font:inherit}button:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #0071e3}.app-shell.is-studying:after{display:none!important}.lesson-stage{transition:none;animation:none;transform:none}.lesson-reader .assessment-verdict .answer-mark{animation:none}.is-studying .topbar{height:auto;min-height:60px;padding-top:env(safe-area-inset-top,0px)}.back-to-map{color:#353539;background:#fff;border:1px solid #e4e4e8;border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.back-to-map svg,.mobile-trigger svg,.explanation-close svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.reader-meta{align-items:center;gap:8px}.reader-meta>button:first-child{flex:1;line-height:1.4}.lesson-action-dock{min-height:76px;padding-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e8e8ed}.lesson-action-dock:empty{visibility:hidden}.lesson-action-dock:not(:has(button)){visibility:hidden}.lesson-action-dock button{box-shadow:none;transition:background-color .1s,color .1s}.lesson-reader{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.lesson-reader .hint-button{color:#353539;background:#fff;border:1px solid #dcdcdf;border-radius:9px;min-height:44px;padding:8px 12px;font-size:14px;font-weight:600;text-decoration:none}.lesson-reader .hint-button:hover{background:#f5f5f7}.lesson-reader .hint-copy{border-radius:10px}.summary-details>summary,.study-history>summary,.python-limits>summary{align-items:center;gap:10px;list-style:none;display:flex}.summary-details>summary::-webkit-details-marker{display:none}.study-history>summary::-webkit-details-marker{display:none}.python-limits>summary::-webkit-details-marker{display:none}.summary-details>summary:before,.study-history>summary:before,.python-limits>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:7px;height:7px;transform:rotate(-45deg)}.summary-details[open]>summary:before,.study-history[open]>summary:before,.python-limits[open]>summary:before{transform:rotate(45deg)}.answer-explanation-panel[data-slot=sheet-content]{padding-bottom:max(24px,env(safe-area-inset-bottom))}.session-complete-note{font-size:16px;line-height:1.6}.lesson-summary .reader-actions{flex-direction:column-reverse}@media (width<=650px){.is-studying .topbar{min-height:calc(58px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}.is-studying .main-content{padding:8px max(16px,env(safe-area-inset-right)) 20px max(16px,env(safe-area-inset-left))}.is-studying .lesson-reader{max-width:none;padding-bottom:calc(104px + env(safe-area-inset-bottom))}.reader-meta{margin:0 0 8px;font-size:12px}.reader-meta>button:first-child{min-height:44px;padding:4px 0;font-size:13px}.reader-meta>span{font-variant-numeric:tabular-nums}.block-progress{gap:3px;margin:0 0 22px}.block-progress i{min-width:0;height:4px}.block-content>h1{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0 0 18px;font-size:26px;line-height:1.18}.exercise-prompt,.short-prose{font-size:16px;line-height:1.6}.short-prose p{margin:0 0 16px}.short-prose pre{padding:16px;font-size:15px}.lesson-action-dock{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));gap:8px}.lesson-action-dock>.lesson-next{flex:1;width:auto;max-width:360px}.lesson-action-dock .why-button{min-width:84px;font-size:14px}.lesson-action-dock .retry-answer{white-space:normal;font-size:14px}.lesson-reader .assessment-result{margin-top:16px}.lesson-reader .assessment-verdict{font-size:17px}.lesson-summary.milestone-summary{padding:4px 0 0}.lesson-summary.milestone-summary h1{margin:16px 0;font-size:27px;line-height:1.2}.lesson-summary.milestone-summary .reader-actions{flex-direction:column-reverse}.lesson-summary.milestone-summary .exercise-prompt{font-size:16px}.lesson-summary.milestone-summary .session-complete-note{margin:16px 0;font-size:15px}.answer-explanation-panel[data-slot=sheet-content]{padding:20px 18px max(20px,env(safe-area-inset-bottom));gap:18px}.explanation-panel-header h2{font-size:22px}.explanation-panel-copy[data-slot=sheet-description]{font-size:16px;line-height:1.6}.project-plan textarea,.program-input textarea{font-size:16px}}@media (hover:none){button:hover{box-shadow:none}}.session-extra{color:#773b10;text-align:left;background:#fff8f2;border:1px solid #d7c2b0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:8px;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.session-extra svg{flex-shrink:0;width:20px;height:20px}.is-studying .topbar{display:none}.is-studying .main-content{padding:max(12px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left))}.lesson-app-header.reader-meta{align-items:center;gap:18px;min-height:56px;margin:0 0 32px;display:flex}.lesson-app-header.reader-meta>.lesson-exit{color:#414148;background:#f0f0f3;border:0;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;min-height:44px;padding:0;display:grid}.lesson-exit svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.lesson-position{flex:1;min-width:0}.lesson-position-label{color:#565660;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:8px;font-size:14px;font-weight:500;line-height:1.4;display:flex}.lesson-position-label>span:last-child{white-space:nowrap}.lesson-position .block-progress{gap:3px;width:100%;margin:9px 0 0;display:flex}.lesson-position .block-progress i{border-radius:3px;flex:1;min-width:0;height:5px}@keyframes feedback-reveal{0%{opacity:0}to{opacity:1}}.dock-correct .lesson-next{color:#fff!important;background:#296346!important}.lesson-action-dock button{border-radius:12px;font-weight:600;font-size:16px!important}.lesson-action-dock .why-button{min-width:88px}.lesson-reader .assessment-verdict{gap:10px;font-size:17px}.lesson-reader .assessment-result{margin:18px 0 0}.lesson-reader .assessment-result .assessment-verdict strong{font-weight:600}.answer-explanation-panel[data-slot=sheet-content]{z-index:240}body:has(.answer-explanation-panel) [data-slot=sheet-overlay]{z-index:230}.answer-explanation-panel[data-slot=sheet-content]{max-height:calc(var(--app-visible-height,100dvh) - 24px)}.focus-mode .workspace-actions .reader-bottom{border:0;margin:0;padding:0}.focus-mode .workspace-actions .lesson-action-dock{min-height:0;padding:10px max(14px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));position:static;inset:auto}.focus-mode .workspace-actions:has(.lesson-action-dock:not(:has(button))){display:none}.lesson-reader button:active:not(:disabled),.resume-lesson:active{filter:brightness(.95)}@media (width<=650px){.is-studying .main-content{padding:max(8px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 16px max(20px,env(safe-area-inset-left))}.lesson-app-header.reader-meta{gap:12px;min-height:56px;margin:0 0 24px}.block-content>h1{letter-spacing:-.035em;margin-bottom:18px;font-size:28px;line-height:1.15}.lesson-position-label{font-size:14px}.lesson-action-dock{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.short-prose p{font-size:17px;line-height:1.6}.short-prose pre{font-size:16px}.lesson-summary.milestone-summary h1{font-size:28px}.lesson-summary .session-complete-note{font-size:16px!important}.lesson-summary .reader-actions{margin-top:28px}}@media (width<=360px){.is-studying .main-content{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.lesson-app-header.reader-meta{gap:10px}.block-content>h1{font-size:26px}.lesson-action-dock{padding-left:14px;padding-right:14px}}@media (prefers-reduced-motion:reduce){.lesson-reader button{transition:none}}.lesson-action-dock{bottom:var(--app-keyboard-inset,0px)}.app-shell:before{content:"";height:env(safe-area-inset-top,0px);z-index:180;pointer-events:none;background:#f5f5f7;position:fixed;inset:0 0 auto}@media (width<=650px){.answer-explanation-panel[data-slot=sheet-content]{bottom:var(--app-keyboard-inset,0px)}}.answer-explanation-panel[data-slot=sheet-content]{transition:none;animation:.16s ease-out feedback-reveal;transform:none}body:has(.answer-explanation-panel) [data-slot=sheet-overlay]{background:#14141738;animation:.16s ease-out feedback-reveal}@media (prefers-reduced-motion:reduce){.answer-explanation-panel[data-slot=sheet-content]{animation:none}body:has(.answer-explanation-panel) [data-slot=sheet-overlay]{animation:none}}.sound-panel{z-index:225;font-size:16px}.python-exercise.mobile-code-lab .console .check-detail{color:#7b3a12;background:0 0;border:0;border-radius:0;margin:8px 0 0;padding:0;font-size:16px}.python-exercise.mobile-code-lab .program-input label,.python-exercise.mobile-code-lab .trace-toggle{font-size:16px}@media (hover:none){.python-exercise.mobile-code-lab .editor-keys button:hover:not(:active){color:#e3e3e9;background:0 0}.python-exercise.mobile-code-lab .lab-icon-button:hover:not(:active){color:var(--lab-muted);background:0 0}}.session-heading small,.archive-row small{font-size:14px;line-height:1.45}.mobile-bottom-nav button span,.study-home .resume-lesson small{font-size:14px}.session-phase p{font-size:15px;line-height:1.5}.python-exercise.mobile-code-lab .trace-toolbar strong{font-size:16px;font-weight:600}.python-exercise.mobile-code-lab .trace-toolbar>span,.python-exercise.mobile-code-lab .variable-head,.python-exercise.mobile-code-lab .typed-value small,.python-exercise.mobile-code-lab .calculation>span,.python-exercise.mobile-code-lab .speed-control{font-size:14px}.python-exercise.mobile-code-lab .variable-row,.python-exercise.mobile-code-lab .variable-row strong,.python-exercise.mobile-code-lab .calculation>code{font-size:16px}.python-exercise.mobile-code-lab .variable-row,.python-exercise.mobile-code-lab .variable-head{grid-template-columns:repeat(3,minmax(0,1fr))}.python-exercise.mobile-code-lab .variable-row>*{overflow-wrap:anywhere;min-width:0}.python-exercise.mobile-code-lab .calculation{min-height:0;padding:16px 14px}.python-exercise.mobile-code-lab .calculation:empty{display:none}.python-exercise.mobile-code-lab .console-title span:last-child,.python-exercise.mobile-code-lab .playback>span{font-size:14px}
