*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--bg-base:#090b10;--bg-surface:#0f1117;--bg-card:#ffffff0a;--bg-card-hover:#ffffff12;--bg-glass:#0f1117b3;--bg-code:#0d1117;--accent-primary:#2980b9;--accent-primary-light:#5dade2;--accent-secondary:#3498db;--accent-secondary-light:#85c1e9;--accent-glow:#2980b959;--accent-glow-sm:#2980b926;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#475569;--text-code:#e2e8f0;--border-subtle:#ffffff12;--border-glass:#ffffff1f;--border-accent:#2980b966;--badge-advantage:#22c55e26;--badge-advantage-text:#4ade80;--badge-advantage-border:#22c55e4d;--badge-limitation:#f59e0b26;--badge-limitation-text:#fbbf24;--badge-limitation-border:#f59e0b4d;--badge-class:#2980b926;--badge-class-text:#5dade2;--badge-class-border:#2980b94d;--badge-lib:#06b6d426;--badge-lib-text:#85c1e9;--badge-lib-border:#06b6d44d;--shadow-card:0 4px 24px #0006;--shadow-glow:0 0 40px #2980b933;--shadow-glow-hover:0 0 60px #2980b959;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-base:#f8fafc;--bg-surface:#fff;--bg-card:#00000008;--bg-card-hover:#0000000f;--bg-glass:#fffc;--bg-code:#1e1e2e;--accent-primary:#6d28d9;--accent-primary-light:#2980b9;--accent-glow:#6d28d926;--accent-glow-sm:#6d28d914;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-subtle:#00000014;--border-glass:#0000001f;--border-accent:#6d28d94d;--shadow-card:0 4px 24px #00000014;--shadow-glow:0 0 40px #6d28d91a;--shadow-glow-hover:0 0 60px #6d28d933}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent-primary) transparent}html::-webkit-scrollbar{width:6px}html::-webkit-scrollbar-track{background:0 0}html::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:4px}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);min-height:100vh;transition:background var(--transition-slow), color var(--transition-slow);line-height:1.6}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 20% 0,#2980b91f 0%,#0000 60%),radial-gradient(60% 40% at 80% 100%,#06b6d414 0%,#0000 60%);position:fixed;inset:0}#root{z-index:1;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--text-primary);font-weight:700;line-height:1.3}code,pre{font-family:var(--font-mono)}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-sm);transition:background var(--transition-base), border-color var(--transition-base), transform var(--transition-base);position:relative}.glass-card:before{content:"";border-radius:inherit;background:conic-gradient(from var(--border-angle), transparent 20%, var(--accent-primary) 50%, transparent 80%);-webkit-mask-composite:xor;pointer-events:none;opacity:0;padding:1px;transition:opacity .3s;animation:2s linear infinite bg-spin;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-card:hover{background:var(--bg-card-hover);border-color:#0000;transform:translateY(-2px)}.glass-card:hover:before{opacity:1}.reveal-on-scroll{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(28px)}.reveal-on-scroll.visible{opacity:1;transform:translateY(0)}.reveal-on-scroll.delay-1{transition-delay:.1s}.reveal-on-scroll.delay-2{transition-delay:.2s}.reveal-on-scroll.delay-3{transition-delay:.3s}.btn-glow{background:linear-gradient(var(--accent-primary), #6d28d9);color:#fff;border-radius:var(--radius-sm);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-base);border:none;padding:8px 16px;font-size:.875rem;font-weight:600}.btn-glow:hover{transform:translateY(-1px)}.tab-list{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#0003;gap:4px;padding:4px;display:flex}.tab-btn{font-size:.8rem;font-weight:600;font-family:var(--font-sans);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;flex:1;padding:6px 12px}.tab-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.tab-btn.active{color:var(--accent-primary-light);background:#2980b926}.code-wrapper{border-radius:var(--radius-sm);background:var(--bg-code);border:1px solid var(--border-subtle);position:relative;overflow:hidden}.code-copy-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-sm);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);z-index:10;background:#ffffff14;padding:4px 10px;position:absolute;top:10px;right:10px}.code-copy-btn:hover{color:var(--text-primary);background:#ffffff26}.code-wrapper pre{font-size:.82rem;line-height:1.7;overflow-x:auto;background:0 0!important;margin:0!important;padding:44px 20px 20px!important}.code-wrapper code.hljs{background:0 0!important;padding:0!important}.badge-advantage{background:var(--badge-advantage);color:var(--badge-advantage-text);border:1px solid var(--badge-advantage-border);border-radius:4px;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-limitation{background:var(--badge-limitation);color:var(--badge-limitation-text);border:1px solid var(--badge-limitation-border);border-radius:4px;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-class{background:var(--badge-class);color:var(--badge-class-text);border:1px solid var(--badge-class-border);font-size:.72rem;font-weight:600;font-family:var(--font-mono);border-radius:4px;align-items:center;padding:2px 9px;display:inline-flex}.badge-lib{background:var(--badge-lib);color:var(--badge-lib-text);border:1px solid var(--badge-lib-border);font-size:.72rem;font-weight:600;font-family:var(--font-mono);border-radius:4px;align-items:center;padding:2px 9px;display:inline-flex}.search-input{background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:var(--radius-sm);font-size:.875rem;font-family:var(--font-sans);width:100%;transition:all var(--transition-base);outline:none;padding:8px 16px 8px 40px}.search-input:focus{border-color:var(--accent-primary)}.search-input::placeholder{color:var(--text-muted)}.sidebar-link{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);border-left:2px solid #0000;align-items:center;gap:8px;padding:7px 12px;font-size:.825rem;text-decoration:none;display:flex}.sidebar-link:hover{color:var(--text-primary);background:var(--bg-card-hover)}.sidebar-link.active{color:var(--accent-primary-light);background:var(--accent-glow-sm);border-left-color:var(--accent-primary)}.sidebar-sub-link{border-radius:var(--radius-sm);color:var(--text-muted);transition:all var(--transition-fast);align-items:center;gap:6px;padding:5px 12px 5px 24px;font-size:.78rem;text-decoration:none;display:flex}.sidebar-sub-link:hover{color:var(--text-secondary);background:var(--bg-card-hover)}.sidebar-sub-link.active{color:var(--accent-primary-light)}.detail-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:140px 1fr;align-items:start;gap:8px 16px;padding:10px 0;display:grid}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding-top:2px;font-size:.78rem;font-weight:700}.detail-value{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.section-badge{color:var(--accent-primary-light);letter-spacing:.04em;text-transform:uppercase;background:#2980b91f;border:1px solid #2980b940;border-radius:4px;align-items:center;gap:6px;padding:4px 14px;font-size:.78rem;font-weight:700;display:inline-flex}.inline-code{color:var(--accent-primary-light);font-family:var(--font-mono);background:#2980b91a;border:1px solid #2980b933;border-radius:4px;padding:1px 6px;font-size:.82em}.sidebar-scroll{scrollbar-width:thin;scrollbar-color:var(--border-subtle) transparent;overflow-y:auto}@media (width<=1024px){.sidebar-panel{display:none}.main-content{margin-left:0!important}}@media (width<=640px){.header-search{display:none}.detail-row{grid-template-columns:1fr;gap:4px}}.gradient-text{background:linear-gradient(var(--accent-primary), var(--accent-secondary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.comp-number{background:linear-gradient(var(--accent-primary), #6d28d9);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.72rem;font-weight:800;display:flex}.divider-line{background:var(--border-subtle);border:none;height:1px;margin:0}.dot{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.dot.active{background:var(--accent-primary)}.glow-border{position:relative}.glow-border:before{content:"";background:linear-gradient(var(--accent-primary), var(--accent-secondary), var(--accent-primary));border-radius:inherit;z-index:-1;opacity:0;transition:opacity var(--transition-base);background-size:200% 200%;animation:3s linear infinite gradientShift;position:absolute;inset:-1px}.glow-border:hover:before{opacity:1}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.float-anim{animation:4s ease-in-out infinite float}@property --border-angle{syntax:"<angle>";inherits:true;initial-value:0turn}@keyframes bg-spin{to{--border-angle:1turn}}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}
