:root{--guide-bg:oklch(0.985 0.004 250);--guide-surface:#ffffff;--guide-surface-2:oklch(0.972 0.005 255);--guide-surface-3:oklch(0.955 0.006 255);--guide-ink:oklch(0.255 0.018 262);--guide-ink-soft:oklch(0.42 0.018 262);--guide-muted:oklch(0.55 0.014 262);--guide-faint:oklch(0.70 0.010 262);--guide-line:oklch(0.915 0.006 262);--guide-line-strong:oklch(0.855 0.008 262);--guide-accent:#2563eb;--guide-accent-ink:#1d4ed8;--guide-accent-soft:rgba(37,99,235,0.08);--guide-good:var(--green-600);--guide-warn:var(--orange-accent);--guide-bad:var(--red-600);--guide-serif:var(--font-serif,"Georgia","Times New Roman",serif);--guide-sans:var(--font-sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);--guide-mono:var(--font-mono,ui-monospace,"SFMono-Regular",Menlo,monospace);--guide-radius:6px;--guide-maxread:74ch}.guide-wrapper *{box-sizing:border-box}.guide-wrapper h1,.guide-wrapper h2,.guide-wrapper h3{font-optical-sizing:none}.guide-wrapper{background:var(--guide-bg);color:var(--guide-ink);font-family:var(--guide-sans);font-size:16px;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;min-height:100vh}::selection{background:var(--guide-accent-soft)}.guide-article a{color:var(--guide-accent);text-decoration:none}.guide-article a:hover{text-decoration:underline;text-underline-offset:2px}.guide-layout{display:grid;grid-template-columns:296px minmax(0,1fr);align-items:start;max-width:1280px;margin:0 auto;width:100%}.guide-sidebar{position:-webkit-sticky;position:sticky;top:70px;height:calc(100vh - 70px);overflow-y:auto;border-right:1px solid var(--guide-line);padding:1.8rem 1.8rem 3rem;background:var(--guide-bg)}.guide-back-link{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:var(--guide-muted);text-decoration:none;margin-bottom:1.8rem;transition:color .15s}.guide-back-link:hover{color:var(--guide-ink);text-decoration:none}.toc-list{list-style:none;margin:0;padding:0}.toc-list li{margin:0}.toc-list a{display:block;padding:.42rem 0;color:var(--guide-muted);font-size:.95rem;line-height:1.4;transition:color .15s;text-decoration:none;font-family:var(--guide-sans)}.toc-list a:hover{color:var(--guide-ink);text-decoration:none}.toc-list a.toc-active{color:var(--guide-ink);font-weight:700}.toc-list .toc-h3 a{padding-left:.9rem;font-size:.88rem}.guide-main{padding:3rem 3.5rem 6rem}.guide-content{max-width:820px}.guide-title{font-family:var(--guide-sans);font-weight:800;font-size:2.9rem;line-height:1.08;letter-spacing:-.025em;margin:0 0 .7rem;max-width:20ch;text-wrap:balance;color:var(--guide-ink);font-optical-sizing:none}.guide-subtitle{font-size:1.18rem;color:var(--guide-ink-soft);line-height:1.5;max-width:56ch;margin:0 0 1.6rem}.guide-byline{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;font-family:var(--guide-sans);margin-bottom:2.8rem}.guide-byline-left{display:flex;align-items:center;gap:.7rem}.guide-avatar{flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-circle);background:var(--gray-300);display:grid;place-items:center;color:#ffffff;font-size:.8rem;font-weight:600;letter-spacing:.02em}.guide-byline-text{display:flex;flex-direction:column;line-height:1.3}.guide-byline-name{font-weight:700;font-size:.9rem;color:var(--guide-ink)}.guide-byline-role{font-size:.82rem;color:var(--guide-muted)}.guide-byline-date{font-size:.85rem;color:var(--guide-muted)}.guide-article{color:var(--guide-ink)}.guide-article>section{scroll-margin-top:88px}.guide-article>section+section{margin-top:3.4rem}.guide-article h2{font-size:1.4rem;letter-spacing:-.01em;margin:0 0 1.1rem;font-optical-sizing:none}.guide-article h2,.guide-article h3{font-family:var(--guide-sans);font-weight:700;line-height:1.3;color:var(--guide-ink);scroll-margin-top:88px}.guide-article h3{font-size:1.15rem;margin:2.2rem 0 .7rem;font-optical-sizing:none}.guide-article p{margin:0 0 1.35rem;max-width:var(--guide-maxread);font-size:1.0625rem;line-height:1.8;text-wrap:pretty}.guide-article p.lead{font-size:1.22rem;line-height:1.6;color:var(--guide-ink-soft);margin-bottom:1.5rem}.guide-article strong{font-weight:600;color:var(--guide-ink)}.guide-article em{font-style:italic}.guide-article ol,.guide-article ul{margin:0 0 1.35rem;padding-left:1.4rem;max-width:var(--guide-maxread)}.guide-article li{font-size:1.0625rem;line-height:1.7;margin:0 0 .5rem}.guide-article li::marker{color:var(--guide-muted)}.guide-article code{font-family:var(--guide-mono);font-size:.88em;background:var(--guide-surface-2);border:1px solid var(--guide-line);border-radius:3px;padding:.1em .35em;color:var(--guide-ink)}.guide-article pre{background:var(--guide-surface-2);border:1px solid var(--guide-line);border-radius:var(--guide-radius);padding:1.2rem 1.4rem;overflow-x:auto;margin:1.6rem 0;max-width:var(--guide-maxread)}.guide-article pre code{background:none;border:none;padding:0;font-size:.9rem;line-height:1.6}.guide-formula{display:flex;align-items:baseline;justify-content:center;gap:1rem;flex-wrap:wrap;background:var(--guide-surface-2);border:1px solid var(--guide-line);border-left:3px solid var(--guide-accent);border-radius:var(--guide-radius);padding:1.1rem 1.4rem;margin:1.6rem 0;max-width:var(--guide-maxread)}.guide-formula-body{font-family:var(--guide-mono);font-size:1.0625rem;line-height:1.5;color:var(--guide-ink);letter-spacing:.01em}.guide-formula-label{font-family:var(--guide-sans);font-size:.8125rem;color:var(--guide-muted)}.guide-formula sub,.guide-formula sup,.guide-formula-inline sub,.guide-formula-inline sup{font-size:.7em;line-height:0}.guide-formula-inline{font-family:var(--guide-mono);font-size:.92em;white-space:nowrap;color:var(--guide-ink)}.guide-tldr{display:flex;gap:1.3rem;align-items:flex-start;background:#e5e5fc;border-radius:14px;padding:1.6rem 1.8rem;margin:0 0 2.6rem;max-width:var(--guide-maxread)}.guide-tldr-icon{flex-shrink:0;width:44px;height:44px;background:rgba(99,102,241,.15);border-radius:8px;display:grid;place-items:center;color:#4f52c2;margin-top:.1rem}.guide-tldr-label{font-family:var(--guide-sans);font-weight:700;font-size:1.05rem;color:#2d2f6e;margin:0 0 .65rem;letter-spacing:.01em}.guide-tldr-body{flex:1 1;min-width:0}.guide-tldr-body ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.guide-tldr-body li{padding:0}.guide-tldr-body li,.guide-tldr-body p{font-size:1rem;line-height:1.6;color:#1e2060}.guide-tldr-body p{margin:0}.guide-tldr-body strong{font-weight:600;color:#1e2060}.guide-callout{margin:1.6rem 0;padding:1.1rem 1.25rem 1.1rem 1.4rem;border-radius:var(--guide-radius);border:1px solid transparent;border-left-width:3px;max-width:var(--guide-maxread);display:flex;gap:.75rem;align-items:flex-start}.guide-callout.callout-tip{background:rgba(13,148,136,.06);border-color:rgba(13,148,136,.2) rgba(13,148,136,.2) rgba(13,148,136,.2) #0d9488}.guide-callout.callout-warning{background:rgba(217,119,6,.06);border-color:rgba(217,119,6,.2) rgba(217,119,6,.2) rgba(217,119,6,.2) #d97706}.guide-callout.callout-note{background:var(--guide-surface-2);border-color:var(--guide-line);border-left-color:#6b7280}.guide-callout-icon{flex-shrink:0;width:18px;height:18px;margin-top:.18rem}.callout-tip .guide-callout-icon{color:#0d9488}.callout-warning .guide-callout-icon{color:#d97706}.callout-note .guide-callout-icon{color:#6b7280}.guide-callout-body{font-size:.96rem;line-height:1.6}.guide-callout-body p{margin:0;max-width:none}.guide-figure{margin:1.8rem 0 1.9rem}.guide-figure img{width:100%;border-radius:var(--guide-radius);border:1px solid var(--guide-line);display:block}.guide-figure figcaption{margin-top:.65rem;font-size:.9rem;line-height:1.5;color:var(--guide-muted);max-width:var(--guide-maxread)}.guide-table-wrap{margin:1.6rem 0 1.8rem;overflow-x:auto;max-width:var(--guide-maxread)}table.guide-table{border-collapse:collapse;width:100%;font-size:.95rem;background:var(--guide-surface);border:1px solid var(--guide-line);border-radius:var(--guide-radius);overflow:hidden}table.guide-table thead th{font-family:var(--guide-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--guide-muted);text-align:left;padding:.7rem 1rem;background:var(--guide-surface-2);border-bottom:1px solid var(--guide-line-strong);white-space:nowrap}table.guide-table tbody td{padding:.7rem 1rem;border-bottom:1px solid var(--guide-line);color:var(--guide-ink-soft);vertical-align:top;line-height:1.5}table.guide-table tbody tr:last-child td{border-bottom:none}table.guide-table tbody tr:nth-child(2n) td{background:var(--guide-surface-2)}table.guide-table tbody tr:hover td{background:oklch(.965 .006 262)}table.guide-table td:first-child{font-weight:500;color:var(--guide-ink)}.guide-cta-banner{margin-top:4rem;padding:2.2rem 2.4rem;background:var(--guide-accent-soft);border:1px solid rgba(37,99,235,.15);border-radius:10px;display:flex;flex-direction:column;gap:1.1rem}.guide-cta-heading{font-size:1.05rem;font-weight:600;color:var(--guide-ink);margin:0}.guide-cta-form{display:flex;gap:.6rem;flex-wrap:wrap}.guide-cta-input{flex:1 1;min-width:200px;height:40px;padding:0 .9rem;font-family:var(--guide-sans);font-size:.9rem;color:var(--guide-ink);background:#fff;border:1px solid var(--guide-line-strong);border-radius:var(--guide-radius);outline:none;transition:border-color .15s,box-shadow .15s}.guide-cta-input::placeholder{color:var(--guide-faint)}.guide-cta-input:focus{border-color:var(--guide-accent);box-shadow:0 0 0 3px rgba(37,99,235,.12)}.guide-cta-input--error{border-color:#ef4444}.guide-cta-error{font-size:.82rem;color:#ef4444;margin:0}.guide-cta-submit{height:40px;padding:0 1.3rem;background:var(--guide-accent);color:#fff;font-family:var(--guide-sans);font-size:.9rem;font-weight:600;border:none;border-radius:var(--guide-radius);cursor:pointer;white-space:nowrap;transition:background .15s;display:inline-flex;align-items:center}.guide-cta-submit:hover:not(:disabled){background:var(--guide-accent-ink)}.guide-cta-submit:disabled{opacity:.6;cursor:not-allowed}.guide-cta-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:var(--radius-circle);animation:guide-spin .7s linear infinite;display:inline-block}@keyframes guide-spin{to{transform:rotate(1turn)}}.guide-index-wrap{max-width:1080px;margin:0 auto;padding:0 2.5rem}.guide-index-intro{padding:4.5rem 0 3rem}.guide-index-intro .guide-index-kicker{font-family:var(--guide-mono);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--guide-accent-ink);margin:0 0 .6rem}.guide-index-intro h1{font-family:var(--guide-serif);font-weight:700;font-size:clamp(2.2rem,4vw,3rem);line-height:1.12;letter-spacing:-.02em;margin:0 0 1rem;max-width:22ch;text-wrap:balance;color:var(--guide-ink);font-optical-sizing:none}.guide-index-intro p{font-size:1.15rem;color:var(--guide-ink-soft);line-height:1.55;max-width:60ch;margin:0}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;padding-bottom:6rem}.guide-card{display:flex;flex-direction:column;border:1px solid var(--guide-line);border-radius:10px;background:var(--guide-surface);overflow:hidden;transition:border-color .15s,transform .15s,box-shadow .15s;text-decoration:none;color:inherit}.guide-card:hover{border-color:var(--guide-line-strong);transform:translateY(-3px);box-shadow:0 12px 30px -18px rgba(37,99,235,.25);text-decoration:none}.guide-card-body{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1 1}.guide-card-cluster{font-family:var(--guide-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--guide-accent-ink);margin-bottom:.5rem}.guide-card-title{font-family:var(--guide-serif);font-weight:600;font-size:1.22rem;color:var(--guide-ink);margin:0 0 .5rem;line-height:1.3;font-optical-sizing:none}.guide-card-subtitle{font-size:.95rem;color:var(--guide-muted);line-height:1.5;margin:0 0 1rem;flex:1 1}.guide-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.guide-card-meta{font-family:var(--guide-mono);font-size:.74rem;color:var(--guide-faint);letter-spacing:.02em}.guide-card-tags{display:flex;gap:.35rem;flex-wrap:wrap}.guide-card-tags .guide-tag{font-size:.68rem;padding:.15rem .45rem}@media (max-width:940px){.guide-layout{grid-template-columns:1fr}.guide-sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--guide-line);padding:1.2rem 1.4rem 1.4rem}.guide-main{padding:2.2rem 1.4rem 4rem}.guide-title{font-size:2.2rem}}@media (max-width:860px){.guide-cards{grid-template-columns:1fr}.guide-index-intro{padding:3rem 0 2rem}.guide-index-wrap{padding:0 1.4rem}}@media (max-width:640px){.guide-cta-form{flex-direction:column}.guide-cta-input,.guide-cta-submit{width:100%}}.guide-checklist{background:var(--guide-surface);border:1px solid var(--guide-line);border-radius:12px;padding:1.4rem 1.6rem;margin:1.8rem 0 1.9rem;max-width:var(--guide-maxread)}.guide-checklist-title{font-family:var(--guide-sans);font-weight:700;font-size:1rem;color:var(--guide-ink);margin:0 0 1rem;letter-spacing:.01em}.guide-checklist-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.85rem}.guide-checklist-item{display:flex;gap:.85rem;align-items:flex-start}.guide-checklist-check{flex-shrink:0;width:24px;height:24px;border-radius:var(--radius-circle);background:var(--guide-good);color:#ffffff;display:grid;place-items:center;margin-top:.05rem}.guide-checklist-text{display:flex;flex-direction:column;gap:.15rem;font-size:.96rem;line-height:1.45;color:var(--guide-ink)}.guide-checklist-detail{color:var(--guide-muted);font-size:.9rem}