:root{color-scheme:dark;--bg:#101210;--text:#f3f5ef;--accent:#ccff65;--muted:#9b9f96;--line:#34372f;--gutter:clamp(24px,6.5vw,112px);--header:96px;--footer:82px;font-family:Arial,Microsoft YaHei,PingFang SC,sans-serif;background:var(--bg);color:var(--text);font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--bg)}button:disabled{opacity:.25}button:hover:enabled,a:hover{color:var(--accent)}.accent{color:var(--accent)}.header{position:fixed;top:0;left:0;right:0;height:var(--header);padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;z-index:20;background:linear-gradient(var(--bg) 15%,#10121000)}.brand{display:flex;align-items:center;gap:13px;font-size:22px;font-weight:700;letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:2.5px;font-weight:400;color:var(--muted);margin-top:5px}.brand-mark{width:28px;height:30px;position:relative;display:block}.brand-mark:before,.brand-mark:after{content:"";position:absolute;width:17px;height:17px;background:var(--accent)}.brand-mark:before{left:0;top:0;clip-path:polygon(0 0,100% 0,100% 100%,55% 100%,55% 45%,0 45%)}.brand-mark:after{right:0;bottom:0;clip-path:polygon(0 0,45% 0,45% 55%,100% 55%,100% 100%,0 100%)}nav{display:flex;gap:36px;align-self:stretch}.nav-link{display:inline-flex;align-items:center;font-size:13px;background:none;position:relative;padding:0;white-space:nowrap;color:#b9bdb3}.nav-link.is-current{color:var(--text)}.nav-link.is-current:after{content:"";position:absolute;bottom:20px;left:0;right:0;height:2px;background:var(--accent)}.classroom-link{border:1px solid #65695e;padding:12px 22px;border-radius:30px;display:flex;gap:26px;font-size:12px;align-items:center}.classroom-link span{font-size:18px}main{height:100dvh;position:relative;overflow:hidden;isolation:isolate}.scene{position:absolute;inset:0;padding:var(--header) var(--gutter) var(--footer);overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;--direction:1}.scene.is-active{visibility:visible;opacity:1;pointer-events:auto;z-index:2}.scene.is-leaving{visibility:visible;pointer-events:none;z-index:1}.scene-copy{position:absolute;top:28%;left:var(--gutter);z-index:3;max-width:620px}.scene h1,.scene h2{font-size:clamp(48px,5.3vw,86px);font-weight:700;letter-spacing:-.06em;line-height:1.24;margin:0 0 25px}.scene h1{font-size:clamp(52px,5.7vw,92px)}.scene-copy p{color:#afb3a7;font-size:clamp(13px,1.08vw,16px);line-height:1.95;margin:0 0 32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border-radius:40px;font-size:14px;font-weight:600;white-space:nowrap;padding:18px 27px;min-width:172px;transition:background .2s,transform .2s}.button-primary{background:var(--accent);color:var(--bg)}.button-primary:hover:enabled,.button-primary:hover{color:var(--bg);background:#ddff9e;transform:translateY(-3px)}.button span{font-size:20px}.text-button{display:inline-flex;gap:35px;font-size:13px;padding:0 0 10px;background:none;border-bottom:1px solid #666d59}.text-button span{color:var(--accent);font-size:17px}.subject{font-size:13px;letter-spacing:2px;color:var(--accent);margin-bottom:19px}.backword{position:absolute;left:40%;top:11%;font:800 clamp(100px,15vw,240px)/1 Arial,sans-serif;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #404539;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:0}.visual{position:absolute;z-index:1;transform-origin:center;will-change:transform}.hero-art{width:min(64vw,1000px);height:min(77vw,1000px);max-height:108vh;left:40%;top:6%;display:flex;align-items:center;-webkit-mask-image:linear-gradient(0deg,transparent,#000 14%,#000 84%,transparent),linear-gradient(90deg,transparent,#000 12%,#000 86%,transparent);mask-image:linear-gradient(0deg,transparent,#000 14%,#000 84%,transparent),linear-gradient(90deg,transparent,#000 12%,#000 86%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-art{mix-blend-mode:lighten}.hero-index{z-index:3}.code-window code{font:inherit}.hero-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten}.hero-index{position:absolute;left:var(--gutter);right:var(--gutter);bottom:calc(var(--footer) + 32px);display:flex;justify-content:space-between;align-items:center;color:#969d8b;font-size:11px;letter-spacing:2px}.hero-index span:last-child{color:#c4c9bb}.course-scene .scene-copy{top:24%;max-width:48%}.course-scene h2{font-size:clamp(48px,5.1vw,80px)}.course-list{position:absolute;left:var(--gutter);right:calc(var(--gutter) + 30px);bottom:calc(var(--footer) + 26px);z-index:4}.course-row{width:100%;display:grid;grid-template-columns:1.05fr 1fr 30px;gap:20px;align-items:center;text-align:left;padding:19px 0;background:none;border-top:1px solid #494f40;transition:padding .2s,color .2s}.course-row:last-child{border-bottom:1px solid #494f40}.course-row-title{font-size:16px;font-weight:500}.course-row-note{font-size:12px;color:#9fa594}.course-row-arrow{text-align:right;font-size:23px}.course-row:hover{padding-left:12px;padding-right:10px}.course-row:hover .course-row-arrow{color:var(--accent)}.code-window{left:50%;right:calc(var(--gutter) + 30px);top:25%;background:#131612;border:1px solid #41463a;border-radius:8px;box-shadow:0 25px 75px #0004;transform:perspective(1100px) rotateY(-8deg) rotateX(3deg);overflow:hidden}.window-bar{height:37px;background:#1d211b;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font:10px Consolas,monospace;color:#9ba18f}.window-dots{letter-spacing:3px;color:#6f7765;font-size:10px}.code-window pre{margin:0;padding:22px 24px 20px 50px;font:clamp(10px,.85vw,13px)/1.85 Consolas,"Courier New",monospace;color:#d1d9c7;counter-reset:line;background:linear-gradient(90deg,#151a12 31px,#303529 32px,transparent 33px)}.code-comment{color:#77816b}.code-keyword{color:#bfcdff}.code-name{color:#f1f4d7}.code-string{color:var(--accent)}.code-output{border-top:1px solid #2b3225;font:12px Consolas,Microsoft YaHei,monospace;color:#aebba0;display:flex;align-items:center;gap:12px;padding:14px 22px}.code-output>span:first-child{color:var(--accent);font-size:20px}.cursor{display:inline-block;width:6px;height:13px;background:var(--accent);vertical-align:middle;margin-left:8px}.editor-caption{display:flex;justify-content:space-between;color:#7b876c;font-size:9px;padding:0 20px 14px}.editor-caption span:last-child{letter-spacing:1px}.security-visual{top:20%;left:49%;width:43%;height:48%}.radar-grid{position:absolute;width:82%;aspect-ratio:1;right:-7%;top:-7%;border:1px solid #5f763c44;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0,transparent 29px,#8ab54312 30px,#8ab54312 31px),repeating-linear-gradient(90deg,transparent 0,transparent 29px,#8ab54312 30px,#8ab54312 31px);transform:perspective(800px) rotateY(-23deg) rotateX(9deg);box-shadow:0 0 70px #b8ff3610,inset 0 0 70px #b8ff3610}.radar-ring{position:absolute;inset:13%;border:1px solid #a4d65044;border-radius:50%}.radar-ring:nth-child(2){inset:29%;border-color:#ccff6566}.radar-ring:nth-child(3){inset:4%;transform:rotateX(63deg);border-color:#ccff6580}.radar-axis{position:absolute;left:50%;height:50%;top:0;background:linear-gradient(transparent,var(--accent));width:1px;transform-origin:bottom;transform:rotate(55deg)}.radar-point{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px var(--accent)}.point-one{left:28%;top:22%}.point-two{left:75%;top:35%}.point-three{left:61%;top:75%}.security-symbol{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:50px/1 Consolas,monospace;color:var(--accent);text-shadow:0 0 45px #caff6577}.terminal{position:absolute;width:73%;left:0;top:24%;background:#11170ff2;border:1px solid #52693e;box-shadow:0 25px 60px #0008;transform:perspective(800px) rotateY(9deg) rotate(-3deg);padding:15px 23px 22px;font:12px/1.8 Consolas,Microsoft YaHei,monospace}.terminal-title{display:flex;justify-content:space-between;font-size:9px;color:#92a580;margin-bottom:22px}.terminal p{margin:7px 0;color:#c2daa6}.terminal p span{color:var(--accent)}.terminal p:not(:first-of-type) span:not(.cursor){float:right;font-size:9px}.terminal .terminal-muted{font-size:10px;color:#7b906a;margin-bottom:20px}.terminal .terminal-prompt{color:var(--accent);margin-top:20px;font-size:11px}.ai-scene .backword{left:60%;font-size:clamp(220px,30vw,450px);top:7%}.ai-visual{left:45%;right:3%;top:13%;height:60%}.ai-visual canvas{width:100%;height:100%;display:block}.ai-caption{display:flex;justify-content:center;align-items:center;gap:12px;font:9px Consolas,monospace;color:#a5b58c;letter-spacing:1px}.ai-caption i{height:1px;width:30px;background:#6c8050}.path-heading{position:absolute;top:21%;left:var(--gutter);right:var(--gutter);z-index:2}.path-heading h2{font-size:clamp(34px,4vw,62px);white-space:nowrap;margin-bottom:20px}.path-heading p{font-size:14px;color:var(--muted);line-height:1.7}.path-scene .backword{left:29%;font-size:clamp(80px,14vw,200px);top:11%;opacity:.4}.path-tabs{position:absolute;top:46%;left:var(--gutter);display:flex;gap:30px;z-index:4}.path-tabs button{background:none;font-size:14px;color:#999f8f;padding:12px 0;min-width:126px;text-align:left;border-bottom:1px solid #424c36}.path-tabs button span{float:right;margin-left:16px}.path-tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent)}.path-panel{position:absolute;top:57%;left:var(--gutter);right:var(--gutter);z-index:3}.path-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.path-stage{border-top:1px solid #65744e;padding-top:20px;position:relative}.stage-number{color:var(--accent);font:12px Consolas,monospace}.path-stage h3{font-weight:500;font-size:22px;margin:14px 0 13px}.path-stage p{font-size:12px;color:#9fa791;line-height:1.7;margin:0}.path-stage:not(:last-child):after{content:"↗";position:absolute;top:43px;right:0;font-size:24px;color:#7a8c5e}.path-source{display:inline-flex;gap:20px;margin-top:24px;font-size:11px;color:#b9c4aa}.path-source span{color:#7f8e70}.path-bottom{position:absolute;bottom:calc(var(--footer) + 28px);left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;z-index:3}.path-bottom>span{color:#89967c;font-size:12px}.scene-rail{position:fixed;right:24px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:17px;z-index:10}.rail-button{width:25px;height:17px;padding:0;background:none;display:flex;justify-content:center;align-items:center}.rail-button:before{content:"";width:5px;height:5px;border:1px solid #717b63;border-radius:50%;transition:height .3s,background .3s}.rail-button[aria-current=true]:before{height:22px;background:var(--accent);border-color:var(--accent);border-radius:3px}.footer{position:fixed;bottom:0;left:var(--gutter);right:var(--gutter);height:var(--footer);display:flex;align-items:center;gap:27px;z-index:10;border-top:1px solid #32382b;background:var(--bg)}.pagination{display:flex;gap:9px;font:12px Consolas,monospace;color:#939d86}.pagination>span:first-child{font-size:20px;color:#f1f5e9}.page-divider{color:#555e4b}.progress-track{width:clamp(100px,17vw,280px);height:2px;background:#333c2b}.progress-track>span{width:20%;display:block;background:var(--accent);height:100%;transition:width .8s cubic-bezier(.22,1,.36,1)}.page-title{font-size:11px;color:#97a18b;letter-spacing:1px}.page-controls{margin-left:auto;display:flex;gap:10px}.page-controls button{background:transparent;border:1px solid #424c36;width:36px;height:36px;border-radius:50%;font-size:18px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:var(--accent);color:#101210;z-index:100}.skip-link:focus{top:10px}dialog{width:min(620px,calc(100% - 32px));padding:28px 32px 32px;border:1px solid #4b573d;border-radius:12px;background:#171c14;color:var(--text);max-height:85dvh;overflow:auto;box-shadow:0 40px 150px #000a}dialog::backdrop{background:#060906c9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;color:#9ba78c;font-size:11px;border-bottom:1px solid #37432c;padding-bottom:18px}.dialog-close{background:none;font-size:28px;padding:0 4px}.dialog-title{font-size:29px;line-height:1.5;letter-spacing:-1px;margin:25px 0 15px}.dialog-intro{font-size:14px;line-height:1.9;color:#b0bba4}.dialog-topics{list-style:none;padding:0;margin:24px 0}.dialog-topics li{padding:10px 0;font-size:13px;color:#cbd5bf}.dialog-topics li:before{content:"↗";margin-right:15px;color:var(--accent)}.dialog-note{font-size:11px;color:#98a68a;line-height:1.8;margin:18px 0 26px}.dialog-source{font-size:10px;color:#869879;line-height:1.8;margin-top:18px}.about-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:13px;color:#c7d5b9;margin:24px 0}.about-list>span{padding:12px 0;border-bottom:1px solid #3f4c33}.scene.is-entering{animation:scene-enter 1s cubic-bezier(.22,1,.36,1) both}.scene.is-leaving{animation:scene-leave .9s cubic-bezier(.55,0,.25,1) both}.is-entering .scene-copy,.is-entering .path-heading{animation:copy-enter 1s cubic-bezier(.22,1,.36,1) both}.is-leaving .scene-copy,.is-leaving .path-heading{animation:copy-leave .7s cubic-bezier(.55,0,.45,1) both}.is-entering .backword{animation:word-enter 1.15s cubic-bezier(.22,1,.36,1) both}.is-leaving .backword{animation:word-leave .85s ease-in both}.is-entering .visual{animation:visual-enter 1.1s cubic-bezier(.22,1,.36,1) both}.is-leaving .visual{animation:visual-leave .8s cubic-bezier(.55,0,.45,1) both}.is-entering .course-list,.is-entering .path-panel,.is-entering .path-tabs,.is-entering .path-bottom{animation:detail-enter 1s .12s cubic-bezier(.22,1,.36,1) both}.is-leaving .course-list,.is-leaving .path-panel,.is-leaving .path-tabs,.is-leaving .path-bottom{animation:detail-leave .6s ease both}@keyframes scene-enter{0%{opacity:0;clip-path:inset(12% 0 0)}to{opacity:1;clip-path:inset(0)}}@keyframes scene-leave{0%{opacity:1}to{opacity:0}}@keyframes copy-enter{0%{opacity:0;translate:0 calc(var(--direction)*180px)}to{opacity:1;translate:0 0}}@keyframes copy-leave{to{opacity:0;translate:0 calc(var(--direction)*-240px)}}@keyframes word-enter{0%{opacity:0;translate:0 calc(var(--direction)*90px)}to{opacity:1;translate:0 0}}@keyframes word-leave{to{opacity:0;translate:0 calc(var(--direction)*-100px)}}@keyframes visual-enter{0%{opacity:0;translate:0 calc(var(--direction)*-160px);rotate:-8deg;scale:1.07}to{opacity:1;translate:0 0;rotate:0deg;scale:1}}@keyframes visual-leave{to{opacity:0;translate:0 calc(var(--direction)*170px);rotate:7deg;scale:.95}}@keyframes detail-enter{0%{opacity:0;translate:0 calc(var(--direction)*90px)}to{opacity:1;translate:0 0}}@keyframes detail-leave{to{opacity:0;translate:0 calc(var(--direction)*-80px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.layer{will-change:auto}.code-window,.terminal,.radar-grid{transform:none}}@media(min-width:1600px){.scene-copy{top:30%}.course-scene .scene-copy{top:25%}.code-window{top:27%}}@media(max-height:760px)and (min-width:801px){:root{--header:78px;--footer:65px}.scene-copy{top:25%}.scene h1{font-size:64px}.course-scene .scene-copy{top:21%}.course-scene h2{font-size:56px;margin-bottom:16px}.subject{margin-bottom:12px}.scene-copy p{margin-bottom:20px;font-size:13px}.code-window{top:22%}.code-window pre{font-size:11px;line-height:1.65;padding-top:14px;padding-bottom:14px}.course-row{padding:15px 0}.course-list{bottom:calc(var(--footer) + 18px)}.path-heading{top:19%}.path-tabs{top:43%}.path-panel{top:55%}.path-stage h3{margin:12px 0;font-size:20px}.path-bottom{bottom:calc(var(--footer) + 22px)}.terminal{font-size:10px;padding:12px 18px}.terminal-title,.terminal .terminal-muted{margin-bottom:14px}.terminal .terminal-prompt{margin-top:12px}}@media(max-width:1100px)and (min-width:801px){:root{--gutter:45px}.scene h1{font-size:65px}.course-scene h2{font-size:60px}.code-window{left:51%}.code-window pre{font-size:10px;padding-left:38px}.course-row-note{font-size:10px}.path-heading h2{font-size:42px}.terminal{width:90%;font-size:10px}.editor-caption span:last-child{display:none}}@media(max-width:800px){:root{--header:80px;--footer:65px;--gutter:26px}.brand{font-size:19px;gap:10px}.brand-mark{width:24px;height:26px}.brand small{font-size:6px;letter-spacing:1.9px}.header nav{display:none}.classroom-link{font-size:11px;padding:10px 15px;gap:15px}.scene-copy{top:20%;max-width:100%;right:var(--gutter)}.scene h1{font-size:clamp(43px,9.2vw,68px);line-height:1.3;letter-spacing:-.055em}.scene-copy p{font-size:12px;line-height:1.9;margin-bottom:23px}.button{font-size:12px;padding:14px 23px;min-width:154px;gap:30px}.button span{font-size:18px}.hero-art{left:21%;top:36%;width:90vw;height:90vw;max-height:none;-webkit-mask-image:linear-gradient(0deg,transparent,#000 14%,#000 84%,transparent),linear-gradient(90deg,transparent,#000 12%,#000 90%,transparent);mask-image:linear-gradient(0deg,transparent,#000 14%,#000 84%,transparent),linear-gradient(90deg,transparent,#000 12%,#000 90%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.hero .scene-copy{z-index:3;pointer-events:none}.hero .scene-copy button{pointer-events:auto}.hero .scene-copy p{max-width:260px}.hero .backword{top:48%;left:10%;font-size:24vw}.hero-index{bottom:calc(var(--footer) + 20px);font-size:9px;letter-spacing:1px}.hero-index span:last-child{display:none}.scene-rail{right:9px;gap:14px}.rail-button{width:20px}.footer{gap:16px}.progress-track{width:65px}.page-title{font-size:10px}.page-controls{gap:7px}.page-controls button{width:31px;height:31px;font-size:16px}.pagination{font-size:10px;gap:6px}.pagination>span:first-child{font-size:17px}.course-scene .scene-copy{top:16%;max-width:100%}.subject{font-size:10px;letter-spacing:1px;margin-bottom:10px}.course-scene h2{font-size:clamp(36px,8vw,56px);line-height:1.25;margin-bottom:16px}.course-scene .scene-copy p{font-size:11px;margin-bottom:12px;line-height:1.8}.text-button{font-size:11px;padding-bottom:6px;gap:22px}.code-window{left:var(--gutter);right:calc(var(--gutter) + 13px);top:47%;transform:perspective(1100px) rotateY(-5deg) rotateX(2deg);border-radius:6px}.window-bar{height:27px;font-size:8px;padding:0 12px}.code-window pre{font-size:9px;line-height:1.5;padding:12px 14px 12px 35px;background:linear-gradient(90deg,#151a12 23px,#303529 24px,transparent 25px)}.code-output{font-size:9px;padding:8px 12px}.code-output>span:first-child{font-size:15px}.editor-caption{display:none}.course-list{left:var(--gutter);right:calc(var(--gutter) + 13px);bottom:calc(var(--footer) + 19px)}.course-row{padding:13px 0;grid-template-columns:1fr 24px;gap:8px}.course-row-title{font-size:12px}.course-row-note{display:none}.course-row-arrow{font-size:18px}.backword{top:12%;left:27%;font-size:24vw;opacity:.55}.security-visual{left:19%;width:70%;top:43%;height:31%}.terminal{width:87%;padding:10px 14px 12px;top:15%;font-size:9px;line-height:1.6}.terminal-title{margin-bottom:12px;font-size:8px}.terminal .terminal-muted{font-size:8px;margin-bottom:11px}.terminal p{margin:5px 0}.terminal .terminal-prompt{font-size:8px;margin-top:9px}.terminal p:not(:first-of-type) span:not(.cursor){font-size:7px}.radar-grid{width:80%;right:-9%;top:-10%}.security-symbol{font-size:35px}.ai-scene .backword{top:32%;left:57%;font-size:50vw}.ai-visual{left:13%;right:2%;top:37%;height:41%}.ai-caption{font-size:7px;gap:8px}.ai-caption i{width:20px}.path-heading{top:16%}.path-heading h2{font-size:clamp(29px,6.5vw,46px);white-space:normal;line-height:1.4;margin-bottom:12px}.path-heading h2 span{display:block}.path-heading p{font-size:11px;max-width:285px;line-height:1.8}.path-scene .backword{top:12%;left:13%;font-size:20vw}.path-tabs{top:38%;right:var(--gutter);gap:20px}.path-tabs button{min-width:0;flex:1;font-size:11px;padding:10px 0}.path-tabs button span{margin-left:3px}.path-panel{top:46%}.path-stages{grid-template-columns:1fr;gap:0}.path-stage{display:grid;grid-template-columns:25px 82px 1fr;gap:8px;align-items:center;padding:16px 0;border-color:#3b4630}.path-stage h3{font-size:15px;margin:0}.path-stage p,.stage-number{font-size:10px}.path-stage:not(:last-child):after{display:none}.path-source{font-size:9px;gap:10px;margin-top:15px;flex-wrap:wrap}.path-bottom{bottom:calc(var(--footer) + 23px);gap:15px}.path-bottom>span{font-size:9px;max-width:130px;line-height:1.9}.path-bottom .button{min-width:0;font-size:11px;gap:15px;padding:12px 17px}dialog{padding:20px 24px}.dialog-title{font-size:23px}.dialog-intro{font-size:12px}.dialog-topics li{font-size:11px}}@media(max-width:800px)and (max-height:740px){:root{--header:66px;--footer:55px}.scene-copy{top:18%}.scene h1{font-size:43px;margin-bottom:17px}.hero-art{top:40%;height:80vw}.hero-index{bottom:calc(var(--footer) + 15px)}.course-scene .scene-copy{top:15%}.course-scene h2{font-size:34px;margin-bottom:12px}.subject{margin-bottom:6px}.course-scene .scene-copy p{font-size:10px;margin-bottom:9px}.code-window{top:46%}.code-window pre{font-size:8px;line-height:1.35;padding-top:9px;padding-bottom:9px}.window-bar{height:23px}.code-output{font-size:8px;padding:5px 10px}.course-list{bottom:calc(var(--footer) + 13px)}.course-row{padding:10px 0}.course-row-title{font-size:11px}.security-visual{top:44%;height:28%}.terminal{font-size:8px}.terminal-title{margin-bottom:8px}.terminal p{margin:4px 0}.terminal .terminal-muted{margin-bottom:8px}.terminal .terminal-prompt{margin-top:8px}.ai-visual{top:38%;height:38%}.path-heading{top:15%}.path-heading h2{font-size:28px;margin-bottom:9px}.path-heading p{font-size:10px}.path-tabs{top:39%}.path-panel{top:47%}.path-stage{padding:13px 0}.path-stage p{font-size:9px}.path-source{margin-top:10px}.path-bottom{bottom:calc(var(--footer) + 15px)}}@media(max-height:500px)and (orientation:landscape){:root{--header:54px;--footer:45px}.header nav{display:flex;gap:22px}.header nav .about-link{display:none}.nav-link{font-size:11px}.nav-link.is-current:after{bottom:7px}.scene h1{font-size:40px}.scene-copy{top:25%;max-width:48%}.scene-copy p{font-size:10px;margin-bottom:15px}.hero-art{left:43%;top:0;width:53vw;height:53vw}.hero-index{display:none}.course-scene .scene-copy{top:21%;max-width:48%}.course-scene h2{font-size:33px}.subject{display:none}.course-scene .scene-copy p{font-size:10px}.code-window{left:52%;top:20%;right:50px}.code-window pre{font-size:8px;line-height:1.3;padding:8px 15px}.code-output,.editor-caption{display:none}.course-list{bottom:calc(var(--footer) + 10px)}.course-row{padding:8px 0}.course-row-title{font-size:11px}.security-visual{left:53%;top:15%;width:37%;height:49%}.terminal{font-size:7px;line-height:1.4;padding:8px}.terminal-title{margin-bottom:5px}.terminal .terminal-muted{display:none}.ai-visual{left:50%;top:5%;height:60%}.ai-caption{display:none}.path-heading{top:20%}.path-heading h2{font-size:29px}.path-heading h2 span{display:inline}.path-heading p{display:none}.path-tabs{top:39%;width:42%}.path-panel{top:54%}.path-stages{grid-template-columns:repeat(3,1fr);gap:24px}.path-stage{display:block;padding:10px 0}.path-stage h3{font-size:15px;margin:6px 0}.path-stage p{font-size:9px}.path-source{margin-top:5px}.path-bottom{bottom:calc(var(--footer) + 10px)}.path-bottom>span{display:none}.path-bottom .button{margin-left:auto;padding:8px 15px}}.header>nav{gap:clamp(16px,2.1vw,30px)}.mobile-navigation{display:none}@media(max-width:800px){.header{gap:12px}.mobile-navigation{display:block;margin-left:auto;position:relative}.mobile-navigation>summary{cursor:pointer;list-style:none;font-size:12px;white-space:nowrap;padding:11px 2px;color:#c8d5bc;min-height:40px}.mobile-navigation>summary::-webkit-details-marker{display:none}.mobile-navigation>summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mobile-navigation[open]>summary{color:var(--accent)}.header .mobile-navigation>nav{display:flex;position:absolute;top:calc(100% + 12px);right:-40px;min-width:170px;flex-direction:column;gap:0;background:#171d14;border:1px solid #4b5e39;padding:8px 16px;box-shadow:0 18px 40px #0008;z-index:30}.mobile-navigation nav>a,.mobile-navigation nav>button{font-size:13px;text-align:left;min-height:43px;display:flex;align-items:center;padding:8px 0;background:none;color:#c9d7bc}.mobile-navigation nav>a:hover,.mobile-navigation nav>button:hover{color:var(--accent)}}@media(max-width:370px){.header{gap:8px}.header .brand{font-size:17px;gap:8px}.header .classroom-link{padding:9px 10px;gap:8px}.header .brand small{font-size:5px;letter-spacing:1.5px}}
