:root{--ctf-forge-navy:#0b1d3a;--ctf-flame-blue:#06f;--ctf-hamilton-steel:#8d949c;--ctf-carbon-black:#111417;--ctf-signal-ice:#e6f2ff;--ctf-clean-white:#fff;--color-bg-page:var(--ctf-clean-white);--color-bg-surface:var(--ctf-clean-white);--color-bg-surface-accent:var(--ctf-signal-ice);--color-bg-dark:var(--ctf-forge-navy);--color-text-primary:var(--ctf-carbon-black);--color-text-secondary:var(--ctf-carbon-black);--color-text-heading:var(--ctf-forge-navy);--color-text-meta-large:var(--ctf-hamilton-steel);--color-text-on-dark:var(--ctf-clean-white);--color-text-body-on-dark:var(--ctf-signal-ice);--color-action-primary:var(--ctf-flame-blue);--color-action-primary-hover:var(--ctf-forge-navy);--color-text-on-action:var(--ctf-clean-white);--color-link:var(--ctf-flame-blue);--color-focus-ring:var(--ctf-flame-blue);--color-focus-ring-on-dark:var(--ctf-signal-ice);--color-border:var(--ctf-hamilton-steel);--color-border-strong:var(--ctf-forge-navy);--color-bg-disabled:var(--ctf-hamilton-steel);--color-text-disabled:var(--ctf-clean-white);--color-text-muted-disabled:var(--ctf-hamilton-steel);--space-4:.25rem;--space-8:.5rem;--space-12:.75rem;--space-16:1rem;--space-24:1.5rem;--space-32:2rem;--space-48:3rem;--space-64:4rem;--space-96:6rem;--space-128:8rem;--section-pad-dense:clamp(var(--space-32), 1.5rem + 2vw, var(--space-48));--section-pad-block:clamp(var(--space-48), 4rem + 4vw, var(--space-96));--section-pad-spacious:clamp(var(--space-64), 3rem + 7vw, var(--space-128));--content-max-width:77.5rem;--content-prose-max:70ch;--content-gutter:var(--space-24);--content-annotation-width:15rem;--border-width:1px;--border-standard:var(--border-width) solid var(--color-border);--radius-none:0;--radius-sm:2px;--rule-color:var(--ctf-hamilton-steel);--rule-color-strong:var(--ctf-forge-navy);--rule-color-on-dark:#e6f2ff59;--rule:var(--border-width) solid var(--rule-color);--rule-strong:var(--border-width) solid var(--rule-color-strong);--rule-on-dark:var(--border-width) solid var(--rule-color-on-dark);--shadow-raised:0 1px 2px #0b1d3a14, 0 2px 8px #0b1d3a0f;--color-scrim:#0b1d3a80;--font-stack-heading:var(--font-heading,"Archivo"), system-ui, sans-serif;--font-stack-body:var(--font-body,"IBM Plex Sans"), system-ui, sans-serif;--font-stack-mono:var(--font-mono,"IBM Plex Mono"), ui-monospace, monospace;--text-sm:.875rem;--text-base:clamp(1rem, .96rem + .2vw, 1.125rem);--text-lg:clamp(1.125rem, 1.05rem + .35vw, 1.375rem);--text-xl:clamp(1.375rem, 1.25rem + .6vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.5rem + 1.1vw, 2.25rem);--text-3xl:clamp(2rem, 1.7rem + 1.6vw, 2.75rem);--text-display:clamp(2.25rem, 1.8rem + 2.4vw, 3.5rem);--text-display-xl:clamp(2.5rem, 1.5rem + 4.5vw, 5.25rem);--annotation-size:.8125rem;--annotation-tracking:.08em;--leading-body:1.6;--leading-heading:1.2;--leading-display:1.1;--tracking-heading:-.015em;--tracking-mono-label:.08em;--font-weight-body:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-heading:650;--duration-fast:.15s;--duration-base:.2s;--duration-press:.1s;--duration-panel:.2s;--duration-reveal:.4s;--reveal-stagger:70ms;--reveal-distance:12px;--forge-lead:.6s;--duration-forge-step:1.1s;--ease-out:cubic-bezier(.2, 0, 0, 1);--focus-ring-width:2px;--focus-ring-offset:2px;--control-min-height:2.75rem}@media (max-width:47.999rem){:root{--reveal-stagger:50ms;--reveal-distance:8px}}:root{--ctf-steel-slate:#5b6675;--color-text-primary:var(--ctf-steel-slate);--color-text-secondary:var(--ctf-steel-slate);--color-text-heading:var(--ctf-forge-navy);--color-text-body:var(--ctf-steel-slate);--color-bg-page:var(--ctf-clean-white);--color-bg-surface-accent:#f2f8ff;--radius-sm:.5rem;--radius-md:.875rem;--radius-lg:1.25rem;--radius-2xl:1.5rem;--radius-pill:999px;--shadow-sm:0 1px 2px #0b1d3a0f;--shadow-card:0 1px 1px #0b1d3a0a, 0 8px 24px #0b1d3a14, 0 2px 6px #0b1d3a0d;--shadow-card-hover:0 2px 4px #0b1d3a0f, 0 20px 48px #0b1d3a29, 0 6px 16px #0b1d3a1a;--glow-blue:0 12px 40px #0066ff38;--glow-blue-soft:0 8px 30px #0066ff24;--glass-bg:#ffffffb8;--glass-bg-strong:#ffffffd9;--glass-border:#ffffffb3;--glass-hairline:#0b1d3a14;--glass-blur:16px;--glass-bg-dark:#0b1d3a8c;--glass-border-dark:#e6f2ff29;--mesh-light:radial-gradient(60% 55% at 12% 8%, #0066ff1a, transparent 60%), radial-gradient(55% 50% at 92% 18%, #0066ff14, transparent 62%), radial-gradient(70% 60% at 78% 96%, #e6f2ffe6, transparent 65%), linear-gradient(180deg, #fff 0%, #f4f9ff 100%);--mesh-accent:radial-gradient(55% 60% at 8% 0%, #0066ff24, transparent 60%), radial-gradient(50% 55% at 100% 100%, #0066ff1a, transparent 60%), linear-gradient(180deg, #eef6ff 0%, #e6f2ff 100%);--mesh-dark:radial-gradient(60% 70% at 20% 10%, #0066ff59, transparent 60%), radial-gradient(55% 65% at 90% 100%, #0066ff47, transparent 62%), linear-gradient(160deg, #0b1d3a 0%, #0a1730 60%, #070f22 100%);--overlay-light:linear-gradient(180deg, #ffffff8c 0%, #f4f9ffd1 100%);--overlay-dark:linear-gradient(180deg, #0b1d3a9e 0%, #070f22d1 100%);--color-border:var(--glass-hairline);--border-standard:1px solid var(--glass-hairline);--duration-drift:34s;--duration-pulse:9s;--ease-soft:cubic-bezier(.4, 0, .2, 1);--cert-google-blue:#4285f4;--cert-google-red:#ea4335;--cert-google-yellow:#fbbc05;--cert-google-green:#34a853;--cert-anthropic:#c96442;--cert-openai:#fff;--cert-microsoft:#00a4ef;--cert-aws:#f90;--resource-articles:var(--ctf-flame-blue);--resource-docs:var(--ctf-steel-slate);--resource-github:var(--ctf-carbon-black);--resource-newsletter:#7c3aed;--resource-tools:#047857}
*,:before,:after{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--mesh-light) fixed;background-color:var(--color-bg-page);color:var(--color-text-primary);font-family:var(--font-stack-body);font-size:var(--text-base);font-weight:var(--font-weight-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;min-height:100dvh;display:flex}main{flex:1}img,svg,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-stack-heading);font-weight:var(--font-weight-heading);color:var(--color-text-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:balance}h1{font-size:var(--text-display);line-height:var(--leading-display)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}p{max-width:var(--content-prose-max)}a{color:var(--color-link);text-underline-offset:.15em;text-decoration:underline}button{font:inherit}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}[data-tone=dark] :focus-visible,[data-tone=dark]:focus-visible{outline-color:var(--color-focus-ring-on-dark)}.skip-link{top:var(--space-8);left:var(--space-8);z-index:100;padding:var(--space-12) var(--space-16);background:var(--color-bg-page);color:var(--color-link);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){[data-reveal=hidden],[data-reveal-group=hidden]>*{opacity:0;translate:0 var(--reveal-distance);transition:none}[data-reveal=visible],[data-reveal-group=visible]>*{transition:opacity var(--duration-reveal) var(--ease-out), translate var(--duration-reveal) var(--ease-out)}[data-reveal-group=visible]>:nth-child(2){transition-delay:var(--reveal-stagger)}[data-reveal-group=visible]>:nth-child(3){transition-delay:calc(2 * var(--reveal-stagger))}[data-reveal-group=visible]>:nth-child(4){transition-delay:calc(3 * var(--reveal-stagger))}[data-reveal-group=visible]>:nth-child(5){transition-delay:calc(4 * var(--reveal-stagger))}[data-reveal-group=visible]>:nth-child(n+6){transition-delay:calc(5 * var(--reveal-stagger))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
