:root{color-scheme:light;--page:#fff;--paper:#f4f8fc;--ink:#162b41;--muted:#52677c;--line:#dbe5ef;--accent:#0077b8;--wash:#e8f5fc;--note:#f0f6fb;--shadow:0 16px 48px #152b4122;font-family:"Microsoft YaHei UI","PingFang SC","Noto Sans CJK SC",system-ui,sans-serif;font-size:16px;line-height:1.85;background:var(--page);color:var(--ink)}
:root[data-geoair-theme=dark]{color-scheme:dark;--page:#191d23;--paper:#20262e;--ink:#e6edf5;--muted:#abb9ca;--line:#364150;--accent:#71ccff;--wash:#17394c;--note:#242e3b;--shadow:0 16px 48px #0008}
*{box-sizing:border-box}html{scroll-padding-top:96px}body{margin:0}a{color:var(--accent);text-underline-offset:4px}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button,summary{cursor:pointer}button{color:var(--ink);background:var(--page);border:1px solid var(--line);border-radius:7px;padding:6px 12px}button:hover{background:var(--wash)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button[aria-pressed=true]{color:var(--accent);background:var(--wash)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;background:var(--page);padding:8px;z-index:100}.skip:focus{top:8px}.guide-header{position:sticky;top:0;z-index:20;background:var(--page);border-bottom:1px solid var(--line);min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px max(26px,calc((100vw - 1600px)/2));line-height:1.3}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;white-space:nowrap;font-weight:750;font-size:21px}.brand img{flex-shrink:0}.header-divider{font-weight:500;font-size:15px;padding-left:16px;margin-left:8px;border-left:1px solid var(--line);color:var(--muted)}.guide-header nav{display:flex;align-items:center;gap:18px;font-size:14px}.guide-header nav a{text-decoration:none}.guide-header .enter{background:var(--accent);color:var(--page);border:1px solid var(--accent);padding:9px 15px;border-radius:7px}.guide-shell{max-width:1600px;display:grid;grid-template-columns:278px minmax(0,1fr);margin:auto}.guide-sidebar{position:sticky;top:76px;height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;background:var(--paper);border-right:1px solid var(--line);padding:24px 18px 32px;scrollbar-width:thin}.mobile-toc>summary{display:none}.search-label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}.search-box{display:flex;min-width:0;background:var(--page);border:1px solid var(--line);border-radius:7px}.search-box input{min-width:0;flex:1;width:100%;background:transparent;border:0;color:var(--ink);padding:10px;font-size:12px}.search-box button{border:0;background:transparent;font-size:22px;padding:0 10px}#search-status{font-size:12px;min-height:22px;color:var(--muted);margin:7px 0 16px}.toc-home{display:block;text-decoration:none;margin:10px 10px 18px;font-size:14px;font-weight:700}.toc-group{border-top:1px solid var(--line);padding:10px 0}.toc-group summary{font-weight:700;font-size:13px;line-height:1.6;padding:5px 6px;list-style-position:inside}.toc-group a{display:block;margin:3px 0 0 12px;padding:6px 9px 6px 12px;text-decoration:none;color:var(--muted);font-size:12px;line-height:1.7;border-left:2px solid var(--line)}.toc-group a:hover,.toc-group a[aria-current]{color:var(--accent);background:var(--wash);border-left-color:var(--accent)}.toc-group a.is-done:after{content:" ✓";color:var(--accent)}.reading-status{display:flex;justify-content:space-between;gap:8px;margin-top:24px;font-size:12px;align-items:center}.reading-status button{font-size:12px;padding:2px 9px}.print-button{margin-top:14px;width:100%;font-size:13px}.sidebar-note{font-size:11px;color:var(--muted);line-height:1.8}main{min-width:0;padding:48px clamp(24px,4vw,76px) 24px;max-width:1230px}.guide-intro{padding-bottom:36px;border-bottom:2px solid var(--ink);margin-bottom:42px;max-width:100%}.intro-line{font-size:14px;color:var(--accent);font-weight:700;margin:0 0 16px}.guide-intro h1{font-size:clamp(30px,3.1vw,48px);line-height:1.45;letter-spacing:-1.2px;margin:0 0 20px;font-weight:780}.lead{max-width:740px;font-size:17px;color:var(--muted);line-height:1.9}.guide-facts{display:flex;gap:8px 22px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:26px 0}.learning-path{border-left:3px solid var(--accent);padding:12px 0 12px 24px;margin:24px 0}.learning-path strong{font-size:14px}.learning-path ol{display:flex;flex-wrap:wrap;column-gap:32px;row-gap:7px;padding-left:19px;margin:12px 0 0;font-size:13px}.intro-note{font-size:12px;color:var(--muted);max-width:780px;margin-top:24px}.course-group{margin:0 0 64px}.group-title{color:var(--accent);font-size:15px;font-weight:750;margin-bottom:10px;letter-spacing:.02em}.chapter-heading{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px}.chapter-heading h2{font-size:clamp(22px,2vw,28px);line-height:1.6;margin:0;flex:1;min-width:210px;letter-spacing:-.4px}.permalink{font-size:18px;text-decoration:none;color:var(--muted)}.chapter-heading button{font-size:11px;padding:3px 10px;white-space:nowrap}article{margin-bottom:58px;scroll-margin-top:100px}article p,article li{font-size:15px;overflow-wrap:anywhere;max-width:840px}article p{margin:18px 0}article strong{font-weight:750}article h3{font-size:18px;margin:30px 0 12px}article ol,article ul{padding-left:25px;max-width:840px}article li{padding-left:3px;margin-bottom:10px}article ol>li::marker{color:var(--accent);font-weight:750}code{font-size:.9em;overflow-wrap:anywhere;background:var(--note);padding:2px 5px;border-radius:4px}pre{margin:0;padding:20px;overflow:auto;font-size:13px;line-height:1.85;background:var(--note)}pre code{padding:0;background:transparent;white-space:pre}.template{position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:24px 0}.template button{display:block;margin:10px 10px 0 auto;font-size:12px}.note{padding:16px 20px;margin:24px 0;border-left:3px solid var(--accent);background:var(--note);font-size:14px;color:var(--muted)}.table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin:24px 0}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;min-width:530px}th{background:var(--note);font-weight:700}td,th{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.85}tr:last-child td{border-bottom:0}td{overflow-wrap:anywhere}figure{margin:28px 0 32px}.screenshot{display:block;position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.screenshot img{display:block;width:100%;height:auto}.zoom-label{position:absolute;right:12px;bottom:12px;border:1px solid #c9d8e6;background:#fff;color:#16324b;border-radius:6px;padding:3px 10px;font-size:12px;box-shadow:0 3px 12px #0001}figcaption{font-size:12px;color:var(--muted);line-height:1.9;margin-top:11px}figcaption strong{font-weight:600}.check-item{list-style:none}.check-item label{display:flex;gap:8px;align-items:baseline}.check-item input{accent-color:var(--accent);flex-shrink:0}.guide-footer{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:12px}.guide-footer p{max-width:760px}.guide-footer>a,.guide-footer>span{display:inline-block;margin:12px 20px 8px 0}#no-results{background:var(--note);padding:24px}.image-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:12px 18px}.image-toolbar p{margin:0;font-size:14px;overflow-wrap:anywhere}dialog{width:min(1500px,96vw);max-width:96vw;max-height:94dvh;padding:0;color:var(--ink);background:var(--page);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}dialog::backdrop{background:#071b2bba}.image-scroll{overflow:auto;max-height:calc(94dvh - 115px);background:#fff}.image-scroll img{display:block;width:auto;max-width:none;height:auto;margin:0 auto}.image-hint{font-size:12px;padding:8px 18px;margin:0;color:var(--muted)}body.dialog-open{overflow:hidden}
@media(min-width:981px){.mobile-toc:not([open])>.toc-inner{display:block!important}}
@media(max-width:980px){.guide-header{padding:12px 20px;min-height:68px}.header-divider{display:none}.guide-header nav{gap:12px;font-size:12px}.guide-header nav a:first-child{display:none}.brand{font-size:19px}.guide-shell{display:block}.guide-sidebar{position:relative;top:0;height:auto;max-height:none;border-right:0;border-bottom:1px solid var(--line);padding:0 20px}.mobile-toc>summary{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:13px 0;font-size:14px}.mobile-toc>summary span{font-size:11px;font-weight:400;color:var(--muted)}.toc-inner{padding:4px 0 22px}.toc-group a{font-size:13px}.toc-group summary{font-size:14px}.toc-home{margin:10px 0}main{padding:32px 22px 24px}.guide-intro{margin-bottom:32px}.guide-intro h1{font-size:32px;letter-spacing:-.8px}.lead{font-size:15px}.guide-facts{gap:6px 15px}.learning-path{padding-left:17px}.learning-path ol{column-gap:30px}.chapter-heading h2{min-width:170px;font-size:22px}.chapter-heading{column-gap:8px}.chapter-heading button{font-size:10px}article p,article li{font-size:14px}article{scroll-margin-top:85px}.image-toolbar{padding:10px 12px;gap:10px}.image-toolbar p{font-size:12px}.image-toolbar button{font-size:12px;white-space:nowrap}.guide-header button{font-size:12px;padding:7px}.guide-header .enter{padding:8px 10px}}
.guide-intro h1{text-wrap:balance}
@media(max-width:980px){.guide-intro h1{font-size:clamp(21px,7vw,28px)}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{:root{color-scheme:light;--page:#fff;--paper:#fff;--ink:#111;--muted:#444;--line:#ccc;--accent:#064b75;--note:#f4f4f4}.guide-header,.guide-sidebar,.permalink,[data-done],[data-copy],.zoom-label,#no-results,dialog,.skip{display:none!important}.guide-shell{display:block}main{max-width:none;padding:0}.guide-intro h1{font-size:30px}.course-group,.guide-intro,article{display:block!important}article{margin-bottom:35px}.chapter-heading{break-after:avoid}figure,.note,tr{break-inside:avoid}table{min-width:0;font-size:10px}td,th{padding:8px}pre{white-space:pre-wrap}.table-scroll{overflow:visible}a{color:#064b75}body{font-size:11px}article p,article li{font-size:11px}.screenshot img{max-height:500px;object-fit:contain}.guide-facts,.intro-note,figcaption{font-size:10px}}
