*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--top) + 72px);-webkit-text-size-adjust:100%}@media (min-width:1024px){html{scroll-padding-top:calc(var(--top) + 28px)}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.lg-hero{isolation:isolate;background:radial-gradient(70% 90% at 100% 0%, #8e1f458c, transparent 65%), radial-gradient(60% 70% at 0% 100%, #c59a5529, transparent 70%), var(--night);color:var(--night-text);border-radius:24px;margin-top:16px;padding:32px 24px 36px;position:relative;overflow:hidden}.lg-hero:before{content:"";pointer-events:none;border:1px solid #e6c58b47;border-radius:16px;position:absolute;inset:10px}.lg-hero-seal{z-index:-1;opacity:.16;width:170px;height:170px;position:absolute;bottom:-48px;right:-40px;transform:rotate(-12deg)}.lg-switch{background:#f6ece614;border-radius:999px;gap:2px;padding:4px;display:inline-flex;box-shadow:inset 0 0 0 1px #f6ece61f}.lg-switch a{color:var(--night-soft);border-radius:999px;padding:7px 16px;font-size:.86rem;font-weight:600;text-decoration:none}.lg-switch a:hover{color:var(--night-text)}.lg-switch a[aria-current=page]{background:var(--night-text);color:var(--wine)}.lg-hero :focus-visible{outline-color:var(--rose)}.lg-hero h1{font:400 clamp(2.5rem, 9vw, 4.4rem) / 1.02 var(--display);letter-spacing:-.02em;font-variation-settings:"opsz" 144;margin-top:28px}.lg-hero h1 em{color:var(--rose)}.lg-sum{max-width:34ch;color:var(--night-soft);margin-top:14px;font-size:1.08rem}.lg-date{color:#e6c58b;border:1px solid #e6c58b59;border-radius:999px;align-items:center;gap:8px;margin-top:24px;padding:6px 14px;font-size:.84rem;font-weight:500;display:inline-flex}.lg-date svg{width:15px;height:15px}.lg-glance{margin-top:40px}.lg-label{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-size:.78rem;font-weight:700}.lg-cards{gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.lg-cards li{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:28px 1fr;align-content:start;column-gap:14px;padding:18px 18px 20px;display:grid}.lg-cards svg{width:28px;height:28px;color:var(--wine);grid-row:span 2}.lg-cards strong{font:500 1.14rem/1.3 var(--display)}.lg-cards span{color:var(--ink-soft);margin-top:4px;font-size:.95rem;line-height:1.55}@media (min-width:640px){.lg-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.lg-cards{grid-template-columns:repeat(var(--n,4), 1fr);gap:16px}.lg-cards li{grid-template-columns:1fr;padding:22px 22px 24px}.lg-cards svg{grid-row:auto;margin-bottom:14px}}.lg-body{counter-reset:sec;gap:8px;margin-top:40px;padding-bottom:88px;display:grid}.lg-side{top:var(--top);z-index:10;background:color-mix(in srgb, var(--paper) 96%, transparent);-webkit-backdrop-filter:blur(12px);align-self:start;margin-inline:-16px;padding:8px 16px;position:sticky}.lg-toc details{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;position:relative}.lg-toc summary{cursor:pointer;align-items:center;gap:10px;min-height:48px;padding:0 16px;font-size:.92rem;font-weight:600;list-style:none;display:flex}.lg-toc summary::-webkit-details-marker{display:none}.lg-now{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink-soft);flex:1;font-weight:500;overflow:hidden}.lg-now:not(:empty):before{content:"·";color:var(--gold);margin-right:10px}.lg-chev{width:18px;height:18px;color:var(--wine);transition:transform .25s var(--ease);margin-left:auto}.lg-toc details[open] .lg-chev{transform:rotate(180deg)}.lg-toc ol{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow), 0 24px 48px -16px #2b142040;counter-reset:toc;border-radius:14px;max-height:min(60vh,440px);margin:0;padding:8px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.lg-toc li{counter-increment:toc}.lg-toc a{color:var(--ink-soft);border-radius:10px;gap:12px;padding:9px 10px;font-size:.93rem;line-height:1.35;text-decoration:none;transition:color .2s,background .2s;display:flex}.lg-toc a:before{content:counter(toc, decimal-leading-zero);width:1.6em;color:var(--gold-ink);font-variant-numeric:tabular-nums;flex:none;font-size:.8rem;font-weight:600;line-height:1.7}.lg-toc a:hover{color:var(--ink);background:var(--paper-2)}.lg-toc a[aria-current=location]{color:var(--wine);background:color-mix(in srgb, var(--wine) 8%, transparent);font-weight:600}.lg-article{min-width:0;max-width:68ch}.lg-intro{font:400 1.22rem/1.6 var(--display);color:var(--ink);margin-top:16px}.lg-sec{counter-increment:sec;border-top:1px solid var(--line);margin-top:44px;padding-top:36px}.lg-sec h2{font:500 clamp(1.5rem, 4.4vw, 1.85rem) / 1.2 var(--display);letter-spacing:-.01em;flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.lg-sec h2:before{content:counter(sec, decimal-leading-zero);font:600 .82rem/1 var(--body);letter-spacing:.08em;color:var(--gold-ink);transform:translateY(-.3em)}.lg-anchor{color:var(--gold);font:500 1.1rem/1 var(--body);opacity:.55;text-decoration:none;transition:opacity .2s,color .2s}.lg-anchor:hover,.lg-anchor:focus-visible,.lg-sec h2:hover .lg-anchor{opacity:1;color:var(--wine)}.lg-sec p,.lg-sec li{color:var(--ink-soft);font-size:1.04rem;line-height:1.75}.lg-sec h2+p,.lg-sec h2+ul,.lg-sec p+p,.lg-sec ul+p,.lg-sec p+ul{margin-top:14px}.lg-sec ul{gap:10px;margin-bottom:0;padding-left:1.25em;display:grid}.lg-sec li::marker{color:var(--wine)}.lg-sec strong{color:var(--ink);font-weight:600}.lg-sec a,.lg-intro a{text-underline-offset:3px;text-decoration-thickness:1px}.lg-next{gap:12px;margin-top:56px;display:grid}.lg-next a{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);transition:transform .25s var(--ease), border-color .25s;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;text-decoration:none;display:flex}.lg-next a:hover{border-color:color-mix(in srgb, var(--wine) 40%, transparent);transform:translateY(-2px)}.lg-next small{color:var(--gold-ink);letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;font-weight:700;display:block}.lg-next b{font:500 1.2rem/1.3 var(--display);margin-top:2px;display:block}.lg-next svg{width:22px;height:22px;color:var(--wine);flex:none}@media (min-width:640px){.lg-next{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.lg-hero{border-radius:32px;margin-top:24px;padding:56px 64px 60px}.lg-hero:before{border-radius:22px;inset:14px}.lg-hero-seal{opacity:.24;width:320px;height:320px;bottom:-64px;right:56px}.lg-sum{font-size:1.2rem}.lg-glance{margin-top:48px}.lg-body{grid-template-columns:260px minmax(0,1fr);gap:72px;margin-top:56px}.lg-side{top:calc(var(--top) + 24px);-webkit-backdrop-filter:none;background:0 0;margin:0;padding:0}.lg-toc details{box-shadow:none;background:0 0;border:0}.lg-toc summary{display:none}.lg-toc ol{max-height:calc(100vh - var(--top) - 64px);box-shadow:none;border:0;border-left:1px solid var(--line);background:0 0;border-radius:0;padding:0;position:static}.lg-toc a{border-left:2px solid #0000;border-radius:0 10px 10px 0;margin-left:-1px}.lg-toc a[aria-current=location]{border-left-color:var(--wine)}.lg-intro{margin-top:0}}.nf{min-height:100vh;background:radial-gradient(50% 40% at 85% 0%, #e7a0b64d, transparent 70%), radial-gradient(45% 35% at 0% 100%, #c59a552e, transparent 70%), var(--paper);place-items:center;min-height:100dvh;padding:32px 16px;display:grid}.nf-in{text-align:center;justify-items:center;gap:28px;width:min(100%,460px);display:grid}.nf-card{background:var(--card);border:1px solid var(--line);width:100%;box-shadow:var(--shadow), 0 24px 60px -24px #8e1f4538;border-radius:28px;padding:44px 28px 32px;position:relative}.nf-card:before{content:"";pointer-events:none;border:1px solid #c59a5559;border-radius:21px;position:absolute;inset:8px}.nf-seal{width:72px;height:72px;transform:rotate(-8deg)}.nf-code{letter-spacing:.2em;color:var(--gold-ink);margin-top:18px;font-size:.8rem;font-weight:700}.nf h1{font:400 clamp(1.9rem, 7vw, 2.4rem) / 1.12 var(--display);letter-spacing:-.015em;margin-top:8px}.nf h1 em{color:var(--wine)}.nf p:not(.nf-code){color:var(--ink-soft);margin-top:12px}.nf-actions{gap:10px;margin-top:28px;display:grid;position:relative}@media (min-width:480px){.nf-actions{grid-auto-flow:column;justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
