﻿:root{--bg-base: #121218;--bg-panel: #181820;--bg-elevated: #1e1e28;--bg-code: #1a1a24;--bg-hover: rgba(225, 53, 255, 0.06);--c-purple: #e135ff;--c-cyan: #80ffea;--c-coral: #ff6ac1;--c-yellow: #f1fa8c;--c-green: #50fa7b;--c-red: #ff6363;--text-primary: #f8f8f2;--text-secondary: #e0e0e0;--text-muted: #a0a0a0;--border-subtle: rgba(255, 255, 255, 0.08);--border-default: rgba(255, 255, 255, 0.12);--border-strong: rgba(255, 255, 255, 0.2);--nav-bg: rgba(18, 18, 24, 0.82);--sidebar-bg: var(--bg-panel);--sidebar-border: var(--border-subtle);--sidebar-link-hover: var(--bg-hover);--sidebar-link-active: rgba(225, 53, 255, 0.12);--card-bg: var(--bg-elevated);--card-border: var(--border-subtle);--card-shadow: 0 4px 12px rgba(0,0,0,.25);--code-bg: var(--bg-code);--code-border: var(--border-subtle);--code-text: var(--text-primary);--inline-code-bg: rgba(225, 53, 255, 0.1);--table-header-bg: var(--bg-elevated);--table-row-hover: rgba(128, 255, 234, 0.04);--table-border: var(--border-subtle);--callout-tip-bg: rgba(80, 250, 123, 0.08);--callout-tip-border: var(--c-green);--callout-tip-icon: var(--c-green);--callout-warning-bg: rgba(241, 250, 140, 0.08);--callout-warning-border: var(--c-yellow);--callout-warning-icon: var(--c-yellow);--callout-danger-bg: rgba(255, 99, 99, 0.08);--callout-danger-border: var(--c-red);--callout-danger-icon: var(--c-red);--search-bg: var(--bg-elevated);--search-border: var(--border-default);--scrollbar-track: var(--bg-panel);--scrollbar-thumb: rgba(255, 255, 255, 0.15);--scrollbar-thumb-hover: rgba(255, 255, 255, 0.25);--selection-bg: rgba(225, 53, 255, 0.3);--selection-text: #fff;--footer-bg: var(--bg-panel)}[data-theme=light]{--bg-base: #faf8ff;--bg-panel: #f1ecff;--bg-elevated: #efeaff;--bg-code: #e1daf7;--bg-hover: rgba(126, 43, 213, 0.06);--c-purple: #7e2bd5;--c-cyan: #007f8e;--c-coral: #b40077;--c-yellow: #a88600;--c-green: #1f8752;--c-red: #c1272d;--text-primary: #2b2540;--text-secondary: #3d3558;--text-muted: #5a4d78;--border-subtle: rgba(0, 0, 0, 0.06);--border-default: rgba(0, 0, 0, 0.1);--border-strong: rgba(0, 0, 0, 0.18);--nav-bg: rgba(250, 248, 255, 0.82);--sidebar-bg: var(--bg-panel);--sidebar-border: var(--border-subtle);--sidebar-link-hover: var(--bg-hover);--sidebar-link-active: rgba(126, 43, 213, 0.1);--card-bg: #fff;--card-border: var(--border-subtle);--card-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);--code-bg: var(--bg-code);--code-border: var(--border-subtle);--code-text: var(--text-primary);--inline-code-bg: rgba(126, 43, 213, 0.08);--table-header-bg: var(--bg-elevated);--table-row-hover: rgba(0, 127, 142, 0.04);--table-border: var(--border-subtle);--callout-tip-bg: rgba(31, 135, 82, 0.08);--callout-tip-border: var(--c-green);--callout-tip-icon: var(--c-green);--callout-warning-bg: rgba(168, 134, 0, 0.08);--callout-warning-border: var(--c-yellow);--callout-warning-icon: var(--c-yellow);--callout-danger-bg: rgba(193, 39, 45, 0.08);--callout-danger-border: var(--c-red);--callout-danger-icon: var(--c-red);--search-bg: #fff;--search-border: var(--border-default);--scrollbar-track: var(--bg-panel);--scrollbar-thumb: rgba(0, 0, 0, 0.12);--scrollbar-thumb-hover: rgba(0, 0, 0, 0.22);--selection-bg: rgba(126, 43, 213, 0.25);--selection-text: #2b2540;--footer-bg: var(--bg-panel)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:calc(60px + 1rem);-webkit-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:1rem;line-height:1.65;color:var(--text-primary);background-color:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;min-height:100vh}::selection{background:var(--selection-bg);color:var(--selection-text)}::-moz-selection{background:var(--selection-bg);color:var(--selection-text)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:9999px;transition:background 150ms cubic-bezier(.16, 1, .3, 1)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.skip-link{position:fixed;top:-100%;left:1rem;z-index:500;padding:.5rem 1rem;background:var(--c-purple);color:#fff;font-weight:600;font-size:.8125rem;border-radius:0 0 8px 8px;text-decoration:none;transition:top 150ms cubic-bezier(.16, 1, .3, 1)}.skip-link:focus{top:0;outline:2px solid var(--c-purple);outline-offset:2px}a{color:var(--c-cyan);text-decoration:none;transition:color 150ms cubic-bezier(.16, 1, .3, 1)}a:hover{color:var(--c-purple)}a:focus-visible{outline:2px solid var(--c-purple);outline-offset:2px;border-radius:4px}img{max-width:100%;height:auto;display:block}ul,ol{padding-left:1.5rem}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}html{scroll-behavior:auto}}.gradient-text{background:linear-gradient(135deg, var(--c-purple), var(--c-cyan));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}.site-layout{display:grid;grid-template-columns:260px minmax(0, 1fr) 200px;grid-template-rows:auto 1fr auto;min-height:100vh;padding-top:60px}.site-main{grid-column:2;max-width:800px;width:100%;margin:0 auto;padding:2rem 1.5rem}.site-footer{grid-column:1/-1;background:var(--footer-bg);border-top:1px solid var(--border-subtle);position:relative;overflow:hidden}.footer-gradient{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg, var(--c-purple), var(--c-cyan), var(--c-coral))}.footer-content{max-width:800px;margin:0 auto;padding:2rem 1.5rem;display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.8125rem}.footer-content a{color:var(--text-muted)}.footer-content a:hover{color:var(--c-cyan)}.mermaid{display:flex;justify-content:center;margin:1.5rem 0;padding:1rem;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px;overflow-x:auto}.mermaid svg{max-width:100%;height:auto}.site-nav{position:fixed;top:0;left:0;right:0;height:60px;z-index:200;background:var(--nav-bg);backdrop-filter:blur(12px) saturate(1.15);-webkit-backdrop-filter:blur(12px) saturate(1.15);border-bottom:1px solid var(--border-subtle)}.nav-container{max-width:1280px;height:100%;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:1.5rem}.nav-title{font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;text-decoration:none;display:flex;align-items:center;gap:0;transition:opacity 150ms cubic-bezier(.16, 1, .3, 1)}.nav-title:hover{opacity:.85}.nav-title:hover .nav-title__uni,.nav-title:hover .nav-title__fly{filter:brightness(1.15)}.nav-title__uni{color:var(--c-cyan);transition:filter 250ms cubic-bezier(.16, 1, .3, 1)}.nav-title__fly{color:var(--c-purple);transition:filter 250ms cubic-bezier(.16, 1, .3, 1)}.nav-links{display:flex;align-items:center;gap:.25rem;margin-left:1rem;list-style:none;padding:0}.nav-link{display:inline-flex;align-items:center;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border-radius:8px;transition:color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1)}.nav-link:hover{color:var(--text-primary);background:var(--bg-hover)}.nav-link--active{color:var(--c-purple);background:rgba(225,53,255,.08)}[data-theme=light] .nav-link--active{background:rgba(126,43,213,.08)}.nav-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.nav-hamburger,.nav-github,.search-trigger,.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:rgba(0,0,0,0);color:var(--text-muted);cursor:pointer;transition:color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1)}.nav-hamburger:hover,.nav-github:hover,.search-trigger:hover,.theme-toggle:hover{color:var(--text-primary);background:var(--bg-hover)}.nav-hamburger:focus-visible,.nav-github:focus-visible,.search-trigger:focus-visible,.theme-toggle:focus-visible{outline:2px solid var(--c-purple);outline-offset:2px}.nav-hamburger svg,.nav-github svg,.search-trigger svg,.theme-toggle svg{width:20px;height:20px}.search-trigger .search-trigger__kbd{display:none;font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace;font-size:.75rem;padding:1px .25rem;border:1px solid var(--border-default);border-radius:4px;color:var(--text-muted);margin-left:.5rem;line-height:1}@media (min-width: 768px){.search-trigger .search-trigger__kbd{display:inline}}@media (min-width: 768px){.search-trigger{width:auto;padding:.5rem .75rem;gap:.5rem}}.nav-github{text-decoration:none}.nav-hamburger{display:none}.nav-hamburger .hamburger-line{display:block;width:18px;height:2px;background:currentColor;border-radius:9999px;transition:transform 250ms cubic-bezier(.16, 1, .3, 1),opacity 150ms cubic-bezier(.16, 1, .3, 1)}.nav-hamburger .hamburger-line+.hamburger-line{margin-top:4px}.nav-hamburger[aria-expanded=true] .hamburger-line:nth-child(1){transform:rotate(45deg) translate(4px, 4px)}.nav-hamburger[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.nav-hamburger[aria-expanded=true] .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(4px, -4px)}.site-sidebar{grid-column:1;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;padding:1.5rem 0 1.5rem 1.5rem;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:100;overscroll-behavior:contain}.site-sidebar::-webkit-scrollbar{width:4px}.site-sidebar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:9999px}.sidebar-group+.sidebar-group{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.sidebar-group__title{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:0 .75rem .5rem;user-select:none}.sidebar-links{list-style:none;padding:0;margin:0}.sidebar-link{display:block;padding:.5rem .75rem;margin-right:.75rem;font-size:.8125rem;color:var(--text-secondary);text-decoration:none;border-radius:8px;border-left:2px solid rgba(0,0,0,0);transition:color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1),border-color 150ms cubic-bezier(.16, 1, .3, 1)}.sidebar-link:hover{color:var(--text-primary);background:var(--sidebar-link-hover)}.sidebar-link--active{color:var(--c-purple);background:var(--sidebar-link-active);border-left-color:var(--c-purple);font-weight:500}.sidebar-link--nested{padding-left:1.5rem;font-size:.75rem}.site-toc{grid-column:3;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;padding:1.5rem 1.5rem 1.5rem 1rem;font-size:.75rem}.site-toc::-webkit-scrollbar{width:4px}.site-toc::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:9999px}.toc-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.75rem}.toc-links{list-style:none;padding:0;margin:0;border-left:1px solid var(--border-subtle)}.toc-link{display:block;padding:.25rem 0 .25rem .75rem;margin-left:-1px;color:var(--text-muted);text-decoration:none;border-left:2px solid rgba(0,0,0,0);transition:color 150ms cubic-bezier(.16, 1, .3, 1),border-color 150ms cubic-bezier(.16, 1, .3, 1)}.toc-link:hover{color:var(--text-primary)}.toc-link--active{color:var(--c-purple);border-left-color:var(--c-purple)}.toc-link--nested{padding-left:1.5rem}.doc{min-height:60vh}.doc__header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-subtle)}.doc__title{font-size:2.75rem;font-weight:700;line-height:1.25;background:linear-gradient(135deg, var(--c-purple), var(--c-cyan));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);margin-bottom:.75rem}.doc__description{font-size:1.125rem;color:var(--text-muted);line-height:1.8}.doc h1{font-size:2.75rem;font-weight:700;line-height:1.25;background:linear-gradient(135deg, var(--c-purple), var(--c-cyan));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);margin:3rem 0 1rem}.doc h1:first-child{margin-top:0}.doc h2{font-size:1.5rem;font-weight:700;line-height:1.25;color:var(--text-primary);margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.doc h2::before{content:"◆";color:var(--c-purple);margin-right:.5rem;font-size:.65em;vertical-align:middle}.doc h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:2rem 0 .75rem}.doc h4{font-size:1rem;font-weight:600;color:var(--text-secondary);margin:1.5rem 0 .5rem}.doc h5,.doc h6{font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:1.25rem 0 .5rem}.doc h2:hover .zola-anchor,.doc h2:hover .anchor,.doc h3:hover .zola-anchor,.doc h3:hover .anchor,.doc h4:hover .zola-anchor,.doc h4:hover .anchor{opacity:1}.zola-anchor,.anchor{color:var(--c-cyan);text-decoration:none;opacity:0;margin-right:.5rem;margin-left:-1.2em;font-weight:400;transition:opacity 150ms cubic-bezier(.16, 1, .3, 1)}.zola-anchor:hover,.anchor:hover{color:var(--c-purple)}.doc p{margin:1rem 0;color:var(--text-secondary);line-height:1.65}.doc strong{font-weight:600;color:var(--text-primary)}.doc em{font-style:italic}.doc hr{border:none;height:1px;background:var(--border-subtle);margin:2rem 0}.doc ul,.doc ol{margin:1rem 0;color:var(--text-secondary)}.doc ul li,.doc ol li{margin:.5rem 0;line-height:1.65}.doc ul li::marker,.doc ol li::marker{color:var(--c-purple)}.doc ul ul,.doc ul ol,.doc ol ul,.doc ol ol{margin:.25rem 0}.doc code:not(pre code){font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace;font-size:.875em;padding:.15em .4em;background:var(--inline-code-bg);color:var(--c-coral);border-radius:4px;word-break:break-word}.doc pre{margin:1.5rem 0;padding:1rem 1.25rem;background:var(--code-bg);border:1px solid var(--code-border);border-radius:12px;overflow-x:auto;font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace;font-size:.8125rem;line-height:1.8}.doc pre code{background:none;padding:0;color:var(--code-text);border-radius:0;font-size:inherit}.doc pre table{border:none;margin:0}.doc pre table td{padding:0;border:none;background:rgba(0,0,0,0)}.doc pre table td:first-child{padding-right:1rem;user-select:none;color:var(--text-muted);opacity:.4;text-align:right}.doc pre table tr:hover td:first-child{opacity:.7}.doc blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid var(--c-purple);background:var(--bg-elevated);border-radius:0 8px 8px 0;color:var(--text-secondary)}.doc blockquote p{margin:.5rem 0}.doc blockquote p:first-child{margin-top:0}.doc blockquote p:last-child{margin-bottom:0}.doc table{width:100%;margin:1.5rem 0;border-collapse:collapse;font-size:.8125rem;overflow-x:auto;display:block}.doc thead{background:var(--table-header-bg)}.doc th{font-weight:600;color:var(--c-cyan);text-align:left;padding:.75rem 1rem;border-bottom:2px solid var(--c-purple);white-space:nowrap}.doc td{padding:.75rem 1rem;border-bottom:1px solid var(--table-border);color:var(--text-secondary);vertical-align:top}.doc tbody tr{transition:background 150ms cubic-bezier(.16, 1, .3, 1)}.doc tbody tr:hover{background:var(--table-row-hover)}.doc img{border-radius:12px;border:1px solid var(--border-subtle);margin:1.5rem auto}.doc figure{margin:1.5rem 0;text-align:center}.doc figure figcaption{margin-top:.5rem;font-size:.8125rem;color:var(--text-muted);font-style:italic}.callout{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid var(--callout-tip-border);border-radius:0 8px 8px 0;background:var(--callout-tip-bg)}.callout__title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.8125rem;margin-bottom:.5rem;color:var(--callout-tip-icon)}.callout__title::before{font-size:1rem}.callout__body{color:var(--text-secondary);font-size:.8125rem;line-height:1.65}.callout__body p{margin:.5rem 0}.callout__body p:first-child{margin-top:0}.callout__body p:last-child{margin-bottom:0}.callout__body code:not(pre code){font-size:.85em}.callout--tip{border-left-color:var(--callout-tip-border);background:var(--callout-tip-bg)}.callout--tip .callout__title{color:var(--callout-tip-icon)}.callout--tip .callout__title::before{content:"💡"}.callout--tip:not(:has(.callout__title)) .callout__body::before{content:"💡 "}.callout--warning{border-left-color:var(--callout-warning-border);background:var(--callout-warning-bg)}.callout--warning .callout__title{color:var(--callout-warning-icon)}.callout--warning .callout__title::before{content:"⚠️"}.callout--warning:not(:has(.callout__title)) .callout__body::before{content:"⚠️ "}.callout--danger{border-left-color:var(--callout-danger-border);background:var(--callout-danger-bg)}.callout--danger .callout__title{color:var(--callout-danger-icon)}.callout--danger .callout__title::before{content:"🚨"}.callout--danger:not(:has(.callout__title)) .callout__body::before{content:"🚨 "}.mermaid-container{margin:1.5rem 0;padding:1.25rem;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px;overflow-x:auto;text-align:center}.mermaid-container .mermaid{background:rgba(0,0,0,0);border:none;padding:0;margin:0;overflow:visible;font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace}.mermaid-container .mermaid svg{max-width:100%;height:auto}.mermaid-container .mermaid [style*="fill: rgb(80, 250, 123)"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill: rgb(80, 250, 123)"]~text,.mermaid-container .mermaid [style*="fill:#50fa7b"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill:#50fa7b"]~text,.mermaid-container .mermaid [style*="fill: rgb(128, 255, 234)"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill: rgb(128, 255, 234)"]~text,.mermaid-container .mermaid [style*="fill:#80ffea"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill:#80ffea"]~text,.mermaid-container .mermaid [style*="fill: rgb(241, 250, 140)"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill: rgb(241, 250, 140)"]~text,.mermaid-container .mermaid [style*="fill:#f1fa8c"]+foreignObject .nodeLabel,.mermaid-container .mermaid [style*="fill:#f1fa8c"]~text{color:#0a0a0f !important;fill:#0a0a0f !important}.mermaid-container .mermaid .nodeLabel[style*="color:#0a0a0f"],.mermaid-container .mermaid .nodeLabel[style*="color: rgb(10, 10, 15)"]{color:#0a0a0f !important}.doc__pagination{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-subtle)}.pagination-link{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;border:1px solid var(--border-subtle);border-radius:12px;text-decoration:none;min-width:0;max-width:48%;transition:border-color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1)}.pagination-link:hover{border-color:var(--c-purple);background:var(--bg-hover)}.pagination-link--next{text-align:right;margin-left:auto}.pagination-link__label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.pagination-link__title{font-weight:500;color:var(--c-purple);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero{position:relative;text-align:center;padding:6rem 1.5rem 4rem;overflow:hidden}.hero__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 50% at 50% 0%, rgba(225,53,255,.12) 0%, rgba(0,0,0,0) 70%),radial-gradient(ellipse 40% 40% at 80% 20%, rgba(128,255,234,.08) 0%, rgba(0,0,0,0) 60%),radial-gradient(ellipse 40% 40% at 20% 30%, rgba(255,106,193,.06) 0%, rgba(0,0,0,0) 60%)}[data-theme=light] .hero__bg{background:radial-gradient(ellipse 60% 50% at 50% 0%, rgba(126,43,213,.1) 0%, rgba(0,0,0,0) 70%),radial-gradient(ellipse 40% 40% at 80% 20%, rgba(0,127,142,.07) 0%, rgba(0,0,0,0) 60%),radial-gradient(ellipse 40% 40% at 20% 30%, rgba(180,0,119,.05) 0%, rgba(0,0,0,0) 60%)}.hero__title{font-size:3.5rem;font-weight:700;line-height:1.1;margin-bottom:1rem;background:linear-gradient(135deg, var(--c-purple), var(--c-cyan));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}@media (max-width: 768px){.hero__title{font-size:2.75rem}}.hero__tagline{font-size:1.5rem;color:var(--text-secondary);max-width:600px;margin:0 auto .5rem;line-height:1.65}.hero__sub{font-size:1rem;color:var(--text-muted);max-width:520px;margin:0 auto 2rem}.hero__actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:.8125rem;font-weight:600;border-radius:12px;border:1px solid rgba(0,0,0,0);text-decoration:none;cursor:pointer;transition:all 250ms cubic-bezier(.16, 1, .3, 1);white-space:nowrap}.btn:focus-visible{outline:2px solid var(--c-purple);outline-offset:2px}.btn--primary{background:linear-gradient(135deg, var(--c-purple), color-mix(in srgb, var(--c-purple) 70%, var(--c-cyan)));color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 12px rgba(225,53,255,.25)}.btn--primary:hover{box-shadow:0 4px 20px rgba(225,53,255,.4);transform:translateY(-1px);color:#fff}.btn--primary:active{transform:translateY(0)}.btn--secondary{background:rgba(0,0,0,0);color:var(--text-primary);border-color:var(--border-default)}.btn--secondary:hover{border-color:var(--c-cyan);color:var(--c-cyan);background:rgba(128,255,234,.05)}.features{max-width:960px;margin:0 auto;padding:0 1.5rem 4rem}.feature-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem}@media (max-width: 768px){.feature-grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 640px){.feature-grid{grid-template-columns:1fr}}.feature-card{position:relative;padding:1.5rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;transition:transform 250ms cubic-bezier(.16, 1, .3, 1),border-color 250ms cubic-bezier(.16, 1, .3, 1),box-shadow 250ms cubic-bezier(.16, 1, .3, 1)}.feature-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(135deg, rgba(225,53,255,.15), rgba(128,255,234,.15));opacity:0;transition:opacity 250ms cubic-bezier(.16, 1, .3, 1);z-index:-1;padding:1px;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(225,53,255,.12),0 4px 16px rgba(0,0,0,.2)}.feature-card:hover::before{opacity:1}.feature-card:hover .feature-card__icon{transform:scale(1.1)}.feature-card__icon{font-size:2rem;margin-bottom:.75rem;transition:transform 250ms cubic-bezier(.34, 1.56, .64, 1)}.feature-card__title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.feature-card__desc{font-size:.8125rem;color:var(--text-muted);line-height:1.65}.section-pages{margin:1.5rem 0}.section-pages__heading{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.section-pages__grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));gap:1rem}.section-page-card{display:flex;flex-direction:column;padding:1.25rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;text-decoration:none;transition:border-color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1),transform 250ms cubic-bezier(.16, 1, .3, 1)}.section-page-card:hover{border-color:var(--c-purple);background:var(--bg-hover);transform:translateY(-2px)}.section-page-card h3{font-size:1rem;font-weight:600;color:var(--c-purple);margin-bottom:.5rem}.section-page-card p{font-size:.8125rem;color:var(--text-muted);line-height:1.65;margin:0}.search-modal{position:fixed;inset:0;z-index:400;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;background:rgba(0,0,0,.5);backdrop-filter:blur(4px) saturate(1);-webkit-backdrop-filter:blur(4px) saturate(1);opacity:0;visibility:hidden;transition:opacity 250ms cubic-bezier(.16, 1, .3, 1),visibility 250ms}.search-modal--open{opacity:1;visibility:visible}.search-modal--open .search-modal__inner{transform:translateY(0) scale(1);opacity:1}.search-modal__inner{width:90%;max-width:560px;max-height:70vh;background:var(--search-bg);border:1px solid var(--search-border);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.35);overflow:hidden;display:flex;flex-direction:column;transform:translateY(-8px) scale(.98);opacity:0;transition:transform 250ms cubic-bezier(.16, 1, .3, 1),opacity 250ms cubic-bezier(.16, 1, .3, 1)}.search-input{width:100%;padding:1rem 1.25rem;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:1.125rem;background:rgba(0,0,0,0);border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);outline:none}.search-input::placeholder{color:var(--text-muted)}.search-results{overflow-y:auto;padding:.5rem;flex:1}.search-result{display:block;padding:.75rem 1rem;border-radius:8px;text-decoration:none;transition:background 150ms cubic-bezier(.16, 1, .3, 1)}.search-result:hover,.search-result--active{background:var(--bg-hover)}.search-result__title{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.search-result__section{font-size:.75rem;color:var(--text-muted);margin-top:2px}.search-result__preview{font-size:.75rem;color:var(--text-muted);margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result__preview mark{background:rgba(225,53,255,.2);color:var(--c-purple);border-radius:2px;padding:0 2px}[data-theme=light] .search-result__preview mark{background:rgba(126,43,213,.15)}.search-footer{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--border-subtle);font-size:.75rem;color:var(--text-muted)}.search-footer kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .25rem;font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code","Source Code Pro",Consolas,monospace;font-size:.75rem;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:4px}@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes pulse-glow{0%, 100%{box-shadow:0 0 8px rgba(225,53,255,.15)}50%{box-shadow:0 0 20px rgba(225,53,255,.3)}}.doc{animation:fade-in 400ms cubic-bezier(.16, 1, .3, 1)}.hero{animation:fade-in-up 600ms cubic-bezier(.16, 1, .3, 1)}.hero__title{animation:fade-in-up 600ms cubic-bezier(.16, 1, .3, 1) 100ms both}.hero__tagline{animation:fade-in-up 600ms cubic-bezier(.16, 1, .3, 1) 200ms both}.hero__sub{animation:fade-in-up 600ms cubic-bezier(.16, 1, .3, 1) 280ms both}.hero__actions{animation:fade-in-up 600ms cubic-bezier(.16, 1, .3, 1) 360ms both}.feature-card{animation:fade-in-up 500ms cubic-bezier(.16, 1, .3, 1) both}.feature-card:nth-child(1){animation-delay:230ms}.feature-card:nth-child(2){animation-delay:310ms}.feature-card:nth-child(3){animation-delay:390ms}.feature-card:nth-child(4){animation-delay:470ms}.feature-card:nth-child(5){animation-delay:550ms}.feature-card:nth-child(6){animation-delay:630ms}.feature-card:nth-child(7){animation-delay:710ms}.feature-card:nth-child(8){animation-delay:790ms}.feature-card:hover{box-shadow:0 8px 32px rgba(225,53,255,.12),0 0 0 1px rgba(225,53,255,.1)}[data-theme=light] .feature-card:hover{box-shadow:0 8px 32px rgba(126,43,213,.1),0 0 0 1px rgba(126,43,213,.08)}.nav-title:hover .nav-title__uni{text-shadow:0 0 12px rgba(128,255,234,.4)}.nav-title:hover .nav-title__fly{text-shadow:0 0 12px rgba(225,53,255,.4)}[data-theme=light] .nav-title:hover .nav-title__uni{text-shadow:0 0 12px rgba(0,127,142,.3)}[data-theme=light] .nav-title:hover .nav-title__fly{text-shadow:0 0 12px rgba(126,43,213,.3)}.sidebar-link--active{position:relative}.sidebar-link--active::after{content:"";position:absolute;left:0;top:25%;height:50%;width:2px;background:var(--c-purple);border-radius:9999px;animation:fade-in 150ms cubic-bezier(.16, 1, .3, 1)}.toc-link--active{transition:color 150ms cubic-bezier(.16, 1, .3, 1),border-color 150ms cubic-bezier(.16, 1, .3, 1)}.btn--primary{background-size:200% 200%}.btn--primary:hover{animation:gradient-shift 3s ease infinite}.doc pre{transition:border-color 250ms cubic-bezier(.16, 1, .3, 1)}.doc pre:hover{border-color:var(--border-strong)}.doc blockquote{transition:border-color 250ms cubic-bezier(.16, 1, .3, 1)}.doc blockquote:hover{border-left-color:var(--c-cyan)}.section-page-card{animation:fade-in 400ms cubic-bezier(.16, 1, .3, 1) both}.section-page-card:nth-child(1){animation-delay:110ms}.section-page-card:nth-child(2){animation-delay:170ms}.section-page-card:nth-child(3){animation-delay:230ms}.section-page-card:nth-child(4){animation-delay:290ms}.section-page-card:nth-child(5){animation-delay:350ms}.section-page-card:nth-child(6){animation-delay:410ms}.section-page-card:nth-child(7){animation-delay:470ms}.section-page-card:nth-child(8){animation-delay:530ms}.section-page-card:nth-child(9){animation-delay:590ms}.section-page-card:nth-child(10){animation-delay:650ms}.section-page-card:nth-child(11){animation-delay:710ms}.section-page-card:nth-child(12){animation-delay:770ms}.search-result{transition:background 150ms cubic-bezier(.16, 1, .3, 1),transform 150ms cubic-bezier(.16, 1, .3, 1)}.search-result:hover{transform:translateX(2px)}.zola-anchor,.anchor{transition:opacity 150ms cubic-bezier(.16, 1, .3, 1),color 150ms cubic-bezier(.16, 1, .3, 1)}.theme-toggle{transition:color 150ms cubic-bezier(.16, 1, .3, 1),background 150ms cubic-bezier(.16, 1, .3, 1),transform 250ms cubic-bezier(.34, 1.56, .64, 1)}.theme-toggle:active{transform:rotate(30deg) scale(.9)}.footer-gradient{background-size:200% 100%;animation:gradient-shift 8s ease infinite}@media (max-width: 1280px){.site-layout{grid-template-columns:260px minmax(0, 1fr)}.site-toc{display:none}.site-footer{grid-column:1/-1}}@media (max-width: 1024px){.site-layout{grid-template-columns:1fr}.nav-hamburger{display:inline-flex}.nav-links{display:none}.site-sidebar{position:fixed;top:60px;left:0;bottom:0;width:260px;transform:translateX(-100%);transition:transform 250ms cubic-bezier(.16, 1, .3, 1);background:var(--bg-panel);z-index:100;border-right:1px solid var(--border-subtle);box-shadow:0 8px 24px rgba(0,0,0,.3)}.site-sidebar--open{transform:translateX(0)}.sidebar-overlay{position:fixed;inset:0;top:60px;z-index:99;background:rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:opacity 250ms cubic-bezier(.16, 1, .3, 1),visibility 250ms}.sidebar-overlay--visible{opacity:1;visibility:visible}.site-main{grid-column:1;padding:1.5rem 1rem}.site-footer{grid-column:1}}@media (max-width: 768px){.hero{padding:4rem 1rem 2.5rem}.hero__title{font-size:2rem}.hero__tagline{font-size:1.125rem}.hero__actions{flex-direction:column;align-items:center}.btn{width:100%;max-width:280px;justify-content:center}.feature-grid{grid-template-columns:1fr;gap:1rem}.section-pages{grid-template-columns:1fr}.doc__title{font-size:2rem}.doc h1{font-size:2rem}.doc h2{font-size:1.25rem}.doc__pagination{flex-direction:column}.pagination-link{max-width:100%}.nav-container{padding:0 1rem}.search-trigger__kbd{display:none !important}.search-modal__inner{width:95%;max-height:80vh}.doc table{font-size:.75rem}.doc table th,.doc table td{padding:.5rem .75rem}}@media (max-width: 640px){.site-main{padding:1rem .75rem}.hero{padding:3rem .75rem 2rem}.hero__title{font-size:1.5rem}.doc pre{margin-left:-.75rem;margin-right:-.75rem;border-radius:0;border-left:none;border-right:none}.callout{margin-left:-.75rem;margin-right:-.75rem;border-radius:0}.footer-content{flex-direction:column;gap:.5rem;text-align:center}}