:root{--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:ui-monospace, Consolas, monospace;--c-bg:#fff;--c-text:#1a2333;--c-accent:#1d4ed8;--c-accent-hover:#1e40af;--c-muted:#5b6472;--c-block-bg:#f4f6fa;--c-border:#d9dee7;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--radius:8px;--w-text:720px;--w-rail:240px;--w-wide:1024px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--c-text);background:var(--c-bg);flex-direction:column;min-height:100vh;margin:0;font-size:16px;line-height:1.65;display:flex}h1,h2,h3{line-height:1.25}h1{margin:0 0 var(--s-4);font-size:1.75rem}h2{margin:var(--s-6) 0 var(--s-3);font-size:1.35rem}h3{margin:var(--s-5) 0 var(--s-2);font-size:1.15rem}a{color:var(--c-accent)}a:hover,a:focus{color:var(--c-accent-hover)}:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-radius:2px}img{max-width:100%;height:auto}.skip-link{z-index:10;background:var(--c-accent);color:#fff;padding:var(--s-3) var(--s-4);border-radius:0 0 var(--radius) 0;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus{color:#fff;left:0}.container,.container-wide{max-width:var(--w-text);padding:0 var(--s-4);margin:0 auto}@media (width>=1024px){.container-wide{max-width:var(--w-wide)}}main{flex:1}main.container,main.container-wide{padding-block:var(--s-5) var(--s-7)}@media (width>=1024px){main.container,main.container-wide{padding-block:var(--s-6) var(--s-8)}}.site-header{border-bottom:1px solid var(--c-border);padding:var(--s-3) 0}.site-header .logo{letter-spacing:.02em;color:var(--c-text);font-size:1.25rem;font-weight:700;text-decoration:none}.site-nav ul{gap:var(--s-1) var(--s-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:var(--c-text);padding:var(--s-2) 0;text-decoration:none;display:inline-block}.site-nav a:hover,.site-nav a:focus{color:var(--c-accent);text-decoration:underline}.nav-toggle{display:none}@media (width<=767.98px){.nav-toggle{display:block}.nav-toggle summary{cursor:pointer;padding:var(--s-2) var(--s-3);border:1px solid var(--c-border);border-radius:var(--radius);min-height:44px;font-size:1rem;list-style:none;display:inline-block}.nav-toggle summary::-webkit-details-marker{display:none}.nav-toggle summary:after{content:" ▾"}.nav-toggle[open] summary{background:var(--c-block-bg)}.nav-toggle[open] summary:after{content:" ▴"}.nav-toggle .site-nav{margin-top:var(--s-2);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-block-bg)}.nav-toggle .site-nav ul{padding:var(--s-1) 0;flex-direction:column;gap:0}.nav-toggle .site-nav li+li{border-top:1px solid var(--c-border)}.nav-toggle .site-nav a{padding:var(--s-3) var(--s-4);display:block}.desktop-nav{display:none}.site-header .header-row{justify-content:space-between;align-items:flex-start;gap:var(--s-4);display:flex}}@media (width>=768px){body{font-size:17px}h1{font-size:2.25rem}.site-header .header-row{justify-content:space-between;align-items:baseline;gap:var(--s-4);display:flex}.site-header .logo{font-size:1.375rem}.desktop-nav a{color:var(--c-muted);font-size:.9375rem}.desktop-nav ul{gap:var(--s-1) var(--s-6)}.desktop-nav a:hover,.desktop-nav a:focus{color:var(--c-accent)}}.site-nav a[aria-current=page]{color:var(--c-text);box-shadow:inset 0 -2px 0 var(--c-accent);font-weight:600}@media (width<=767.98px){.nav-toggle .site-nav a[aria-current=page]{box-shadow:inset 3px 0 0 var(--c-accent);background:#fff}}.breadcrumbs{color:var(--c-muted);margin:0 0 var(--s-3);font-size:.85rem}.breadcrumbs a{color:var(--c-muted)}.breadcrumbs a:hover,.breadcrumbs a:focus{color:var(--c-accent)}.breadcrumbs .sep{padding:0 var(--s-1)}.article-meta{color:var(--c-muted);margin:0 0 var(--s-5);font-size:.875rem}.entry-content{overflow-wrap:break-word}@media (width>=768px){.article-body{font-size:1.25rem}.article-body table,.article-body .article-meta,.article-body .breadcrumbs{font-size:1rem}.article-body .breadcrumbs{font-size:.85rem}}.article-grid{grid-template-columns:minmax(0, var(--w-text));justify-content:center;gap:var(--s-7);display:grid}@media (width>=1024px){.article-grid{grid-template-columns:minmax(0, var(--w-text)) var(--w-rail);justify-content:start;gap:var(--s-6)}}.article-rail{display:none}@media (width>=1024px){.article-rail{top:var(--s-5);align-self:start;display:block;position:sticky}}@supports (animation-timeline:view()){.toc a{padding:var(--s-1) var(--s-2);border-left:4px solid #0000;border-radius:0 4px 4px 0;margin-left:-12px;animation:linear toc-here;animation-range:cover;display:block}@keyframes toc-here{0%,to{color:var(--c-accent);border-left-color:var(--c-accent);background:var(--c-block-bg)}}}.rail-card{border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-4);margin:0 0 var(--s-4);font-size:.9375rem}.btn-block{text-align:center;display:block}.rail-card h2{text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted);margin:0 0 var(--s-3);font-size:.8125rem}.rail-card .btn{text-align:center;padding:10px var(--s-3);display:block}.toc{max-height:calc(100vh - 220px);margin:0;padding:0;list-style:none;overflow-y:auto}.toc li{margin:0 0 var(--s-2);line-height:1.35}.toc a{color:var(--c-text);text-decoration:none}.toc a:hover,.toc a:focus{color:var(--c-accent);text-decoration:underline}.table-scroll{margin:0 0 var(--s-5);background:linear-gradient(to right, var(--c-bg) 30%, #fff0) left center, linear-gradient(to left, var(--c-bg) 30%, #fff0) right center, radial-gradient(farthest-side at 0 50%, #1a23334d, #fff0) left center, radial-gradient(farthest-side at 100% 50%, #1a23334d, #fff0) right center;background-repeat:no-repeat;background-size:40px 100%,40px 100%,22px 100%,22px 100%;background-attachment:local,local,scroll,scroll;position:relative;overflow-x:auto}table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.table-scroll table{width:auto;min-width:100%;max-width:none;display:table;overflow-x:visible}th,td{border:1px solid var(--c-border);padding:var(--s-2) var(--s-3);text-align:left}pre{background:var(--c-block-bg);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-3);font-family:var(--font-mono);overflow-x:auto}blockquote{margin:var(--s-4) 0;padding:var(--s-1) var(--s-4);border-left:3px solid var(--c-border);color:var(--c-muted)}ul,ol{padding-left:1.5rem}.entry-content p,.entry-content ul,.entry-content ol{margin:0 0 var(--s-5)}.sample-block{background:var(--c-block-bg);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-4) var(--s-4) var(--s-4) calc(var(--s-4) + 1.6em);text-indent:-1.6em;margin:var(--s-5) 0;font-family:var(--font-mono);font-size:.9rem;overflow-x:auto}.faq details{border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-block-bg);padding:0 var(--s-4);margin:0 0 var(--s-2)}.faq summary{cursor:pointer;padding:var(--s-3) 0;font-weight:600}.download-block{background:var(--c-block-bg);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-4);margin:0 0 var(--s-5);gap:var(--s-4);align-items:flex-start;display:flex}.download-block .dl-icon{color:var(--c-accent);flex:none}.download-block h2,.download-block .dl-title{margin:0 0 var(--s-1);font-size:1.15rem;font-weight:700}.download-block .dl-sub{margin:0 0 var(--s-3);color:var(--c-text);font-size:1rem}.dl-buttons{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.btn{min-height:44px;padding:10px var(--s-5);border-radius:var(--radius);border:1px solid var(--c-accent);font-weight:600;text-decoration:none;display:inline-block}.btn-primary{background:var(--c-accent);color:#fff}.btn-primary:hover,.btn-primary:focus{background:var(--c-accent-hover);color:#fff}.btn-outline{color:var(--c-accent);background:0 0}.dl-size{color:var(--c-muted);font-size:.8rem}.eyebrow{background:var(--c-accent);color:#fff;letter-spacing:.02em;padding:var(--s-1) var(--s-3);margin:0 0 var(--s-3);border-radius:999px;font-size:.8125rem;font-weight:600;display:inline-block}.lead{max-width:62ch;margin:0 0 var(--s-6);font-size:1.1875rem;line-height:1.55}.ad-slot{margin:var(--s-6) 0}.ad-slot .ad-label{letter-spacing:.05em;text-transform:uppercase;color:var(--c-muted);margin-bottom:var(--s-1);visibility:hidden;font-size:.7rem;display:block}.ad-slot:has(ins[data-ad-status=filled]) .ad-label{visibility:visible}.ad-slot:has(ins[data-ad-status=unfilled]){display:none}.card-grid{margin:var(--s-4) 0;gap:var(--s-3);grid-template-columns:1fr;padding:0;list-style:none;display:grid}@media (width>=600px){.card-grid{gap:var(--s-4);grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.card-grid{gap:var(--s-5)}}.hub-grid{margin:var(--s-4) 0 var(--s-7);gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(178px,1fr));padding:0;list-style:none;display:grid}@media (width>=1024px){.card-grid.grid-4{grid-template-columns:repeat(4,1fr)}}.card{border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-4)}.card .card-title{font-weight:600;text-decoration:none;display:inline-block}.card .card-title:hover,.card .card-title:focus{text-decoration:underline}.card p{margin:var(--s-1) 0 0;color:var(--c-muted);font-size:.9rem}.card .hub-icon{color:var(--c-accent);margin-bottom:var(--s-2);display:block}.badge{color:var(--c-accent);border:1px solid var(--c-accent);padding:0 var(--s-2);margin-left:var(--s-2);vertical-align:middle;border-radius:999px;font-size:.75rem;font-weight:600;display:inline-block}.post-list{padding:0;list-style:none}.post-list li{margin:0 0 var(--s-3)}.related{margin-top:var(--s-6);border-top:1px solid var(--c-border);padding-top:var(--s-4)}.hub-top{gap:var(--s-5);grid-template-columns:1fr;display:grid}@media (width>=1024px){.hub-top{grid-template-columns:minmax(0, 1fr) var(--w-rail);gap:var(--s-6);align-items:start}.hub-top .lead{max-width:none}}.hub-facts{border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--s-4);font-size:.9375rem}.hub-facts h2{text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted);margin:0 0 var(--s-3);font-size:.8125rem}.hub-facts ul{margin:0;padding:0;list-style:none}.hub-facts li{margin:0 0 var(--s-2)}.hub-facts li:last-child{margin-bottom:0}.hub-aside .ad-slot{margin:var(--s-4) 0 0}.prose-cols{margin-top:var(--s-5)}@media (width>=900px){.prose-cols{column-count:2;column-gap:var(--s-8)}.prose-cols p{margin-top:0}}.site-footer{background:var(--c-block-bg);border-top:1px solid var(--c-border);padding:var(--s-6) 0 var(--s-5);color:var(--c-muted);margin-top:var(--s-6);font-size:.875rem}.footer-cols{gap:var(--s-5);grid-template-columns:1fr;display:grid}@media (width>=600px){.footer-cols{gap:var(--s-6);grid-template-columns:1.4fr 1fr 1fr}}@media (width>=1024px){.footer-cols{gap:var(--s-7);grid-template-columns:1.6fr 1fr 1fr}}.footer-brand .logo{letter-spacing:.02em;color:var(--c-text);margin-bottom:var(--s-2);font-size:1.125rem;font-weight:700;text-decoration:none;display:inline-block}.footer-brand p{margin:0 0 var(--s-3);max-width:34ch}.site-footer h2{text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--s-3);color:var(--c-text);font-size:.8125rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:0 0 var(--s-2)}.site-footer a{color:var(--c-muted)}.site-footer a:hover,.site-footer a:focus{color:var(--c-accent)}.footer-bottom{border-top:1px solid var(--c-border);margin-top:var(--s-5);padding-top:var(--s-4)}.footer-bottom p{margin:0}.download-block.has-preview{align-items:center}.download-block .tpl-preview{width:156px}@media (width<=400px){.download-block .tpl-preview{width:88px}}.card.has-preview{gap:var(--s-4);align-items:flex-start;display:flex}.card.has-preview .tpl-preview{width:100px}@media (width>=1024px){.card.has-preview .tpl-preview{width:140px}}.card .card-body{min-width:0}.card.card-stack{display:block}.card.card-stack .tpl-preview{width:100%;max-width:160px;margin:0 0 var(--s-3)}@media print{.site-header,.site-footer,.ad-slot,.related,.article-rail,.breadcrumbs,.skip-link{display:none!important}body{color:#000;background:#fff;font-size:11pt}main.container,main.container-wide,.container,.container-wide{max-width:none;padding:0}.article-grid{display:block}h1{font-size:20pt}h2{break-after:avoid;page-break-after:avoid;font-size:14pt}h3{break-after:avoid;page-break-after:avoid}.sample-block,.download-block,.faq details,table,figure{break-inside:avoid;page-break-inside:avoid}.sample-block,.download-block{background:0 0;border:1pt solid #999}.btn,.btn-primary{border:1pt solid #000;color:#000!important;background:0 0!important}.faq details{background:0 0}.faq details>:not(summary){display:revert}a{color:#000;text-decoration:underline}.entry-content a[href^=\/]:after{content:" (all-docs.net" attr(href) ")";color:#444;font-size:9pt}.entry-content a[href^=http]:after{content:" (" attr(href) ")";color:#444;font-size:9pt}}
