@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.premium-auth-wrapper{display:flex;align-items:center;justify-content:center;min-height:70vh;font-family:Inter,-apple-system,sans-serif;position:relative;width:100%}.premium-auth-wrapper:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80vw;height:80vw;max-width:600px;max-height:600px;background:radial-gradient(circle,rgba(91,140,255,.15) 0%,transparent 60%);z-index:-1;pointer-events:none}.premium-auth-form{display:flex;flex-direction:column;gap:1.25rem;background:#171a2399;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2.5rem 2rem;width:100%;max-width:448px;box-shadow:0 24px 48px #0003,inset 0 1px #ffffff0d;animation:slide-up-fade .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.premium-auth-header{text-align:center;margin-bottom:.5rem}.premium-auth-header h2{margin:0;font-size:1.75rem;font-weight:700;color:#fff;letter-spacing:-.02em}.premium-auth-header p{margin:.5rem 0 0;font-size:.9rem;color:#8b8fa3}.premium-auth-field{display:flex;flex-direction:column;gap:.4rem;position:relative}.premium-auth-field label{font-size:.85rem;color:#a1a1aa;font-weight:500;margin-left:.25rem;transition:color .2s}.premium-auth-field:focus-within label{color:#5b8cff}.premium-auth-input{background:#0f111799!important;border:1px solid rgba(255,255,255,.1)!important;color:#fff!important;padding:.85rem 1rem!important;border-radius:12px!important;font-size:1rem!important;outline:none!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;width:100%!important;box-shadow:inset 0 2px 4px #0000001a!important;font-family:inherit;box-sizing:border-box}.premium-auth-input:focus{border-color:#5b8cff!important;background:#0f1117e6!important;box-shadow:0 0 0 3px #5b8cff33,inset 0 2px 4px #0000001a!important}.premium-auth-input.invalid{border-color:#ef4444!important}.premium-auth-input.invalid:focus{box-shadow:0 0 0 3px #ef444433,inset 0 2px 4px #0000001a!important}.premium-auth-input:disabled{opacity:.5!important;cursor:not-allowed!important}.premium-password-wrapper{position:relative;display:flex;align-items:center}.premium-password-wrapper .premium-auth-input{padding-right:2.75rem!important}.premium-password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#8b8fa3;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.premium-password-toggle:hover:not(:disabled){color:#fff}.premium-password-toggle:disabled{opacity:.5;cursor:not-allowed}.premium-field-hint{color:#ef4444;font-size:.8rem;margin-top:.2rem;margin-left:.25rem;animation:fade-in .3s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.premium-error{color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:.85rem 1rem;border-radius:10px;font-size:.9rem;display:flex;align-items:flex-start;gap:.5rem;animation:fade-in .3s ease;line-height:1.4}.premium-submit-btn{background:linear-gradient(135deg,#5b8cff,#4f46e5)!important;color:#fff!important;border:none!important;padding:.9rem 1.5rem!important;border-radius:12px!important;cursor:pointer!important;font-weight:600!important;font-size:1rem!important;margin-top:.5rem!important;height:48px!important;transition:all .2s ease!important;box-shadow:0 4px 12px #5b8cff4d!important;position:relative!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;font-family:inherit;box-sizing:border-box}.premium-submit-btn:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.premium-submit-btn:hover:not(:disabled){transform:translateY(-2px)!important;box-shadow:0 6px 16px #5b8cff66!important}.premium-submit-btn:hover:not(:disabled):after{left:150%}.premium-submit-btn:active:not(:disabled){transform:translateY(0)!important;box-shadow:0 2px 8px #5b8cff4d!important}.premium-submit-btn:disabled{background:#ffffff0d!important;color:#fff6!important;box-shadow:none!important;cursor:not-allowed!important;transform:none!important}.premium-toggle-btn{background:transparent!important;border:none!important;color:#8b8fa3!important;cursor:pointer!important;font-size:.9rem!important;padding:.5rem!important;transition:color .2s ease!important;text-decoration:none!important;margin-top:-.25rem!important;font-family:inherit}.premium-toggle-btn:hover:not(:disabled){color:#fff!important;text-decoration:underline!important}.premium-toggle-btn:disabled{opacity:.5!important;cursor:not-allowed!important}.premium-forgot-link{background:transparent!important;border:none!important;color:#8b8fa3!important;cursor:pointer!important;font-size:.8rem!important;padding:.3rem 0 0!important;align-self:flex-end;transition:color .2s ease!important;font-family:inherit}.premium-forgot-link:hover:not(:disabled){color:#fff!important;text-decoration:underline!important}.premium-forgot-link:disabled{opacity:.5!important;cursor:not-allowed!important}.premium-info{color:#c7d2fe;background:#5b8cff1a;border:1px solid rgba(91,140,255,.25);padding:.85rem 1rem;border-radius:10px;font-size:.85rem;line-height:1.5;animation:fade-in .3s ease;display:flex;flex-direction:column;gap:.5rem}.premium-info p{margin:0}.premium-reset-token{display:block;padding:.6rem .75rem;background:#0f111799;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-family:SFMono-Regular,Consolas,monospace;font-size:.8rem;color:#fff;word-break:break-all}.premium-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}:root{--bg: #0f1117;--surface: #171a23;--surface-2: #1f2330;--border: #2a2f3d;--text: #e6e8ef;--text-muted: #8b8fa3;--accent: #5b8cff;--critical: #ef4444;--high: #f59e0b;--medium: #eab308;--low: #22c55e;--ok: #22c55e;--warn: #ef4444;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.app{max-width:960px;margin:0 auto;padding:2rem 1.25rem 4rem}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}h1{font-size:1.4rem;margin:0}nav{display:flex;gap:.5rem}.tab{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem}.tab.active{color:var(--text);border-color:var(--accent);background:#5b8cff1a}.repo-form{display:flex;flex-direction:column;gap:.85rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.repo-form-main{display:flex;gap:.75rem;align-items:flex-start;width:100%}.repo-form-field{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.repo-form-field label{font-size:.85rem;color:var(--text-muted);font-weight:500;margin-left:.2rem}.repo-form input[type=text],.repo-form select,.auth-form input{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:.65rem .85rem;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.repo-form input[type=text],.auth-form input{width:100%}.repo-form input[type=text]:focus,.repo-form select:focus,.auth-form input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #5b8cff26}.repo-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b8fa3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1em;padding-right:2.5rem;cursor:pointer}.repo-form select:disabled,.repo-form input[type=text]:disabled,.auth-form input:disabled{opacity:.6;cursor:not-allowed}.repo-form input[type=text].invalid,.auth-form input.invalid{border-color:var(--critical)}.field-hint{color:var(--critical);font-size:.78rem}.repo-form-options{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem;padding-top:.15rem}.repo-form-provider{display:flex;align-items:center;gap:.5rem}.repo-form-provider label{font-size:.85rem;color:var(--text-muted);font-weight:500;white-space:nowrap}.repo-form-provider select{font-size:.85rem;padding:.45rem 2.25rem .45rem .75rem;min-width:220px}.checkbox-label{display:flex;align-items:center;gap:.45rem;color:var(--text-muted);font-size:.85rem;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}button{font:inherit}.repo-form button[type=submit],.auth-form button[type=submit]{background:var(--accent);color:#fff;border:none;padding:.65rem 1.4rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.95rem;white-space:nowrap;height:40px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;transition:opacity .15s ease,filter .15s ease}.repo-form button[type=submit]:hover:not(:disabled),.auth-form button[type=submit]:hover:not(:disabled){filter:brightness(1.1)}.repo-form button[type=submit]:disabled,.auth-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.auth-form{display:flex;flex-direction:column;gap:.85rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;max-width:360px;margin:2rem auto 0}.auth-form h2{margin:0 0 .25rem;font-size:1.1rem}.auth-form-field{display:flex;flex-direction:column;gap:.3rem}.auth-form-field label{font-size:.85rem;color:var(--text-muted);font-weight:500;margin-left:.2rem}.auth-toggle{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;padding:.25rem;text-decoration:underline}.auth-toggle:hover:not(:disabled){color:var(--text)}.auth-toggle:disabled{opacity:.6;cursor:not-allowed}.app-auth-gate{display:flex;flex-direction:column;align-items:center}.session-info{display:flex;align-items:center;gap:.75rem;font-size:.85rem}@media (max-width: 640px){.repo-form-main{flex-direction:column}.repo-form button[type=submit]{width:100%}.repo-form-options{flex-direction:column;align-items:flex-start;gap:.75rem}.repo-form-provider{width:100%;flex-direction:column;align-items:flex-start}.repo-form-provider select{width:100%}}.error{color:var(--critical);background:#ef44441a;border:1px solid rgba(239,68,68,.3);padding:.75rem 1rem;border-radius:8px}.muted{color:var(--text-muted)}.empty-state{color:var(--text-muted);background:var(--surface-2);border:1px dashed var(--border);border-radius:8px;padding:.9rem 1rem;font-size:.9rem;margin:0}.spinner-row{display:inline-flex;align-items:center;gap:.6rem;color:var(--text-muted);font-size:.9rem;margin:.75rem 0}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.report{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.report h2{margin-top:0;font-size:1.1rem;word-break:break-all;color:var(--text-muted);font-weight:500}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin:1.25rem 0}.stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:1.3rem;font-weight:700}.comparison{color:var(--accent);font-size:.9rem;margin-bottom:1.5rem}section{margin-top:1.75rem}section h3{font-size:.95rem;border-bottom:1px solid var(--border);padding-bottom:.5rem;margin-bottom:.75rem}section h4{font-size:.85rem;color:var(--text-muted);margin:1rem 0 .4rem}.plain-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem;font-size:.9rem}.module-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.module-list li{display:flex;align-items:center;gap:.75rem;font-size:.9rem;padding:.4rem 0;border-bottom:1px solid var(--border)}.module-name{flex:1}.module-lines{color:var(--text-muted);font-size:.85rem}.badge{font-size:.7rem;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.badge-ok{color:var(--ok);background:#22c55e1f}.badge-warn{color:var(--warn);background:#ef44441f}.risk-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.risk{border-left:3px solid var(--border);background:var(--surface-2);border-radius:0 8px 8px 0;padding:.6rem .9rem}.risk-critical{border-left-color:var(--critical)}.risk-high{border-left-color:var(--high)}.risk-medium{border-left-color:var(--medium)}.risk-low{border-left-color:var(--low)}.risk-header{display:flex;gap:.6rem;align-items:baseline}.risk-severity{flex-shrink:0;font-size:.65rem;text-transform:uppercase;letter-spacing:.02em;font-weight:700;padding:.1rem .4rem;border-radius:4px}.risk-critical .risk-severity{color:var(--critical);background:#ef44441f}.risk-high .risk-severity{color:var(--high);background:#f59e0b1f}.risk-medium .risk-severity{color:var(--medium);background:#eab3081f}.risk-low .risk-severity{color:var(--low);background:#22c55e1f}.risk-title{font-weight:600;font-size:.9rem}.risk-description{margin:.3rem 0 0;font-size:.85rem;color:var(--text-muted)}.risk-details-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.3rem}.risk-details-list li{display:flex;align-items:flex-start;gap:.5rem;font-size:.82rem;color:var(--text-muted);min-width:0}.detail-badge{flex-shrink:0;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;padding:.1rem .4rem;border-radius:4px}.detail-badge-critical{color:var(--critical);background:#ef44441f}.detail-badge-high{color:var(--high);background:#f59e0b1f}.detail-badge-medium{color:var(--medium);background:#eab3081f}.detail-badge-low{color:var(--low);background:#22c55e1f}.detail-text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;min-width:0;flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tooltip{position:relative;display:inline-flex;min-width:0;max-width:100%;outline:none}.tooltip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#0b0d13;color:var(--text);border:1px solid var(--border);padding:.4rem .65rem;border-radius:6px;font-size:.72rem;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;white-space:normal;width:max-content;max-width:min(320px,80vw);line-height:1.4;box-shadow:0 8px 20px #0006;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:20}.tooltip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border)}.tooltip:hover .tooltip-bubble,.tooltip:focus .tooltip-bubble,.tooltip:focus-within .tooltip-bubble{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.tag{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.tag-icon{font-size:.75rem}.tag-info{color:var(--accent);border-color:#5b8cff59;background:#5b8cff1a}.tag-warn{color:var(--high);border-color:#f59e0b59;background:#f59e0b1a}.tag-critical{color:var(--critical);border-color:#ef444459;background:#ef44441a}.tag-function{color:#a78bfa;border-color:#a78bfa59;background:#a78bfa1a}.file-chip{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.2rem .55rem .2rem .35rem}.file-chip-ext{flex-shrink:0;font-size:.6rem;font-weight:800;letter-spacing:.02em;padding:.05rem .35rem;border-radius:4px;border:1px solid transparent}.file-chip-path{display:flex;align-items:baseline;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.file-chip-dir{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.file-chip-name{color:var(--text);font-weight:600;white-space:nowrap;flex-shrink:0}.file-chip-line{flex-shrink:0;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;font-weight:600}.detail-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}.duplicate-connector{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:.9rem;color:var(--accent);font-weight:700;background:#5b8cff1f;border-radius:999px;flex-shrink:0}.module-chip,.package-chip{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.2rem .55rem;font-size:.8rem;flex-shrink:0}.package-name{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.function-name{display:inline-flex;align-items:center;gap:.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:600;color:#a78bfa;flex-shrink:0}.dependency-description{color:var(--text-muted);font-size:.8rem;font-style:italic}.detail-toggle{background:none;border:none;padding:0;color:var(--accent);font-size:.8rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.claude-findings-list{list-style:none;padding:0;margin:0;counter-reset:finding;display:flex;flex-direction:column;gap:.6rem}.claude-finding{counter-increment:finding;background:var(--surface-2);border-radius:8px;padding:.7rem .9rem .7rem 2.2rem;position:relative}.claude-finding:before{content:counter(finding);position:absolute;left:.8rem;top:.7rem;color:var(--accent);font-weight:700;font-size:.85rem}.claude-finding-headline{margin:0;font-weight:600;font-size:.9rem}.claude-finding-detail{margin:.3rem 0 0;font-size:.85rem;color:var(--text-muted)}.claude-finding code,.detail-text code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:.05rem .3rem;font-size:.85em}ol{padding-left:1.2rem;font-size:.9rem}ol li{margin-bottom:.4rem}.history-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1.5rem;align-items:start}.repo-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.repo-item{width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.6rem .8rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;color:var(--text)}.repo-item.active{border-color:var(--accent);background:#5b8cff14}.repo-url{font-size:.85rem;word-break:break-all}.repo-meta{font-size:.75rem;color:var(--text-muted)}.history-detail{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.history-detail h3{margin-top:0;font-size:.95rem;word-break:break-all}@media (max-width: 640px){.history-layout{grid-template-columns:1fr}}.report-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.report-header h2{flex:1;min-width:0}.errors-badge-container{position:relative;display:inline-flex;flex-shrink:0}.errors-badge{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-muted);padding:.3rem .65rem;font-size:.8rem;font-weight:600;cursor:pointer}.errors-badge-loading{cursor:default;background:transparent;border:none;padding:.3rem 0}.errors-badge-critical{color:var(--critical);border-color:#ef444459;background:#ef44441a}.errors-badge-error{color:var(--high);border-color:#f59e0b59;background:#f59e0b1a}.errors-badge-warning{color:var(--medium);border-color:#eab30859;background:#eab3081a}.errors-badge-info{color:var(--accent);border-color:#5b8cff59;background:#5b8cff1a}.errors-badge-icon{font-size:.85rem;line-height:1}.errors-details{position:absolute;top:calc(100% + 8px);right:0;width:min(420px,90vw);max-height:360px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 28px #00000073;z-index:20}.errors-details-header{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface)}.errors-details-header h4{margin:0;font-size:.85rem}.errors-details-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.9rem;padding:.1rem .3rem;line-height:1}.errors-details-list{list-style:none;margin:0;padding:.5rem .9rem .9rem;display:flex;flex-direction:column;gap:.6rem}.error-item{border-left:3px solid var(--border);background:var(--surface-2);border-radius:0 8px 8px 0;padding:.5rem .7rem}.error-item-critical{border-left-color:var(--critical)}.error-item-error{border-left-color:var(--high)}.error-item-warning{border-left-color:var(--medium)}.error-item-info{border-left-color:var(--accent)}.error-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.02em;font-weight:700;color:var(--text-muted)}.error-item-critical .error-severity{color:var(--critical)}.error-item-error .error-severity{color:var(--high)}.error-item-warning .error-severity{color:var(--medium)}.error-item-info .error-severity{color:var(--accent)}.error-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:none}.error-message{margin:.35rem 0 0;font-size:.85rem;color:var(--text)}.error-context{margin-top:.4rem;font-size:.75rem;color:var(--text-muted)}.error-context summary{cursor:pointer}.error-context pre{margin:.4rem 0 0;padding:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;overflow-x:auto;font-size:.75rem}
