.io-pilot{color:var(--sk-text);min-width:0}.io-result,.io-feedback{scroll-margin-block:80px}.io-pilot button,.io-pilot a{touch-action:manipulation}.io-pilot :is(button,a,textarea,input,summary):focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:3px}.io-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.io-steps button{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--sk-line);border-radius:13px;background:var(--sk-surface);color:var(--sk-text-2);padding:12px;font:inherit;font-size:13px;cursor:pointer}.io-steps button[aria-current=step]{border-color:var(--sk-accent-text);background:var(--sk-accent-soft);color:var(--sk-accent-text)}.io-steps button>span{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border-radius:50%;background:var(--sk-surface-2)}.io-steps b{font-weight:550}.io-progress{display:flex;align-items:center;gap:14px;margin:12px 0 24px;font-size:12px;color:var(--sk-text-3)}.io-progress progress{width:100px;height:5px;accent-color:var(--sk-accent)}.io-heading h2{font-size:clamp(24px,3vw,32px);line-height:1.2;letter-spacing:-.6px;margin:8px 0 12px}.io-heading p{max-width:650px;color:var(--sk-text-2);line-height:1.6;margin:0 0 24px}.io-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.io-work,.io-result{min-width:0}.io-task{border-left:3px solid var(--sk-accent);padding:4px 0 4px 14px;margin:0 0 18px}.io-task b{font-size:12px;color:var(--sk-accent-text)}.io-task p{line-height:1.6;margin:5px 0 0;font-size:15px}.io-editor{overflow:hidden;border:1px solid var(--sk-line-strong);border-radius:14px;background:var(--sk-code-bg)}.io-editor-bar{display:flex;justify-content:space-between;gap:8px;padding:12px 14px;color:#dce6ed;border-bottom:1px solid #3a4353;font-size:12px}.io-editor-bar span{color:#adb8cb;font-size:11px}.io-editor textarea{display:block;width:100%;resize:vertical;min-height:155px;max-height:460px;border:0;border-radius:0;padding:16px;background:var(--sk-code-bg);color:var(--sk-code-text);font:14px/1.8 var(--sk-mono);box-shadow:none;-moz-tab-size:4;-o-tab-size:4;tab-size:4;white-space:pre;overflow:auto}.io-code-keys{display:flex;gap:6px;padding:8px 12px;border-top:1px solid #3a4353}.io-code-keys button{min-width:36px;min-height:32px;border:1px solid #556075;border-radius:7px;background:#253143;color:#edf5ff;font:14px var(--sk-mono);cursor:pointer}.io-input{display:block;font-weight:600;font-size:14px;margin:16px 0}.io-input span{display:block;font-size:12px;font-weight:400;color:var(--sk-text-3);margin:4px 0 8px}.io-input textarea{display:block;background:var(--sk-surface);border:1px solid var(--sk-line-strong);border-radius:10px;padding:10px 12px;color:var(--sk-text);font:16px/1.5 var(--sk-mono);width:100%;resize:vertical}.io-runbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}.io-lives{display:flex;align-items:center;gap:4px;color:var(--sk-accent-text)}.io-lives small{margin-left:6px;color:var(--sk-text-3)}.io-feedback{line-height:1.6;font-size:14px;padding:14px;border-radius:12px;margin-top:14px;overflow-wrap:anywhere}.io-feedback.is-success{background:var(--sk-success-soft);color:var(--sk-success)}.io-feedback.is-error{background:var(--sk-danger-soft);color:var(--sk-danger)}.io-feedback.is-info{background:var(--sk-surface-2);color:var(--sk-text-2)}.io-hint-button{margin-top:14px;font-size:13px}.io-hint{font-size:14px;line-height:1.6;color:var(--sk-text-2)}.io-scene{position:relative;overflow:hidden;min-height:250px;display:flex;gap:8px;align-items:center;justify-content:center;border-radius:20px;padding:26px 18px 45px;background:radial-gradient(ellipse at 10% 5%,var(--sk-accent-soft),transparent 70%),var(--sk-surface-2);border:1px solid var(--sk-line)}.io-bot{position:relative;z-index:1;flex-shrink:0;width:110px;height:144px;color:var(--sk-accent-text)}.io-speech{position:relative;z-index:1;min-width:0;flex:1;border:1px solid var(--sk-line);border-radius:16px 16px 16px 3px;padding:14px;background:var(--sk-surface);box-shadow:var(--sk-shadow-1)}.io-speech small{display:block;color:var(--sk-text-3);font-size:10px;margin-bottom:7px}.io-speech pre{font:600 16px/1.55 var(--sk-font);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;max-height:200px;overflow:auto}.io-speech.has-output{animation:io-message .28s ease-out}.io-scene-caption{position:absolute;bottom:17px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;color:var(--sk-text-3)}.io-led{width:6px;height:6px;background:var(--sk-accent-text);border-radius:50%}.io-orbit{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.io-orbit span{position:absolute;display:block;width:22px;height:22px;border:1px solid var(--sk-accent-line);transform:rotate(25deg);border-radius:5px;top:18%;left:8%}.io-orbit span:nth-child(2){width:10px;height:10px;left:80%;top:80%}.io-orbit span:nth-child(3){left:86%;top:10%;width:15px;height:15px}.io-console,.io-target{border-radius:12px;padding:14px 16px;margin-top:12px;min-width:0}.io-console{background:var(--sk-code-bg);color:var(--sk-code-text)}.io-target{border:1px dashed var(--sk-line-strong);background:var(--sk-surface)}.io-pilot :is(.io-console,.io-target,.io-recovery) h3{font-size:12px;margin:0 0 8px;line-height:1.4}.io-pilot :is(.io-console,.io-target,.io-reference,.io-recovery) pre{font:13px/1.65 var(--sk-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;max-height:200px;overflow:auto}.io-recovery{padding:16px;margin-top:16px;background:var(--sk-surface-2);border:1px solid var(--sk-line-strong);border-radius:12px}.io-recovery p{font-size:14px;line-height:1.6}.io-recovery label{display:block;margin:14px 0;font-size:13px}.io-recovery input{display:block;width:100%;margin-top:6px;padding:10px;background:var(--sk-surface);border:1px solid var(--sk-line-strong);border-radius:8px;color:var(--sk-text);font:16px var(--sk-font)}.io-navigation{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:24px 0 16px;padding-top:20px;border-top:1px solid var(--sk-line)}.io-navigation>span{font-size:12px;color:var(--sk-text-3);text-align:center}.io-complete{display:flex;gap:8px;align-items:center;padding:14px;border-radius:12px;background:var(--sk-success-soft);color:var(--sk-success);font-size:14px}.io-reference{padding:14px 0;border-top:1px solid var(--sk-line);font-size:13px;line-height:1.6;color:var(--sk-text-3)}.io-reference summary{cursor:pointer;color:var(--sk-text-2)}.io-reference p{max-width:760px}.io-reference pre{padding:12px;background:var(--sk-surface-2);border-radius:8px;margin-top:12px!important}@keyframes io-message{0%{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:1050px){.io-grid{grid-template-columns:1fr}.io-result{display:grid;grid-template-columns:1fr 1fr;gap:10px}.io-scene{grid-column:1/-1;min-height:200px}.io-console,.io-target{margin:0}.io-steps button{padding:10px;gap:6px}}@media(max-width:600px){.io-heading p{font-size:14px;margin-bottom:18px}.io-steps{gap:5px}.io-steps button{flex-direction:column;align-items:flex-start;padding:9px;font-size:11px;gap:7px;line-height:1.4;min-height:90px}.io-heading h2{font-size:25px}.io-grid{gap:18px}.io-editor textarea{font-size:13px;padding:12px;min-height:145px}.io-editor-bar span{display:none}.io-runbar .sk-btn{font-size:13px}.io-navigation{flex-wrap:wrap}.io-navigation>span{order:3;width:100%;text-align:center}.io-scene{min-height:180px;padding:16px 12px 35px}.io-bot{width:80px;height:120px}.io-speech{padding:12px}.io-speech pre{font-size:15px}.io-result{grid-template-columns:1fr}.io-task p{font-size:14px}.io-progress{margin-bottom:18px}}@media(prefers-reduced-motion:reduce){.io-pilot *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.lc-concept{position:relative;min-width:0;padding:22px;border:1px solid var(--sk-accent-line);border-radius:20px;background:radial-gradient(ellipse at 95% 0%,var(--sk-accent-soft),transparent 65%),var(--sk-surface);overflow:hidden;color:var(--sk-text)}.sk-lesson.has-concept #lesson-theory{padding:0;border:0;background:none;box-shadow:none}.sk-lesson.has-concept .lc-theory-details{padding:14px 4px 0}.lc-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.lc-title>div{min-width:0}.lc-title h3{font-size:clamp(21px,2vw,27px);line-height:1.2;letter-spacing:-.5px;margin:8px 0}.lc-title p{font-size:14px;line-height:1.5;color:var(--sk-text-2);margin:0}.lc-title>svg{flex:0 0 100px;width:100px;height:110px;color:var(--sk-accent-text)}.lc-control{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;margin:20px 0}.lc-control input{min-width:100px;flex:1;accent-color:var(--sk-accent-text)}.lc-control output{font:700 22px var(--sk-mono);color:var(--sk-accent-text);min-width:30px;text-align:center}.lc-flow{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);gap:5px;align-items:center}.lc-node{border:1px solid var(--sk-line);border-radius:13px;min-width:0;padding:14px 10px;background:var(--sk-surface)}.lc-node>span,.lc-node small{display:block;font-size:11px;color:var(--sk-text-3)}.lc-node code{display:block;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.6 var(--sk-mono);margin:8px 0}.lc-node b{color:var(--sk-accent-text)}.lc-node.is-active{background:var(--sk-accent-soft);border-color:var(--sk-accent-text);box-shadow:inset 0 0 0 1px var(--sk-accent-text)}.lc-arrow{display:flex;justify-content:center;color:var(--sk-accent-text)}.lc-arrow svg{width:17px}.lc-arrow svg+svg{display:none}.lc-bottom{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}.lc-bottom p,.lc-caption{font-size:13px!important;line-height:1.5!important;color:var(--sk-text-2)!important;margin:0!important}.lc-code{margin:18px 0 0!important;background:var(--sk-code-bg);color:var(--sk-code-text);padding:16px;border-radius:12px;font:13px/1.7 var(--sk-mono);white-space:pre-wrap;overflow-wrap:anywhere}.lc-model-note{display:block;border-top:1px solid var(--sk-line);padding-top:12px;margin-top:18px;font-size:11px;line-height:1.6;color:var(--sk-text-3)}.lc-presets{display:flex;gap:8px;margin-top:18px}.lc-presets button[aria-pressed=true]{background:var(--sk-accent-soft);color:var(--sk-accent-text);border-color:var(--sk-accent-text)}.lc-condition{display:flex;justify-content:center;align-items:center;gap:20px;margin:22px 0;font:600 21px var(--sk-mono)}.lc-condition strong{color:var(--sk-accent-text);border-radius:30px;background:var(--sk-accent-soft);padding:7px 14px;font-size:17px}.lc-branches{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.lc-branch{border:1px solid var(--sk-line);border-radius:13px;padding:15px;background:var(--sk-surface);color:var(--sk-text-3)}.lc-branch>span{display:flex;align-items:center;gap:7px;font:12px var(--sk-mono);margin-bottom:10px}.lc-branch b{font-size:15px;font-weight:600}.lc-branch.is-active{border:2px solid var(--sk-accent-text);padding:14px;background:var(--sk-accent-soft);color:var(--sk-accent-text)}.lc-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.lc-menu button{display:flex;align-items:center;gap:12px;background:var(--sk-surface);border:1px solid var(--sk-line);border-radius:12px;padding:12px;color:var(--sk-text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.lc-menu button>b{display:grid;place-items:center;background:var(--sk-surface-2);border-radius:8px;width:30px;height:30px;font:600 16px var(--sk-mono)}.lc-menu button[aria-pressed=true]{border-color:var(--sk-accent-text);background:var(--sk-accent-soft)}.lc-switch-result{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;padding:18px;border:1px dashed var(--sk-accent-text);border-radius:12px;color:var(--sk-accent-text);margin-bottom:12px}.lc-switch-result code{font:600 17px var(--sk-mono)}.lc-switch-result strong{font-size:16px}.lc-numberline{display:flex;justify-content:space-between;gap:5px;margin:24px 0 32px}.lc-numberline>span{position:relative;flex:1;display:grid;place-items:center;min-width:0;border:1px solid var(--sk-line);border-radius:10px;aspect-ratio:1;background:var(--sk-surface);font:600 20px var(--sk-mono)}.lc-numberline>span.is-selected{color:var(--sk-accent-text);background:var(--sk-accent-soft);border:2px solid var(--sk-accent-text)}.lc-numberline>span.is-excluded{color:var(--sk-text-3);border-style:dashed}.lc-numberline .is-excluded b{text-decoration:line-through}.lc-numberline small{position:absolute;top:calc(100% + 5px);font:10px var(--sk-font);white-space:nowrap;right:0}.lc-dice.has-roll{animation:lc-roll .32s ease-out}.lc-theory-details{margin-top:16px;border-top:1px solid var(--sk-line);padding-top:14px}.lc-theory-details summary{font-size:13px;font-weight:550;color:var(--sk-text-2);cursor:pointer}.lc-concept :is(button,input):focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:3px}@keyframes lc-roll{0%{transform:rotate(-15deg) scale(.94)}to{transform:none}}@media(max-width:650px){.lc-concept{padding:16px}.lc-title>svg{flex-basis:74px;width:74px;height:90px}.lc-title h3{font-size:22px}.lc-flow{grid-template-columns:1fr;gap:6px}.lc-node{padding:12px 15px;display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center}.lc-node code{margin:0;grid-row:1/3;grid-column:2;font-size:14px}.lc-node small{font-size:11px}.lc-arrow svg{display:none}.lc-arrow svg+svg{display:block;height:17px}.lc-bottom{gap:10px}.lc-code{font-size:12px}.lc-branch{padding:12px}.lc-branch.is-active{padding:11px}.lc-branch b{font-size:13px}.lc-condition{font-size:20px}.lc-numberline>span{font-size:18px}.lc-menu button{gap:8px;padding:9px}}@media(prefers-reduced-motion:reduce){.lc-concept *{animation:none!important;transition:none!important}}@media(max-width:700px){.sk-lesson.has-concept .sk-lesson-nav{padding:10px 12px}.sk-lesson.has-concept .sk-lesson-nav>h2,.sk-lesson.has-concept .sk-lesson-nav>p,.sk-lesson.has-concept .sk-lesson-nav>progress,.sk-lesson.has-concept .sk-lesson-nav>.sk-link{display:none}.sk-lesson.has-concept .sk-lesson-nav nav{margin-top:0;padding-top:0}}.ls-step-count{margin:0 0 8px}.lesson-steps>progress{width:100%;height:6px;margin-bottom:16px}.ls-current{margin-top:0}.ls-code{overflow:auto;max-height:400px;padding:16px;border-radius:12px;background:var(--sk-bg);font:14px/1.7 var(--sk-font-mono,monospace);white-space:pre}.ls-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0}.ls-quiz textarea{width:100%;padding:12px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-bg);color:var(--sk-text);margin:12px 0}.ls-quiz .sk-actions{margin-top:16px}.ls-current:focus-within{scroll-margin-top:100px}@media(max-width:600px){.ls-navigation>.sk-hint{order:3;flex-basis:100%}.ls-current>.sk-lead{font-size:18px}}.ls-current{animation:lesson-step-in .22s ease-out}@keyframes lesson-step-in{0%{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ls-current{animation:none}}.kd-skill-tree{margin-top:20px;min-width:0}.kd-tree-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}.kd-tree-branches,.kd-tree-zoom{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.kd-tree-branch{display:flex;gap:8px;align-items:center;min-height:44px;padding:9px 12px;border:1px solid var(--branch);border-radius:3px;background:var(--sk-surface);color:var(--branch);font:600 12px var(--sk-font);cursor:pointer}.kd-tree-branch[aria-pressed=true]{background:var(--branch-soft);box-shadow:0 -3px 0 var(--branch) inset}.kd-tree-zoom output{min-width:44px;text-align:center;font:12px var(--sk-mono);color:var(--sk-text-2)}.kd-tree-zoom .sk-icon-btn{width:44px;height:44px}.kd-tree-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:16px;align-items:start}.kd-tree-canvas{position:relative;min-width:0;border:1px solid var(--sk-line);background:var(--sk-code-bg)}.kd-tree-canvas>.sk-hint{padding:10px 12px;margin:0;border-bottom:1px solid var(--sk-line);font-size:11px}.kd-tree-viewport{position:relative;width:100%;height:620px;overflow:hidden;touch-action:none;cursor:grab;background-image:radial-gradient(var(--sk-line) 1px,transparent 1px);background-size:22px 22px;outline-offset:3px}.kd-tree-viewport:active{cursor:grabbing}.kd-tree-viewport:focus-visible{outline:2px solid var(--sk-text)}.kd-tree-world{position:absolute;inset:0 auto auto 0;transform-origin:0 0;will-change:transform;--tree-scale:1}.kd-tree-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.kd-tree-lines path{fill:none;stroke:var(--branch);stroke-width:5;opacity:.7}.kd-tree-lines circle{fill:var(--sk-surface);stroke:var(--sk-cube-2);stroke-width:3}.kd-tree-node{position:absolute;width:184px;min-width:calc(44px / var(--tree-scale));min-height:calc(44px / var(--tree-scale));padding:0 4px 5px;transform:translate(-50%,-30px);display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:transparent;color:var(--branch);font:600 13px/1.3 var(--sk-font);cursor:pointer;touch-action:none}.kd-tree-circle{width:60px;height:60px;flex-shrink:0;display:grid;place-items:center;border:2px solid var(--branch);border-radius:50%;background:var(--sk-code-bg);box-shadow:0 0 0 5px var(--sk-code-bg)}.kd-tree-node-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:180px;color:var(--sk-text);background:var(--sk-code-bg);padding:2px 5px}.kd-tree-node small{font:11px/1.3 var(--sk-font);color:var(--sk-text-3);background:var(--sk-code-bg);padding:1px 4px}.kd-tree-node.is-selected .kd-tree-circle{background:var(--branch);color:var(--sk-code-bg);box-shadow:0 0 0 5px var(--sk-code-bg),0 0 0 7px var(--branch)}.kd-tree-node.is-done .kd-tree-circle{border-width:3px}.kd-tree-node.is-empty .kd-tree-circle{border-style:dashed;opacity:.65}.kd-tree-node:focus-visible{outline:2px dashed var(--sk-text);outline-offset:5px}.kd-tree-root{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;gap:3px;color:var(--sk-practice);pointer-events:none}.kd-tree-root small{margin-top:22px;color:var(--sk-text-2);white-space:nowrap;font:13px var(--sk-font)}.kd-tree-root b{font:600 13px var(--sk-mono)}.kd-skill-tree .is-theory{--branch:var(--sk-theory);--branch-soft:var(--sk-theory-soft)}.kd-skill-tree .is-practice{--branch:var(--sk-practice);--branch-soft:var(--sk-practice-soft)}.kd-skill-tree .is-assigned{--branch:var(--sk-project);--branch-soft:var(--sk-project-soft)}.kd-tree-detail{padding:18px;border:1px solid var(--sk-line);border-top:3px solid var(--branch);background:var(--sk-surface-2);display:grid;gap:14px;overflow-wrap:anywhere}.kd-tree-detail .sk-kicker{color:var(--branch)}.kd-tree-detail h3{font-size:19px;line-height:1.35}.kd-tree-detail p{margin:0;font-size:14px;line-height:1.6}.kd-tree-detail .sk-hint{font-size:12px;color:var(--sk-text-3)}.kd-tree-detail>.sk-btn{white-space:normal;text-align:center;line-height:1.35;min-height:46px}.kd-tree-detail .kd-tree-status{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:650;color:var(--branch)}.kd-tree-task{white-space:pre-wrap}.kd-tree-feedback{padding:10px;border-left:2px solid var(--sk-warning);background:var(--sk-warning-soft);color:var(--sk-warning)}.kd-tree-open{position:absolute;bottom:10px;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 12px;background:var(--sk-surface);border:1px solid var(--branch);color:var(--sk-text);border-radius:3px;font:600 13px var(--sk-font);box-shadow:var(--sk-shadow-2);cursor:pointer}.kd-tree-open>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kd-tree-open>b{white-space:nowrap;color:var(--branch)}.sk-course-layout.kd-map-layout{grid-template-columns:minmax(0,1fr)}.kd-map-layout>.sk-modules{display:flex;flex-direction:row;position:static;margin:0;gap:8px;overflow-x:auto;padding:2px 2px 9px;scrollbar-width:thin}.kd-map-layout .sk-module-tab{flex:0 0 185px;min-height:92px}.kd-map-layout .sk-topics-head{margin-bottom:0}.kd-map-layout .sk-topics-card{min-width:0}.kd-map-alert{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:14px}.kd-map-view{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px}.kd-map-view .sk-seg{width:auto}.kd-map-view p{margin:0;font-size:12px;color:var(--sk-text-3)}@media(max-width:1100px){.kd-tree-layout{grid-template-columns:minmax(0,1fr) 250px}.kd-tree-detail{padding:14px}.kd-tree-controls{align-items:start}}@media(max-width:800px){.kd-tree-layout{grid-template-columns:minmax(0,1fr)}.kd-tree-viewport{height:440px}.kd-tree-branches{width:100%;display:grid;grid-template-columns:1fr 1fr 1.4fr}.kd-tree-branch{font-size:11px;padding:8px 5px;justify-content:center;gap:5px}.kd-tree-branch svg{width:14px;height:14px}.kd-tree-controls{gap:9px}.kd-tree-zoom{margin-left:auto}.kd-tree-detail{border:0;border-top:3px solid var(--branch);padding:18px 4px 6px}.kd-tree-detail h3{padding-right:32px}.kd-map-view{align-items:start;gap:8px}.kd-map-view p{max-width:25ch;font-size:11px}.kd-map-layout .sk-module-tab{flex-basis:165px}.kd-tree-viewport{padding-bottom:72px}.kd-tree-canvas>.sk-hint{font-size:10px}.kd-tree-open{bottom:12px}}@media print{.kd-skill-tree{display:none}.kd-map-view:after{content:"Для просмотра всех тем используйте режим «Список». "}}.kd-tree-circle{position:relative}.kd-tree-index{position:absolute;bottom:-5px;right:-5px;min-width:19px;padding:2px;background:var(--sk-code-bg);border:1px solid var(--branch);color:var(--branch);font:10px var(--sk-mono)}.kd-tree-node.is-selected .kd-tree-circle{animation:kd-tree-select .26s steps(4,end) both}@keyframes kd-tree-select{0%{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.kd-training-module{padding:12px 16px;margin-bottom:18px}.kd-training-module .field{display:grid;gap:5px;margin:0;color:var(--sk-text-2)}.kd-training-module select{min-height:44px;margin:0}.kd-training-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.kd-training-head .sk-h1{margin:6px 0;font-size:clamp(24px,3vw,36px)}.kd-training-head .sk-lead{margin:0;font-size:var(--sk-fs-sm)}.kd-training-count{display:flex;align-items:baseline;flex-shrink:0;gap:8px;color:var(--sk-text-2);font-size:var(--sk-fs-sm)}.kd-training-count b{color:var(--sk-text);font-variant-numeric:tabular-nums}.kd-training-count small{font:inherit}@media(max-width:700px){.kd-training-head{align-items:start;flex-direction:column;gap:8px}.kd-training-module{padding:10px 12px;margin-bottom:12px}}.kd-training-topics{margin-top:var(--sk-4)}.teacher-projects .sk-gap{margin-top:22px}.project-form{max-width:850px}.project-form label:not(.project-check){display:grid;gap:7px;margin:14px 0}.project-form input:not([type=checkbox]),.project-form textarea,.project-form select,.teacher-projects>section select{width:100%;padding:11px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface);color:inherit;font:inherit}.project-form fieldset{border:0;padding:0;min-width:0}.project-form fieldset fieldset{border:1px solid var(--sk-line);padding:14px;border-radius:12px;margin:16px 0}.project-check{display:flex;gap:10px;align-items:center;padding:7px 0}.project-check input{width:18px;height:18px;flex:none}.project-form details>summary,.teacher-projects details>summary,.project-evidence details>summary{cursor:pointer;font-weight:650;padding:10px 0}.teacher-projects .sk-actions{display:flex;flex-wrap:wrap;gap:12px}.project-team-list{display:grid;gap:15px;margin-top:20px}.project-open{text-align:left;color:inherit;cursor:pointer;display:grid;gap:12px}.project-open b{font-size:1.1rem}.project-people{display:grid;gap:18px;margin-top:18px}.project-text{white-space:pre-wrap;line-height:1.6}.project-scheme{display:block;width:100%;min-height:300px;max-height:650px;border:1px solid var(--sk-line);border-radius:12px;background:var(--sk-surface-2);margin:15px 0}.project-source{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--sk-bg);padding:14px;border-radius:10px;font:14px/1.6 ui-monospace,monospace;max-height:500px;overflow:auto}.project-evidence-wrap{margin:16px 0}.project-evidence{padding:14px 0;border-top:1px solid var(--sk-line);margin-top:14px}.student-project-notice{margin:18px 0;padding:18px;border:1px solid var(--sk-line);border-radius:14px;background:var(--sk-surface)}.student-project-notice h2{font-size:1.1rem}.student-project-notice .sk-actions{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:600px){.teacher-projects .sk-h1{font-size:1.9rem}.project-form{padding:18px}.project-check{align-items:start}.project-people>.sk-card{padding:16px}.project-scheme{min-height:230px}.project-evidence{padding:10px 0}}.project-form [hidden]{display:none}.student-project-notice summary{cursor:pointer;font-weight:600;padding:8px 0}.access-packet-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0;align-items:center}.access-packet-control{min-width:0}.access-packet-table{max-height:48vh;overflow:auto;border:1px solid var(--sk-line);border-radius:var(--sk-r-md);margin:16px 0}.access-packet-table table{border-collapse:collapse;width:100%;font-size:14px}.access-packet-table th,.access-packet-table td{padding:10px;text-align:left;border-bottom:1px solid var(--sk-line);white-space:nowrap}.access-packet-table thead th{position:sticky;top:0;background:var(--sk-surface);z-index:1}.access-packet-table code{-webkit-user-select:all;-moz-user-select:all;user-select:all}.access-packet-control textarea{width:100%;font:inherit}.access-packet-actions a[aria-disabled=true]{pointer-events:none;opacity:.5}.access-packet-table tbody th{text-transform:none;color:var(--sk-text);font-size:14px}@media(max-width:600px){.access-packet-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.access-packet-actions>.primary{grid-column:1/-1}.access-packet-actions .btn,.access-packet-actions .sk-btn{white-space:normal;text-align:center;justify-content:center;padding:10px;font-size:14px}.access-packet-table{max-height:36vh}.access-packet-table table,.access-packet-table tbody,.access-packet-table tr,.access-packet-table th,.access-packet-table td{display:block;width:100%;white-space:normal}.access-packet-table thead{display:none}.access-packet-table tr{padding:10px;border-bottom:1px solid var(--sk-line)}.access-packet-table th,.access-packet-table td{border:0;padding:4px 0}.access-packet-table td{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px}.access-packet-table td:before{content:attr(data-label);color:var(--sk-muted);font-size:12px}.access-packet-table code{overflow-wrap:anywhere;font-size:13px}}.legacy-bindings{margin-top:var(--sk-4);min-width:0;scroll-margin-top:100px}.legacy-binding-fields{border:0;padding:0;margin:var(--sk-4) 0;min-width:0}.legacy-binding-list{display:grid;gap:var(--sk-3);margin:var(--sk-4) 0}.legacy-binding-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,1fr);gap:var(--sk-4);padding:var(--sk-4);border:1px solid var(--sk-line);border-radius:var(--sk-r-md);overflow-wrap:anywhere}.legacy-binding-row p{margin:6px 0}.legacy-binding-row small{color:var(--sk-text-2)}.legacy-binding-dialog{min-width:0;max-height:70dvh;overflow:auto}.legacy-binding-dialog li{margin:12px 0;overflow-wrap:anywhere}@media(max-width:600px){.legacy-binding-row{grid-template-columns:minmax(0,1fr)}.legacy-bindings>.edu-heading{align-items:stretch;flex-direction:column}.legacy-binding-dialog .edu-actions>.btn{flex:1}}.assignment-draft{min-width:0;border:1px solid var(--line);border-radius:12px;padding:12px;overflow-wrap:anywhere;font-size:.875rem}.assignment-draft p{margin:0 0 8px}.assignment-draft-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.assignment-draft summary{margin-top:8px}.assignment-draft-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.assignment-draft-row span{min-width:0}.assignment-draft-row small{display:block;color:var(--muted)}.edu-form>.assignment-draft-fields{display:contents}.assignment-draft-row-actions{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}.assignment-draft-row-actions button{min-height:40px}@media(max-width:600px){.assignment-draft-row{align-items:flex-start;flex-direction:column}.assignment-draft-actions>button{min-height:44px}.assignment-draft-row-actions button{min-height:44px}}.ready-assignments{display:grid;gap:14px;margin-bottom:18px;padding:18px;border:1px solid var(--sk-accent-line);border-radius:var(--sk-r-md);background:var(--sk-accent-soft);min-width:0}.ready-assignments>header{display:flex;align-items:flex-start;gap:10px;color:var(--sk-accent-text)}.ready-assignments h3,.ready-assignments h4,.ready-assignments p{margin:0}.ready-assignments h3{font-size:var(--sk-fs-md)}.ready-assignments header p{font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.ready-assignments .field{margin:0}.ready-assignments .sk-seg{justify-self:start;max-width:100%;flex-wrap:wrap}.ready-assignments .sk-seg button{white-space:normal;min-height:40px}.ready-assignment-preview{display:grid;gap:12px;min-width:0;padding:14px;border-radius:var(--sk-r-md);background:var(--sk-surface);color:var(--sk-text);border:1px solid var(--sk-line)}.ready-assignment-title{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px}.ready-assignment-title h4{font-size:var(--sk-fs-md);overflow-wrap:anywhere}.ready-assignment-title span{font-size:var(--sk-fs-sm);color:var(--sk-text-3);white-space:nowrap}.ready-assignment-preview ol,.ready-assignment-preview ul{margin:0;padding-left:22px;display:grid;gap:7px}.ready-assignment-preview ol{list-style:decimal}.ready-assignment-preview ul{list-style:disc}.ready-assignment-preview summary{cursor:pointer;font-weight:600;color:var(--sk-accent-text)}.ready-assignment-preview details>div,.ready-assignment-preview details>ul{margin-top:10px}.ready-assignment-preview pre{max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;font-family:var(--sk-mono);font-size:var(--sk-fs-sm)}.ready-assignments>.btn{justify-self:start;min-height:44px}.ready-assignments-picked{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.ready-assignments-picked p{font-size:var(--sk-fs-sm);color:var(--sk-text-2)}@media(max-width:480px){.ready-assignments{padding:12px;gap:12px}.ready-assignments>.btn{width:100%}}.ready-assignments-quick{gap:10px;padding:14px;margin-bottom:0}.ready-assignments-quick header p{font-size:12px}.ready-assignments-quick .sk-seg{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch}.ready-assignments-quick .sk-seg button{min-height:44px;padding-inline:7px}.ready-assignments-quick .ready-assignment-preview{padding:12px;gap:9px}.ready-other-topics>summary{font-size:12px;cursor:pointer;color:var(--sk-nav);min-height:32px;display:list-item}.ready-other-topics .field{margin-top:10px}.sk-assign-edit{border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:var(--sk-surface)}.sk-assign-edit>summary{padding:14px;cursor:pointer;color:var(--sk-nav);font-weight:600;min-height:48px}.sk-assign-edit>.sk-assign-step{border:0;box-shadow:none}.sk-assign-edit>.sk-assign-more{margin:0 12px 12px}.sk-assign-schedule{margin-top:10px}.sk-assign-schedule>summary{min-height:40px;cursor:pointer;font-size:12px;color:var(--sk-text-2)}.sk-assign-schedule .field{margin-top:12px}.ready-assignments-quick{background:var(--sk-surface);border-color:var(--sk-nav)}.ready-assignments-quick>header{color:var(--sk-nav)}.ready-assignments-quick .sk-seg button[aria-pressed=true]{background:var(--sk-nav-soft);color:var(--sk-nav);outline:1px solid var(--sk-nav);outline-offset:-2px}.semester{color:var(--it-ink);min-width:0;display:grid;gap:18px;--sem-accent:var(--it-accent);--sem-panel:var(--it-panel);--sem-soft:var(--it-soft);--sem-line:var(--it-line);--sem-muted:var(--it-muted)}.semester *{box-sizing:border-box}.semester h2,.semester h3,.semester h4,.semester p{margin:0}.semester h3{font-size:25px}.semester h4{font-size:18px}.semester button,.semester input,.semester textarea,.semester select{font:inherit}.semester input,.semester textarea,.semester select{display:block;width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid var(--sem-line);border-radius:10px;color:var(--it-ink);background:var(--sem-panel)}.semester textarea{resize:vertical}.semester label{display:grid;gap:7px;font-size:14px;line-height:1.5}.semester button:focus-visible,.semester a:focus-visible,.semester input:focus-visible,.semester select:focus-visible,.semester textarea:focus-visible{outline:3px solid var(--sem-accent);outline-offset:3px}.semester button:disabled{cursor:default;opacity:.55}.semester .btn{white-space:normal;min-height:44px}.sem-heading{display:flex;justify-content:space-between;gap:14px;align-items:center}.sem-heading p{color:var(--sem-muted);font-size:14px;line-height:1.5;margin-top:5px}.sem-empty{padding:22px;border:1px dashed var(--sem-line);border-radius:14px;background:var(--sem-panel);line-height:1.6;display:grid;gap:14px;justify-items:start}.sem-empty .btn{display:inline-flex}.sem-success{color:var(--st-teal);background:var(--sem-panel);border:1px solid var(--st-teal);border-radius:10px;padding:12px 14px}.sem-tabs{display:flex;gap:6px;padding:5px;border:1px solid var(--sem-line);border-radius:12px;background:var(--sem-panel);width:-moz-max-content;width:max-content;max-width:100%}.sem-tabs button{cursor:pointer;border:0;background:transparent;color:var(--sem-muted);padding:11px 16px;border-radius:8px;min-height:44px}.sem-tabs button[aria-pressed=true]{background:var(--sem-soft);color:var(--sem-accent);font-weight:700}.sem-parts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sem-part{min-width:0;background:var(--sem-panel);border:1px solid var(--sem-line);padding:16px;border-radius:14px}.sem-part>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.sem-part span{font-size:13px;color:var(--sem-muted)}.sem-part b{font-size:24px;white-space:nowrap}.sem-part small{font-size:12px;color:var(--sem-muted);font-weight:500}.sem-part progress{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border:0;border-radius:10px;overflow:hidden;margin-top:14px;background:var(--sem-soft);color:var(--sem-accent)}.sem-part progress::-webkit-progress-bar{background:var(--sem-soft);border-radius:10px}.sem-part progress::-webkit-progress-value{background:var(--sem-accent);border-radius:10px}.sem-part progress::-moz-progress-bar{background:var(--sem-accent);border-radius:10px}.sem-part-practice progress::-webkit-progress-value{background:var(--st-teal)}.sem-part-practice progress::-moz-progress-bar{background:var(--st-teal)}.sem-targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sem-target{display:flex;gap:12px;padding:16px;border:1px solid var(--sem-line);border-radius:14px;background:var(--sem-panel);min-width:0}.sem-mark{width:38px;height:42px;display:grid;place-items:center;flex:0 0 38px;font-size:25px;border-radius:10px;background:var(--sem-soft);color:var(--sem-accent)}.sem-target>div{display:grid;gap:5px}.sem-target strong{font-size:15px}.sem-target span,.sem-target small{color:var(--sem-muted);font-size:12px;line-height:1.6}.sem-target.is-reached{border-color:var(--st-teal)}.sem-target.is-reached small{color:var(--st-teal)}.sem-result{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(0,1.4fr);gap:20px;padding:22px;border:1px solid var(--sem-line);border-radius:16px;background:var(--sem-panel);align-items:center}.sem-result>div{display:grid;gap:6px}.sem-result strong{font-size:18px}.sem-result small,.sem-label,.sem-total>span{font-size:12px;color:var(--sem-muted);line-height:1.6}.sem-total>b{font-size:42px;line-height:1.1;letter-spacing:-1px;font-variant-numeric:tabular-nums}.sem-total>b>small{font-size:16px;margin-left:5px;letter-spacing:0}.sem-result .sem-notice{display:block;color:var(--sem-accent);font-size:12px;line-height:1.6}.sem-help{font-size:13px;line-height:1.7;color:var(--sem-muted);max-width:850px}.sem-policy-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.sem-policy-status span{padding:5px 9px;border-radius:7px;background:var(--sem-soft);color:var(--sem-accent)}.sem-policy{display:grid;gap:16px;padding:22px;border:1px solid var(--sem-line);border-radius:16px;background:var(--sem-panel)}.sem-policy>label{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,2fr);align-items:center;gap:14px}.sem-manual-plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.sem-manual-plan>div{display:grid;gap:12px;padding:12px;border:1px solid var(--sem-line);border-radius:10px;font-size:13px}.sem-manual-plan span{color:var(--sem-muted);font-size:12px}.sem-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.sem-publish{display:grid;gap:14px;padding:20px;border:2px solid var(--sem-accent);border-radius:14px;background:var(--sem-panel);font-size:14px;line-height:1.7}.sem-publish ul{margin:0;padding-left:21px}.sem-search{max-width:450px}.sem-roster{display:grid;gap:8px}.sem-student{display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;text-align:left;border:1px solid var(--sem-line);border-radius:12px;padding:16px 18px;color:var(--it-ink);background:var(--sem-panel);cursor:pointer;transition:border-color .15s,background .15s}.sem-student:hover{border-color:var(--sem-accent);background:var(--sem-soft)}.sem-student>span:first-child{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}.sem-student small{font-size:12px;color:var(--sem-muted)}.sem-student-total{font-size:23px;font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}.sem-student-total small{font-weight:500}.sem-person-heading{display:flex;align-items:center;gap:18px}.sem-person-heading h4{overflow-wrap:anywhere}.sem-confirm{padding:16px 18px;border:1px solid var(--sem-line);border-radius:12px;background:var(--sem-panel);display:flex;align-items:center;gap:14px;justify-content:space-between}.sem-confirm>span{font-size:13px;line-height:1.6;color:var(--sem-muted)}.sem-slot-groups{display:grid;gap:25px}.sem-slot-groups>section{display:grid;gap:12px}.sem-slot-groups h4>span{font-size:13px;color:var(--sem-muted);font-weight:400;margin-left:7px}.sem-slots{display:grid;gap:12px}.sem-slot{border:1px solid var(--sem-line);border-radius:14px;background:var(--sem-panel);padding:18px;min-width:0}.sem-slot>header{display:flex;justify-content:space-between;align-items:center;gap:16px}.sem-slot>header>div{display:grid;gap:5px}.sem-slot>header small{color:var(--sem-muted);font-size:12px;line-height:1.5}.sem-slot-score{font-size:25px;white-space:nowrap}.sem-slot-score small{font-size:12px;font-weight:400}.sem-pending{font-size:12px;line-height:1.6;color:var(--sem-muted);text-align:right;max-width:180px}.sem-slot .sem-comment{border-left:3px solid var(--sem-accent);padding:8px 12px;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0 0;background:var(--sem-soft);border-radius:0 8px 8px 0}.sem-rubric{display:grid;gap:14px;margin-top:18px;border-top:1px solid var(--sem-line);padding-top:18px}.sem-rubric-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sem-rubric-fields label{font-size:12px;align-content:space-between}.sem-zero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:16px}.sem-zero label{font-size:12px}.sem-rubric-read{display:grid;gap:8px;margin:16px 0 0;padding:14px 0 0;list-style:none;border-top:1px solid var(--sem-line)}.sem-rubric-read li{display:flex;justify-content:space-between;gap:14px;font-size:13px;line-height:1.6}.sem-rubric-read li>span{color:var(--sem-muted)}.sem-rubric-read b{white-space:nowrap;font-variant-numeric:tabular-nums}.sem-scope-label{max-width:650px}.sem-version{font-size:12px;color:var(--sem-muted)}.sem-student-view{padding-top:24px;margin-top:24px;border-top:1px solid var(--sem-line)}@media(max-width:1050px){.sem-parts{grid-template-columns:repeat(3,minmax(0,1fr))}.sem-part>div{align-items:start;flex-direction:column}.sem-target{gap:8px;padding:13px}.sem-result{grid-template-columns:135px minmax(0,1fr)}.sem-result>div:last-child{grid-column:1/-1;border-top:1px solid var(--sem-line);padding-top:14px}.sem-zero{grid-template-columns:1fr}.sem-zero .btn{justify-self:start}}@media(max-width:650px){.semester{gap:14px}.sem-heading h2,.sem-heading h3{font-size:23px}.sem-heading .btn{font-size:12px;padding:10px}.sem-heading p{font-size:12px}.sem-targets{grid-template-columns:1fr;gap:8px}.sem-target{padding:12px 14px}.sem-target>div{gap:2px}.sem-parts{gap:6px}.sem-part{padding:12px 9px;border-radius:10px}.sem-part span{font-size:11px;line-height:1.5;min-height:33px}.sem-part b{font-size:23px}.sem-part small{font-size:10px}.sem-part progress{margin-top:10px}.sem-result{padding:16px;gap:16px;grid-template-columns:105px minmax(0,1fr)}.sem-total>b{font-size:36px}.sem-result strong{font-size:16px}.sem-policy{padding:16px}.sem-policy>label{grid-template-columns:1fr;gap:7px}.sem-actions{display:grid;grid-template-columns:1fr;width:100%}.sem-actions .btn{width:100%;justify-content:center}.sem-person-heading{flex-wrap:wrap;gap:12px}.sem-person-heading h4{flex-basis:100%}.sem-confirm{align-items:stretch;flex-direction:column;padding:14px}.sem-rubric-fields{grid-template-columns:1fr;gap:12px}.sem-rubric-fields label{grid-template-columns:minmax(0,1fr) 115px;align-items:center;gap:10px}.sem-slot{padding:14px}.sem-slot>header{align-items:start;gap:10px}.sem-slot>header b{font-size:14px;line-height:1.6}.sem-slot-score{font-size:22px!important;flex-shrink:0}.sem-slot>header .sem-pending{font-size:11px;max-width:115px}.sem-slot-groups h4>span{display:block;margin:4px 0 0}.sem-student{padding:14px}.sem-student b{font-size:14px}.sem-student-total{font-size:21px}.sem-student-total small{font-size:10px}.sem-publish{padding:15px}.sem-rubric-read li{font-size:12px}.sem-student-view{padding-top:20px}}@media(prefers-reduced-motion:reduce){.sem-student{transition:none}}@media(max-width:420px){.sem-tabs{width:100%;gap:2px}.sem-tabs button{padding:10px 8px;font-size:12px;flex:1;overflow-wrap:anywhere}}.sem-journal-tabs{display:flex!important;flex-wrap:wrap;gap:8px}.sem-journal-tabs>.btn{flex:1;min-width:150px;width:auto!important}.sem-results-tabs{display:flex!important;gap:8px}.sem-results-tabs>.btn{flex:1;width:auto!important}.sem-student-view{padding-top:0;margin-top:0;border-top:0}@media(max-width:650px){.sem-results-tabs>.btn{font-size:12px;padding:10px 8px}}.sk-teaching{min-width:0}.sk-teaching-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.sk-teaching-head p{margin:6px 0 0}.sk-teaching-head>.sk-btn{flex-shrink:0}@media(max-width:599px){.sk-thome .sk-quick{display:flex;margin:0;padding:0;overflow:visible}.sk-thome .sk-quick>.sk-btn:not(.sk-choose-assignment){display:none}.sk-thome .sk-quick>.sk-choose-assignment{width:100%;min-height:48px}}.sk-teaching-modules{display:flex;gap:8px;overflow:auto;overscroll-behavior-x:contain;padding:2px 2px 10px;scrollbar-width:thin}.sk-teaching-modules>button{flex:0 0 190px;min-height:88px;display:grid;grid-template-columns:26px minmax(0,1fr);-moz-column-gap:9px;column-gap:9px;row-gap:4px;align-content:center;text-align:left;padding:12px;border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:var(--sk-surface);color:var(--sk-text-2);font:inherit;cursor:pointer;transition:background var(--sk-dur-2),border-color var(--sk-dur-2)}.sk-teaching-modules>button>span{grid-row:span 2;display:grid;place-items:center;align-self:start;width:26px;height:26px;border:1px solid var(--sk-line);border-radius:50%;font-size:12px;color:var(--sk-text-3)}.sk-teaching-modules b{font-size:12px;line-height:1.45;font-weight:600}.sk-teaching-modules small{font-size:10px;color:var(--sk-text-3)}.sk-teaching-modules>button:hover{border-color:var(--sk-line-strong)}.sk-teaching-modules>button[aria-pressed=true]{border-color:var(--sk-accent);background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-teaching-modules>button[aria-pressed=true]>span{border-color:var(--sk-accent);color:var(--sk-accent-text)}.sk-teaching-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 14px}.sk-teaching-tools>label{position:relative;display:flex;align-items:center;width:min(100%,420px)}.sk-teaching-tools>label>svg{position:absolute;left:13px;color:var(--sk-text-3)}.sk-teaching-tools .sk-input{padding-left:40px;padding-right:44px;min-height:44px}.sk-teaching-tools .sk-icon-btn{position:absolute;right:2px;min-width:40px;min-height:40px}.sk-teaching-tools>span{font-size:12px;text-align:right}.sk-teaching-list{border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);overflow:hidden;background:var(--sk-surface)}.sk-teaching-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px}.sk-teaching-row+.sk-teaching-row{border-top:1px solid var(--sk-line)}.sk-teaching-no{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--sk-line);border-radius:10px;color:var(--sk-text-3);font-size:12px;font-variant-numeric:tabular-nums}.sk-teaching-topic{min-width:0}.sk-teaching-topic h3{font-size:14px;line-height:1.5;overflow-wrap:anywhere;margin:0;font-weight:600}.sk-teaching-topic p{margin:4px 0 0;color:var(--sk-text-3);font-size:11px;line-height:1.6}.sk-teaching-actions{display:flex;align-items:center;gap:6px}.sk-teaching-actions .sk-btn{min-height:44px;padding-inline:12px;white-space:nowrap}.sk-teaching-actions>.sk-hint{display:flex;gap:5px}.sk-teaching-note{margin:14px 0 0;max-width:760px;line-height:1.7}@media(max-width:700px){.sk-teaching-head{align-items:flex-start}.sk-teaching-head .sk-h2{font-size:20px}.sk-teaching-head p{font-size:12px}.sk-teaching-head>.sk-btn{font-size:11px;padding:8px;min-height:44px}.sk-teaching-modules>button{flex-basis:170px;min-height:84px}.sk-teaching-tools{display:block}.sk-teaching-tools>label{width:100%}.sk-teaching-tools>span{display:block;text-align:left;margin-top:8px}.sk-teaching-row{grid-template-columns:30px minmax(0,1fr);gap:8px 10px;padding:14px 12px}.sk-teaching-no{width:28px;height:28px}.sk-teaching-actions{grid-column:2;flex-wrap:wrap}.sk-teaching-actions .sk-btn{padding-inline:10px}.sk-teaching-topic h3{font-size:14px}}.sk-teaching-modules>button[aria-pressed=true]{border-color:var(--sk-nav);color:var(--sk-nav);background:var(--sk-nav-soft)}.sk-teaching-modules>button[aria-pressed=true]>span{border-color:var(--sk-nav);color:var(--sk-nav)}.sk-teaching-row.kd-topic-project{border-left:3px solid var(--sk-project);background:color-mix(in srgb,var(--sk-project-soft) 50%,var(--sk-surface))}.sk-teaching-row.kd-topic-project h3{color:var(--sk-project)}.sk-work-grade{font-size:12px;font-weight:650;padding:5px 9px;border-radius:8px;color:var(--sk-text);background:var(--sk-surface-2);white-space:nowrap}.sk-work-scope{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:18px;background:var(--sk-surface);border:1px solid var(--sk-line);border-radius:16px;margin-bottom:16px}.sk-work-scope>label:not(.sk-required-toggle){display:grid;gap:7px;font-size:12px;color:var(--sk-text-3);min-width:160px;max-width:320px;flex:1}.sk-work-scope select{width:100%;padding:10px 34px 10px 12px;min-height:44px;border:1px solid var(--sk-line-strong);border-radius:9px;background:var(--sk-surface-2);color:var(--sk-text);font:14px var(--sk-font)}.sk-required-toggle{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--sk-text-2);min-height:44px;padding-top:19px;cursor:pointer}.sk-required-toggle input{width:18px;height:18px;accent-color:var(--sk-accent)}.sk-work-scope>.sk-link{font-size:12px;padding-top:19px}.sk-work-scope :is(input,select,button):focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:3px}.sk-obligations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--sk-line);border-radius:16px;margin-bottom:20px;padding:18px;background:var(--sk-surface)}.sk-obligations>div{display:flex;flex-direction:column;gap:6px;padding:0 18px;border-left:1px solid var(--sk-line);min-width:0}.sk-obligations>div:first-child{border:0;padding-left:0}.sk-obligations span{font-size:12px;color:var(--sk-text-3)}.sk-obligations strong{font-size:25px;font-weight:650;color:var(--sk-text);line-height:1.3}.sk-obligations small{font-size:12px;color:var(--sk-text-3)}.sk-obligations .has-debt strong{color:var(--sk-danger)}.sk-obligations>div:only-child{grid-column:1/-1}.sk-work-next{font-size:12px;color:var(--sk-accent-text);font-weight:550;white-space:nowrap}:is(.sk-homework,.sk-lesson-works) .sk-row-end{flex-wrap:wrap;justify-content:flex-end;max-width:230px}.sk-homework>details>summary{font-size:14px;cursor:pointer;color:var(--sk-text-2)}@media(max-width:600px){.sk-work-scope{gap:12px;padding:14px}.sk-work-scope>label:not(.sk-required-toggle){min-width:100%;max-width:none}.sk-required-toggle{padding-top:0}.sk-work-scope>.sk-link{padding:0}.sk-obligations{padding:14px;gap:10px}.sk-obligations>div{padding:0 0 0 10px;gap:7px}.sk-obligations strong{font-size:22px}.sk-obligations small{font-size:10px;line-height:1.5}.sk-obligations span{font-size:11px;line-height:1.4;min-height:30px}.sk-work-next{font-size:11px}:is(.sk-homework,.sk-lesson-works) .sk-row-end{flex-direction:column;align-items:flex-end;gap:6px;max-width:90px}:is(.sk-homework,.sk-lesson-works) .sk-row-end>.sk-chevron{display:none}}.sk-notice-trigger{position:relative;min-width:44px;min-height:44px}.sk-notice-trigger>span{position:absolute;right:-3px;top:-3px;padding:1px 4px;min-width:17px;border-radius:8px;border:2px solid var(--sk-surface);background:var(--sk-accent);color:var(--sk-text-on-accent);font-size:9px;font-weight:750;line-height:13px}.sk-notifications{min-width:0}.sk-notifications>header{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:16px 16px 10px}.sk-notifications h2{font-size:19px;margin:0}.sk-notifications header p{font-size:11px;color:var(--sk-text-3);margin:4px 0 0}.sk-notice-tools{display:flex;justify-content:space-between;gap:12px;padding:0 16px 12px;border-bottom:1px solid var(--sk-line)}.sk-notice-tools button{display:flex;align-items:center;gap:5px;min-height:34px;font-size:11px}.sk-notifications ul{list-style:none;margin:0;padding:0;max-height:min(420px,55dvh);overflow:auto}.sk-notice-item{display:grid;grid-template-columns:34px minmax(0,1fr) 14px;gap:10px;align-items:start;position:relative;padding:14px 16px;border-bottom:1px solid var(--sk-line);color:var(--sk-text);text-decoration:none}.sk-notice-item:hover{background:var(--sk-surface-2)}.sk-notice-item.is-unread{background:var(--sk-accent-soft)}.sk-notice-icon{width:32px;height:32px;border-radius:9px;background:var(--sk-surface-2);color:var(--sk-accent-text);display:grid;place-items:center}.t-returned .sk-notice-icon{color:var(--sk-warning);background:var(--sk-warning-soft)}.t-graded .sk-notice-icon{color:var(--sk-success);background:var(--sk-success-soft)}.sk-notice-item b{font-size:12px;line-height:1.5}.sk-notice-detail{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--sk-text-2);font-size:11px;line-height:1.7;margin-top:4px;overflow-wrap:anywhere}.sk-notice-go{margin-top:7px;color:var(--sk-text-3)}.sk-notice-dot{position:absolute;left:5px;top:21px;width:4px;height:4px;border-radius:50%;background:var(--sk-accent)}.sk-notice-empty,.sk-notice-error{padding:14px 16px;font-size:12px;color:var(--sk-text-2);line-height:1.7;margin:0}.sk-notice-error{color:var(--sk-warning)}.sk-notifications>footer{display:grid;gap:7px;padding:13px 16px}.sk-notifications footer a{font-size:12px;display:flex;justify-content:space-between;align-items:center;color:var(--sk-accent-text);text-decoration:none}.sk-notifications footer small{font-size:9px;color:var(--sk-text-3)}@media(max-width:899px){.sk-sheet:has(.sk-notifications){padding:0}.sk-notice-tools button{min-height:44px;font-size:12px}.sk-notice-item{padding:16px}.sk-notice-item b{font-size:13px}.sk-notice-detail{font-size:12px}.sk-notifications ul{max-height:50dvh}.sk-notifications>header{padding-top:20px}.sk-notifications footer small{font-size:10px}}.web-lab-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.web-lab .web-code{display:block;box-sizing:border-box;width:100%;min-height:320px;margin:16px 0;padding:16px;resize:vertical;font:14px/1.65 var(--font-mono,monospace);white-space:pre;-moz-tab-size:2;-o-tab-size:2;tab-size:2;border-radius:12px;background:var(--sk-bg);color:var(--sk-text);border:1px solid var(--sk-line)}.web-preview{min-width:0}.web-preview iframe{display:block;width:100%;height:360px;border:1px solid var(--sk-line);border-radius:12px;margin-top:16px;background:#fff}.web-console{margin-top:12px;padding:12px;max-height:160px;overflow:auto;background:var(--sk-bg);border-radius:10px;font:13px/1.5 monospace;overflow-wrap:anywhere}.web-lab input[type=file]{max-width:210px}.web-lab textarea:focus-visible{outline:3px solid var(--sk-accent);outline-offset:2px}@media(max-width:850px){.web-lab-layout{grid-template-columns:minmax(0,1fr)}.web-lab .web-code{min-height:230px}}.web-lab label.sk-btn{white-space:normal;flex-wrap:wrap;max-width:100%;min-width:0}.web-lab input[type=file]{width:210px;max-width:100%;min-width:0}.pc-layout{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);gap:20px}.pc-parts{display:grid;gap:8px;margin-top:12px}.pc-parts>.sk-btn{display:grid;justify-items:start;text-align:left;white-space:normal;padding:12px}.pc-parts small{font-weight:400;font-size:12px;line-height:1.5}.pc-toolbar{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}.pc-toolbar label{display:grid;gap:6px}.pc-workspace{min-width:0}.pc-perspective{perspective:1100px;min-height:380px;display:grid;place-items:center;padding:28px 10px;overflow:hidden}.pc-board{position:relative;width:min(100%,600px);aspect-ratio:600/440;transform-style:preserve-3d;transform:scale(var(--zoom)) rotateX(var(--tilt)) rotate(var(--yaw));background:#185a52;border:9px solid #123b39;border-radius:14px;color:#9bdab4;box-shadow:0 22px 35px #0003}.pc-board>svg{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.pc-board-edge{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b2927;transform:translateZ(-12px);border-radius:8px;box-shadow:0 8px #092321}.pc-socket{position:absolute;transform:translate(-50%,-50%) translateZ(8px);display:grid;gap:2px;min-width:70px;min-height:48px;padding:7px;border:2px dashed #e4efbd;border-radius:7px;background:#173431;color:#f5ffe7;font-size:12px;cursor:pointer;box-shadow:0 5px #081b19}.pc-socket small{font-size:10px}.pc-socket.is-filled{transform:translate(-50%,-50%) translateZ(24px);border-style:solid;background:#e1d5ff;color:#182f33;box-shadow:0 12px #827099}.pc-socket:focus-visible{outline:4px solid #ffe780;outline-offset:3px}.pc-feedback{min-height:54px;padding:12px;background:var(--sk-accent-soft);border-radius:12px}.pc-lab select{max-width:100%;padding:10px;border:1px solid var(--sk-line);border-radius:8px;color:var(--sk-text);background:var(--sk-surface)}@media(max-width:850px){.pc-layout{grid-template-columns:minmax(0,1fr)}.pc-parts{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-workspace{order:-1}.pc-perspective{min-height:260px;padding:15px 0}.pc-socket{min-width:54px;font-size:10px;padding:4px;min-height:44px}.pc-socket small{font-size:9px}.pc-toolbar label{width:calc(50% - 12px)}}.scene-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px}.scene-layout>.sk-card{min-width:0}.scene-board{display:block;width:100%;height:auto;margin:20px 0;border:1px solid var(--sk-line);border-radius:12px}.scene-message{font-weight:650;overflow-wrap:anywhere}.csharp-scene .native-runner{margin-top:16px}.csharp-scene .mobile-code-editor textarea{min-height:300px}@media(max-width:850px){.scene-layout{grid-template-columns:minmax(0,1fr)}.scene-layout>.sk-card:last-child{order:-1}.csharp-scene .mobile-code-editor textarea{min-height:240px}}.git-course{max-width:1160px;margin:auto}.git-progress,.git-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0}.git-progress label{display:grid;gap:6px;max-width:70%}.git-course select,.git-course input:not([type=checkbox]){max-width:100%;padding:10px;border:1px solid var(--sk-border,#b2b9ca);border-radius:10px;background:var(--sk-surface,#fff);color:inherit;font:inherit}.git-step>p{max-width:82ch;line-height:1.65}.git-command{margin:20px 0;border-left:3px solid var(--sk-accent,#674cd2);padding:4px 16px}.git-command pre,.git-code,.git-flow pre{overflow-wrap:anywhere;white-space:pre-wrap;padding:12px;border-radius:10px;background:var(--sk-bg,#f0edf8);color:inherit;line-height:1.6;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.git-command p{margin:6px 0}.git-command small{display:block;line-height:1.6}.git-flow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.git-flow>section{min-width:0;border:1px solid var(--sk-border,#b2b9ca);border-radius:14px;padding:14px}.git-flow label{display:grid;gap:7px}.git-flow button,.git-flow li{margin:10px 0}.git-flow ol{padding-left:22px}.git-flow small{display:block;margin-top:8px}.git-question{padding:14px 0;border-bottom:1px solid var(--sk-border,#b2b9ca)}.git-question summary{font-weight:600;cursor:pointer}.git-course details>summary{cursor:pointer}.git-course .sk-actions{flex-wrap:wrap;gap:10px}.git-course .sk-gap{margin-top:24px}.git-course .git-code{font-family:ui-monospace,monospace;font-size:.92rem}.git-course .sk-btn{min-height:44px}.git-step{animation:git-arrive .25s ease-out}@keyframes git-arrive{0%{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.git-flow{grid-template-columns:1fr}.git-progress{display:grid}.git-progress label{max-width:100%}.git-course .sk-h1{font-size:2rem}.git-step{padding:18px}.git-command{padding-left:10px;margin-left:0}.git-flow ol{max-height:300px;overflow:auto}}@media(prefers-reduced-motion:reduce){.git-step{animation:none}}@media print{.git-pagination,.git-progress,.git-course button{display:none}.git-flow{display:block}.git-course{max-width:none}}.reaction-course{max-width:1160px;margin:auto}.reaction-wiring{display:block;width:100%;max-width:980px;height:auto;border-radius:14px;margin:20px auto;background:#faf8ff}.reaction-course .sk-actions{display:flex;flex-wrap:wrap;gap:12px}.reaction-course .sk-gap{margin-top:24px}.reaction-course details>summary{cursor:pointer;font-weight:650;padding:8px 0}.reaction-table{overflow:auto;max-width:100%}.reaction-table table{border-collapse:collapse;min-width:540px;width:100%;margin:20px 0}.reaction-table th,.reaction-table td{text-align:left;padding:10px;border-bottom:1px solid var(--sk-line)}.reaction-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px}.reaction-compare section{min-width:0}.reaction-compare pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--sk-bg);padding:16px;border-radius:12px}.reaction-course select{max-width:100%;padding:10px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface);color:inherit;font:inherit}.reaction-course p{line-height:1.65;max-width:85ch}.reaction-course .git-progress{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.reaction-course .git-progress label{display:grid;gap:6px}.reaction-course .git-pagination{display:flex;justify-content:space-between;gap:20px;margin:20px 0}@media(max-width:760px){.reaction-compare{grid-template-columns:1fr}.reaction-course .git-progress{display:grid}.reaction-course .sk-h1{font-size:2rem}}.electronics-editor{max-width:1540px;margin:auto}.electronics-editor:fullscreen{padding:24px;overflow:auto;background:var(--sk-bg);color:var(--sk-text)}.electronics-editor .sk-gap{margin-top:20px}.electronics-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:22px 0}.electronics-toolbar label{display:grid;gap:5px;font-size:.85rem}.electronics-toolbar select,.electronics-editor input:not([type=color]),.electronics-editor select{max-width:100%;padding:9px;border:1px solid var(--sk-line);border-radius:9px;background:var(--sk-surface);color:inherit;font:inherit}.electronics-toolbar input[type=color]{width:70px;height:40px;padding:2px;border:1px solid var(--sk-line);border-radius:8px;background:var(--sk-surface)}.electronics-layout{display:grid;grid-template-columns:180px minmax(0,1fr) 350px;gap:16px;align-items:start}.electronics-library{display:grid;gap:12px;padding:14px}.electronics-library h2,.electronics-code h2{font-size:1.05rem;margin:0 0 10px}.electronics-library .sk-btn{justify-content:start;text-align:left;min-height:44px;font-size:.85rem;padding:10px}.electronics-center{min-width:0}.electronics-canvas{padding:0;overflow:hidden;background:var(--sk-surface-2)}.electronics-canvas svg{display:block;width:100%;height:570px;touch-action:none}.electronics-part{fill:var(--sk-surface);stroke:var(--sk-line-strong);stroke-width:2;cursor:grab}.electronics-part.is-selected{stroke:var(--sk-accent-text);stroke-width:4}.electronics-part-name{font-size:13px;fill:var(--sk-text);font-weight:650;pointer-events:none}.electronics-pin-text{font-size:11px;fill:var(--sk-text);pointer-events:none}.electronics-pin{fill:var(--sk-surface);stroke:var(--sk-accent-text);stroke-width:2;cursor:crosshair}.electronics-pin.is-from{fill:var(--sk-accent-text);stroke:var(--sk-text)}.electronics-display{fill:#19352d}.electronics-button-inside{fill:none;stroke:var(--sk-text-2);stroke-width:2}.electronics-wire-hit{fill:none;stroke:transparent;stroke-width:14;cursor:pointer}.electronics-canvas svg [tabindex]:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:5px}.electronics-status{min-height:45px;margin:14px 0;line-height:1.5}.electronics-code{padding:16px;min-width:0}.electronics-editor .sk-actions{display:flex;flex-wrap:wrap;gap:10px}.electronics-code .sk-btn{font-size:.85rem;padding:8px 12px}.electronics-code textarea{width:100%;max-width:100%;font:14px/1.5 ui-monospace,monospace;padding:10px;color:inherit;background:var(--sk-bg);border:1px solid var(--sk-line)}.electronics-center .sk-card label{display:grid;gap:5px;margin-top:12px}.electronics-cpp{min-width:0;max-width:100%;border:1px solid var(--sk-line);border-radius:10px;overflow:hidden}.electronics-editor .sk-alert li+li{margin-top:10px}@media(max-width:1180px){.electronics-layout{grid-template-columns:150px minmax(0,1fr)}.electronics-code{grid-column:1/-1}}@media(max-width:640px){.electronics-layout{grid-template-columns:minmax(0,1fr)}.electronics-library{display:flex;flex-wrap:wrap;gap:8px}.electronics-library h2,.electronics-library p{width:100%}.electronics-library .sk-btn{flex:1 1 140px}.electronics-code{grid-column:auto}.electronics-canvas svg{height:430px}.electronics-editor .sk-h1{font-size:2rem}.electronics-toolbar{gap:9px}.electronics-toolbar label:first-child{width:100%}.electronics-toolbar label input[type=range]{max-width:140px}}.electronics-connect{margin-bottom:12px;padding:16px}.electronics-connect summary{cursor:pointer;font-weight:650}.electronics-ports{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.electronics-ports label{display:grid;gap:5px;min-width:0}.electronics-ports select{width:100%;min-height:44px}.electronics-pan{margin:12px 0}.electronics-pan button{min-width:44px}@media(max-width:450px){.electronics-ports{grid-template-columns:1fr}}.avr-device h2{font-size:1.4rem}.avr-status{font-weight:600}.avr-instruments{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin:20px 0}.avr-instruments.is-stopped{opacity:.65}.avr-digits{background:#19352d;border-radius:6px;max-width:100%;pointer-events:none}.avr-digits path,.avr-digits circle{fill:#304b3e}.avr-digits .is-lit{fill:#a6f7bc}.avr-buttons{display:flex;flex-wrap:wrap;gap:12px}.avr-buttons .sk-btn{min-width:90px;min-height:55px;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avr-buttons .sk-btn:active{background:var(--sk-accent-soft)}.avr-serial pre,.avr-error{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--sk-bg);padding:14px;border-radius:12px;max-height:270px;overflow:auto;font:14px/1.6 ui-monospace,monospace}.avr-serial label{display:grid;gap:8px;margin:15px 0;max-width:450px}.electronics-led{fill:#513a3e;stroke:#a57b82;stroke-width:2}.electronics-led.is-lit{fill:#fd6378;filter:drop-shadow(0 0 6px #fd6378)}.avr-error{border:1px solid var(--sk-danger,#a94b60)}.avr-pin-states{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.avr-pin-states span{padding:5px 8px;border:1px solid var(--sk-line);border-radius:8px;font-size:.85rem}.solder-training{max-width:1200px;margin:auto}.solder-training>header p{max-width:80ch;line-height:1.6}.solder-training .sk-gap{margin-top:22px}.solder-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.solder-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;align-items:start}.solder-tools{display:grid;gap:10px;padding:15px}.solder-tools h2{font-size:1.1rem;margin:0 0 8px}.solder-tools .sk-btn{justify-content:start;text-align:left}.solder-work{min-width:0}.solder-scroll{overflow:auto;max-width:100%;border:1px solid var(--sk-line);border-radius:16px;background:var(--sk-surface-2)}.solder-board{box-sizing:content-box;position:relative;width:620px;height:420px;background:#d5c9ad;border:12px solid #a59a80;border-radius:16px;color:#342e20}.solder-board.is-back{background:#bca47d}.solder-board>svg{position:absolute;top:0;right:0;bottom:0;left:0;width:620px;height:420px;pointer-events:none;overflow:visible}.solder-board svg text{fill:#342e20;font:12px system-ui,sans-serif}.solder-pad{position:absolute;width:44px;height:44px;border:0;background:transparent;padding:0;cursor:pointer;color:#342e20;border-radius:50%;z-index:2}.solder-pad:focus-visible{outline:3px solid #6441cd;outline-offset:2px}.solder-pad.is-selected{outline:3px solid #6441cd}.solder-pad-name{position:absolute;top:-3px;left:5px;right:5px;text-align:center;font:10px system-ui,sans-serif;pointer-events:none}.solder-pad-copper{position:absolute;top:11px;right:11px;bottom:11px;left:11px;display:flex;justify-content:center;align-items:center;border-radius:50%;background:#786746;border:5px solid #a9946a}.is-back .solder-pad-copper{background:#493f30;border-color:#d18a3a}.solder-lead{position:absolute;top:-6px;left:8px;width:3px;height:30px;background:#e3e5df;border:1px solid #787b79;z-index:3;pointer-events:none}.solder-lead.is-clipped{top:5px;height:9px}.solder-bead{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#fff,#8f9b9c);border:1px solid #6a7677;border-radius:40% 48% 40% 55%;z-index:2;pointer-events:none}.q-cold .solder-bead{background:#9a9e9c;border:2px dashed #616562;border-radius:30%}.q-hot .solder-bead{box-shadow:0 0 9px #efad4a}.solder-flux{position:absolute;width:27px;height:27px;border-radius:50%;border:2px solid #a2713988;left:8px;top:8px;pointer-events:none}.solder-resistor-leads{stroke:#777e7c;stroke-width:4}.solder-resistor-body{fill:#b87b4e;stroke:#68452d;stroke-width:2}.solder-bridge{stroke:#d4dfdc;stroke-width:12;stroke-linecap:round}.solder-iron path{stroke:#465970;stroke-width:13;stroke-linecap:round}.solder-iron circle{stroke:#c4722b;stroke-width:3;fill:none;stroke-dasharray:25 12;animation:solder-heat .8s linear infinite}.solder-feedback{padding:16px;background:var(--sk-accent-soft);border-radius:12px;line-height:1.6;min-height:60px}.solder-training select{display:block;max-width:100%;padding:10px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface);color:inherit;font:inherit;margin:10px 0}.solder-training .sk-actions{display:flex;flex-wrap:wrap;gap:12px}.solder-training details>summary{font-weight:650;cursor:pointer;padding:10px 0}.solder-training .sk-alert li+li{margin-top:8px}@keyframes solder-heat{to{stroke-dashoffset:-37}}@media(max-width:650px){.solder-layout{grid-template-columns:minmax(0,1fr)}.solder-tools{display:flex;flex-wrap:wrap;gap:8px}.solder-tools h2{width:100%}.solder-tools .sk-btn{flex:1 1 140px}.solder-training .sk-h1{font-size:2rem}}@media(prefers-reduced-motion:reduce){.solder-iron circle{animation:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.\!block{display:block!important}.block{display:block}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.p-1{padding:.25rem}.outline{outline-style:solid}.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)}.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)}:root{font-family:Avenir Next,Segoe UI,Arial,sans-serif;font-synthesis:none;color:#262336;background:#f8f6f1;--ink: #262336;--purple: #7044df;--border: #e3dfd7;--muted: #77727f}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus,textarea:focus{outline:3px solid #b6a0f3;outline-offset:3px}input,textarea{color:var(--ink)}button{touch-action:manipulation}.site-shell{max-width:1380px;margin:0 auto;padding:0 58px}.local-preview{margin:10px 0;padding:10px 14px;border:1px solid #e8d8aa;border-radius:10px;background:#fff5db;color:#947641;font-size:11px;line-height:1.6}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:24px;font-weight:850;letter-spacing:-.9px;line-height:1}.wordmark small{display:block;color:#918b97;font-size:7px;letter-spacing:1.1px;margin-top:7px;font-weight:700}.logo-mark{background:var(--purple);border:2px solid var(--ink);color:#fff;width:45px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:13px;transform:rotate(-7deg);box-shadow:3px 3px #c7b3ed;font:800 26px/1 monospace;letter-spacing:-3px}.logo-mark span{color:#dbf291;font-size:23px}.purple{color:var(--purple)}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:650}.header-note{color:#7f7784;display:flex;gap:8px;align-items:center}.header-note i{width:7px;height:7px;background:#94b15f;border-radius:50%}.teacher-link{border:1px solid #d8d0e4;padding:12px 18px;border-radius:25px}.teacher-link span{margin-left:12px;color:var(--purple)}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:20px;padding:62px 0 32px;align-items:start}.eyebrow{display:flex;gap:9px;align-items:center;font-size:10px;font-weight:800;letter-spacing:1.3px;color:#7a688e;line-height:1.6}.live-dot{width:7px;height:7px;border-radius:50%;background:#a2c75f;box-shadow:0 0 0 4px #e9f1d9;margin:0 6px 0 4px}h1,h2,h3,p{margin-top:0}.hero-copy h1{position:relative;font-size:clamp(43px,4.4vw,67px);font-weight:850;line-height:1.08;letter-spacing:-3px;margin:24px 0 30px;width:-moz-fit-content;width:fit-content}.highlight{color:var(--purple)}.underline{width:54%;height:16px;display:block;position:absolute;right:-4px;bottom:-17px}.hero-description{font-size:16px;color:#736c7b;line-height:1.7;max-width:460px;margin-bottom:22px}.hero-facts{display:flex;gap:24px;font-size:12px;color:#8d8494;margin:28px 0}.hero-facts span{display:flex;align-items:baseline;gap:5px}.hero-facts b{font-size:23px;color:var(--ink);font-weight:800}.hero-facts span+span{border-left:1px solid #d9d1e2;padding-left:24px}.enter-card{background:#fff;border:1px solid #ddd6e9;border-radius:20px;padding:22px;box-shadow:0 7px #eeebf4;max-width:520px}.enter-heading{display:flex;gap:12px;align-items:center;margin-bottom:18px}.key-icon{width:38px;height:38px;display:grid;place-items:center;background:#f0eafa;border-radius:12px;color:var(--purple);font-size:27px;font-weight:700}.enter-heading h2{font-size:20px;font-weight:800;margin:0 0 3px;letter-spacing:-.4px}.enter-heading p{color:#817887;font-size:12px;margin:0}.code-entry{display:flex;gap:9px}.code-entry input{width:100%;min-width:0;border:1px solid #dcd5e7;background:#faf8fd;border-radius:10px;font:700 18px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;padding:13px;text-transform:uppercase}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:11px;border:1px solid transparent;padding:13px 20px;min-height:46px;font-size:13px;font-weight:750;transition:transform .15s,background .15s;white-space:nowrap}.btn:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--purple);color:#fff;box-shadow:0 3px #4b299a}.primary:hover:not(:disabled){background:#6035cd}.light{background:#fff;border-color:#dcd5e7;color:#61526e}.large{padding:16px 28px;font-size:15px}.small-btn{padding:8px 12px;min-height:36px;font-size:12px}.text-button{background:none;border:0;padding:7px 0;color:var(--purple);font-size:12px;font-weight:700}.enter-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:10px;color:#9a8ea4}.enter-bottom .text-button{font-size:11px}.recover-option{margin-top:8px;font-size:11px;color:#7e7387}.recover-option summary{width:-moz-fit-content;width:fit-content;cursor:pointer}.recover-option label{display:flex;align-items:flex-start;gap:8px;margin:10px 0}.recover-option p{line-height:1.5}.under-form{margin:18px 0 0;color:#9a92a0;font-size:11px;line-height:1.7}.hero-art{position:relative;padding-top:50px;min-width:0}.mascot{width:100%;height:auto;overflow:visible;display:block}.mascot.small{max-width:180px;margin:0 auto}.hero-art .mascot{transform:rotate(-2deg)}.float-label{position:absolute;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #ddd2e6;border-radius:11px;font-size:11px;padding:10px 15px;box-shadow:3px 4px #e4dced;z-index:1}.float-label span{color:var(--purple);font-size:16px;font-weight:800}.label-1{top:55px;left:50px;transform:rotate(-6deg)}.label-2{right:-7px;bottom:70px;transform:rotate(6deg)}.sticker{position:absolute;right:20px;top:25px;transform:rotate(9deg);font-size:10px;font-weight:750;line-height:1.5;letter-spacing:.7px;color:#8b75a6}.sticker svg{width:50px;height:30px;display:block}.route-section{padding:22px 0 65px}.route-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.route-heading h2{font-size:19px;font-weight:800;letter-spacing:-.4px;margin:0}.route-heading>span{color:#9a91a3;font-size:11px}.stage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stage-card{border-radius:16px;padding:21px;border:1px solid #e3dfd9}.tone-0,.mint{background:#e5eddd;color:#3b623e}.tone-1,.lavender{background:#ebe3f7;color:#72529a}.tone-2,.peach{background:#f6e5d8;color:#a26b42}.tone-3{background:#dfe9ef;color:#4d7489}.stage-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.stage-top>span{font-size:11px;opacity:.6}.stage-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:11px;background:#ffffff75}.stage-icon svg{width:35px;height:35px}.stage-card h3{font-size:15px;font-weight:800;color:#39323f;margin:0 0 8px}.stage-card p{font-size:10px;margin-bottom:16px;opacity:.85}.stage-card small{padding:4px 9px;background:#ffffff80;border-radius:7px;font-weight:650;font-size:10px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 32px;border-top:1px solid var(--border);color:#a49ba9;font-size:11px}.site-footer .wordmark{transform:scale(.7);transform-origin:left center;margin-right:-40px;opacity:.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.alert{border:1px solid #e7d1a1;background:#fff6df;border-radius:12px;padding:14px 18px;font-size:13px;line-height:1.6;margin:16px 0;overflow-wrap:anywhere}.alert.error{color:#9d403e;background:#fff0ec;border-color:#efc6bc}.panel{background:#fff;border:1px solid var(--border);border-radius:22px;padding:30px;margin:24px 0}.welcome-panel{display:grid;grid-template-columns:1.25fr 1fr;gap:30px;margin:50px 0 70px;padding:46px;align-items:center}.welcome-panel h1{font-size:38px;font-weight:800;letter-spacing:-1.3px;margin:16px 0 10px;overflow-wrap:anywhere}.lead{color:#84778c;font-size:15px;line-height:1.7}.start-rules{padding:0;margin:30px 0;list-style:none}.start-rules li{display:flex;gap:16px;margin:24px 0}.start-rules li>span{color:var(--purple);font-size:12px;font-weight:800;background:#f1ebfa;border-radius:9px;width:34px;height:34px;display:grid;place-items:center;flex:none}.start-rules b{font-size:13px}.start-rules p{font-size:12px;color:#9b8ca6;line-height:1.6;margin:5px 0 0}.welcome-panel .text-button{display:block;margin-top:18px}.welcome-art{position:relative}.tiny-card{margin:-15px auto 0;background:#e6eddc;border:1px solid #c7d5b1;border-radius:14px;max-width:230px;padding:14px 20px;display:flex;align-items:center;gap:15px}.tiny-card b{font-size:37px}.tiny-card span{font-size:11px;color:#6b785e;line-height:1.5}.student-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 14px;font-size:12px;color:#91859b}.student-heading b{color:var(--ink)}.quiz-status{display:flex;align-items:center;gap:20px;padding:19px 24px;background:#fff;border:1px solid var(--border);border-radius:16px;margin:20px 0 0}.pill-label{color:#9f8fac;font-size:8px;letter-spacing:1px;font-weight:800;display:block;margin-bottom:5px}.quiz-status b{font-size:13px}.quiz-progress{height:8px;border-radius:9px;background:#eee8f5;flex:1;overflow:hidden}.quiz-progress span{display:block;height:100%;background:#b8d572;border-radius:9px;transition:width .2s}.time-chip{padding:9px 15px;background:#f1eafa;border-radius:10px;font:700 18px/1.2 ui-monospace,Consolas,monospace;color:#705096;white-space:nowrap}.route-toggle{display:none}.save-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;color:#6f8865;font-size:11px;line-height:1.6}.save-banner b{display:block;color:#aa6d27;margin:5px 0;font-weight:650}.save-banner.warning{background:#fff1d8;border-radius:10px;margin-top:10px;color:#9c7134}.quiz-layout{display:grid;grid-template-columns:216px minmax(0,1fr);gap:28px;align-items:start;margin:12px 0 54px}.quiz-sidebar{background:#f0ece6;border:1px solid #e6e0d7;border-radius:17px;padding:20px 15px}.quiz-sidebar h3{font-size:13px;margin:0 0 20px;font-weight:800}.route-group{margin:17px 0}.route-title{display:flex;align-items:center;gap:7px;background:transparent;font-size:10px;font-weight:650}.route-title b{display:inline-flex;width:24px;height:24px;border:1px solid currentColor;align-items:center;justify-content:center;border-radius:6px;font:600 11px/1 monospace}.question-dots{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:9px 0}.question-dots button{border:1px solid #dfd7e4;border-radius:7px;background:#fffdf9;height:30px;font-size:11px;color:#95879f;padding:0}.question-dots button.current{color:var(--purple);border:2px solid var(--purple);background:#f0e9fc;font-weight:800}.question-dots button.answered{background:#dcebbd;border-color:#c8d9aa;color:#4f6746}.question-dots button.answered.current{border-color:var(--purple)}.sidebar-mascot .mascot{max-width:140px;margin:10px auto -7px}.sidebar-mascot p{font-size:10px;text-align:center;color:#9b8da2;line-height:1.6}.quiz-sidebar>.btn{width:100%;font-size:11px;padding:11px}.quiz-main{min-width:0}.question-card{background:#fff;border:1px solid var(--border);border-radius:21px;padding:32px}.question-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.question-meta>span:first-child{display:flex;align-items:center;gap:11px;font-size:11px;color:#8d7a9d}.question-meta .stage-icon{height:35px;width:35px;background:#ede7f4}.question-meta .stage-icon svg{height:27px;width:27px}.points{background:#f2edfa;color:#8667a6;border-radius:7px;padding:5px 9px;font-size:10px;font-weight:700}.question-card h1{font-size:30px;font-weight:800;letter-spacing:-.8px;line-height:1.2;margin:0 0 24px}.task-action{border-left:3px solid #b99ce9;padding:0 0 0 13px;margin-bottom:20px}.task-action>span{font-size:8px;font-weight:800;color:#a891bc;letter-spacing:1px}.task-action p{font-size:14px;font-weight:700;margin:6px 0 0}.task-copy{white-space:pre-line;color:#66556e;font-size:14px;line-height:1.8;margin:0 0 22px}.context-label{color:#9b8ca4;font-size:11px;margin:0 0 8px}.code-window{overflow:hidden;border-radius:13px;margin:16px 0 23px;border:1px solid #25253c;background:#222338;color:#e5dff1}.window-bar{background:#2c2b43;padding:10px 13px;display:flex;align-items:center;justify-content:space-between;color:#958ca8;font:10px/1.3 ui-monospace,Consolas,monospace;border-bottom:1px solid #3c374c}.window-dots{display:flex;gap:5px}.window-dots i{width:6px;height:6px;border-radius:50%;background:#ac697c}.window-dots i:nth-child(2){background:#c6ad70}.window-dots i:nth-child(3){background:#8db699}.code-scroll{overflow:auto;padding:18px 15px 20px 5px}.code-scroll pre{margin:0;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.code-line{display:flex;min-height:23px}.line-no{color:#655e7a;width:34px;flex:none;text-align:right;margin-right:19px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-line code{white-space:pre}.keyword{color:#c5a1f2}.string{color:#c0d89d}.number{color:#edbd92}.comment{color:#81798e}.expected{border:1px solid #d5e3cc;border-radius:12px;background:#f0f6ea;padding:18px 20px;margin:20px 0}.mini-tag{font-size:8px;font-weight:800;color:#859774;letter-spacing:1px}.expected pre{margin:12px 0 0;color:#496241;font:13px/1.7 ui-monospace,Consolas,monospace;white-space:pre-wrap}.options{padding:0;border:0;margin:28px 0 0}.options legend{font-size:11px;color:#9c8da8;margin-bottom:12px}.answer-option{display:flex;align-items:center;gap:12px;padding:14px;border-radius:11px;border:1px solid #e1dbe9;margin-bottom:9px;cursor:pointer;transition:background .15s}.answer-option input{position:absolute;opacity:0;width:1px;height:1px}.answer-option:focus-within{outline:3px solid #b8a5dc;outline-offset:2px}.answer-option:hover{background:#faf7fe}.answer-option.selected{border-color:#a281d1;background:#f1eafa}.option-letter{width:29px;height:29px;border-radius:8px;border:1px solid #e2dbe8;background:#faf7fd;display:grid;place-items:center;flex:none;font-size:12px;color:#9b85ac;font-weight:700}.selected .option-letter{background:var(--purple);color:#fff;border-color:var(--purple)}.option-text{flex:1;font-size:13px;line-height:1.6}.option-check{width:17px;font-size:15px;color:var(--purple)}.answer-field,.field{display:block;font-size:12px;font-weight:700;margin:20px 0;color:#665370}.answer-field>span{display:flex;align-items:center;gap:8px;margin:0 0 9px}.answer-field i{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;font-style:normal;font-family:monospace;background:#f1eafa;border-radius:7px;color:#9e82be}.answer-field textarea,.field textarea,.field input,.share-link input{width:100%;display:block;border:1px solid #d6cbe2;border-radius:11px;padding:14px;background:#fcfaff;resize:vertical;min-width:0;font-weight:400;line-height:1.7;font-size:14px;margin-top:8px}.answer-field textarea{font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;min-height:80px;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.answer-field textarea::-moz-placeholder{color:#b7a9c2}.answer-field textarea::placeholder{color:#b7a9c2}.answer-field small{display:block;color:#a697ae;font-weight:400;font-size:10px;line-height:1.6;margin-top:8px}.hint-box{background:#fcf9f0;border:1px solid #eee3c9;border-radius:11px;padding:13px 16px;color:#a68d5b;font-size:11px;margin-top:25px}.hint-box summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-weight:700}.hint-box p{color:#9c8a66;line-height:1.7;margin:12px 0 0}.quiz-bottom{display:flex;align-items:center;justify-content:space-between;padding:20px 0}.quiz-bottom>span{font-size:11px;color:#a496ad}.quiz-bottom .btn{min-width:110px}.modal-shade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:#221c3c80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:#fffdf9;border:1px solid #ddd4e7;border-radius:22px;padding:30px;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;box-shadow:0 30px 100px #19112730}.modal h2{font-size:28px;font-weight:800;letter-spacing:-.7px;margin:9px 0 14px}.modal p{font-size:13px;line-height:1.7;color:#93809e}.review-links{max-height:32vh;overflow-y:auto;margin:20px 0}.review-links button{border:0;width:100%;background:transparent;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:15px;padding:12px 5px;border-bottom:1px solid #eae3ef;color:#6c5a77;font-size:12px}.green-text{color:#779f53}.orange-text{color:#c8924d}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.result-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:center;padding:35px 40px;margin-top:42px}.result-hero h1{font-size:52px;font-weight:850;letter-spacing:-2px;margin:14px 0 20px}.result-hero .mascot{max-width:350px;margin:auto}.receipt{border-left:3px solid #b8d58b;padding-left:12px;display:flex;flex-direction:column;gap:4px;font-size:11px;color:#a091a9;margin-top:20px}.receipt b{color:#846d96;font:600 11px/1.7 monospace}.results-stats,.teacher-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stat-tile{border-radius:16px;border:1px solid #ffffff80;padding:23px}.stat-tile>span{font-size:11px;font-weight:700}.stat-tile strong{font-size:43px;font-weight:800;display:block;margin:12px 0;color:#4c3d5a;line-height:1.2;letter-spacing:-1px}.stat-tile strong span{font-size:15px;font-weight:500;letter-spacing:0;color:#967da6}.stat-tile small{font-size:10px;opacity:.8}.result-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 55px}.teacher-comment p{color:#776282;font-size:14px;line-height:1.7;margin:15px 0 0;white-space:pre-wrap}.my-answers h2{font-size:25px;font-weight:800}.my-answers details,.auto-detail{border-bottom:1px solid #e6deed;padding:14px 0}.my-answers summary,.auto-detail summary{cursor:pointer;font-size:13px;font-weight:700;line-height:1.7}.my-answers .badge{float:right}.my-answers .task-copy{margin-top:18px}.answer-review,.student-answer{padding:15px;border-radius:10px;background:#f5f0fa;margin:14px 0;font-size:12px}.answer-review pre,.student-answer pre,.auto-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0;font:12px/1.7 ui-monospace,Consolas,monospace;color:#745f84}.explanation{border-radius:10px;background:#eef4e5;padding:16px;color:#6d815c;font-size:12px;line-height:1.7}.explanation pre{white-space:pre-wrap}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.confetti i{--x: calc(var(--i) * 8%);width:7px;height:13px;border-radius:2px;background:#c0d490;position:absolute;top:12px;left:var(--x);transform:rotate(calc(var(--i) * 27deg));opacity:.65}.confetti i:nth-child(2n){background:#d3b7ef;top:27px}.confetti i:nth-child(3n){background:#f4caac;top:44px}.demo-banner{display:flex;align-items:center;gap:12px;font-size:11px;background:#eee7f8;border-color:#d9c9ed;color:#7c629a}.demo-banner .text-button{margin-left:auto;white-space:nowrap}.demo-done{text-align:center;padding:45px 25px}.demo-done>.eyebrow{justify-content:center}.demo-done h1{font-size:33px;font-weight:800;letter-spacing:-1px;margin-top:20px}.demo-done p{font-size:14px;color:#8d7d98;line-height:1.8}.teacher-login{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;min-height:650px;padding:50px 30px}.teacher-login h1{font-size:56px;line-height:1.1;font-weight:850;letter-spacing:-2px;margin:24px 0}.teacher-login p{font-size:16px;line-height:1.8;color:#95869f;max-width:450px}.teacher-login .small-muted{font-size:11px;margin-top:22px}.small-muted{color:#9b8aa5;font-size:11px;line-height:1.8}.loading-card{padding:80px 20px;color:#8a7698;text-align:center;font-size:15px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:35px;margin-bottom:25px}.page-heading h1{font-size:36px;line-height:1.2;font-weight:850;letter-spacing:-1px;margin:9px 0}.page-heading p{font-size:11px;color:#a393ae;margin:0}.teacher-main{padding-bottom:45px}.teacher-stats{margin:22px 0}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.panel-heading h2{font-size:22px;font-weight:800;letter-spacing:-.5px;margin:0}.panel-heading p{margin:8px 0 0}.icon-button{width:33px;height:33px;display:grid;place-items:center;border:1px solid #ded3e7;color:#9f86b0;background:#fcf9ff;border-radius:9px;font-size:18px;flex:none}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.class-row{width:100%;border:0;border-bottom:1px solid #e9e0ef;padding:20px 0;display:flex;align-items:center;gap:15px;background:#fff;text-align:left}.class-row>span:nth-child(2){flex:1}.class-row b{font-size:13px;color:#685574}.class-row small{display:block;font-size:10px;color:#aa9ab4;margin-top:6px}.class-icon{display:grid;place-items:center;width:40px;height:43px;border-radius:10px;background:#eee5f9;color:#9672b3;font:15px/1 monospace;flex:none}.badge{display:inline-block;background:#eee6f7;color:#9a7bb1;padding:5px 10px;font-size:10px;font-weight:650;border-radius:20px;white-space:nowrap}.badge.green{background:#e8f0dd;color:#6c8e52}.empty-state{text-align:center;padding:20px 0 35px;color:#a28fae;font-size:13px;line-height:1.8}.empty-state h3{font-size:17px;font-weight:750;color:#80678e;margin:12px 0}.lesson-toolbar{display:flex;justify-content:space-between;align-items:center;margin:25px 0;gap:15px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:13px 12px;background:#f8f4fc;color:#a08bad;text-transform:uppercase;font-size:8px;letter-spacing:.5px;text-align:left;font-weight:800}td{padding:16px 12px;border-bottom:1px solid #eee5f3;color:#8b729a;vertical-align:middle}td b{color:#685274}td small{display:block;font-size:9px;margin-top:5px;color:#b09cba}.status-pill{padding:4px 8px;border-radius:6px;font-size:9px;white-space:nowrap;background:#f3edf6;color:#aa95b4}.status-pill.active{background:#fff1d5;color:#bd9650}.status-pill.submitted{background:#e5efdd;color:#7b9a65}.export-actions{margin-top:24px}.red{color:#bb7775;margin-left:auto}.score-chip{padding:12px 20px;border-radius:12px;color:#8b6ca3;background:#eee5f7;font-size:14px;font-weight:750}.manual-task{margin-top:25px;padding:22px;background:#fcf9ff;border:1px solid #e4d8ed;border-radius:15px}.manual-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.manual-heading h3{font-size:17px;font-weight:750;letter-spacing:-.3px;margin:0}.manual-heading label{font-size:10px;color:#a387b5;text-align:right;white-space:nowrap}.manual-heading input{display:block;width:72px;padding:8px;background:#fff;border:1px solid #d4c2e1;border-radius:8px;margin-top:5px;text-align:center;font-weight:700;font-size:16px}.manual-task>details{margin:16px 0;font-size:11px;color:#a18bad}.manual-task summary{cursor:pointer}.manual-task .task-copy{margin-top:14px}.review-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:25px}.review-columns h4{font-size:12px;color:#9376a5;margin:12px 0}.rubric-row{display:flex;align-items:flex-start;gap:9px;padding:9px 0;border-bottom:1px solid #e8dbf0;font-size:11px;line-height:1.7;color:#9c83ad}.rubric-row input{accent-color:var(--purple);flex:none;margin-top:4px}.rubric-row span{flex:1}.solution summary{font-size:11px;color:#a18bad;cursor:pointer;padding:12px 0}.review-panel>.field{margin-top:28px}.codes-modal{max-width:780px}.share-link{display:flex;gap:10px;margin:16px 0}.share-link input{margin:0;font-size:11px}.print-area h2{font-size:21px;font-weight:800;margin:30px 0 12px}.print-area p{font-size:11px;overflow-wrap:anywhere}.access-code{font:800 16px/1.4 ui-monospace,Consolas,monospace;letter-spacing:1.7px;color:#795096}.codes-modal>.button-row{margin-top:22px}@media(min-width:1500px){.hero-copy h1{font-size:70px}}@media(max-width:1100px){.site-shell{padding:0 30px}.hero-copy h1{font-size:51px}.hero-grid{gap:0}.label-1{left:0}.hero-art{padding-top:80px}.code-entry{flex-direction:column}.code-entry .btn{width:100%}.stage-card{padding:17px}.stage-card h3{font-size:13px}.stage-card p{font-size:9px}.quiz-layout{grid-template-columns:185px minmax(0,1fr);gap:18px}.question-card{padding:25px}.question-dots{grid-template-columns:repeat(4,1fr)}.welcome-panel{padding:30px}.review-columns{grid-template-columns:1fr}.teacher-login h1{font-size:43px}}@media(max-width:760px){.site-shell{padding:0 18px}.site-header{height:80px}.wordmark{font-size:20px;gap:8px}.wordmark small{font-size:5px;letter-spacing:.8px}.logo-mark{width:36px;height:36px;font-size:23px;border-radius:10px}.logo-mark span{font-size:20px}.site-header nav{gap:0}.header-note{display:none}.teacher-link{font-size:10px;border:0;padding:10px 0 10px 10px}.teacher-link span{margin-left:4px}.hero-grid{display:flex;flex-direction:column;padding-top:32px}.eyebrow{font-size:8px;letter-spacing:.8px}.hero-copy{width:100%}.hero-copy h1{font-size:43px;letter-spacing:-1.9px;margin:20px 0 32px}.hero-description{font-size:14px;line-height:1.8}.hero-facts{gap:16px;margin:22px 0;font-size:11px}.hero-facts span+span{padding-left:16px}.hero-facts b{font-size:24px}.enter-card{padding:19px;border-radius:17px}.enter-heading h2{font-size:20px}.enter-heading p{font-size:11px}.code-entry{flex-direction:column}.code-entry input{font-size:20px;padding:14px}.code-entry .btn{padding:15px;font-size:14px}.enter-bottom{gap:7px;font-size:9px}.enter-bottom .text-button,.under-form{font-size:10px}.hero-art{padding-top:10px;width:100%;max-width:390px;margin:0 auto}.hero-art .mascot{max-width:360px;margin:auto}.label-1{top:25px;left:16px;font-size:9px;padding:8px 12px}.label-2{bottom:28px;right:2px;font-size:9px;padding:8px 12px}.sticker{top:5px;right:8px;font-size:8px}.route-section{padding-top:0;padding-bottom:35px}.route-heading{align-items:flex-start;gap:12px}.route-heading h2{font-size:20px;line-height:1.4;max-width:250px}.route-heading>span{display:none}.stage-grid{grid-template-columns:1fr 1fr;gap:10px}.stage-card{padding:16px 13px;border-radius:14px}.stage-card h3{font-size:13px;line-height:1.4}.stage-card p{font-size:9px;line-height:1.5;min-height:27px;margin-bottom:12px}.stage-icon{width:35px;height:35px}.stage-icon svg{width:29px;height:29px}.stage-top{margin-bottom:14px}.stage-card small{font-size:9px}.site-footer{gap:10px;flex-wrap:wrap;padding:22px 0}.site-footer>span{font-size:8px}.site-footer>span:last-child{display:none}.site-footer .wordmark{transform:scale(.65)}.panel{padding:22px 18px;border-radius:17px}.welcome-panel{display:flex;flex-direction:column;gap:0;margin:28px 0 40px}.welcome-panel h1{font-size:30px;letter-spacing:-.8px}.lead{font-size:13px}.start-rules{margin:25px 0}.start-rules b{font-size:12px;line-height:1.6}.start-rules p{font-size:11px}.welcome-panel .btn{width:100%;font-size:13px}.welcome-art{max-width:280px;margin-top:10px}.tiny-card{display:none}.student-heading{font-size:10px;margin:18px 0 10px}.quiz-status{position:static;flex-wrap:wrap;gap:12px;padding:13px 15px;border-radius:13px;margin-top:14px}.pill-label{font-size:7px}.quiz-status b{font-size:11px}.quiz-progress{order:4;flex-basis:calc(100% - 90px);height:5px}.time-chip{margin-left:auto;font-size:16px;padding:8px 10px}.route-toggle{display:block;order:5;border:0;background:none;color:#9e80b4;font-size:9px;padding:4px 0}.save-banner{font-size:9px;padding:10px 3px;gap:10px;align-items:flex-start}.save-banner .text-button{font-size:9px;min-width:75px;text-align:right;padding:0}.quiz-layout{display:block;margin-top:6px;margin-bottom:30px}.quiz-sidebar{display:none;margin:0 0 16px;padding:16px}.quiz-sidebar.open{display:block}.quiz-sidebar .sidebar-mascot{display:none}.quiz-sidebar h3{margin-bottom:10px}.route-group{margin:12px 0}.question-dots{grid-template-columns:repeat(8,minmax(0,1fr))}.route-title{font-size:10px}.question-dots button{height:33px}.quiz-sidebar>.btn{margin-top:10px}.question-card{padding:21px 17px;border-radius:16px}.question-meta{margin-bottom:18px}.question-meta>span:first-child{font-size:10px;gap:8px}.points{font-size:9px}.question-card h1{font-size:25px;line-height:1.25;margin-bottom:23px}.task-action p{font-size:13px;line-height:1.6}.task-copy{font-size:13px;line-height:1.9}.context-label{font-size:10px;line-height:1.7}.code-scroll{padding:14px 9px 16px 2px}.code-scroll pre{font-size:11px}.line-no{width:22px;margin-right:12px}.code-line{min-height:21px}.window-bar{font-size:9px;padding:10px}.expected{padding:15px}.expected pre{font-size:12px}.mini-tag{font-size:7px;letter-spacing:.7px}.answer-option{gap:9px;padding:12px 10px;align-items:flex-start}.option-text{font-size:12px;line-height:1.7}.option-letter{width:25px;height:25px;font-size:11px}.option-check{width:12px}.answer-field{font-size:11px}.answer-field>span{line-height:1.7}.answer-field textarea{font-size:16px;padding:12px}.answer-field small{font-size:9px}.quiz-bottom{gap:10px}.quiz-bottom .btn{min-width:97px;font-size:12px;padding:12px 14px}.quiz-bottom>span{font-size:10px}.modal-shade{padding:12px}.modal{padding:23px 18px;max-height:92vh;border-radius:16px}.modal h2{font-size:25px}.modal p{font-size:12px}.modal .button-row .btn{flex:1;font-size:11px}.review-links{max-height:31vh}.review-links button{font-size:11px}.alert{padding:12px 14px;font-size:11px}.demo-banner{display:block;font-size:10px;margin:14px 0}.demo-banner>span{display:block;margin:6px 0}.demo-banner .text-button{font-size:10px}.result-hero{display:flex;flex-direction:column;padding:30px 22px 12px;margin-top:28px}.result-hero h1{font-size:39px;letter-spacing:-1px}.result-hero .mascot{max-width:250px}.results-stats,.teacher-stats{gap:8px}.stat-tile{padding:16px 12px;border-radius:12px}.stat-tile>span{font-size:8px;line-height:1.6;display:block;min-height:25px}.stat-tile strong{font-size:29px;margin:12px 0;letter-spacing:-.8px}.stat-tile strong span{font-size:10px}.stat-tile small{font-size:8px;line-height:1.6;display:block}.result-actions{gap:9px;margin-bottom:35px}.result-actions .btn{font-size:11px;padding:12px 13px;flex:1}.teacher-login{grid-template-columns:1fr;padding:38px 6px 30px;min-height:0;gap:10px}.teacher-login h1{font-size:43px}.teacher-login p{font-size:14px}.teacher-login .mascot{max-width:300px;margin:auto}.page-heading{align-items:flex-start;padding-top:27px;gap:12px;flex-direction:column}.page-heading h1{font-size:30px}.page-heading>.button-row{width:100%}.page-heading .btn{font-size:11px}.two-columns{grid-template-columns:1fr;gap:0}.panel-heading{gap:10px}.panel-heading h2{font-size:18px;line-height:1.4}.class-row{gap:10px}.class-row b{font-size:11px;line-height:1.6}.class-row small{font-size:8px;line-height:1.6}.class-icon{width:32px;height:36px}.badge{font-size:8px;padding:4px 7px}.lesson-toolbar{flex-direction:column;align-items:flex-start;margin:22px 0}.lesson-toolbar .button-row{width:100%}.lesson-toolbar .btn{flex:1;font-size:10px}.export-actions{gap:9px}.export-actions .btn{flex:1;font-size:10px;padding:11px}.export-actions .red{margin:5px 0}.manual-task{padding:15px}.manual-heading h3{font-size:14px;line-height:1.6}.manual-heading input{width:55px}.manual-heading label{font-size:9px}.manual-task .task-copy{font-size:11px}.student-answer{padding:12px;font-size:10px}.student-answer pre{font-size:10px}.review-columns{gap:9px}.rubric-row{font-size:10px}.score-chip{font-size:11px;padding:10px;white-space:nowrap}.share-link{flex-direction:column}.share-link input{font-size:10px}.access-code{font-size:13px;letter-spacing:.6px}.print-area h2{font-size:18px}td{padding:12px 8px}.codes-modal .button-row{flex-direction:column}.codes-modal .button-row .btn{width:100%}.demo-done h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{position:absolute;left:0;top:0;width:100%;color:#111}.print-area th,.print-area td{color:#111;background:#fff;border-bottom:1px dashed #999;padding:13px}.print-area .access-code{color:#111;font-size:16px}.print-area h2{font-size:22px}.modal-shade,.modal{position:static;overflow:visible;max-height:none;background:#fff;border:0;box-shadow:none;padding:0}.no-print{display:none!important}}.teacher-password-form{display:grid;gap:14px;max-width:390px;margin:24px 0}.teacher-password-form label{display:grid;gap:7px;font-size:14px;font-weight:700}.teacher-password-form input{min-width:0;width:100%;padding:13px 15px;border:1px solid #d5d0e6;border-radius:12px;background:#fff;color:#252238;font:inherit;font-size:16px}.teacher-password-form input:focus{outline:3px solid #dcd2ff;border-color:#7052dd}.teacher-password-form input[readonly]{background:#f5f3fb;color:#5c5675}.https-required{max-width:720px;margin:70px auto;padding:36px}.https-required .eyebrow{display:block;margin-top:44px}.https-required h1{font-size:clamp(32px,6vw,54px);line-height:1.1;margin:20px 0}.https-required p{line-height:1.65;margin-bottom:24px}.https-required .small-muted{margin-top:24px}.site-shell{min-height:100svh;display:flex;flex-direction:column}.page-content{flex:1;min-width:0}.site-header{height:90px;gap:24px}.wordmark{font-size:25px;letter-spacing:-1px}.logo-mark{font:35px/1 Segoe UI,sans-serif;letter-spacing:0;border:0;box-shadow:none;width:41px;height:41px;transform:none;border-radius:13px}.site-header .portal-tabs{display:flex;gap:5px;padding:5px;background:#ede9f0;border-radius:15px}.portal-tabs .tab-link{border:0;border-radius:10px;padding:12px 17px;color:#716a7b;font-size:13px;white-space:nowrap;transition:background .18s,color .18s,box-shadow .18s}.portal-tabs .tab-link.active{background:#fff;color:#3b2d5c;box-shadow:0 2px 5px #29203b09}.portal-tabs .tab-link:hover{background:#ffffff90;color:#5431a5}.portal-tabs .teacher-link span{margin-left:5px}.portal-screen{padding:28px 0 20px}.portal-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}.portal-heading h1{font-size:clamp(36px,4.5vw,60px);font-weight:820;letter-spacing:-2.8px;line-height:1.1;margin:13px 0}.portal-heading h1 span,.join-visual h1 span{color:var(--purple)}.portal-heading p{margin:0;color:#756f7e;font-size:16px}.portal-stamp{display:block;font-size:14px;line-height:1.65;color:#6c5a7d;transform:rotate(-6deg);padding:15px 21px;border:1px dashed #cdbedc;border-radius:50%}.portal-stamp b{font-weight:700}.catalog-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;color:#82788c;font-size:12px}.subject-pill{display:inline-flex;align-items:center;gap:8px;background:#eee7fa;border:1px solid #e4d9f3;color:#5c3d8b;padding:8px 13px;border-radius:30px;font-weight:700}.subject-pill i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8260c8}.work-card{display:grid;grid-template-columns:.78fr 1.22fr;border:1px solid #e0dbe5;border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 5px 24px #36214304}.work-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:#e7ddf8;padding:26px;min-height:300px}.work-art-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;color:#65478f;font:700 12px/1.4 ui-monospace,monospace}.work-art-top>span:last-child{font-size:32px;color:#9670d3}.work-symbol{align-self:center;position:relative;z-index:1;font:600 clamp(85px,10vw,145px) / 1 ui-monospace,monospace;letter-spacing:-14px;color:#6540ac;transform:rotate(-7deg);animation:symbol-float 6s ease-in-out infinite}.work-symbol>span{position:absolute;top:-20px;right:-32px;width:53px;height:53px;border:3px solid #e7ddf8;border-radius:50%;background:#d8ef9c;display:grid;place-items:center;color:#4a6531;font:32px/1 Segoe UI,sans-serif;letter-spacing:0}.work-art-bottom{position:relative;z-index:1;display:flex;gap:6px;flex-wrap:wrap}.work-art-bottom span{padding:6px 10px;border:1px solid #bda5d770;border-radius:20px;background:#ece4f9b0;font-size:11px;color:#725392}.art-orbit{position:absolute;width:104%;height:104%;top:0;left:-2%;fill:none;stroke:#c4aee2;stroke-width:1}.work-copy{padding:26px 32px 20px}.work-copy h2{font-size:clamp(23px,2.6vw,34px);font-weight:800;line-height:1.2;letter-spacing:-1px;margin:14px 0 12px}.work-copy>p{color:#7b7287;font-size:14px;line-height:1.7;margin-bottom:20px}.work-meta{display:flex;flex-wrap:wrap;gap:24px;color:#84768c;font-size:12px}.work-meta b{color:#43354f;font-size:18px;margin-right:3px}.work-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:18px}.work-actions .btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px}.work-actions .text-button{font-size:12px}.work-topics{margin-top:15px;border-top:1px solid #eee8f1;padding-top:13px;font-size:12px;color:#82728f}.work-topics summary{cursor:pointer;width:-moz-fit-content;width:fit-content}.work-topics p{line-height:1.8;margin:10px 0 0;max-width:500px}.catalog-footnote{display:flex;align-items:center;gap:7px;margin-top:22px;color:#83778c;font-size:12px}.catalog-footnote>span{font-size:19px;color:#ac94c5}.catalog-footnote a{color:#715298;text-decoration:underline;text-underline-offset:3px}.join-screen{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;max-width:1040px;padding:25px 0;margin:auto}.join-visual h1{font-size:clamp(38px,4.5vw,60px);line-height:1.1;letter-spacing:-2px;font-weight:820;margin:13px 0 0}.join-visual .mascot{width:100%;max-height:290px;margin:4px 0 -5px}.join-panel{border:1px solid #e0d8e9;border-radius:24px;background:#fff;padding:26px;box-shadow:0 8px #ede7f3;min-width:0}.join-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:20px;background:#f0e9fa;color:#7e51b6;font-size:28px;border-radius:13px}.join-panel h2{font-size:26px;font-weight:800;letter-spacing:-.8px;margin-bottom:8px}.join-panel>p{font-size:13px;color:#84758f;line-height:1.6;margin-bottom:24px}.join-code-label{display:block;font-size:12px;font-weight:700;color:#62566f;margin-bottom:8px}.join-code-input{display:block;width:100%;min-width:0;border-radius:12px;border:1px solid #dcd2e7;background:#faf8fe;padding:15px;color:#40304f;font:700 24px/1.3 ui-monospace,monospace;letter-spacing:4px}.join-code-input::-moz-placeholder{color:#b5a4c4}.join-code-input::placeholder{color:#b5a4c4}.join-identity-input{width:100%;min-width:0;border-radius:11px;border:1px solid #dcd2e7;background:#faf8fe;padding:12px;font-size:16px;color:#40304f}.join-field-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:12px;margin-top:16px}.join-field-grid>div{min-width:0}.join-field-grid .join-code-input{font-size:18px;padding:12px;letter-spacing:1.5px;line-height:1.5}.code-mode-fieldset{padding:0;border:0;margin:0 0 20px}.code-mode-fieldset legend{font-size:13px;font-weight:750;color:#806b95;margin-bottom:12px}.code-mode-options{display:flex;flex-wrap:wrap;gap:12px}.code-mode-options label{display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid #ded2eb;border-radius:10px;background:#fbf9fe;font-size:13px}.code-mode-options input{accent-color:#7044df}.join-submit{width:100%;margin-top:12px;padding:15px}.join-help{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:10px;color:#8b7c98;margin-top:25px}.join-help>span{display:grid;place-items:center;width:21px;height:21px;background:#eef2e7;border-radius:50%;color:#718053;font-size:9px;font-weight:800}.join-help>span:not(:first-child){margin-left:6px}.join-panel .join-note{color:#93859e;font-size:11px;line-height:1.7;margin:13px 0 0}.leave-work{display:block;margin:20px 0 0}.teacher-login{min-height:550px;padding:40px 0}.teacher-login h1{font-size:clamp(31px,3.7vw,50px);letter-spacing:-1.8px}.teacher-login p{font-size:15px}.teacher-login .mascot{max-height:380px}.selected-work-note{font-size:13px;color:#806b95;padding:10px 13px;background:#f4eefb;border-radius:9px;margin-bottom:20px}.site-footer{min-height:70px;margin-top:auto;padding:20px 0}.site-footer .wordmark{transform:none;font-size:17px;letter-spacing:-.5px}.site-footer .logo-mark{width:27px;height:27px;border-radius:8px;font-size:24px}.site-footer>span{font-size:11px;color:#9b91a3}.screen-in{animation:screen-in .28s ease-out both}.btn,.text-button{transition:transform .16s,box-shadow .16s,background .16s}.btn:not(:disabled):hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}@keyframes screen-in{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes symbol-float{0%,to{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-7px) rotate(-4deg)}}@media(max-width:1000px){.work-card{grid-template-columns:.65fr 1.35fr}.work-copy{padding:26px}.work-meta{gap:16px}.work-actions{gap:14px}.join-screen{gap:30px}}@media(max-width:700px){.site-header{height:auto;min-height:116px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:12px 0}.site-header .wordmark{font-size:22px}.site-header .logo-mark{width:32px;height:32px;border-radius:10px;font-size:29px}.site-header .portal-tabs{width:100%;gap:2px;padding:4px;border-radius:12px;justify-content:space-between}.portal-tabs .tab-link{flex:1;text-align:center;font-size:11px;padding:11px 5px;border-radius:8px}.portal-tabs .teacher-link span{display:none}.portal-screen{padding:24px 0 18px}.portal-heading{margin-bottom:20px}.portal-heading .eyebrow{font-size:9px}.portal-heading h1{font-size:37px;letter-spacing:-1.7px;margin:10px 0}.portal-heading p{font-size:13px}.portal-stamp{display:none}.work-card{display:block;border-radius:19px}.work-art{min-height:110px;height:110px;padding:12px 21px;flex-direction:row;align-items:center}.work-art-top{flex-direction:column;align-items:flex-start;gap:8px}.work-art-top>span:last-child{font-size:27px}.work-symbol{font-size:82px;letter-spacing:-9px;margin-right:28px}.work-symbol>span{width:36px;height:36px;top:-8px;right:-23px;font-size:23px}.work-art-bottom{display:none}.art-orbit{width:230px;height:230px;left:auto;right:0;top:-40px}.work-copy{padding:21px 21px 16px}.work-copy .eyebrow{font-size:8px;letter-spacing:.9px}.work-copy h2{font-size:24px;letter-spacing:-.8px;margin:12px 0 10px}.work-copy>p{font-size:12px;margin-bottom:15px}.desktop-break{display:none}.work-meta{gap:17px;font-size:10px}.work-meta b{font-size:17px}.work-actions{margin-top:20px;gap:15px}.work-actions .btn{width:100%}.work-actions .text-button{margin:auto}.work-topics{margin-top:18px;font-size:11px}.catalog-footnote{font-size:10px;flex-wrap:wrap;gap:4px;line-height:1.6}.catalog-label{font-size:11px}.join-screen{display:block;padding:17px 0}.join-visual{display:none}.join-panel{padding:21px 22px;border-radius:20px;max-width:460px;margin:0 auto 8px}.join-icon{display:none}.join-panel h2{font-size:25px}.join-panel>p{font-size:12px;margin-bottom:18px}.join-help{font-size:9px;gap:5px;margin-top:18px}.join-panel .join-note{margin-top:10px}.join-help>span:not(:first-child){margin-left:2px}.join-help>span{width:19px;height:19px}.teacher-login{min-height:0;padding:32px 0;display:block}.teacher-login h1{font-size:32px;margin:16px 0}.teacher-login p{font-size:13px}.teacher-login>.mascot{display:none}.teacher-password-form{max-width:none}.site-footer{min-height:60px;gap:8px;padding:16px 0}.site-footer .wordmark{font-size:15px;transform:none}.site-footer>span:last-child{display:inline;font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.subject-card{display:block;overflow:hidden;background:#fff;border:1px solid #e0dbe5;border-radius:23px;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.subject-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #40304f0d}.subject-art{height:146px;overflow:hidden;display:grid;place-items:center}.subject-art svg{width:300px;max-width:100%;height:130px;transition:transform .4s}.subject-card:hover svg{transform:rotate(-3deg) scale(1.04)}.lilac{background:#e8def8;color:#7952b7}.peach{background:#ffe7d8;color:#b65c3c}.mint{background:#dfefdc;color:#44764e}.blue{background:#dfecfa;color:#416c9a}.subject-copy{padding:23px 26px}.subject-copy .eyebrow{font-size:9px}.subject-copy h2{font-size:25px;letter-spacing:-.8px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 9px}.subject-copy h2 span{font-size:24px;color:#897b9b;font-weight:400}.subject-copy p{font-size:13px;color:#7d7286;line-height:1.6;margin-bottom:19px}.subject-counts{display:flex;flex-wrap:wrap;gap:9px}.subject-counts span{display:inline-flex;align-items:center;gap:12px;background:#f7f5fa;padding:7px 11px;border-radius:8px;font-size:11px;color:#80708c}.subject-counts b{color:#4c3a5e}.catalog-help{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;margin-top:22px;color:#7d7286}.catalog-help>span:first-child{display:grid;place-items:center;border-radius:10px;background:#ece7f3;color:#80639e;font-size:23px;width:35px;height:35px}.catalog-help p{margin:0}.catalog-help a{color:#6c42ad;font-weight:700}.catalog-help>.small-muted{margin-left:auto;font-size:11px}.subject-screen,.reader-screen{padding:16px 0 24px}.back-link{display:inline-block;font-size:12px;color:#81728f;margin:0 0 20px}.back-link:hover{color:var(--purple)}.subject-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.subject-heading h1{font-size:clamp(28px,3.5vw,43px);line-height:1.15;letter-spacing:-1.5px;margin:10px 0}.subject-heading p{font-size:14px;color:#81728f;margin:0}.subject-glyph{display:grid;place-items:center;width:90px;height:90px;border-radius:26px;font:600 35px/1 ui-monospace,monospace;transform:rotate(-5deg);flex-shrink:0}.library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.content-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:4px;border-radius:12px;background:#ede9f0;width:-moz-fit-content;width:fit-content}.content-tabs a,.content-tabs button{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;padding:10px 15px;border-radius:9px;color:#80708d;font-size:12px;cursor:pointer;text-align:center}.content-tabs a[aria-current=page],.content-tabs button[aria-pressed=true]{background:#fff;color:#4c3466;box-shadow:0 2px 5px #30233d0a}.content-tabs b{font-size:10px;color:#917aa8}.library-toolbar input,.library-search{border:1px solid #e0d8e8;background:#fff;border-radius:11px;padding:11px 14px;font-size:13px;min-width:0;width:220px}.library-items{display:grid;gap:16px}.library-empty{border:1px dashed #d9cde5;background:#f7f4fb;border-radius:22px;padding:44px 24px;text-align:center}.library-empty>span{display:block;color:#b398d0;font-size:46px;margin-bottom:16px}.library-empty h2{font-size:24px;letter-spacing:-.6px;margin-bottom:10px}.library-empty p{font-size:14px;color:#86718f;margin:0}.library-empty.small{padding:25px 10px}.library-empty.small>span{font-size:32px;margin-bottom:8px}.library-empty.small p{font-size:12px;margin-top:8px}.material-card{display:grid;grid-template-columns:130px 1fr;gap:24px;align-items:center;border:1px solid #e1dae8;background:#fff;padding:22px;border-radius:20px}.document-cover{display:flex;flex-direction:column;justify-content:space-between;height:142px;border-radius:13px;padding:15px}.document-cover span{font:700 12px/1 ui-monospace,monospace}.document-cover b{align-self:flex-end;font-size:58px;line-height:1;font-weight:400}.material-card h2{font-size:23px;letter-spacing:-.5px;margin:10px 0;overflow-wrap:anywhere}.material-card p{font-size:13px;color:#81718e;line-height:1.6;margin:0 0 15px}.material-card .eyebrow{font-size:9px}.material-card .btn{display:inline-flex;margin-top:6px;padding:10px 16px;font-size:12px}.reader-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.reader-heading h1{font-size:26px;letter-spacing:-.8px;margin:10px 0 0;overflow-wrap:anywhere}.reader-heading .btn{flex-shrink:0;font-size:12px}.pdf-reader{display:block;border:1px solid #ddd4e6;border-radius:16px;width:100%;height:calc(100svh - 320px);min-height:380px;background:#e9e4ed}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:22px;color:#81718e;font-size:12px}.teacher-sections{margin:0 0 25px}.manager-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.manager-intro h2{font-size:30px;letter-spacing:-1px;margin:10px 0}.manager-intro p{color:#81718e;font-size:13px;line-height:1.6}.library-mark{position:relative;display:grid;place-items:center;color:#a47458;background:#f9e4d8;width:100px;height:90px;border-radius:24px;font:38px Georgia,serif;transform:rotate(5deg)}.library-mark span{position:absolute;right:-5px;bottom:-5px;display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#e1edca;color:#67834a;font:26px sans-serif}.manager-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:start}.manager-grid .panel{padding:24px;min-width:0}.manager-mode{margin-bottom:22px}.manager-mode button{padding:9px 12px}.field select{padding:12px;width:100%;min-width:0;border:1px solid #ddd2e7;border-radius:10px;background:#fcfaff;color:#51425f;font-size:14px}.file-drop{display:block;background:#f7f2fc;border:1px dashed #cbb4e2;border-radius:13px;padding:18px;font-size:13px;font-weight:700;color:#735987;margin:0 0 18px}.file-drop input{display:block;width:100%;font:12px sans-serif;margin-top:12px;color:#8b759a}.file-drop input::file-selector-button{border:1px solid #d6c7e4;padding:8px 12px;border-radius:7px;background:#fff;color:#6c468f;margin-right:10px;cursor:pointer}.publish-check{display:flex;align-items:flex-start;gap:10px;line-height:1.6;color:#897292;font-size:11px;margin-bottom:20px}.publish-check input{accent-color:var(--purple);flex-shrink:0;margin-top:3px}.library-search{display:block;width:100%;margin-bottom:18px}.managed-material{padding:18px 0;border-top:1px solid #ece5f1}.managed-material h3{font-size:16px;overflow-wrap:anywhere}.managed-material p{color:#8e7b9a;font-size:11px;margin:8px 0 13px}.managed-material .button-row{justify-content:space-between;gap:10px}.managed-material .text-button{font-size:12px}.catalog-error{margin-top:30px}.catalog-error p{margin:20px 0}@media(max-width:700px){.subject-grid{gap:14px}.subject-art{height:110px}.subject-copy{padding:18px}.subject-copy h2{font-size:20px}.subject-copy p{font-size:12px}.subject-counts{gap:5px}.subject-counts span{font-size:10px;padding:6px 8px;gap:8px}.catalog-help{font-size:11px}.catalog-help>.small-muted{display:none}.subject-heading{margin-bottom:20px;gap:10px}.subject-heading h1{font-size:29px}.subject-heading p{font-size:12px;line-height:1.6}.subject-glyph{width:55px;height:60px;border-radius:16px;font-size:23px}.library-toolbar{flex-wrap:wrap;gap:12px}.library-toolbar input{width:100%}.content-tabs{max-width:100%}.content-tabs a,.content-tabs button{padding:10px 12px;font-size:11px}.library-empty{padding:32px 15px}.library-empty h2{font-size:21px}.library-empty p{font-size:12px}.material-card{grid-template-columns:65px 1fr;padding:16px;gap:14px}.document-cover{height:95px;border-radius:9px;padding:10px}.document-cover b{font-size:37px}.document-cover span{font-size:9px}.material-card h2{font-size:19px}.material-card p{font-size:12px}.material-card .btn{font-size:11px;padding:10px}.reader-heading{flex-wrap:wrap;gap:14px}.reader-heading h1{font-size:23px}.pdf-reader{min-height:350px;height:58svh}.manager-grid{grid-template-columns:1fr}.manager-grid .panel{padding:19px}.manager-intro h2{font-size:25px}.manager-intro p{font-size:12px}.library-mark{display:none}.teacher-sections{margin-bottom:20px}}@media(max-width:500px){.subject-grid{grid-template-columns:1fr}.subject-card{display:grid;grid-template-columns:80px 1fr;border-radius:18px}.subject-art{height:100%;min-height:155px}.subject-art svg{width:180px;min-width:180px;transform:rotate(-12deg)}.subject-copy h2{font-size:20px;line-height:1.25;letter-spacing:-.6px;margin:9px 0}.subject-copy h2 span{display:none}.subject-copy p{font-size:11px;line-height:1.55;margin-bottom:12px}.subject-copy .eyebrow{font-size:7px;letter-spacing:.8px}.subject-copy{padding:17px 14px}.subject-counts span{font-size:9px;padding:5px 6px;gap:6px}.subject-heading .eyebrow{font-size:8px}.subject-heading h1{font-size:25px;letter-spacing:-.8px}.catalog-help{gap:8px}.catalog-help p{max-width:220px;line-height:1.6}.catalog-help a{display:block}}@media(prefers-reduced-motion:reduce){.subject-card,.subject-art svg{transition:none}}@media(max-width:500px){.portal-screen{padding-top:16px;padding-bottom:10px}}@media(max-width:360px){.subject-card{grid-template-columns:60px minmax(0,1fr)}.subject-copy{padding:15px 10px}.subject-copy h2{font-size:18px;overflow-wrap:anywhere}}.pdf-viewer{border:1px solid #ddd3e6;border-radius:16px;overflow:hidden;background:#eae4ef}.pdf-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 14px;background:#f5f1fa;border-bottom:1px solid #ded3e8;color:#796589;font-size:12px}.pdf-pager{display:flex;align-items:center;gap:12px}.pdf-pager label{display:flex;align-items:center;gap:6px}.pdf-pager input{width:48px;background:#fff;border:1px solid #dbcee8;border-radius:7px;padding:7px 4px;text-align:center;color:#6b4b89}.pdf-zoom{display:flex;gap:9px;align-items:center}.pdf-zoom select{border:1px solid #dbcee8;border-radius:8px;padding:7px;color:#796589;background:#fff}.pdf-stage{position:relative;display:flex;align-items:safe center;justify-content:safe center;overflow:auto;height:calc(100svh - 385px);min-height:330px;padding:12px}.pdf-stage canvas{display:block;flex-shrink:0;background:#fff;box-shadow:0 3px 14px #48315412}.pdf-stage[aria-busy=true] canvas{opacity:.2}.pdf-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;color:#6e5385;text-align:center;font-size:14px}.pdf-text{background:#f7f3fb;padding:10px 15px;font-size:12px;color:#80658f}.pdf-text summary{cursor:pointer}.pdf-text p{line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:15px}@media(max-width:700px){.pdf-toolbar{flex-wrap:wrap;padding:9px;gap:9px}.pdf-pager{gap:9px;width:100%;justify-content:space-between}.pdf-pager input{padding:6px 3px}.pdf-zoom{width:100%;justify-content:space-between;font-size:11px}.pdf-zoom select{padding:6px;font-size:11px}.pdf-stage{min-height:280px;height:50svh}}.playful-bits{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;pointer-events:none;display:block}.playful-bits i{position:absolute;display:grid;place-items:center;width:29px;height:29px;border-radius:9px;font:700 19px/1 ui-monospace,monospace;font-style:normal;background:#e5dbf7;color:#8663bb;animation:play-hop 3.4s ease-in-out infinite}.playful-bits i:nth-child(1){left:-12px;top:1px;background:#e1edc9;color:#7c9951}.playful-bits i:nth-child(2){right:3px;top:-17px;animation-delay:-.9s;font-size:14px}.playful-bits i:nth-child(3){right:-16px;bottom:0;animation-delay:-1.8s;background:#f9dfcf;color:#b57957}.playful-bits i:nth-child(4){bottom:-14px;left:19%;animation-delay:-2.4s;background:transparent}.portal-stamp{position:relative}.portal-stamp .playful-bits{top:-18px;right:-18px;bottom:-18px;left:-18px}.join-play{position:relative}.join-play .playful-bits{top:30px;right:25px;bottom:30px;left:25px}.join-play .mascot{animation:mascot-hop 4.4s ease-in-out infinite}.subject-card .subject-art svg{animation:art-bob 5s ease-in-out infinite}.subject-card:nth-child(2n) .subject-art svg{animation-delay:-2.5s}.result-hero .confetti{overflow:hidden}.result-hero .confetti i{animation:confetti-arrive 1.6s ease-out both;animation-delay:calc(var(--i) * 45ms)}.grading-start-note{max-width:600px;padding:12px 15px;border-left:3px solid #b69ad8;background:#f3edf9;border-radius:0 10px 10px 0;color:#82708e;font-size:12px;line-height:1.65;margin-bottom:18px}.code-format-note{border:1px solid #d9ccec;background:#f7f2fe;border-radius:13px;padding:16px 18px;margin:18px 0;color:#776086;font-size:12px;line-height:1.7}.code-format-note b{color:#594271}.code-format-note p{margin:7px 0 0}.code-format-note details{margin-top:10px;border-top:1px solid #e5d9ef;padding-top:9px}.code-format-note summary{cursor:pointer;color:#775299}.score-pending{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0;background:#f2edf9}.score-pending h2{font-size:25px;letter-spacing:-.7px;margin:12px 0 10px}.score-pending p{color:#806b8f;max-width:800px;font-size:13px;line-height:1.8}.pending-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:18px;color:#9d7bbf;background:#e9def5;font-size:37px;flex-shrink:0}@keyframes play-hop{0%,65%,to{transform:translateY(0) rotate(-5deg)}27%{transform:translateY(-9px) rotate(8deg)}42%{transform:translateY(1px) rotate(-3deg)}}@keyframes mascot-hop{0%,55%,to{transform:translateY(0)}25%{transform:translateY(-7px) rotate(-1deg)}38%{transform:translateY(2px)}}@keyframes art-bob{0%,to{translate:0 0}50%{translate:0 -5px}}@keyframes confetti-arrive{0%{translate:0 -25px;opacity:0}30%{opacity:.7}to{translate:0 12px;opacity:.4}}@media(max-width:700px){.score-pending h2{font-size:22px}.score-pending p{font-size:12px}.score-pending .pending-icon{display:none}.code-format-note{padding:13px 15px;font-size:11px}}@media(prefers-reduced-motion:reduce){.playful-bits i,.join-play .mascot,.subject-card .subject-art svg,.result-hero .confetti i{animation:none!important}}.grading-rules{padding:16px 18px;border:1px solid #ddcfed;border-radius:13px;background:#f7f2fb;color:#7b628a;margin:18px 0 24px;font-size:12px;line-height:1.8}.grading-rules summary{color:#6c488c;font-weight:700;cursor:pointer}.grading-rules ul{padding-left:20px;margin-top:14px}.grading-rules li{margin:9px 0}.grading-rules b{color:#5f456e}.defense-panel{padding:22px;border:1px solid #d9e5c7;background:#f3f7ed;border-radius:17px;margin:20px 0}.defense-panel h3{font-size:23px;margin:12px 0;color:#526943}.defense-panel>p{font-size:12px;line-height:1.8;color:#758168}.defense-panel>details{border-top:1px solid #dfe7d5;padding:12px 0;color:#657a52;font-size:13px}.defense-panel summary{cursor:pointer;font-weight:700}.defense-panel ol{padding-left:22px;margin-top:10px;font-size:12px;line-height:1.8}.defense-panel li{margin:8px 0}.defense-panel .two-columns{margin-top:18px}@media(max-width:700px){.defense-panel{padding:16px}.defense-panel h3{font-size:21px}}.compact-form{max-width:680px;margin:24px auto;padding:28px}.compact-form form{display:grid;gap:16px}.mobile-code-editor{width:100%;min-width:0}.mobile-code-editor textarea{display:block;width:100%;font-size:16px!important;line-height:1.55;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.code-keys{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.code-keys button{min-width:38px;min-height:38px;border:1px solid #d8d1ec;background:#f5f1ff;border-radius:9px;color:#43355e;font:15px monospace}.code-keys button:active{background:#d9cafb}.block-filter{display:flex;gap:12px;align-items:center;margin:14px 0 22px}.block-filter select{min-width:0;max-width:100%;padding:10px;border:1px solid #d9d2e7;border-radius:10px;background:#fff}.grading-scale{padding:20px 24px;font-size:15px;color:#51416c}.homework-screen>.panel{margin:20px 0;padding:24px}.homework-task{padding:24px}.homework-task h2{font-size:24px}.homework-task .task-copy{white-space:pre-line;line-height:1.65}.homework-create{max-width:820px;display:grid;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.homework-chooser{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.homework-chooser details{width:100%;border-bottom:1px solid #ddd3ec;padding:12px 0}.homework-review-list{display:grid;gap:14px;margin:20px 0}.homework-review-list>.panel{padding:20px}.homework-review-list summary,.homework-practice>summary{cursor:pointer;padding:8px 0;font-size:18px}.attachment-list{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.homework-mark{background:#daf0e5;border-radius:16px;padding:20px;margin:20px 0;font-size:24px}.homework-mark b{font-size:48px;margin-left:12px}.submitted-text{white-space:pre-wrap;overflow-wrap:anywhere}.compiler-frame{width:100%;height:650px;border:1px solid #ddd3ec;border-radius:18px;margin:22px 0}.site-header{flex-wrap:wrap;gap:16px}.portal-tabs{flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){.site-header{align-items:flex-start}.portal-tabs{justify-content:flex-start;gap:4px;width:100%}.portal-tabs .tab-link{font-size:12px;padding:9px 10px}.compact-form{padding:20px}.form-row{grid-template-columns:1fr}.homework-task{padding:18px}.homework-screen>.panel{padding:18px}.homework-task h2{font-size:22px}.block-filter{display:grid}.compiler-frame{height:600px}.homework-review-list .btn{white-space:normal;overflow-wrap:anywhere}}.library-filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:12px 0 20px}.library-filters .block-filter{margin:0;display:grid;gap:6px;font-size:12px;flex:1;min-width:180px}.library-filters select{width:100%;min-width:0;text-overflow:ellipsis}.library-found{font-size:12px;color:var(--muted);margin-top:20px}.design-library{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.design-library .material-card{grid-template-columns:100px minmax(0,1fr);padding:18px;gap:18px;align-items:start}.design-library .material-card h2{font-size:19px;line-height:1.25;overflow-wrap:anywhere;margin:8px 0}.design-library .document-cover{height:140px;width:100%;padding:0;overflow:hidden;align-items:center;justify-content:center;gap:10px}.document-cover img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#eeeae6}.design-library .material-card .eyebrow{font-size:10px;letter-spacing:.08em;line-height:1.5}.design-library .material-card p{font-size:12px;line-height:1.5;margin:6px 0 12px}.lesson-resources{margin-top:14px;font-size:12px}.lesson-resources summary{cursor:pointer;font-weight:650;color:#5c4b88;line-height:1.5}.lesson-resources ul{padding-left:16px;margin:10px 0 0;display:grid;gap:10px}.lesson-resources li{line-height:1.6;overflow-wrap:anywhere}.lesson-resources li span{display:block;color:#75717f;font-size:11px}.lesson-image{background:#eeece9;border-radius:18px;padding:16px;text-align:center;overflow:auto}.lesson-image img{max-width:100%;height:auto;max-height:75vh;-o-object-fit:contain;object-fit:contain}.lesson-video{display:block;width:100%;max-height:72vh;background:#18151e;border-radius:18px}.pdf-text p{font-size:16px;line-height:1.7}@media(max-width:1000px){.design-library .material-card{grid-template-columns:75px minmax(0,1fr);gap:12px;padding:14px}.design-library .material-card h2{font-size:17px}}@media(max-width:700px){.design-library{grid-template-columns:1fr}.design-library .material-card{grid-template-columns:78px minmax(0,1fr);padding:16px;gap:14px}.design-library .document-cover{height:112px}.design-library .material-card h2{font-size:18px}.library-filters{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.library-filters .block-filter{min-width:0}.library-found{margin-top:0}.content-tabs{max-width:100%;overflow:auto}.content-tabs a{white-space:nowrap}.lesson-image{padding:6px}}.review-overview{background:#f1edf9;border:1px solid #dfd4ee;border-radius:18px;padding:22px;margin:20px 0}.review-overview h3{margin:0 0 12px;font-size:22px}.review-overview>ul{list-style:none;padding:0;display:grid;gap:10px}.review-overview li{display:flex;gap:14px;justify-content:space-between;align-items:center;background:#fff;padding:12px 14px;border-radius:12px}.review-overview a{color:#342a48;text-decoration:none}.review-overview a span{display:block;font-size:12px;color:#766c80;margin-top:5px}.review-badge{display:inline-block;flex-shrink:0;font-size:12px;line-height:1.5;padding:5px 10px;border-radius:9px;background:#ebe8ef;color:#5e5769;font-weight:650}.review-badge.correct{background:#dff5e8;color:#235c3d}.review-badge.wrong,.review-badge.missing{background:#fbe4df;color:#8f3729}.review-badge.partial{background:#fff0cf;color:#825b13}.result-task,.manual-task,.auto-detail{scroll-margin-top:24px}.result-task summary,.auto-detail summary{display:flex;justify-content:space-between;align-items:center;gap:14px}.result-task.wrong,.result-task.missing{border-left:4px solid #db7b64}.result-task.partial{border-left:4px solid #d5ad50}.oral-prompt{padding:16px;background:#f1edf9;border-radius:12px;margin-top:16px}.review-criteria{padding-left:20px}.review-criteria .missed{color:#8f3729}.review-criteria .passed{color:#235c3d}@media(max-width:700px){.review-overview{padding:16px}.review-overview li,.result-task summary,.auto-detail summary{align-items:flex-start;flex-direction:column;gap:9px}.review-overview h3{font-size:20px}.manual-heading{flex-wrap:wrap}}.site-header{height:auto;min-height:88px;flex-wrap:wrap;gap:14px;padding-top:15px;padding-bottom:15px}.site-header .portal-tabs{flex-wrap:wrap;flex:1;justify-content:center}.portal-tabs .tab-link{font-size:14px;padding:12px 14px}.install-app{position:relative;font-size:14px}.install-help{position:absolute;right:0;top:100%;width:340px;max-width:85vw;z-index:75;background:#fff;padding:22px;border:1px solid #dcd3eb;border-radius:18px;box-shadow:0 16px 60px #30214629}.install-help p{font-size:16px;line-height:1.6}.start-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:10px 0 32px}.start-actions>a{padding:24px;border:1px solid #ded5e9;background:#fff;border-radius:20px;display:grid;gap:10px;color:#30213e;transition:transform .15s,box-shadow .15s}.start-actions>a:hover{transform:translateY(-3px);box-shadow:0 12px 28px #40265d12}.start-actions>a:first-child{background:#7044df;color:#fff;border-color:#7044df}.start-actions>a:nth-child(2){background:#e6f2d7}.start-actions span{font-size:13px;opacity:.65;letter-spacing:.1em}.start-actions b{font-size:24px;line-height:1.2}.start-actions small{font-size:15px}.portal-heading h1{font-size:clamp(32px,4vw,50px);line-height:1.1;letter-spacing:-1.5px}.portal-heading p{font-size:18px}.portal-stamp{display:none}.catalog-section-title{font-size:22px;margin:26px 0 16px}.design-library .material-card{grid-template-columns:106px minmax(0,1fr);padding:22px}.design-library .material-card h2{font-size:22px;line-height:1.3}.design-library .material-card p{font-size:16px;line-height:1.6}.design-library .material-card .eyebrow{font-size:12px;letter-spacing:.04em}.material-lesson-label{color:#5e5073;font-weight:600}.lesson-resources summary{font-size:16px;min-height:42px;padding-top:10px;cursor:pointer}.lesson-resources li{font-size:15px;line-height:1.5}.source-guide-link{display:block;margin-top:16px;font-size:16px;font-weight:600;color:#6040ac}.reader-expanded{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;overflow:auto;background:#f6f3fa;padding:18px max(18px,calc((100vw - 1500px)/2));margin:0!important;max-width:none!important;animation:none!important}.reader-expanded .back-link{display:inline-block;font-size:16px;min-height:36px;margin:0}.reader-expanded .reader-heading{align-items:center;margin:8px 0 14px}.reader-expanded .reader-heading h1{font-size:25px;margin:5px 0;line-height:1.2}.reader-expanded .pdf-toolbar{position:sticky;top:0;z-index:3;font-size:15px;gap:12px;flex-wrap:wrap}.reader-expanded .pdf-stage{height:calc(100dvh - 240px);min-height:360px;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain}.reader-expanded .pdf-toolbar button{min-height:44px;min-width:44px;font-size:16px}.reader-expanded .pdf-zoom select,.reader-expanded .pdf-pager input{font-size:16px;min-height:42px}.pdf-stage.text-mode canvas{display:none}.pdf-stage.text-mode{display:block;background:#fff}.pdf-reading-text{white-space:pre-wrap;overflow-wrap:anywhere;font:19px/1.8 system-ui;max-width:800px;margin:auto;padding:18px;color:#282036}.pdf-text{font-size:16px}.pdf-text p{font-size:18px}.lesson-resource-panel{padding:20px 0 30px}.lesson-resource-panel h2{font-size:22px}.lesson-resource-panel ul{display:grid;gap:14px;list-style:none;padding:0}.lesson-resource-panel li{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:16px}.learning-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:start}.learning-workspace>*{min-width:0}.practice-picker{max-width:720px;margin:0 0 24px}.practice-picker select{font-size:17px;min-height:50px}.homework-task h2{font-size:26px;line-height:1.25}.homework-task h3{font-size:20px}.homework-task .task-copy{font-size:18px;line-height:1.75;white-space:pre-line;color:#30263b}.homework-task .expected pre{font-size:17px;line-height:1.65;white-space:pre-wrap}.homework-task details{font-size:17px;margin:16px 0}.homework-task summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}.theory-recap{background:#f0ebff;border-left:4px solid #8055d4;border-radius:8px;padding:4px 18px}.theory-recap p{font-size:17px;line-height:1.7;padding-bottom:10px}.homework-task li{margin:10px 0;line-height:1.7}.draft-toolbar,.workbench-tools{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;padding:12px 0}.draft-status{font-size:14px;color:#50652e;line-height:1.5}.file-tab{font:600 15px ui-monospace,monospace;color:#615076}.code-workbench{margin-bottom:22px;min-width:0}.code-workbench .mobile-code-editor textarea{min-height:360px;font:16px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:20px;-moz-tab-size:4;-o-tab-size:4;tab-size:4;background:#242236;color:#f1ebff;border-radius:14px;width:100%;resize:vertical}.code-workbench .code-keys{gap:6px;flex-wrap:wrap}.code-workbench .code-keys button{min-height:40px;min-width:40px}.compiler-panel{padding:16px;border-radius:16px;background:#f4f0fa;margin-top:18px;border:1px solid #dfd4ec}.compiler-panel p{font-size:16px;line-height:1.6}.compiler-panel .compiler-frame{width:100%;height:600px;min-height:480px;border:1px solid #ded5e9;border-radius:12px;background:#fff}.student-code{white-space:pre-wrap;overflow-wrap:anywhere;background:#252138;color:#f6f0ff;font:16px/1.6 ui-monospace,monospace;padding:20px;border-radius:12px}.review-shade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#22173188;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px}.review-dialog{width:min(1180px,100%);max-height:calc(100dvh - 32px);overflow:auto;margin:0!important;border-radius:20px;background:#fff;scroll-padding-top:100px;outline:none}.review-dialog>.panel-heading{position:sticky;top:-28px;z-index:5;padding:22px 0 16px;background:#fff;border-bottom:1px solid #e5dded;gap:15px}.review-dialog .student-answer pre{font-size:16px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.review-dialog .manual-task{scroll-margin-top:100px}.review-dialog .review-overview{margin-top:18px}.review-dialog .review-overview a{font-size:16px}.review-savebar{position:sticky;bottom:-28px;background:#fff;padding:16px 0;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #e2d9ee;z-index:4}.quick-grade-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:14px 0}.quick-grade-actions .small-btn{font-size:15px;min-height:44px}.review-dialog .manual-heading input{min-width:80px;font-size:18px}.homework-screen .homework-review-list summary{font-size:18px;min-height:52px;padding:12px 0;cursor:pointer}@media(max-width:1050px){.site-header{gap:10px}.site-header .portal-tabs{order:3;flex-basis:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.install-app{margin-left:auto}.learning-workspace{grid-template-columns:1fr}.practice-editor{position:static}.start-actions b{font-size:22px}}@media(max-width:700px){.site-header{padding:12px 0;min-height:0}.site-header .portal-tabs{padding:4px}.portal-tabs .tab-link{padding:12px;font-size:14px}.install-app>.text-button{font-size:13px}.install-help{right:0}.start-actions{grid-template-columns:1fr;gap:10px;margin-bottom:24px}.start-actions>a{padding:18px 20px;grid-template-columns:28px 1fr;gap:5px 14px}.start-actions small{grid-column:2}.start-actions b{font-size:22px}.start-actions span{align-self:center}.portal-heading{padding-top:12px}.portal-heading p{font-size:17px}.subject-grid{gap:14px}.subject-art{height:95px}.subject-card .subject-copy{padding:18px}.design-library .material-card{grid-template-columns:70px minmax(0,1fr);gap:14px;padding:16px}.design-library .material-card h2{font-size:20px}.design-library .material-card p{font-size:16px}.design-library .document-cover{height:100px}.design-library .material-card .eyebrow{font-size:12px}.reader-expanded{padding:12px}.reader-expanded .reader-heading{flex-wrap:wrap;gap:10px}.reader-expanded .reader-heading h1{font-size:20px}.reader-expanded .reader-heading .btn{font-size:14px;min-height:40px;padding:10px 12px}.reader-expanded .pdf-toolbar{padding:9px;font-size:15px}.reader-expanded .pdf-pager{gap:7px}.reader-expanded .pdf-stage{height:calc(100dvh - 280px);min-height:300px}.reader-expanded .pdf-zoom{width:auto;font-size:14px;gap:8px}.reader-expanded .pdf-zoom select{max-width:220px}.reader-expanded .pdf-toolbar>.btn{flex:1;font-size:15px}.lesson-resource-panel{padding:16px 4px}.lesson-resource-panel p{font-size:16px}.homework-task{padding:20px!important}.homework-task h2{font-size:24px}.homework-task .task-copy{font-size:17px}.homework-task .expected pre{font-size:16px}.practice-picker select{max-width:100%}.code-workbench .mobile-code-editor textarea{font-size:16px;min-height:300px;padding:14px}.code-workbench .result-actions{display:grid;gap:12px}.compiler-panel{padding:10px}.compiler-panel .compiler-frame{height:580px}.review-shade{padding:0}.review-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:18px!important}.review-dialog>.panel-heading{top:-18px;flex-wrap:wrap;padding-top:18px}.review-dialog>.panel-heading h2{font-size:23px}.review-savebar{bottom:-18px;flex-wrap:wrap}.review-savebar .btn{width:100%}.review-dialog .review-columns{grid-template-columns:1fr}.review-dialog .manual-heading{flex-wrap:wrap}.review-dialog .student-answer pre{font-size:16px}}@media(prefers-reduced-motion:reduce){.start-actions>a{transition:none}.start-actions>a:hover{transform:none}}.parameter-example{display:grid;gap:12px;margin:18px 0}.parameter-example>div{border:1px solid #ded5eb;border-radius:12px;padding:16px;background:#fff}.parameter-example span{font-size:12px;letter-spacing:.08em;color:#76618b}.parameter-example code{display:block;font:16px/1.6 ui-monospace,monospace;margin:8px 0;overflow-wrap:anywhere}.parameter-example code b{background:#e6ddff;color:#6034b8;border-radius:5px;padding:2px 4px}.parameter-example p{font-size:15px;margin:0}.learning-workspace:has(.compiler-panel){grid-template-columns:1fr}.learning-workspace:has(.compiler-panel)>.practice-editor{max-width:100%}.learning-workspace:has(.compiler-panel)>div:first-child .homework-task{max-height:420px;overflow:auto}@media(max-width:700px){.site-header .portal-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;overflow:visible;gap:3px}.portal-tabs .tab-link{font-size:13px;padding:11px 4px;text-align:center;white-space:normal;min-height:42px;display:flex;align-items:center;justify-content:center}.portal-tabs .teacher-link{font-size:13px}}.assigned-task-preview>summary{font-size:18px;min-height:48px;cursor:pointer;padding:8px 0}.assigned-task-preview>.homework-task{box-shadow:none;border:0;padding:15px 0!important;margin:0}.workspace-shortcuts{margin-bottom:14px}#hw-editor{scroll-margin-top:18px}.review-dialog p{font-size:16px;line-height:1.6}.review-dialog .review-overview .small-muted{font-size:14px}.pdf-gesture-help{font-size:14px;line-height:1.5;padding:10px 14px;margin:0;background:#fff;color:#655573}@media(max-width:700px){.reader-expanded .pdf-toolbar{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:10px}.reader-expanded .pdf-pager{min-width:0}.reader-expanded .pdf-zoom{display:grid;grid-template-columns:70px minmax(0,1fr);width:100%;min-width:0}.reader-expanded .pdf-zoom select{max-width:none;width:100%;min-width:0}.reader-expanded .pdf-toolbar>.btn{width:100%;white-space:normal}.reader-expanded .pdf-stage{height:calc(100dvh - 350px);min-height:300px}.pdf-gesture-help{font-size:14px}}:root{background:#f7f6fa;--border:#e5e1ed;--muted:#706a7c}.site-shell{max-width:1380px;padding:0 40px}.site-header{min-height:86px;padding:16px 0;gap:24px;flex-wrap:nowrap;height:auto}.site-header .portal-tabs{display:flex;flex:0 1 auto;justify-content:flex-end;flex-wrap:nowrap;order:initial;background:transparent;gap:5px}.portal-tabs .tab-link{font-size:15px;padding:12px 16px}.portal-tabs .tab-link.active{background:#eae3ff;color:#5935ab;box-shadow:none}.portal-tabs .teacher-link{font-size:13px;color:#7a7386;margin-left:10px}.site-footer{padding:20px 0;margin-top:24px;font-size:13px}.site-footer .wordmark{font-size:18px}.site-footer .install-help{top:auto;bottom:100%;text-align:left}.local-preview{font-size:12px;line-height:1.4;padding:8px 12px}.hub-heading{display:flex;gap:24px;justify-content:space-between;align-items:center;margin:12px 0 26px}.hub-heading h1{font-size:clamp(30px,3.6vw,46px);line-height:1.12;letter-spacing:-1.5px;margin:10px 0}.hub-heading p{color:var(--muted);font-size:17px;margin:10px 0}.hub-heading .btn{flex-shrink:0}.eyebrow{font-size:11px;letter-spacing:.1em}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.course-card{background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-5px);box-shadow:0 14px 36px #3b275417}.course-art{display:block;width:100%;height:auto;aspect-ratio:3/2;-o-object-fit:cover;object-fit:cover}.course-copy{padding:20px 24px 24px}.course-topline{display:flex;justify-content:space-between;align-items:center;color:#736780;font-size:12px}.course-topline span:last-child{font-size:21px}.course-copy h2{font-size:25px;letter-spacing:-.7px;line-height:1.18;margin:10px 0}.course-copy p{font-size:14px;line-height:1.5;margin:10px 0 0;color:#746b7d}.course-placeholder{display:grid;place-items:center;background:#eae3ff;font-size:70px;color:#7044df}.practice-banner{display:flex;align-items:center;gap:18px;background:#eae4fa;border:1px solid #ded3f6;border-radius:18px;margin:24px 0 0;padding:18px 24px;transition:background .2s}.practice-banner:hover{background:#e2d8f9}.practice-banner-icon{font:700 27px/1 ui-monospace,monospace;color:#7851c1}.practice-banner div{display:grid;gap:5px;flex:1}.practice-banner b{font-size:17px}.practice-banner div span{font-size:14px;color:#766688}.compact-heading{margin:16px 0 22px;align-items:center;gap:20px}.compact-heading h1{font-size:34px;line-height:1.15;letter-spacing:-1px;margin:6px 0}.compact-heading p{font-size:16px;color:var(--muted);margin:9px 0}.compact-heading .btn{flex-shrink:0}.subject-screen>.back-link{margin-bottom:0}.program-tabs{display:flex;gap:8px;overflow:auto;padding:6px 0 12px;scrollbar-width:thin}.program-tabs>a{display:flex;align-items:center;gap:10px;flex-shrink:0;border:1px solid var(--border);border-radius:14px;padding:10px 18px;background:#fff;font-weight:650;font-size:16px}.program-tabs>a[aria-current]{background:#eee7fd;border-color:#b9a2ed;color:#59399c}.adobe-badge{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;font-size:17px;background:#e7ddf8;color:#624294}.adobe-badge.photoshop{background:#092947;color:#74d0ff}.adobe-badge.illustrator{background:#392107;color:#ffbd70}.adobe-badge.indesign{background:#3c122d;color:#ff92bf}.library-toolbar{margin:8px 0 22px;gap:16px;align-items:center}.library-toolbar input{min-height:46px;font-size:16px;max-width:260px;background:#fff}.content-tabs{flex-wrap:wrap;gap:5px}.content-tabs a,.content-tabs button,.task-tabs button{font:600 15px/1.4 inherit;padding:11px 15px;border:0;border-radius:10px;cursor:pointer;color:#787080;background:transparent;min-height:44px}.content-tabs a[aria-current],.content-tabs button[aria-pressed=true],.task-tabs button[aria-pressed=true]{background:#eae2fb;color:#603ba5}.active-filter{display:flex;gap:16px;justify-content:space-between;font-size:14px;padding:12px;background:#eee9f8;border-radius:12px;margin-bottom:16px}.active-filter a{font-weight:700}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lesson-card{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;min-width:0}.lesson-cover{display:block;height:145px;background:#e5e0ed;overflow:hidden;text-align:center}.lesson-cover img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.lesson-cover>span{display:grid;place-items:center;height:100%;font-size:32px;font-weight:800;color:#8b74aa}.lesson-cover.peach{background:#f4e5e0}.lesson-cover.mint{background:#deeee6}.lesson-card-copy{padding:18px 20px}.lesson-card h2{font-size:19px;line-height:1.35;margin:10px 0 14px;font-weight:750;letter-spacing:-.3px}.lesson-meta{font-size:12px;color:#7b7185;line-height:1.5}.lesson-open{font-size:15px;font-weight:700;color:#6c41bf;display:inline-flex;align-items:center;min-height:36px}.lesson-resources{margin:5px 0 0}.lesson-resources summary{min-height:36px;padding:6px 0;font-size:13px;color:#7c6d8a}.source-guide-link{font-size:14px;line-height:1.6;margin:8px 0}.assessment-card{padding:24px;display:flex;flex-direction:column;gap:14px}.assessment-card h2{font-size:23px;margin:0}.assessment-card .btn{align-self:start}.assessment-card details{font-size:15px}.assessment-card details p{line-height:1.6}.pagination{margin:22px 0 0}.library-empty{padding:40px 20px}.library-empty h2{font-size:23px}.access-screen{padding:38px 0 14px;max-width:480px;margin:auto}.access-card{padding:30px!important;border-radius:24px;margin:0!important}.access-card h1{font-size:30px;letter-spacing:-.8px;margin:12px 0 8px}.access-card>p{font-size:16px;color:#756a80;margin:8px 0 24px}.access-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eae1fd;color:#7345c6;font-size:25px}.access-card .field{margin:16px 0;font-size:14px;gap:8px}.access-card input{font-size:17px;padding:13px 15px;width:100%;min-height:50px}.access-card .access-code{font:700 23px/1.4 ui-monospace,monospace;letter-spacing:.1em}.access-card small{font-size:12px;color:#87798f;line-height:1.5}.access-submit{width:100%;margin:8px 0 16px;min-height:50px;justify-content:center;display:flex}.access-footnote{display:block;text-align:center}.access-back{display:block;text-align:center;font-size:14px;margin:20px 0;color:#746582}.access-card>.text-button{display:block;margin:10px auto}.homework-screen>.access-card{max-width:480px;margin:20px auto!important}.start-summary{display:flex;flex-wrap:wrap;gap:12px 20px;padding:16px 0;font-size:17px}.start-summary b{color:#6b40b8}.start-details{margin:15px 0 25px;font-size:15px;line-height:1.7}.start-details summary{cursor:pointer;font-weight:600}.welcome-panel .welcome-art{max-width:250px}.welcome-panel .tiny-card{display:none}.welcome-panel{grid-template-columns:1fr auto}.practice-modes{margin:0 0 20px}.practice-selector{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:16px;margin:0 0 20px}.practice-selector .field{margin:0;max-width:none}.practice-selector select{font-size:16px;width:100%;min-height:48px}.learning-workspace{gap:20px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.learning-workspace:has(.compiler-panel){grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.learning-workspace:has(.compiler-panel)>div:first-child .homework-task{max-height:none;overflow:visible}.homework-task{padding:24px!important}.homework-task h2{font-size:23px;line-height:1.25;margin:10px 0 18px}.task-tabs{display:flex;gap:3px;border-bottom:1px solid #e6dfed;padding-bottom:10px;margin-bottom:18px;flex-wrap:wrap}.task-tabs button{font-size:14px;padding:10px 12px}.homework-task .task-copy{font-size:17px;line-height:1.7}.homework-task .expected pre{font-size:16px;line-height:1.6}.homework-task .task-deliverable{font-size:15px;line-height:1.6}.task-theory p{font-size:17px;line-height:1.7}.homework-task .self-checks{padding-left:20px}.homework-task .self-checks li{font-size:16px}.practice-editor,.homework-workspace>#hw-editor{padding:24px}.practice-editor h2{font-size:21px}.practice-submit-help{margin-top:20px;font-size:15px;line-height:1.6}.practice-submit-help summary{cursor:pointer;font-weight:600}.optional-files{padding:14px 0;font-size:15px}.optional-files summary{cursor:pointer}.compiler-runbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:12px 0}.compiler-runbar small{font-size:12px;color:#7c7286}.compiler-panel{padding:8px;margin:12px 0;background:#f7f5fb}.compiler-panel .compiler-frame{height:570px;min-height:450px;border:0;border-radius:10px}.compiler-input-tip{padding:3px 8px;margin:8px 0!important;font-size:14px!important;line-height:1.6!important}.compiler-footer{display:flex;gap:15px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:12px;color:#80748e;padding:12px 6px}.compiler-error-help{font-size:14px;line-height:1.7;margin-top:20px}.compiler-error-help summary{font-weight:600;cursor:pointer;min-height:35px}.compiler-error-help select{max-width:200px}.compiler-error-help p{font-size:14px}.code-workbench .mobile-code-editor textarea{min-height:310px;font-size:16px}.network-practice{background:#fff;border:1px solid var(--border);padding:28px;border-radius:22px}.network-practice>h2{font-size:25px;margin:0}.network-practice>p{font-size:16px;line-height:1.6;color:#756a80}.training-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.training-links>a{border:1px solid #e6dfed;border-radius:18px;padding:24px;background:#faf8fe;transition:transform .2s}.training-links>a:hover{transform:translateY(-4px)}.training-links h3{font-size:21px;margin:16px 0 10px}.training-links p{font-size:15px;line-height:1.6}.training-links b{font-size:12px;color:#7d649d}.training-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e6dcfb;color:#794fc4;font-size:25px;font-weight:750}@media(max-width:1100px){.site-shell{padding:0 26px}.site-header{gap:16px}.portal-tabs .tab-link{padding:11px 12px;font-size:14px}.portal-tabs .teacher-link{font-size:12px;margin:0}.course-grid{gap:16px}.course-copy{padding:18px}.course-copy h2{font-size:23px}.learning-workspace,.learning-workspace:has(.compiler-panel){grid-template-columns:1fr}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.site-shell{padding:0 16px}.site-header{flex-wrap:wrap;gap:14px;padding:18px 0 12px;min-height:0}.site-header .portal-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;flex-basis:100%;gap:4px;overflow:visible;background:#eeebf3;padding:4px}.portal-tabs .tab-link{font-size:14px;padding:10px 8px;min-height:42px;justify-content:center;white-space:normal}.portal-tabs .teacher-link{font-size:13px;margin:0}.portal-tabs .tab-link.active{background:#fff}.site-header .wordmark{font-size:24px}.site-footer{margin-top:18px}.portal-screen{padding:18px 0 0}.hub-heading{display:block;margin:0 0 20px}.hub-heading h1{font-size:30px;letter-spacing:-.8px}.hub-heading p{font-size:15px;margin:9px 0 18px}.hub-heading .btn{min-height:44px;font-size:15px}.course-grid{grid-template-columns:1fr;gap:12px}.course-card{display:grid;grid-template-columns:112px minmax(0,1fr);border-radius:18px;align-items:stretch}.course-art{width:112px;height:100%;aspect-ratio:auto;-o-object-fit:cover;object-fit:cover}.course-copy{padding:14px 16px}.course-topline{font-size:11px}.course-topline span:last-child{font-size:18px}.course-copy h2{font-size:21px;line-height:1.2;margin:5px 0}.course-copy p{font-size:12px;margin:6px 0 0}.practice-banner{gap:12px;padding:16px;margin-top:16px}.practice-banner b{font-size:15px}.practice-banner div span{font-size:12px}.practice-banner-icon{font-size:24px}.compact-heading h1{font-size:28px}.compact-heading p{font-size:14px}.compact-heading{flex-wrap:wrap;margin:16px 0}.compact-heading .btn{font-size:14px;min-height:40px}.program-tabs{gap:7px}.program-tabs>a{font-size:14px;padding:10px 12px;border-radius:12px;gap:8px}.adobe-badge{width:28px;height:28px;font-size:15px}.library-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:5px 0 18px}.library-toolbar input{max-width:none;width:100%}.content-tabs a,.content-tabs button{font-size:14px;padding:10px 13px}.lesson-grid{grid-template-columns:1fr;gap:12px}.lesson-card{display:grid;grid-template-columns:85px minmax(0,1fr);border-radius:15px;align-items:stretch}.lesson-cover{height:100%;min-height:120px}.lesson-cover img{-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.lesson-card-copy{padding:14px 16px}.lesson-card h2{font-size:17px;margin:7px 0;line-height:1.35}.lesson-meta{font-size:11px}.lesson-open{font-size:14px;min-height:36px}.lesson-resources summary{font-size:12px}.assessment-card{display:flex;padding:20px}.assessment-card h2{font-size:21px}.access-screen{padding-top:24px}.access-card{padding:24px!important}.access-card h1{font-size:29px}.access-card .field{margin:14px 0}.access-card input{font-size:17px}.access-card small{font-size:12px}.welcome-panel{display:block;padding:24px!important}.welcome-panel .welcome-art{display:none}.welcome-panel h1{font-size:30px}.welcome-panel .lead{font-size:17px}.practice-selector{grid-template-columns:1fr;gap:12px}.practice-selector select{font-size:16px}.homework-task{padding:20px!important}.homework-task h2{font-size:23px}.task-tabs{gap:0}.task-tabs button{padding:10px;font-size:13px}.practice-editor,.homework-workspace>#hw-editor{padding:18px!important}.compiler-runbar{gap:10px}.compiler-runbar .btn{font-size:15px;min-height:46px}.compiler-panel{padding:4px}.compiler-panel .compiler-frame{height:590px}.compiler-input-tip{font-size:13px!important;padding:3px 7px}.compiler-footer{font-size:12px}.network-practice{padding:20px}.training-links{grid-template-columns:1fr;gap:12px}.training-links>a{padding:20px}.training-links h3{margin:10px 0}.network-practice>p{font-size:15px}}@media(prefers-reduced-motion:reduce){.course-card,.practice-banner,.training-links>a{transition:none}.course-card:hover,.training-links>a:hover{transform:none}}.task-action{padding:0!important;border:0!important;margin:0 0 18px!important;background:transparent!important}.task-action p{font-size:15px!important;color:#87788e;font-weight:500!important;margin:0!important}.question-card h1{margin-bottom:14px}.question-nav>p{display:none}@media(max-width:700px){.program-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.program-tabs>a{min-width:0;padding:9px 11px}.homework-screen>.compact-heading p{display:none}}.result-hero{min-height:0;padding:25px 30px!important;margin-bottom:16px}.result-hero .mascot{max-width:145px;max-height:130px}.result-hero h1{font-size:34px;margin:8px 0}.result-hero .lead{font-size:17px;margin:10px 0}.result-hero .receipt{margin-top:12px}.score-pending{padding:22px!important;margin:15px 0}.score-pending h2{font-size:25px;margin:8px 0}.score-pending p{font-size:16px;margin:10px 0;line-height:1.6}.grading-scale{font-size:14px;margin:16px 0;line-height:1.6}.grading-scale summary{cursor:pointer;color:#756282}.result-filters{margin:16px 0 22px}.my-answers>h2{font-size:24px}.my-answers>p{font-size:14px}.my-answers details>summary{font-size:16px;line-height:1.5}.my-answers .task-copy{font-size:17px}.results-stats .stat-tile{padding:20px}.results-stats .stat-tile strong{font-size:30px}.results-stats .stat-tile small{font-size:12px}@media(max-width:700px){.result-hero{padding:22px!important}.result-hero h1{font-size:30px}.result-hero .mascot{display:none}.result-hero .lead{font-size:16px}.score-pending h2{font-size:23px}.score-pending p{font-size:15px}.results-stats{gap:8px}.results-stats .stat-tile{padding:13px}.results-stats .stat-tile>span{font-size:11px}.results-stats .stat-tile strong{font-size:26px}.results-stats .stat-tile small{font-size:11px}.my-answers{padding:20px!important}}.lesson-document{max-width:1120px;margin:0 auto;padding:26px 0 20px;min-width:0;animation:none!important}.lesson-breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px;color:#83718f;margin:0 0 22px}.lesson-breadcrumbs a{min-height:32px;display:inline-flex;align-items:center}.lesson-breadcrumbs a:hover{color:#693eb6;text-decoration:underline}.lesson-document-heading h1{font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-1px;margin:10px 0 24px}.lesson-document-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.lesson-document-actions .btn{font-size:15px;min-height:48px}.document-scroll-note{font-size:14px;color:#887a94;margin:20px 0}.document-page{margin:0 0 30px;min-width:0;scroll-margin-top:20px}.document-page-label{font-size:12px;color:#796b84;display:flex;gap:6px;padding:0 0 10px}.document-page-label span{opacity:.7}.document-page-image{position:relative;width:100%;background:#fff;border:1px solid #e7e0ed;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #44305706}.document-page-image canvas{display:block;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.document-page-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;padding:24px;margin:0;font-size:16px;color:#84738f;text-align:center}.document-page-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:pre-line}.lesson-document-end{display:flex;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid #e5dced;margin-top:24px;padding-top:25px;font-size:15px}.material-downloads{display:grid;gap:7px;margin:10px 0 0}.material-downloads>a{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:13px;line-height:1.5;color:#684b8a;padding:9px 10px;border-radius:9px;background:#f3eefb}.material-downloads small{font-size:11px;white-space:nowrap;opacity:.8}.material-pdf-download{display:block;font-size:13px;color:#867093;min-height:34px;padding-top:9px}.course-lesson-label{display:block;color:#7d5ba7;margin:0 0 7px;font-size:12px;line-height:1.5}.lesson-card .lesson-open{font-size:16px}.course-library-tabs>a{font-size:15px}.lesson-document .lesson-image{max-width:none;padding:0;background:transparent}.lesson-document .lesson-image img{width:100%;height:auto}.practice-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.practice-stage-card{padding:24px;background:#fff;border:1px solid #e3daef;border-radius:20px;transition:transform .18s,box-shadow .18s}.practice-stage-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #44215b0d}.practice-stage-top{display:flex;justify-content:space-between;align-items:center;color:#8c7b9c}.practice-stage-top>span{display:grid;place-content:center;width:37px;height:37px;border-radius:11px;background:#eee5fd;color:#8050c5;font:700 15px/1 ui-monospace,monospace}.practice-stage-top small{font-size:12px}.practice-stage-card h2{font-size:24px;letter-spacing:-.4px;margin:18px 0 10px}.practice-stage-card p{font-size:15px;line-height:1.6;color:#80708d;min-height:48px;margin:0 0 17px}.practice-stage-card>b{font-size:14px;color:#7442bc}.practice-resume{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 22px;background:#e9e0fa;border-radius:14px;margin:20px 0}.practice-resume>span{font-size:13px;color:#8e73a3}.practice-resume>b{flex:1;font-size:17px}.practice-resume>span:last-child{font-size:22px}.practice-course-note{font-size:14px;color:#8b7b96;line-height:1.7}.practice-task-list{display:grid;gap:12px;max-width:940px;margin:24px 0}.practice-task-option{display:flex;gap:20px;align-items:center;padding:22px 24px;border:1px solid #e3d9ed;border-radius:16px;background:#fff;transition:border-color .15s}.practice-task-option:hover{border-color:#ac8cdb}.practice-task-number{font:700 18px/1 ui-monospace,monospace;color:#946aba;display:grid;place-content:center;width:44px;height:44px;flex-shrink:0;background:#f0e8fc;border-radius:12px}.practice-task-option>div{flex:1}.practice-task-option h2{font-size:21px;line-height:1.3;margin:0 0 7px}.practice-task-option p{font-size:13px;color:#8e799d;margin:0}.practice-task-option>span:last-child{color:#986fbb;font-size:22px}.practice-task-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;margin:0 0 24px}.practice-task-heading h1{font-size:33px;line-height:1.2;letter-spacing:-.8px;margin:10px 0}.practice-task-heading .btn{flex-shrink:0;font-size:14px}.practice-course .learning-workspace{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.practice-course .homework-task{margin:0}.practice-task-pagination{display:flex;justify-content:space-between;gap:16px;margin:24px 0}.task-instructions{font-size:17px;line-height:1.75;color:#3b2e48;white-space:pre-line}.task-instructions ol{padding-left:25px;margin:12px 0 22px}.task-instructions li{padding-left:6px;margin:13px 0;line-height:1.75}.task-instructions p{margin:14px 0}.task-code-fragment{white-space:pre-wrap;overflow-wrap:anywhere;background:#292139;color:#f4ebff;padding:20px;border-radius:12px;font:15px/1.7 ui-monospace,monospace}.task-next-step{font-size:15px;margin:18px 0 0}.task-theory h3,.homework-task h3{font-size:20px;margin:12px 0}.task-tabs{align-items:stretch;gap:3px}.task-tabs button{font-size:13px;padding:10px 9px;flex:1;white-space:nowrap}.practice-send{padding-top:18px;border-top:1px solid #e5dced;margin-top:20px}.practice-send>p{font-size:15px;font-weight:650;margin:0 0 12px}.practice-send>small{display:block;font-size:12px;color:#927ca3;margin:10px 0}.practice-send>.btn{font-size:14px;min-height:44px}.disabled-link{opacity:.45}.homework-selected-title{font-size:24px;line-height:1.3}.homework-task .expected pre{line-height:1.65}@media(max-width:1100px){.practice-course .learning-workspace,.practice-course .learning-workspace:has(.compiler-panel){grid-template-columns:1fr}.practice-stage-grid{gap:14px}.practice-stage-card{padding:22px}.practice-stage-card h2{font-size:22px}}@media(max-width:700px){.lesson-document{padding:18px 0}.lesson-breadcrumbs{font-size:13px;gap:8px;margin-bottom:16px}.lesson-document-heading h1{font-size:28px;letter-spacing:-.6px;margin-bottom:20px}.lesson-document-actions{gap:9px;margin-bottom:20px;display:grid;grid-template-columns:1fr}.lesson-document-actions .btn{font-size:15px;justify-content:center;min-height:48px;padding:13px}.document-scroll-note{font-size:13px;margin:16px 0}.document-page{margin-bottom:26px}.document-page-image{border-radius:8px}.document-page-label{font-size:11px;padding-bottom:7px}.document-page-text{position:static;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal;padding:20px;background:#fff;border:1px solid #e4dbed;border-radius:12px;margin-top:10px}.document-page-text>p{font:17px/1.8 system-ui,Arial;white-space:pre-line;overflow-wrap:anywhere;margin:8px 0 0;color:#342a40}.document-text-label{font-size:11px;color:#9a84ab;letter-spacing:.03em}.lesson-document-end{gap:16px;align-items:stretch;flex-direction:column}.material-downloads>a{font-size:12px;padding:9px}.material-pdf-download{font-size:12px}.course-library-tabs{grid-template-columns:1fr 1fr}.course-library-tabs>a{font-size:14px}.course-library-tabs>a:last-child{grid-column:1/-1}.practice-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.practice-stage-card{padding:18px 16px;border-radius:16px}.practice-stage-top>span{width:32px;height:32px;font-size:13px}.practice-stage-top small{font-size:11px}.practice-stage-card h2{font-size:20px;margin:14px 0 9px}.practice-stage-card p{font-size:13px;line-height:1.6;min-height:62px;margin-bottom:12px}.practice-stage-card>b{font-size:12px}.practice-resume{padding:16px;gap:8px 12px}.practice-resume>b{font-size:15px;flex-basis:65%}.practice-task-option{padding:18px;gap:14px}.practice-task-option h2{font-size:18px}.practice-task-option p{font-size:12px}.practice-task-number{width:36px;height:36px;font-size:15px}.practice-task-heading{flex-wrap:wrap;margin-bottom:18px;gap:10px}.practice-task-heading h1{font-size:28px}.practice-task-heading .eyebrow{font-size:10px;line-height:1.6}.practice-task-pagination .btn{font-size:13px;min-height:44px;padding:12px}.task-tabs{flex-wrap:nowrap;gap:0}.task-tabs button{font-size:11px;padding:11px 5px;min-width:0;white-space:normal}.task-instructions{font-size:17px}.task-instructions ol{padding-left:21px}.task-instructions li{margin:14px 0;padding-left:2px}.practice-course .homework-task{padding:20px!important}.task-code-fragment{font-size:14px;padding:16px}.practice-course-note{font-size:13px}.homework-selected-title{font-size:21px}}@media(prefers-reduced-motion:reduce){.practice-stage-card{transition:none}.practice-stage-card:hover{transform:none}}.task-instructions ol{list-style:decimal outside}.task-instructions li::marker{color:#8b62b9;font-weight:700}.homework-task{scroll-margin-top:18px}@media(max-width:480px){.practice-task-pagination{flex-direction:column}.practice-task-pagination .btn{width:100%;justify-content:center;white-space:normal}}:root{--it-bg:#f5f6fa;--it-panel:#fff;--it-ink:#202533;--it-muted:#606a7d;--it-line:#dce1ec;--it-accent:#5650ce;--it-soft:#eeedff;--it-code:#202638}html,body{background:var(--it-bg);color:var(--it-ink)}html[data-theme=dark]{--it-bg:#141925;--it-panel:#202737;--it-ink:#edf0fa;--it-muted:#b7c1d4;--it-line:#3d485e;--it-accent:#b5adff;--it-soft:#30334e;--it-code:#101521;--ink:#edf0fa;--border:#3d485e;--muted:#b7c1d4;--purple:#b5adff}.it-hub,.it-course-overview,.it-course{padding:36px 0 12px;line-height:1.65}.it-hub h1,.it-course-title h1{font-size:clamp(34px,4.2vw,54px);line-height:1.12;letter-spacing:-1.9px;margin:19px 0}.it-hub h1 em{font-style:normal;color:var(--it-accent)}.it-kicker{font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--it-accent)}.it-welcome{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:center;padding:10px 0 35px}.it-welcome p,.it-course-title p{color:var(--it-muted);font-size:16px}.it-actions{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.it-hub .btn,.it-course .btn,.it-course-overview .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;min-height:45px;font-size:14px}.it-code-art{background:var(--it-code);color:#f0f2ff;transform:rotate(1.5deg);border-radius:20px;box-shadow:0 17px 40px #21265920;padding:20px 24px;position:relative}.it-code-art:before{content:"";position:absolute;width:52px;height:52px;right:-15px;top:-17px;border:9px solid #d8eab1;border-radius:50%;opacity:.85}.it-window-top{display:flex;align-items:center;gap:6px;margin-bottom:23px;font:11px monospace;color:#a9b4ca}.it-window-top i{width:7px;height:7px;border-radius:50%;background:#8e84dc}.it-window-top i:nth-child(2){background:#d6c49a}.it-window-top i:nth-child(3){background:#8bbdb7}.it-window-top span{margin-left:auto}.it-code-art pre{font:14px/1.85 SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.it-code-art pre span{color:#a89df5}.it-code-art pre b{color:#b3e3bb;font-weight:400}.it-art-flow{display:flex;align-items:center;gap:18px;margin-top:20px;border-top:1px solid #ffffff25;padding-top:16px;font-size:14px}.it-art-flow strong{background:#c6e5b4;color:#293631;padding:4px 13px;border-radius:8px}.it-code-art>small{display:block;color:#a9b4ca;margin-top:12px;font-size:11px}.it-section-heading{display:flex;align-items:center;justify-content:space-between;margin:6px 0 15px}.it-section-heading h2{font-size:22px;margin:0}.it-section-heading>span{font-size:12px;color:var(--it-muted)}.it-direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.it-direction{border:1px solid var(--it-line);border-radius:20px;padding:24px;background:var(--it-panel);transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.it-direction:hover{transform:translateY(-3px);box-shadow:0 14px 35px #22244312}.it-card-icon{display:flex;align-items:center;gap:10px;color:var(--it-accent);font-size:11px;font-weight:800;letter-spacing:1px}.it-card-icon>svg:last-child{margin-left:auto}.it-direction h2{font-size:25px;letter-spacing:-.5px;margin:22px 0 6px}.it-direction p{color:var(--it-muted);font-size:14px;line-height:1.7;margin:0 0 24px}.it-csharp{background:linear-gradient(115deg,var(--it-panel) 45%,var(--it-soft))}.it-systems .it-card-icon{color:#208071}.it-card-foot{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px;border-top:1px solid var(--it-line);padding-top:14px}.it-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}.it-quick-grid>a{display:flex;gap:14px;align-items:center;border:1px solid var(--it-line);border-radius:15px;padding:16px 22px;background:var(--it-panel)}.it-quick-grid>a>svg{color:var(--it-accent)}.it-quick-grid>a>svg:last-child{margin-left:auto}.it-quick-grid b{display:block;font-size:14px}.it-quick-grid small{display:block;color:var(--it-muted);font-size:12px}.theme-toggle{flex-shrink:0;display:grid;place-items:center;color:var(--it-ink);background:var(--it-panel);border:1px solid var(--it-line);border-radius:12px;width:40px;height:40px;margin-left:14px}.site-header{gap:18px}.site-header .portal-tabs{margin-left:auto}.teacher-nav-short{display:none}.site-header .teacher-link span{margin:0;color:inherit}.it-course-title{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:25px 0}.it-course-stat{min-width:180px;background:var(--it-soft);border:1px solid var(--it-line);border-radius:20px;padding:24px;display:grid;gap:10px}.it-course-stat>span{font-size:62px;line-height:1;color:var(--it-accent);font-weight:850;letter-spacing:-4px}.it-course-stat small{color:var(--it-muted)}.it-course-overview{max-width:950px;margin:auto}.it-progress{display:flex;align-items:center;gap:20px;font-size:13px;color:var(--it-muted);margin:28px 0 10px}progress{accent-color:var(--it-accent);height:7px;border:0;border-radius:10px;background:var(--it-line);width:100%}progress::-webkit-progress-bar{border-radius:10px;background:var(--it-line)}progress::-webkit-progress-value{border-radius:10px;background:var(--it-accent)}.it-progress progress{flex:1}.it-diagnosis-toggle{display:flex;align-items:center;gap:7px;margin:14px 0 24px}.it-diagnosis{border:1px solid var(--it-line);padding:25px;border-radius:16px;background:var(--it-panel);margin-bottom:24px}.it-diagnosis label{display:block;margin-top:17px;font-size:14px}.it-diagnosis select,.it-diagnosis input{width:100%;margin:8px 0 15px;background:var(--it-bg);color:var(--it-ink);padding:12px;border:1px solid var(--it-line);border-radius:8px}.it-lesson-list{display:grid;gap:10px}.it-lesson-list>a{display:flex;align-items:center;gap:16px;padding:18px 22px;border:1px solid var(--it-line);border-radius:15px;background:var(--it-panel)}.it-lesson-number{width:40px;height:40px;display:grid;place-items:center;background:var(--it-soft);color:var(--it-accent);border-radius:12px;font-size:14px;font-weight:800;flex-shrink:0}.it-lesson-number.done{background:#e0efdf;color:#256039}.it-lesson-list h2{font-size:17px;margin:0;line-height:1.35}.it-lesson-list small{font-size:9px;letter-spacing:1px;color:var(--it-muted)}.it-lesson-list>a>span:nth-last-child(2){margin-left:auto;white-space:nowrap;font-size:12px;color:var(--it-muted)}.it-lesson-list>a>svg{color:var(--it-accent);flex-shrink:0}.it-device-note{font-size:12px;color:var(--it-muted);max-width:660px;margin-top:24px}.it-course-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:38px;align-items:start;margin-top:24px}.it-course-sidebar{position:sticky;top:20px;background:var(--it-panel);border:1px solid var(--it-line);border-radius:17px;padding:19px 12px}.it-course-sidebar>b{display:block;margin:0 10px 12px;font-size:14px}.it-course-sidebar progress{width:calc(100% - 20px);margin:0 10px 18px}.it-course-sidebar nav{display:grid;gap:4px}.it-course-sidebar a{font-size:12px;display:flex;gap:9px;align-items:center;padding:9px;border-radius:9px}.it-course-sidebar a span{display:grid;place-items:center;width:20px;flex-shrink:0;color:var(--it-muted)}.it-course-sidebar a[aria-current=page]{background:var(--it-soft);font-weight:750;color:var(--it-accent)}.it-course-sidebar>small{display:block;margin:17px 10px 0;font-size:10px;color:var(--it-muted)}.it-lesson{max-width:850px;min-width:0}.it-lesson h1{font-size:clamp(29px,3.3vw,43px);line-height:1.16;letter-spacing:-1.2px;margin:12px 0 17px}.it-lesson h1:focus{outline:none}.it-goal{font-size:17px;color:var(--it-muted);margin-bottom:28px}.it-lesson h2{font-size:22px;line-height:1.3;margin:0 0 14px}.it-lesson h3{line-height:1.45;font-size:17px}.it-lesson p{line-height:1.8;font-size:15px}.it-theory,.it-steps{margin-bottom:30px}.it-steps ol{padding-left:24px}.it-steps li{padding-left:8px;margin-bottom:16px;font-size:15px}.it-steps li::marker{color:var(--it-accent);font-weight:800}.it-example{margin-top:30px}.it-code-label{display:flex;align-items:center;gap:7px;font-size:11px;background:var(--it-code);color:#bcc7dc;border-radius:13px 13px 0 0;padding:12px 18px;border-bottom:1px solid #ffffff20}.it-example pre{background:var(--it-code);color:#eff2fb;padding:20px;margin:0 0 20px;border-radius:0 0 13px 13px;overflow:auto;font:13px/1.8 SFMono-Regular,Consolas,monospace;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.it-expected{background:var(--it-panel);border:1px solid var(--it-line);border-left:4px solid #5a9e88;padding:14px 20px;border-radius:12px;margin:15px 0 30px}.it-expected h3{margin:0 0 9px;font-size:13px}.it-expected pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font:13px/1.7 monospace}.it-exercise{background:var(--it-panel);border:1px solid var(--it-line);border-radius:17px;padding:25px;margin:30px 0}.it-exercise h3{margin:10px 0 20px}.it-exercise fieldset{border:0;padding:0;margin:0;display:grid;gap:9px}.it-option{display:flex;align-items:center;gap:12px;border:1px solid var(--it-line);border-radius:11px;padding:13px 15px;font-size:14px;cursor:pointer}.it-option input{accent-color:var(--it-accent);width:17px;height:17px;flex-shrink:0}.it-option.selected{background:var(--it-soft);border-color:var(--it-accent)}.it-answer-label{display:block;color:var(--it-muted);font-size:12px}.it-answer-label textarea{width:100%;min-height:75px;font:15px/1.6 SFMono-Regular,Consolas,monospace;border:1px solid var(--it-line);border-radius:10px;padding:13px;color:var(--it-ink);background:var(--it-bg);resize:vertical;margin-top:7px}.it-exercise-actions{display:flex;gap:14px;align-items:center;margin-top:18px}.it-exercise-actions .text-button{display:flex;gap:5px;align-items:center}.it-feedback{border-radius:10px;padding:15px 18px;margin-top:18px;background:var(--it-soft);font-size:14px}.it-feedback p{margin:6px 0 0;font-size:14px}.it-feedback.correct{background:#e8f3e8;color:#235636}.it-feedback.retry{background:#fff0db;color:#6a461a}.it-hint{color:var(--it-muted);border-left:3px solid var(--it-line);padding-left:15px}.it-feedback a{text-decoration:underline}.it-trace{background:var(--it-soft);border-radius:16px;padding:23px;margin:25px 0}.it-trace h3{margin:10px 0}.it-trace p{font-size:13px}.it-trace label{font-size:13px;display:flex;gap:15px;align-items:center}.it-trace input{width:80px;padding:9px;border:1px solid var(--it-line);border-radius:7px;background:var(--it-panel);color:var(--it-ink)}.it-trace-steps{display:flex;gap:8px;margin:18px 0}.it-trace-steps>span{flex:1;padding:12px 9px;background:var(--it-panel);border:2px solid transparent;border-radius:10px;font-size:12px}.it-trace-steps>span.current{border-color:var(--it-accent)}.it-trace-steps b{font-size:13px;font-family:monospace}.it-course-editor{margin:30px 0;padding-top:15px}.it-course-editor .code-workbench{border:1px solid var(--it-line);border-radius:13px;overflow:hidden}.it-sources{margin:24px 0;font-size:13px;border-top:1px solid var(--it-line);padding-top:18px}.it-sources summary{cursor:pointer;font-weight:700}.it-sources a{display:block;color:var(--it-accent);padding:6px 0}.it-sources p{font-size:12px;color:var(--it-muted)}.it-lesson-finish{border-top:1px solid var(--it-line);padding-top:23px;margin-top:30px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.it-lesson-finish>span{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--it-accent)}.it-lesson-finish small{font-size:11px;color:var(--it-muted)}.it-lesson-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.it-project-rubric{border:1px solid var(--it-line);border-radius:13px;padding:22px;margin:25px 0;font-size:14px}.it-project-rubric li{margin-bottom:9px}html[data-theme=dark] .panel,html[data-theme=dark] .access-card,html[data-theme=dark] .lesson-card,html[data-theme=dark] .question-card,html[data-theme=dark] .practice-stage-card,html[data-theme=dark] .practice-task-option,html[data-theme=dark] .practice-resume,html[data-theme=dark] .subject-screen .lesson-document,html[data-theme=dark] .workbench-tools{background:var(--it-panel);color:var(--it-ink);border-color:var(--it-line)}html[data-theme=dark] .site-header,html[data-theme=dark] .site-footer{border-color:var(--it-line)}html[data-theme=dark] .btn.light,html[data-theme=dark] .theme-toggle{background:var(--it-panel);color:var(--it-ink);border-color:var(--it-line)}html[data-theme=dark] .btn.primary{background:#7c6ade;color:#fff;border-color:#7c6ade}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select{background:#172031;color:var(--it-ink);border-color:var(--it-line)}html[data-theme=dark] .tab-link.active,html[data-theme=dark] [aria-current=page].tab-link{background:var(--it-soft);color:var(--it-accent)}html[data-theme=dark] .portal-tabs .tab-link{color:var(--it-muted)}html[data-theme=dark] .portal-tabs .tab-link.active{color:var(--it-accent)}html[data-theme=dark] .it-feedback.correct{background:#243e31;color:#b4e8c1}html[data-theme=dark] .it-feedback.retry{background:#493722;color:#f6d8ad}@media(max-width:1000px){.site-shell{padding:0 28px}.site-header .portal-tabs{gap:10px}.site-header .portal-tabs a{font-size:12px}.it-welcome{gap:25px}.it-course-layout{grid-template-columns:200px minmax(0,1fr);gap:24px}}@media(max-width:700px){.site-shell{padding:0 18px}.site-header{height:auto;min-height:110px;flex-wrap:wrap;gap:10px;padding:18px 0 12px;position:relative}.site-header .portal-tabs{order:3;width:100%;display:flex;justify-content:space-between;overflow-x:auto;gap:5px;margin:3px 0 0}.site-header .portal-tabs a{font-size:11px;padding:8px 7px;white-space:nowrap}.theme-toggle{margin-left:auto}.it-hub,.it-course-overview,.it-course{padding-top:24px}.it-welcome{grid-template-columns:1fr;gap:25px;padding-bottom:28px}.it-hub h1,.it-course-title h1{font-size:36px;letter-spacing:-1.3px}.it-welcome p{font-size:14px}.it-code-art{transform:none;margin:0 9px 0 0;padding:17px 20px}.it-code-art pre{font-size:13px}.it-code-art:before{width:39px;height:39px;border-width:7px;right:-11px;top:-13px}.it-section-heading>span{display:none}.it-section-heading h2{font-size:20px}.it-direction-grid{gap:12px;grid-template-columns:1fr}.it-direction{padding:21px}.it-direction h2{font-size:23px;margin-top:15px}.it-direction p{margin-bottom:17px}.it-quick-grid{grid-template-columns:1fr;gap:10px}.it-course-title{align-items:start}.it-course-stat{display:none}.it-progress{gap:10px}.it-lesson-list>a{gap:11px;padding:15px 13px}.it-lesson-list h2{font-size:14px}.it-lesson-list>a>span:nth-last-child(2){font-size:10px}.it-lesson-number{width:31px;height:34px;font-size:12px}.it-course-layout{display:block}.it-course-sidebar{position:static;padding:12px;margin-bottom:25px}.it-course-sidebar>b{margin:0 5px 9px}.it-course-sidebar progress,.it-course-sidebar>small{display:none}.it-course-sidebar nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:5px}.it-course-sidebar a{white-space:nowrap;border:1px solid var(--it-line);font-size:11px;padding:8px}.it-course-sidebar a span{width:17px}.it-lesson h1{font-size:30px}.it-goal{font-size:16px}.it-lesson p,.it-steps li{font-size:15px}.it-lesson h2{font-size:21px}.it-exercise{padding:20px 16px}.it-trace{padding:18px}.it-trace-steps{flex-direction:column}.it-option{padding:12px}.it-course-editor .compiler-frame{min-height:650px}.it-lesson-finish .btn{white-space:normal;text-align:left;font-size:12px}.it-lesson-navigation .btn{font-size:12px}.it-course .lesson-breadcrumbs{font-size:11px}.it-example pre{font-size:12px;padding:14px}.it-course-overview .back-link{display:flex;gap:6px;align-items:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.it-direction:hover{transform:none}}@media(max-width:700px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) 40px;grid-template-rows:auto auto;align-items:center;gap:12px}.site-header>a{grid-column:1;grid-row:1}.site-header .theme-toggle{grid-column:2;grid-row:1;margin:0}.site-header .portal-tabs{grid-column:1/-1;grid-row:2;order:initial;margin:0}.site-header .portal-tabs a{font-size:11px;padding:8px 6px}.teacher-nav-full{display:none}.teacher-nav-short{display:inline}}html[data-theme=dark] :is(.review-dialog,.review-dialog>.panel-heading,.review-savebar,.network-practice,.enter-card,.quiz-status,.class-row,.work-card,.join-panel,.subject-card,.material-card,.review-overview li,.parameter-example>div,.document-page-text,.pdf-stage.text-mode,.program-tabs>a,.install-help,.start-actions>a,.pdf-gesture-help,.float-label,.content-tabs a[aria-current=page]){background:var(--it-panel);color:var(--it-ink);border-color:var(--it-line)}@media print{html[data-theme=dark]{--ink:#262336;--border:#e3dfd7;--muted:#77727f;--purple:#7044df;--it-bg:#fff;--it-panel:#fff;--it-ink:#202533;--it-muted:#606a7d;--it-line:#dce1ec;--it-accent:#5650ce;color-scheme:light;background:#fff;color:#202533}html[data-theme=dark] body{background:#fff;color:#202533}}@media(max-width:700px){.site-header .teacher-link .teacher-nav-full{display:none}.site-header .teacher-link .teacher-nav-short{display:inline}}.it-course .lesson-breadcrumbs{color:var(--it-muted)}.it-hub.screen-in,.it-course.screen-in,.it-course-overview.screen-in{opacity:1;animation:it-enter .2s ease-out}@keyframes it-enter{0%{transform:translateY(5px)}to{transform:translateY(0)}}html[data-theme=dark] :is(.eyebrow,.small-muted,.lead){color:var(--it-muted)}@media(max-width:700px){html[data-theme=dark] .site-header .portal-tabs{background:var(--it-panel)}}@media(prefers-reduced-motion:reduce){.it-hub.screen-in,.it-course.screen-in,.it-course-overview.screen-in{animation:none}}:root{--it-bg:#f4f5f9;--it-panel:#fff;--it-ink:#24283a;--it-muted:#5c667d;--it-line:#dce0ec;--it-accent:#604aaf;--it-soft:#ede9fc;--purple:#604aaf;--ink:#24283a;--muted:#5c667d;--st-teal:#176b60}html[data-theme=dark]{--it-bg:#141923;--it-panel:#202735;--it-ink:#eff1fa;--it-muted:#bbc4d7;--it-line:#404a60;--it-accent:#c2afff;--it-soft:#35314e;--purple:#c2afff;--st-teal:#88d6bf}.st-wordmark{gap:10px;font-family:inherit;letter-spacing:2px;font-size:24px;font-weight:850;color:var(--it-ink)}.st-wordmark>span{line-height:1}.st-wordmark small{display:block;letter-spacing:.1px;font-size:9px;font-weight:600;margin-top:5px;color:var(--it-muted)}.st-hero-art{position:relative;max-width:440px;margin:auto}.st-hero-art .mascot{width:100%;height:auto}.st-hero-art>span{position:absolute;bottom:8%;left:18%;font:600 11px monospace;letter-spacing:1px;color:var(--it-muted)}.st-cube-float{animation:st-float 5s ease-in-out infinite;transform-origin:center}@keyframes st-float{50%{transform:translateY(-9px)}}.st-bits{color:var(--it-accent)}.btn.primary{background:#6350bc;color:#fff;border-color:#6350bc}.btn.light{color:var(--it-ink);background:var(--it-panel);border-color:var(--it-line)}.st-teacher-nav{display:flex;gap:5px;border-bottom:1px solid var(--it-line);margin-bottom:26px;overflow-x:auto;padding:0 0 10px}.st-teacher-nav button{white-space:nowrap;border:0;background:transparent;color:var(--it-muted);border-radius:7px;padding:12px 15px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;min-height:44px}.st-teacher-nav [aria-current=page]{background:var(--it-soft);color:var(--it-accent)}.st-workspace{min-width:0;padding-bottom:30px}.st-workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 25px}.st-workspace-heading h2{font-size:clamp(25px,3.5vw,38px);line-height:1.2;letter-spacing:-1px;margin:10px 0}.st-workspace-heading p,.st-workspace>p{color:var(--it-muted);font-size:14px}.st-workspace h3{margin-top:30px}.st-block-stack{position:relative;width:120px;height:100px;flex-shrink:0}.st-block-stack i{position:absolute;width:57px;height:57px;background:#8b75ed;box-shadow:12px 12px #604aaf;transform:rotate(-15deg);left:14px;top:4px}.st-block-stack i:nth-child(2){background:#72c9b2;box-shadow:10px 10px #238571;left:62px;top:40px;width:38px;height:38px}.st-block-stack i:nth-child(3){width:22px;height:22px;left:5px;top:74px;background:#efb483;box-shadow:5px 5px #bb7e55}.st-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:24px 0}.st-metrics button{display:grid;grid-template-columns:1fr auto;gap:10px;text-align:left;padding:20px;border:1px solid var(--it-line);border-radius:12px;color:var(--it-ink);background:var(--it-panel);cursor:pointer}.st-metrics svg{color:var(--it-accent);grid-column:2;grid-row:1}.st-metrics strong{font-size:32px;line-height:1}.st-metrics span{font-size:12px;color:var(--it-muted);grid-column:1/-1}.st-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.st-shortcuts button{display:grid;grid-template-columns:1fr auto;gap:8px;padding:22px 18px;text-align:left;border:1px solid var(--it-line);border-radius:12px;background:var(--it-soft);color:var(--it-ink);cursor:pointer}.st-shortcuts b{font-size:14px}.st-shortcuts small{grid-column:1;font-size:11px;color:var(--it-muted)}.st-shortcuts svg{grid-row:1/3;grid-column:2;align-self:center;color:var(--it-accent)}.st-lesson-rows{display:grid;border:1px solid var(--it-line);border-radius:12px;overflow:hidden;background:var(--it-panel)}.st-lesson-rows>button,.st-lesson-rows>div{padding:17px 20px;border:0;border-bottom:1px solid var(--it-line);display:flex;align-items:center;justify-content:space-between;background:transparent;text-align:left;color:var(--it-ink);gap:12px}.st-lesson-rows button{cursor:pointer}.st-lesson-rows small{display:block;color:var(--it-muted);font-size:11px;margin-top:6px}.st-lesson-rows>div{display:block}.st-lesson-rows b{font-size:13px}.st-journal-tools{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:15px}.st-journal-tools label,.st-profile label,.st-profile-create label{display:grid;gap:7px;font-size:11px;font-weight:650;color:var(--it-muted)}.st-journal-tools :is(input,select),.st-profile input,.st-profile-create input{color:var(--it-ink);font-family:inherit;font-size:14px;background:var(--it-panel);border:1px solid var(--it-line);padding:12px;border-radius:8px;min-width:0;width:100%;min-height:44px}.st-journal-tools .st-search{display:flex;align-items:center;flex:1;min-width:200px;position:relative}.st-search>svg{position:absolute;left:12px;color:var(--it-muted)}.st-search input{padding-left:36px}.st-gradebook{max-height:65vh;overflow:auto;border:1px solid var(--it-line);border-radius:12px;background:var(--it-panel)}.st-gradebook table{border-collapse:separate;border-spacing:0;min-width:800px;width:100%;font-size:13px;text-align:left}.st-gradebook th{position:sticky;top:0;z-index:2;background:var(--it-soft);color:var(--it-muted);font-size:11px;padding:14px 16px;white-space:nowrap}.st-gradebook td{padding:12px 16px;border-top:1px solid var(--it-line);color:var(--it-ink)}.st-gradebook th:first-child,.st-gradebook td:first-child{position:sticky;left:0;min-width:180px;max-width:230px;background:var(--it-panel);box-shadow:2px 0 var(--it-line);z-index:1}.st-gradebook th:first-child{z-index:3;background:var(--it-soft)}.st-gradebook small{display:block;color:var(--it-muted);font-size:10px;margin-top:4px}.st-person{color:var(--it-ink);font-family:inherit;font-size:13px;font-weight:650;background:none;border:0;padding:0;text-align:left;cursor:pointer}.st-person:hover{text-decoration:underline}.st-mark{width:39px;height:39px;min-width:39px;border:1px solid var(--it-line);border-radius:9px;background:var(--it-soft);color:var(--it-accent);font-size:17px;font-weight:750;cursor:pointer}.st-mark:disabled{opacity:.5;cursor:default}.st-state{display:inline-block;white-space:nowrap;padding:5px 8px;border-radius:6px;font-size:10px;background:var(--it-soft);color:var(--it-muted)}.st-state.pending{color:#765215;background:#fff0c9}.st-state.active{color:#155c51;background:#d9f0e7}.st-state.reviewed{color:#50408c;background:#ece5ff}.st-gradebook-mobile{display:none}.st-live-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.st-live-grid button{display:grid;justify-items:start;gap:10px;padding:18px;background:var(--it-panel);border:1px solid var(--it-line);border-radius:10px;color:var(--it-ink);text-align:left;cursor:pointer}.st-live-grid b{font-size:13px}.st-live-grid small,.st-live-grid strong{font-size:10px;color:var(--it-muted)}.st-profile{background:var(--it-panel);border:1px solid var(--it-line);border-radius:12px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 0}.st-profile b{font-size:13px}.st-profile small{display:block;color:var(--it-muted);font-size:11px;margin-top:5px}.st-profile form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;width:100%;border-top:1px solid var(--it-line);padding-top:15px}.st-profile form>small{flex-basis:100%}.st-profile-create{display:flex;align-items:end;gap:14px;flex-wrap:wrap;padding:20px;background:var(--it-panel);border:1px solid var(--it-line);border-radius:12px;margin:22px 0}.st-credentials{padding:20px;border:1px solid var(--it-accent);background:var(--it-soft);border-radius:10px;margin-bottom:20px}.st-credentials small{display:block;font-size:12px;color:var(--it-muted)}.st-person-dialog{width:min(530px,calc(100vw - 30px));margin:auto}.st-sync{font-size:11px;color:var(--it-muted);margin:8px 0 20px}.st-sync>span:before{content:"●";font-size:8px;margin-right:7px;color:var(--st-teal)}.st-conflict{border:1px solid #c58230;padding:14px;border-radius:8px;margin:12px 0}.st-conflict pre{max-height:200px;overflow:auto}.st-conflict button{padding:10px;margin-right:8px}.st-review-tasks{display:flex;gap:6px;overflow-x:auto;padding:12px 0;position:sticky;top:75px;background:var(--it-panel);z-index:3;border-bottom:1px solid var(--it-line)}.st-review-tasks button{min-width:43px;min-height:47px;background:var(--it-panel);color:var(--it-ink);border:1px solid var(--it-line);border-radius:7px;cursor:pointer}.st-review-tasks small{display:block;font-size:8px;color:var(--it-muted)}.st-review-tasks [aria-pressed=true]{background:var(--it-soft);border-color:var(--it-accent);color:var(--it-accent)}.st-review-summary{padding:12px;border:1px solid var(--it-line);border-radius:8px;margin:10px 0}.review-dialog{width:min(1120px,calc(100vw - 30px))!important}.review-dialog .defense-panel{margin:14px 0;padding:14px;background:var(--it-soft);border:1px solid var(--it-line);border-radius:8px}.review-dialog .defense-panel>summary{cursor:pointer;font-weight:700;font-size:13px}.review-dialog .manual-task>.student-answer pre{font-size:14px;line-height:1.7}.review-dialog .manual-task>details[open]{padding:14px;background:var(--it-soft);border-radius:8px}.review-dialog .review-savebar{gap:10px;flex-wrap:wrap}.review-dialog .review-columns{grid-template-columns:1fr 1fr}.review-dialog .auto-detail{padding:20px 0}.review-dialog .manual-task>details>summary{font-weight:700}.review-dialog .manual-task{scroll-margin:150px}:is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid var(--it-accent);outline-offset:3px}@media(max-width:800px){.st-teacher-nav button{padding:10px 12px;font-size:12px}.st-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.st-shortcuts{grid-template-columns:1fr}.st-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.st-gradebook{display:none}.st-gradebook-mobile{display:grid;gap:10px}.st-gradebook-mobile article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:var(--it-panel);border:1px solid var(--it-line);border-radius:10px}.st-gradebook-mobile small{display:block;font-size:11px;color:var(--it-muted);margin:6px 0}.st-workspace-heading h2{font-size:29px}.st-profile{padding:14px}.st-profile form label{width:100%}.st-profile-create{display:grid}.st-block-stack{transform:scale(.75);width:90px}.st-journal-tools>label{flex:1;min-width:100px}.st-journal-tools .st-search{order:-1;flex-basis:100%}.st-review-tasks{top:0}.review-dialog .review-columns{grid-template-columns:1fr}.review-dialog .panel-heading{position:static}.st-hero-art{max-width:300px}.it-welcome{gap:0}.st-hero-art .mascot{max-height:245px}.st-wordmark{font-size:22px}.st-workspace{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){.st-cube-float{animation:none}}@media print{.st-teacher-nav,.st-journal-tools,.st-profile{display:none}.st-gradebook{display:block;overflow:visible;max-height:none}.st-gradebook table{min-width:0}.st-gradebook-mobile{display:none}}.st-lab{padding:28px 0}.st-lab h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1px;margin:12px 0}.st-lab header>p{color:var(--it-muted);font-size:15px;max-width:700px}.st-lab header{margin:24px 0}.st-lab-help{padding:16px 20px;border:1px solid var(--it-line);border-radius:10px;background:var(--it-panel);font-size:13px}.st-lab-help summary{font-weight:700;cursor:pointer}.st-lab-help li{padding:6px 0}.st-lab-help p{color:var(--it-muted)}.st-lab-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:20px 0}.st-lab label{display:grid;gap:7px;font-size:11px;font-weight:650;color:var(--it-muted)}.st-lab :is(input:not([type=range]),select,textarea){min-width:0;width:100%;padding:10px;border:1px solid var(--it-line);border-radius:7px;background:var(--it-panel);color:var(--it-ink);font-family:inherit;font-size:13px;min-height:40px}.st-import{position:relative;overflow:hidden}.st-import input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.st-lab-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:14px;align-items:start}.st-flow-canvas{height:650px;overflow:auto;border:1px solid var(--it-line);border-radius:12px;background:#f6f8fc;overscroll-behavior:contain}.st-flow-canvas svg{display:block;max-width:none}.st-lab-inspector{padding:17px;border:1px solid var(--it-line);background:var(--it-panel);border-radius:12px;display:grid;gap:13px;max-height:650px;overflow:auto}.st-lab-inspector h2{font-size:17px;margin:0}.st-lab-inspector h3{font-size:13px;margin:10px 0 0}.st-coordinates{display:flex;gap:10px}.st-coordinates>label{flex:1;min-width:0}.st-lab-inspector details{font-size:11px}.st-lab-inspector details button{margin-left:5px;padding:5px}.st-lab-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.st-lab-submit p{font-size:12px;color:var(--it-muted);max-width:600px}.st-flow-check{background:var(--it-soft);border:1px solid var(--it-line);padding:17px;border-radius:10px;font-size:13px;margin-bottom:15px}@media(max-width:800px){.st-lab-layout{grid-template-columns:1fr}.st-lab-inspector{max-height:none;grid-template-columns:1fr 1fr}.st-lab-inspector h2,.st-lab-inspector h3,.st-lab-inspector details{grid-column:1/-1}.st-flow-canvas{height:430px}.st-lab-toolbar>.btn{font-size:11px;padding:10px}.st-lab-submit{display:block}.st-lab-submit .btn{width:100%}.st-lab-toolbar label:first-child{flex-basis:100%}}.it-systems .it-card-icon{color:var(--st-teal)}.st-gradebook td{border-bottom:0}.st-flow-preview{width:100%;max-height:520px;background:#f6f8fc;border:1px solid var(--it-line);border-radius:10px;margin:15px 0}.st-assessment{background:var(--it-soft);border:1px solid var(--it-line);padding:15px 20px;border-radius:10px;margin:15px 0;font-size:13px}.st-assessment p{margin:8px 0}.st-assessment small{display:block;line-height:1.6;color:var(--it-muted)}html[data-theme=dark] .review-dialog :is(.manual-task,.grading-rules,.student-answer,.auto-detail,.solution,.oral-prompt){background:var(--it-panel);color:var(--it-ink);border-color:var(--it-line)}html[data-theme=dark] .review-dialog :is(.task-copy,.manual-heading h3,.grading-rules summary,.manual-task summary,.rubric-row,.student-answer b){color:var(--it-ink)}html[data-theme=dark] .review-dialog .student-answer pre{background:#141923;color:#e4eaf9;border-color:var(--it-line)}.review-dialog .score-chip{background:var(--it-soft);color:var(--it-accent)}.st-review-meta{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.st-review-meta>details{flex:1 1 200px;min-width:0;margin:0!important;padding:12px!important;border:1px solid var(--it-line);border-radius:8px;font-size:12px}.st-review-meta>details[open]{flex-basis:100%}.st-review-meta summary{font-size:11px!important;font-weight:650!important}.review-dialog .manual-task{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr);gap:20px}.manual-task>.manual-heading{grid-column:1/-1}.st-review-code{min-width:0}.st-review-code>details{background:var(--it-soft);padding:14px;border-radius:8px}.st-review-code .task-copy{font-size:15px;line-height:1.7}.st-review-code .student-answer{margin-top:15px;padding:14px;border:1px solid var(--it-line);border-radius:8px}.st-review-rubric{min-width:0;display:grid;gap:12px;align-content:start}.review-dialog .st-review-rubric .review-columns{display:block;margin:0}.st-review-rubric .review-columns h4{margin:5px 0 12px}.st-review-rubric .rubric-row{font-size:12px;padding:9px 0}.st-review-rubric .solution{margin-top:18px}.review-dialog .st-review-code .student-answer pre{font-size:13px;padding:10px;margin:10px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.st-review-rubric>.field{margin:0}.st-review-tasks{top:75px;padding:10px 0}.review-dialog .manual-heading h3{font-size:17px}@media(max-width:900px){.review-dialog .manual-task{display:block}.st-review-rubric{margin-top:18px}.st-review-meta>details{flex-basis:calc(50% - 10px)}.st-review-tasks{top:0}}@media(max-width:500px){.st-review-meta>details{flex-basis:100%}.review-dialog .manual-task{padding:14px}.review-dialog .st-review-code .task-copy{font-size:14px}.st-review-tasks{max-width:100%;flex-shrink:0}.review-dialog .review-savebar{position:static}.review-dialog .review-savebar .btn{font-size:11px}}.st-lab-review{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);gap:20px;align-items:start;margin-top:16px;scroll-margin-top:18px}.st-lab-review>.panel-heading{grid-column:1/-1;margin:0}.st-lab-review .st-flow-preview{margin:0;max-height:560px;min-height:400px}.st-lab-rubric{min-width:0}.st-lab-rubric h4{margin:0 0 12px}.st-lab-rubric .rubric-row{padding:12px 0}.st-lab-rubric .button-row{flex-wrap:wrap}@media(max-width:800px){.st-lab-review{display:block}.st-lab-rubric{margin-top:20px}.st-lab-review .st-flow-preview{min-height:300px}}.st-teacher-select{display:none}@media(max-width:800px){.st-teacher-nav{display:none}.st-teacher-select{display:grid;gap:8px;margin:12px 0 25px;font-size:12px;color:var(--it-muted)}.st-teacher-select select{padding:12px;border:1px solid var(--it-line);border-radius:8px;font:inherit;font-size:15px;background:var(--it-panel);color:var(--it-ink);width:100%;min-height:46px}}html[data-theme=dark] :is(.question-card,.homework-task,.practice-stage-card,.my-answers) .task-copy{color:var(--it-ink)}.st-auto-review{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;margin-top:18px}.st-auto-review>div,.st-auto-feedback{min-width:0}.st-auto-feedback>b{display:block;margin-top:14px;font-size:13px}.st-auto-feedback pre{padding:14px;background:var(--it-soft);color:var(--it-ink);border:1px solid var(--it-line);border-radius:8px}.st-auto-feedback .task-copy{font-size:14px;line-height:1.7}.review-dialog .code-window .code-line{font-size:13px;line-height:1.65}html[data-theme=dark] .code-window{background:#151a27;border-color:var(--it-line)}html[data-theme=dark] .code-window .window-bar{background:#252d3e;color:#c7d0e3}html[data-theme=dark] .code-window .code-line code{color:#e5eaf7}html[data-theme=dark] .code-window .line-no{color:#9aa8c1}html[data-theme=dark] .code-window .keyword{color:#c8b8ff}html[data-theme=dark] .code-window .string{color:#c0e4ba}html[data-theme=dark] .code-window .number{color:#ffd093}html[data-theme=dark] .code-window .comment{color:#9fc7b9}@media(max-width:900px){.st-auto-review{display:block}.st-auto-feedback{margin-top:20px}}.edu-screen{--text:var(--it-ink);--surface:var(--it-panel);--soft:var(--it-soft);--line:var(--it-line);--muted:var(--it-muted);--accent:var(--it-accent);color:var(--it-ink);max-width:1280px;margin:0 auto;display:grid;gap:20px;min-width:0}.edu-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.edu-heading h1,.edu-heading h2{margin:6px 0}.edu-screen .panel{margin:0;min-width:0}.edu-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.edu-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.edu-work-card{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:10px;color:var(--text,#20212b);transition:transform .18s,box-shadow .18s}.edu-work-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0001}.edu-work-card h2,.edu-work-card h3,.edu-work-card p{margin:0}.edu-work-card small,.edu-person small,.edu-submission-row small{display:block;color:var(--muted,#666);line-height:1.6}.edu-work-card>b:last-child{margin-top:auto;padding-top:12px;color:var(--accent,#7649ee)}.edu-mark{font-size:32px;font-weight:800;color:var(--accent,#7649ee)}.edu-list{display:grid;gap:12px;margin:16px 0}.edu-person{border-bottom:1px solid var(--line,#ddd);padding:12px 0;overflow-wrap:anywhere}.edu-submission-row{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:20px;width:100%}.edu-files{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.edu-files button{max-width:100%;overflow-wrap:anywhere;white-space:normal;text-align:left}.edu-files small{margin-left:6px}.edu-file-row,.edu-link-row,.edu-inline{display:flex;align-items:center;gap:12px;margin:12px 0}.edu-file-row>span{min-width:0;overflow-wrap:anywhere;flex:1}.edu-link-row input{min-width:0;flex:1}.edu-form{display:grid;gap:18px}.edu-screen input:not([type=checkbox]),.edu-screen select,.edu-screen textarea{width:100%;min-width:0;border:1px solid var(--line,#d8d8e1);border-radius:10px;padding:11px 13px;background:var(--surface,#fff);color:var(--text,#20212b);font:inherit}.edu-screen textarea{resize:vertical}.edu-screen .field{display:grid;gap:7px}.edu-checks{border:1px solid var(--line,#ddd);border-radius:12px;display:flex;gap:16px;flex-wrap:wrap;padding:14px}.edu-checks label,.edu-check{display:flex;gap:9px;align-items:center;font-weight:500;line-height:1.5}.edu-check input,.edu-checks input{width:18px;height:18px;flex:0 0 18px}.edu-check{padding:8px 0}.edu-import{display:grid;gap:12px;margin:20px 0}.edu-import>div{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;border-bottom:1px solid var(--line,#ddd);padding:12px 0}.edu-import small{grid-column:1/-1}.edu-upload{padding:16px;border:1px dashed var(--line,#bbb);border-radius:14px;margin-top:20px}.edu-actions{display:grid;gap:12px}.edu-plan summary{cursor:pointer;font-weight:700}.edu-plan summary small{display:block;font-weight:400;margin-top:4px}.edu-screen .student-code{max-height:600px;overflow:auto;white-space:pre;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.edu-screen details{overflow-wrap:anywhere}.edu-screen details>summary{cursor:pointer}.edu-screen pre{max-width:100%;overflow:auto}.edu-matrix{overflow:auto;border:1px solid var(--line,#ddd);border-radius:14px;max-height:70vh}.edu-matrix table{border-collapse:collapse;min-width:100%;font-size:14px}.edu-matrix th,.edu-matrix td{padding:14px;min-width:170px;border:1px solid var(--line,#ddd);text-align:left;vertical-align:top;background:var(--surface,#fff)}.edu-matrix th small{display:block;font-weight:400;margin-top:8px}.edu-matrix thead th{position:sticky;top:0;z-index:2}.edu-matrix th:first-child{position:sticky;left:0;z-index:1}.edu-matrix thead th:first-child{z-index:3}.edu-cell{display:grid;gap:6px;padding:10px;border:0;border-radius:9px;color:var(--text,#222);background:var(--soft,#f0edfc);width:100%;text-align:left;cursor:pointer}.edu-cell small{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edu-matrix-mobile{display:none}.edu-install li{margin:14px 0;line-height:1.6}.edu-install li svg{vertical-align:middle}.edu-screen .task-copy{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}.edu-screen .edu-send{border:2px solid var(--accent,#8656ee)}.edu-screen button:focus-visible,.edu-screen a:focus-visible{outline:3px solid var(--accent,#8656ee);outline-offset:3px}@media(max-width:800px){.edu-two{grid-template-columns:1fr}.edu-heading{align-items:flex-start;flex-wrap:wrap}.edu-heading h1{font-size:28px}.edu-import>div{grid-template-columns:1fr}.edu-import small{grid-column:1}.edu-link-row,.edu-inline{flex-direction:column;align-items:stretch}.edu-file-row{flex-wrap:wrap}.edu-matrix{display:none}.edu-matrix-mobile{display:grid;gap:12px}.edu-screen .panel{padding:20px}.edu-screen input,.edu-screen select,.edu-screen textarea{font-size:16px!important}.edu-screen .result-actions{flex-wrap:wrap}.edu-screen .result-actions button{max-width:100%;white-space:normal}.edu-submission-row{align-items:flex-start;flex-wrap:wrap}.edu-heading .st-block-stack{display:none}.portal-tabs{display:flex;flex-wrap:wrap!important;overflow:visible!important}.portal-tabs .tab-link{white-space:normal;font-size:12px;padding:9px 10px}.site-header{flex-wrap:wrap}.site-header .portal-tabs{order:3;width:100%}.edu-install ol{padding-left:22px}}@media(prefers-reduced-motion:reduce){.edu-work-card{transition:none}.edu-work-card:hover{transform:none}}.edu-screen b,.edu-screen strong{color:inherit}.edu-screen label,.edu-screen legend{color:var(--it-muted)}.edu-screen .edu-mark{color:var(--it-accent)}.edu-matrix thead th{font-size:12px}.edu-matrix tbody th{font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--it-ink)}.edu-cell b{font-size:15px}.edu-cell small{font-size:12px;color:var(--it-muted)}@media(max-width:1100px){.site-header{flex-wrap:wrap}.site-header .portal-tabs{order:3;width:100%;display:flex;flex-wrap:wrap;overflow:visible}.site-header .tab-link{white-space:normal}}.edu-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:16px 0}.edu-summary>span{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;font-size:13px}.edu-summary b{font-size:24px}.edu-debts{padding-left:20px}.edu-debts small{display:block}.edu-counts{display:block;font-size:13px;line-height:1.7;margin:6px 0}.edu-snippet{font-size:14px;line-height:1.6}.edu-work-card{text-align:left}.edu-screen details>summary{overflow-wrap:anywhere;line-height:1.6}.edu-screen .st-journal-tools{flex-wrap:wrap}.edu-roadmap{list-style:none;padding:0;display:grid;gap:8px}.edu-roadmap li{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid var(--line);border-radius:14px}.edu-roadmap li>div{flex:1;min-width:0}.edu-roadmap small{display:block;font-size:12px;margin-top:4px}.edu-roadmap .future{opacity:.65}.edu-lesson-work{display:grid;gap:14px;margin:24px 0}.edu-lesson-work .panel{padding:22px}.edu-lesson-work p{line-height:1.75}@media(max-width:600px){.edu-roadmap li{flex-wrap:wrap;gap:10px}.edu-roadmap li>a{margin-left:34px}.edu-lesson-work .panel{padding:16px}.edu-screen .st-journal-tools{display:grid;grid-template-columns:1fr;gap:12px}.edu-screen .st-journal-tools label,.edu-screen .st-journal-tools input,.edu-screen .st-journal-tools select{width:100%;min-width:0}}.edu-lesson-work{min-width:0;width:100%;max-width:100%}.edu-lesson-work>.panel{min-width:0;max-width:100%;overflow-wrap:anywhere}.edu-lesson-work .btn{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}.edu-lesson-work pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-cyrillic-ext-wght-normal-DOFToQv1.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-cyrillic-wght-normal-DayYxulF.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-math-wght-normal-Bl4ZGkZl.woff2) format("woff2-variations");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-symbols-wght-normal-DxQzqQfC.woff2) format("woff2-variations");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-vietnamese-wght-normal-BBxOatbv.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-latin-ext-wght-normal-QAhDxQuo.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./onest-latin-wght-normal-Dun_Rd-l.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--sk-bg: #15101f;--sk-bg-glow: rgba(157, 92, 255, .1);--sk-surface: #241832;--sk-surface-2: #30213f;--sk-surface-3: #42304f;--sk-overlay: rgba(13, 8, 22, .82);--sk-line: #67477e;--sk-line-strong: #a185b9;--sk-text: #faf5ff;--sk-text-2: #e3d7f0;--sk-text-3: #cbb8de;--sk-text-on-accent: #1e2606;--sk-accent: #dbff4a;--sk-accent-hover: #e9ff8c;--sk-accent-text: #e3ff87;--sk-accent-soft: #354225;--sk-accent-line: #778c42;--sk-cube-1: #dbb8ff;--sk-cube-2: #b98bff;--sk-cube-3: #8b42e7;--sk-cube-4: #4d2379;--sk-success: #b4e4c7;--sk-success-soft: #243e35;--sk-warning: #f5d18b;--sk-warning-soft: #4a3d25;--sk-danger: #ffb0d1;--sk-danger-soft: #512d45;--sk-info: #d2b8ff;--sk-info-soft: #44305c;--sk-teal: #b4e4c7;--sk-shadow-1: 2px 2px 0 #0d0815;--sk-shadow-2: 4px 4px 0 #0d0815;--sk-shadow-3: 8px 8px 0 #0d0815;--sk-ring: 0 0 0 3px rgba(238, 226, 255, .85);--sk-inset: inset 0 1px 0 rgba(255, 255, 255, .04);--sk-code-bg: #171324;--sk-code-text: #faf5ff;--sk-selection: #513d66;--sk-theory: #dbff4a;--sk-theory-soft: #354225;--sk-practice: #d9bdff;--sk-practice-soft: #46305f;--sk-project: #ff9fd1;--sk-project-soft: #4e2b47;--sk-nav: #f1e2ff;--sk-nav-soft: #60369a;--sk-chrome: #1b1427;--sk-chrome-line: #7952ab;--sk-on-learning: #1e2606;--sk-syntax-keyword: #d2b0ff;--sk-syntax-type: #f3d591;--sk-syntax-string: #e2f3ae;--sk-syntax-number: #ffd391;--sk-syntax-comment: #c3b1d2;--sk-font: "Onest Variable", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--sk-mono: "JetBrains Mono Variable", ui-monospace, "Cascadia Code", Consolas, monospace;--sk-fs-xs: 12px;--sk-fs-sm: 13px;--sk-fs-md: 15px;--sk-fs-lg: 17px;--sk-fs-xl: 20px;--sk-fs-2xl: 24px;--sk-fs-3xl: 30px;--sk-fs-4xl: 38px;--sk-1: 4px;--sk-2: 8px;--sk-3: 12px;--sk-4: 16px;--sk-5: 20px;--sk-6: 24px;--sk-8: 32px;--sk-10: 40px;--sk-12: 48px;--sk-r-sm: 3px;--sk-r-md: 4px;--sk-r-lg: 6px;--sk-r-xl: 8px;--sk-r-pill: 999px;--sk-gutter: 16px;--sk-content: 1200px;--sk-topbar: 64px;--sk-tabbar: 64px;--sk-sidebar: 256px;--sk-ease: cubic-bezier(.2, .8, .2, 1);--sk-ease-in-out: cubic-bezier(.65, 0, .35, 1);--sk-ease-pop: cubic-bezier(.34, 1.4, .64, 1);--sk-dur-1: .12s;--sk-dur-2: .18s;--sk-dur-3: .24s}@media(max-width:380px){:root{--sk-gutter: 14px}}@media(min-width:768px){:root{--sk-gutter: 24px;--sk-fs-3xl: 32px;--sk-fs-4xl: 44px}}@media(min-width:1200px){:root{--sk-gutter: 32px}}@media(prefers-reduced-motion:reduce){:root{--sk-dur-1: 1ms;--sk-dur-2: 1ms;--sk-dur-3: 1ms}}.sk{font-family:var(--sk-font);font-size:var(--sk-fs-md);line-height:1.5;color:var(--sk-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv05" 1}.sk :where(h1,h2,h3,h4,p){margin:0}.sk :where(button,input,select,textarea){font-family:inherit}.sk :where(a){color:inherit;text-decoration:none}.sk :where(svg){flex-shrink:0}.sk :focus-visible{outline:none;box-shadow:var(--sk-ring)}.sk-num{font-variant-numeric:tabular-nums}.sk-mono{font-family:var(--sk-mono)}.sk-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.sk-kicker{display:inline-flex;align-items:center;gap:8px;font-size:var(--sk-fs-xs);font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--sk-accent-text)}.sk-h1{font-size:var(--sk-fs-3xl);font-weight:680;line-height:1.12;letter-spacing:-.025em}.sk-h2{font-size:var(--sk-fs-xl);font-weight:650;line-height:1.25;letter-spacing:-.015em}.sk-h3{font-size:var(--sk-fs-lg);font-weight:620;line-height:1.3;letter-spacing:-.01em}.sk-lead{font-size:var(--sk-fs-md);color:var(--sk-text-2)}.sk-muted{color:var(--sk-text-3);font-size:var(--sk-fs-sm)}.sk-text-2{color:var(--sk-text-2)}.sk-link{color:var(--sk-accent-text);font-weight:600;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:6px;border-radius:6px;transition:color var(--sk-dur-1) var(--sk-ease),gap var(--sk-dur-2) var(--sk-ease)}.sk-link:hover{gap:9px;text-decoration:underline;text-underline-offset:3px}.sk-link.is-quiet{color:var(--sk-text-2);font-weight:550}.sk-btn{--btn-bg: var(--sk-surface-2);--btn-fg: var(--sk-text);--btn-line: var(--sk-line-strong);--btn-hover: var(--sk-surface-3);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--sk-r-md);border:1px solid var(--btn-line);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--sk-fs-md);font-weight:620;line-height:1;white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background var(--sk-dur-1) var(--sk-ease),border-color var(--sk-dur-1) var(--sk-ease),transform var(--sk-dur-1) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease),color var(--sk-dur-1)}.sk-btn:hover:not(:disabled){background:var(--btn-hover)}.sk-btn:active:not(:disabled){transform:scale(.97)}.sk-btn:disabled{opacity:.55;cursor:not-allowed}.sk-btn.is-primary{--btn-bg: var(--sk-accent);--btn-fg: var(--sk-text-on-accent);--btn-line: transparent;--btn-hover: var(--sk-accent-hover);box-shadow:0 1px #ffffff2e inset,0 6px 18px -6px #5b43cfa6}.sk-btn.is-ghost{--btn-bg: transparent;--btn-line: transparent;--btn-fg: var(--sk-text-2);--btn-hover: var(--sk-surface-2)}.sk-btn.is-soft{--btn-bg: var(--sk-accent-soft);--btn-fg: var(--sk-accent-text);--btn-line: transparent;--btn-hover: var(--sk-accent-line)}.sk-btn.is-danger{--btn-bg: var(--sk-danger-soft);--btn-fg: var(--sk-danger);--btn-line: transparent}.sk-btn.is-sm{min-height:36px;padding:0 12px;font-size:var(--sk-fs-sm);border-radius:10px;gap:6px}.sk-btn.is-lg{min-height:52px;padding:0 22px;font-size:var(--sk-fs-lg);border-radius:14px}.sk-btn.is-block{width:100%}.sk-btn .sk-btn-arrow{transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-btn:hover .sk-btn-arrow{transform:translate(3px)}.sk-btn.is-loading{color:transparent;pointer-events:none}.sk-btn.is-loading>.sk-spinner{position:absolute;color:var(--btn-fg)}.sk-icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface);color:var(--sk-text-2);cursor:pointer;transition:background var(--sk-dur-1),color var(--sk-dur-1),transform var(--sk-dur-1) var(--sk-ease)}.sk-icon-btn:hover{background:var(--sk-surface-2);color:var(--sk-text)}.sk-icon-btn:active{transform:scale(.94)}.sk-icon-btn.is-quiet{border-color:transparent;background:transparent}.sk-spinner{width:18px;height:18px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:sk-spin .7s linear infinite}@keyframes sk-spin{to{transform:rotate(360deg)}}.sk-card{position:relative;background:var(--sk-surface);border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);padding:var(--sk-5);box-shadow:var(--sk-shadow-1),var(--sk-inset);min-width:0}.sk-card.is-flush{padding:0;overflow:hidden}.sk-card.is-interactive{cursor:pointer;transition:border-color var(--sk-dur-2) var(--sk-ease),transform var(--sk-dur-2) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease)}.sk-card.is-interactive:hover{border-color:var(--sk-line-strong);transform:translateY(-2px);box-shadow:var(--sk-shadow-2)}.sk-card.is-interactive:active{transform:translateY(0) scale(.995)}.sk-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sk-3);margin-bottom:var(--sk-4);min-width:0}.sk-card-head>:first-child{min-width:0}.sk-card-title{display:flex;align-items:center;gap:10px;font-size:var(--sk-fs-md);font-weight:650;letter-spacing:-.005em}.sk-card-title svg{color:var(--sk-text-3)}.sk-card-sub{margin-top:2px;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}@media(min-width:768px){.sk-card{padding:var(--sk-6)}}.sk-badge{--b-fg: var(--sk-text-2);--b-bg: var(--sk-surface-2);display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:var(--sk-r-pill);background:var(--b-bg);color:var(--b-fg);font-size:var(--sk-fs-xs);font-weight:620;white-space:nowrap;line-height:1;transition:background var(--sk-dur-2) var(--sk-ease),color var(--sk-dur-2) var(--sk-ease)}.sk-badge .sk-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.sk-badge.t-accent{--b-fg: var(--sk-accent-text);--b-bg: var(--sk-accent-soft)}.sk-badge.t-success{--b-fg: var(--sk-success);--b-bg: var(--sk-success-soft)}.sk-badge.t-warning{--b-fg: var(--sk-warning);--b-bg: var(--sk-warning-soft)}.sk-badge.t-danger{--b-fg: var(--sk-danger);--b-bg: var(--sk-danger-soft)}.sk-badge.t-info{--b-fg: var(--sk-info);--b-bg: var(--sk-info-soft)}.sk-badge.is-pulse .sk-dot{animation:sk-pulse 1.8s var(--sk-ease-in-out) infinite}@keyframes sk-pulse{50%{opacity:.35;transform:scale(.7)}}.sk-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--sk-r-pill);background:var(--sk-accent);color:var(--sk-text-on-accent);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.sk-stats{display:grid;gap:var(--sk-3);grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:900px){.sk-stats.is-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.sk-stat{--s-fg: var(--sk-text);display:grid;gap:2px;align-content:start;text-align:left;padding:var(--sk-4);border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface);color:inherit;font:inherit;min-width:0}button.sk-stat,a.sk-stat{cursor:pointer;transition:border-color var(--sk-dur-2) var(--sk-ease),background var(--sk-dur-2) var(--sk-ease),transform var(--sk-dur-1) var(--sk-ease)}button.sk-stat:hover,a.sk-stat:hover{border-color:var(--sk-line-strong);background:var(--sk-surface-2)}button.sk-stat:active,a.sk-stat:active{transform:scale(.98)}.sk-stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--sk-text-3)}.sk-stat-label{font-size:var(--sk-fs-sm);color:var(--sk-text-2);font-weight:550}.sk-stat-value{font-size:28px;font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--s-fg);font-variant-numeric:tabular-nums}.sk-stat-value small{font-size:var(--sk-fs-md);font-weight:600;color:var(--sk-text-3);letter-spacing:0;margin-left:2px}.sk-stat-hint{font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-stat.t-accent{--s-fg: var(--sk-accent-text)}.sk-stat.t-warning{--s-fg: var(--sk-warning)}.sk-stat.t-danger{--s-fg: var(--sk-danger)}.sk-stat.t-success{--s-fg: var(--sk-success)}.sk-stat.is-hot{border-color:var(--sk-accent-line);background:linear-gradient(180deg,var(--sk-accent-soft),var(--sk-surface) 140%)}.sk-progress{--value: 0;position:relative;height:6px;border-radius:var(--sk-r-pill);background:var(--sk-surface-3);overflow:hidden}.sk-progress>i{position:absolute;inset:0 auto 0 0;width:calc(var(--value) * 1%);border-radius:inherit;background:linear-gradient(90deg,var(--sk-cube-3),var(--sk-cube-2));transition:width .6s var(--sk-ease)}.sk-progress.t-success>i{background:var(--sk-success)}.sk-blocks{display:flex;gap:3px;flex-wrap:wrap}.sk-blocks>i{width:14px;height:14px;border-radius:4px;background:var(--sk-surface-3);box-shadow:inset 0 -2px #00000014;transition:background var(--sk-dur-3) var(--sk-ease),transform var(--sk-dur-3) var(--sk-ease-pop)}.sk-blocks>i.is-done{background:linear-gradient(160deg,var(--sk-cube-1),var(--sk-cube-3));box-shadow:inset 0 -2px #0000002e}.sk-blocks>i.is-current{background:transparent;box-shadow:inset 0 0 0 2px var(--sk-cube-2)}.sk-blocks.is-sm>i{width:10px;height:10px;border-radius:3px}.sk-blocks.is-fluid{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:3px}.sk-blocks.is-fluid>i{width:auto;height:12px;border-radius:3px}.sk-list{display:grid}.sk-row{display:flex;align-items:center;gap:var(--sk-3);padding:12px var(--sk-3);margin:0 calc(var(--sk-3) * -1);border-radius:var(--sk-r-md);color:inherit;text-align:left;background:transparent;border:0;font:inherit;width:calc(100% + var(--sk-3) * 2);min-width:0;transition:background var(--sk-dur-1) var(--sk-ease)}.sk-row+.sk-row{box-shadow:0 -1px 0 var(--sk-line)}.sk-row:is(a,button){cursor:pointer}.sk-row:is(a,button):hover{background:var(--sk-surface-2)}.sk-row:is(a,button):hover+.sk-row,.sk-row:is(a,button):hover{box-shadow:none}.sk-row-main{flex:1;min-width:0;display:grid;gap:2px}.sk-row-title{font-weight:600;font-size:var(--sk-fs-md);line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sk-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-row-meta>:not(:last-child):after{content:"·";margin-left:10px;color:var(--sk-text-3);opacity:.7}.sk-row-meta>.sk-badge:after,.sk-row-meta>.sk-show-sm:after,.sk-row-meta.no-dots>:after{content:none!important}.sk-show-sm{display:none!important}@media(max-width:599px){.sk-show-sm{display:inline-flex!important}.sk-hide-sm{display:none!important}.sk-row{align-items:flex-start}.sk-row-meta>:has(+.sk-hide-sm:last-child):after,.sk-row-meta>:has(+.sk-hide-sm+:empty):after{content:none}.sk-row-end{align-self:center}}.sk-row-end{display:flex;align-items:center;gap:var(--sk-2);flex-shrink:0;color:var(--sk-text-3)}.sk-row-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--sk-surface-2);color:var(--sk-text-2);flex-shrink:0}.sk-row-icon.t-accent{background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-row-icon.t-warning{background:var(--sk-warning-soft);color:var(--sk-warning)}.sk-row-icon.t-success{background:var(--sk-success-soft);color:var(--sk-success)}.sk-row-icon.t-danger{background:var(--sk-danger-soft);color:var(--sk-danger)}.sk-row .sk-chevron{transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-row:hover .sk-chevron{transform:translate(3px);color:var(--sk-text)}.sk-empty{display:grid;justify-items:center;text-align:center;gap:var(--sk-2);padding:var(--sk-6) var(--sk-4);color:var(--sk-text-2)}.sk-empty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--sk-surface-2);color:var(--sk-text-3);margin-bottom:var(--sk-2)}.sk-empty-icon.t-success{background:var(--sk-success-soft);color:var(--sk-success)}.sk-empty b{color:var(--sk-text);font-weight:650}.sk-empty p{font-size:var(--sk-fs-sm);color:var(--sk-text-3);max-width:38ch}.sk-empty .sk-btn{margin-top:var(--sk-2)}.sk-empty.is-compact{padding:var(--sk-4) var(--sk-2);justify-items:start;text-align:left;grid-template-columns:auto 1fr;-moz-column-gap:var(--sk-3);column-gap:var(--sk-3);align-items:center}.sk-empty.is-compact .sk-empty-icon{margin:0;width:40px;height:40px;border-radius:12px;grid-row:span 2}.sk-skel{display:block;border-radius:8px;background:linear-gradient(90deg,var(--sk-surface-2) 0%,var(--sk-surface-3) 45%,var(--sk-surface-2) 90%);background-size:220% 100%;animation:sk-shimmer 1.4s linear infinite}@keyframes sk-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@media(prefers-reduced-motion:reduce){.sk-skel{animation:none}}.sk-field{display:grid;gap:6px;min-width:0}.sk-field>label,.sk-label{font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-input{width:100%;min-height:48px;padding:0 14px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line-strong);background:var(--sk-surface-2);color:var(--sk-text);font-size:16px;transition:border-color var(--sk-dur-1) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease),background var(--sk-dur-1)}.sk-input::-moz-placeholder{color:var(--sk-text-3);opacity:1}.sk-input::placeholder{color:var(--sk-text-3);opacity:1}.sk-input:hover{border-color:var(--sk-text-3)}.sk-input:focus{outline:none;border-color:var(--sk-accent);box-shadow:var(--sk-ring);background:var(--sk-surface)}.sk-input[aria-invalid=true]{border-color:var(--sk-danger)}.sk-input-wrap{position:relative;display:flex;align-items:center}.sk-input-wrap .sk-input{padding-right:52px}.sk-input-wrap>button{position:absolute;right:4px;width:44px;height:40px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--sk-text-3);cursor:pointer}.sk-input-wrap>button:hover{color:var(--sk-text);background:var(--sk-surface-3)}.sk-hint{font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-alert{--a-fg: var(--sk-text-2);--a-bg: var(--sk-surface-2);display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--sk-r-md);background:var(--a-bg);color:var(--a-fg);font-size:var(--sk-fs-sm);line-height:1.45}.sk-alert>svg{margin-top:1px}.sk-alert b{color:inherit}.sk-alert.t-danger{--a-fg: var(--sk-danger);--a-bg: var(--sk-danger-soft)}.sk-alert.t-warning{--a-fg: var(--sk-warning);--a-bg: var(--sk-warning-soft)}.sk-alert.t-success{--a-fg: var(--sk-success);--a-bg: var(--sk-success-soft)}.sk-alert.t-info{--a-fg: var(--sk-info);--a-bg: var(--sk-info-soft)}.sk-alert.is-shake{animation:sk-shake .32s var(--sk-ease)}@keyframes sk-shake{20%{transform:translate(-5px)}45%{transform:translate(4px)}70%{transform:translate(-2px)}}.sk-seg{display:inline-flex;gap:2px;padding:3px;border-radius:12px;background:var(--sk-surface-2);border:1px solid var(--sk-line);max-width:100%;overflow-x:auto;scrollbar-width:none}.sk-seg::-webkit-scrollbar{display:none}.sk-seg>button{position:relative;min-height:36px;padding:0 14px;border:0;border-radius:9px;background:transparent;color:var(--sk-text-2);font-size:var(--sk-fs-sm);font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--sk-dur-2) var(--sk-ease),color var(--sk-dur-2) var(--sk-ease),box-shadow var(--sk-dur-2)}.sk-seg>button:hover{color:var(--sk-text)}.sk-seg>button[aria-pressed=true],.sk-seg>button[aria-selected=true]{background:var(--sk-surface);color:var(--sk-text);box-shadow:var(--sk-shadow-1),0 0 0 1px var(--sk-line)}.sk-avatar{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(150deg,var(--sk-cube-2),var(--sk-cube-4));color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em;flex-shrink:0}.sk-avatar.is-lg{width:48px;height:48px;border-radius:14px;font-size:16px}.sk-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--sk-overlay);animation:sk-fade var(--sk-dur-2) var(--sk-ease) both}.sk-popover{position:absolute;z-index:90;min-width:260px;padding:6px;border-radius:14px;background:var(--sk-surface);border:1px solid var(--sk-line);box-shadow:var(--sk-shadow-3);transform-origin:top right;animation:sk-pop var(--sk-dur-2) var(--sk-ease) both}.sk-sheet{position:fixed;z-index:90;left:0;right:0;bottom:0;max-height:min(86vh,640px);overflow:auto;padding:8px 12px calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;background:var(--sk-surface);border-top:1px solid var(--sk-line);box-shadow:var(--sk-shadow-3);animation:sk-sheet-in var(--sk-dur-3) var(--sk-ease) both;overscroll-behavior:contain}.sk-sheet:before{content:"";display:block;width:40px;height:4px;border-radius:4px;background:var(--sk-line-strong);margin:4px auto 12px}.sk-menu-head{display:flex;align-items:center;gap:12px;padding:10px 10px 12px}.sk-menu-head b{display:block;font-size:var(--sk-fs-md)}.sk-menu-head small{display:block;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-menu-sep{height:1px;background:var(--sk-line);margin:6px 4px}.sk-menu-item{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 10px;border:0;border-radius:10px;background:transparent;color:var(--sk-text);font-size:var(--sk-fs-md);font-weight:520;text-align:left;cursor:pointer;transition:background var(--sk-dur-1)}.sk-menu-item>svg{color:var(--sk-text-3)}.sk-menu-item:hover,.sk-menu-item:focus-visible{background:var(--sk-surface-2)}.sk-menu-item.is-danger{color:var(--sk-danger)}.sk-menu-item.is-danger>svg{color:currentColor}.sk-menu-item .sk-menu-end{margin-left:auto;color:var(--sk-text-3);font-size:var(--sk-fs-sm)}.sk-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:grid;place-items:center;padding:var(--sk-gutter)}.sk-modal{width:min(100%,460px);padding:var(--sk-6);border-radius:var(--sk-r-xl);background:var(--sk-surface);border:1px solid var(--sk-line);box-shadow:var(--sk-shadow-3);animation:sk-pop var(--sk-dur-3) var(--sk-ease) both;display:grid;gap:var(--sk-3)}@keyframes sk-fade{0%{opacity:0}}@keyframes sk-pop{0%{opacity:0;transform:translateY(-4px) scale(.97)}}@keyframes sk-sheet-in{0%{transform:translateY(100%)}}.sk-collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--sk-dur-3) var(--sk-ease),opacity var(--sk-dur-2) var(--sk-ease);opacity:0}.sk-collapse>div{overflow:hidden;min-height:0}.sk-collapse.is-open{grid-template-rows:1fr;opacity:1}.sk-disclosure{display:flex;align-items:center;gap:12px;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:10px}.sk-disclosure .sk-caret{transition:transform var(--sk-dur-3) var(--sk-ease);color:var(--sk-text-3)}.sk-disclosure[aria-expanded=true] .sk-caret{transform:rotate(180deg)}.sk-enter{animation:sk-enter var(--sk-dur-3) var(--sk-ease) both}.sk-stagger>*{animation:sk-enter .26s var(--sk-ease) both;animation-delay:calc(var(--i, 0) * 40ms)}@keyframes sk-enter{0%{opacity:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){.sk-enter,.sk-stagger>*,.sk-popover,.sk-sheet,.sk-modal,.sk-backdrop{animation:none!important}.sk-card.is-interactive:hover{transform:none}}html,body{background:var(--sk-bg)}body{font-family:var(--sk-font)}.sk-skip{position:fixed;left:12px;top:-60px;z-index:200;padding:10px 14px;border-radius:10px;background:var(--sk-accent);color:#fff;font-weight:650;transition:top var(--sk-dur-2) var(--sk-ease)}.sk-skip:focus{top:12px}.sk-boot{min-height:60vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--sk-text-2)}.sk .st-wordmark{color:var(--sk-text);font-size:20px;letter-spacing:1.5px;gap:10px}.sk .st-wordmark svg{width:28px;height:32px}.sk .st-wordmark small{color:var(--sk-text-3);font-size:10px;letter-spacing:.1px;font-weight:550}.sk-app{min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(1100px 420px at 50% -180px,var(--sk-bg-glow),transparent 70%),var(--sk-bg)}.sk-topbar{position:sticky;top:0;z-index:50;padding-top:env(safe-area-inset-top);background:color-mix(in srgb,var(--sk-bg) 80%,transparent);-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px);border-bottom:1px solid var(--sk-line)}.sk-topbar-in{max-width:calc(var(--sk-content) + 2 * var(--sk-gutter));margin:0 auto;height:var(--sk-topbar);padding:0 var(--sk-gutter);display:flex;align-items:center;gap:20px}.sk-brand{display:flex;align-items:center;border-radius:10px}.sk-topnav{display:none}.sk-topnav-link{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:10px;color:var(--sk-text-2);font-size:14px;font-weight:600;transition:color var(--sk-dur-1) var(--sk-ease),background var(--sk-dur-2) var(--sk-ease)}.sk-topnav-link svg{color:var(--sk-text-3);transition:color var(--sk-dur-1)}.sk-topnav-link:hover{color:var(--sk-text);background:var(--sk-surface-2)}.sk-topnav-link[aria-current=page]{color:var(--sk-accent-text);background:var(--sk-accent-soft)}.sk-topnav-link[aria-current=page] svg{color:currentColor}.sk-topnav-link[aria-current=page]:after{content:"";position:absolute;left:16px;right:16px;bottom:-12px;height:2px;border-radius:2px;background:var(--sk-accent-text);animation:sk-grow var(--sk-dur-3) var(--sk-ease) both}@keyframes sk-grow{0%{transform:scaleX(.2);opacity:0}}.sk-topnav-link .sk-count{margin-left:2px}.sk-topbar-end{margin-left:auto;display:flex;align-items:center;gap:8px}.sk .theme-toggle{width:44px;height:44px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface);color:var(--sk-text-2);display:inline-grid;place-items:center;box-shadow:none;padding:0}.sk .theme-toggle:hover{color:var(--sk-text);background:var(--sk-surface-2)}.sk-user-anchor{position:relative}.sk-user-btn{display:flex;align-items:center;gap:10px;height:44px;padding:3px;border-radius:13px;border:1px solid var(--sk-line);background:var(--sk-surface);color:var(--sk-text);font-size:14px;font-weight:600;cursor:pointer;transition:background var(--sk-dur-1),border-color var(--sk-dur-1)}.sk-user-btn:hover,.sk-user-btn[aria-expanded=true]{background:var(--sk-surface-2);border-color:var(--sk-line-strong)}.sk-user-name{display:none;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:10px}.sk-user-menu{min-width:280px}.sk-menu-alert{margin:4px}.sk-menu-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.sk-main{flex:1;outline:none;display:flex;flex-direction:column}.sk-page{width:100%;max-width:calc(var(--sk-content) + 2 * var(--sk-gutter));margin:0 auto;padding:20px var(--sk-gutter) 32px;flex:1}.sk-footer{width:100%;max-width:calc(var(--sk-content) + 2 * var(--sk-gutter));margin:0 auto;padding:16px var(--sk-gutter) calc(var(--sk-tabbar) + 24px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--sk-text-3);font-size:var(--sk-fs-sm);border-top:1px solid var(--sk-line)}.sk-footer .install-app{margin:0}.sk-footer .text-button{color:var(--sk-accent-text);font-size:var(--sk-fs-sm);font-weight:600}.sk-signin-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;margin:0 0 16px;border-radius:var(--sk-r-md);background:var(--sk-accent-soft);color:var(--sk-text-2);font-size:var(--sk-fs-sm);border:1px solid var(--sk-accent-line)}.sk-signin-hint .sk-btn{flex-shrink:0}.sk-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(4,1fr);padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--sk-surface) 90%,transparent);-webkit-backdrop-filter:saturate(1.5) blur(16px);backdrop-filter:saturate(1.5) blur(16px);border-top:1px solid var(--sk-line);transition:transform var(--sk-dur-3) var(--sk-ease)}.sk-tabbar.is-teacher{grid-template-columns:repeat(5,1fr)}.is-typing .sk-tabbar,.is-focus .sk-tabbar{transform:translateY(110%)}.sk-tab{display:grid;justify-items:center;align-content:center;gap:3px;min-height:52px;padding:2px 0;border:0;background:transparent;color:var(--sk-text-3);font:inherit;font-size:11px;font-weight:620;cursor:pointer;-webkit-tap-highlight-color:transparent}.sk-tab-icon{position:relative;display:grid;place-items:center;width:56px;height:30px;border-radius:15px;transition:background var(--sk-dur-2) var(--sk-ease),color var(--sk-dur-2)}.sk-tab-label{line-height:1.15;text-align:center}.sk-tab[aria-current=page]{color:var(--sk-accent-text)}.sk-tab[aria-current=page] .sk-tab-icon{background:var(--sk-accent-soft)}.sk-tab[aria-current=page] .sk-tab-icon svg{animation:sk-tab-pop var(--sk-dur-3) var(--sk-ease-pop)}.sk-tab:active .sk-tab-icon{transform:scale(.92)}@keyframes sk-tab-pop{0%{transform:scale(.8)}}.sk-tab-dot{position:absolute;top:2px;right:13px;width:9px;height:9px;border-radius:50%;background:var(--sk-warning);box-shadow:0 0 0 2px var(--sk-surface)}.sk-sheet-close{position:absolute;right:10px;top:10px}.sk-sheet-title{font-size:var(--sk-fs-lg);font-weight:650;padding:2px 10px 12px}.sk-menu-item.is-rich{align-items:flex-start;min-height:60px;padding:10px}.sk-menu-item.is-rich>svg{margin-top:2px}.sk-menu-item.is-rich>span:not(.sk-count){display:grid;gap:2px}.sk-menu-item.is-rich b{font-weight:620;font-size:var(--sk-fs-md)}.sk-menu-item.is-rich small{color:var(--sk-text-3);font-size:var(--sk-fs-sm);line-height:1.35}.sk-menu-item.is-rich .sk-count{margin-left:auto;align-self:center}.sk-menu-item[aria-current=page]{background:var(--sk-accent-soft)}.sk-menu-item[aria-current=page]>svg{color:var(--sk-accent-text)}@media(min-width:600px){.sk-user-name{display:block}}@media(min-width:900px){.sk-topnav{display:flex;gap:4px;margin-left:8px}.sk-tabbar.is-student,.sk-app .sk-tabbar{display:none}.sk-footer{padding-bottom:32px}.sk-page{padding-top:32px}}.sk-teacher{min-height:100svh;background:radial-gradient(900px 380px at 70% -160px,var(--sk-bg-glow),transparent 70%),var(--sk-bg)}.sk-sidebar{display:none}.sk-teacher-main{min-width:0;display:flex;flex-direction:column;min-height:100svh}.sk-tbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(10px + env(safe-area-inset-top)) var(--sk-gutter) 10px;background:color-mix(in srgb,var(--sk-bg) 82%,transparent);-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px);border-bottom:1px solid var(--sk-line)}.sk-tbar-title{display:flex;align-items:center;gap:12px;min-width:0}.sk-tbar-title>div{min-width:0}.sk-tbar-title h1{font-size:var(--sk-fs-lg);font-weight:680;letter-spacing:-.015em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-tbar-title p{display:none;font-size:var(--sk-fs-sm);color:var(--sk-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-tbar-brand .st-wordmark>span{display:none}.sk-tbar-brand .st-wordmark svg{width:26px;height:30px}.sk-tbar-end{display:flex;align-items:center;gap:8px;flex-shrink:0}.sk-create-btn{padding:0 14px}.sk-create-menu{display:grid;gap:2px}.sk-subtabs{padding:14px var(--sk-gutter) 0}.sk-subtabs .sk-seg{width:100%}.sk-subtabs .sk-seg>button{flex:1 0 auto}.sk-teacher-content{flex:1;width:100%;max-width:1320px;padding:20px var(--sk-gutter) calc(var(--sk-tabbar) + 32px + env(safe-area-inset-bottom));outline:none}@media(min-width:600px){.sk-tbar-title p{display:block}.sk-subtabs .sk-seg{width:auto}}@media(max-width:380px){.sk-create-btn span{display:none}.sk-create-btn{width:44px;padding:0}}@media(min-width:1024px){.sk-teacher{display:grid;grid-template-columns:var(--sk-sidebar) minmax(0,1fr)}.sk-sidebar{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;padding:20px 14px 16px;border-right:1px solid var(--sk-line);background:color-mix(in srgb,var(--sk-surface) 70%,var(--sk-bg));overflow-y:auto}.sk-sidebar-brand{display:flex;padding:4px 10px 8px;border-radius:10px}.sk-sidebar-role{padding:2px 12px 20px;font-size:11px;color:var(--sk-text-3);letter-spacing:.08em;text-transform:uppercase;font-weight:650}.sk-sidenav{display:grid;gap:2px}.sk-sidenav-link{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--sk-text-2);font:inherit;font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:background var(--sk-dur-1) var(--sk-ease),color var(--sk-dur-1)}.sk-sidenav-link>svg{color:var(--sk-text-3);transition:color var(--sk-dur-1)}.sk-sidenav-link:hover{background:var(--sk-surface-2);color:var(--sk-text)}.sk-sidenav-link[aria-current=page]{background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-sidenav-link[aria-current=page]>svg{color:currentColor}.sk-sidenav-link[aria-current=page]:before{content:"";position:absolute;left:-14px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--sk-accent-text);animation:sk-bar var(--sk-dur-3) var(--sk-ease) both}@keyframes sk-bar{0%{transform:scaleY(.2);opacity:0}}.sk-sidenav-link .sk-count{margin-left:auto}.sk-sidenav-link.is-quiet{color:var(--sk-text-3)}.sk-sidebar-foot{margin-top:auto;display:grid;gap:2px;padding-top:12px;border-top:1px solid var(--sk-line)}.sk-tbar{padding:14px 32px}.sk-tbar-brand{display:none}.sk-tbar-title h1{font-size:var(--sk-fs-xl)}.sk-subtabs{padding:16px 32px 0}.sk-teacher-content{padding:24px 32px 48px}.sk-tabbar.is-teacher{display:none}}@media(prefers-reduced-motion:reduce){.sk-topnav-link[aria-current=page]:after,.sk-sidenav-link[aria-current=page]:before,.sk-tab[aria-current=page] .sk-tab-icon svg{animation:none}}.sk-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--sk-5)}.sk-gap{margin-top:var(--sk-3)}.sk-inline-btn{border:0;background:none;padding:0;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sk-due.t-danger{color:var(--sk-danger);font-weight:600}.sk-due.t-warning{color:var(--sk-warning);font-weight:600}.sk-row-note{display:flex;gap:6px;align-items:flex-start;margin-top:4px;padding:6px 10px;border-radius:8px;background:var(--sk-warning-soft);color:var(--sk-text-2);font-size:var(--sk-fs-sm);line-height:1.4}.sk-row-note svg{margin-top:2px;color:var(--sk-warning)}.sk-more{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--sk-accent-text);font-size:var(--sk-fs-sm);font-weight:600}.sk-card-foot{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--sk-line);font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.sk-dot-inline{width:8px;height:8px;border-radius:50%;background:var(--sk-accent-text);flex-shrink:0}.sk-subhead{margin:20px 0 4px;font-size:var(--sk-fs-sm);font-weight:650;color:var(--sk-text-2)}.sk-warn-text{color:var(--sk-warning);font-weight:600}.sk-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;font-size:18px;font-weight:750;font-variant-numeric:tabular-nums;flex-shrink:0;background:var(--sk-surface-2);color:var(--sk-text)}.sk-mark.t-success{background:var(--sk-success-soft);color:var(--sk-success)}.sk-mark.t-accent{background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-mark.t-warning{background:var(--sk-warning-soft);color:var(--sk-warning)}.sk-mark.t-danger{background:var(--sk-danger-soft);color:var(--sk-danger)}.sk-date-chip{display:grid;place-items:center;align-content:center;width:44px;height:44px;border-radius:12px;background:var(--sk-surface-2);border:1px solid var(--sk-line);flex-shrink:0;line-height:1}.sk-date-chip b{font-size:17px;font-weight:700}.sk-date-chip small{font-size:11px;color:var(--sk-text-3);margin-top:2px}.sk-date-chip.is-today{background:var(--sk-accent-soft);border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-gate{max-width:560px;margin:8vh auto 0;display:grid;justify-items:center;text-align:center;gap:10px;padding:40px 24px}.sk-gate .sk-actions{justify-content:center}.sk-hero{display:grid;gap:6px;margin-bottom:var(--sk-6)}.sk-hero .sk-kicker{color:var(--sk-text-3);letter-spacing:.04em;text-transform:none;font-size:var(--sk-fs-sm);font-weight:550}.sk-hero .sk-kicker:first-letter{text-transform:uppercase}.sk-col{display:grid;gap:var(--sk-4);align-content:start;min-width:0}.sk-auth{position:relative;min-height:100svh;display:grid;background:radial-gradient(800px 420px at 85% -10%,var(--sk-bg-glow),transparent 70%),var(--sk-bg)}.sk-auth-theme{position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;z-index:5}.sk-auth-brand{display:none}.sk-auth-main{display:grid;place-items:center;padding:calc(28px + env(safe-area-inset-top)) var(--sk-gutter) calc(28px + env(safe-area-inset-bottom))}.sk-auth-card{width:min(100%,420px);display:grid;gap:18px}.sk-auth-card header{display:grid;gap:8px}.sk-auth-logo{margin-bottom:6px}.sk-auth-logo .st-wordmark{font-size:22px}.sk-login-kind{display:inline-flex;align-items:center;gap:6px;min-height:18px}.sk-login-kind.is-ok{color:var(--sk-success);font-weight:600}.sk-caps{color:var(--sk-warning);font-weight:600}.sk-mono-input{font-family:var(--sk-mono);letter-spacing:.06em}.sk-mono-input::-moz-placeholder{font-family:var(--sk-font);letter-spacing:0}.sk-mono-input::placeholder{font-family:var(--sk-font);letter-spacing:0}.sk-auth-forgot{text-align:center;margin-top:-4px}.sk-auth-sep{display:flex;align-items:center;gap:12px;color:var(--sk-text-3);font-size:var(--sk-fs-xs);text-transform:uppercase;letter-spacing:.08em}.sk-auth-sep:before,.sk-auth-sep:after{content:"";flex:1;height:1px;background:var(--sk-line)}.sk-auth-alt{display:grid}.sk-auth-alt .sk-row{margin:0;width:100%;padding:12px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface)}.sk-auth-alt .sk-row+.sk-row{margin-top:8px;box-shadow:none}.sk-auth-alt .sk-row:hover{border-color:var(--sk-line-strong)}@media(min-width:600px)and (max-width:1023px){.sk-auth-card{padding:32px;border-radius:var(--sk-r-xl);background:var(--sk-surface);border:1px solid var(--sk-line);box-shadow:var(--sk-shadow-2)}}@media(min-width:1024px){.sk-auth{grid-template-columns:minmax(0,1.1fr) minmax(460px,1fr)}.sk-auth-brand{position:relative;display:flex;flex-direction:column;gap:28px;padding:40px 56px 48px;overflow:hidden;border-right:1px solid var(--sk-line);background:radial-gradient(600px 360px at 20% 30%,var(--sk-bg-glow),transparent 70%),color-mix(in srgb,var(--sk-surface) 55%,var(--sk-bg))}.sk-auth-brand .st-wordmark{font-size:22px}.sk-auth-pitch{margin-top:auto;display:grid;gap:12px}.sk-auth-pitch h2{font-size:44px;line-height:1.05;font-weight:720;letter-spacing:-.035em;max-width:12ch}.sk-auth-pitch p{color:var(--sk-text-2);font-size:var(--sk-fs-lg);max-width:40ch}.sk-auth-points{list-style:none;margin:0 0 auto;padding:0;display:grid;gap:12px;color:var(--sk-text-2)}.sk-auth-points li{display:flex;align-items:center;gap:12px}.sk-auth-points svg{color:var(--sk-accent-text)}.sk-auth-logo{display:none}.sk-auth-main{padding:48px}}.sk-stack-art{width:100%;max-width:500px;height:auto;overflow:visible}.sk-stack-art text{fill:var(--sk-text-2);font-family:var(--sk-font);font-size:14px;font-weight:600}.sk-stack-art .lead{stroke:var(--sk-line-strong);stroke-width:1.5;fill:none}.sk-stack-layer{animation:sk-layer-in .52s var(--sk-ease) both;animation-delay:calc(.12s + var(--i) * .13s)}.sk-stack-layer.is-a .f-top{fill:#8b75f5}.sk-stack-layer.is-a .f-left{fill:#4a3aa0}.sk-stack-layer.is-a .f-right{fill:#6652ce}.sk-stack-layer.is-b .f-top{fill:#b9a8ff}.sk-stack-layer.is-b .f-left{fill:#6652ce}.sk-stack-layer.is-b .f-right{fill:#8b75f5}.sk-stack-layer.is-c .f-top{fill:#8ddbc9}.sk-stack-layer.is-c .f-left{fill:#2b8f7d}.sk-stack-layer.is-c .f-right{fill:#4fb8a3}.sk-stack-layer.is-next path:not(.lead){fill:transparent;stroke:var(--sk-accent-text);stroke-width:1.5;stroke-dasharray:5 5}.sk-stack-layer.is-next text{fill:var(--sk-text-3)}.sk-stack-layer.is-next{animation:sk-layer-in .52s var(--sk-ease) both,sk-hover 3.2s var(--sk-ease-in-out) 1.4s infinite;animation-delay:calc(.12s + var(--i) * .13s),1.4s}@keyframes sk-layer-in{0%{opacity:0;transform:translateY(-26px)}}@keyframes sk-hover{50%{transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.sk-stack-layer,.sk-stack-layer.is-next{animation:none}}.sk-home-grid{display:grid;gap:var(--sk-4)}@media(min-width:1024px){.sk-home-grid{grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:var(--sk-5)}}.sk-continue{display:grid;gap:20px;overflow:hidden;background:radial-gradient(500px 220px at 100% 0%,var(--sk-bg-glow),transparent 70%),var(--sk-surface);border-color:var(--sk-accent-line)}.sk-continue-body{display:grid;gap:6px;min-width:0}.sk-continue-module{margin-top:8px;font-size:var(--sk-fs-sm);color:var(--sk-text-2);font-weight:550}.sk-continue-title{font-size:var(--sk-fs-2xl);font-weight:700;letter-spacing:-.02em;line-height:1.2}.sk-continue-progress{display:flex;align-items:center;gap:12px;margin-top:10px}.sk-continue-code{margin:0;border-radius:var(--sk-r-md);background:var(--sk-code-bg);border:1px solid var(--sk-line);align-self:center;overflow:hidden}.sk-continue-code figcaption{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:600;letter-spacing:.04em;color:#a9b0c6;border-bottom:1px solid rgba(255,255,255,.07)}.sk-continue-code figcaption i{width:8px;height:8px;border-radius:50%;background:#ffffff29}.sk-continue-code figcaption span{margin-left:6px}.sk-continue-code pre{margin:0;padding:12px 14px 14px;color:var(--sk-code-text);font-family:var(--sk-mono);font-size:12.5px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;max-height:132px;overflow:hidden}@media(min-width:768px){.sk-continue{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center}}@media(max-width:767px){.sk-continue-code{display:none}.sk-continue .sk-actions .sk-btn.is-lg{flex:1}}.sk-grades-sum{display:grid;gap:14px}.sk-accum{display:grid;gap:8px;padding:14px;border-radius:var(--sk-r-md);background:var(--sk-surface-2)}.sk-accum-top{display:flex;align-items:baseline;justify-content:space-between}.sk-accum-top b{font-size:24px;font-weight:720;letter-spacing:-.02em}.sk-accum-top small{font-size:var(--sk-fs-md);color:var(--sk-text-3);font-weight:600}.sk-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sk-mini-stats>*{display:grid;gap:2px;padding:12px 14px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line)}.sk-mini-stats b{font-size:22px;font-weight:720}.sk-mini-stats a.is-warn{border-color:color-mix(in srgb,var(--sk-warning) 45%,transparent);background:var(--sk-warning-soft)}.sk-mini-stats a.is-warn b{color:var(--sk-warning)}.sk-stack-list{display:grid;gap:4px}.sk-stack-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;margin:0 -12px;border-radius:var(--sk-r-md);transition:background var(--sk-dur-1)}.sk-stack-item:hover{background:var(--sk-surface-2)}.sk-stack-no{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--sk-accent-soft);color:var(--sk-accent-text);font-weight:700;font-size:13px}.sk-stack-main{display:grid;gap:7px;min-width:0}.sk-stack-title{font-size:var(--sk-fs-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-course-hero{display:grid;gap:var(--sk-5);margin-bottom:var(--sk-5)}.sk-course-hero-text{display:grid;gap:8px;max-width:64ch}.sk-course-progress{display:grid;gap:12px;padding:var(--sk-5);border-radius:var(--sk-r-lg);background:var(--sk-surface);border:1px solid var(--sk-line);align-content:start}.sk-course-progress-top{display:flex;align-items:baseline;justify-content:space-between}.sk-course-progress-top b{font-size:28px;font-weight:720;letter-spacing:-.02em}.sk-course-progress-top small{font-size:var(--sk-fs-md);color:var(--sk-text-3)}.sk-course-progress .sk-btn{white-space:normal;text-align:left;line-height:1.25;padding:10px 16px;justify-content:space-between}@media(min-width:1024px){.sk-course-hero{grid-template-columns:minmax(0,1fr) 380px;align-items:center}}.sk-course-layout{display:grid;gap:var(--sk-4)}.sk-modules{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--sk-gutter);margin:0 calc(var(--sk-gutter) * -1);padding:2px var(--sk-gutter) 6px;scrollbar-width:none}.sk-modules::-webkit-scrollbar{display:none}.sk-module-tab{scroll-snap-align:start;flex:0 0 min(78%,300px);display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:var(--sk-r-lg);border:1px solid var(--sk-line);background:var(--sk-surface);color:var(--sk-text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--sk-dur-2) var(--sk-ease),background var(--sk-dur-2) var(--sk-ease),transform var(--sk-dur-1) var(--sk-ease)}.sk-module-tab:hover{border-color:var(--sk-line-strong)}.sk-module-tab:active{transform:scale(.985)}.sk-module-tab[aria-pressed=true]{border-color:var(--sk-accent);background:linear-gradient(180deg,var(--sk-accent-soft),var(--sk-surface) 160%);box-shadow:0 0 0 1px var(--sk-accent) inset}.sk-module-tab.is-future{cursor:default;opacity:.75;border-style:dashed;background:transparent}.sk-module-no{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;flex-shrink:0;background:var(--sk-surface-2);color:var(--sk-text-2);font-weight:720;font-size:14px}.sk-module-tab[aria-pressed=true] .sk-module-no{background:var(--sk-accent);color:#fff}.sk-module-text{display:grid;gap:6px;min-width:0;flex:1}.sk-module-title{font-weight:640;font-size:var(--sk-fs-md);line-height:1.3}.sk-module-meta{font-size:var(--sk-fs-sm);color:var(--sk-text-3)}@media(min-width:1024px){.sk-course-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:var(--sk-5)}.sk-modules{flex-direction:column;overflow:visible;margin:0;padding:0;position:sticky;top:calc(var(--sk-topbar) + 20px)}.sk-module-tab{flex:none}}.sk-topics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:var(--sk-4);margin-bottom:var(--sk-2);border-bottom:1px solid var(--sk-line)}.sk-topics-head .sk-h2{margin:4px 0 2px}.sk-topics{list-style:none;margin:0;padding:0;display:grid}.sk-topic{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:14px 0}.sk-topic+.sk-topic{border-top:1px solid var(--sk-line)}.sk-topic:before{content:"";position:absolute;left:17px;top:50px;bottom:-14px;width:2px;border-radius:2px;background:var(--sk-line)}.sk-topic:last-child:before{display:none}.sk-topic.is-done:before{background:color-mix(in srgb,var(--sk-cube-2) 60%,transparent)}.sk-topic-marker{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--sk-surface-2);border:1px solid var(--sk-line-strong);color:var(--sk-text-2);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;transition:background var(--sk-dur-3) var(--sk-ease),transform var(--sk-dur-3) var(--sk-ease-pop)}.sk-topic.is-done .sk-topic-marker{background:linear-gradient(160deg,var(--sk-cube-1),var(--sk-cube-3));border-color:transparent;color:#fff}.sk-topic.is-current .sk-topic-marker{background:var(--sk-surface);border:2px solid var(--sk-accent-text);color:var(--sk-accent-text);box-shadow:0 0 0 4px var(--sk-accent-soft)}.sk-topic-body{display:grid;gap:8px;min-width:0}.sk-topic-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:6px 10px;margin:-6px -10px;border-radius:var(--sk-r-md);transition:background var(--sk-dur-1) var(--sk-ease)}.sk-topic-link:hover{background:var(--sk-surface-2)}.sk-topic-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:640;font-size:var(--sk-fs-md);line-height:1.35}.sk-topic-now{padding:2px 8px;border-radius:var(--sk-r-pill);background:var(--sk-accent);color:#fff;font-size:11px;font-weight:700}.sk-topic-goal{grid-column:1;font-size:var(--sk-fs-sm);color:var(--sk-text-3);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sk-topic-min{grid-column:2;grid-row:1;display:inline-flex;align-items:center;gap:4px;font-size:var(--sk-fs-sm);color:var(--sk-text-3);white-space:nowrap}.sk-topic-link:hover .sk-topic-min svg{transform:translate(2px)}.sk-topic-min svg{transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-tracks{display:flex;flex-wrap:wrap;gap:6px}.sk-track{--t-fg: var(--sk-text-2);--t-bg: var(--sk-surface-2);--t-line: var(--sk-line);display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:9px;border:1px solid var(--t-line);background:var(--t-bg);color:var(--t-fg);font-size:12px;font-weight:620;transition:border-color var(--sk-dur-1),transform var(--sk-dur-1) var(--sk-ease)}.sk-track b{font-weight:600;opacity:.9}.sk-track b:before{content:"·";margin-right:6px;opacity:.6}.sk-track:hover{border-color:var(--sk-line-strong)}.sk-track:active{transform:scale(.96)}.sk-track.t-success{--t-fg: var(--sk-success);--t-bg: var(--sk-success-soft);--t-line: transparent}.sk-track.t-accent{--t-fg: var(--sk-accent-text);--t-bg: var(--sk-accent-soft);--t-line: transparent}.sk-track.t-warning{--t-fg: var(--sk-warning);--t-bg: var(--sk-warning-soft);--t-line: transparent}.sk-track.t-danger{--t-fg: var(--sk-danger);--t-bg: var(--sk-danger-soft);--t-line: transparent}.sk-track.t-info{--t-fg: var(--sk-info);--t-bg: var(--sk-info-soft);--t-line: transparent}@media(max-width:520px){.sk-topic{grid-template-columns:30px minmax(0,1fr);gap:12px}.sk-topic-marker{width:30px;height:30px;border-radius:9px;font-size:12px}.sk-topic:before{left:14px;top:44px}.sk-topic-min{display:none}.sk-topic-link{grid-template-columns:minmax(0,1fr)}}.sk-course-extra{display:grid;gap:var(--sk-4);margin-top:var(--sk-5)}@media(min-width:1024px){.sk-course-extra{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.sk-future{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.sk-future li{padding:6px 10px;border-radius:8px;border:1px dashed var(--sk-line-strong);color:var(--sk-text-3);font-size:var(--sk-fs-sm)}.sk-external{margin-top:var(--sk-4);padding-top:var(--sk-4);border-top:1px solid var(--sk-line)}.sk-external .sk-disclosure{min-height:40px}.sk-external-title{display:flex;align-items:center;gap:10px;flex:1;font-weight:620;flex-wrap:wrap}.sk-thome{display:grid;gap:var(--sk-5)}.sk-thome-hero{margin:0;gap:var(--sk-4)}.sk-thome-hero>div:first-child{display:grid;gap:6px}.sk-quick{display:flex;gap:8px;overflow-x:auto;margin:0 calc(var(--sk-gutter) * -1);padding:2px var(--sk-gutter);scrollbar-width:none}.sk-quick::-webkit-scrollbar{display:none}@media(max-width:599px){.sk-quick{display:none}}@media(min-width:900px){.sk-thome-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end}.sk-quick{margin:0;padding:0;overflow:visible}}.sk-thome-grid{display:grid;gap:var(--sk-4)}@media(min-width:1100px){.sk-thome-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:var(--sk-5)}}.sk-groups{display:grid}.sk-groups-head{display:none}.sk-group-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name avg debt" "accum accum accum";gap:8px 16px;align-items:center;padding:12px;margin:0 -12px;border:0;border-radius:var(--sk-r-md);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--sk-dur-1)}.sk-group-row+.sk-group-row{box-shadow:0 -1px 0 var(--sk-line)}.sk-group-row:hover{background:var(--sk-surface-2);box-shadow:none}.sk-group-name{grid-area:name;display:grid;min-width:0}.sk-group-name b{font-weight:640;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-group-name small{font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-group-accum{grid-area:accum;display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;font-size:var(--sk-fs-sm)}.sk-group-accum small{color:var(--sk-text-3)}.sk-group-avg{grid-area:avg;font-weight:700}.sk-group-avg:before,.sk-group-debt:before{content:attr(data-label);display:block;font-size:11px;font-weight:600;color:var(--sk-text-3)}.sk-group-debt{grid-area:debt;text-align:right}@media(min-width:700px){.sk-groups-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) 80px 70px;gap:16px;padding:0 0 8px;font-size:var(--sk-fs-xs);font-weight:650;color:var(--sk-text-3);text-transform:uppercase;letter-spacing:.06em}.sk-group-row{grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) 80px 70px;grid-template-areas:"name accum avg debt"}.sk-group-avg:before,.sk-group-debt:before{content:none}.sk-group-debt{text-align:left}}.sk-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sk-mini-grid>button{display:grid;gap:2px;padding:12px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface-2);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--sk-dur-1),transform var(--sk-dur-1) var(--sk-ease)}.sk-mini-grid>button:hover{border-color:var(--sk-line-strong)}.sk-mini-grid>button:active{transform:scale(.97)}.sk-mini-grid b{font-size:22px;font-weight:720}.sk-mini-grid span{font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.sk-auth-roles{display:flex;margin:20px 0}.sk-auth-roles>button{flex:1;min-height:44px}.sk-auth-teacher-help{padding:14px 16px;margin-bottom:20px;border:1px solid var(--sk-line);border-radius:12px;color:var(--sk-text-2);font-size:14px}.sk-auth-teacher-help p{margin:0 0 10px}.sk-auth-teacher-help p:last-child{margin-bottom:0}.sk-auth-teacher-help summary{cursor:pointer;color:var(--sk-accent-text)}.sk-access-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sk-access-options h3{margin:12px 0 8px}.sk-access-options p{color:var(--sk-text-2)}.sk-access-create{display:flex;flex-wrap:wrap;align-items:end;gap:16px;margin-top:20px}.sk-access-create .sk-field{flex:1;min-width:180px}.sk-access-create .sk-btn{margin-bottom:0}.sk-access-person{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--sk-line)}.sk-access-person>div{min-width:0;overflow-wrap:anywhere}.sk-access-person .sk-btn{flex-shrink:0}.sk-access-search{display:flex;align-items:center;gap:8px}.sk-access-credential dl>div{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.sk-access-credential dd{margin:0;overflow-wrap:anywhere}@media(max-width:800px){.sk-access-options{grid-template-columns:1fr}.sk-access-person{align-items:start}.sk-access .sk-page-head{flex-wrap:wrap}}.sk-chip-btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--sk-line);background:var(--sk-surface-2);color:var(--sk-text-2);font:inherit;font-size:var(--sk-fs-sm);font-weight:600;cursor:pointer;transition:background var(--sk-dur-1),border-color var(--sk-dur-1),color var(--sk-dur-1)}.sk-chip-btn:hover{border-color:var(--sk-line-strong);color:var(--sk-text)}.sk-chip-btn[aria-pressed=true]{background:var(--sk-accent-soft);border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-seg-count{display:inline-grid;place-items:center;min-width:20px;height:18px;margin-left:6px;padding:0 5px;border-radius:9px;background:var(--sk-surface-3);color:var(--sk-text-2);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.sk-seg>[aria-selected=true] .sk-seg-count{background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-due.t-info{color:var(--sk-info);font-weight:600}.sk kbd{display:inline-block;min-width:20px;padding:1px 6px;border-radius:6px;border:1px solid var(--sk-line-strong);border-bottom-width:2px;background:var(--sk-surface-2);color:var(--sk-text-2);font-family:var(--sk-mono);font-size:11px;text-align:center}.sk-actions-tight{margin-top:10px}.sk-queue{display:grid;gap:var(--sk-4)}.sk-queue-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sk-queue-head .sk-h2{margin-bottom:2px}.sk-queue-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sk-queue-tools .sk-seg{max-width:100%}.sk-search{position:relative;flex:1 1 220px;min-width:0}.sk-search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--sk-text-3);pointer-events:none}.sk-search .sk-input{min-height:40px;padding-left:36px;font-size:var(--sk-fs-md)}.sk-select .sk-input{min-height:40px;padding-right:32px;font-size:var(--sk-fs-sm)}.sk-filter-chip{display:inline-flex;align-items:center;gap:4px;justify-self:start;padding:2px 2px 2px 12px;border-radius:var(--sk-r-pill);background:var(--sk-accent-soft);color:var(--sk-text-2);font-size:var(--sk-fs-sm);border:1px solid var(--sk-accent-line)}.sk-filter-chip b{color:var(--sk-text)}.sk-filter-chip .sk-icon-btn{width:32px;height:32px}.sk-queue-list{padding:8px 20px}.sk-queue-banner{margin:0;width:100%;padding:12px 16px;border-radius:var(--sk-r-md);border:1px solid var(--sk-accent-line);background:var(--sk-accent-soft)}.sk-queue-banner:hover{background:color-mix(in srgb,var(--sk-accent-soft) 70%,var(--sk-surface-2))}.sk-sub-row .sk-avatar{width:40px;height:40px}.sk-subs{display:grid;gap:12px;margin-top:12px}@media(max-width:599px){.sk-queue-list{padding:4px 14px}}.sk-review{display:grid;gap:var(--sk-4)}.sk-review-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.sk-review-top .sk-link{min-height:40px;padding:0 4px;border:0;background:none;font:inherit;font-weight:600;cursor:pointer}.sk-review-pos{display:flex;align-items:center;gap:6px;color:var(--sk-text-2);font-size:var(--sk-fs-sm)}.sk-review-pos .sk-icon-btn{width:40px;height:40px}.sk-review-pos .sk-icon-btn:disabled{opacity:.4;cursor:default}.sk-review-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 16px;align-items:center}.sk-review-who{display:grid;gap:4px;min-width:0}.sk-review-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.sk-review-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;font-size:var(--sk-fs-sm)}.sk-review-meta div{display:grid;gap:2px}.sk-review-meta dt{color:var(--sk-text-3);font-size:var(--sk-fs-xs)}.sk-review-meta dd{margin:0;color:var(--sk-text);font-weight:600;font-variant-numeric:tabular-nums}.sk-jump{grid-column:1 / -1;justify-self:start}@media(min-width:768px){.sk-review-head{grid-template-columns:auto minmax(0,1fr) auto}.sk-review-meta{grid-column:auto;flex-direction:column;gap:8px;text-align:right}}.sk-review-grid{display:grid;gap:var(--sk-4);align-items:start}@media(min-width:1100px){.sk-review-grid{grid-template-columns:minmax(0,1fr) 360px;gap:var(--sk-5)}.sk-decide{position:sticky;top:96px}.sk-jump{display:none}}.sk-review-answer{display:grid;gap:var(--sk-4)}.sk-answer{display:grid;gap:var(--sk-5);min-width:0}.sk-answer-block{display:grid;gap:10px;min-width:0}.sk-answer-block h3{font-size:var(--sk-fs-sm);font-weight:650;color:var(--sk-text-2);text-transform:uppercase;letter-spacing:.06em}.sk-answer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.sk-answer-tools{display:flex;flex-wrap:wrap;gap:6px}.sk-answer-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--sk-text);font-size:var(--sk-fs-md);line-height:1.6}.sk-code-wrap{min-width:0;border-radius:var(--sk-r-md);overflow:hidden}.sk-code-wrap .code-window{margin:0;border-radius:var(--sk-r-md)}.sk-code-wrap .code-scroll{max-height:62vh;overflow:auto}.sk-code-wrap .code-line{font-family:var(--sk-mono)}.sk-diff{margin:0;max-height:62vh;overflow:auto;padding:10px 0;border-radius:var(--sk-r-md);background:var(--sk-code-bg);color:var(--sk-code-text);font-family:var(--sk-mono);font-size:13px;line-height:1.6;border:1px solid var(--sk-line)}.sk-diff>div{display:grid;grid-template-columns:24px minmax(0,1fr);padding:0 12px 0 0;white-space:pre}.sk-diff>div>span{text-align:center;opacity:.7;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sk-diff>div code{font-family:inherit;overflow-wrap:normal}.sk-diff .is-add{background:#5fd4b224;color:#b9f0dc}.sk-diff .is-del{background:#ff8a8f21;color:#ffc4c7;text-decoration:line-through;text-decoration-color:#ff8a8f73}.sk-prev-comment{display:flex;gap:10px;padding:12px 14px;border-radius:var(--sk-r-md);background:var(--sk-info-soft);color:var(--sk-text-2);font-size:var(--sk-fs-sm)}.sk-prev-comment svg{color:var(--sk-info);margin-top:2px;flex-shrink:0}.sk-prev-comment b{color:var(--sk-text);display:block;margin-bottom:2px}.sk-prev-comment p{white-space:pre-wrap}.sk-link-row{margin:0;width:100%;padding:12px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line)}.sk-file{display:grid;gap:10px;padding:10px 12px;border-radius:var(--sk-r-md);border:1px solid var(--sk-line);background:var(--sk-surface)}.sk-file-row{display:flex;align-items:center;gap:10px;min-width:0}.sk-file-row .sk-row-title{-webkit-line-clamp:1;word-break:break-all}.sk-file-image{max-width:100%;max-height:70vh;border-radius:var(--sk-r-sm);border:1px solid var(--sk-line);justify-self:start}@media(max-width:520px){.sk-file-row{flex-wrap:wrap}.sk-file-row .sk-row-main{flex-basis:calc(100% - 52px)}}.sk-timeline{list-style:none;margin:0;padding:0;display:grid;gap:10px}.sk-timeline li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 12px;border-radius:var(--sk-r-md);background:var(--sk-surface-2);font-size:var(--sk-fs-sm)}.sk-timeline li p{grid-column:1 / -1;color:var(--sk-text-2);white-space:pre-wrap}.sk-version{border:1px solid var(--sk-line);border-radius:var(--sk-r-md);padding:10px 14px}.sk-version summary{cursor:pointer;font-weight:600;font-size:var(--sk-fs-sm)}.sk-version[open]{display:grid;gap:10px}.sk-decide{display:grid;gap:14px;align-content:start}.sk-marks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sk-mark-btn{--m-fg: var(--sk-text);--m-bg: var(--sk-surface-2);position:relative;height:56px;border-radius:14px;border:1px solid var(--sk-line-strong);background:var(--sk-surface-2);color:var(--sk-text);font:inherit;font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--sk-dur-1),border-color var(--sk-dur-1),color var(--sk-dur-1),transform var(--sk-dur-1) var(--sk-ease)}.sk-mark-btn:hover:not(:disabled){border-color:var(--m-fg);color:var(--m-fg)}.sk-mark-btn:active:not(:disabled){transform:scale(.95)}.sk-mark-btn:disabled{opacity:.5;cursor:not-allowed}.sk-mark-btn.t-success{--m-fg: var(--sk-success);--m-bg: var(--sk-success-soft)}.sk-mark-btn.t-accent{--m-fg: var(--sk-accent-text);--m-bg: var(--sk-accent-soft)}.sk-mark-btn.t-warning{--m-fg: var(--sk-warning);--m-bg: var(--sk-warning-soft)}.sk-mark-btn.t-danger{--m-fg: var(--sk-danger);--m-bg: var(--sk-danger-soft)}.sk-mark-btn[aria-checked=true]{background:var(--m-bg);border-color:var(--m-fg);color:var(--m-fg);box-shadow:0 0 0 1px var(--m-fg) inset;animation:sk-mark-pick var(--sk-dur-3) var(--sk-ease-pop)}@keyframes sk-mark-pick{0%{transform:scale(.92)}}.sk-textarea{min-height:120px;padding:12px 14px;line-height:1.5;resize:vertical;font-size:var(--sk-fs-md)}.sk-decide-more{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px}.sk-decide-more .sk-link{border:0;background:none;padding:6px 0;font:inherit;font-size:var(--sk-fs-sm);font-weight:600;cursor:pointer}.sk-decide-more .sk-link:disabled{opacity:.5;cursor:not-allowed}.sk-decide .sk-alert>div{display:grid;gap:4px}.sk-decide .sk-review-retry{display:flex;margin:0}.sk-keys{display:none}@media(hover:hover)and (min-width:1100px){.sk-keys{display:block}}@media(prefers-reduced-motion:reduce){.sk-mark-btn[aria-checked=true]{animation:none}}.sk-review-quick{display:none}@media(max-width:899px){.sk-review:has(.sk-review-quick){padding-bottom:104px}.sk-review-quick{position:fixed;inset:auto 10px calc(76px + env(safe-area-inset-bottom));z-index:35;display:grid;grid-template-columns:minmax(0,1fr) 44px auto;align-items:center;gap:6px;padding:8px;background:var(--sk-surface);border:1px solid var(--sk-line-strong);border-radius:var(--sk-r-md);box-shadow:var(--sk-shadow-2)}.sk-review-quick>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.sk-review-quick .sk-mark-btn{min-width:0;min-height:44px;width:100%;height:44px;padding:0;font-size:20px}.sk-review-quick .sk-mark-btn[aria-pressed=true]{outline:2px solid var(--sk-text);outline-offset:-3px;background:var(--sk-nav-soft)}.sk-review-quick>.sk-btn{min-height:44px;padding:8px 10px;font-size:12px}.sk-review-quick>span{grid-column:1/-1;font-size:12px;color:var(--sk-text-2)}.sk-review-quick>.sk-icon-btn{min-width:44px;min-height:44px}.sk-review:has(textarea:focus) .sk-review-quick{display:none}.sk-review-head .sk-jump{display:none}}.sk-homework,.sk-work{min-width:0}.sk-page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.sk-page-head .sk-lead{margin-bottom:0}.sk-homework-list{padding:4px 18px}.sk-homework .sk-subtabs{display:flex;gap:6px;overflow-x:auto;max-width:100%;margin:20px 0 16px;padding:4px;border:1px solid var(--sk-line);background:var(--sk-surface-2);border-radius:14px}.sk-homework .sk-subtabs [role=tab]{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;min-height:44px;padding:8px 14px;border:0;border-radius:10px;color:var(--sk-text-2);background:transparent;font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.sk-homework .sk-subtabs [aria-selected=true]{color:var(--sk-accent-text);background:var(--sk-surface);box-shadow:var(--sk-shadow-1)}.sk-homework .sk-subtabs [role=tab]:focus-visible{outline:2px solid var(--sk-accent-text);outline-offset:-2px}.sk-homework .sk-version{padding:14px 0;border-bottom:1px solid var(--sk-line)}.sk-work .sk-alert>span,.sk-work .sk-alert>div{min-width:0;overflow-wrap:anywhere}.sk-work-head{padding:24px;margin-bottom:20px}.sk-work-head h1{overflow-wrap:anywhere;margin:10px 0 14px}.sk-work-head .sk-muted{margin:14px 0}.sk-work-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px}.sk-work-grid>.sk-col,.sk-work-code,.sk-work-answer{min-width:0}.sk-work-side{position:sticky;top:calc(var(--sk-topbar) + 20px)}.sk-submit-panel>.sk-btn{margin-top:12px}.sk-work-facts{margin:16px 0;display:grid;gap:12px;font-size:14px}.sk-work-facts>div{display:flex;justify-content:space-between;align-items:start;gap:16px}.sk-work-facts dt{color:var(--sk-text-3)}.sk-work-facts dd{margin:0;text-align:right;overflow-wrap:anywhere}.sk-work-facts dd small{display:block;margin-top:4px}.sk-work-facts .sk-num{font-size:28px}.sk-work-banner{display:flex;align-items:start;gap:16px;margin:0 0 20px;padding:20px;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-work-banner>svg{flex-shrink:0;margin-top:4px}.sk-work-banner h2{margin:0 0 8px;font-size:20px}.sk-work-banner p{color:var(--sk-text-2);white-space:pre-wrap;overflow-wrap:anywhere}.sk-work-mark{display:grid;place-items:center;flex-shrink:0;font-size:32px;font-weight:750;min-width:54px;min-height:54px;background:var(--sk-success-soft);color:var(--sk-success);border-radius:14px}.sk-work-comment{display:flex;align-items:start;gap:8px}.sk-work-comment>svg{flex-shrink:0;margin-top:3px}.sk-work-answer .sk-answer{margin-top:20px}.sk-work .sk-field{margin-bottom:20px}.sk-work-code .code-workbench{min-width:0;max-width:100%}.sk-work-code textarea{max-width:100%}.sk-task{color:var(--sk-text-2);overflow-wrap:anywhere;line-height:1.65}.sk-task p{white-space:pre-wrap;margin:12px 0}.sk-task ol{padding-left:24px}.sk-task li{padding:4px 0}.sk-task-code{max-width:100%;overflow:auto;padding:16px;border:1px solid var(--sk-line);border-radius:12px;background:var(--sk-bg);white-space:pre}.sk-file-chip{display:flex;align-items:center;gap:10px;border:1px solid var(--sk-line);border-radius:12px;padding:10px;margin-bottom:8px;min-width:0}.sk-file-chip .sk-row-main{min-width:0}.sk-file-chip .sk-row-title{overflow-wrap:anywhere;white-space:normal}.sk-file-chip .sk-icon-btn{flex-shrink:0}.sk-file-chip.is-pending{border-style:dashed}.sk-dropzone{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:88px;padding:16px;border:1px dashed var(--sk-line-strong);border-radius:12px;cursor:pointer;color:var(--sk-text-2);background:var(--sk-surface-2)}.sk-dropzone:hover{border-color:var(--sk-accent-text)}.sk-dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;cursor:pointer}.sk-dropzone:focus-within{outline:2px solid var(--sk-accent-text);outline-offset:3px}.sk-dropzone small{display:block;margin-top:6px;font-size:12px;color:var(--sk-text-3)}.sk-save{display:flex;align-items:center;gap:8px;color:var(--sk-text-2);font-size:12px}.sk-save i{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.sk-save.t-success{color:var(--sk-success)}.sk-save.t-warning{color:var(--sk-warning)}.sk-save.t-danger{color:var(--sk-danger)}.sk-conflict{padding:16px;border:1px solid var(--sk-warning);border-radius:12px;margin-bottom:20px;background:var(--sk-warning-soft)}.sk-conflict .sk-diff{max-width:100%;overflow:auto}.sk-sendlist{list-style:none;display:grid;gap:10px;padding:0;margin:20px 0}.sk-sendlist li{display:flex;align-items:center;gap:10px}.sk-submitbar{display:none}@media(max-width:900px){.sk-work-grid{grid-template-columns:minmax(0,1fr)}.sk-work-side{position:static}.sk-work{padding-bottom:90px}.sk-submitbar{position:fixed;z-index:55;display:flex;align-items:center;justify-content:space-between;gap:12px;left:0;right:0;bottom:calc(var(--sk-tabbar) + env(safe-area-inset-bottom));padding:10px var(--sk-gutter);border-top:1px solid var(--sk-line);background:var(--sk-surface);box-shadow:0 -8px 24px #0001}.sk-submitbar .sk-save{min-width:0;flex:1;line-height:1.4}.sk-submitbar .sk-btn{flex-shrink:0}.sk-submitbar.is-keyboard{display:none}}@media(max-width:480px){.sk-page-head{align-items:start}.sk-work-head{padding:18px}.sk-work-head h1{font-size:25px}.sk-work-banner{padding:16px;gap:10px}.sk-homework-list{padding:4px 12px}}.sk-work-task>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:44px;list-style:none}.sk-work-task>summary::-webkit-details-marker{display:none}.sk-work-task>summary>span{font-size:12px;color:var(--sk-accent-text)}.sk-work-task>summary:focus-visible{outline:2px solid var(--sk-text);outline-offset:4px}.sk-work-task,.sk-work-answer{scroll-margin-top:calc(var(--sk-topbar) + 15px)}.sk-answer-tip{margin:12px 0 0}.sk-work-jump{gap:8px}.sk-access-check{min-height:100vh;max-width:560px;padding:48px 20px;margin:auto;display:flex;flex-direction:column;justify-content:center;gap:24px}.sk-lesson{--lesson-offset:calc(var(--sk-topbar) + 20px)}.sk-lesson .lesson-breadcrumbs,.sk-lesson .lesson-breadcrumbs a{color:var(--sk-text-3)}.sk-lesson .lesson-breadcrumbs a:hover{color:var(--sk-accent-text)}.sk-lesson-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}.sk-lesson-nav{position:sticky;top:var(--lesson-offset);max-height:calc(100dvh - var(--lesson-offset) - 20px);overflow:auto;padding:18px 12px;border:1px solid var(--sk-line);border-radius:16px;background:var(--sk-surface)}.sk-lesson-nav h2{margin:18px 8px 8px;font-size:16px;line-height:1.4}.sk-lesson-nav>.sk-hint{margin:0 8px 12px}.sk-lesson-nav progress{width:calc(100% - 16px);margin:0 8px 16px;height:5px;accent-color:var(--sk-accent-text)}.sk-lesson-nav nav{display:grid;gap:4px}.sk-lesson-nav nav a{display:flex;gap:10px;align-items:start;padding:10px 8px;border:1px solid transparent;border-radius:10px;color:var(--sk-text-2);font-size:13px;line-height:1.4}.sk-lesson-nav nav a>span:first-child{flex:0 0 22px;text-align:center;border-radius:5px;background:var(--sk-surface-2)}.sk-lesson-nav nav a[aria-current=page]{background:var(--sk-accent-soft);border-color:var(--sk-line);color:var(--sk-accent-text);font-weight:650}.sk-lesson-main,.sk-lesson-reading,.sk-lesson-code{min-width:0}.sk-lesson-head{margin-bottom:24px}.sk-lesson-head h1{margin:12px 0;overflow-wrap:anywhere}.sk-lesson-head .sk-lead{margin:0 0 16px}.sk-lesson-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}.sk-lesson-reading{display:grid;gap:16px}.sk-lesson-reading p,.sk-lesson-reading li{color:var(--sk-text-2);line-height:1.75;overflow-wrap:anywhere}.sk-lesson-reading p{margin:16px 0 0}.sk-lesson-reading ol{padding-left:24px;margin:16px 0 0}.sk-lesson-reading li{margin-bottom:12px;padding-left:4px}.sk-lesson-example{min-width:0}.sk-lesson-example summary,.sk-lesson-sources summary{cursor:pointer;font-weight:650}.sk-lesson-example pre,.sk-lesson-output{max-width:100%;overflow:auto;font:13px/1.7 var(--sk-mono);white-space:pre;padding:16px;border-radius:10px;background:var(--sk-surface-2)}.sk-lesson-code{scroll-margin-top:var(--lesson-offset)}.sk-lesson-code .sk-card{padding:18px}.sk-lesson-code .code-workbench{margin-top:16px}.sk-lesson-code .workbench-tools{flex-wrap:wrap;gap:8px}.sk-lesson-code textarea{min-height:350px}.sk-lesson-code .file-tab{color:var(--sk-text-2)}.sk-lesson-code .mobile-code-editor textarea{background:var(--sk-code-bg);color:var(--sk-code-text);border:1px solid var(--sk-line-strong)}.sk-lesson-code .code-keys button{background:var(--sk-surface-2);color:var(--sk-text-2);border-color:var(--sk-line-strong)}.sk-lesson-code .compiler-runbar{flex-wrap:wrap}.sk-lesson-code .compiler-frame{min-height:480px}.sk-lesson #lesson-theory{scroll-margin-top:var(--lesson-offset)}.sk-lesson .it-exercise{margin:0;padding:24px;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-lesson .it-option{white-space:normal;overflow-wrap:anywhere}.sk-lesson .edu-lesson-work{margin-top:24px}.sk-lesson .edu-lesson-work>.panel{border-color:var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-lesson .edu-lesson-work .edu-actions{flex-wrap:wrap}.sk-lesson-sources{margin-top:20px}.sk-lesson-finish{margin:24px 0;padding-top:24px;border-top:1px solid var(--sk-line)}.sk-lesson-finish>span{display:flex;align-items:center;gap:10px;color:var(--sk-success);font-weight:650}.sk-lesson-navigation{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:24px}@media(min-width:1450px){.sk-lesson-columns:not(.is-reading){grid-template-columns:minmax(0,1fr) minmax(310px,.9fr)}.sk-lesson-code{position:sticky;top:var(--lesson-offset)}}@media(max-width:900px){.sk-lesson-layout{grid-template-columns:minmax(0,1fr)}.sk-lesson-nav{position:static;max-height:none;padding:12px}.sk-lesson-nav h2{margin-top:10px}.sk-lesson-nav nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:4px}.sk-lesson-nav nav a{flex-shrink:0;max-width:240px;align-items:center}.sk-lesson-nav nav a>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-lesson-head h1{font-size:28px}.sk-lesson-code textarea{min-height:300px}.sk-lesson .it-exercise{padding:18px}}.edu-lesson-work .sk-seg{margin-bottom:4px}.edu-lesson-work .sk-seg>button{min-height:40px}.edu-lesson-work .panel h2{margin:18px 0 8px;font-size:var(--sk-fs-lg);font-weight:650;line-height:1.3;color:var(--sk-text)}.edu-lesson-work .panel h2:first-child{margin-top:0}.edu-lesson-work .panel h3{margin:16px 0 6px;font-size:var(--sk-fs-md);font-weight:650;color:var(--sk-text)}.edu-lesson-work .panel ul{display:grid;gap:4px;margin:0;padding-left:22px;list-style:disc}.edu-lesson-work .panel li{line-height:1.55}.edu-lesson-work .panel p:has(>.btn){margin:16px 0 6px}.sk-lesson-assign{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;border-color:var(--sk-accent-line);background:linear-gradient(180deg,var(--sk-accent-soft),var(--sk-surface) 170%)}.sk-lesson-assign-text{display:grid;gap:4px;flex:1 1 320px;min-width:0}.sk-lesson-assign-text .sk-hint{margin:0}.sk-lesson-assign-actions{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:600px){.sk-lesson-assign-actions{width:100%}.sk-lesson-assign-actions .sk-btn{flex:1 1 100%;justify-content:center}}.sk-prog-badge{display:inline-grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:8px;font:700 14px/1 var(--sk-font);background:#e7ddf8;color:#5a3c8a}.sk-prog-badge.p-photoshop{background:#092947;color:#74d0ff}.sk-prog-badge.p-illustrator{background:#392107;color:#ffbd70}.sk-prog-badge.p-indesign{background:#3c122d;color:#ff92bf}html[data-theme=dark] .sk-prog-badge.p-basics{background:#2a2245;color:#cdbcff}.sk-prog-badge.is-lg{width:48px;height:48px;border-radius:12px;font-size:20px}.sk-lib-crumbs,.sk-material .lesson-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;margin:0 0 var(--sk-4);font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-lib-crumbs a{display:inline-flex;align-items:center;min-height:32px;color:var(--sk-text-3);border-radius:6px}.sk-lib-crumbs a:hover{color:var(--sk-accent-text);text-decoration:underline}.sk-lib-crumbs a+a:before{content:"›";margin:0 8px;color:var(--sk-text-3);opacity:.7}.sk-lib-crumbs a:last-child{color:var(--sk-text-2);font-weight:600}@media(max-width:640px){.sk-lib-crumbs a.is-middle{display:none}.sk-lib-crumbs a.is-middle+a:not(.is-middle):before{content:"› … ›"}}.sk-library{display:grid;gap:var(--sk-5);min-width:0}.sk-library>*{min-width:0}.sk-lib-head{display:grid;gap:6px}.sk-lib-head .sk-lead{max-width:62ch}.sk-lib-h3{font-size:var(--sk-fs-md);font-weight:650;margin:0 0 var(--sk-2)}.sk-dirs{display:grid;gap:var(--sk-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.sk-dir{position:relative;display:grid;grid-template-rows:auto 1fr;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);overflow:hidden;box-shadow:var(--sk-shadow-1);transition:border-color var(--sk-dur-2) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease),transform var(--sk-dur-2) var(--sk-ease)}.sk-dir:hover{border-color:var(--sk-line-strong);box-shadow:var(--sk-shadow-2);transform:translateY(-2px)}.sk-dir:focus-within{border-color:var(--sk-accent-line)}.sk-dir-art{aspect-ratio:3 / 1.45;background:var(--sk-surface-2);display:grid;place-items:center;color:var(--sk-text-3);overflow:hidden}.sk-dir-art img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.sk-dir-body{display:grid;align-content:start;gap:8px;padding:var(--sk-4)}.sk-dir-title{margin:0;font-size:var(--sk-fs-xl);font-weight:680;line-height:1.25}.sk-dir-title a{color:var(--sk-text)}.sk-dir-title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.sk-dir-title a:focus-visible{outline:none}.sk-dir-title a:focus-visible:after{box-shadow:var(--sk-ring)}.sk-dir-text{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-2);line-height:1.5}.sk-dir-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-dir-go{margin-left:auto;color:var(--sk-accent-text);transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-dir:hover .sk-dir-go{transform:translate(3px)}.sk-dir-chips{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.sk-dir-chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 10px 0 6px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface-2);color:var(--sk-text);font-size:var(--sk-fs-sm);font-weight:600}.sk-dir-chip:not(:has(.sk-prog-badge)){padding:0 12px}.sk-dir-chip .sk-prog-badge{width:24px;height:24px;border-radius:6px;font-size:12px}.sk-dir-chip:hover{border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-lib-extra{display:grid;gap:0;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);padding:4px var(--sk-4)}.sk-programs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media(min-width:720px){.sk-programs{grid-template-columns:repeat(4,minmax(0,1fr))}}.sk-program{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 10px;min-height:60px;padding:10px 12px;border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:var(--sk-surface);color:var(--sk-text);transition:border-color var(--sk-dur-1),background var(--sk-dur-1)}.sk-program .sk-prog-badge{grid-row:span 2}.sk-program-name{font-weight:650;font-size:var(--sk-fs-md);overflow-wrap:anywhere}.sk-program small{font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-program:hover{border-color:var(--sk-line-strong);background:var(--sk-surface-2)}.sk-program[aria-current=page]{border-color:var(--sk-accent);background:var(--sk-accent-soft);box-shadow:inset 0 0 0 1px var(--sk-accent)}.sk-program[aria-current=page] small{color:var(--sk-accent-text)}.sk-lib-tracks{display:flex;flex-wrap:wrap;gap:6px}.sk-lib-tracks a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--sk-line);border-radius:var(--sk-r-pill);background:var(--sk-surface);color:var(--sk-text-2);font-size:var(--sk-fs-sm);font-weight:600}.sk-lib-tracks a:hover{border-color:var(--sk-line-strong);color:var(--sk-text)}.sk-lib-tracks a[aria-current=page]{background:var(--sk-accent-soft);border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-lib-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.sk-seg>a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:9px;color:var(--sk-text-2);font-size:var(--sk-fs-sm);font-weight:600;white-space:nowrap}.sk-seg>a:hover{color:var(--sk-text)}.sk-seg>a[aria-current=page]{background:var(--sk-surface);color:var(--sk-text);box-shadow:var(--sk-shadow-1),0 0 0 1px var(--sk-line)}.sk-lib-free{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-accent-text)}.sk-lib-search{position:relative;display:flex;align-items:center;flex:1 1 240px;max-width:360px;margin-left:auto}.sk-lib-search>svg{position:absolute;left:12px;color:var(--sk-text-3);pointer-events:none}.sk-lib-search input{width:100%;min-height:44px;padding:0 40px 0 38px;border:1px solid var(--sk-line-strong);border-radius:var(--sk-r-md);background:var(--sk-surface);color:var(--sk-text);font:inherit;font-size:16px}.sk-lib-search input::-moz-placeholder{color:var(--sk-text-3)}.sk-lib-search input::placeholder{color:var(--sk-text-3)}.sk-lib-search input:focus{outline:none;border-color:var(--sk-accent);box-shadow:var(--sk-ring)}.sk-lib-search input::-webkit-search-cancel-button{display:none}.sk-lib-clear{position:absolute;right:4px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--sk-text-3);cursor:pointer}.sk-lib-clear:hover{background:var(--sk-surface-2);color:var(--sk-text)}@media(max-width:640px){.sk-lib-search{max-width:none;flex-basis:100%;margin-left:0}}.sk-lib-count{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-lib-more{justify-self:center}.sk-lib-link{display:inline-flex;align-items:center;gap:4px;min-height:36px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-accent-text)}.sk-lib-back{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-lib-back:hover{color:var(--sk-accent-text)}.sk-lwork-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}.sk-lwork{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 14px 10px 10px;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);transition:border-color var(--sk-dur-2) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease)}.sk-lwork:hover{border-color:var(--sk-line-strong);box-shadow:var(--sk-shadow-2)}.sk-lwork:focus-within{border-color:var(--sk-accent-line)}.sk-lwork-thumb{width:96px;aspect-ratio:4 / 3;border-radius:10px;overflow:hidden;background:var(--sk-surface-2)}.sk-lwork-body{display:grid;gap:4px;min-width:0;justify-items:start}.sk-lwork-title{margin:0;font-size:var(--sk-fs-md);font-weight:650;line-height:1.35;overflow-wrap:anywhere}.sk-lwork-title a{color:var(--sk-text)}.sk-lwork-title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.sk-lwork-title a:focus-visible{outline:none}.sk-lwork-title a:focus-visible:after{box-shadow:var(--sk-ring)}.sk-lwork-go{color:var(--sk-text-3);transition:transform var(--sk-dur-2) var(--sk-ease),color var(--sk-dur-2)}.sk-lwork:hover .sk-lwork-go{transform:translate(3px);color:var(--sk-accent-text)}.sk-lwork.is-missing .sk-lwork-thumb{opacity:.6}.sk-lwork-view{display:grid;gap:var(--sk-4)}.sk-lwork-view-head{display:grid;gap:4px}.sk-lwork-view-head .sk-h2{overflow-wrap:anywhere}.sk-guides{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}.sk-guide{position:relative;display:grid;grid-template-rows:auto 1fr;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);overflow:hidden;transition:border-color var(--sk-dur-2) var(--sk-ease),box-shadow var(--sk-dur-2) var(--sk-ease)}.sk-guide:hover{border-color:var(--sk-line-strong);box-shadow:var(--sk-shadow-2)}.sk-guide:focus-within{border-color:var(--sk-accent-line)}.sk-guide-thumb{aspect-ratio:16 / 10;background:var(--sk-surface-2);overflow:hidden}.sk-guide-thumb img,.sk-lwork-thumb img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.sk-thumb-fallback{display:grid;place-items:center;align-content:center;gap:6px;width:100%;height:100%;color:var(--sk-text-3);background:linear-gradient(160deg,var(--sk-surface-2),var(--sk-surface-3))}.sk-thumb-fallback small{font-size:var(--sk-fs-xs);font-weight:600}.sk-lwork-thumb .sk-thumb-fallback small{display:none}.sk-lwork-thumb .sk-prog-badge.is-lg{width:40px;height:40px;font-size:17px}.sk-guide-body{display:grid;align-content:start;justify-items:start;gap:6px;padding:12px 14px 14px;min-width:0}.sk-guide-label{font-size:var(--sk-fs-xs);font-weight:650;letter-spacing:.02em;color:var(--sk-accent-text)}.sk-guide-title{margin:0;font-size:var(--sk-fs-md);font-weight:650;line-height:1.35;overflow-wrap:anywhere}.sk-guide-title a{color:var(--sk-text)}.sk-guide-title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.sk-guide-title a:focus-visible{outline:none}.sk-guide-title a:focus-visible:after{box-shadow:var(--sk-ring)}.sk-guide-meta{font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-guide.is-missing{background:var(--sk-surface-2)}.sk-guide.is-missing .sk-guide-thumb{opacity:.55}.sk-guide.is-missing .sk-guide-title{color:var(--sk-text-2)}.sk-guide.is-work{grid-template-rows:1fr}.sk-guide.is-work details{position:relative;z-index:1;font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.sk-guide.is-work summary{min-height:36px;display:flex;align-items:center;cursor:pointer}@media(max-width:640px){.sk-guides{grid-template-columns:minmax(0,1fr);gap:8px}.sk-guide{grid-template-rows:none;grid-template-columns:92px minmax(0,1fr);align-items:center}.sk-guide-thumb{aspect-ratio:auto;height:100%;min-height:76px}.sk-guide-body{padding:10px 12px}.sk-guide.is-work{grid-template-columns:minmax(0,1fr)}.sk-lwork{grid-template-columns:76px minmax(0,1fr) auto;gap:12px}.sk-lwork-thumb{width:76px}.sk-thumb-fallback .sk-prog-badge.is-lg{width:36px;height:36px;font-size:15px}}.sk-guides.is-rows{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:8px}.sk-guides.is-rows .sk-guide{grid-template-rows:none;grid-template-columns:72px minmax(0,1fr);align-items:stretch}.sk-guides.is-rows .sk-guide-thumb{aspect-ratio:auto;min-height:72px}.sk-guides.is-rows .sk-guide-body{padding:10px 12px;align-content:center}.sk-lgroups{display:grid;gap:var(--sk-6) var(--sk-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,480px),1fr));align-items:start}.sk-lgroup{display:grid;gap:10px;min-width:0}.sk-lgroup-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.sk-lgroup-head .sk-guide-label{flex-basis:100%}.sk-lgroup-title{margin:0;font-size:var(--sk-fs-lg);font-weight:680;line-height:1.3;overflow-wrap:anywhere}.sk-lgroup-sources{border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:var(--sk-surface);padding:0 14px}.sk-lgroup-sources>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-lgroup-sources[open]{padding-bottom:10px}.sk-material-sources{padding:14px;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-sources{list-style:none;margin:0;padding:0;display:grid;gap:6px}.sk-source{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:4px 10px;min-height:48px;padding:8px 12px;border-radius:var(--sk-r-md);background:var(--sk-surface-2);color:var(--sk-text);font-size:var(--sk-fs-sm)}.sk-source>svg:first-child{color:var(--sk-accent-text)}.sk-source-name{font-weight:600;overflow-wrap:anywhere}.sk-source small{color:var(--sk-text-3);white-space:nowrap}.sk-source-go{color:var(--sk-text-3)}a.sk-source:hover{background:var(--sk-surface-3)}a.sk-source:hover .sk-source-go{color:var(--sk-accent-text)}.sk-source.is-missing{color:var(--sk-text-3);background:transparent;border:1px dashed var(--sk-line-strong)}.sk-source.is-missing>svg:first-child{color:var(--sk-text-3)}@media(max-width:480px){.sk-source{grid-template-columns:auto minmax(0,1fr) auto}.sk-source small{grid-column:2;grid-row:2}.sk-source-go{grid-row:span 2;grid-column:3;grid-row-start:1}}.sk-material.lesson-document{max-width:1080px;width:100%;margin:0 auto;padding:0;display:grid;gap:var(--sk-5);min-width:0}.sk-material>*{min-width:0}.sk-material .lesson-breadcrumbs{margin:0}.sk-material-head{display:grid;gap:8px}.sk-material-kicker{display:flex;align-items:center;gap:10px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-material-kicker>span:last-child{overflow-wrap:anywhere}.sk-material-head h1{margin:0;font-size:clamp(26px,3.4vw,38px);line-height:1.18;letter-spacing:-.02em;overflow-wrap:anywhere}.sk .sk-material-head h1:focus,.sk-material-head h1:focus{outline:none;box-shadow:none}.sk-material-meta{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-material-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.sk-material-actions .sk-btn{white-space:normal;text-align:center;line-height:1.25;padding-block:10px}@media(max-width:640px){.sk-material-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sk-material-actions .sk-btn.is-primary{grid-column:1 / -1}.sk-material-actions .sk-btn.is-ghost:only-child,.sk-material-actions .sk-btn.is-ghost:nth-child(2){grid-column:1 / -1}}.sk-material-video{display:block;width:100%;max-height:74vh;border-radius:var(--sk-r-lg);background:#000}.sk-material-image{border-radius:var(--sk-r-lg);overflow:hidden;border:1px solid var(--sk-line);background:var(--sk-surface-2)}.sk-material-image img{display:block;width:100%;height:auto}.sk-material-end{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding-top:var(--sk-4);border-top:1px solid var(--sk-line)}.sk-material-step{display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 14px;border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:var(--sk-surface);color:var(--sk-text);font-size:var(--sk-fs-sm);font-weight:600;line-height:1.35}.sk-material-step span{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.sk-material-step small{font-size:var(--sk-fs-xs);font-weight:600;color:var(--sk-text-3)}.sk-material-step.is-next{justify-content:space-between;text-align:right;grid-column:2}.sk-material-step>svg{flex-shrink:0;color:var(--sk-accent-text)}.sk-material-step:hover{border-color:var(--sk-line-strong);background:var(--sk-surface-2)}@media(max-width:640px){.sk-material-end{grid-template-columns:minmax(0,1fr)}.sk-material-end>span:empty{display:none}.sk-material-step.is-next{grid-column:auto}}.sk-reader{display:grid;gap:0;min-width:0}.sk-reader-bar{position:sticky;top:calc(var(--sk-topbar) + env(safe-area-inset-top));z-index:20;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;margin-bottom:12px;border:1px solid var(--sk-line);border-radius:var(--sk-r-md);background:color-mix(in srgb,var(--sk-surface) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--sk-shadow-1)}.sk-reader-jump{display:flex;align-items:center;gap:6px;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-reader-jump input{width:56px;min-height:40px;padding:0 8px;border:1px solid var(--sk-line-strong);border-radius:10px;background:var(--sk-surface);color:var(--sk-text);font:600 16px/1 var(--sk-font);text-align:center}.sk-reader-jump input::-moz-placeholder{color:var(--sk-text);opacity:1}.sk-reader-jump input::placeholder{color:var(--sk-text);opacity:1}.sk-reader-jump input:focus{outline:none;border-color:var(--sk-accent);box-shadow:var(--sk-ring)}.sk-reader-jump input:focus::-moz-placeholder{color:var(--sk-text-3)}.sk-reader-jump input:focus::placeholder{color:var(--sk-text-3)}.sk-reader-zoom{display:flex;align-items:center;gap:4px;margin-left:auto}.sk-reader-zoom .sk-icon-btn{width:40px;height:40px}.sk-reader-zoom .sk-icon-btn:disabled{opacity:.4;cursor:default}.sk-reader-scale{min-width:92px;min-height:40px;padding:0 10px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface-2);color:var(--sk-text);font:600 var(--sk-fs-sm) var(--sk-font);cursor:pointer}.sk-reader-textbtn{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface);color:var(--sk-text-2);font:600 var(--sk-fs-sm) var(--sk-font);cursor:pointer}.sk-reader-textbtn.is-on{background:var(--sk-accent-soft);border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-reader-pages{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:var(--sk-r-md)}.sk-reader-pages:focus-visible{outline:none;box-shadow:var(--sk-ring)}.sk-reader-track{display:grid;gap:14px;min-width:100%}.sk-reader-page{scroll-margin-top:calc(var(--sk-topbar) + 72px);min-width:0}.sk-reader-sheet{position:relative;width:100%;background:#fff;border:1px solid var(--sk-line);border-radius:10px;overflow:hidden;box-shadow:var(--sk-shadow-1)}.sk-reader-sheet canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.sk-reader-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;margin:0;padding:20px;text-align:center;font-size:var(--sk-fs-md);color:#5d6479}.sk-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:pre-line}.sk-reader-text.is-shown{position:static;width:auto;height:auto;overflow:visible;clip-path:none;margin-top:8px;padding:14px 16px;border:1px solid var(--sk-line);border-radius:10px;background:var(--sk-surface)}.sk-reader-text p{margin:6px 0 0;font-size:17px;line-height:1.7;color:var(--sk-text);white-space:pre-line;overflow-wrap:anywhere}.sk-reader-error{display:grid;gap:6px;padding:18px;border:1px solid color-mix(in srgb,var(--sk-warning) 35%,var(--sk-line));border-radius:var(--sk-r-lg);background:var(--sk-warning-soft);color:var(--sk-text)}.sk-reader-error b{font-size:var(--sk-fs-md)}.sk-reader-error p{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-2);line-height:1.5}.sk-reader-loading{display:grid;gap:12px;color:var(--sk-text-3);font-size:var(--sk-fs-sm)}@media(max-width:640px){.sk-reader-pages{margin-inline:calc(-1 * var(--sk-gutter));border-radius:0}.sk-reader-track{gap:10px}.sk-reader-sheet{border-radius:0;border-inline:0}.sk-reader-text.is-shown{margin-inline:var(--sk-gutter)}.sk-reader-bar{gap:4px;padding:6px;flex-wrap:nowrap}.sk-reader-jump input{width:48px}.sk-reader-scale{min-width:0;padding:0 8px}.sk-reader-zoom{gap:2px}.sk-reader-textbtn{padding:0 10px}}@media(prefers-reduced-motion:reduce){.sk-dir,.sk-dir-go,.sk-lwork-go,.sk-guide,.sk-lwork{transition:none}.sk-dir:hover{transform:none}}.sk-areas{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--sk-5)}.sk-area{min-height:40px;padding:0 14px;border:1px solid var(--sk-line);border-radius:var(--sk-r-pill);background:var(--sk-surface);color:var(--sk-text-2);font:600 var(--sk-fs-sm) var(--sk-font);cursor:pointer;transition:background var(--sk-dur-1),border-color var(--sk-dur-1),color var(--sk-dur-1)}.sk-area:hover{border-color:var(--sk-line-strong);color:var(--sk-text)}.sk-area[aria-pressed=true]{background:var(--sk-accent-soft);border-color:var(--sk-accent-line);color:var(--sk-accent-text)}.sk-area:focus-visible{outline:none;box-shadow:var(--sk-ring)}.sk-kinds{list-style:none;margin:0 0 var(--sk-3);padding:10px 12px;display:flex;flex-wrap:wrap;gap:6px 18px;border-radius:var(--sk-r-md);background:var(--sk-surface-2);font-size:var(--sk-fs-sm);color:var(--sk-text-2);line-height:1.45}.sk-kinds li{display:flex;align-items:flex-start;gap:7px}.sk-kinds li>svg{flex-shrink:0;margin-top:2px;color:var(--sk-text-3)}.sk-kinds li.is-assigned>svg{color:var(--sk-accent-text)}.sk-kinds b{color:var(--sk-text);font-weight:650}.sk-kinds a,.sk-kinds-link{color:var(--sk-accent-text);text-decoration:underline;text-underline-offset:2px}.sk-kinds-link{padding:0;border:0;background:none;font:inherit;cursor:pointer}@media(max-width:640px){.sk-areas{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--sk-gutter));padding-inline:var(--sk-gutter);scroll-padding-inline:var(--sk-gutter)}.sk-areas::-webkit-scrollbar{display:none}.sk-area{flex-shrink:0}.sk-kinds{flex-direction:column}}.sk .kd-wordmark{letter-spacing:-.7px;font-size:22px;font-weight:800;gap:10px;white-space:nowrap}.sk .kd-wordmark>svg{width:34px;height:38px;flex-shrink:0}.sk .kd-wordmark small{font-size:9px;letter-spacing:.12px}.sk-btn.is-primary{box-shadow:var(--sk-shadow-1)}.sk-deck-art{width:100%;max-width:560px;height:auto;overflow:visible}.kd-deck-device{transform-origin:50% 70%;animation:kd-boot .65s cubic-bezier(.2,.8,.2,1) both;transition:transform .35s ease}.sk-deck-art:hover .kd-deck-device{transform:translateY(-6px) rotate(-1deg)}.kd-deck-chip{animation:kd-connect .65s cubic-bezier(.2,.8,.2,1) both}.kd-chip-a{animation-delay:.1s}.kd-chip-b{animation-delay:.18s}.kd-chip-c{animation-delay:.26s}@keyframes kd-boot{0%{opacity:0;transform:translateY(20px) rotate(3deg)}}@keyframes kd-connect{0%{opacity:0;transform:translateY(10px) scale(.96)}}.sk-topic-marker{border-radius:50%}.sk-topic.is-done .sk-topic-marker{color:var(--sk-success);background:var(--sk-success-soft);border:1px solid var(--sk-success)}.sk-topic.is-current .sk-topic-marker{animation:kd-ready 1.4s ease-out 2}@keyframes kd-ready{50%{box-shadow:0 0 0 7px var(--sk-accent-soft)}}.sk-topic.is-done:before{background:var(--sk-success)}.sk-topic-now,.sk-module-tab[aria-pressed=true] .sk-module-no,.sk-skip{color:var(--sk-text-on-accent)}.sk-course-progress{background:var(--sk-surface);border-top:3px solid var(--sk-theory)}@media(min-width:900px)and (max-width:1100px){.sk-topnav-link{padding:0 8px;gap:5px;font-size:13px}.sk-topbar-in{gap:12px}}@media(max-width:600px){.sk .kd-wordmark{font-size:19px;gap:7px;letter-spacing:-.6px}.sk .kd-wordmark>svg{width:29px;height:34px}.sk .kd-wordmark small{font-size:8px}.sk-topbar-in{gap:10px}.sk-topic-marker{border-radius:50%}}@media(prefers-reduced-motion:reduce){.kd-deck-device,.kd-deck-chip,.sk-topic.is-current .sk-topic-marker{animation:none!important;transition:none}.sk-deck-art:hover .kd-deck-device{transform:none}}.sk-btn.kd-action-theory{--btn-fg:var(--sk-on-learning);--btn-bg:var(--sk-theory);--btn-hover:var(--sk-accent-hover)}.sk-btn.kd-action-practice{--btn-fg:var(--sk-practice);--btn-bg:var(--sk-practice-soft);--btn-hover:var(--sk-surface-3)}.sk-btn.kd-action-homework{--btn-bg:var(--sk-surface-2);--btn-fg:var(--sk-text);--btn-line:var(--sk-line-strong);--btn-hover:var(--sk-surface-3)}.sk-kinds .kd-kind-theory>svg{color:var(--sk-theory)}.sk-kinds .kd-kind-practice>svg{color:var(--sk-practice)}.sk-sidebar,.sk-tbar,.sk-topbar,.sk-tabbar{background:var(--sk-chrome);border-color:var(--sk-chrome-line)}.sk-sidenav-link[aria-current=page],.sk-topnav-link[aria-current=page],.sk-menu-item[aria-current=page]{background:var(--sk-nav-soft);color:var(--sk-nav)}.sk-sidenav-link[aria-current=page]>svg,.sk-topnav-link[aria-current=page] svg,.sk-menu-item[aria-current=page]>svg{color:var(--sk-nav)}.sk-sidenav-link[aria-current=page]:before,.sk-topnav-link[aria-current=page]:after{background:var(--sk-nav)}.sk-tab[aria-current=page]{color:var(--sk-nav)}.sk-tab[aria-current=page] .sk-tab-icon{background:var(--sk-nav-soft)}.sk-seg>button[aria-selected=true]{color:var(--sk-nav);background:var(--sk-nav-soft)}.sk-module-tab[aria-pressed=true]{border-color:var(--sk-nav);background:var(--sk-nav-soft);box-shadow:0 0 0 1px var(--sk-nav) inset}.sk-module-tab[aria-pressed=true] .sk-module-no{color:var(--sk-chrome);background:var(--sk-nav)}.sk-topic.is-current .sk-topic-marker{color:var(--sk-theory);border-color:var(--sk-theory);box-shadow:0 0 0 4px var(--sk-theory-soft)}.sk-continue{background:var(--sk-surface);border-top:3px solid var(--sk-theory)}.sk-topic.kd-topic-project:not(.is-done) .sk-topic-marker{color:var(--sk-project);border-color:var(--sk-project);background:var(--sk-project-soft)}.sk-topic.kd-topic-project .sk-topic-title{color:var(--sk-project)}.sk .code-window{background:var(--sk-code-bg);color:var(--sk-code-text);border-color:var(--sk-line)}.sk .code-window .window-bar{background:var(--sk-chrome);color:var(--sk-text-2);border-color:var(--sk-line)}.sk .code-window .keyword{color:var(--sk-syntax-keyword)}.sk .code-window .string{color:var(--sk-syntax-string)}.sk .code-window .number{color:var(--sk-syntax-number)}.sk .code-window .comment,.sk .code-window .line-no{color:var(--sk-syntax-comment)}:root,html[data-theme=light]{--it-bg: var(--sk-bg);--it-panel: var(--sk-surface);--it-ink: var(--sk-text);--it-muted: var(--sk-text-2);--it-line: var(--sk-line);--it-accent: var(--sk-accent-text);--it-soft: var(--sk-accent-soft);--it-code: var(--sk-code-bg);--ink: var(--sk-text);--purple: var(--sk-accent-text);--border: var(--sk-line);--muted: var(--sk-text-2);--st-teal: var(--sk-teal);font-family:var(--sk-font)}html[data-theme=dark]{--it-bg: var(--sk-bg);--it-panel: var(--sk-surface);--it-ink: var(--sk-text);--it-muted: var(--sk-text-2);--it-line: var(--sk-line-strong);--it-accent: var(--sk-accent-text);--it-soft: var(--sk-accent-soft);--it-code: var(--sk-code-bg);--ink: var(--sk-text);--purple: var(--sk-accent-text);--border: var(--sk-line-strong);--muted: var(--sk-text-2);--st-teal: var(--sk-teal)}html,body{background:var(--sk-bg);color:var(--sk-text)}.sk :is(pre,code,kbd,samp),.sk .mobile-code-editor textarea,.sk .code-window pre{font-family:var(--sk-mono)}.sk .btn{font-family:var(--sk-font);border-radius:var(--sk-r-md);font-weight:620;transition:background var(--sk-dur-1) var(--sk-ease),border-color var(--sk-dur-1),transform var(--sk-dur-1) var(--sk-ease)}.sk .btn:not(:disabled):hover{transform:none}.sk .btn:not(:disabled):active{transform:scale(.97)}.sk .btn.primary{background:var(--sk-accent);border-color:var(--sk-accent);color:var(--sk-text-on-accent);box-shadow:none}.sk .btn.primary:not(:disabled):hover{background:var(--sk-accent-hover);border-color:var(--sk-accent-hover)}.sk .btn.light{background:var(--sk-surface-2);color:var(--sk-text);border:1px solid var(--sk-line-strong);box-shadow:none}.sk .btn.light:not(:disabled):hover{background:var(--sk-surface-3)}.sk .text-button{color:var(--sk-accent-text);font-family:var(--sk-font)}.sk :is(.field,.st-journal-tools,.edu-form,.st-profile-create) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){background:var(--sk-surface-2);color:var(--sk-text);border:1px solid var(--sk-line-strong);border-radius:10px;font-family:var(--sk-font)}.sk :is(input,select,textarea):focus-visible{outline:none;border-color:var(--sk-accent);box-shadow:var(--sk-ring)}.sk :is(.panel,.edu-work-card){background:var(--sk-surface);border-color:var(--sk-line);color:var(--sk-text);border-radius:var(--sk-r-lg);box-shadow:var(--sk-shadow-1)}.sk :is(.small-muted,.eyebrow,.lead){color:var(--sk-text-2)}.sk .it-kicker{color:var(--sk-accent-text)}.sk .alert{border-radius:var(--sk-r-md)}html[data-theme=dark] .sk .sk-input{background:var(--sk-surface-2);color:var(--sk-text)}html[data-theme=dark] .sk .sk-input:focus{background:var(--sk-surface)}.sk .code-workbench .file-tab{color:var(--sk-text-2)}.sk-teacher-content .st-workspace-heading h2,.sk-teacher-content .edu-heading h1{font-size:var(--sk-fs-2xl);letter-spacing:-.02em}.sk-page .edu-heading h1,.sk-page .subject-heading h1{font-size:var(--sk-fs-3xl);letter-spacing:-.025em;font-weight:680}html[data-theme=dark] .st-state.pending{color:var(--sk-warning);background:var(--sk-warning-soft)}html[data-theme=dark] .st-state.active{color:var(--sk-success);background:var(--sk-success-soft)}html[data-theme=dark] .st-state.reviewed{color:var(--sk-accent-text);background:var(--sk-accent-soft)}.review-shade,.modal-shade{z-index:120}@media print{html[data-theme=dark],:root{color-scheme:light;--sk-bg: #fff;--sk-surface: #fff;--sk-surface-2: #f4f5f9;--sk-surface-3: #eceef4;--sk-text: #141726;--sk-text-2: #3e445a;--sk-text-3: #5d6479;--sk-line: #dcdfe8;--sk-line-strong: #c9cedd;--sk-accent-text: #5139c4;--sk-accent-soft: #eeebff}.sk-topbar,.sk-tabbar,.sk-sidebar,.sk-tbar,.sk-subtabs,.sk-footer,.sk-skip{display:none!important}.sk-teacher{display:block}}.sk-teacher-content .edu-screen{max-width:1200px;margin:0;gap:var(--sk-4)}.sk-teacher-content :is(.edu-screen,.st-workspace) .field{margin:0;gap:6px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-teacher-content :is(.edu-screen,.st-workspace) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select):not(.sk-input){min-height:44px;padding:0 12px;font-size:var(--sk-fs-md);font-weight:450;color:var(--sk-text)}.sk-teacher-content :is(.edu-screen,.st-workspace) textarea:not(.sk-input){padding:12px;font-size:var(--sk-fs-md);font-weight:450;line-height:1.55;color:var(--sk-text)}.sk-teacher-content :is(.edu-heading,.st-workspace-heading) .it-kicker{display:none}.sk-teacher-content :is(.edu-heading,.st-workspace-heading) h2{margin:0;font-size:var(--sk-fs-xl);font-weight:650;letter-spacing:-.015em;line-height:1.25;color:var(--sk-text)}.sk-teacher-content .edu-heading p{margin:4px 0 0;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-teacher-content .edu-screen .panel{padding:var(--sk-5)}.sk-teacher-content .edu-check{font-size:var(--sk-fs-md);font-weight:500;color:var(--sk-text)}.sk-teacher-content .edu-check input,.sk-teacher-content .edu-checks input{accent-color:var(--sk-accent)}.sk-back{justify-self:start;display:inline-flex;align-items:center;gap:6px;min-height:36px;margin-left:-8px;padding:0 10px 0 8px;border:0;border-radius:8px;background:transparent;color:var(--sk-text-2);font:inherit;font-size:var(--sk-fs-sm);font-weight:600;cursor:pointer}.sk-back:hover{color:var(--sk-text);background:var(--sk-surface-2)}.sk-back:disabled{opacity:.55;cursor:default}.sk-back:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:2px}.sk-teacher-content .sk-pick.edu-checks,.sk-teacher-content .sk-assign .edu-checks{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.sk-teacher-content .sk-assign .edu-checks legend{float:left;width:100%;margin:0 0 8px;padding:0;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-teacher-content .sk-assign .edu-checks label{min-height:40px;padding:0 14px 0 10px;border:1px solid var(--sk-line-strong);border-radius:10px;background:var(--sk-surface-2);color:var(--sk-text);font-size:var(--sk-fs-sm);font-weight:550;cursor:pointer;transition:border-color var(--sk-dur-1) var(--sk-ease),background var(--sk-dur-1) var(--sk-ease)}.sk-teacher-content .sk-assign .edu-checks label:hover{border-color:var(--sk-text-3)}.sk-teacher-content .sk-assign .edu-checks label:has(input:checked){border-color:var(--sk-accent);background:var(--sk-accent-soft)}.sk-teacher-content .sk-assign .edu-checks p{margin:0;color:var(--sk-text-3);font-size:var(--sk-fs-sm)}.sk-tw .sk-queue-head .sk-btn{flex-shrink:0}.sk-tw-row .sk-row-end{gap:10px}.sk-tw-done{font-size:var(--sk-fs-sm);color:var(--sk-text-2);white-space:nowrap;font-variant-numeric:tabular-nums}.sk-tw-done b{color:var(--sk-text);font-weight:650}.sk-legacy-link{justify-self:start;padding:4px 0;border:0;background:none;font:inherit;font-size:var(--sk-fs-sm);cursor:pointer}@media(max-width:720px){.sk-tw-row{flex-wrap:wrap}.sk-tw-row .sk-row-end{width:100%;padding-left:52px;flex-wrap:wrap;justify-content:flex-start}.sk-tw-row .sk-chevron{display:none}}.sk-teacher-content .sk-tw-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sk-4);flex-wrap:wrap}.sk-tw-title{display:grid;gap:6px;min-width:0;flex:1 1 380px}.sk-teacher-content .sk-tw-title .sk-h2{font-size:var(--sk-fs-2xl)}.sk-teacher-content .sk-tw-title p{margin:0}.sk-tw-actions{display:flex;flex-wrap:wrap;gap:8px}.sk-tw-progress{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.sk-tw-progress .sk-progress{flex:0 1 220px;min-width:140px}.sk-tw-progress b{color:var(--sk-text);font-weight:650}.sk-tw-task{display:grid;gap:8px}.sk-teacher-content .sk-tw-task .task-copy{margin:0;white-space:pre-wrap;line-height:1.6;color:var(--sk-text)}.sk-tw-task .task-copy.is-clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.sk-tw-task .sk-link{justify-self:start;padding:0;border:0;background:none;font:inherit;font-size:var(--sk-fs-sm);cursor:pointer}.sk-teacher-content .sk-assign{display:grid;gap:var(--sk-4)}.sk-assign-head{display:grid;gap:4px}.sk-teacher-content .sk-assign-head .sk-h2{font-size:var(--sk-fs-2xl);outline:none}.sk-assign .assignment-draft{background:var(--sk-surface);border-color:var(--sk-line);border-radius:var(--sk-r-md)}.sk-assign-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--sk-5);align-items:start}.sk-assign-grid>.assignment-draft-fields{display:block;min-width:0;margin:0;padding:0;border:0}.sk-assign-main{display:grid;gap:var(--sk-4);min-width:0}.sk-assign-step{display:grid;gap:14px;min-width:0;padding:var(--sk-5);border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);box-shadow:var(--sk-shadow-1)}.sk-assign-title{display:flex;align-items:center;gap:10px;margin:0;font-size:var(--sk-fs-md);font-weight:650;color:var(--sk-text)}.sk-assign-title>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--sk-accent-soft);color:var(--sk-accent-text);font-size:13px;font-weight:700}.sk-assign-lesson{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.sk-assign-lesson .btn{min-height:44px;white-space:nowrap}.sk-assign-inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.sk-assign-inline .sk-hint{flex:1 1 260px;margin:0}.sk-assign-extra{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding-top:14px;border-top:1px solid var(--sk-line)}.sk-assign-extra h3{margin:0 0 6px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-assign-extra small{color:var(--sk-text-3);font-size:var(--sk-fs-xs)}.sk-assign-extra .text-button{padding:4px 0;font-size:var(--sk-fs-sm)}.sk-assign-people>summary{cursor:pointer;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-accent-text)}.sk-assign-people>summary small{color:var(--sk-text-2);font-weight:500}.sk-assign-people-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 16px;max-height:320px;margin-top:8px;overflow:auto}.sk-assign-more{min-width:0;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-assign-more>summary{position:relative;display:grid;gap:4px;padding:var(--sk-4) 52px var(--sk-4) var(--sk-5);list-style:none;cursor:pointer;border-radius:inherit}.sk-assign-more>summary::-webkit-details-marker{display:none}.sk-assign-more>summary:after{content:"";position:absolute;right:22px;top:50%;width:9px;height:9px;border-right:2px solid var(--sk-text-3);border-bottom:2px solid var(--sk-text-3);transform:translateY(-70%) rotate(45deg);transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-assign-more[open]>summary:after{transform:translateY(-25%) rotate(-135deg)}.sk-assign-more>summary:hover{background:var(--sk-surface-2)}.sk-assign-more>summary:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:2px}.sk-assign-more-title{font-size:var(--sk-fs-md);font-weight:650;color:var(--sk-text)}.sk-assign-more>summary small{font-size:var(--sk-fs-sm);line-height:1.45;color:var(--sk-text-3)}.sk-assign-more-body{display:grid;gap:14px;padding:4px var(--sk-5) var(--sk-5)}.sk-assign-checks{display:grid;gap:0}.sk-assign-side{position:sticky;top:88px;min-width:0}.sk-assign-summary{display:grid;gap:14px}.sk-assign-summary dl{display:grid;gap:12px;margin:0}.sk-assign-summary dl>div{display:grid;gap:2px}.sk-assign-summary dt{font-size:var(--sk-fs-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--sk-text-3)}.sk-assign-summary dd{margin:0;font-size:var(--sk-fs-sm);line-height:1.45;color:var(--sk-text);overflow-wrap:anywhere}.sk-assign-missing{color:var(--sk-warning);font-weight:600}.sk-assign-summary .btn{width:100%;min-height:48px}@media(max-width:1100px){.sk-assign-grid{grid-template-columns:minmax(0,1fr)}.sk-assign-side{position:static}}@media(max-width:640px){.sk-assign-step{padding:var(--sk-4)}.sk-assign-more>summary{padding:14px 48px 14px var(--sk-4)}.sk-assign-more-body{padding:4px var(--sk-4) var(--sk-4)}.sk-assign-lesson,.sk-assign-extra{grid-template-columns:minmax(0,1fr)}.sk-assign-lesson .btn{white-space:normal}}.sk-tg-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:var(--sk-5);align-items:start}.sk-tg-side{position:sticky;top:88px;display:grid;gap:12px;padding:var(--sk-4)}.sk-tg-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sk-tg-side-head .sk-seg-count{margin-left:4px}.sk-tg-groups{display:grid;gap:4px;max-height:min(52vh,520px);overflow:auto;margin:0 -6px;padding:0 6px}.sk-tg-group{display:grid;gap:2px;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--sk-text);text-align:left;font:inherit;cursor:pointer;transition:background var(--sk-dur-1) var(--sk-ease)}.sk-tg-group:hover{background:var(--sk-surface-2)}.sk-tg-group[aria-current=true]{border-color:var(--sk-accent-line);background:var(--sk-accent-soft)}.sk-tg-group:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:1px}.sk-tg-group-name{font-size:var(--sk-fs-md);font-weight:600;line-height:1.3;overflow-wrap:anywhere}.sk-tg-group-meta{font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-tg-group[aria-current=true] .sk-tg-group-meta{color:var(--sk-accent-text)}.sk-tg-new{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--sk-line)}.sk-tg-new .btn{min-height:40px}.sk-tg-detail{display:grid;gap:var(--sk-4);min-width:0}.sk-tg-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px}.sk-tg-title{min-width:0;flex:1 1 260px}.sk-teacher-content .sk-tg-title .sk-h2{font-size:var(--sk-fs-2xl);overflow-wrap:anywhere}.sk-tg-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sk-tg-settings{flex-basis:100%}.sk-tg-settings>summary{width:-moz-max-content;width:max-content;cursor:pointer;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-tg-settings-body{display:flex;flex-wrap:wrap;align-items:end;gap:12px 20px;margin-top:10px}.sk-tg-settings-body .edu-inline{margin:0;align-items:end}.sk-tg-settings-body .edu-inline .field{min-width:240px}.sk-tg-settings-body .btn{min-height:44px}.sk-tg-members{display:grid;gap:12px}.sk-tg-members-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px}.sk-tg-members-head .sk-seg-count{margin-left:4px}.sk-tg-tools{display:flex;flex-wrap:wrap;gap:10px}.sk-tg-tools .field{min-width:220px}.sk-tg-people{display:grid}.sk-tg-person{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid var(--sk-line)}.sk-tg-person:first-child{border-top:0}.sk-tg-person-main{display:grid;gap:1px;min-width:0;flex:1}.sk-tg-person-main b{font-weight:600;color:var(--sk-text);overflow-wrap:anywhere}.sk-tg-person-main small{font-size:var(--sk-fs-xs);color:var(--sk-text-3);font-family:var(--sk-mono)}.sk-tg-person-actions{display:flex;flex-wrap:wrap;gap:4px 16px;justify-content:flex-end}.sk-tg-person-actions .text-button{padding:6px 0;font-size:var(--sk-fs-sm);font-weight:600}.sk-tg-person-actions .text-button:disabled{color:var(--sk-text-3);opacity:.7}.sk-tg-add{display:grid;gap:14px}.sk-tg-add-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--sk-5);align-items:start}.sk-tg-add-grid:has(.edu-import){grid-template-columns:minmax(0,1fr)}.sk-tg-add-grid h4{margin:0 0 8px;font-size:var(--sk-fs-sm);font-weight:650;color:var(--sk-text-2)}.sk-tg-import,.sk-tg-existing{display:grid;gap:10px;min-width:0}.sk-tg-import>p,.sk-tg-existing>p{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-3)}.sk-tg-import>.btn,.sk-tg-existing .btn{justify-self:start;min-height:40px}.sk-tg-existing form{display:grid;gap:10px}.sk-tg-import .edu-import{margin:4px 0}.sk-tg-add .st-credentials{padding:var(--sk-4);border:1px solid var(--sk-accent-line);border-radius:var(--sk-r-md);background:var(--sk-accent-soft)}.sk-tg-empty{min-height:280px;display:grid;place-items:center}@media(max-width:1023px){.sk-tg-layout{grid-template-columns:minmax(0,1fr)}.sk-tg-side{position:static}.sk-tg-groups{max-height:none;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.sk-tg-add-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.sk-tg-person{flex-wrap:wrap}.sk-tg-person-actions{width:100%;justify-content:flex-start;padding-left:52px}.sk-tg-tools,.sk-tg-tools .field,.sk-tg-settings-body .edu-inline .field{min-width:0;width:100%}}.sk-teacher-content .st-journal-tools{gap:12px;margin:0}.sk-teacher-content .st-journal-tools>label,.sk-teacher-content .st-journal-tools>.field{flex:1 1 170px;min-width:150px;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text-2)}.sk-teacher-content .sem-journal-tabs.sk-seg{justify-self:start}.sk-jr{display:grid;overflow:hidden;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);box-shadow:var(--sk-shadow-1)}.sk-jr-row{display:grid;grid-template-columns:minmax(200px,2.2fr) repeat(4,minmax(72px,1fr));align-items:center;gap:12px;padding:12px 20px 12px 44px;font-size:var(--sk-fs-sm);color:var(--sk-text-2);font-variant-numeric:tabular-nums}.sk-jr-head{background:var(--sk-surface-2);font-size:var(--sk-fs-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--sk-text-3)}.sk-jr-item{border-top:1px solid var(--sk-line)}.sk-jr-head+.sk-jr-item{border-top-color:var(--sk-line)}.sk-jr-item>summary{position:relative;list-style:none;cursor:pointer}.sk-jr-item>summary::-webkit-details-marker{display:none}.sk-jr-item>summary:before{content:"";position:absolute;left:20px;top:50%;width:7px;height:7px;border-right:2px solid var(--sk-text-3);border-bottom:2px solid var(--sk-text-3);transform:translateY(-50%) rotate(-45deg);transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-jr-item[open]>summary:before{transform:translateY(-70%) rotate(45deg)}.sk-jr-item>summary:hover,.sk-jr-item[open]>summary{background:var(--sk-surface-2)}.sk-jr-item>summary:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:-3px}.sk-jr-name{font-size:var(--sk-fs-md);font-weight:600;color:var(--sk-text);overflow-wrap:anywhere}.sk-jr-row .is-warn{color:var(--sk-warning);font-weight:650}.sk-jr-row .is-danger{color:var(--sk-danger);font-weight:650}.sk-jr-item .edu-summary{margin:12px 20px}.sk-jr-item .edu-debts,.sk-jr-item>p{margin:0 20px 16px}.sk-jr-item .edu-debts .text-button{font-weight:600}@media(max-width:720px){.sk-jr-head{display:none}.sk-jr-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 10px;padding:12px 14px 12px 38px}.sk-jr-item>summary:before{left:16px;top:22px}.sk-jr-name{grid-column:1 / -1}.sk-jr-row .sk-sr{position:static!important;display:block;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;font-size:11px;color:var(--sk-text-3)}.sk-jr-item .edu-summary,.sk-jr-item .edu-debts,.sk-jr-item>p{margin-left:14px;margin-right:14px}}.sk-tg-members-head{display:grid;justify-content:stretch;align-items:start}.sk-tg-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sk-tg-tools .field{min-width:0}.sk-teacher-content .edu-import>div{align-items:center}.sk-teacher-content .edu-import label{display:inline-flex;align-items:center;gap:8px;font-size:var(--sk-fs-sm);color:var(--sk-text-2)}.sk-teacher-content .edu-import small{color:var(--sk-text-3);font-size:var(--sk-fs-xs)}@media(max-width:600px){.sk-tg-tools{grid-template-columns:minmax(0,1fr)}}.sk-teacher-content .st-journal-tools>label:first-child{flex-grow:2;min-width:220px}.sk-jr-item .edu-summary{grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:8px}.sk-jr-item .edu-summary>span{padding:10px 12px;border-color:var(--sk-line);background:var(--sk-surface);font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-jr-item .edu-summary b{font-size:var(--sk-fs-xl);color:var(--sk-text)}.sk-teacher-content .edu-matrix{border-color:var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-teacher-content .edu-matrix :is(th,td){min-width:150px;padding:10px 12px;border-color:var(--sk-line);background:var(--sk-surface)}.sk-teacher-content .edu-matrix thead th{background:var(--sk-surface-2);color:var(--sk-text-2);letter-spacing:.02em;text-transform:none;font-size:var(--sk-fs-sm);font-weight:650}.sk-teacher-content .edu-matrix thead th small{color:var(--sk-text-3);font-size:var(--sk-fs-xs);text-transform:none;letter-spacing:0}.sk-teacher-content .edu-matrix tbody th{font-size:var(--sk-fs-sm)}.sk-teacher-content .edu-cell{gap:2px;padding:8px 10px;border:1px solid transparent;background:var(--sk-surface-2);color:var(--sk-text-2)}.sk-teacher-content .edu-cell b{font-size:var(--sk-fs-sm);font-weight:600}.sk-teacher-content .edu-cell:hover{border-color:var(--sk-line-strong)}.sk-teacher-content .edu-cell[data-state=mark]{background:var(--sk-accent-soft);color:var(--sk-text)}.sk-teacher-content .edu-cell[data-state=mark] b{font-size:var(--sk-fs-lg);font-weight:700;color:var(--sk-accent-text)}.sk-teacher-content .edu-cell:is([data-state=submitted],[data-state=reviewing]){background:var(--sk-warning-soft);color:var(--sk-warning)}.sk-teacher-content .edu-cell[data-state=returned]{background:var(--sk-info-soft);color:var(--sk-info)}.sk-teacher-content .edu-cell:is([data-state=issued],[data-state=draft]){background:transparent;border:1px dashed var(--sk-line-strong);color:var(--sk-text-3)}.sk-teacher-content .edu-cell:is([data-state=issued],[data-state=draft]) b{font-weight:500}.sk-teacher-content .back-link{justify-self:start;display:inline-flex;align-items:center;gap:6px;min-height:36px;margin:0 0 0 -8px;padding:0 10px 0 8px;border:0;border-radius:8px;background:transparent;color:var(--sk-text-2);font:inherit;font-size:var(--sk-fs-sm);font-weight:600;text-align:left;cursor:pointer}.sk-teacher-content .back-link:hover{color:var(--sk-text);background:var(--sk-surface-2)}.sk-tp-date{display:grid;place-items:center;align-content:center;width:44px;height:44px;border-radius:12px;background:var(--sk-accent-soft);color:var(--sk-accent-text);flex-shrink:0;line-height:1}.sk-tp-date b{font-size:var(--sk-fs-lg);font-weight:700}.sk-tp-date small{font-size:11px;font-weight:600;text-transform:lowercase}.sk-teacher-content .edu-screen>.btn,.sk-teacher-content .edu-screen>button:not(.sk-back):not(.back-link){justify-self:start}.sk-teacher-content .edu-screen>h3{margin:8px 0 0;font-size:var(--sk-fs-md);font-weight:650;color:var(--sk-text)}.sk-teacher-content .edu-screen .panel h3{margin:16px 0 6px;font-size:var(--sk-fs-md);font-weight:650;color:var(--sk-text)}.sk-teacher-content .edu-screen .panel h3:first-child{margin-top:0}.sk-tl-actions{display:flex;flex-wrap:wrap;gap:8px}.sk-tl-form .sk-card-head{margin-bottom:var(--sk-3)}.sk-tl-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px}.sk-tl-wide{grid-column:1 / -1}.sk-teacher-content .sk-tl-fields .file-drop{display:grid;gap:8px;padding:14px 16px;border:1px dashed var(--sk-line-strong);border-radius:var(--sk-r-md);background:var(--sk-surface-2);color:var(--sk-text-2);font-size:var(--sk-fs-sm);font-weight:600}.sk-teacher-content .sk-tl-fields .publish-check{display:flex;align-items:flex-start;gap:10px;font-size:var(--sk-fs-sm);color:var(--sk-text-2);line-height:1.45}.sk-teacher-content .sk-tl-fields .publish-check input{width:18px;height:18px;margin-top:1px;flex-shrink:0;accent-color:var(--sk-accent)}.sk-tl-submit{display:flex;flex-wrap:wrap;gap:10px}.sk-tl-list{display:grid;gap:12px}.sk-tl-list-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.sk-tl-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sk-tl-tools .sk-select .sk-input{min-width:200px}.sk-tl-search{position:relative;display:flex;align-items:center}.sk-tl-search>svg{position:absolute;left:12px;color:var(--sk-text-3);pointer-events:none}.sk-teacher-content .sk-tl-search .sk-input{min-height:40px;width:240px;padding-left:36px;font-size:var(--sk-fs-sm)}.sk-tl-row .sk-row-title{margin:0;font-size:var(--sk-fs-md)}.sk-tl-row .sk-row-end{gap:6px}.sk-tl-pages{display:flex;align-items:center;justify-content:center;gap:12px;font-size:var(--sk-fs-sm);color:var(--sk-text-2);font-variant-numeric:tabular-nums}@media(max-width:720px){.sk-tl-fields{grid-template-columns:minmax(0,1fr)}.sk-tl-tools,.sk-tl-tools .sk-select,.sk-tl-search{width:100%}.sk-tl-tools .sk-select .sk-input,.sk-tl-search .sk-input{width:100%;min-width:0}.sk-tl-row{flex-wrap:wrap}.sk-tl-row .sk-row-end{width:100%;padding-left:52px}}.sk-teacher-content .st-workspace{display:grid;gap:14px;max-width:1200px}.sk-teacher-content .st-workspace>.it-kicker{display:none}.sk-teacher-content .st-workspace>h2{margin:0;font-size:var(--sk-fs-xl);font-weight:650;letter-spacing:-.015em;color:var(--sk-text)}.sk-teacher-content .st-workspace>p{margin:0;font-size:var(--sk-fs-sm);color:var(--sk-text-2);line-height:1.5}html[data-theme=dark] .sk .btn.primary{background:var(--sk-accent);border-color:var(--sk-accent);color:var(--sk-text-on-accent)}html[data-theme=dark] .sk .btn.primary:not(:disabled):hover{background:var(--sk-accent-hover);border-color:var(--sk-accent-hover)}.sk-jg-groups{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sk-jg-groups>button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 8px 0 14px;border:1px solid var(--sk-line-strong);border-radius:var(--sk-r-pill);background:var(--sk-surface);color:var(--sk-text);font:inherit;font-size:var(--sk-fs-sm);font-weight:600;cursor:pointer}.sk-jg-groups>button:hover{border-color:var(--sk-text-3)}.sk-jg-groups>button[aria-pressed=true]{border-color:var(--sk-accent);background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-jg-groups>button:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:2px}.sk-jg-count{display:inline-grid;place-items:center;min-width:24px;height:22px;padding:0 6px;border-radius:11px;background:var(--sk-surface-2);color:var(--sk-text-2);font-size:12px;font-variant-numeric:tabular-nums}.sk-jg-groups>button[aria-pressed=true] .sk-jg-count{background:var(--sk-surface);color:var(--sk-accent-text)}.sk-jg-groups .sk-select .sk-input{min-height:40px}.sk-jg-filters{border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface)}.sk-jg-filters>summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:12px 16px;list-style:none;cursor:pointer;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text);border-radius:inherit}.sk-jg-filters>summary::-webkit-details-marker{display:none}.sk-jg-filters>summary:before{content:"";width:7px;height:7px;margin-right:4px;border-right:2px solid var(--sk-text-3);border-bottom:2px solid var(--sk-text-3);transform:rotate(-45deg) translateY(-1px);transition:transform var(--sk-dur-2) var(--sk-ease)}.sk-jg-filters[open]>summary:before{transform:rotate(45deg) translateY(-2px)}.sk-jg-filters>summary small{color:var(--sk-text-3);font-weight:500}.sk-jg-filters>summary:hover{background:var(--sk-surface-2)}.sk-jg-filters>summary:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:2px}.sk-jg-filters-body{display:grid;gap:12px;padding:4px 16px 16px}.sk-jg-filters-body>details.panel{margin:0}.sk-teacher-content .edu-matrix.sk-jg-grid{display:block;max-height:min(72vh,760px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);background:var(--sk-surface);box-shadow:var(--sk-shadow-1);scroll-padding:84px 0 0 200px}.sk-teacher-content .sk-jg-grid:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:2px}.sk-teacher-content .sk-jg-grid table{min-width:100%;border-collapse:separate;border-spacing:0;font-size:var(--sk-fs-sm)}.sk-teacher-content .sk-jg-grid :is(th,td){min-width:104px;max-width:168px;padding:6px 8px;border:0;border-right:1px solid var(--sk-line);border-bottom:1px solid var(--sk-line);background:var(--sk-surface);text-align:center;vertical-align:middle}.sk-teacher-content .sk-jg-grid thead th{position:sticky;top:0;z-index:2;padding:10px 8px;background:var(--sk-surface-2);color:var(--sk-text);font-size:var(--sk-fs-xs);font-weight:600;letter-spacing:0;text-transform:none;vertical-align:bottom}.sk-teacher-content .sk-jg-grid tbody th{position:sticky;left:0;z-index:1;min-width:200px;max-width:240px;padding:8px 14px;text-align:left;font-size:var(--sk-fs-sm);font-weight:600;color:var(--sk-text);overflow-wrap:anywhere;box-shadow:1px 0 0 var(--sk-line)}.sk-teacher-content .sk-jg-grid thead th:first-child{left:0;z-index:3;min-width:200px;text-align:left;padding-left:14px;box-shadow:1px 0 0 var(--sk-line)}.sk-teacher-content .sk-jg-grid tbody tr:hover :is(th,td){background:var(--sk-surface-2)}.sk-jg-date{display:block;color:var(--sk-accent-text);font-weight:650;font-variant-numeric:tabular-nums}.sk-jg-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;line-height:1.3}.sk-teacher-content .sk-jg-grid thead th small{display:block;margin-top:2px;color:var(--sk-text-3);font-size:11px;font-weight:500}.sk-teacher-content .sk-jg-grid .sk-jg-avg{min-width:84px;font-weight:650;color:var(--sk-text);font-variant-numeric:tabular-nums}.sk-teacher-content .sk-jg-grid .edu-cell{display:grid;place-items:center;width:100%;min-height:36px;padding:4px 6px;border-radius:8px;text-align:center}.sk-teacher-content .sk-jg-grid .edu-cell+.edu-cell{margin-top:4px}.sk-teacher-content .sk-jg-grid .edu-cell small{display:none}.sk-teacher-content .sk-jg-grid .edu-cell:focus-visible{outline:3px solid var(--sk-accent-text);outline-offset:1px}.sk-jg-none{color:var(--sk-text-3)}.sk-jg-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;font-size:var(--sk-fs-xs);color:var(--sk-text-3)}.sk-jg-legend>span{display:inline-grid;place-items:center;min-width:28px;height:22px;margin-left:6px;padding:0 6px;border-radius:6px;font-weight:650}.sk-jg-legend>span:first-child{margin-left:0}.sk-jg-legend .is-mark{background:var(--sk-accent-soft);color:var(--sk-accent-text)}.sk-jg-legend .is-submitted{background:var(--sk-warning-soft);color:var(--sk-warning)}.sk-jg-legend .is-returned{background:var(--sk-info-soft);color:var(--sk-info)}.sk-jg-legend .is-issued{border:1px dashed var(--sk-line-strong);color:var(--sk-text-3);font-weight:500}.sk-jg-legend .is-none{color:var(--sk-text-3)}@media(max-width:800px){.sk-teacher-content .edu-matrix-mobile{display:none}}@media(max-width:600px){.sk-teacher-content .edu-matrix.sk-jg-grid{max-height:68vh;scroll-padding-left:124px}.sk-teacher-content .sk-jg-grid :is(th,td){min-width:84px;padding:5px 6px}.sk-teacher-content .sk-jg-grid tbody th,.sk-teacher-content .sk-jg-grid thead th:first-child{min-width:124px;max-width:140px;padding-left:10px;font-size:13px}.sk-jg-groups>button{min-height:44px}}.sk-teacher-content .sk-seg.sem-journal-tabs{display:inline-flex!important;flex-wrap:nowrap;gap:2px;max-width:100%;overflow-x:auto}.sk-teacher-content .sk-jg-grid .edu-cell b{white-space:nowrap}.sk-teacher-content .sk-jg-grid tbody th{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}@media(max-width:600px){.sk-teacher-content .sk-jg .edu-heading{flex-wrap:nowrap;align-items:flex-start}.sk-teacher-content .sk-jg .edu-heading .btn{flex-shrink:0;min-height:36px;padding:0 12px;font-size:var(--sk-fs-xs)}.sk-jg-groups{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--sk-gutter, 16px) * -1);padding:2px var(--sk-gutter, 16px);scrollbar-width:none}.sk-jg-groups::-webkit-scrollbar{display:none}.sk-jg-groups>button{flex-shrink:0}.sk-teacher-content .sk-jg-grid .edu-cell b{font-size:12px}.sk-teacher-content .sk-jg-grid .edu-cell[data-state=mark] b{font-size:var(--sk-fs-md)}}.sk-assign-variant{justify-self:start;margin-top:6px}.sk-assign-variant>a{min-height:36px}.sk-assign-grid.is-quick{grid-template-columns:minmax(0,1fr) 300px}.sk-assign-grid.is-quick>.assignment-draft-fields:first-child{grid-column:1;grid-row:1}.sk-assign-grid.is-quick>.sk-assign-side{grid-column:2;grid-row:1 / span 2}.sk-assign-grid.is-quick>.sk-assign-rest{grid-column:1;grid-row:2}.sk-assign-summary .sk-hint{margin:0}.sk-assign-summary dd .sk-link{display:inline;padding:0;font-size:inherit}@media(max-width:1100px){.sk-assign-grid.is-quick{grid-template-columns:minmax(0,1fr)}.sk-assign-grid.is-quick>*{grid-column:1!important;grid-row:auto!important}}.sk-jg-search{display:grid;gap:6px;width:min(100%,360px);color:var(--sk-text-2);font-size:var(--sk-fs-sm)}.sk-jg-groups>button{min-height:44px}.kd-pixel-text{--kd-pixel-unit:3px;display:inline-block;max-width:100%;line-height:0;vertical-align:middle;color:inherit}.kd-pixel-text svg{display:block;max-width:100%;height:auto}.kd-pixel-mobile{display:none!important}.kd-pixel-icon{display:inline-block;vertical-align:middle;flex-shrink:0}.sk .kd-wordmark .kd-pixel-brand{--kd-pixel-unit:3px;width:160px;display:block}.sk .kd-wordmark small{margin-top:7px;letter-spacing:.01em}.sk-tbar-title .kd-pixel-text{--kd-pixel-unit:2.5px}.sk-teaching-head .kd-pixel-text{--kd-pixel-unit:3px}.sk-course-hero .kd-pixel-text{--kd-pixel-unit:5px}.sk-auth-card h1 .kd-pixel-text{--kd-pixel-unit:3px}.sk-app,.sk-teacher{background:var(--sk-bg)}.sk-card,.sk-teaching-list,.sk-auth-card,.sk-modal,.sk-sheet,.sk-module-tab{border-radius:var(--sk-r-sm)}.sk .sk-card{box-shadow:var(--sk-shadow-1)}.sk-tbar,.sk-topbar,.sk-tabbar,.sk-sidebar{background:var(--sk-chrome)}.sk-btn,.sk-icon-btn,.sk-input,.sk-seg,.sk-seg>button,.sk-topic-marker,.sk-teaching-no,.sk-row-icon,.sk-sidenav-link,.sk-topnav-link,.sk-teaching-modules>button{border-radius:var(--sk-r-sm)}.sk-btn.is-primary{box-shadow:2px 2px 0 var(--sk-cube-4)}.sk-btn.is-primary:hover:not(:disabled){box-shadow:4px 4px 0 var(--sk-cube-4);transform:translate(-1px,-1px)}.sk-btn.is-primary:active:not(:disabled){transform:translate(0);box-shadow:1px 1px 0 var(--sk-cube-4)}.sk-btn:focus-visible{outline:2px solid var(--sk-text);outline-offset:4px;box-shadow:none}.sk-btn.kd-action-theory{--btn-bg:transparent;--btn-fg:var(--sk-text-2);--btn-line:var(--sk-line);--btn-hover:var(--sk-surface-2)}.sk-btn.kd-action-practice{--btn-bg:var(--sk-accent);--btn-fg:var(--sk-text-on-accent);--btn-line:var(--sk-accent);--btn-hover:var(--sk-accent-hover)}.sk-btn.kd-action-homework{--btn-bg:var(--sk-nav-soft);--btn-fg:var(--sk-nav);--btn-line:var(--sk-cube-2);--btn-hover:var(--sk-cube-4)}.sk-teaching-modules>button[aria-pressed=true],.sk-module-tab[aria-pressed=true]{position:relative}.sk-teaching-modules>button[aria-pressed=true]:after,.sk-module-tab[aria-pressed=true]:after{content:"";position:absolute;right:8px;bottom:8px;width:3px;height:3px;background:var(--sk-accent);box-shadow:-5px 0 0 var(--sk-accent),0 -5px 0 var(--sk-accent);pointer-events:none}.sk-teaching-no,.sk-topic-marker{font-family:var(--sk-mono)}.sk-topic.is-done .sk-topic-marker{border-radius:var(--sk-r-sm)}.sk-topic-now,.sk-count{border-radius:2px}.sk-continue,.sk-course-progress{border-top-color:var(--sk-accent)}.sk-continue{background:var(--sk-surface)}.kd-deck-device,.kd-deck-chip{animation-timing-function:steps(8,end)}.sk-enter,.sk-popover,.sk-sheet{animation-timing-function:steps(5,end)}.sk-home,.sk-course,.sk-teaching{position:relative}.kd-motion-anchor{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.kd-pixel-assembly{position:absolute;top:0;left:0;width:100%;display:grid;z-index:3;pointer-events:none;overflow:hidden}.kd-pixel-assembly>i{display:block;background:var(--sk-bg);animation:kd-tile-build .14s steps(3,end) both}.kd-pixel-assembly>i:nth-child(5n){background:var(--sk-surface)}.kd-pixel-assembly>i:nth-child(11n){background:color-mix(in srgb,var(--sk-cube-3) 25%,var(--sk-bg))}.kd-pixel-fx{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:115;overflow:hidden}.kd-pixel-spark{position:absolute;width:5px;height:5px;background:var(--sk-accent);pointer-events:none;animation:kd-spark-out .42s steps(7,end) both}.kd-pixel-spark:nth-child(3n){background:var(--sk-cube-2)}.kd-pixel-spark:nth-child(3n+1){background:var(--sk-project)}.kd-not-found{max-width:950px;margin:20px auto 30px;border:1px solid var(--sk-project);background:var(--sk-surface);box-shadow:var(--sk-shadow-3)}.kd-error-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--sk-line);color:var(--sk-project);font:11px var(--sk-mono)}.kd-error-content{display:grid;justify-items:center;text-align:center;gap:18px;padding:34px 24px 40px;position:relative;background-image:linear-gradient(color-mix(in srgb,var(--sk-cube-3) 9%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--sk-cube-3) 9%,transparent) 1px,transparent 1px);background-size:28px 28px}.kd-error-art{max-width:100%}.kd-error-file{display:block;width:65px;height:75px;margin:0 auto 20px;animation:kd-file-arrive .85s steps(8,end) both}.kd-error-digits{--kd-pixel-unit:24px;color:var(--sk-project);animation:kd-error-shift 1.6s steps(1,end) both}.kd-error-content h1 .kd-pixel-text{--kd-pixel-unit:3px}.kd-error-content p{max-width:44ch}.kd-error-content .sk-actions{justify-content:center;margin:0}@keyframes kd-tile-build{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-7px)}}@keyframes kd-spark-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--dx),var(--dy))}}@keyframes kd-file-arrive{0%{opacity:0;transform:translateY(-15px) rotate(-10deg)}60%{opacity:1;transform:translateY(3px) rotate(5deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes kd-error-shift{0%{opacity:0;transform:translate(-5px)}18%{opacity:1;transform:translate(4px)}38%{transform:translate(-3px)}60%{transform:translate(2px)}80%,to{opacity:1;transform:translate(0)}}html[data-motion=off] .sk *,html[data-motion=off] .sk *:before,html[data-motion=off] .sk *:after,html[data-motion=off] .kd-pixel-fx *{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion=off] .kd-pixel-assembly,html[data-motion=off] .kd-pixel-fx{display:none!important}html[data-motion=off] .sk-btn:hover,html[data-motion=off] .sk-card:hover,html[data-motion=off] .sk-deck-art:hover .kd-deck-device{transform:none!important}@media(max-width:700px){.kd-pixel-desktop{display:none!important}.kd-pixel-mobile{display:block!important}.kd-pixel-text svg:only-of-type{display:block!important}.sk .kd-wordmark .kd-pixel-brand{--kd-pixel-unit:2.3px;width:122px}.sk-tbar-title .kd-pixel-text{--kd-pixel-unit:2.5px}.sk-teaching-head .kd-pixel-text{--kd-pixel-unit:3px}.sk-course-hero .kd-pixel-text{--kd-pixel-unit:4px}.sk-topbar-in{gap:9px}.sk-topbar-end{gap:6px}.sk-tbar-end{gap:8px}.sk-tbar-title{min-width:0}.kd-error-content{padding:25px 16px 30px}.kd-error-digits{--kd-pixel-unit:19px}.kd-error-content h1 .kd-pixel-text{--kd-pixel-unit:2.6px}.kd-error-content .sk-actions>.sk-btn{white-space:normal;min-height:46px;line-height:1.4;padding:10px 12px}}@media(prefers-reduced-motion:reduce){.kd-pixel-assembly,.kd-pixel-fx{display:none!important}.kd-error-file,.kd-error-digits,.kd-deck-device,.kd-deck-chip{animation:none!important}.sk-btn:hover,.sk-card:hover,.sk-deck-art:hover .kd-deck-device{transform:none!important}}@media print{.kd-pixel-fx,.kd-pixel-assembly{display:none!important}}.sk .sk-btn,.sk .sk-icon-btn,.sk .sk-topic-marker,.sk .sk-topic.is-done .sk-topic-marker,.sk .sk-teaching-modules>button>span{border-radius:3px}.sk .sk-tab-icon,.sk .sk-row-icon{border-radius:4px}.sk-teaching-tools input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
