.c-head .tpl-h1{max-width:24ch}.c-desc{max-width:56ch;color:var(--text-body);margin-top:16px;font-size:clamp(17px,1.35vw,19px);line-height:1.6}.c-meta{color:var(--text-caption);margin-top:12px;font-size:14.5px;line-height:1.5}.c-meta strong{color:var(--ink)}.c-side .c-prog{color:var(--text-caption);margin:-4px 0 14px;font-size:13.5px;line-height:1.45}.c-side .c-mods{gap:4px;list-style:none;display:grid}.c-side .c-mod>a{color:var(--ink);font-weight:700}.c-side .c-mod>a small{color:var(--text-caption);font-size:13px;font-weight:500;display:block}.c-side .c-mod>a[aria-current=page] small{color:var(--text-body)}.c-side ol.c-lessons{gap:2px;margin:4px 0 10px;list-style:none;display:grid}.c-lessons a,.c-toc a{align-items:flex-start;gap:10px;display:flex!important}.c-tick-dot{background:#fff;border:1.5px solid #b9c3cc;border-radius:50%;flex:none;place-items:center;width:16px;height:16px;margin-top:2px;display:grid}.is-done>.c-tick-dot{background:var(--sky-ink);border-color:var(--sky-ink)}.is-done>.c-tick-dot:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:7px;height:4px;transform:translateY(-1px)rotate(-45deg)}.c-side a[aria-current=location]{color:var(--ink);background:#e8f1f7}.c-side .c-foot{border-top:1px solid var(--border);flex-wrap:wrap;gap:4px 16px;margin-top:16px;padding-top:14px;font-size:13.5px;display:flex}.c-side .c-foot a{color:var(--text-body);text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:3px;margin:0;padding:0;font-weight:600;display:inline}.c-side .c-foot a:hover{background:0 0}.c-reset{font:inherit;color:var(--text-caption);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:13.5px;font-weight:600;text-decoration:underline}.c-reset:hover{color:var(--ink)}.c-toc{display:none}@media (width<=960px){.c-toc{border-radius:var(--r-inner);background:#f3f6f9;margin-bottom:28px;padding:18px 20px;display:block}.c-toc h2{letter-spacing:.14em;text-transform:uppercase;color:var(--sky-ink);margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.35}.c-toc ol{gap:2px;list-style:none;display:grid}.c-toc a{color:var(--text-body);padding:7px 0;font-size:15px;line-height:1.4}.c-toc a:hover{color:var(--ink)}}.cbody{color:var(--text-body);font-size:var(--fs-body);overflow-wrap:break-word;line-height:1.7}.c-lesson{scroll-margin-top:calc(var(--navh) + 20px)}.c-lesson+.c-lesson{border-top:1px solid var(--border);margin-top:clamp(40px,5vw,64px);padding-top:clamp(36px,4.5vw,56px)}.c-lesson>h2{letter-spacing:-.025em;color:var(--ink);text-wrap:balance;font-size:clamp(24px,2.3vw,32px);font-weight:700;line-height:1.22}.c-num{color:var(--sky-ink);font-variant-numeric:tabular-nums;margin-right:.35em;display:inline-block}.c-text{margin-top:18px}.c-text>*+*{margin-top:1.1em}.c-text>:is(p,ul,ol){max-width:var(--prose)}.c-text a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:3px;overflow-wrap:anywhere;font-weight:600;text-decoration-thickness:2px}.c-text a:hover{color:var(--sky-ink)}.c-text strong{color:var(--ink)}.c-text ul{padding-left:1.35em;list-style:outside}.c-text ul>li::marker{color:var(--sky);font-size:1.1em}.c-text li{padding-left:.2em}.c-text li+li{margin-top:.45em}.c-text figure{margin-block:1.8em}.c-text figcaption{color:var(--text-caption);text-align:center;margin-top:10px;font-size:14px;line-height:1.5}.c-text figcaption a{font-weight:600}.cimg,.cvid{margin-block:1.6em;display:block}figure>.cimg,figure>.cvid{margin-block:0}.cimg img,.cvid{border-radius:var(--r-inner);border:1px solid var(--border);background:#f3f6f9;width:100%;height:auto}.cimg img{width:auto;max-width:100%;padding:8px}.cvid{cursor:pointer;padding:8px}.cvid:focus-visible{outline:2px solid var(--sky-ink);outline-offset:3px}.cyt{margin-block:1.8em}.cyt-btn,.cyt iframe{aspect-ratio:16/9;cursor:pointer;border-radius:var(--r-inner);background:#1b1a20;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.cyt-btn img{object-fit:cover;width:100%;height:100%}.cyt-play{color:#fff;background:#111111d1;border-radius:12px;place-items:center;width:68px;height:48px;margin:auto;display:grid;position:absolute;inset:0}.cyt-btn:hover .cyt-play,.cyt-btn:focus-visible .cyt-play{background:#000}.cyt figcaption{text-align:left}.c-done-row{margin-top:28px}.c-done-pill{min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border:1.5px solid #11111129;border-radius:999px;align-items:center;gap:10px;padding:10px 18px 10px 14px;font-size:14.5px;font-weight:700;transition:border-color .2s,background .2s;display:inline-flex}.c-done-pill:hover{border-color:var(--ink)}.c-done-pill input{width:18px;height:18px;accent-color:var(--sky-ink);cursor:pointer;margin:0}.c-done-pill:has(input:checked){background:#e8f1f7;border-color:#e8f1f7}.c-pager{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.c-pager a{color:var(--ink);padding:20px 24px;display:block}.c-pager small{color:var(--text-caption);margin-bottom:4px;font-size:13.5px;font-weight:600;display:block}.c-pager b{font-size:17px;line-height:1.35}.c-pager .c-next{text-align:right;grid-column:2}@media (width<=640px){.c-pager{grid-template-columns:1fr}.c-pager .c-next{grid-column:auto}}.cdia{border-radius:var(--r-inner);color:var(--text-body);background:#f3f6f9;margin:0 0 clamp(36px,4.5vw,56px);padding:26px 22px}.cdia.diagram-flow{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.cdia .flow-step{text-align:center;flex-direction:column;flex:1;align-items:center;gap:9px;min-width:108px;max-width:170px;display:flex}.cdia .flow-step span,.cdia .compare-col span{font-size:13px;font-weight:600;line-height:1.4}.cdia .step-round{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:grid}.cdia .flow-arrow{color:var(--sky-ink);white-space:nowrap;font-size:13px;font-weight:700}.cdia .compare-col{text-align:center;flex-direction:column;align-items:center;gap:9px;max-width:180px;display:flex}.cdia .mini-poster{border:1px solid var(--border);border-radius:8px;width:120px;height:86px}.cdia .good-pattern{background-color:#fff;background-image:conic-gradient(from 45deg,#5fa2c9 25%,#fff 0 50%,#dda6c2 0 75%,#111 0);background-size:17px 13px}.cdia .poor-pattern{background:#e4e7ea}.cdia .mini-stars{gap:3px;display:flex}.cdia .star{background:var(--sky-ink);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:15px;height:15px}.cdia .star.off{background:#c3cbd2}.cdia .compare-divider{color:var(--text-caption);font-size:12px;font-weight:800}.cdia .format-card{text-align:center;background:#fff;border-radius:12px;flex:1;min-width:130px;padding:18px 16px}.cdia .format-icon{background:#e8f1f7;border-radius:10px;place-items:center;width:40px;height:40px;margin:0 auto 10px;display:grid}.cdia .format-icon svg{width:18px;height:18px;stroke:var(--sky-ink);fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.cdia .format-icon svg polygon{fill:var(--sky-ink);stroke:none}.cdia .format-card b{color:var(--ink);margin-bottom:4px;font-size:14px;display:block}.cdia .format-card span{color:var(--text-caption);font-size:12.5px;line-height:1.5}.cdia.diagram{height:150px;position:relative;overflow:hidden;container-type:inline-size}.cdia .tl-track{background:#cdd5dc;height:2px;position:absolute;top:46%;left:8%;right:8%}.cdia .tl-bar{background:var(--sky);border-radius:3px;height:5px;position:absolute;top:46%;transform:translateY(-50%)}.cdia .tl-node-dot{background:var(--sky-ink);border-radius:50%;width:13px;height:13px;position:absolute;top:46%;transform:translate(-50%,-50%)}.cdia .tl-dot-move{background:var(--ink);border-radius:50%;width:10px;height:10px;position:absolute;top:46%;left:8%;transform:translate(-50%,-50%)}.cdia .tl-label{color:var(--text-caption);white-space:nowrap;font-size:12px;font-weight:600;position:absolute;top:64%;transform:translate(-50%)}.cdia .seq-box{color:var(--ink);text-align:center;background:#fff;border-radius:10px;padding:11px 16px;font-size:13px;font-weight:700}.cdia .seq-box small{color:var(--text-caption);margin-top:2px;font-size:11px;font-weight:600;display:block}.cdia .seq-branch{flex-direction:column;gap:8px;display:flex}@media (prefers-reduced-motion:no-preference){.cdia .tl-dot-move{animation:3.4s ease-in-out 4 c-dot}@keyframes c-dot{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(calc(70cqw - 50%),-50%)}}}@media (width<=600px){.cdia.diagram-flow{gap:8px;padding:22px 14px}.cdia .flow-arrow{text-align:center;width:100%}.cdia .tl-label{font-size:11px}}.ch-facts{color:var(--text-body);margin-top:22px;font-size:14.5px;font-weight:600;line-height:1.6}.ch-resume{margin-top:16px;font-size:15px}.ch-who{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);list-style:none;display:grid}.ch-who h3{font-size:19px;line-height:1.3}.ch-who p{margin-top:8px;font-size:15.5px;line-height:1.6}.ch-need{text-align:center;max-width:62ch;color:var(--text-caption);margin:clamp(20px,2.4vw,28px) auto 0;font-size:15.5px;line-height:1.6}.ch-mods{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,24px);list-style:none;display:grid}.ch-mod{grid-row:span 6;grid-template-rows:subgrid;align-content:start;row-gap:0;display:grid;position:relative}.ch-mod>*{min-width:0}.ch-mod:first-child{grid-column:1/-1}.ch-mod .ch-label{color:var(--sky-ink);font-size:14px;font-weight:700;line-height:1.4}.ch-mod h3{letter-spacing:-.015em;margin-top:6px;font-size:clamp(20px,1.8vw,24px);line-height:1.25}.ch-mod h3 a{color:var(--ink)}.ch-mod h3 a:after{content:"";border-radius:var(--r-card);position:absolute;inset:0}.ch-mod h3 a:focus-visible{outline:none}.ch-mod:has(h3 a:focus-visible){outline:2px solid var(--sky-ink);outline-offset:3px}.ch-mod>p{margin-top:8px;font-size:15.5px;line-height:1.6}.ch-mod .ch-learn{color:var(--text-caption);margin-top:14px;font-size:13px;font-weight:700}.ch-mod ul.ch-chips{flex-wrap:wrap;align-self:start;gap:6px;margin-top:6px;list-style:none;display:flex}.ch-mod ul.ch-chips li{color:var(--text-body);background:#f3f6f9;border-radius:999px;padding:4px 10px;font-size:13.5px;line-height:1.4}.ch-mod .ch-status{color:var(--text-caption);flex-wrap:wrap;align-self:end;gap:4px 14px;padding-top:18px;font-size:14px;font-weight:600;display:flex}.ch-mod .ch-status .ch-go{color:var(--ink);margin-left:auto}.ch-mod.is-done .ch-status [data-progress]{color:var(--sky-ink)}.ch-faq-w{max-width:900px}@media (width<=900px){.ch-who,.ch-mods{grid-template-columns:1fr}}
