:root{color-scheme:light dark}[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}body{margin:0;padding:0;font-family:Roboto,system-ui,-apple-system,sans-serif;background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);line-height:1.65}.page-header{padding:32px 24px 48px;max-width:1100px;margin:0 auto;position:relative}.back-link{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;color:var(--md-sys-color-primary);text-decoration:none;margin-block-end:32px;padding:6px 12px;border-radius:var(--md-sys-shape-corner-full);transition:background .15s ease}.back-link:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 10%,transparent)}.hero{max-width:820px}.hero__pill{display:inline-block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:6px 14px;border-radius:var(--md-sys-shape-corner-full);background:color-mix(in srgb,var(--md-sys-color-tertiary) 18%,transparent);color:var(--md-sys-color-on-tertiary-container, var(--md-sys-color-on-surface));margin-block-end:16px}.hero__title{font-size:clamp(2rem,5vw,3rem);line-height:1.15;margin:0 0 16px;color:var(--md-sys-color-on-surface);font-weight:700;letter-spacing:-.02em}.hero__lede{font-size:1.125rem;line-height:1.6;color:var(--md-sys-color-on-surface-variant);margin:0 0 20px}.hero__lede em{font-style:italic;color:var(--md-sys-color-on-surface)}.hero__meta{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:var(--md-sys-color-on-surface-variant);margin-block-end:24px;flex-wrap:wrap}.hero__meta-sep{opacity:.5}.hero__meta code{font-family:ui-monospace,JetBrains Mono,monospace;font-size:.75rem;background:var(--md-sys-color-surface-container-low);padding:1px 6px;border-radius:4px}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.action-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--md-sys-shape-corner-full);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid transparent;text-decoration:none;font-family:inherit}.action-btn:hover{transform:translateY(-1px)}.action-btn--primary{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border-color:var(--md-sys-color-primary)}.action-btn--primary:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 90%,white 10%)}.action-btn--copied{background:var(--md-sys-color-tertiary, var(--md-sys-color-primary));border-color:var(--md-sys-color-tertiary, var(--md-sys-color-primary));color:var(--md-sys-color-on-tertiary, var(--md-sys-color-on-primary))}.action-btn--outline{background:transparent;color:var(--md-sys-color-primary);border-color:var(--md-sys-color-outline)}.action-btn--outline:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 8%,transparent);border-color:var(--md-sys-color-primary)}.action-btn--ghost{background:transparent;color:var(--md-sys-color-on-surface-variant);border-color:transparent}.action-btn--ghost:hover{color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 6%,transparent)}.prose{max-width:880px;margin:0 auto 96px;padding:0 24px;font-size:1rem}.prose h2{font-size:1.875rem;font-weight:700;letter-spacing:-.01em;margin:64px 0 16px;padding-block-end:12px;border-block-end:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface);scroll-margin-block-start:24px}.prose h3{font-size:1.375rem;font-weight:600;margin:40px 0 12px;color:var(--md-sys-color-on-surface)}.prose h4{font-size:1.125rem;font-weight:600;margin:24px 0 8px;color:var(--md-sys-color-on-surface)}.prose p{margin:0 0 16px;color:var(--md-sys-color-on-surface)}.prose strong{color:var(--md-sys-color-on-surface);font-weight:600}.prose em{font-style:italic}.prose a{color:var(--md-sys-color-primary);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--md-sys-color-primary) 50%,transparent);transition:text-decoration-color .15s ease}.prose a:hover{text-decoration-color:var(--md-sys-color-primary)}.prose code{font-family:ui-monospace,JetBrains Mono,monospace;font-size:.85em;background:var(--md-sys-color-surface-container);padding:2px 6px;border-radius:4px;color:var(--md-sys-color-primary)}.prose pre{margin:16px 0 24px;padding:16px 20px;background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-medium);overflow-x:auto;font-size:.85rem;line-height:1.55;position:relative}.prose pre:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;inline-size:3px;background:var(--md-sys-color-primary);border-radius:4px 0 0 4px}.prose pre code{background:transparent;padding:0;color:var(--md-sys-color-on-surface);font-size:inherit}.prose ul,.prose ol{margin:0 0 20px;padding-inline-start:28px}.prose li{margin-block-end:6px}.prose li code{font-size:.8125em}.prose blockquote{margin:16px 0;padding:12px 20px;border-inline-start:4px solid var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 5%,transparent);border-radius:0 var(--md-sys-shape-corner-small) var(--md-sys-shape-corner-small) 0;color:var(--md-sys-color-on-surface-variant)}.prose blockquote p{margin:0}.prose blockquote strong{color:var(--md-sys-color-primary)}.prose table{width:100%;margin:16px 0 24px;border-collapse:collapse;font-size:.875rem;display:block;overflow-x:auto}.prose thead{background:var(--md-sys-color-surface-container)}.prose th,.prose td{padding:10px 14px;text-align:start;border-block-end:1px solid var(--md-sys-color-outline-variant)}.prose th{font-weight:600;color:var(--md-sys-color-on-surface);white-space:nowrap}.prose td{vertical-align:top}.prose td code{white-space:nowrap}.prose hr{margin:56px 0;border:0;border-block-start:1px solid var(--md-sys-color-outline-variant)}.prose:has(>h2:first-child)>h2:first-child{margin-block-start:0}.page-footer{max-width:880px;margin:0 auto;padding:24px;text-align:center;color:var(--md-sys-color-on-surface-variant);font-size:.8125rem;border-block-start:1px solid var(--md-sys-color-outline-variant)}.page-footer code{font-family:ui-monospace,JetBrains Mono,monospace;background:var(--md-sys-color-surface-container);padding:1px 6px;border-radius:4px}
