*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(64px + 1rem)}body{min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{background:none;border:none;cursor:pointer}body{font-family:"Roboto Flex","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;font-weight:400;color:var(--color-body);background-color:var(--bg-page)}:root{--color-primary: #128989;--color-primary-hover: #148d8d;--color-secondary: #2D3F7E;--color-secondary-hover: #354780;--color-tertiary: #D0CBC8;--color-headline: #3C3E44;--color-body: #6F7584;--color-muted: #9CA3AF;--color-error: #E25D5E;--color-success: #85BA4C;--color-warning: #F0AD4E;--color-info: #00B9BD;--bg-page: #FDFCFC;--bg-sidebar: #F3F2F1;--bg-card: #fff;--bg-code: #F5F5F5;--bg-hover: #E3E0DE;--bg-version-dropdown: #E6E4E2;--color-sidebar-link: #3C3E44;--color-sidebar-icon: #8A7F84;--border-color: #E5E7EB;--shadow: 0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--code-bg: #F5F5F5;--code-text: #3C3E44;color-scheme:light}[data-theme="dark"]{--color-primary: #1BB9B9;--color-primary-hover: #199b9b;--color-secondary: #5371DF;--color-secondary-hover: #3a4f8e;--color-headline: #FAFAFA;--color-body: #B8BCC8;--color-muted: #8B8F9A;--bg-page: #2D2E31;--bg-sidebar: #28292C;--bg-card: #3A3B3F;--bg-code: #1E1F22;--bg-hover: rgba(255, 255, 255, 0.06);--bg-version-dropdown: #3A3B3F;--color-sidebar-link: #B8BCC8;--color-sidebar-icon: #9CA3AF;--border-color: #404145;--shadow: 0 4px 6px -1px rgba(0,0,0,0.4),0 2px 4px -1px rgba(0,0,0,0.3);--code-bg: #1E1F22;--code-text: #E5E7EB;color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--color-primary: #1BB9B9;--color-primary-hover: #199b9b;--color-secondary: #5371DF;--color-secondary-hover: #3a4f8e;--color-headline: #FAFAFA;--color-body: #B8BCC8;--color-muted: #8B8F9A;--bg-page: #2D2E31;--bg-sidebar: #28292C;--bg-card: #3A3B3F;--bg-code: #1E1F22;--bg-hover: rgba(255, 255, 255, 0.06);--bg-version-dropdown: #3A3B3F;--color-sidebar-link: #B8BCC8;--color-sidebar-icon: #9CA3AF;--border-color: #404145;--shadow: 0 4px 6px -1px rgba(0,0,0,0.4),0 2px 4px -1px rgba(0,0,0,0.3);--code-bg: #1E1F22;--code-text: #E5E7EB;color-scheme:dark}}h1,h2,h3,h4,h5,h6{font-family:"Roboto Flex","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:500;color:var(--color-headline);line-height:1.25;margin-bottom:1rem}h1{font-size:clamp(1.875rem, 5vw, 2.25rem);font-weight:600;letter-spacing:-0.02em}h2{font-size:clamp(1.5rem, 4vw, 1.875rem);margin-top:3rem;padding-bottom:0;margin-bottom:1rem}h3{font-size:1.25rem;margin-top:2.5rem}h4{font-size:1.125rem;margin-top:2rem}h5{font-size:1rem;margin-top:1.5rem}h6{font-size:.875rem;margin-top:1rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-muted)}h2,h3,h4,h5,h6{position:relative}h2:hover .heading-anchor,h3:hover .heading-anchor,h4:hover .heading-anchor,h5:hover .heading-anchor,h6:hover .heading-anchor{opacity:1}.heading-anchor{position:absolute;left:-1.5rem;color:var(--color-muted);font-weight:400;opacity:0;transition:opacity 150ms ease}.heading-anchor:hover{color:var(--color-primary)}p{margin-bottom:1rem}a{color:var(--color-primary);text-decoration:none;transition:color 150ms ease}a:hover{color:var(--color-primary-hover);text-decoration:underline}strong,b{font-weight:600;color:var(--color-headline)}em,i{font-style:italic}small{font-size:.875rem}::selection{background-color:rgba(18,137,137,0.2);color:inherit}[data-theme="dark"] ::selection{background-color:rgba(27,185,185,0.3)}.content{line-height:1.625}.content p{margin-bottom:1.25rem}.content ul,.content ol{margin-bottom:1.25rem;padding-left:1.5rem}.content ul{list-style-type:disc}.content ul ul{list-style-type:circle;margin-top:.5rem;margin-bottom:.5rem}.content ul ul ul{list-style-type:square}.content ol{list-style-type:decimal}.content ol ol{list-style-type:lower-alpha;margin-top:.5rem;margin-bottom:.5rem}.content ol ol ol{list-style-type:lower-roman}.content li{margin-bottom:.5rem}.content li::marker{color:var(--color-primary)}.content li>ul,.content li>ol{margin-top:.5rem}.content blockquote{margin:1.5rem 0;padding:1rem 1.5rem;border-left:4px solid var(--color-primary);background-color:var(--bg-hover);border-radius:0 .375rem .375rem 0}.content blockquote p:last-child{margin-bottom:0}.content blockquote cite{display:block;margin-top:.75rem;font-size:.875rem;color:var(--color-muted)}.content blockquote cite::before{content:"— "}.content hr{margin:3rem 0;border:none}.content img{margin:1.5rem 0;border-radius:.5rem;box-shadow:var(--shadow)}.content figure{margin:2rem 0}.content figure img{margin:0}.content figure figcaption{margin-top:.75rem;font-size:.875rem;color:var(--color-muted);text-align:center}.content code:not([class*="language-"]){padding:0.2em 0.4em;font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;font-size:0.875em;background-color:var(--bg-code);border-radius:.25rem;color:var(--color-primary);word-break:break-word}.content kbd{display:inline-block;padding:0.2em 0.5em;font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;font-size:0.875em;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:.25rem;box-shadow:0 2px 0 var(--border-color)}.content mark{padding:0.1em 0.3em;background-color:rgba(240,173,78,0.3);border-radius:.25rem}.content abbr[title]{text-decoration:underline dotted;cursor:help}.content sup,.content sub{font-size:0.75em}.content table{width:100%;margin:1.5rem 0;border-collapse:collapse;font-size:.875rem}.content table th,.content table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.content table th{font-weight:500;color:var(--color-headline);background-color:var(--bg-hover)}.content table tr:hover td{background-color:var(--bg-hover)}.content table.table-responsive{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrapper{overflow-x:auto;margin:1.5rem 0;border-radius:.5rem;border:1px solid var(--border-color)}.table-wrapper table{margin:0}.table-wrapper table th:first-child,.table-wrapper table td:first-child{padding-left:1.25rem}.table-wrapper table th:last-child,.table-wrapper table td:last-child{padding-right:1.25rem}.content dl{margin:1.5rem 0}.content dl dt{font-weight:500;color:var(--color-headline);margin-top:1rem}.content dl dt:first-child{margin-top:0}.content dl dd{margin-left:1.5rem;margin-top:.5rem;color:var(--color-body)}.content details{margin:1.25rem 0;padding:1rem;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem}.content details summary{cursor:pointer;font-weight:500;color:var(--color-headline);padding:.5rem 0}.content details summary:hover{color:var(--color-primary)}.content details summary::marker{color:var(--color-primary)}.content details[open] summary{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.footnotes{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-color);font-size:.875rem}.footnotes ol{padding-left:1.25rem}.footnotes li{margin-bottom:.75rem}.footnote-ref{font-size:.75rem;vertical-align:super}.footnote-ref::before{content:"["}.footnote-ref::after{content:"]"}.footnote-backref{margin-left:.5rem}.highlight,pre.highlight,div.highlighter-rouge{position:relative;margin:1.5rem 0;border-radius:.5rem;overflow:hidden}pre{margin:0;padding:1.25rem;overflow-x:auto;font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;font-size:.875rem;line-height:1.625;background-color:var(--code-bg);color:var(--code-text);-webkit-overflow-scrolling:touch}pre code{display:block;padding:0;background:none;border-radius:0;color:inherit;font-size:inherit}div.highlighter-rouge::before{content:attr(data-lang);position:absolute;top:0;right:3rem;padding:.25rem .75rem;font-family:"Roboto Flex","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-muted);background-color:var(--bg-hover);border-radius:0 0 .25rem .25rem;z-index:1}.code-copy-btn{position:absolute;top:.5rem;right:.5rem;z-index:2;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background-color:var(--bg-hover);border:1px solid var(--border-color);border-radius:.375rem;color:var(--color-muted);cursor:pointer;opacity:0.85;transition:opacity 150ms ease,background-color 150ms ease,color 150ms ease,border-color 150ms ease}.code-copy-btn svg{width:18px;height:18px}.code-copy-btn:hover{opacity:1;background-color:var(--color-primary);border-color:var(--color-primary);color:white}.code-copy-btn.copied{background-color:var(--color-success);border-color:var(--color-success);color:white}.highlight .lineno,.rouge-gutter{padding-right:1rem;color:var(--color-muted);border-right:1px solid var(--border-color);user-select:none}.rouge-code{padding-left:1rem}:root{--syntax-comment: #6A737D;--syntax-keyword: #2D3F7E;--syntax-string: #85BA4C;--syntax-number: #D19A66;--syntax-function: #128989;--syntax-variable: #E06C75;--syntax-operator: #56B6C2;--syntax-class: #E5C07B;--syntax-attribute: #D19A66;--syntax-tag: #E06C75;--syntax-constant: #D19A66;--syntax-symbol: #61AFEF;--syntax-regex: #98C379;--syntax-inserted: #85BA4C;--syntax-deleted: #E25D5E}[data-theme="dark"]{--syntax-comment: #5C6370;--syntax-keyword: #C678DD;--syntax-string: #98C379;--syntax-number: #D19A66;--syntax-function: #61AFEF;--syntax-variable: #E06C75;--syntax-operator: #56B6C2;--syntax-class: #E5C07B;--syntax-attribute: #D19A66;--syntax-tag: #E06C75;--syntax-constant: #D19A66;--syntax-symbol: #61AFEF;--syntax-regex: #98C379;--syntax-inserted: #98C379;--syntax-deleted: #E06C75}.highlight .c,.highlight .c1,.highlight .cm,.highlight .cs,.highlight .cd{color:var(--syntax-comment);font-style:italic}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt,.highlight .kv{color:var(--syntax-keyword);font-weight:500}.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .ss{color:var(--syntax-string)}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .mx,.highlight .il{color:var(--syntax-number)}.highlight .nf,.highlight .fm,.highlight .nb,.highlight .nc{color:var(--syntax-function)}.highlight .nv,.highlight .vi,.highlight .vg,.highlight .vc,.highlight .vm{color:var(--syntax-variable)}.highlight .o,.highlight .ow{color:var(--syntax-operator)}.highlight .nc,.highlight .nn,.highlight .no{color:var(--syntax-class)}.highlight .na,.highlight .nd{color:var(--syntax-attribute)}.highlight .nt{color:var(--syntax-tag)}.highlight .bp,.highlight .ne{color:var(--syntax-constant)}.highlight .nl,.highlight .py{color:var(--syntax-symbol)}.highlight .sr{color:var(--syntax-regex)}.highlight .ge{font-style:italic}.highlight .gs{font-weight:700}.highlight .gd{color:var(--syntax-deleted);background-color:rgba(226,93,94,0.1)}.highlight .gi{color:var(--syntax-inserted);background-color:rgba(133,186,76,0.1)}.highlight .err{color:var(--syntax-deleted);background-color:rgba(226,93,94,0.1)}.highlight .p,.highlight .pi{color:var(--code-text)}.highlight .n,.highlight .ni{color:var(--code-text)}.language-hcl .na,.language-terraform .na,.language-tf .na{color:var(--syntax-attribute)}.language-hcl .s,.language-hcl .s2,.language-terraform .s,.language-terraform .s2,.language-tf .s,.language-tf .s2{color:var(--syntax-string)}.language-yaml .na,.language-yml .na{color:var(--syntax-keyword)}.language-yaml .s,.language-yml .s{color:var(--syntax-string)}.language-bash .nb,.language-shell .nb,.language-sh .nb{color:var(--syntax-function)}.language-bash .nv,.language-shell .nv,.language-sh .nv{color:var(--syntax-variable)}.language-json .nl{color:var(--syntax-attribute)}.language-json .s2{color:var(--syntax-string)}.language-diff .gd{display:block;padding:0 1rem;margin:0 -1.25rem;background-color:rgba(226,93,94,0.15)}.language-diff .gd::before{content:"- ";color:var(--syntax-deleted)}.language-diff .gi{display:block;padding:0 1rem;margin:0 -1.25rem;background-color:rgba(133,186,76,0.15)}.language-diff .gi::before{content:"+ ";color:var(--syntax-inserted)}.code-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background-color:var(--bg-hover);border-bottom:1px solid var(--border-color);font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;font-size:.75rem}.code-header .filename{display:flex;align-items:center;gap:.5rem;color:var(--color-muted)}.code-header .filename svg{width:14px;height:14px}.code-header .language{text-transform:uppercase;letter-spacing:0.05em;color:var(--color-muted)}.code-block{border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.code-block .highlight,.code-block div.highlighter-rouge{margin:0;border-radius:0}.code-block pre{border-radius:0}.site-header{position:fixed;top:0;left:0;right:0;z-index:300;height:64px;border-bottom:1px solid var(--border-color);backdrop-filter:blur(12px);background-color:var(--bg-sidebar)}[data-theme="dark"] .site-header{background-color:rgba(40,41,44,0.95)}.header-container{display:flex;align-items:center;justify-content:space-between;height:100%;width:100%;padding:0 1.5rem}.header-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.header-logo a{display:flex;align-items:center}.header-logo a:hover{text-decoration:none}.header-logo img,.header-logo svg{height:32px;width:auto}.header-logo .logo-full.logo-dark-mode{display:none !important}.header-logo .logo-full.logo-light-mode{display:none}@media (min-width: 768px){.header-logo .logo-full.logo-light-mode{display:block !important}}html[data-theme="dark"] .header-logo .logo-full.logo-light-mode{display:none !important}html[data-theme="dark"] .header-logo .logo-full.logo-dark-mode{display:none}@media (min-width: 768px){html[data-theme="dark"] .header-logo .logo-full.logo-dark-mode{display:block !important}}.header-logo .logo-mark.logo-dark-mode{display:none !important}.header-logo .logo-mark.logo-light-mode{display:block}@media (min-width: 768px){.header-logo .logo-mark.logo-light-mode{display:none !important}}html[data-theme="dark"] .header-logo .logo-mark.logo-light-mode{display:none !important}html[data-theme="dark"] .header-logo .logo-mark.logo-dark-mode{display:block !important}@media (min-width: 768px){html[data-theme="dark"] .header-logo .logo-mark.logo-dark-mode{display:none !important}}.header-nav{display:flex;align-items:center;gap:.5rem}.header-nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;color:var(--color-headline);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.header-nav-link svg{width:18px;height:18px;color:var(--color-headline)}.header-nav-link:hover{color:var(--color-headline);background-color:var(--bg-hover);text-decoration:none}.header-nav-link span{display:none}@media (min-width: 768px){.header-nav-link span{display:inline}}.search-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-headline);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.search-toggle svg{width:20px;height:20px}.search-toggle:hover{color:var(--color-headline);background-color:var(--bg-hover)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-headline);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.theme-toggle svg{width:20px;height:20px}.theme-toggle:hover{color:var(--color-headline);background-color:var(--bg-hover)}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon{display:block}[data-theme="dark"] .theme-toggle .icon-sun{display:block}[data-theme="dark"] .theme-toggle .icon-moon{display:none}.version-selector{position:relative}.version-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;color:var(--color-headline);background-color:var(--bg-version-dropdown);border:1px solid var(--border-color);border-radius:.375rem;cursor:pointer;transition:border-color 150ms ease}.version-toggle svg{width:16px;height:16px;transition:transform 150ms ease}.version-toggle:hover{border-color:var(--color-primary)}.version-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}.version-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:150px;padding:.5rem;background-color:var(--bg-version-dropdown);border:1px solid var(--border-color);border-radius:.5rem;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity 150ms ease,visibility 150ms ease,transform 150ms ease}.version-dropdown.is-open{opacity:1;visibility:visible;transform:translateY(0)}.version-option{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;color:var(--color-headline);text-align:left;border-radius:.375rem;transition:background-color 150ms ease,color 150ms ease}.version-option:hover{background-color:var(--bg-hover);color:var(--color-headline);text-decoration:none}.version-option.is-current{color:var(--color-primary);font-weight:500}.version-option.is-current::after{content:" ✓"}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-headline);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}@media (min-width: 1024px){.mobile-menu-toggle{display:none}}.mobile-menu-toggle svg{width:24px;height:24px}.mobile-menu-toggle:hover{color:var(--color-headline);background-color:var(--bg-hover)}.mobile-menu-toggle .icon-close{display:none}.mobile-menu-toggle[aria-expanded="true"] .icon-menu{display:none}.mobile-menu-toggle[aria-expanded="true"] .icon-close{display:block}.header-separator{width:1px;height:24px;background-color:var(--border-color);margin:0 .5rem}.sidebar{position:fixed;top:64px;left:0;bottom:0;width:280px;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);overflow-y:auto;overflow-x:hidden;z-index:200;transform:translateX(-100%);transition:transform 200ms ease}@media (min-width: 1024px){.sidebar{transform:translateX(0)}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background-color:var(--color-muted)}.sidebar.is-open{transform:translateX(0)}.sidebar-overlay{position:fixed;inset:0;top:64px;background-color:rgba(0,0,0,0.5);z-index:199;opacity:0;visibility:hidden;transition:opacity 200ms ease,visibility 200ms ease}@media (min-width: 1024px){.sidebar-overlay{display:none}}.sidebar-overlay.is-visible{opacity:1;visibility:visible}.sidebar-content{padding:1.5rem 1.25rem}.nav-group{margin-bottom:1.5rem}.nav-group:last-child{margin-bottom:0}.nav-group-title{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-sidebar-icon);margin-bottom:.5rem}.nav-items{list-style:none;padding:0;margin:0}.nav-item{margin-bottom:.25rem}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.875rem;color:var(--color-sidebar-link);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.nav-link svg{width:18px;height:18px;flex-shrink:0;color:var(--color-sidebar-icon);transition:color 150ms ease}.nav-link:hover{color:var(--color-headline);background-color:var(--bg-hover);text-decoration:none}.nav-link:hover svg{color:var(--color-headline)}.nav-link.is-active{color:var(--color-headline);background-color:var(--bg-hover);font-weight:500}.nav-link.is-active svg{color:var(--color-headline)}.nav-subitems{list-style:none;padding:0;margin:0;padding-left:1.5rem;margin-top:.25rem}.nav-subitem{margin-bottom:.25rem}.nav-sublink{display:flex;align-items:center;padding:.25rem .75rem;font-size:.875rem;color:var(--color-sidebar-link);border-left:2px solid var(--border-color);transition:color 150ms ease,border-color 150ms ease}.nav-sublink:hover{color:var(--color-headline);border-color:var(--color-primary);text-decoration:none}.nav-sublink.is-active{color:var(--color-headline);border-color:var(--color-primary);font-weight:500}.nav-collapsible .nav-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .75rem;font-size:.875rem;color:var(--color-sidebar-link);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.nav-collapsible .nav-toggle:hover{color:var(--color-headline);background-color:var(--bg-hover)}.nav-collapsible .nav-toggle svg.toggle-icon{width:16px;height:16px;transition:transform 150ms ease}.nav-collapsible.is-expanded .nav-toggle svg.toggle-icon{transform:rotate(90deg)}.nav-collapsible .nav-collapsible-content{display:none;padding-top:.25rem}.nav-collapsible.is-expanded .nav-collapsible-content{display:block}.sidebar-footer{padding:1rem 1.25rem;margin-top:1.5rem;border-top:1px solid var(--border-color)}.sidebar-footer-links{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem}.sidebar-footer-links a{color:var(--color-sidebar-link)}.sidebar-footer-links a:hover{color:var(--color-headline)}.nav-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;line-height:1;border-radius:9999px;margin-left:auto}.nav-badge--new{background-color:rgba(18,137,137,0.15);color:var(--color-primary)}.nav-badge--beta{background-color:rgba(240,173,78,0.15);color:#F0AD4E}.nav-badge--deprecated{background-color:rgba(226,93,94,0.15);color:#E25D5E}.toc{position:sticky;top:calc(64px + 1.5rem);max-height:calc(100vh - 64px - 3rem);overflow-y:auto;padding-left:1.5rem;display:none}@media (min-width: 1280px){.toc{display:block}}.toc::-webkit-scrollbar{width:4px}.toc::-webkit-scrollbar-track{background:transparent}.toc::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:2px}.toc-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-muted);margin-bottom:1rem;padding-left:.75rem}.toc-list{list-style:none;padding:0;margin:0;border-left:1px solid var(--border-color)}.toc-item{margin-bottom:.25rem}.toc-link{display:block;padding:.5rem .75rem;font-size:.875rem;color:var(--color-body);border-left:2px solid transparent;margin-left:-1px;transition:color 150ms ease,border-color 150ms ease}.toc-link:hover{color:var(--color-headline);text-decoration:none}.toc-link.is-active{color:var(--color-primary);border-left-color:var(--color-primary);font-weight:500}.toc-list--nested{border-left:none;padding-left:.75rem}.toc-list--nested .toc-link{font-size:.75rem;padding:.25rem .75rem;color:var(--color-muted);border-left:none}.toc-list--nested .toc-link:hover{color:var(--color-body)}.toc-list--nested .toc-link.is-active{color:var(--color-primary)}.toc-wrapper{width:240px;flex-shrink:0}@media (max-width: 1279px){.toc-wrapper{width:0;min-width:0;overflow:hidden;padding:0;margin:0}}.toc-inline{display:block;margin:1.5rem 0;padding:1.25rem;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem}@media (min-width: 1280px){.toc-inline{display:none}}.toc-inline .toc-inline-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--color-headline);margin-bottom:1rem}.toc-inline .toc-inline-title svg{width:18px;height:18px;color:var(--color-primary)}.toc-inline .toc-inline-list{list-style:none;padding:0;margin:0;columns:2;column-gap:1.5rem}@media (max-width: 640px){.toc-inline .toc-inline-list{columns:1}}.toc-inline .toc-inline-item{break-inside:avoid;margin-bottom:.5rem}.toc-inline .toc-inline-link{display:block;font-size:.875rem;color:var(--color-body)}.toc-inline .toc-inline-link:hover{color:var(--color-primary);text-decoration:none}.toc-progress{position:absolute;left:0;width:2px;background-color:var(--color-primary);transition:top 150ms ease,height 150ms ease;border-radius:1px}.search-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,0.6);z-index:400;opacity:0;visibility:hidden;transition:opacity 200ms ease,visibility 200ms ease}.search-overlay.is-open{opacity:1;visibility:visible}.search-modal{position:fixed;top:15%;left:50%;transform:translateX(-50%) translateY(-10px);width:90%;max-width:640px;max-height:70vh;background-color:var(--bg-card);border-radius:.75rem;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);z-index:500;opacity:0;visibility:hidden;transition:opacity 200ms ease,visibility 200ms ease,transform 200ms ease;display:flex;flex-direction:column;overflow:hidden}.search-modal.is-open{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.search-header{display:flex;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.search-icon{width:20px;height:20px;color:var(--color-muted);flex-shrink:0}.search-input{flex:1;border:none;background:none;padding:.5rem 1rem;font-size:1.125rem;color:var(--color-headline);outline:none}.search-input::placeholder{color:var(--color-muted)}.search-shortcut{display:none;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;color:var(--color-muted);background-color:var(--bg-hover);border-radius:.25rem}@media (min-width: 768px){.search-shortcut{display:flex}}.search-results{flex:1;overflow-y:auto;padding:.75rem}.search-results::-webkit-scrollbar{width:8px}.search-results::-webkit-scrollbar-track{background:transparent}.search-results::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:4px}.search-empty{padding:2.5rem 1.5rem;text-align:center;color:var(--color-muted)}.search-empty svg{width:48px;height:48px;margin:0 auto 1rem;opacity:0.5}.search-empty p{margin:0}.search-loading{padding:2.5rem 1.5rem;text-align:center}.search-loading .spinner{width:32px;height:32px;margin:0 auto 1rem;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.search-group{margin-bottom:1rem}.search-group:last-child{margin-bottom:0}.search-group-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-muted);padding:.5rem .75rem}.search-result{display:block;padding:.75rem 1rem;border-radius:.5rem;transition:background-color 150ms ease}.search-result:hover,.search-result.is-selected{background-color:var(--bg-hover);text-decoration:none}.search-result.is-selected{background-color:rgba(18,137,137,0.1)}.search-result-title{font-size:.875rem;font-weight:500;color:var(--color-headline);margin-bottom:.25rem}.search-result-title mark{background-color:rgba(18,137,137,0.3);color:inherit;border-radius:2px}.search-result-path{font-size:.75rem;color:var(--color-muted);margin-bottom:.5rem}.search-result-excerpt{font-size:.875rem;color:var(--color-body);line-height:1.625}.search-result-excerpt mark{background-color:rgba(240,173,78,0.3);color:inherit;border-radius:2px}.search-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-top:1px solid var(--border-color);font-size:.75rem;color:var(--color-muted)}.search-tips{display:flex;align-items:center;gap:1rem}.search-tips span{display:flex;align-items:center;gap:.5rem}.search-tips kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:2px 6px;font-family:"JetBrains Mono","Fira Code","SF Mono",Consolas,"Liberation Mono",monospace;font-size:10px;background-color:var(--bg-hover);border:1px solid var(--border-color);border-radius:.25rem}.search-powered-by{display:flex;align-items:center;gap:.5rem}.search-powered-by svg{height:14px;width:auto}.search-inline{position:relative}.search-inline .search-input{width:100%;padding:.75rem 1rem;padding-left:2.5rem;font-size:.875rem;background-color:var(--bg-hover);border:1px solid var(--border-color);border-radius:.5rem;transition:border-color 150ms ease,box-shadow 150ms ease}.search-inline .search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(18,137,137,0.15)}.search-inline .search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%)}.callout,blockquote[data-callout="note"],blockquote[data-callout="tip"],blockquote[data-callout="important"],blockquote[data-callout="warning"],blockquote[data-callout="caution"]{display:flex;gap:1rem;margin:1.5rem 0;padding:1.25rem;border-radius:.5rem;border-left:4px solid}.callout .callout-icon,blockquote[data-callout="note"] .callout-icon,blockquote[data-callout="tip"] .callout-icon,blockquote[data-callout="important"] .callout-icon,blockquote[data-callout="warning"] .callout-icon,blockquote[data-callout="caution"] .callout-icon{flex-shrink:0;width:24px;height:24px}.callout .callout-icon svg,blockquote[data-callout="note"] .callout-icon svg,blockquote[data-callout="tip"] .callout-icon svg,blockquote[data-callout="important"] .callout-icon svg,blockquote[data-callout="warning"] .callout-icon svg,blockquote[data-callout="caution"] .callout-icon svg{width:100%;height:100%}.callout .callout-content,blockquote[data-callout="note"] .callout-content,blockquote[data-callout="tip"] .callout-content,blockquote[data-callout="important"] .callout-content,blockquote[data-callout="warning"] .callout-content,blockquote[data-callout="caution"] .callout-content{flex:1;min-width:0}.callout .callout-content>*:last-child,blockquote[data-callout="note"] .callout-content>*:last-child,blockquote[data-callout="tip"] .callout-content>*:last-child,blockquote[data-callout="important"] .callout-content>*:last-child,blockquote[data-callout="warning"] .callout-content>*:last-child,blockquote[data-callout="caution"] .callout-content>*:last-child{margin-bottom:0}.callout .callout-title,blockquote[data-callout="note"] .callout-title,blockquote[data-callout="tip"] .callout-title,blockquote[data-callout="important"] .callout-title,blockquote[data-callout="warning"] .callout-title,blockquote[data-callout="caution"] .callout-title{font-weight:600;margin-bottom:.5rem}.callout code:not([class*="language-"]),blockquote[data-callout="note"] code:not([class*="language-"]),blockquote[data-callout="tip"] code:not([class*="language-"]),blockquote[data-callout="important"] code:not([class*="language-"]),blockquote[data-callout="warning"] code:not([class*="language-"]),blockquote[data-callout="caution"] code:not([class*="language-"]){background-color:rgba(255,255,255,0.5)}.callout a,blockquote[data-callout="note"] a,blockquote[data-callout="tip"] a,blockquote[data-callout="important"] a,blockquote[data-callout="warning"] a,blockquote[data-callout="caution"] a{text-decoration:underline}.callout a:hover,blockquote[data-callout="note"] a:hover,blockquote[data-callout="tip"] a:hover,blockquote[data-callout="important"] a:hover,blockquote[data-callout="warning"] a:hover,blockquote[data-callout="caution"] a:hover{text-decoration:none}.callout,blockquote[data-callout="note"],blockquote[data-callout="tip"],blockquote[data-callout="important"],blockquote[data-callout="warning"],blockquote[data-callout="caution"],.callout--info,blockquote[data-callout="important"]{background-color:rgba(0,185,189,0.1);border-color:#00B9BD}.callout .callout-icon,blockquote[data-callout="note"] .callout-icon,blockquote[data-callout="tip"] .callout-icon,blockquote[data-callout="important"] .callout-icon,blockquote[data-callout="warning"] .callout-icon,blockquote[data-callout="caution"] .callout-icon,.callout--info .callout-icon,blockquote[data-callout="important"] .callout-icon{color:#00B9BD}.callout .callout-title,blockquote[data-callout="note"] .callout-title,blockquote[data-callout="tip"] .callout-title,blockquote[data-callout="important"] .callout-title,blockquote[data-callout="warning"] .callout-title,blockquote[data-callout="caution"] .callout-title,.callout--info .callout-title,blockquote[data-callout="important"] .callout-title{color:#006e71}[data-theme="dark"] .callout,[data-theme="dark"] blockquote[data-callout="note"],[data-theme="dark"] blockquote[data-callout="tip"],[data-theme="dark"] blockquote[data-callout="important"],[data-theme="dark"] blockquote[data-callout="warning"],[data-theme="dark"] blockquote[data-callout="caution"],[data-theme="dark"] .callout--info,[data-theme="dark"] blockquote[data-callout="important"]{background-color:rgba(0,185,189,0.15)}[data-theme="dark"] .callout .callout-title,[data-theme="dark"] blockquote[data-callout="note"] .callout-title,[data-theme="dark"] blockquote[data-callout="tip"] .callout-title,[data-theme="dark"] blockquote[data-callout="important"] .callout-title,[data-theme="dark"] blockquote[data-callout="warning"] .callout-title,[data-theme="dark"] blockquote[data-callout="caution"] .callout-title,[data-theme="dark"] .callout--info .callout-title,[data-theme="dark"] blockquote[data-callout="important"] .callout-title{color:#00ebf0}.callout--warning,blockquote[data-callout="warning"]{background-color:rgba(240,173,78,0.1);border-color:#F0AD4E}.callout--warning .callout-icon,blockquote[data-callout="warning"] .callout-icon{color:#F0AD4E}.callout--warning .callout-title,blockquote[data-callout="warning"] .callout-title{color:#df8a13}[data-theme="dark"] .callout--warning,[data-theme="dark"] blockquote[data-callout="warning"]{background-color:rgba(240,173,78,0.15)}[data-theme="dark"] .callout--warning .callout-title,[data-theme="dark"] blockquote[data-callout="warning"] .callout-title{color:#f2b866}.callout--error,blockquote[data-callout="caution"],.callout--danger{background-color:rgba(226,93,94,0.1);border-color:#E25D5E}.callout--error .callout-icon,blockquote[data-callout="caution"] .callout-icon,.callout--danger .callout-icon{color:#E25D5E}.callout--error .callout-title,blockquote[data-callout="caution"] .callout-title,.callout--danger .callout-title{color:#da3233}[data-theme="dark"] .callout--error,[data-theme="dark"] blockquote[data-callout="caution"],[data-theme="dark"] .callout--danger{background-color:rgba(226,93,94,0.15)}[data-theme="dark"] .callout--error .callout-title,[data-theme="dark"] blockquote[data-callout="caution"] .callout-title,[data-theme="dark"] .callout--danger .callout-title{color:#ea8889}.callout--success{background-color:rgba(133,186,76,0.1);border-color:#85BA4C}.callout--success .callout-icon{color:#85BA4C}.callout--success .callout-title{color:#5e8634}[data-theme="dark"] .callout--success{background-color:rgba(133,186,76,0.15)}[data-theme="dark"] .callout--success .callout-title{color:#9ec871}.callout--tip,blockquote[data-callout="tip"]{background-color:rgba(18,137,137,0.1);border-color:#128989}.callout--tip .callout-icon,blockquote[data-callout="tip"] .callout-icon{color:#128989}.callout--tip .callout-title,blockquote[data-callout="tip"] .callout-title{color:#128989}[data-theme="dark"] .callout--tip,[data-theme="dark"] blockquote[data-callout="tip"]{background-color:rgba(27,185,185,0.15);border-color:#1BB9B9}[data-theme="dark"] .callout--tip .callout-icon,[data-theme="dark"] blockquote[data-callout="tip"] .callout-icon{color:#1BB9B9}[data-theme="dark"] .callout--tip .callout-title,[data-theme="dark"] blockquote[data-callout="tip"] .callout-title{color:#1BB9B9}.callout--note,blockquote[data-callout="note"]{background-color:var(--bg-hover);border-color:var(--border-color)}.callout--note .callout-icon,blockquote[data-callout="note"] .callout-icon{color:var(--color-muted)}.callout--note .callout-title,blockquote[data-callout="note"] .callout-title{color:var(--color-headline)}blockquote[data-callout="note"],blockquote[data-callout="tip"],blockquote[data-callout="important"],blockquote[data-callout="warning"],blockquote[data-callout="caution"]{display:block}blockquote[data-callout="note"] p:first-child,blockquote[data-callout="tip"] p:first-child,blockquote[data-callout="important"] p:first-child,blockquote[data-callout="warning"] p:first-child,blockquote[data-callout="caution"] p:first-child{display:flex;align-items:center;gap:.5rem;font-weight:600}blockquote[data-callout="note"] p:first-child::before,blockquote[data-callout="tip"] p:first-child::before,blockquote[data-callout="important"] p:first-child::before,blockquote[data-callout="warning"] p:first-child::before,blockquote[data-callout="caution"] p:first-child::before{content:"";display:inline-block;width:20px;height:20px;background-size:contain;background-repeat:no-repeat}.alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:.375rem;font-size:.875rem}.alert svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.alert--info{background-color:rgba(0,185,189,0.1);color:#005557}.alert--info svg{color:#00B9BD}.alert--success{background-color:rgba(133,186,76,0.1);color:#51732d}.alert--success svg{color:#85BA4C}.alert--warning{background-color:rgba(240,173,78,0.1);color:#b06d0f}.alert--warning svg{color:#F0AD4E}.alert--error{background-color:rgba(226,93,94,0.1);color:#ce2526}.alert--error svg{color:#E25D5E}[data-theme="dark"] .alert--info{color:#0bfaff}[data-theme="dark"] .alert--success{color:#abcf83}[data-theme="dark"] .alert--warning{color:#F0AD4E}[data-theme="dark"] .alert--error{color:#ee9e9e}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;font-family:"Roboto Flex","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.875rem;font-weight:500;line-height:1;text-align:center;white-space:nowrap;border-radius:.375rem;border:1px solid transparent;cursor:pointer;transition:all 150ms ease;text-decoration:none}.btn:hover{text-decoration:none}.btn:focus{outline:none;box-shadow:0 0 0 3px rgba(18,137,137,0.25)}.btn:disabled,.btn.is-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.btn svg{width:18px;height:18px;flex-shrink:0}.btn--primary{background-color:var(--color-primary);border-color:var(--color-primary);color:white}.btn--primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:white}.btn--primary:active{background-color:#107a7a;border-color:#107a7a;color:white}.btn--secondary{background-color:var(--color-secondary);border-color:var(--color-secondary);color:white}.btn--secondary:hover{background-color:var(--color-secondary-hover);border-color:var(--color-secondary-hover)}.btn--secondary:active{background-color:#2f3f72;border-color:#2f3f72}.btn--outline{background-color:transparent;border-color:var(--border-color);color:var(--color-headline)}.btn--outline:hover{background-color:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.btn--ghost{background-color:transparent;border-color:transparent;color:var(--color-body)}.btn--ghost:hover{background-color:var(--bg-hover);color:var(--color-headline)}.btn--link{background-color:transparent;border-color:transparent;color:var(--color-primary);padding:.5rem}.btn--link:hover{color:var(--color-primary-hover);text-decoration:underline}.btn--danger{background-color:#E25D5E;border-color:#E25D5E;color:white}.btn--danger:hover{background-color:#da3233;border-color:#da3233}.btn--danger:focus{box-shadow:0 0 0 3px rgba(226,93,94,0.25)}.btn--success{background-color:#85BA4C;border-color:#85BA4C;color:white}.btn--success:hover{background-color:#6b983b;border-color:#6b983b}.btn--success:focus{box-shadow:0 0 0 3px rgba(133,186,76,0.25)}.btn--sm{padding:.5rem .75rem;font-size:.75rem}.btn--sm svg{width:14px;height:14px}.btn--lg{padding:1rem 1.5rem;font-size:1rem}.btn--lg svg{width:20px;height:20px}.btn--icon{padding:.5rem}.btn--icon.btn--sm{padding:.25rem}.btn--icon.btn--lg{padding:.75rem}.btn--block{display:flex;width:100%}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:.375rem 0 0 .375rem}.btn-group .btn:last-child{border-radius:0 .375rem .375rem 0}.btn-group .btn:not(:first-child){margin-left:-1px}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;line-height:1;border-radius:9999px}.badge--primary{background-color:rgba(18,137,137,0.15);color:var(--color-primary)}.badge--secondary{background-color:rgba(45,63,126,0.15);color:var(--color-secondary)}.badge--success{background-color:rgba(133,186,76,0.15);color:#85BA4C}.badge--warning{background-color:rgba(240,173,78,0.15);color:#ec971f}.badge--error{background-color:rgba(226,93,94,0.15);color:#E25D5E}.badge--neutral{background-color:var(--bg-hover);color:var(--color-muted)}[data-theme="dark"] .badge--warning{color:#F0AD4E}.site-footer{margin-top:auto;padding:2rem 1.5rem;background-color:var(--bg-sidebar);border-top:1px solid var(--border-color)}@media (min-width: 1024px){.site-footer{margin-left:280px}}.footer-container{max-width:1400px;margin:0 auto}.footer-content{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 768px){.footer-content{flex-direction:row;justify-content:space-between;align-items:center}}.footer-brand{display:flex;align-items:center;gap:.75rem}.footer-brand img,.footer-brand svg{height:28px;width:auto}.footer-links{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}.footer-links a{font-size:.875rem;color:var(--color-headline)}.footer-links a:hover{color:var(--color-primary);text-decoration:none}.footer-bottom{display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid var(--border-color)}@media (min-width: 768px){.footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}}.footer-copyright{font-size:.875rem;color:var(--color-muted)}.footer-social{display:flex;gap:1rem}.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--color-sidebar-icon);border-radius:.375rem;transition:color 150ms ease,background-color 150ms ease}.footer-social a svg{width:20px;height:20px}.footer-social a:hover{color:var(--color-headline);background-color:var(--bg-hover)}.edit-page{display:inline-flex;align-items:center;gap:.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color);font-size:.875rem;color:var(--color-muted)}.edit-page svg{width:16px;height:16px}.edit-page a{color:var(--color-body)}.edit-page a:hover{color:var(--color-primary)}.page-nav{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}@media (min-width: 640px){.page-nav{grid-template-columns:1fr 1fr}}.page-nav-link{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:.5rem;transition:border-color 150ms ease,box-shadow 150ms ease}.page-nav-link:hover{border-color:var(--color-primary);box-shadow:var(--shadow);text-decoration:none}.page-nav-link--prev{align-items:flex-start}.page-nav-link--next{align-items:flex-end;text-align:right}@media (min-width: 640px){.page-nav-link--next{grid-column:2}}.page-nav-label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-muted)}.page-nav-label svg{width:14px;height:14px}.page-nav-title{font-size:1rem;font-weight:500;color:var(--color-headline)}.last-updated{margin-top:1.5rem;font-size:.875rem;color:var(--color-muted)}.last-updated time{color:var(--color-body)}.hidden{display:none !important}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}@media (max-width: 639px){.hidden-mobile{display:none !important}}@media (min-width: 640px) and (max-width: 1023px){.hidden-tablet{display:none !important}}@media (min-width: 1024px){.hidden-desktop{display:none !important}}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.mt-0{margin-top:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.p-0{padding:0}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-headline{color:var(--color-headline)}.text-body{color:var(--color-body)}.text-muted{color:var(--color-muted)}.text-success{color:#85BA4C}.text-warning{color:#F0AD4E}.text-error{color:#E25D5E}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-card{background-color:var(--bg-card)}.bg-hover{background-color:var(--bg-hover)}.border{border:1px solid var(--border-color)}.border-t{border-top:1px solid var(--border-color)}.border-b{border-bottom:1px solid var(--border-color)}.border-l{border-left:1px solid var(--border-color)}.border-r{border-right:1px solid var(--border-color)}.rounded{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}.w-full{width:100%}.w-auto{width:auto}.max-w-prose{max-width:65ch}.max-w-screen-sm{max-width:640px}.max-w-screen-md{max-width:768px}.max-w-screen-lg{max-width:1024px}.h-full{height:100%}.min-h-screen{min-height:100vh}.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,0.05)}.shadow{box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05)}.shadow-none{box-shadow:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.focus-visible:focus{outline:2px solid var(--color-primary);outline-offset:2px}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.site-wrapper{display:flex;flex-direction:column;min-height:100vh}.site-main{display:flex;flex:1;padding-top:64px}.main-content{flex:1;min-width:0;padding:2rem 1.5rem}@media (min-width: 1024px){.main-content{margin-left:280px}}.content-wrapper{display:flex;gap:2rem;max-width:calc(800px + 240px + 2rem);margin:0 auto}.content-main{flex:1;min-width:0;max-width:800px}.page-header{margin-bottom:2.5rem;padding-bottom:0}.page-header .page-title{margin-bottom:.75rem}.page-header .page-description{font-size:1.125rem;color:var(--color-body);margin-bottom:0}.page-header .page-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;font-size:.875rem;color:var(--color-muted)}.page-header .page-meta span{display:flex;align-items:center;gap:.5rem}.page-header .page-meta svg{width:16px;height:16px}.layout-home .main-content{padding:2.5rem 1.5rem}.layout-home .hero{max-width:800px;margin:0 auto 3rem;text-align:center}.layout-home .hero .hero-title{font-family:"Lora",Georgia,"Times New Roman",serif;font-size:clamp(2.25rem, 6vw, 3rem);font-weight:400;color:var(--color-headline);margin-bottom:1.5rem}.layout-home .hero .hero-description{font-size:1.25rem;color:var(--color-body);max-width:600px;margin:0 auto 2rem}.layout-home .hero .hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.layout-home .features{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:1.5rem;max-width:1400px;margin:0 auto}.layout-home .feature-card{padding:1.5rem;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:.75rem;transition:border-color 150ms ease,box-shadow 150ms ease}.layout-home .feature-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow)}.layout-home .feature-card .feature-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:1rem;background-color:rgba(18,137,137,0.1);border-radius:.5rem;color:var(--color-primary)}.layout-home .feature-card .feature-icon svg{width:24px;height:24px}.layout-home .feature-card .feature-title{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.layout-home .feature-card .feature-description{font-size:.875rem;color:var(--color-body);margin-bottom:0}body.nav-open{overflow:hidden}@media (min-width: 1024px){body.nav-open{overflow:auto}}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}@media print{.site-header,.sidebar,.toc,.search-toggle,.theme-toggle,.edit-page,.page-nav{display:none !important}.main-content{margin-left:0;padding:0}.content a[href]::after{content:" (" attr(href) ")";font-size:0.8em;color:#666}}
