@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--bg:#101214;--panel:#1a1d20;--line:#303437;--muted:#a6adb2;--ink:#f1f4f3;--mint:#b9f66a;--coral:#ff9b7a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 'Noto Sans SC',system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--mint);outline-offset:6px}button{cursor:pointer}svg{width:24px;height:24px;flex-shrink:0}.wrap{width:min(1180px,calc(100% - 80px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;padding:30px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;letter-spacing:.04em}.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--mint);color:var(--bg);font-size:23px;font-weight:800;border-radius:6px}.header nav{display:flex;gap:32px;font-size:14px;color:#d3d7d9}.header nav a:hover,footer a:hover{color:var(--mint)}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;padding:90px 0 70px;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.13em;color:var(--muted);margin:0 0 20px}.hero .eyebrow{display:flex;align-items:center;gap:10px}.hero .eyebrow span{width:18px;height:2px;background:var(--mint)}h1{font-size:clamp(48px,5.6vw,74px);font-weight:900;line-height:1.18;letter-spacing:-.065em;margin:0 0 28px}.outline{display:block;color:var(--mint)}.period{display:none}.intro{font-size:28px;line-height:1.55;font-weight:500;margin:0 0 20px}.hero-note{color:var(--muted);font-size:15px;margin:0 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:49px;padding:12px 23px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--mint);color:var(--bg)}.primary:hover{background:#caff8d}.ghost{background:transparent;border-color:#4c5256;color:var(--ink)}.ghost:hover{background:#252a2e}.learning-map{background:#171a1d;border:1px solid var(--line);border-radius:12px;padding:26px 30px;transform:rotate(2deg)}.map-top,.map-bottom{display:flex;justify-content:space-between;color:var(--muted);font-family:monospace;font-size:12px;letter-spacing:.03em}.map-top{margin-bottom:30px}.map-item{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid #3b4145;border-radius:6px}.map-no{align-self:flex-start;font-family:monospace;font-size:12px;color:var(--muted)}.map-item small{display:block;font-family:monospace;font-size:12px;color:var(--muted);margin-bottom:5px}.map-item strong{font-size:19px;font-weight:500}.map-symbol{margin-left:auto;font-family:Georgia,serif;font-size:32px;color:var(--mint)}.map-highlight{background:var(--mint);border-color:var(--mint);color:#18200f}.map-highlight small,.map-highlight .map-no,.map-highlight .map-symbol{color:#334a1b}.map-connector{height:23px;width:1px;background:#525a5e;margin-left:46px}.map-bottom{margin-top:30px;font-size:14px}.index-strip{display:flex;justify-content:space-between;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}.index-strip div{display:flex;gap:35px}.index-strip b{font-family:monospace;color:var(--mint);margin-right:8px;font-weight:400}.section{padding-top:88px;scroll-margin-top:20px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px;gap:20px}.section-head .eyebrow{margin-bottom:12px}h2{font-size:32px;line-height:1.4;font-weight:600;letter-spacing:-.025em;margin:0}.section-head>p{font-size:14px;color:var(--muted);margin:0 0 6px}.channel-card{display:grid;grid-template-columns:1.08fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden}.channel-art{background:var(--coral);color:#2a1b16;padding:26px 35px;display:flex;flex-direction:column;min-height:365px}.channel-overline{font-family:monospace;font-size:12px;letter-spacing:.07em}.play-icon{width:54px;height:54px;border:1px solid #5b3a2a;border-radius:50%;display:grid;place-items:center;align-self:flex-end;margin:20px 0 2px}.play-icon svg{width:40px;height:40px}.channel-title{font-size:46px;line-height:1.32;font-weight:800;letter-spacing:-.04em}.channel-title em{font-style:normal}.channel-bottom{font-size:12px;font-family:monospace;margin-top:auto;padding-top:28px}.channel-copy{padding:42px;display:flex;flex-direction:column;align-items:start;background:#171a1d}.tag{display:inline-flex;align-items:center;padding:3px 10px;border:1px solid #455046;border-radius:4px;font-size:12px;color:var(--mint)}h3{font-size:27px;margin:18px 0 12px;line-height:1.4}.channel-copy p{font-size:15px;color:var(--muted);margin:0 0 20px}.channel-handle{font-size:14px;color:#d0d6d8;margin-bottom:24px;overflow-wrap:anywhere}.channel-copy .small{margin:10px 0 0;font-size:12px}.software-card{display:grid;grid-template-columns:1.4fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden}.software-info{padding:40px}.software-heading{display:flex;align-items:center;gap:18px}.app-icon{width:64px;height:72px;display:grid;place-items:center;background:#26332a;color:var(--mint);border:1px solid #42583e;border-radius:12px;flex-shrink:0}.app-icon svg{width:42px;height:42px}.software-heading .eyebrow{font-family:monospace;font-size:12px}.software-heading h3{font-size:25px;margin:6px 0 0}.software-description{color:var(--muted);font-size:16px;margin:25px 0}.features{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 32px}.features span{font-size:14px;color:#d3d8db;border:1px solid var(--line);padding:5px 11px;border-radius:4px}details{border-top:1px solid var(--line);padding-top:18px;font-size:14px}summary{cursor:pointer;color:#d3d8db}details p{color:var(--muted)}.download-panel{padding:35px;background:#1a1e21;border-left:1px solid var(--line)}.download-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.download-top strong{font-family:monospace;font-size:14px;color:var(--muted);font-weight:400}h4{font-size:25px;margin:23px 0 5px}.file-name{font-size:13px;color:var(--muted);overflow-wrap:anywhere}dl{margin:24px 0}dl div{display:flex;justify-content:space-between;gap:16px;margin:9px 0;font-size:14px}dt{color:var(--muted)}dd{margin:0}.download-button{width:100%}.download-button:disabled{cursor:wait;transform:none;opacity:.8}.small{font-size:13px;color:var(--muted);margin:10px 0 0;line-height:1.6}progress{width:100%;height:6px;margin-top:17px;accent-color:var(--mint)}progress[hidden]{display:none}.cancel-button{margin-top:7px;background:transparent;border:0;padding:0;color:var(--ink);font-size:13px;text-decoration:underline}.checksum{margin-top:20px;font-size:12px}.checksum code{display:block;color:var(--muted);font-family:monospace;overflow-wrap:anywhere;word-break:break-all}.connect-section{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:88px;padding:65px 60px;background:#171a1d;border-radius:10px;gap:40px}.connect-copy h2{font-size:40px}.connect-copy p:not(.eyebrow){font-size:15px;color:var(--muted);margin:24px 0}.connect-copy .eyebrow{margin-bottom:20px}#copy-status{display:block;color:var(--mint);font-size:13px;margin-top:10px;min-height:22px}.qr-card{background:#fff;color:#16191b;padding:20px;display:flex;flex-direction:column;align-items:center;border-radius:7px;width:260px;flex-shrink:0}.qr-card img{display:block;width:210px;height:210px}.qr-card strong{font-size:17px;margin:7px 0}.qr-card span{font-size:12px;color:#61686b}.qr-card>a:last-child{font-size:12px;text-decoration:underline;margin-top:12px}footer{display:flex;align-items:center;justify-content:space-between;padding:45px 0;margin-top:50px!important;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}footer .brand{font-size:15px;color:var(--ink)}footer .brand-mark{width:28px;height:28px;font-size:18px}.skip{position:fixed;left:12px;top:-100px;z-index:99;background:var(--mint);color:#101214;padding:10px 20px}.skip:focus{top:12px}@media(min-width:1450px){.hero{padding-top:110px;padding-bottom:90px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero{gap:30px;padding-top:60px}.learning-map{padding:20px}.map-item{padding:14px;gap:12px}.map-item strong{font-size:16px}.map-top{font-size:10px}.intro{font-size:24px}.channel-copy{padding:30px}.channel-title{font-size:40px}.software-info{padding:28px}.download-panel{padding:28px}.software-heading{align-items:start}.software-heading h3{font-size:22px}.connect-section{padding:40px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.header{padding:22px 0;gap:20px;align-items:start}.brand{font-size:16px;gap:8px}.brand-mark{width:30px;height:30px;font-size:20px}.header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;max-width:180px}.hero{grid-template-columns:1fr;gap:45px;padding:48px 0}.hero h1{font-size:64px}.intro{font-size:25px}.learning-map{transform:rotate(0);padding:24px}.map-item strong{font-size:18px}.map-top{font-size:12px}.index-strip{align-items:center;gap:20px}.index-strip>span{font-size:12px;max-width:100px}.index-strip div{gap:14px;font-size:12px}.index-strip b{margin-right:4px}.section{padding-top:60px}.section-head{display:block}.section-head>p{margin-top:15px}h2{font-size:28px}.channel-card,.software-card{grid-template-columns:1fr}.channel-art{min-height:330px;padding:24px}.channel-title{font-size:44px}.channel-copy{padding:28px}.download-panel{border-left:0;border-top:1px solid var(--line)}.software-info{padding:26px}.software-heading h3{font-size:22px}.software-description{font-size:15px}.connect-section{margin-top:60px;padding:30px 24px;flex-direction:column;align-items:start;gap:25px}.connect-copy h2{font-size:34px}.qr-card{align-self:center;width:250px}footer{gap:20px;flex-wrap:wrap;padding:30px 0;margin-top:40px!important}footer>span{display:none}.button{padding-left:19px;padding-right:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
