:root{color-scheme:light;--ink:#18243e;--muted:#62718b;--brand:#315be8;--line:#e1e7f1;--surface:#fff;--wash:#f5f7fc;--blue-wash:#edf2ff;font-family:"Microsoft YaHei","Segoe UI",sans-serif;font-size:15px;color:var(--ink);background:var(--wash)}
*{box-sizing:border-box}body{margin:0}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input{font:inherit}button,a,summary,video{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid #8aa4ff;outline-offset:4px}img,video{display:block;max-width:100%;object-fit:contain}img{height:auto}button:disabled{cursor:default}h1,h2,h3,p,ul,ol,figure{margin:0}h1{font-size:30px;line-height:1.4;letter-spacing:-.5px}h2{font-size:20px;line-height:1.5}h3{font-size:16px;line-height:1.5}p,li{line-height:1.85}p+p{margin-top:10px}ul,ol{padding-left:1.4em}.muted{color:var(--muted)}.eyebrow{font-size:12px;color:var(--muted);letter-spacing:.08em}.small{font-size:13px}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;background:white;padding:12px;border:2px solid var(--brand)}.skip-link:focus{top:10px}
.topbar{height:72px;position:fixed;inset:0 0 auto;z-index:30;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;gap:22px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-size:19px;font-weight:700;white-space:nowrap}.brand-mark{display:grid;place-items:center;background:var(--brand);color:white;width:32px;height:32px;border-radius:9px;font-size:21px}.product-name{font-size:17px;border-left:1px solid var(--line);padding-left:22px}.top-links{margin-left:auto;display:flex;align-items:center;gap:24px;white-space:nowrap}.home-link{background:var(--blue-wash);padding:8px 18px;border-radius:7px}.top-links .version{font-size:12px;color:var(--muted)}
.sidebar{position:fixed;inset:72px auto 0 0;width:260px;background:var(--surface);border-right:1px solid var(--line);padding:28px 16px 20px;overflow:auto;overscroll-behavior:contain;z-index:20;display:flex;flex-direction:column;gap:22px}.sidebar>.eyebrow{padding:0 12px}.nav-shortcut{display:block;padding:11px 16px;border-radius:7px;color:#44516a}.nav-shortcut.is-current{background:var(--blue-wash);color:var(--brand);font-weight:700}.chapter-nav{flex:1}.chapter-nav .eyebrow{padding:8px 12px 14px}.chapter{border:0;margin:0 0 7px}.chapter summary{list-style:none;display:flex;gap:10px;align-items:center;padding:12px 11px;font-weight:700;cursor:pointer;font-size:14px;border-radius:7px}.chapter summary::-webkit-details-marker{display:none}.chapter summary:after{content:'›';margin-left:auto;color:var(--muted);font-size:19px;line-height:1}.chapter[open] summary:after{content:'⌄'}.chapter summary:hover{background:#f7f9fd}.chapter ul{list-style:none;margin:1px 0 12px 23px;padding:0 0 0 7px;border-left:1px solid var(--line)}.chapter li{margin:3px 0;line-height:1.5}.chapter a{color:#44516a;display:block;padding:9px 10px;border-radius:6px;font-size:13px;overflow-wrap:anywhere}.chapter a.is-current{background:var(--blue-wash);color:var(--brand);font-weight:700}.sidebar-footer{padding:15px;border-radius:10px;background:#f7f9fd;font-size:12px;color:var(--muted);line-height:1.8}.sidebar-footer strong{display:block;color:var(--ink);font-size:13px;margin-bottom:6px}
.main{margin-left:260px;padding:108px 44px 30px;min-width:0;max-width:1660px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:24px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.breadcrumb a{color:var(--muted)}.page-title{margin-bottom:12px}.lead{font-size:16px;color:var(--muted);margin-bottom:24px}.hero{background:linear-gradient(120deg,#ecf1ff,#f4efff);border-radius:16px;padding:28px;margin-bottom:30px;position:relative}.hero h1{margin:18px 0 12px}.hero p{color:var(--muted)}.pill{display:inline-block;background:white;color:var(--brand);padding:6px 14px;border-radius:20px;font-size:12px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand);color:white;border:1px solid var(--brand);padding:10px 17px;border-radius:7px;font-weight:700;font-size:14px;text-decoration:none}.button:hover{background:#244bd1;text-decoration:none}.button.secondary{color:var(--brand);background:var(--blue-wash);border-color:transparent}.section-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:25px 0 16px}.section-head p{color:var(--muted);font-size:12px}.route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;background:white;border:1px solid var(--line);padding:22px;border-radius:12px}.route li{list-style:none;position:relative}.route li:not(:last-child):after{content:'→';position:absolute;right:-12px;top:3px;color:#7a89a3}.route strong{font-size:14px;display:block;margin-bottom:8px}.route span{font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.card{grid-column:span 2;background:white;border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0}.card:nth-last-child(-n+2){grid-column:span 3}.card h3{display:flex;align-items:center;gap:12px;font-size:17px}.card p{margin:15px 0 18px;color:var(--muted);font-size:14px}.card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.num{color:var(--brand);background:var(--blue-wash);border-radius:7px;padding:5px 7px;font-size:14px}.concepts{background:#edf2fb;padding:17px 20px;border-radius:10px;margin-top:24px}.concepts p{font-size:13px;color:var(--muted);margin-top:6px}.site-footer{font-size:12px;color:var(--muted);margin-top:28px;padding-top:20px;border-top:1px solid var(--line);display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}
.lesson{margin-bottom:48px;scroll-margin-top:100px}.enhanced .lesson{display:none}.enhanced .lesson.is-active{display:block}.lesson-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.lesson-head h1{min-width:0}.copy-link{background:transparent;color:var(--brand);border:0;white-space:nowrap;font-size:12px}.lesson-subtitle{color:var(--muted);font-size:16px;margin-bottom:22px}.entry{padding:17px 20px;background:var(--blue-wash);border-radius:10px;margin-bottom:22px;overflow-wrap:anywhere}.entry strong{font-size:13px;margin-right:10px}.entry .prerequisite{font-size:12px;color:var(--muted);margin-top:7px}.entry a{font-weight:700}.lesson-grid{display:grid;grid-template-columns:minmax(290px,.85fr) minmax(360px,1.2fr);gap:22px;align-items:start}.instructions,.media-stack{min-width:0}.instructions{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.instructions h2{margin-bottom:17px;font-size:18px}.steps{padding:0;list-style:none;counter-reset:steps}.steps>li{counter-increment:steps;position:relative;padding-left:35px;margin-bottom:20px}.steps>li:before{content:counter(steps);position:absolute;left:0;top:0;background:var(--brand);color:white;width:24px;height:24px;line-height:24px;text-align:center;border-radius:50%;font-size:13px}.steps strong{display:block;font-size:15px;margin-bottom:6px}.steps p{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.notice{background:#fff6e9;border-radius:9px;padding:15px 16px;margin-top:17px}.notice strong,.result strong{display:block;font-size:13px;margin-bottom:6px}.notice p,.result p{font-size:13px;overflow-wrap:anywhere}.result{background:#ecf7f1;padding:15px 16px;border-radius:9px;margin-top:13px}.media-card{background:white;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:16px;overflow:hidden;min-width:0}.media-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px;flex-wrap:wrap}.media-head strong{font-size:14px}.media-head span{font-size:11px;color:var(--muted)}.media-card video{width:100%;height:auto;aspect-ratio:3/2;max-height:540px;background:#152039;border-radius:7px}.video-links{display:flex;gap:16px;font-size:12px;margin-top:11px;flex-wrap:wrap}.media-card figcaption{font-size:12px;color:var(--muted);line-height:1.8;margin-top:10px;overflow-wrap:anywhere}.image-open{display:block;padding:0;width:100%;border:1px solid var(--line);border-radius:7px;background:#eef1f7;overflow:hidden;text-align:initial;cursor:zoom-in}.image-open img{width:100%;height:auto;max-height:280px;object-fit:contain}.caption-link{display:block;font-size:12px;margin-top:9px}.media-error{display:none;padding:12px;background:#fff6e9;font-size:13px;line-height:1.7}.media-error.is-visible{display:block}.lesson-nav{margin-top:25px;border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px}.lesson-nav a{max-width:48%;overflow-wrap:anywhere}.no-script{background:#fff6e9;padding:12px 16px;border-radius:7px;margin-bottom:20px;font-size:13px}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);z-index:100;background:#18243e;color:white;padding:12px 20px;border-radius:8px;font-size:13px;pointer-events:none}.toast:empty{display:none}
.faq-list{display:grid;gap:14px}.faq{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.faq summary{list-style:none;cursor:pointer;padding:20px 22px;font-size:16px;font-weight:700;display:flex;align-items:center;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'＋';margin-left:auto;color:var(--brand)}.faq[open] summary{background:#f0f4ff;color:var(--brand)}.faq[open] summary:after{content:'−'}.faq-answer{padding:20px 22px;font-size:14px}.faq-answer ol{margin:14px 0}.faq-answer .button{font-size:13px;margin-top:7px}.image-dialog{border:0;padding:0;border-radius:12px;width:min(1280px,92vw);max-width:92vw;max-height:86vh;background:#f6f8fc;color:var(--ink);overflow:hidden}.image-dialog::backdrop{background:rgb(17 29 54 / 72%)}.image-dialog[open]{display:flex;flex-direction:column}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 19px;border-bottom:1px solid var(--line)}.dialog-head strong{font-size:14px;min-width:0;overflow-wrap:anywhere}.dialog-close{border:0;background:var(--blue-wash);color:var(--brand);padding:7px 12px;border-radius:6px;white-space:nowrap}.dialog-scroll{overflow:auto;min-height:0;padding:18px;overscroll-behavior:contain}.dialog-scroll img{width:100%;height:auto;max-width:none;object-fit:contain}.dialog-hint{padding:10px 19px;color:var(--muted);font-size:12px;border-top:1px solid var(--line)}body.dialog-open{overflow:hidden}
@media(min-width:1900px){.main{margin-right:auto}.lesson-grid{grid-template-columns:minmax(350px,.85fr) minmax(500px,1.2fr)}}
@media(max-width:1199px){.sidebar{width:220px;padding-left:12px;padding-right:12px}.chapter summary{font-size:13px;padding-left:7px;padding-right:7px;gap:5px}.chapter a{font-size:12px;padding-left:7px}.main{margin-left:220px;padding-left:24px;padding-right:24px}.lesson-grid{grid-template-columns:minmax(0,1fr)}.instructions{order:2}.media-stack{order:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.media-card{margin:0;padding:13px}.media-card video{aspect-ratio:3/2}.image-open img{max-height:210px}.route{gap:14px;padding:18px}.route strong{font-size:12px}.route span{font-size:11px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.card:nth-last-child(-n+2){grid-column:auto}.card:last-child{grid-column:span 2}.card h3{font-size:15px}.top-links{gap:18px}.topbar{gap:17px}.product-name{padding-left:17px}.brand{font-size:17px}h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{.topbar,.sidebar,.copy-link,.lesson-nav,.site-footer,.video-links,.image-dialog{display:none!important}.main{margin:0;padding:0}.enhanced .lesson{display:block}.lesson{break-before:page}.lesson-grid{display:block}video{display:none}.media-card{break-inside:avoid}}
.operator-prerequisite{margin-bottom:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}.operator-prerequisite h2{margin-bottom:10px}.operator-copy{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}.operator-prerequisite>.lesson-grid{align-items:start}.operator-prerequisite .image-open img{max-height:none}.operator-prerequisite .entry>p{font-size:13px}
:root{--motion-duration:500ms;--motion-ease:cubic-bezier(.22,.61,.36,1)}
@media(max-width:1199px){.instructions{order:1}.media-stack{order:2}.media-stack>.media-card:has(video){grid-column:1/-1}}
.chapter summary,.chapter a,.nav-shortcut,.faq summary{transition:background-color var(--motion-duration) var(--motion-ease),color var(--motion-duration) var(--motion-ease)}
.chapter summary:after{content:'›';transition:transform var(--motion-duration) var(--motion-ease)}
.chapter[open] summary:after{content:'›';transform:rotate(90deg)}
@supports(interpolate-size:allow-keywords){
 .chapter,.faq{interpolate-size:allow-keywords}
 .chapter::details-content,.faq::details-content{block-size:0;overflow:clip;transition:block-size var(--motion-duration) var(--motion-ease),content-visibility var(--motion-duration) allow-discrete}
 .chapter[open]::details-content,.faq[open]::details-content{block-size:auto}
}
@view-transition{navigation:auto}
.main{view-transition-name:manual-content}.topbar{view-transition-name:manual-header}.sidebar{view-transition-name:manual-nav}
::view-transition{pointer-events:none}
::view-transition-group(*){animation-duration:var(--motion-duration);animation-timing-function:var(--motion-ease)}
::view-transition-old(root),::view-transition-new(root),::view-transition-old(manual-header),::view-transition-new(manual-header),::view-transition-old(manual-nav),::view-transition-new(manual-nav){animation:none;mix-blend-mode:normal}
::view-transition-old(manual-content){animation:manual-leave var(--motion-duration) var(--motion-ease) both;mix-blend-mode:normal}
::view-transition-new(manual-content){animation:manual-enter var(--motion-duration) var(--motion-ease) both;mix-blend-mode:normal}
@keyframes manual-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes manual-leave{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}
.image-dialog{opacity:0;transform:translateY(8px);transition:opacity var(--motion-duration) var(--motion-ease),transform var(--motion-duration) var(--motion-ease),display var(--motion-duration) allow-discrete,overlay var(--motion-duration) allow-discrete}
.image-dialog[open]{opacity:1;transform:translateY(0)}
.image-dialog:not([open]){pointer-events:none}
.image-dialog::backdrop{background:rgb(17 29 54 / 0%);transition:background var(--motion-duration) var(--motion-ease),display var(--motion-duration) allow-discrete,overlay var(--motion-duration) allow-discrete}
.image-dialog[open]::backdrop{background:rgb(17 29 54 / 72%)}
@starting-style{.image-dialog[open]{opacity:0;transform:translateY(8px)}.image-dialog[open]::backdrop{background:rgb(17 29 54 / 0%)}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after,.chapter::details-content,.faq::details-content,.image-dialog::backdrop{transition-duration:0s!important;animation-duration:.001ms!important}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:.001ms!important}
 @view-transition{navigation:none}
}

.offline-banner{margin-bottom:24px}.offline-banner>strong{display:block;margin-bottom:6px}.offline-banner>p{font-size:13px}

.official-top{background:var(--blue-wash);padding:8px 16px;border-radius:7px;font-weight:700}
.entry-path{color:var(--brand)}
.official-menu{border:1px solid var(--line);background:var(--wash);color:var(--brand)}
.official-menu strong,.official-menu span{display:block}.official-menu span{margin-top:6px;font-size:12px;color:var(--muted)}
.official-card{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:22px;padding:22px 24px;border:1px solid #dbe4ff;border-radius:12px;background:var(--blue-wash)}
.official-card>div{flex:1 1 400px;min-width:0}.official-card h2{font-size:18px}.official-card p{font-size:14px;margin-top:8px;overflow-wrap:anywhere}
.official-card .button{flex:0 0 auto;white-space:nowrap}
@media(max-width:1199px){.top-links{gap:14px}.official-top{padding:8px 12px}}

@view-transition{navigation:none}.main{animation:manual-enter var(--motion-duration) var(--motion-ease) both}.offline-leaving .main{animation:manual-leave var(--motion-duration) var(--motion-ease) both}
