@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,"PingFang SC","Microsoft YaHei",sans-serif;color:#dbe5f8;background:#0b1630;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 78% 5%,#193663 0,transparent 30%),#0b1630}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.shell{max-width:1450px;margin:auto;padding:0 64px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #34435f}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:800;letter-spacing:-.04em;color:#fff}.brand b{font-weight:500;color:#adc0df}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:#ff7e44;color:#10213d;font-size:24px;font-weight:800;border-radius:9px;transform:rotate(-8deg)}.toplinks{display:flex;gap:32px;color:#b3c3dd;font-size:14px}.toplinks a:hover,.footer a:hover,.nav-foot a:hover{color:#ff955f}.intro{min-height:362px;display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden}.intro-copy{position:relative;z-index:1;padding:38px 0}.eyebrow,.lesson-kicker,.nav-heading,.section-label,.intro-meta,.orbit-label,.footer{font-family:"DM Mono",monospace}.eyebrow{display:flex;align-items:center;gap:13px;color:#ff9b68;font-size:12px;letter-spacing:.14em}.eyebrow-line{height:1px;width:28px;background:#ff874d}h1{margin:22px 0 16px;font-size:clamp(37px,4.25vw,61px);line-height:1.18;letter-spacing:-.065em;color:#fff}h1 em{font-style:normal;color:#ff884e}.intro-copy>p{color:#abc0df;line-height:1.8;max-width:585px;margin:0;font-size:16px}.intro-meta{display:flex;align-items:center;gap:17px;margin-top:28px;color:#8fa8cb;font-size:12px;letter-spacing:.04em}.intro-meta i{width:3px;height:3px;border-radius:50%;background:#6c84a7}.orbit{flex:0 0 290px;width:290px;height:290px;border:1px solid #49648a;border-radius:50%;position:relative;margin-right:49px;transform:rotate(-17deg)}.orbit:before{content:"";position:absolute;inset:39px;border:1px dashed #527099;border-radius:50%}.orbit:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#ff884e;top:42px;left:34px;box-shadow:0 0 0 8px #ff884e20}.orbit-inner{position:absolute;inset:88px;border-radius:26px;background:linear-gradient(145deg,#ffad72,#f46d39);display:grid;place-items:center;transform:rotate(17deg);box-shadow:0 20px 50px #0005}.orbit-t{color:#0b1630;font-size:76px;font-weight:800;line-height:1}.orbit-label{position:absolute;background:#152748;border:1px solid #476185;padding:7px 10px;color:#b9ccea;font-size:10px;letter-spacing:.08em;border-radius:4px;transform:rotate(17deg)}.orbit-label-a{top:9px;right:-46px}.orbit-label-b{bottom:36px;left:-34px}.orbit-label-c{bottom:-10px;right:53px}.workspace{display:grid;grid-template-columns:280px minmax(0,1fr);border:1px solid #375071;border-radius:12px;overflow:hidden;background:#122444;box-shadow:0 32px 80px #030b1d55;min-height:620px}.course-nav{background:#10203d;border-right:1px solid #375071;display:flex;flex-direction:column}.nav-heading{display:flex;align-items:center;justify-content:space-between;padding:24px 22px 16px;font-size:12px;letter-spacing:.12em;color:#a9bddb}.nav-heading small{font-size:11px;color:#677fa1}.lesson-list{padding:0 12px;display:grid;gap:4px}.lesson-tab{display:flex;align-items:center;text-align:left;width:100%;gap:15px;border:1px solid transparent;border-radius:7px;padding:15px 12px;background:transparent;color:#9eb2d0;font-size:14px;font-weight:600}.lesson-tab:hover{background:#21365b;color:#fff}.lesson-tab[aria-selected="true"]{background:#263d61;border-color:#405d83;color:#fff}.lesson-tab[aria-selected="true"] .lesson-num{color:#ff9a67}.lesson-num{font:12px "DM Mono",monospace;color:#5f789d}.nav-foot{margin:auto 20px 22px;padding-top:20px;border-top:1px solid #304466;display:flex;gap:12px;color:#829bbd;font-size:12px;line-height:1.65}.nav-foot p{margin:0}.nav-foot a{text-decoration:underline;text-underline-offset:3px}.nav-foot-icon{font-size:19px;color:#ff8d56;line-height:1.2}.lesson-panel{padding:41px clamp(28px,5vw,74px) 45px;background:linear-gradient(145deg,#172c50,#142747 75%)}.lesson-kicker{color:#ff9863;letter-spacing:.11em;font-size:12px}.lesson-panel h2{font-size:clamp(29px,3vw,42px);line-height:1.24;letter-spacing:-.05em;color:#fff;margin:15px 0}.lesson-summary{font-size:16px;color:#adbfda;line-height:1.8;max-width:780px;margin:0 0 30px}.divider{height:1px;background:#3a5174;margin:30px 0}.section-label{font-size:11px;color:#7591b8;letter-spacing:.15em;margin:0 0 15px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.step{border:1px solid #3b5479;border-radius:8px;background:#1b3357;padding:16px;min-height:124px}.step-index{display:block;color:#ff9761;font:12px "DM Mono",monospace;margin-bottom:12px}.step strong{display:block;color:#f1f5fb;font-size:14px;margin-bottom:7px}.step p{color:#a2b7d4;font-size:13px;line-height:1.55;margin:0}.code-box{margin:0;background:#0b1933;border:1px solid #345075;border-radius:8px;overflow:hidden}.code-top{display:flex;align-items:center;justify-content:space-between;background:#162945;padding:10px 16px;border-bottom:1px solid #345075;color:#8eabc9;font:12px "DM Mono",monospace}.copy-button{border:1px solid #496185;background:#213a5e;color:#cee0f6;border-radius:4px;padding:5px 9px;font-size:12px}.copy-button:hover{background:#31537f}pre{margin:0;padding:18px;overflow:auto;color:#dce9fa;font:13px/1.75 "DM Mono",monospace;white-space:pre}.practice{display:flex;gap:14px;background:#203952;border-left:3px solid #ff9258;padding:17px 19px;border-radius:0 7px 7px 0;color:#d8e5f6;line-height:1.7;font-size:14px}.practice-icon{color:#ff9e69;font-size:20px;line-height:1.2}.practice strong{display:block;color:#fff;margin-bottom:3px}.practice p{margin:0}.lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:29px}.source-link{color:#ffae81;font-size:13px;text-decoration:underline;text-underline-offset:4px}.next-button{border:0;background:#ff8750;color:#0d1b31;padding:11px 15px;border-radius:6px;font-weight:800;font-size:13px}.next-button:hover{background:#ffab7b}.footer{display:flex;justify-content:space-between;gap:20px;padding:29px 0 36px;color:#6883a7;font-size:11px;letter-spacing:.03em}.footer a{color:#9cb5d6}@media(max-width:1050px){.shell{padding:0 34px}.orbit{flex-basis:225px;width:225px;height:225px;margin-right:15px}.orbit-inner{inset:70px}.orbit-t{font-size:58px}.workspace{grid-template-columns:235px minmax(0,1fr)}.steps{grid-template-columns:1fr}.step{min-height:0}}@media(max-width:720px){.shell{padding:0 18px}.topbar{height:68px}.brand{font-size:15px}.toplinks{gap:13px;font-size:12px}.intro{min-height:0}.intro-copy{padding:43px 0 37px}.intro-copy>p{font-size:15px}.orbit{display:none}.workspace{display:block}.course-nav{border-right:0;border-bottom:1px solid #375071}.nav-heading{padding:17px 17px 7px}.lesson-list{display:flex;overflow-x:auto;gap:7px;padding:5px 12px 13px;scrollbar-width:thin}.lesson-tab{white-space:nowrap;width:auto;flex:none;padding:10px 12px;font-size:13px}.nav-foot{display:none}.lesson-panel{padding:29px 19px 32px}.divider{margin:23px 0}.steps{grid-template-columns:1fr}.lesson-actions{align-items:flex-start;flex-direction:column}.footer{font-size:10px;line-height:1.6;flex-direction:column;gap:6px}}@media(prefers-reduced-motion:no-preference){.lesson-panel{animation:appear .22s ease-out}@keyframes appear{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
/* The core distinction is visible before the rest of the reading path. */
.intro{min-height:320px}
.comparison-wrap{overflow-x:auto;border:1px solid #496184;border-radius:8px}
.comparison{width:100%;border-collapse:collapse;min-width:570px;font-size:14px;line-height:1.55;color:#d3e2f6}
.comparison caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.comparison th,.comparison td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid #3d5476}
.comparison tr:last-child th,.comparison tr:last-child td{border-bottom:0}
.comparison thead th{background:#20395d;color:#fff;font-weight:700}
.comparison tbody th{width:100px;color:#ffac7a;font-weight:700;background:#1a3355}
.comparison tbody td{width:calc((100% - 100px)/2)}
@media(max-width:720px){.intro-copy{padding:36px 0 30px}.lesson-list::-webkit-scrollbar{height:5px}.lesson-list::-webkit-scrollbar-track{background:#10203d}.lesson-list::-webkit-scrollbar-thumb{background:#4c6587;border-radius:5px}}
.deep-list{display:grid;gap:0;border:1px solid #3d5476;border-radius:9px;overflow:hidden;background:#193254}
.deep-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:15px;padding:20px 22px;border-bottom:1px solid #3d5476}
.deep-item:last-child{border-bottom:0}
.deep-index{color:#ff9863;font:12px "DM Mono",monospace;padding-top:4px}
.deep-item h3{font-size:17px;line-height:1.4;color:#f6f9ff;margin:0 0 9px;letter-spacing:-.02em}
.deep-item p{font-size:15px;line-height:1.85;color:#b7cae2;margin:0}
.key-note{margin-top:14px;padding:17px 20px;border:1px solid #5b5c6d;border-radius:8px;background:#333a53}
.key-note strong{display:block;color:#ffad7a;font-size:13px;margin-bottom:6px}
.key-note p{margin:0;color:#d6e1f1;font-size:14px;line-height:1.7}
.resource-list{display:flex;align-items:center;flex-wrap:wrap;gap:11px 19px;margin-top:25px;font-size:13px}
.resource-list>span{color:#839fc2;font:11px "DM Mono",monospace;letter-spacing:.08em}
.resource-list .source-link{white-space:nowrap}
.lesson-actions{justify-content:flex-end;margin-top:26px}
@media(max-width:720px){.deep-item{grid-template-columns:25px minmax(0,1fr);gap:10px;padding:18px 15px}.deep-item h3{font-size:16px}.deep-item p{font-size:14px}.resource-list{align-items:flex-start;flex-direction:column}.lesson-actions{align-items:flex-start}}
.android-shortcut{display:inline-flex;align-items:center;gap:17px;margin-top:24px;padding:11px 15px;border:1px solid #ff955f;border-radius:6px;background:#ff8750;color:#11213a;font-size:13px;font-weight:800}
.android-shortcut:hover{background:#ffac7c}
.android-shortcut:focus-visible{outline:3px solid #fff;outline-offset:3px}
.extra-code{margin-top:13px}
@media(max-width:720px){.android-shortcut{margin-top:20px}.comparison{min-width:620px}}
