@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-color:#06080d;--bg-surface:#0c0f16;--bg-panel:#0e111abf;--bg-panel-hover:#141824d9;--text-primary:#e4e7ef;--text-secondary:#7c829a;--text-tertiary:#4a4f64;--accent:#818cf8;--accent-bright:#a5b4fc;--accent-hover:#6366f1;--accent-dim:#4f46e5;--accent-subtle:#818cf814;--accent-glow:#818cf84d;--accent-gradient:linear-gradient(135deg, #818cf8, #6366f1, #4f46e5);--cyan:#22d3ee;--cyan-subtle:#22d3ee14;--emerald:#34d399;--emerald-subtle:#34d39914;--rose:#fb7185;--rose-subtle:#fb718514;--amber:#fbbf24;--border-color:#ffffff0d;--border-subtle:#ffffff08;--border-hover:#ffffff1a;--border-accent:#818cf833;--success:#34d399;--danger:#fb7185;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 20px #00000059;--shadow-lg:0 8px 40px #0006;--shadow-glow:0 0 60px #818cf814;--transition-fast:.15s ease;--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-spring:.4s cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0}html{color:var(--text-primary);background:var(--bg-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}body{min-width:320px;min-height:100vh;margin:0;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#818cf814 0%,#0000 70%);width:80%;height:60%;animation:8s ease-in-out infinite alternate ambient-pulse;position:fixed;top:-20%;left:50%;transform:translate(-50%)}body:after{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#22d3ee0a 0%,#0000 70%);width:50%;height:50%;animation:12s ease-in-out infinite alternate ambient-drift;position:fixed;bottom:-30%;right:-10%}@keyframes ambient-pulse{0%{opacity:.6;transform:translate(-50%)scale(1)}to{opacity:1;transform:translate(-50%)scale(1.1)}}@keyframes ambient-drift{0%{opacity:.5;transform:translate(0)}to{opacity:.8;transform:translate(-5%,5%)}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}::selection{color:#fff;background:#818cf840}#root{flex-direction:column;min-height:100vh;display:flex}.app{flex-direction:column;flex:1;gap:36px;width:min(1080px,100% - 32px);margin:0 auto;padding:56px 0 40px;display:flex}.hero{max-width:640px;animation:.9s cubic-bezier(.16,1,.3,1) both hero-enter}.eyebrow{letter-spacing:.22em;color:var(--accent);text-transform:uppercase;align-items:center;gap:8px;margin:0 0 14px;font-size:10px;font-weight:700;display:inline-flex}.hero .eyebrow{background:var(--accent-subtle);border:1px solid var(--border-accent);border-radius:100px;align-items:center;gap:8px;padding:5px 12px 5px 8px;animation:3s ease-in-out infinite alternate eyebrow-glow;display:inline-flex}.hero .eyebrow:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent-glow);border-radius:50%;animation:2s ease-in-out infinite dot-pulse}@keyframes eyebrow-glow{0%{border-color:#818cf826}to{border-color:#818cf84d}}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}h1{letter-spacing:-.04em;background:linear-gradient(135deg, #f0f2f5 0%, var(--accent-bright) 50%, var(--cyan) 100%);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(30px,5vw,50px);font-weight:800;line-height:1.1;animation:6s ease-in-out infinite alternate gradient-shift}@keyframes gradient-shift{0%{background-position:0%}to{background-position:100%}}.subtitle{max-width:480px;color:var(--text-secondary);margin:12px 0 28px;font-size:13.5px;font-weight:400;line-height:1.75}.scan-form{gap:10px;display:flex;position:relative}.scan-form input{border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:0;color:var(--text-primary);font:inherit;transition:all var(--transition-base);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff06;flex:1;padding:12px 16px;font-size:13px}.scan-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle), var(--shadow-glow);background:#ffffff0a;outline:none}.scan-form input::placeholder{color:var(--text-tertiary)}.scan-form button{border-radius:var(--radius-md);background:var(--accent-gradient);color:#fff;font:inherit;cursor:pointer;transition:all var(--transition-base);box-shadow:0 2px 16px var(--accent-glow);white-space:nowrap;background-size:150% 150%;border:0;padding:12px 28px;font-size:13px;font-weight:600;position:relative;overflow:hidden}.scan-form button:before{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);transition:none;position:absolute;inset:0;transform:translate(-100%)}.scan-form button:hover:not(:disabled):before{transition:transform .6s;transform:translate(100%)}.scan-form button:hover:not(:disabled){box-shadow:0 4px 24px var(--accent-glow);background-position:100%;transform:translateY(-1px)}.scan-form button:active:not(:disabled){transform:translateY(0)scale(.98)}.scan-form button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.github-access-card{border:1px solid var(--border-color);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color var(--transition-base);background:#ffffff05;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:14px 16px;animation:.5s ease-out .15s both fade-in;display:flex}.github-access-card:has(.github-connected-btn){background:linear-gradient(105deg,#34d3990f,#0000 70%),#ffffff05;border-color:#34d39940}.github-access-info{align-items:center;gap:12px;min-width:0;display:flex}.github-access-icon{width:32px;height:32px;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all var(--transition-base);background:#ffffff08;flex:0 0 32px;place-items:center;display:grid}.github-access-card:has(.github-connected-btn) .github-access-icon{color:var(--emerald);background:#34d39914;border-color:#34d3994d}.github-access-copy{gap:2px;min-width:0;display:grid}.github-access-copy strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:650;overflow:hidden}.github-access-copy>span{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.5;overflow:hidden}.github-access-actions{flex-shrink:0}.github-connect-btn,.github-connected-btn{border-radius:var(--radius-sm);font:inherit;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;display:inline-flex}.github-connect-btn{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 12px var(--accent-glow);border:0}.github-connect-btn:hover:not(:disabled){box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.github-connect-btn:disabled{opacity:.5;cursor:not-allowed}.github-connected-btn{color:var(--emerald);background:#34d39914;border:1px solid #34d3994d;position:relative;overflow:hidden}.github-connected-btn .disconnect-icon{opacity:0;color:var(--rose);transition:opacity var(--transition-fast)}.github-connected-btn:hover{color:var(--rose);background:#fb718514;border-color:#fb71854d;transform:translateY(-1px)}.github-connected-btn:hover .disconnect-icon{opacity:1}.scan-status{color:var(--accent-bright);background:var(--accent-subtle);border:1px solid var(--border-accent);border-radius:100px;align-items:center;gap:8px;margin-top:12px;padding:8px 14px;font-size:12px;animation:.3s ease-out fade-in;display:inline-flex}.scan-status-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent-glow);border-radius:50%;animation:1s ease-in-out infinite status-pulse}.wakeup-status{max-width:420px;color:var(--text-primary);background:var(--amber-subtle,#fbbf2414);border-radius:var(--radius-sm);border:1px solid #fbbf2433;gap:8px;margin-top:14px;padding:12px 14px;font-size:12px;display:grid}.wakeup-status progress{width:100%;height:5px;accent-color:var(--amber)}.wakeup-status span{color:var(--text-secondary);font-size:11px}.wakeup-error{color:var(--rose);align-items:center;gap:12px;margin-top:12px;font-size:12px;display:flex}.wakeup-error button{color:var(--text-primary);border:1px solid var(--border-hover);border-radius:var(--radius-sm);font:inherit;cursor:pointer;background:0 0;padding:6px 12px}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.error{color:var(--rose);background:var(--rose-subtle);border-radius:var(--radius-sm);border:1px solid #fb71851f;align-items:center;gap:6px;margin-top:12px;padding:10px 14px;font-size:12px;font-weight:500;animation:.4s ease-out shake;display:inline-flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.results{flex-direction:column;gap:20px;display:flex}.results>*{animation:.5s cubic-bezier(.16,1,.3,1) both stagger-in}.results>:first-child{animation-delay:0s}.results>:nth-child(2){animation-delay:80ms}.results>:nth-child(3){animation-delay:.16s}.repository-header{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-panel);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-md);justify-content:space-between;align-items:flex-end;gap:20px;padding:24px;display:flex;position:relative;overflow:hidden}.repository-header:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:.4;height:1px;position:absolute;top:0;left:0;right:0}.repository-header h2{letter-spacing:-.02em;margin:0 0 4px;font-size:20px;font-weight:700}.repository-header p{color:var(--text-secondary);margin:0;font-size:12px}.repository-header a{border-radius:var(--radius-sm);color:var(--text-primary);transition:all var(--transition-base);border:1px solid var(--border-color);white-space:nowrap;background:#ffffff0a;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.repository-header a:hover{border-color:var(--border-hover);background:#ffffff14;transform:translateY(-1px)}.stats{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.stats article{flex-direction:column;gap:8px;padding:20px;display:flex;position:relative;overflow:hidden}.stats article:after{content:"";background:var(--accent-gradient);opacity:0;height:2px;transition:opacity var(--transition-base);border-radius:1px;position:absolute;bottom:0;left:20px;right:20px}.stats article:hover:after{opacity:.6}.stats article,.panel{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-panel);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-md);transition:transform var(--transition-spring), border-color var(--transition-base), box-shadow var(--transition-base)}.stats article:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg), var(--shadow-glow);transform:translateY(-3px)}.stats span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600;display:block}.stats strong{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-primary), var(--accent-bright));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:26px;font-weight:800;line-height:1}.stats article:first-child span{color:var(--accent)}.stats article:nth-child(2) span{color:var(--cyan)}.stats article:nth-child(3) span{color:var(--emerald)}.stats article:first-child:after{background:linear-gradient(90deg, var(--accent), transparent)}.stats article:nth-child(2):after{background:linear-gradient(90deg, var(--cyan), transparent)}.stats article:nth-child(3):after{background:linear-gradient(90deg, var(--emerald), transparent)}.content-grid{grid-template-columns:260px 1fr;gap:14px;display:grid}.panel{flex-direction:column;display:flex;overflow:hidden}.panel:hover{border-color:var(--border-hover)}.panel h3{letter-spacing:-.01em;margin:0;font-size:13px;font-weight:600}.panel-header{border-bottom:1px solid var(--border-color);background:#ffffff03;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.panel-header .muted{background:0 0;border-top:0;margin:3px 0 0;padding:0;font-size:11px}.icon-button{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.icon-button:hover{border-color:var(--border-color);color:var(--text-primary);background:#ffffff0f;transform:scale(1.1)}.icon-button .success-icon{color:var(--success)}.extensions{padding:6px 18px}.extension,.file{border-bottom:1px solid var(--border-subtle);transition:all var(--transition-fast);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:12.5px;display:flex}.extension:last-child,.file:last-child{border-bottom:0}.extension:hover,.file:hover{border-radius:var(--radius-xs);background:#ffffff05;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}.extension strong{background:var(--accent-subtle);color:var(--accent);font-variant-numeric:tabular-nums;border:1px solid var(--border-accent);border-radius:10px;padding:2px 8px;font-size:10.5px;font-weight:600}.repository-files-panel{min-width:0}.file-list{max-height:460px;padding:6px 18px;overflow:auto}.file{color:var(--text-primary);cursor:pointer;text-align:left;border:0;border-bottom:1px solid var(--border-subtle);background:0 0;width:100%;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px}.file:hover{color:var(--accent-bright)}.file span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.file small{color:var(--text-tertiary);flex-shrink:0;font-size:10px}.muted{color:var(--text-secondary);border-top:1px solid var(--border-color);background:#ffffff02;margin:0;padding:10px 18px;font-size:11px}.file-page-indicator{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:10px}.file-pagination{border-top:1px solid var(--border-color);justify-content:center;align-items:center;gap:5px;padding:10px 18px;font-size:11px;display:flex}.file-pagination span{color:var(--text-secondary);font-variant-numeric:tabular-nums;padding:0 4px}.file-pagination button{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:4px 10px;font-family:inherit;font-size:10px}.file-pagination button:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-hover);background:#ffffff0d}.file-pagination button:disabled{opacity:.25;cursor:not-allowed}.repository-tree{min-width:0;max-height:460px;padding:10px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;overflow:auto}.tree-node{flex-direction:column;display:flex}.tree-node-content{border-radius:var(--radius-xs);width:100%;min-height:24px;color:inherit;text-align:left;font:inherit;transition:all var(--transition-fast);cursor:default;background:0 0;border:0;align-items:center;gap:5px;padding:1px 5px;display:flex}.tree-node-directory{cursor:pointer}.tree-node-directory:hover{background:#818cf80f}.tree-node-file:hover{background:#ffffff08}.tree-node-file{cursor:default}.tree-node-chevron{opacity:.45;width:12px;min-width:12px;transition:transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.tree-node-chevron-spacer{width:12px}.tree-node-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;min-width:16px;height:16px;display:inline-flex}.tree-node-icon svg{display:block}.tree-node-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);overflow:hidden}.tree-node-size{color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;padding-left:10px;font-size:9.5px}.tree-node-children{border-left:1px solid var(--border-color);transition:border-color var(--transition-base);margin-left:8px;padding-left:10px}.tree-node:hover>.tree-node-children{border-left-color:var(--border-hover)}.file-viewer{grid-column:1/-1;animation:.35s cubic-bezier(.16,1,.3,1) both slide-up}.file-viewer-header{border-bottom:1px solid var(--border-color);background:#ffffff03;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.file-viewer-title{align-items:baseline;gap:10px;min-width:0;display:flex;overflow:hidden}.file-viewer-title strong{white-space:nowrap;font-size:12px;font-weight:600}.file-viewer-title span{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.file-viewer-actions{flex-shrink:0;align-items:center;gap:3px;display:flex}.file-viewer-content{max-height:460px;padding:14px 18px;overflow:auto}.file-viewer-content pre{color:var(--text-primary);white-space:pre;tab-size:2;margin:0;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;line-height:1.65}.file-viewer-content code{font:inherit}.file-viewer-loading{color:var(--text-secondary);grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:28px 18px;font-size:12px;animation:1.5s ease-in-out infinite loading-pulse;display:flex}@keyframes loading-pulse{0%,to{opacity:.5}50%{opacity:1}}.site-footer{text-align:center;margin-top:auto;padding:28px 0 24px;position:relative}.site-footer:before{content:"";background:linear-gradient(90deg, transparent, var(--border-hover), transparent);width:min(400px,80%);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.footer-content{flex-direction:column;align-items:center;gap:10px;display:flex}.footer-crafted{color:var(--text-tertiary);letter-spacing:.02em;align-items:center;gap:6px;font-size:11px;display:inline-flex}.footer-crafted .footer-heart{color:var(--rose);font-size:12px;animation:1.8s ease-in-out infinite heartbeat;display:inline-block}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}60%{transform:scale(1)}}.footer-developer{align-items:center;gap:8px;display:inline-flex}.footer-developer a{color:var(--text-secondary);border:1px solid var(--border-color);transition:all var(--transition-base);background:#ffffff05;border-radius:100px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.footer-developer a:before{content:"";background:var(--accent-gradient);opacity:0;transition:opacity var(--transition-base);position:absolute;inset:0}.footer-developer a:hover{border-color:var(--accent);color:#fff;box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.footer-developer a:hover:before{opacity:.12}.footer-developer a svg,.footer-developer a span{z-index:1;position:relative}.footer-tech{color:var(--text-tertiary);letter-spacing:.04em;font-size:10px}.footer-tech span{color:var(--text-secondary)}@keyframes hero-enter{0%{opacity:0;filter:blur(4px);transform:translateY(24px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes stagger-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (width<=900px){.app{gap:24px;padding:32px 0 24px}.scan-form,.repository-header{flex-direction:column;align-items:stretch}.repository-header a{justify-content:center}.stats,.content-grid{grid-template-columns:1fr}.site-footer{padding:20px 16px}}
