.lg-hero{position:relative;padding:clamp(56px,8vw,104px) 0 clamp(40px,5vw,64px);border-bottom:1px solid var(--n100)}.lg-hero-bg{position:absolute;inset:-72px 0 0;pointer-events:none;background-image:radial-gradient(rgba(19,19,22,.15) 1px,transparent 1.5px);background-size:22px 22px;background-position:center top;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 25% 30%,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse 60% 70% at 25% 30%,#000 15%,transparent 70%)}.lg-hero .wrap{position:relative}.lg-hero .h1{margin-top:22px;font-size:clamp(40px,5.4vw,72px)}.lg-hero .lead{margin-top:20px;max-width:58ch}.lg-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:28px;font:500 12px var(--mono);letter-spacing:.03em;color:var(--muted)}.lg-meta time{color:var(--ink)}.lg-draft{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;background:var(--warn-bg);color:var(--warn);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px}.lg-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(40px,6vw,96px);padding-top:clamp(48px,6vw,72px);padding-bottom:clamp(96px,12vw,152px)}.lg-body>*{min-width:0}.lg-toc{position:sticky;top:104px;align-self:start}.lg-toc .label{margin:0 0 14px;font-size:10.5px}.lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}.lg-toc a{display:grid;grid-template-columns:10px 22px 1fr;align-items:center;gap:8px;padding:7px 8px;margin:0 -8px;border-radius:8px;font-size:14px;line-height:1.35;color:var(--muted);transition:background .15s,color .15s}.lg-toc a:hover{background:var(--n50);color:var(--ink)}.lg-toc a i{width:8px;height:8px;box-shadow:inset 0 0 0 1.5px var(--n300);transition:background .3s,box-shadow .3s}.lg-toc a .n{font:500 11px var(--mono);color:var(--faint)}.lg-toc a.read i{background:var(--lilac);box-shadow:none}.lg-toc a.on{color:var(--ink);font-weight:500}.lg-toc a.on .n{color:var(--ink)}.lg-progress{display:flex;align-items:center;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.lg-progress .bar{flex:1;height:4px;border-radius:2px;background:var(--n100);overflow:hidden}.lg-progress .bar i{display:block;height:100%;width:0;background:var(--lilac);transition:width .2s}.lg-progress .pct{font:500 11px var(--mono);color:var(--muted);white-space:nowrap}.lg-progress .pct b{font-weight:500;color:var(--ink)}.lg-article{max-width:720px}.lg-note{margin:0 0 28px;padding:12px 16px;border-radius:12px;background:var(--warn-bg);color:var(--warn);font-size:14px}.lg-sum{background:var(--card);box-shadow:var(--card-edge);border-radius:var(--r);padding:clamp(22px,3vw,30px);margin-bottom:48px}.lg-sum .label{margin:0 0 18px;font-size:10.5px}.lg-sum-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.lg-sum b{display:block;font-weight:500;color:var(--ink);margin-bottom:12px}.lg-sum ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:14.5px;line-height:1.5;color:var(--text)}.lg-sum li{position:relative;padding-left:26px}.lg-sum li:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px}.lg-sum .keep li:before{background:var(--lilac)}.lg-sum .never li:before{box-shadow:inset 0 0 0 1.5px var(--n400);background:linear-gradient(to top right,transparent calc(50% - .75px),var(--n400) calc(50% - .75px),var(--n400) calc(50% + .75px),transparent calc(50% + .75px))}.lg-text{counter-reset:sec}.lg-text h2{counter-increment:sec}.lg-text h2:before{content:counter(sec,decimal-leading-zero);font:500 12px var(--mono);letter-spacing:.02em;color:var(--faint);transform:translateY(-3px)}.lg-end{margin-top:64px;display:grid;gap:14px}.lg-end .rtotal{margin:0;align-items:center}.lg-end .rtotal .num{font-size:28px}.lg-end p{margin:0;font-size:14.5px;color:var(--muted)}.lg-end p a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--n300);text-underline-offset:3px}.lg-others{margin-top:48px}.lg-others .label{margin:0 0 6px;font-size:10.5px}.lg-others a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-weight:500;color:var(--ink)}.lg-others a svg{color:var(--muted);transition:transform .18s,color .18s}.lg-others a:hover svg{transform:translate(3px);color:var(--ink)}@media(max-width:900px){.lg-body{grid-template-columns:1fr}.lg-toc{position:static;background:var(--card);box-shadow:var(--card-edge);border-radius:var(--r);padding:20px}.lg-progress{display:none}}@media(max-width:640px){.lg-sum-grid{grid-template-columns:1fr}}
