@import "https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Syne:wght@400;500;600;700;800&display=swap";:root{--bg:#0a0a0f;--bg2:#111118;--bg3:#1a1a24;--border:#2a2a3a;--border2:#3a3a4a;--text:#e8e8f0;--text2:#9090a8;--text3:#5a5a72;--accent:#7c6aff;--accent2:#a855f7;--accent3:#06b6d4;--green:#10b981;--yellow:#f59e0b;--red:#ef4444;--card:#13131c;--card-hover:#1c1c28;--radius:12px;--radius-sm:6px;--shadow:0 4px 24px #0006;--shadow-card:0 2px 12px #0000004d;--shadow-hover:0 8px 32px #00000080;--shadow-accent:0 0 20px #7c6aff1f;--nav-height:56px}[data-theme=light]{--bg:#f4f4f8;--bg2:#ebebf2;--bg3:#e0e0ea;--border:#d0d0e0;--border2:#b8b8cc;--text:#12121e;--text2:#4a4a62;--text3:#8a8aa2;--accent:#6c5ce7;--accent2:#9333ea;--accent3:#0891b2;--green:#059669;--yellow:#d97706;--red:#dc2626;--card:#fff;--card-hover:#f8f8fc;--shadow:0 4px 24px #00000014;--shadow-card:0 2px 12px #0000000f;--shadow-hover:0 8px 32px #0000001f;--shadow-accent:0 0 20px #6c5ce714}*{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Syne,sans-serif;overflow-x:hidden}code,pre,.mono{font-family:Space Mono,monospace}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}::selection{background:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--text)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none}input,select{font-family:inherit;font-size:inherit;color:inherit;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:8px 12px;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent)}.app-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden}.main-content{flex:1;display:flex;overflow:hidden}.loading-screen{background:var(--bg);background-image:radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 70%);justify-content:center;align-items:center;height:100vh;display:flex}.loading-inner{flex-direction:column;align-items:center;gap:24px;width:400px;display:flex}.loading-logo{letter-spacing:4px;font-family:Space Mono,monospace;font-size:2rem;font-weight:700;position:relative}.loading-logo:after{content:"";background:radial-gradient(ellipse, color-mix(in srgb, var(--accent) 14%, transparent), transparent 70%);pointer-events:none;z-index:-1;position:absolute;inset:-12px -20px}.logo-bracket{color:var(--text3)}.logo-text{color:var(--text)}.logo-accent{color:var(--accent)}.loading-stats{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.stat-pill{background:var(--bg3);border:1px solid var(--border);color:var(--text2);letter-spacing:.5px;border-radius:20px;padding:4px 12px;font-family:Space Mono,monospace;font-size:.72rem}.loading-bar-wrap{background:var(--border);border-radius:2px;width:100%;height:2px;overflow:hidden}.loading-bar{background:linear-gradient(90deg, var(--accent), var(--accent2));height:100%;box-shadow:0 0 10px var(--accent);border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1)}.loading-msg{color:var(--text3);letter-spacing:1.5px;font-family:Space Mono,monospace;font-size:.72rem}.navbar{height:var(--nav-height);background:var(--bg2);border-bottom:1px solid var(--border);z-index:100;flex-shrink:0;align-items:center;gap:16px;padding:0 16px;display:flex;position:relative}.navbar:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), var(--accent2), transparent);opacity:.45;height:1px;position:absolute;top:0;left:0;right:0}.navbar-left{flex-shrink:0;align-items:center;gap:14px;display:flex}.nav-logo{letter-spacing:2px;white-space:nowrap;-webkit-user-select:none;user-select:none;font-family:Space Mono,monospace;font-size:.85rem;font-weight:700}.layer-tabs{background:var(--bg);border:1px solid var(--border);border-radius:8px;gap:3px;padding:3px;display:flex}.layer-tab{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex-direction:column;align-items:center;min-width:58px;padding:4px 11px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.layer-tab:hover{background:var(--bg3);border-color:var(--border)}.layer-tab.active{background:color-mix(in srgb, var(--tab-color) 14%, transparent);border-color:color-mix(in srgb, var(--tab-color) 35%, transparent);box-shadow:0 1px 6px color-mix(in srgb, var(--tab-color) 15%, transparent)}.tab-label{letter-spacing:1px;color:var(--tab-color,var(--text2));font-family:Space Mono,monospace;font-size:.62rem;font-weight:700;line-height:1}.tab-count{color:var(--text3);margin-top:2px;font-family:Space Mono,monospace;font-size:.63rem}.layer-tab.active .tab-count{color:color-mix(in srgb, var(--tab-color) 70%, var(--text3))}.navbar-center{flex:1;max-width:560px;margin:0 auto}.search-wrap{align-items:center;display:flex;position:relative}.search-icon{color:var(--text3);pointer-events:none;z-index:1;font-family:Space Mono,monospace;font-size:.85rem;transition:color .15s;position:absolute;left:10px}.search-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:7px 32px 7px 28px;font-size:.82rem;transition:all .2s}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.search-clear{color:var(--text3);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:1.1rem;line-height:1;transition:color .15s;display:flex;position:absolute;right:8px}.search-clear:hover{color:var(--text);background:var(--bg3)}.navbar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.nav-total{color:var(--text3);font-family:Space Mono,monospace;font-size:.68rem}.theme-toggle{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg3);cursor:pointer;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;transition:all .2s;display:flex}.theme-toggle:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--bg3));transform:rotate(15deg)}.sidebar{background:var(--bg2);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:220px;padding:10px 0;display:flex;overflow:hidden auto}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:6px;padding:4px 14px 10px;display:flex}.sidebar-title{letter-spacing:2.5px;color:var(--text3);font-family:Space Mono,monospace;font-size:.6rem}.clear-btn{color:var(--accent);cursor:pointer;border-radius:4px;padding:2px 6px;font-size:.68rem;transition:opacity .15s}.clear-btn:hover{opacity:.75;background:color-mix(in srgb, var(--accent) 10%, transparent)}.sidebar-section{border-bottom:1px solid var(--border);margin-bottom:2px;padding:8px 14px}.section-label{letter-spacing:2px;color:var(--text3);margin-bottom:8px;font-family:Space Mono,monospace;font-size:.58rem}.sort-options{flex-wrap:wrap;gap:4px;display:flex}.sort-btn{border:1px solid var(--border);color:var(--text2);cursor:pointer;background:0 0;border-radius:4px;padding:3px 9px;font-family:Space Mono,monospace;font-size:.68rem;transition:all .15s}.sort-btn:hover{border-color:var(--border2);color:var(--text);background:var(--bg3)}.sort-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 10px color-mix(in srgb, var(--accent) 35%, transparent)}.filter-list{flex-direction:column;gap:1px;display:flex}.filter-item{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:space-between;align-items:center;width:100%;padding:5px 8px;transition:all .12s;display:flex}.filter-item:hover{background:var(--bg3);border-color:var(--border)}.filter-item.active{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 28%, transparent)}.filter-name{color:var(--text2);white-space:nowrap;text-overflow:ellipsis;max-width:130px;font-size:.73rem;transition:color .12s;overflow:hidden}.filter-item:hover .filter-name,.filter-item.active .filter-name{color:var(--text)}.filter-count{color:var(--text3);background:var(--bg3);border-radius:3px;flex-shrink:0;padding:1px 5px;font-family:Space Mono,monospace;font-size:.62rem;transition:background .12s,color .12s}.filter-item.active .filter-count{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.grid-wrap{flex-direction:column;flex:1;gap:14px;padding:16px;display:flex;overflow-y:auto}.grid-header{justify-content:space-between;align-items:center;display:flex}.grid-count{color:var(--text3);font-family:Space Mono,monospace;font-size:.68rem}.repo-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.repo-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:14px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:flex;position:relative}.repo-card:before{content:"";border-radius:var(--radius);opacity:0;background:radial-gradient(ellipse at top left, color-mix(in srgb, var(--accent) 5%, transparent), transparent 65%);pointer-events:none;transition:opacity .18s;position:absolute;inset:0}.repo-card:hover{background:var(--card-hover);border-color:var(--border2);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.repo-card:hover:before{opacity:1}.repo-card.is-shelf{border-color:#f59e0b38}.repo-card.is-shelf:hover{box-shadow:var(--shadow-hover), 0 0 24px #f59e0b14;border-color:#f59e0b73}.repo-card.is-pinned{border-color:#7c6aff38}.repo-card.is-pinned:hover{box-shadow:var(--shadow-hover), var(--shadow-accent);border-color:#7c6aff73}.card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.card-badges{flex-wrap:wrap;flex:1;gap:5px;min-width:0;display:flex}.badge{letter-spacing:.4px;white-space:nowrap;border-radius:20px;padding:2px 8px;font-size:.63rem;font-weight:600}.lang-badge{background:var(--bg3);border:1px solid var(--border);color:var(--text2);align-items:center;gap:5px;display:flex}.lang-dot{background:var(--lang-color);width:6px;height:6px;box-shadow:0 0 5px var(--lang-color);border-radius:50%;flex-shrink:0}.type-badge{font-size:.6rem}.card-actions{flex-shrink:0;gap:4px;display:flex}.action-btn{border:1px solid var(--border);background:var(--bg3);width:26px;height:26px;color:var(--text3);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex}.action-btn:hover{border-color:var(--border2);color:var(--text);background:var(--bg2)}.action-btn.active-accent{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent)}.action-btn.active-yellow{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b73}.card-main{flex-direction:column;flex:1;gap:7px;display:flex}.card-name{color:var(--text);word-break:break-all;font-size:.78rem;font-weight:700;line-height:1.35;transition:color .15s}.repo-card:hover .card-name{color:color-mix(in srgb, var(--accent) 55%, var(--text))}.card-desc{color:var(--text2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.76rem;line-height:1.55;display:-webkit-box;overflow:hidden}.card-topics{flex-wrap:wrap;gap:4px;display:flex}.topic-tag{background:var(--bg3);color:var(--text3);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:Space Mono,monospace;font-size:.6rem;transition:color .12s,border-color .12s}.topic-tag:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.topic-more{color:var(--text3);padding:2px 4px;font-family:Space Mono,monospace;font-size:.6rem}.card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:9px;display:flex}.card-stats{gap:10px;display:flex}.stat{color:var(--text3);font-family:Space Mono,monospace;font-size:.65rem}.card-layer-badge{border-radius:20px;padding:2px 8px;font-family:Space Mono,monospace;font-size:.58rem;font-weight:700}.load-more{border:1px dashed var(--border);border-radius:var(--radius);width:100%;color:var(--text3);cursor:pointer;letter-spacing:.5px;background:0 0;padding:12px;font-family:Space Mono,monospace;font-size:.75rem;transition:all .18s}.load-more:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, transparent)}.empty-state{color:var(--text3);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 20px;display:flex}.empty-icon{opacity:.2;font-size:3rem}.empty-text{font-family:Space Mono,monospace;font-size:.82rem}.detail-backdrop{-webkit-backdrop-filter:blur(6px);z-index:100;background:#000000a6;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.detail-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000a6;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.detail-panel{background:var(--bg2);border-left:1px solid var(--border);flex-direction:column;width:min(680px,100vw);height:100vh;animation:.22s cubic-bezier(.16,1,.3,1) slideIn;display:flex;overflow:hidden;box-shadow:-8px 0 40px #00000059}@keyframes slideIn{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}.detail-header{border-bottom:1px solid var(--border);flex-shrink:0;padding:20px 20px 0}.detail-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.detail-name{color:var(--accent);word-break:break-all;font-size:.92rem;font-weight:700;line-height:1.3}.detail-header-actions{flex-shrink:0;align-items:center;gap:5px;display:flex}.detail-close{color:var(--text3);font-size:1rem}.detail-desc{color:var(--text2);margin-bottom:14px;font-size:.84rem;line-height:1.6}.detail-meta{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.meta-pill{background:var(--bg3);border:1px solid var(--border);color:var(--text2);border-radius:20px;padding:3px 10px;font-family:Space Mono,monospace;font-size:.72rem;transition:border-color .15s}.meta-pill.accent{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.detail-topics{flex-wrap:wrap;gap:5px;padding-bottom:16px;display:flex}.detail-tabs{border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.detail-tab{color:var(--text3);letter-spacing:.8px;cursor:pointer;border-bottom:2px solid #0000;padding:11px 22px;font-family:Space Mono,monospace;font-size:.72rem;transition:color .15s,border-color .15s}.detail-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.detail-tab:hover:not(.active){color:var(--text2)}.detail-body{flex:1;padding:20px;overflow-y:auto}.detail-loading{color:var(--text3);text-align:center;letter-spacing:1px;padding:60px 0;font-family:Space Mono,monospace;font-size:.78rem}.detail-readme{color:var(--text2);white-space:pre-wrap;word-break:break-word;font-family:Space Mono,monospace;font-size:.73rem;line-height:1.75}.detail-info{flex-direction:column;gap:1px;display:flex}.info-row{border-radius:var(--radius-sm);gap:16px;padding:9px 10px;font-size:.82rem;transition:background .12s;display:flex}.info-row:hover{background:var(--bg3)}.info-key{color:var(--text3);min-width:110px;font-family:Space Mono,monospace;font-size:.72rem}.info-summary{background:var(--bg3);border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text2);margin-top:16px;padding:14px;font-size:.82rem;line-height:1.65}.action-btn-lg{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg3);color:var(--text2);cursor:pointer;padding:5px 12px;font-family:Space Mono,monospace;font-size:.72rem;transition:all .15s}.action-btn-lg:hover{border-color:var(--border2);color:var(--text)}.action-btn-lg.active-accent{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--accent)}.action-btn-lg.active-yellow{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b73}.close-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg3);width:32px;height:32px;color:var(--text3);cursor:pointer;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;transition:all .15s;display:flex}.close-btn:hover{border-color:var(--red);color:var(--red)}.detail-title{align-items:center;gap:12px;min-width:0;display:flex}.detail-link{color:var(--accent3);white-space:nowrap;flex-shrink:0;font-size:.75rem;transition:opacity .15s}.detail-link:hover{opacity:.7}.detail-meta span{color:var(--text2);font-family:Space Mono,monospace;font-size:.75rem}.dtab{letter-spacing:1px;color:var(--text3);cursor:pointer;background:0 0;border-bottom:2px solid #0000;padding:10px 20px;font-family:Space Mono,monospace;font-size:.72rem;font-weight:600;transition:all .15s}.dtab:hover{color:var(--text)}.dtab.active{color:var(--accent);border-bottom-color:var(--accent)}.readme-content{color:var(--text2);white-space:pre-wrap;word-break:break-word;font-family:Space Mono,monospace;font-size:.72rem;line-height:1.75}.readme-actions{flex-shrink:0;gap:8px;display:flex}.action-pill{border:1px solid var(--border);background:var(--bg3);color:var(--text2);cursor:pointer;border-radius:20px;padding:6px 14px;font-family:Space Mono,monospace;font-size:.7rem;transition:all .15s}.action-pill:hover{border-color:var(--accent);color:var(--accent)}.summary-meta{color:var(--text3);margin-bottom:12px;font-family:Space Mono,monospace;font-size:.63rem}.empty-summary{color:var(--text3);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.empty-hint{color:var(--text3);max-width:280px;font-size:.73rem;line-height:1.55}.upload-area{flex-direction:column;gap:16px;display:flex}.upload-instructions{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:8px;padding:16px;display:flex}.upload-step{color:var(--text2);font-family:Space Mono,monospace;font-size:.73rem;line-height:1.6}.upload-btn{border-radius:var(--radius-sm);border:1px dashed var(--accent);color:var(--accent);cursor:pointer;justify-content:center;align-items:center;padding:10px 20px;font-family:Space Mono,monospace;font-size:.76rem;transition:all .18s;display:inline-flex}.upload-btn:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.upload-existing{color:var(--text3);font-size:.63rem}@media (width<=900px){.layer-tabs{display:none}.sidebar{width:190px}.repo-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (width<=640px){.sidebar{display:none}.navbar-center{max-width:100%}.repo-grid{grid-template-columns:1fr}.detail-panel{border-left:none;width:100vw}.navbar{gap:10px;padding:0 12px}}
