:root{--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:#dbeafe;--color-primary-subtle:#eff6ff;--color-surface:#ffffff;--color-surface-secondary:#f8fafc;--color-surface-tertiary:#f1f5f9;--color-text:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#94a3b8;--color-text-inverse:#ffffff;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-code-bg:#f8fafc;--color-code-border:#e2e8f0;--color-code-text:#1e293b;--color-success:#16a34a;--color-warning:#d97706;--color-error:#dc2626;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";--font-mono:"SF Mono",SFMono-Regular,ui-monospace,"DejaVu Sans Mono",Menlo,Consolas,monospace;--content-max-width:900px;--sidebar-width:250px;--header-height:64px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.07),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.04)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface);line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color .15s}a:hover{color:var(--color-primary-hover);text-decoration:underline}.nav-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;justify-content:space-between;height:var(--header-height);padding:0 var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(255,255,255,.92)}.nav-header,.nav-logo{display:flex;align-items:center}.nav-logo{gap:var(--space-sm);font-weight:700;font-size:1.125rem}.nav-logo,.nav-logo:hover{color:var(--color-text);text-decoration:none}.nav-logo-icon{width:28px;height:28px;background:var(--color-primary);border-radius:var(--radius-sm);justify-content:center;color:white;font-weight:800;font-size:.8rem}.nav-links,.nav-logo-icon{display:flex;align-items:center}.nav-links{gap:var(--space-lg);list-style:none}.nav-links a{font-size:.9rem;font-weight:500;color:var(--color-text-secondary)}.nav-links a:hover{color:var(--color-primary);text-decoration:none}.doc-layout{display:flex;min-height:calc(100vh - var(--header-height))}.doc-sidebar{position:-webkit-sticky;position:sticky;top:var(--header-height);width:var(--sidebar-width);height:calc(100vh - var(--header-height));overflow-y:auto;padding:var(--space-lg) var(--space-md);border-right:1px solid var(--color-border);background:var(--color-surface-secondary);flex-shrink:0}.doc-sidebar-section{margin-bottom:var(--space-lg)}.doc-sidebar-section h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:var(--space-sm);padding-left:var(--space-sm)}.doc-sidebar-section ul{list-style:none}.doc-sidebar-section a{display:block;padding:var(--space-xs) var(--space-sm);font-size:.875rem;color:var(--color-text-secondary);border-radius:var(--radius-sm);transition:background .15s,color .15s}.doc-sidebar-section a:hover{background:var(--color-surface-tertiary);color:var(--color-text);text-decoration:none}.doc-sidebar-section a.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.doc-content{flex:1 1;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-2xl) var(--space-xl)}.hero{text-align:center;padding:var(--space-3xl) var(--space-lg);max-width:720px;margin:0 auto}.hero-badge{display:inline-block;font-size:.8rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-subtle);padding:var(--space-xs) var(--space-md);border-radius:999px;border:1px solid var(--color-primary-light)}.hero h1,.hero-badge{margin-bottom:var(--space-md)}.hero h1{font-size:3rem;font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--color-text)}.hero h1 span{color:var(--color-primary)}.hero p{font-size:1.2rem;color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:1.6}.hero-actions{display:flex;align-items:center;justify-content:center;gap:var(--space-md);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 20px;font-size:.95rem;font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:background .15s,box-shadow .15s,transform .1s}.btn,.btn:hover{text-decoration:none}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background:var(--color-primary-hover);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-secondary);box-shadow:var(--shadow-sm)}.section{padding:var(--space-3xl) var(--space-lg);max-width:var(--content-max-width);margin:0 auto}.section-header{text-align:center;margin-bottom:var(--space-2xl)}.section-header h2{font-size:2rem;font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-sm)}.section-header p{color:var(--color-text-secondary);font-size:1.1rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-lg);gap:var(--space-lg)}.feature-card{padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:box-shadow .2s,border-color .2s}.feature-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.feature-icon{width:40px;height:40px;background:var(--color-primary-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:var(--space-md)}.feature-card h3{font-size:1rem;font-weight:600;margin-bottom:var(--space-xs)}.feature-card p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6}.code-tabs{max-width:680px;margin:0 auto}.tab-header{display:flex;border-bottom:2px solid var(--color-border)}.tab-btn{padding:var(--space-sm) var(--space-md);font-size:.875rem;font-weight:500;color:var(--color-text-tertiary);background:none;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--color-text)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-panel{display:none}.tab-panel.active{display:block}pre{background:var(--color-code-bg);border:1px solid var(--color-code-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);overflow-x:auto;font-size:.85rem;line-height:1.7;color:var(--color-code-text);margin:var(--space-md) 0}code,pre{font-family:var(--font-mono)}code{font-size:.85em}.code-block{position:relative;margin:var(--space-md) 0}.code-block__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-md);background:var(--color-surface-tertiary);border:1px solid var(--color-code-border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;font-size:.8rem}.code-block__title{font-weight:600;color:var(--color-text)}.code-block__lang{color:var(--color-text-tertiary);text-transform:uppercase;font-size:.7rem;letter-spacing:.05em}.code-block__header+.code-block__body pre{border-top-left-radius:0;border-top-right-radius:0;margin-top:0}.code-block__body{position:relative}.code-block__body pre{margin:0;padding-right:48px}.code-block__copy{position:absolute;top:8px;right:8px;z-index:2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-code-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-tertiary);cursor:pointer;transition:all .15s;opacity:0}.code-block__body:hover .code-block__copy{opacity:1}.code-block__copy:hover{background:var(--color-surface-tertiary);color:var(--color-text);border-color:var(--color-border)}.code-block__copy--copied{opacity:1;color:var(--color-success);border-color:var(--color-success)}h2 code,h3 code,li code,p code,td code{background:var(--color-code-bg);border:1px solid var(--color-code-border);border-radius:4px;padding:2px 6px;font-size:.85em;color:var(--color-primary-hover)}.token-keyword{color:#8b5cf6;font-weight:500}.token-string{color:#16a34a}.token-comment{color:#94a3b8;font-style:italic}.token-function{color:#2563eb}.token-number{color:#d97706}.token-tag{color:#dc2626}.token-attr{color:#d97706}.token-punctuation{color:#64748b}.token-operator{color:#0891b2}.token-type{color:#0d9488}table{width:100%;border-collapse:collapse;font-size:.9rem;margin:var(--space-lg) 0}th{text-align:left;font-weight:600;border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}td,th{padding:var(--space-sm) var(--space-md)}td{border-bottom:1px solid var(--color-border-light)}tr:hover td{background:var(--color-surface-secondary)}.doc-content h1{font-size:2.25rem;font-weight:800;letter-spacing:-.03em;margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.doc-content h2{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-top:var(--space-2xl);margin-bottom:var(--space-md)}.doc-content h3{font-size:1.2rem;font-weight:600;margin-top:var(--space-xl);margin-bottom:var(--space-sm)}.doc-content p{margin-bottom:var(--space-md)}.doc-content ol,.doc-content ul{margin-bottom:var(--space-md);padding-left:var(--space-lg)}.doc-content li{margin-bottom:var(--space-xs)}.callout{display:flex;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);border-left:4px solid;margin:var(--space-lg) 0;font-size:.9rem;line-height:1.6}.callout__icon{font-size:1.2rem;flex-shrink:0;line-height:1.4}.callout__content{flex:1 1;min-width:0}.callout__title{display:block;font-weight:700;color:var(--color-text);margin-bottom:4px;font-size:.95rem}.callout__body{color:inherit}.callout__body p{margin:0}.callout--info{background:#eff6ff;border-left-color:var(--color-primary);color:#1e40af}.callout--warning{background:#fffbeb;border-left-color:var(--color-warning);color:#92400e}.callout--tip{background:#f0fdf4;border-left-color:var(--color-success);color:#166534}.links-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-md);gap:var(--space-md);max-width:var(--content-max-width);margin:0 auto;padding:0 var(--space-lg)}.link-card{display:block;padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow .2s,border-color .2s;color:var(--color-text)}.link-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light);text-decoration:none;color:var(--color-text)}.link-card h3{font-size:1rem;font-weight:600;margin-bottom:var(--space-xs);color:var(--color-primary)}.link-card p{font-size:.875rem;color:var(--color-text-secondary);margin:0}.footer{text-align:center;padding:var(--space-2xl) var(--space-lg);border-top:1px solid var(--color-border);color:var(--color-text-tertiary);font-size:.85rem}@media (max-width:768px){.hero h1{font-size:2rem}.hero p{font-size:1rem}.feature-grid,.links-grid{grid-template-columns:1fr}.doc-sidebar{display:none}.doc-content{padding:var(--space-lg) var(--space-md)}.nav-links{gap:var(--space-md)}.section{padding:var(--space-2xl) var(--space-md)}pre{font-size:.8rem;padding:var(--space-md)}}@media (max-width:480px){.hero h1{font-size:1.75rem}.hero-actions{flex-direction:column}.nav-links{display:none}}.docs-layout{display:flex;min-height:calc(100vh - var(--header-height))}.docs-sidebar{position:-webkit-sticky;position:sticky;top:var(--header-height);width:260px;height:calc(100vh - var(--header-height));overflow-y:auto;padding:var(--space-lg) var(--space-md);border-right:1px solid var(--color-border);background:var(--color-surface-secondary);flex-shrink:0}.docs-sidebar__section{margin-bottom:var(--space-lg)}.docs-sidebar__section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:var(--space-sm);padding:0 var(--space-sm)}.docs-sidebar__list{list-style:none}.docs-sidebar__link{display:block;padding:5px var(--space-sm);font-size:.875rem;color:var(--color-text-secondary);border-radius:var(--radius-sm);text-decoration:none;transition:all .15s}.docs-sidebar__link:hover{color:var(--color-text);background:var(--color-surface-tertiary);text-decoration:none}.docs-sidebar__link--active{color:var(--color-primary);background:var(--color-primary-light);font-weight:600}.docs-content{flex:1 1;min-width:0;padding:var(--space-2xl) var(--space-3xl);max-width:900px}.docs-article h1{font-size:2rem;font-weight:800;line-height:1.2}.docs-article h1,.docs-article h2{color:var(--color-text);margin-bottom:var(--space-md)}.docs-article h2{font-size:1.5rem;font-weight:700;margin-top:var(--space-2xl);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.docs-article h3{font-size:1.2rem;margin-top:var(--space-xl)}.docs-article h3,.docs-article h4{font-weight:600;color:var(--color-text);margin-bottom:var(--space-sm)}.docs-article h4{font-size:1rem;margin-top:var(--space-lg)}.docs-article ol,.docs-article p,.docs-article ul{margin-bottom:var(--space-md);color:var(--color-text-secondary)}.docs-article ol,.docs-article ul{padding-left:var(--space-xl)}.docs-article li{margin-bottom:var(--space-xs)}.docs-article strong{color:var(--color-text);font-weight:600}.api-table-wrapper{margin:var(--space-md) 0;overflow-x:auto}.api-table{width:100%;border-collapse:collapse;font-size:.875rem}.api-table th{text-align:left;background:var(--color-surface-tertiary);border-bottom:2px solid var(--color-border);font-weight:600;color:var(--color-text);white-space:nowrap}.api-table td,.api-table th{padding:var(--space-sm) var(--space-md)}.api-table td{border-bottom:1px solid var(--color-border-light);color:var(--color-text-secondary);vertical-align:top}.api-table code{font-size:.8rem;background:var(--color-code-bg);padding:2px 5px;border-radius:3px;color:var(--color-primary);border:1px solid var(--color-code-border)}.api-required{color:var(--color-error);font-weight:700;margin-left:2px}@media (max-width:768px){.docs-sidebar{display:none}.docs-content{padding:var(--space-lg)}}