*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--indigo-50:#eef2ff;--indigo-100:#e0e7ff;--indigo-200:#c7d2fe;--indigo-500:#6366f1;--indigo-600:#4f46e5;--indigo-700:#4338ca;--indigo-800:#3730a3;--indigo-900:#312e81;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--white:#fff;--font-serif:"Crimson Pro", Georgia, "Times New Roman", serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--radius:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #0000001a, 0 1px 2px #0000000f;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000f;--shadow-lg:0 10px 15px #0000001a, 0 4px 6px #0000000d;--max-width:1200px}html{-webkit-font-smoothing:antialiased;font-size:16px}body{font-family:var(--font-sans);color:var(--gray-800);background:var(--white);line-height:1.6}a{color:var(--indigo-600);text-decoration:none}a:hover{color:var(--indigo-700)}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}.section-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px}.header{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-200);background:#ffffffeb;position:sticky;top:0}.header-inner{max-width:var(--max-width);align-items:center;gap:24px;height:64px;margin:0 auto;padding:0 24px;display:flex}.logo{flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.logo-icon{background:var(--indigo-700);color:#fff;width:32px;height:32px;font-family:var(--font-serif);border-radius:6px;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.logo-text{font-family:var(--font-sans);color:var(--gray-900);font-size:20px;font-weight:700}.logo-highlight{color:var(--indigo-600)}.header-search{flex:1;align-items:center;max-width:400px;display:flex;position:relative}.header-search .search-icon{color:var(--gray-400);pointer-events:none;position:absolute;left:12px}.header-search input{border:1px solid var(--gray-200);width:100%;height:38px;font-size:14px;font-family:var(--font-sans);background:var(--gray-50);color:var(--gray-800);border-radius:8px;padding:0 12px 0 36px;transition:all .2s}.header-search input:focus{border-color:var(--indigo-500);background:var(--white);outline:none;box-shadow:0 0 0 3px #6366f11a}.header-nav{flex-shrink:0;align-items:center;gap:16px;display:flex}.nav-link{color:var(--gray-600);font-size:14px;font-weight:500;text-decoration:none;transition:color .15s}.nav-link:hover{color:var(--indigo-600)}.nav-link-gh{color:var(--gray-500);display:flex}.nav-link-gh:hover{color:var(--gray-900)}.hero{background:linear-gradient(180deg, var(--indigo-50) 0%, var(--white) 100%);text-align:center;padding:80px 24px 64px}.hero-inner{max-width:720px;margin:0 auto}.hero-badge{background:var(--indigo-100);color:var(--indigo-700);letter-spacing:.02em;border-radius:100px;margin-bottom:20px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block}.hero-title{font-family:var(--font-serif);color:var(--gray-900);margin-bottom:16px;font-size:3rem;font-weight:700;line-height:1.15}.hero-accent{color:var(--indigo-600)}.hero-subtitle{color:var(--gray-500);max-width:560px;margin-bottom:32px;margin-left:auto;margin-right:auto;font-size:1.125rem;line-height:1.7}.hero-stats{justify-content:center;align-items:center;gap:32px;margin-top:40px;display:flex}.stat{flex-direction:column;align-items:center;gap:4px;display:flex}.stat-number{font-family:var(--font-serif);color:var(--indigo-700);font-size:1.75rem;font-weight:700}.stat-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:500}.stat-divider{background:var(--gray-200);width:1px;height:40px}.github-repo-btn{background:var(--gray-900);color:var(--white);border-radius:12px;align-items:center;gap:10px;margin-top:32px;padding:12px 28px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex}.github-repo-btn:hover{background:var(--gray-700,#374151);transform:translateY(-1px)}.github-repo-btn svg{flex-shrink:0}.search-bar{align-items:center;max-width:600px;margin:0 auto;display:flex;position:relative}.search-bar-large{max-width:640px}.search-bar-icon{color:var(--gray-400);pointer-events:none;position:absolute;left:16px}.search-bar input{border:1.5px solid var(--gray-300);width:100%;height:48px;font-size:15px;font-family:var(--font-sans);color:var(--gray-800);background:var(--white);box-shadow:var(--shadow-sm);border-radius:10px;padding:0 110px 0 46px;transition:all .2s}.search-bar-large input{border-radius:12px;height:54px;font-size:16px}.search-bar input:focus{border-color:var(--indigo-500);outline:none;box-shadow:0 0 0 3px #6366f11f}.search-bar-btn{background:var(--indigo-600);color:#fff;height:36px;font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:8px;padding:0 20px;transition:background .15s;position:absolute;right:6px}.search-bar-large .search-bar-btn{border-radius:10px;height:42px}.search-bar-btn:hover{background:var(--indigo-700)}.how-it-works{border-bottom:1px solid var(--gray-100);padding:64px 0}.section-title{font-family:var(--font-serif);color:var(--gray-900);text-align:center;margin-bottom:40px;font-size:1.75rem;font-weight:600}.steps{justify-content:center;align-items:flex-start;gap:20px;display:flex}.step{text-align:center;flex:1;max-width:280px;padding:24px}.step-number{background:var(--indigo-100);width:40px;height:40px;color:var(--indigo-700);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:16px;font-weight:700;display:flex}.step h3{font-family:var(--font-sans);color:var(--gray-800);margin-bottom:8px;font-size:1rem;font-weight:600}.step p{color:var(--gray-500);font-size:.9rem;line-height:1.6}.step-arrow{color:var(--gray-300);flex-shrink:0;padding-top:32px;font-size:1.5rem}.featured{padding:64px 0 80px}.section-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.section-header .section-title{text-align:left;margin-bottom:0}.section-link{color:var(--indigo-600);font-size:14px;font-weight:600}.section-link:hover{color:var(--indigo-700)}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.loading{text-align:center;color:var(--gray-400);padding:60px 0;font-size:15px}.skill-card{border:1px solid var(--gray-200);border-radius:var(--radius-lg);color:inherit;background:var(--white);flex-direction:column;padding:24px;text-decoration:none;transition:all .2s;display:flex}.skill-card:hover{border-color:var(--indigo-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.skill-card-header{justify-content:flex-end;margin-bottom:8px;display:flex}.skill-card-engine{font-size:11px;font-family:var(--font-mono);color:var(--gray-400);background:var(--gray-50);border-radius:4px;padding:2px 8px}.skill-card-name{font-family:var(--font-mono);color:var(--indigo-700);word-break:break-word;margin-bottom:8px;font-size:.95rem;font-weight:600}.skill-card-desc{color:var(--gray-600);flex:1;margin-bottom:16px;font-size:.875rem;line-height:1.6}.skill-card-paper{color:var(--gray-400);border-top:1px solid var(--gray-100);align-items:flex-start;gap:8px;padding-top:12px;font-size:.8rem;display:flex}.skill-card-paper svg{flex-shrink:0;margin-top:1px}.skill-card-paper span{line-height:1.4}.browse{padding:48px 0 80px}.browse-header{margin-bottom:24px}.browse-title{font-family:var(--font-serif);color:var(--gray-900);margin-bottom:4px;font-size:2rem;font-weight:700}.browse-count{color:var(--gray-500);font-size:.9rem}.browse .search-bar{max-width:100%;margin:0 0 20px}.source-filter{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px;display:flex}.source-filter-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;font-size:13px;font-weight:600}.source-filter-chips{flex-wrap:wrap;gap:8px;display:flex}.source-chip{border:1.5px solid var(--gray-200);background:var(--white);font-family:var(--font-sans);color:var(--gray-600);cursor:pointer;white-space:nowrap;border-radius:100px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.source-chip:hover{border-color:var(--indigo-300);color:var(--indigo-600)}.source-chip-active{background:var(--indigo-50);border-color:var(--indigo-400);color:var(--indigo-700);font-weight:600}.source-chip-count{background:var(--gray-100);color:var(--gray-500);text-align:center;border-radius:100px;min-width:20px;padding:1px 7px;font-size:11px;font-weight:600}.source-chip-active .source-chip-count{background:var(--indigo-100);color:var(--indigo-600)}.no-results{text-align:center;padding:80px 0}.no-results h3{font-family:var(--font-serif);color:var(--gray-700);margin-bottom:8px;font-size:1.25rem}.no-results p{color:var(--gray-500);font-size:.9rem}.load-more{text-align:center;padding:40px 0 0}.load-more-btn{background:var(--white);border:1.5px solid var(--gray-300);border-radius:var(--radius);font-family:var(--font-sans);color:var(--gray-700);cursor:pointer;padding:12px 32px;font-size:14px;font-weight:600;transition:all .15s}.load-more-btn:hover{border-color:var(--indigo-400);color:var(--indigo-600)}.skill-page{padding:32px 0 80px}.back-link{color:var(--gray-500);margin-bottom:24px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.back-link:hover{color:var(--indigo-600)}.skill-detail{grid-template-columns:280px 1fr;align-items:start;gap:40px;display:grid}.skill-meta{position:sticky;top:88px}.meta-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:20px}.meta-card h3{font-family:var(--font-serif);color:var(--gray-800);border-bottom:1px solid var(--gray-200);margin-bottom:16px;padding-bottom:12px;font-size:1rem;font-weight:600}.meta-row{margin-bottom:14px}.meta-row:last-child{margin-bottom:0}.meta-label{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.meta-value{color:var(--gray-700);font-size:.875rem;line-height:1.5}.meta-value code{font-family:var(--font-mono);background:var(--indigo-50);color:var(--indigo-700);border-radius:4px;padding:2px 6px;font-size:.8rem}.meta-value a{color:var(--indigo-600);word-break:break-all;font-size:.8rem;text-decoration:none}.meta-value a:hover{text-decoration:underline}.meta-keywords{color:var(--gray-600)!important;font-size:.8rem!important;line-height:1.6!important}.meta-desc{color:var(--gray-500)!important;font-size:.8rem!important;line-height:1.6!important}.skill-content{min-width:0}.skill-content h1{font-family:var(--font-serif);color:var(--gray-900);margin-bottom:24px;font-size:2rem;font-weight:700;line-height:1.2}.skill-content h2{font-family:var(--font-serif);color:var(--gray-800);border-bottom:1px solid var(--gray-100);margin-top:40px;margin-bottom:16px;padding-bottom:8px;font-size:1.4rem;font-weight:600}.skill-content h3{font-family:var(--font-sans);color:var(--gray-800);margin-top:28px;margin-bottom:12px;font-size:1.1rem;font-weight:600}.skill-content p{color:var(--gray-700);margin-bottom:16px;font-size:.95rem;line-height:1.75}.skill-content ul,.skill-content ol{margin-bottom:16px;padding-left:24px}.skill-content li{color:var(--gray-700);margin-bottom:6px;font-size:.95rem;line-height:1.7}.skill-content strong{color:var(--gray-800);font-weight:600}.skill-content code{font-family:var(--font-mono);background:var(--gray-100);color:var(--indigo-700);border-radius:3px;padding:2px 5px;font-size:.85em}.skill-content pre{border:1px solid var(--gray-200);border-radius:var(--radius);background:#faf8f5;margin-bottom:20px;padding:20px;overflow-x:auto}.skill-content pre code{color:var(--gray-800);background:0 0;padding:0;font-size:.82rem;line-height:1.7}.skill-content blockquote{border-left:3px solid var(--indigo-300);background:var(--indigo-50);border-radius:0 var(--radius) var(--radius) 0;margin:16px 0;padding:8px 16px}.skill-content blockquote p{color:var(--gray-600);margin-bottom:0}.skill-content a{color:var(--indigo-600);text-underline-offset:2px;text-decoration:underline}.skill-content table{border-collapse:collapse;width:100%;margin-bottom:20px;font-size:.875rem}.skill-content th,.skill-content td{border:1px solid var(--gray-200);text-align:left;padding:10px 14px}.skill-content th{background:var(--gray-50);color:var(--gray-700);font-weight:600}.hljs-keyword,.hljs-selector-tag,.hljs-built_in{color:#7c3aed}.hljs-string{color:#16a34a}.hljs-attr{color:#b45309}.hljs-comment{color:#9ca3af;font-style:italic}.hljs-function,.hljs-title,.hljs-title.function_{color:#4338ca}.hljs-number,.hljs-literal{color:#c2410c}.hljs-params{color:#b45309}.hljs-type,.hljs-class{color:#0e7490}.hljs-variable{color:var(--gray-800)}.hljs-meta{color:#9ca3af}.hljs-property{color:#0369a1}.hljs-selector-class{color:#b45309}.hljs-tag,.hljs-name{color:#c2410c}.hljs-attribute{color:#7c3aed}.hljs-symbol,.hljs-bullet{color:#16a34a}.hljs-deletion{color:#dc2626;background:#fef2f2}.hljs-addition{color:#16a34a;background:#f0fdf4}.footer{border-top:1px solid var(--gray-100);background:var(--gray-50);padding:40px 0}.footer-inner{max-width:var(--max-width);text-align:center;margin:0 auto;padding:0 24px}.footer-text{color:var(--gray-600);font-size:.875rem;font-weight:500}.footer-sub{color:var(--gray-400);margin-top:4px;font-size:.8rem}@media (width<=768px){.hero-title{font-size:2rem}.hero-stats{gap:20px}.stat-number{font-size:1.25rem}.steps{flex-direction:column;align-items:center}.step-arrow{padding:0;transform:rotate(90deg)}.skills-grid,.skill-detail{grid-template-columns:1fr}.skill-meta{position:static}.header-search{display:none}}@media (width<=480px){.hero{padding:48px 16px 40px}.hero-title{font-size:1.75rem}.hero-stats{flex-direction:column;gap:12px}.stat-divider{display:none}}
