:root{--bg: #06060f;--surf: #0a0a1a;--panel: #0d0d20;--brd: rgba(0, 229, 204, .12);--text: #c8c8e0;--muted: #484860;--accent: #3a7fff;--neon: #00e5cc;--pink: #ff2d78;--purple: #8b5cf6;--cold: #e05252;--cool: #e07a2a;--warm: #b0c030;--hot: #20d060;--neon-rgb: 0, 229, 204;--accent-rgb: 58, 127, 255;--glass: rgba(10, 10, 26, .85);--glass-heavy: rgba(13, 13, 32, .95);--glass-mid: rgba(13, 13, 32, .65);--shadow: rgba(0, 0, 0, .4);--shadow-heavy: rgba(0, 0, 0, .5);--cell-border: #10101e;--cell-border-light: #161622;--toggle-active-bg: #1a2a4a;--toggle-active-text: #9cf;--badge-contract-bg: #0d1a30;--badge-contract-brd: #1a3060;--badge-interface-bg: #1a0d28;--badge-interface-brd: #301850;--badge-library-bg: #0d1a0d;--badge-library-brd: #1a3a1a;--badge-deploy-bg: #0d1a18;--badge-deploy-brd: #1a3a30;--vis-ext-bg: #0d1a30;--vis-pub-bg: #0d1a0d;--vis-int-bg: #1a1800;--vis-priv-bg: #1a0d1a;--cap-crit-bg: #2a0808;--cap-crit-brd: #5a1010;--cap-warn-bg: #2a1500;--cap-warn-brd: #4a2500;--cap-info-bg: #0d1520;--cap-info-brd: #1a2840;--mod-badge-bg: #1a1520;--scope-tint: 91, 184, 166;--scope-thumb: #5bb8a6;--scope-highlight: #7ad4c0;--github-btn-bg: #24292e;--github-btn-brd: #444d56;--github-btn-hover-bg: #2f363d;--github-btn-hover-brd: #586069;--spotlight-bg: rgba(6, 6, 15, .75);--chart-legend-text: #606080;--chart-legend-bg: rgba(8, 8, 18, .85);--chart-legend-border: #2a2a40;--warn-banner-bg: rgba(255, 183, 77, .12);--warn-banner-brd: rgba(255, 183, 77, .4);--warn-banner-text: #ffb74d}[data-theme=light]{--bg: #f2f0ed;--surf: #e8e6e2;--panel: #dddbd8;--brd: rgba(0, 153, 122, .15);--text: #1a1a2a;--muted: #6b6b80;--accent: #2563eb;--neon: #00997a;--pink: #d6204a;--purple: #7c3aed;--cold: #c62828;--cool: #c25e10;--warm: #8a9a20;--hot: #188040;--neon-rgb: 0, 153, 122;--accent-rgb: 37, 99, 235;--glass: rgba(255, 255, 255, .75);--glass-heavy: rgba(255, 255, 255, .92);--glass-mid: rgba(255, 255, 255, .65);--shadow: rgba(0, 0, 0, .08);--shadow-heavy: rgba(0, 0, 0, .12);--cell-border: #d0d0d8;--cell-border-light: #d8d8e0;--toggle-active-bg: #dbeafe;--toggle-active-text: #2563eb;--badge-contract-bg: #dbeafe;--badge-contract-brd: #93bbfd;--badge-interface-bg: #ede9fe;--badge-interface-brd: #c4b5fd;--badge-library-bg: #dcfce7;--badge-library-brd: #86efac;--badge-deploy-bg: #d1fae5;--badge-deploy-brd: #6ee7b7;--vis-ext-bg: #dbeafe;--vis-pub-bg: #dcfce7;--vis-int-bg: #fef9c3;--vis-priv-bg: #fae8ff;--cap-crit-bg: #fee2e2;--cap-crit-brd: #fca5a5;--cap-warn-bg: #ffedd5;--cap-warn-brd: #fdba74;--cap-info-bg: #dbeafe;--cap-info-brd: #93c5fd;--mod-badge-bg: #ede9fe;--scope-tint: 0, 153, 122;--scope-thumb: #00997a;--scope-highlight: #00b894;--github-btn-bg: #24292e;--github-btn-brd: #444d56;--github-btn-hover-bg: #2f363d;--github-btn-hover-brd: #586069;--spotlight-bg: rgba(0, 0, 0, .45);--chart-legend-text: #606070;--chart-legend-bg: rgba(255, 255, 255, .9);--chart-legend-border: #c8c8d0;--warn-banner-bg: rgba(194, 94, 16, .1);--warn-banner-brd: rgba(194, 94, 16, .4);--warn-banner-text: #9a3412}*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(var(--neon-rgb),.15);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(var(--neon-rgb),.3)}*{scrollbar-width:thin;scrollbar-color:rgba(var(--neon-rgb),.15) transparent}body{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;background:var(--bg);color:var(--text);height:100vh;display:flex;flex-direction:column;overflow:hidden;font-size:13px}#app{position:relative;display:flex;flex-direction:column;height:100vh;overflow:hidden}#app:before{content:"";position:fixed;top:0;left:0;width:200%;height:200%;background-image:linear-gradient(rgba(var(--neon-rgb),.03) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--neon-rgb),.03) 1px,transparent 1px);background-size:60px 60px;transform:perspective(500px) rotateX(30deg);animation:gridDrift 30s linear infinite;pointer-events:none;z-index:0;opacity:.5}@keyframes gridDrift{to{transform:perspective(500px) rotateX(30deg) translateY(-60px)}}#pcv{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999}.landing{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;position:relative;z-index:1}.landing-card{width:100%;max-width:520px;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--brd);border-radius:16px;padding:32px;position:relative}.landing-theme-toggle{position:absolute;top:12px;right:12px;background:none;border:1px solid var(--brd);border-radius:6px;color:var(--muted);padding:4px 6px;cursor:pointer;display:flex;align-items:center;transition:color .2s,border-color .2s}.landing-theme-toggle:hover{color:var(--text);border-color:rgba(var(--accent-rgb),.4)}.landing-logo{font-size:1.8rem;font-weight:700;color:var(--neon);text-shadow:0 0 20px var(--neon);text-align:center;margin-bottom:4px;letter-spacing:.12em}.landing-sub{text-align:center;color:var(--muted);font-size:.75rem;margin-bottom:24px}.whats-new-banner{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;margin-bottom:16px;border:1px solid rgba(var(--accent-rgb),.25);border-radius:8px;background:rgba(var(--accent-rgb),.05);font-size:.65rem;color:var(--text);position:relative}.whats-new-label{font-weight:600;color:var(--accent);white-space:nowrap;padding-top:1px}.whats-new-list{margin:0;padding-left:14px;color:var(--muted);line-height:1.5}.whats-new-dismiss{position:absolute;top:4px;right:6px;background:none;border:none;color:var(--muted);font-size:.85rem;cursor:pointer;padding:0 2px;line-height:1}.whats-new-dismiss:hover{color:var(--text)}.landing-privacy{text-align:center;color:var(--muted);font-size:.65rem;margin-top:16px}.landing-author{text-align:center;color:var(--muted);font-size:.65rem;margin-top:4px}.landing-author a{color:var(--accent);text-decoration:none}.landing-author a:hover{text-decoration:underline}.tab-switch{display:flex;gap:4px;margin-bottom:16px;background:var(--panel);border-radius:10px;padding:3px}.tab-switch button{flex:1;padding:6px 12px;border:none;border-radius:8px;background:transparent;color:var(--muted);font-family:inherit;font-size:.75rem;cursor:pointer;transition:all .2s}.tab-switch button.active{background:var(--accent);color:#fff}.input-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.input-field{width:100%;padding:10px 14px;background:var(--panel);border:1px solid var(--brd);border-radius:10px;color:var(--text);font-family:inherit;font-size:.8rem;outline:none;transition:border-color .2s}.input-field:focus{border-color:var(--accent)}.input-field::placeholder{color:var(--muted)}.input-field:disabled{opacity:.5;cursor:not-allowed}.btn-primary{width:100%;padding:10px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary{margin-bottom:12px}.drop-zone{border:2px dashed var(--brd);border-radius:12px;padding:32px;text-align:center;cursor:pointer;transition:all .3s;margin-bottom:16px}.drop-zone:hover,.drop-zone.dragging{border-color:var(--neon);background:rgba(var(--neon-rgb),.04)}.drop-zone-icon{font-size:2rem;margin-bottom:8px}.drop-zone-text{color:var(--muted);font-size:.75rem}.auth-section{text-align:center;margin-bottom:16px}.btn-github{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:var(--github-btn-bg);border:1px solid var(--github-btn-brd);border-radius:10px;color:#fff;font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.btn-github:hover{background:var(--github-btn-hover-bg);border-color:var(--github-btn-hover-brd)}.btn-github-icon{flex-shrink:0}.auth-status{display:inline-flex;align-items:center;gap:8px;font-size:.75rem}.auth-avatar{width:24px;height:24px;border-radius:50%}.auth-name{color:var(--text)}.auth-logout{color:var(--muted);font-size:.68rem;text-decoration:underline;cursor:pointer}.auth-logout:hover{color:var(--text)}.auth-loading{color:var(--muted);font-size:.72rem}.auth-perks{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;margin-top:8px}.auth-perk{display:flex;align-items:center;gap:5px;font-size:.6rem;color:var(--muted)}.auth-perk svg{flex-shrink:0;opacity:.5}.example-link{text-align:center;margin-top:10px;font-size:.7rem;color:var(--muted)}.example-link a{color:var(--neon);text-decoration:none}.example-link a:hover{text-decoration:underline}.error-msg{padding:8px 12px;background:#e052521a;border:1px solid rgba(224,82,82,.3);border-radius:8px;color:var(--cold);font-size:.72rem;text-align:center;margin-bottom:12px}.input-typeahead-wrap{position:relative}.repo-suggestions{position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--panel);border:1px solid var(--brd);border-top:none;border-radius:0 0 8px 8px;max-height:240px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--muted) transparent;box-shadow:0 8px 24px #0000004d}.repo-suggestion{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;cursor:pointer;transition:background .15s}.repo-suggestion:hover{background:rgba(var(--neon-rgb),.06)}.repo-suggestion:last-child{border-radius:0 0 8px 8px}.repo-suggestion-name{color:var(--text);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.repo-suggestion-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.repo-private-badge{font-size:.55rem;padding:1px 4px;border-radius:3px;background:rgba(var(--accent-rgb),.15);border:1px solid rgba(var(--accent-rgb),.3);color:var(--accent)}.repo-lang{font-size:.58rem;color:var(--neon)}.repo-pushed{font-size:.58rem;color:var(--muted)}.ref-select-wrap{position:relative}.ref-select-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;z-index:1}.ref-select{appearance:none;-webkit-appearance:none;background-color:rgba(var(--neon-rgb),.04)!important;border-color:rgba(var(--neon-rgb),.08)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23484860' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding:7px 32px 7px 34px!important;font-size:.68rem!important;color:var(--muted)!important;cursor:pointer}.ref-select:focus{border-color:rgba(var(--neon-rgb),.25)!important;color:var(--text)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%233a7fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.ref-select option,.ref-select optgroup{background:var(--panel);color:var(--text);font-family:inherit;font-size:.72rem}.ref-select optgroup{color:var(--muted);font-style:normal;font-weight:600;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em}.ref-loading{font-size:.68rem;color:var(--muted)}.recent-list{margin-top:16px;border-top:1px solid var(--brd);padding-top:12px}.recent-title{font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.recent-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:.72rem;transition:background .2s}.recent-item:hover{background:rgba(var(--neon-rgb),.06)}.recent-name{color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.recent-pr{font-size:.6rem;color:var(--accent);background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.2);border-radius:3px;padding:0 4px;flex-shrink:0}.recent-meta{color:var(--muted);font-size:.65rem}.progress-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;position:relative;z-index:1}.progress-orb{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--neon));margin-bottom:32px;animation:orbPulse 2s ease-in-out infinite;position:relative}.progress-orb:after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;filter:blur(30px);opacity:.4}@keyframes orbPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.progress-bar-wrap{width:320px;margin-bottom:16px}.progress-bar-bg{height:4px;background:var(--panel);border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--neon));border-radius:2px;transition:width .4s ease-out}.progress-msg{font-size:.8rem;color:var(--text);margin-bottom:4px}.progress-detail{font-size:.7rem;color:var(--muted)}.progress-pct{font-size:2rem;font-weight:700;color:var(--text);margin-top:16px}header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:5px 14px;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--brd);flex-shrink:0;min-height:46px;position:relative;z-index:2}.logo{font-size:.8rem;color:var(--neon);letter-spacing:.08em;font-weight:700;text-shadow:0 0 10px var(--neon);white-space:nowrap;cursor:pointer}.proj-name{font-weight:600;font-size:.9rem;color:var(--text);white-space:nowrap}.stat-chip{padding:2px 8px;border-radius:10px;border:1px solid var(--brd);background:var(--glass-mid);font-size:.72rem;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.stat-chip b{color:var(--text)}.gh-link{margin-left:auto;color:var(--muted);font-size:.7rem;text-decoration:none;transition:color .2s}.gh-link:hover{color:var(--neon)}.share-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--muted);font-size:.85rem;cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit;line-height:1}.share-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3)}.share-btn-wrap{position:relative}.share-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:280px;background:var(--glass-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--brd);border-radius:10px;padding:8px;z-index:100;box-shadow:0 8px 32px var(--shadow-heavy);display:flex;flex-direction:column;gap:6px}.share-notes{max-height:160px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.share-note{display:flex;flex-direction:column;gap:1px;padding:4px 6px;background:rgba(var(--neon-rgb),.04);border-radius:6px}.share-note-author{font-size:.68rem;font-weight:700;color:var(--text)}.share-note-text{font-size:.68rem;color:var(--muted);word-break:break-word;white-space:pre-wrap}.share-input{width:100%;padding:6px 8px;background:var(--panel);border:1px solid var(--brd);border-radius:6px;color:var(--text);font-family:inherit;font-size:.72rem;outline:none;resize:none;transition:border-color .2s}.share-input:focus{border-color:var(--accent)}.share-input::placeholder{color:var(--muted)}.share-login-prompt{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;color:var(--muted);font-size:.72rem}.share-login-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;background:var(--github-btn-bg);border:1px solid var(--github-btn-brd);border-radius:8px;color:#fff;font-family:inherit;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.share-login-btn:hover{background:var(--github-btn-hover-bg);border-color:var(--github-btn-hover-brd)}.header-login{padding:3px 12px;background:var(--github-btn-bg);border:1px solid var(--github-btn-brd);border-radius:8px;color:#fff;font-family:inherit;font-size:.68rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.header-login:hover{background:var(--github-btn-hover-bg);border-color:var(--github-btn-hover-brd)}.share-copy-btn{width:100%;padding:5px 0;background:var(--accent);border:none;border-radius:6px;color:#fff;font-family:inherit;font-size:.72rem;font-weight:600;cursor:pointer;transition:opacity .2s}.share-copy-btn:hover{opacity:.9}.note-toast{position:fixed;top:56px;left:50%;transform:translate(-50%);max-width:440px;width:max-content;padding:8px 16px;background:var(--glass-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(var(--neon-rgb),.25);border-radius:10px;box-shadow:0 8px 32px var(--shadow-heavy);font-size:.75rem;color:var(--muted);z-index:200;cursor:pointer;animation:toastIn .3s ease-out,toastOut .4s 3.6s ease-in forwards;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-toast b{color:var(--text);margin-right:4px}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.notes-banner{background:var(--glass);border-bottom:1px solid var(--brd);padding:4px 14px;flex-shrink:0;position:relative;z-index:1}.notes-banner-row{display:flex;align-items:center;gap:8px}.notes-banner-summary{flex:1;font-size:.72rem;color:var(--muted);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-banner-summary b{color:var(--text)}.notes-banner-close{background:none;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:0 4px;line-height:1}.notes-banner-close:hover{color:var(--text)}.notes-banner-list{display:flex;flex-direction:column;gap:4px;margin-top:6px;max-height:200px;overflow-y:auto}.notes-banner-note{display:flex;flex-direction:column;gap:1px;padding:4px 6px;background:rgba(var(--neon-rgb),.04);border-radius:6px}.report-btn-wrap{position:relative}.report-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--muted);font-size:1rem;cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit;line-height:1}.report-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3)}.report-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:150px;background:var(--glass-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--brd);border-radius:10px;padding:4px;z-index:100;box-shadow:0 8px 32px var(--shadow-heavy)}.report-dropdown-item{display:block;width:100%;padding:6px 12px;border:none;border-radius:6px;background:transparent;color:var(--text);font-family:inherit;font-size:.72rem;text-align:left;cursor:pointer;transition:background .15s}.report-dropdown-item:hover{background:rgba(var(--neon-rgb),.08)}.header-auth{display:inline-flex;align-items:center;gap:6px;font-size:.7rem}.header-auth-name{color:var(--text)}.main-layout{display:grid;grid-template-columns:1fr 340px;grid-template-rows:1fr auto;grid-template-areas:"center  sidebar" "bottom  sidebar";flex:1;min-height:0;overflow:hidden;position:relative;z-index:1}.center-area{grid-area:center;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border-right:1px solid var(--brd)}.left-col{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sidebar{grid-area:sidebar;display:flex;flex-direction:column;overflow-y:auto;background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sidebar-top,.sidebar-bottom{display:flex;flex-direction:column}.bottom-panel{grid-area:bottom;max-height:40vh;display:flex;flex-direction:column;border-top:1px solid var(--brd);border-right:1px solid var(--brd);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bottom-tabs{display:flex;gap:0;flex-shrink:0;background:var(--glass-heavy);border-bottom:1px solid var(--brd)}.bottom-tab{padding:5px 14px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:.68rem;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.bottom-tab:hover{color:var(--text)}.bottom-tab.active{color:var(--neon);border-bottom-color:var(--neon)}.bottom-content{flex:1;overflow-y:auto;min-height:0}.bottom-content .panel{border-bottom:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.table-filter{width:100%;padding:4px 8px;background:var(--glass);border:1px solid var(--brd);border-radius:6px;color:var(--text);font-family:inherit;font-size:.68rem;outline:none;margin-bottom:6px;transition:border-color .2s}.table-filter:focus{border-color:var(--accent)}.table-filter::placeholder{color:var(--muted)}.view-toggle-bar{display:flex;gap:4px;padding:4px 10px;background:var(--glass);border-bottom:1px solid var(--brd);flex-shrink:0}.view-toggle-btn{padding:3px 10px;border-radius:8px;border:1px solid var(--brd);background:var(--glass-mid);color:var(--muted);font-size:.7rem;cursor:pointer;transition:all .15s;font-family:inherit}.view-toggle-btn.active{background:var(--toggle-active-bg);border-color:var(--accent);color:var(--toggle-active-text)}.view-toggle-btn:hover{border-color:rgba(var(--neon-rgb),.3);color:var(--text)}.chart-wrap{flex:1;min-height:0;position:relative;overflow:hidden}.chart-el{width:100%;height:100%}@keyframes datapulse{0%{box-shadow:inset 0 0 rgba(var(--neon-rgb),.25)}40%{box-shadow:inset 0 0 22px 4px rgba(var(--neon-rgb),.09)}to{box-shadow:inset 0 0 rgba(var(--neon-rgb),0)}}.chart-wrap.data-pulse{animation:datapulse 1.6s ease-out forwards}.chart-wrap:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.07),transparent);pointer-events:none;z-index:2}.chart-wrap.scanning:after{animation:scanline 1.4s cubic-bezier(.25,.1,.25,1) forwards}@keyframes scanline{to{left:120%}}.panel{padding:10px 12px;border-bottom:1px solid var(--brd);flex-shrink:0;background:var(--glass-mid);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 24px var(--shadow);transition:border-color .3s,box-shadow .3s}.panel:hover{border-color:rgba(var(--neon-rgb),.2);box-shadow:0 4px 32px rgba(var(--neon-rgb),.06)}.panel h2{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;display:flex;align-items:center;gap:6px}.panel h2 .cnt{font-size:.65rem;background:var(--panel);border:1px solid var(--brd);border-radius:8px;padding:0 5px;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.stat-box{background:var(--glass-mid);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--brd);border-radius:10px;padding:6px 8px;transition:border-color .3s,box-shadow .3s}.stat-box:hover{border-color:rgba(var(--neon-rgb),.2);box-shadow:0 2px 16px rgba(var(--neon-rgb),.05)}.stat-box .label{font-size:.65rem;color:var(--muted);margin-bottom:3px}.stat-box .val{font-size:1.1rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.stat-box .sub{font-size:.65rem;color:var(--muted)}.bar-row{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.72rem}.bar-name{width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.bar-bg{flex:1;height:8px;background:var(--panel);border-radius:3px;overflow:hidden;position:relative}.bar-fill{height:100%;border-radius:3px;transition:width .5s;position:relative}.bar-fill:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{to{left:200%}}.bar-val{width:36px;text-align:right;color:var(--muted);font-size:.67rem;font-variant-numeric:tabular-nums}.contract-row{display:flex;align-items:center;gap:6px;padding:4px 0;border-bottom:1px solid var(--cell-border);font-size:.72rem}.contract-badge{padding:1px 5px;border-radius:4px;font-size:.6rem;font-weight:700;text-transform:uppercase}.badge-contract{background:var(--badge-contract-bg);color:var(--accent);border:1px solid var(--badge-contract-brd)}.badge-interface{background:var(--badge-interface-bg);color:var(--purple);border:1px solid var(--badge-interface-brd)}.badge-library{background:var(--badge-library-bg);color:var(--hot);border:1px solid var(--badge-library-brd)}.badge-deploy{background:var(--badge-deploy-bg);color:var(--neon);border:1px solid var(--badge-deploy-brd)}.contract-name{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-caps{display:flex;gap:1px;flex-shrink:0}.cap-micro{padding:0 3px;border-radius:3px;font-size:.5rem;font-weight:700;border:1px solid}.contract-stats{color:var(--muted);font-size:.65rem;white-space:nowrap}.fn-table-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.fn-table-header h2{margin:0}.fn-mode-toggle{display:flex;gap:2px;margin-left:auto;background:var(--surf);border-radius:4px;padding:1px}.fn-mode-btn{padding:2px 8px;border:none;border-radius:3px;background:transparent;color:var(--muted);font-size:.6rem;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.fn-mode-btn:hover{color:var(--text)}.fn-mode-btn.active{background:var(--toggle-active-bg);color:var(--toggle-active-text)}.fn-row-unguarded td{background:#ff40400a}.fn-no-guard{color:#ff4040;font-size:.58rem;font-style:italic}.fn-risk-flag{display:inline-block;padding:0 3px;margin:0 1px;border-radius:3px;font-size:.55rem;font-weight:600;background:var(--cap-warn-bg);border:1px solid var(--cap-warn-brd);color:var(--cool)}.fn-table{width:100%;border-collapse:collapse;font-size:.7rem}.fn-table th{color:var(--muted);text-align:left;padding:2px 5px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:.65rem;font-weight:600}.fn-table th:hover{color:var(--text)}.fn-table td{padding:2px 5px;border-bottom:1px solid var(--cell-border-light);white-space:nowrap;overflow:hidden;max-width:130px;text-overflow:ellipsis}.fn-table tr:hover td{background:rgba(var(--neon-rgb),.04)}.vis-badge{display:inline-block;padding:0 4px;border-radius:3px;font-size:.6rem;font-weight:700}.vis-external{background:var(--vis-ext-bg);color:#4a9fff}.vis-public{background:var(--vis-pub-bg);color:#30a030}.vis-internal{background:var(--vis-int-bg);color:#a0a030}.vis-private{background:var(--vis-priv-bg);color:#a050a0}.mod-badge{display:inline-block;padding:0 3px;border-radius:3px;font-size:.55rem;background:var(--mod-badge-bg);color:var(--neon);border:1px solid rgba(var(--neon-rgb),.15);margin-right:2px;max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.cap-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:8px;font-size:.68rem;margin:2px;border:1px solid}.cap-critical{background:var(--cap-crit-bg);border-color:var(--cap-crit-brd);color:var(--pink)}.cap-warning{background:var(--cap-warn-bg);border-color:var(--cap-warn-brd);color:var(--cool)}.cap-info{background:var(--cap-info-bg);border-color:var(--cap-info-brd);color:var(--accent)}.erc-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:.72rem}.erc-name{width:60px;color:var(--text);font-weight:600}.erc-bar-bg{flex:1;height:10px;background:var(--panel);border-radius:4px;overflow:hidden}.erc-bar-fill{height:100%;border-radius:4px;transition:width .5s}.erc-pct{width:36px;text-align:right;color:var(--muted);font-size:.68rem}.imp-row{margin-bottom:5px;font-size:.7rem}.imp-file{color:var(--neon)}.imp-path{color:var(--muted);font-size:.65rem;margin-left:8px}.imp-unresolved{color:var(--cool);font-size:.65rem;font-style:italic}.lang-row{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem}.lang-name{width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.68rem}.lang-bg{flex:1;height:8px;background:var(--panel);border-radius:3px;overflow:hidden;position:relative}.lang-fill{height:100%;border-radius:3px;transition:width .5s;position:relative}.lang-fill:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:shimmer 3s ease-in-out infinite}.lang-val{width:36px;text-align:right;color:var(--muted);font-size:.68rem}.fe-panel{padding-bottom:6px}.fe-panel h2{margin-bottom:4px}.fe-collapse-arrow{font-size:.65rem;color:var(--muted);margin-right:2px}.fe-tree{max-height:260px;overflow-y:auto;overflow-x:hidden}.fe-row{display:flex;align-items:center;gap:4px;padding:1px 4px;border-radius:4px;cursor:default;min-height:20px}.fe-row:hover{background:rgba(var(--neon-rgb),.04)}.fe-root-row{padding-left:4px}.fe-cb{appearance:none;-webkit-appearance:none;width:12px;height:12px;border:1px solid var(--muted);border-radius:3px;background:transparent;cursor:pointer;flex-shrink:0;position:relative}.fe-cb:checked{background:var(--accent);border-color:var(--accent)}.fe-cb:checked:after{content:"";position:absolute;left:3px;top:1px;width:3px;height:6px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.fe-cb:indeterminate{background:var(--accent);border-color:var(--accent);opacity:.7}.fe-cb:indeterminate:after{content:"";position:absolute;left:2px;top:4.5px;width:6px;height:1.5px;background:#fff}.fe-arrow{font-size:.65rem;color:var(--muted);cursor:pointer;width:10px;text-align:center;flex-shrink:0;-webkit-user-select:none;user-select:none}.fe-icon{font-size:.45rem;color:var(--accent);width:10px;text-align:center;flex-shrink:0;opacity:.6}.fe-name{font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fe-folder{color:var(--text);cursor:pointer}.fe-file{color:var(--muted)}.fe-pr-changed{background:rgba(var(--accent-rgb),.06)}.fe-pr-changed .fe-icon{color:var(--neon);opacity:1}.fe-pr-status{font-size:.55rem;font-weight:700;border-radius:3px;padding:0 3px;margin-left:4px;flex-shrink:0;line-height:1.4}.fe-pr-status-a{color:#20d060;background:#20d0601f}.fe-pr-status-m{color:#e0a030;background:#e0a0301f}.fe-pr-lines{font-size:.55rem;margin-left:4px;flex-shrink:0;opacity:.7}.fe-pr-add{color:#20d060}.fe-pr-del{color:#e05252;margin-left:2px}.fe-pr-reset{font-size:.5rem;color:var(--accent);background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.25);border-radius:6px;padding:0 5px;margin-left:4px;cursor:pointer;font-weight:500;line-height:1.6}.fe-pr-reset:hover{background:rgba(var(--accent-rgb),.2)}.fe-pr-badge{font-size:.55rem;color:var(--neon);background:rgba(var(--neon-rgb),.1);border:1px solid rgba(var(--neon-rgb),.2);border-radius:8px;padding:0 5px;margin-left:6px;font-weight:500}.header-pr-badge{font-size:.72rem;color:var(--muted);margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.pr-summary{padding:8px 10px;font-size:.7rem;display:flex;flex-direction:column;gap:4px}.pr-summary-branches{display:flex;align-items:center;gap:6px}.pr-summary-branch{color:var(--accent);background:rgba(var(--accent-rgb),.1);border-radius:4px;padding:0 5px;font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pr-summary-arrow{color:var(--muted)}.pr-summary-stats{display:flex;align-items:center;justify-content:space-between;color:var(--muted)}.pr-summary-files{color:var(--text)}.pr-summary-diff{display:flex;gap:6px}.pr-summary-add{color:#20d060;font-weight:600}.pr-summary-del{color:#e05252;font-weight:600}.pr-impact{padding:8px 10px;font-size:.7rem}.pr-impact h2{margin-bottom:6px}.pr-impact-config{display:flex;gap:4px;margin-bottom:8px;flex-wrap:wrap}.pr-impact-cfg-toggle{display:flex;align-items:center;gap:3px;font-size:.6rem;color:var(--muted);cursor:pointer;padding:2px 6px;border-radius:3px;border:1px solid var(--brd);background:transparent;transition:color .2s,border-color .2s,background .2s;-webkit-user-select:none;user-select:none}.pr-impact-cfg-toggle input{width:10px;height:10px;margin:0;accent-color:var(--accent)}.pr-impact-cfg-toggle.active{color:var(--text);border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.06)}.pr-impact-cfg-toggle:hover{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.04);color:var(--text)}.pr-impact-test-toggle{display:flex;align-items:center;gap:5px;margin-left:auto;font-size:.6rem;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.pr-impact-test-toggle.active{color:var(--text)}.pr-impact-switch{position:relative;width:24px;height:14px;border-radius:7px;background:var(--brd);transition:background .2s}.pr-impact-test-toggle.active .pr-impact-switch{background:var(--accent)}.pr-impact-switch-knob{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--bg);transition:transform .2s}.pr-impact-test-toggle.active .pr-impact-switch-knob{transform:translate(10px)}.pr-impact-depth{display:flex;align-items:center;gap:6px;margin-bottom:8px}.pr-impact-depth-label{font-size:.6rem;color:var(--muted);flex-shrink:0}.pr-impact-depth-slider-wrap{flex:1;display:flex;flex-direction:column;gap:0}.pr-impact-depth-slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:var(--brd);border-radius:2px;outline:none;cursor:pointer}.pr-impact-depth-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--surf);box-shadow:0 0 3px rgba(var(--accent-rgb),.4);cursor:pointer;transition:box-shadow .2s}.pr-impact-depth-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--surf);box-shadow:0 0 3px rgba(var(--accent-rgb),.4);cursor:pointer}.pr-impact-depth-slider:hover::-webkit-slider-thumb{box-shadow:0 0 6px rgba(var(--accent-rgb),.6)}.pr-impact-depth-ticks{display:flex;justify-content:space-between;padding:0 2px;margin-top:2px}.pr-impact-depth-tick{font-size:.5rem;color:var(--muted);width:12px;text-align:center;cursor:pointer;transition:color .2s}.pr-impact-depth-tick:hover{color:var(--text)}.pr-impact-depth-tick.active{color:var(--accent)}.pr-impact-empty{color:var(--muted);font-style:italic}.pr-impact-group{margin-bottom:4px}.pr-impact-group-dim{opacity:.4}.pr-impact-toggle{background:none;border:none;color:var(--text);font-size:.7rem;font-family:inherit;cursor:pointer;padding:2px 0;text-align:left;width:100%;display:flex;align-items:center;gap:4px}.pr-impact-toggle:hover{color:var(--neon)}.pr-impact-arrow{color:var(--muted);font-size:.6rem;width:10px;flex-shrink:0}.pr-impact-list{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 4px 14px}.pr-impact-contract{background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.2);border-radius:4px;color:var(--accent);font-size:.65rem;font-family:JetBrains Mono,monospace;padding:1px 6px;cursor:pointer;transition:background .2s,border-color .2s}.pr-impact-contract:hover{background:rgba(var(--accent-rgb),.2);border-color:var(--accent)}.pr-impact-stats{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.pr-impact-stat{display:flex;align-items:center;gap:6px}.pr-impact-stat-label{color:var(--muted);font-size:.65rem;min-width:60px}.pr-impact-stat-value{color:var(--text);font-weight:500}.pr-impact-stat-nsloc{color:var(--muted);font-size:.65rem;margin-left:auto}.pr-impact-stat-blast .pr-impact-stat-value{color:var(--accent)}.pr-impact-stat-total{border-top:1px solid var(--brd);padding-top:3px}.pr-impact-stat-total .pr-impact-stat-value{font-weight:600}.pr-impact-expand-btn{width:100%;padding:4px 8px;margin-bottom:8px;background:rgba(var(--accent-rgb),.08);border:1px solid rgba(var(--accent-rgb),.2);border-radius:4px;color:var(--accent);font-size:.65rem;font-family:inherit;cursor:pointer;transition:background .2s,border-color .2s}.pr-impact-expand-btn:hover,.pr-impact-expand-btn.active{background:rgba(var(--accent-rgb),.15);border-color:var(--accent)}.pr-impact-expand-btn.active:hover{background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.3)}.pr-impact-graph-wrap{margin-bottom:6px}.pr-impact-graph-toggle{background:none;border:none;color:var(--muted);font-size:.65rem;font-family:inherit;cursor:pointer;padding:2px 0;display:flex;align-items:center;gap:4px}.pr-impact-graph-toggle:hover{color:var(--text)}.pr-impact-bullseye{width:100%;max-height:220px;margin-top:4px;border:1px solid var(--brd);border-radius:4px 4px 0 0;border-bottom:none;background:var(--bg)}.pr-impact-legend{display:flex;flex-wrap:wrap;gap:6px 10px;padding:4px 8px;border:1px solid var(--brd);border-radius:0 0 4px 4px;background:var(--bg);font-size:.55rem;color:var(--muted)}.pr-impact-legend-item{display:flex;align-items:center;gap:3px}.scope-ctrl-row{display:flex;align-items:center;gap:6px;font-size:.68rem;margin-bottom:6px}.scope-ctrl-label{width:62px;flex-shrink:0;color:var(--muted);font-size:.62rem}.scope-slider{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:var(--panel);border-radius:2px;outline:none}.scope-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--scope-thumb);cursor:pointer;border:none}.scope-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--scope-thumb);cursor:pointer;border:none}.scope-ctrl-val{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums;width:28px;text-align:right;font-size:.68rem}.scope-ctrl-unit{color:var(--muted);font-size:.58rem}.scope-mult-btns{display:flex;gap:2px;flex:1}.scope-mult-btn{flex:1;padding:2px 0;border:1px solid var(--brd);border-radius:4px;background:transparent;color:var(--muted);font-family:inherit;font-size:.58rem;cursor:pointer;transition:all .15s}.scope-mult-btn:hover{border-color:rgba(var(--scope-tint),.4);color:var(--text)}.scope-mult-btn.active{background:rgba(var(--scope-tint),.12);border-color:rgba(var(--scope-tint),.5);color:var(--scope-highlight)}.scope-needed{display:flex;align-items:baseline;gap:6px;margin-bottom:8px;padding:5px 8px;background:rgba(var(--scope-tint),.06);border:1px solid rgba(var(--scope-tint),.15);border-radius:8px}.scope-needed-val{font-size:1.1rem;font-weight:700;color:var(--scope-highlight);font-variant-numeric:tabular-nums}.scope-needed-unit{font-size:.65rem;color:var(--text)}.scope-needed-detail{font-size:.58rem;color:var(--muted);margin-left:auto}.scope-configs{display:flex;flex-direction:column;gap:3px}.scope-cfg{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:6px;border:1px solid transparent;font-size:.68rem;transition:all .2s}.scope-cfg-label{width:58px;flex-shrink:0;color:var(--muted);font-size:.65rem}.scope-cfg-bar{flex:1;height:6px;background:var(--panel);border-radius:3px;overflow:hidden}.scope-cfg-fill{height:100%;border-radius:3px;background:rgba(var(--scope-tint),.15);transition:width .4s}.scope-cfg-cap{width:48px;text-align:right;color:var(--muted);font-size:.6rem;font-variant-numeric:tabular-nums;flex-shrink:0}.scope-sufficient .scope-cfg-fill{background:rgba(var(--scope-tint),.5)}.scope-sufficient .scope-cfg-label{color:var(--text)}.scope-insufficient .scope-cfg-fill{background:rgba(var(--scope-tint),.15)}.scope-recommended{border-color:rgba(var(--scope-tint),.3);background:rgba(var(--scope-tint),.06)}.scope-recommended .scope-cfg-fill{background:rgba(var(--scope-tint),.65)}.scope-recommended .scope-cfg-label{color:var(--scope-highlight);font-weight:700}.scope-recommended .scope-cfg-cap{color:var(--scope-highlight)}.security-tab-content{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:8px;height:100%;overflow:hidden}.security-tab-content>.diff-scan{border:none;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;overflow-y:auto;min-height:0}.security-tab-content>.diff-scan h2{font-size:.72rem;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--brd);position:sticky;top:0;background:var(--panel);z-index:1}@media(max-width:1024px){.security-tab-content{grid-template-columns:1fr;overflow-y:auto}.security-tab-content>.diff-scan{overflow-y:visible;max-height:none}}.diff-scan h2{display:flex;align-items:center;gap:6px}.diff-scan-badges{display:flex;gap:4px;margin-left:auto}.diff-scan-badge{font-size:.55rem;font-weight:700;padding:1px 6px;border-radius:8px;line-height:1.4}.diff-scan-crit{background:var(--cap-crit-bg);border:1px solid var(--cap-crit-brd);color:#ff4040}.diff-scan-high{background:var(--cap-warn-bg);border:1px solid var(--cap-warn-brd);color:#e0a030}.diff-scan-med{background:var(--cap-info-bg);border:1px solid var(--cap-info-brd);color:var(--accent)}.diff-scan-list{display:flex;flex-direction:column;gap:2px}.diff-scan-toggle{background:none;border:none;color:var(--text);font-size:.7rem;font-family:inherit;cursor:pointer;padding:3px 0;text-align:left;width:100%;display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}.diff-scan-toggle:hover{color:var(--neon)}.diff-scan-sev-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.diff-scan-dot-critical{background:#ff4040;box-shadow:0 0 4px #ff404066}.diff-scan-dot-high{background:#e0a030}.diff-scan-dot-medium{background:var(--accent)}.diff-scan-dot-info{background:var(--muted)}.diff-scan-contract{font-family:JetBrains Mono,monospace;color:var(--accent);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.diff-scan-contract:hover{text-decoration:underline}.diff-scan-count{margin-left:auto;color:var(--muted);font-size:.6rem;flex-shrink:0}.diff-scan-items{padding:2px 0 4px 20px}.diff-scan-item{display:flex;gap:8px;font-size:.65rem;padding:2px 0;border-bottom:1px solid rgba(var(--neon-rgb),.04)}.diff-scan-fn{font-family:JetBrains Mono,monospace;color:var(--text);min-width:0;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.diff-scan-reason{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.storage-table-wrap{overflow-x:auto;margin:4px 0 8px 14px}.storage-table{width:100%;border-collapse:collapse;font-size:.6rem;font-family:JetBrains Mono,monospace}.storage-table th{text-align:left;color:var(--muted);font-weight:500;padding:2px 6px;border-bottom:1px solid var(--brd)}.storage-table td{padding:2px 6px;border-bottom:1px solid rgba(var(--neon-rgb),.04)}.storage-type{color:var(--muted)}.storage-row-added td{color:var(--hot)}.storage-row-removed td{color:var(--cold);text-decoration:line-through;opacity:.7}.storage-row-reordered td{color:var(--cool)}.storage-row-unchanged td{color:var(--text)}.checklist-progress{margin-left:auto;font-size:.6rem;color:var(--muted);font-weight:400}.checklist-items{display:flex;flex-direction:column;gap:2px}.checklist-item{display:flex;align-items:flex-start;gap:6px;font-size:.68rem;padding:4px 6px;border-radius:4px;cursor:pointer;transition:background .15s;border-left:2px solid transparent}.checklist-item:hover{background:rgba(var(--neon-rgb),.04)}.checklist-sev-critical{border-left-color:#ff4040}.checklist-sev-high{border-left-color:#e0a030}.checklist-sev-warning{border-left-color:var(--accent)}.checklist-sev-info{border-left-color:var(--muted)}.checklist-done{opacity:.5}.checklist-done .checklist-text{text-decoration:line-through}.checklist-item input[type=checkbox]{margin-top:2px;accent-color:var(--neon);flex-shrink:0}.checklist-text{flex:1;color:var(--text);line-height:1.4}.checklist-contracts{font-size:.58rem;color:var(--accent);cursor:pointer;white-space:nowrap;flex-shrink:0}.checklist-contracts:hover{text-decoration:underline}.empty-msg{color:var(--muted);font-size:.7rem;padding:4px 0}.text-muted{color:var(--muted)}.tour-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none}.tour-backdrop-click{position:fixed;inset:0;pointer-events:auto;z-index:10000}.tour-spotlight{position:absolute;border-radius:8px;box-shadow:0 0 0 9999px var(--spotlight-bg);transition:all .35s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:10001}.tour-tooltip{position:absolute;width:300px;background:var(--glass-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--brd);border-radius:12px;padding:14px 16px;box-shadow:0 8px 32px var(--shadow-heavy),0 0 20px rgba(var(--neon-rgb),.08);pointer-events:auto;z-index:10002;transition:all .35s cubic-bezier(.4,0,.2,1)}.tour-tooltip-title{font-size:.82rem;font-weight:700;color:var(--neon);text-shadow:0 0 10px rgba(var(--neon-rgb),.4);margin-bottom:6px}.tour-tooltip-desc{font-size:.72rem;color:var(--text);line-height:1.5;margin-bottom:12px}.tour-tooltip-footer{display:flex;align-items:center;gap:8px}.tour-step-counter{font-size:.62rem;color:var(--muted);margin-right:auto;font-variant-numeric:tabular-nums}.tour-skip-btn{padding:4px 12px;border:1px solid var(--brd);border-radius:6px;background:transparent;color:var(--muted);font-family:inherit;font-size:.68rem;cursor:pointer;transition:color .2s,border-color .2s}.tour-skip-btn:hover{color:var(--text);border-color:rgba(var(--neon-rgb),.3)}.tour-next-btn{padding:4px 14px;border:none;border-radius:6px;background:var(--accent);color:#fff;font-family:inherit;font-size:.68rem;font-weight:600;cursor:pointer;transition:opacity .2s}.tour-next-btn:hover{opacity:.9}.tour-help-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--muted);font-size:.85rem;font-weight:700;cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit;line-height:1}.tour-help-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3)}.theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit;line-height:1;padding:0}.theme-toggle-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3)}.auth-prompt-banner{background:var(--warn-banner-bg);border:1px solid var(--warn-banner-brd);border-radius:8px;padding:12px 16px;margin-bottom:12px;color:var(--warn-banner-text);font-size:14px;text-align:center}@media(max-width:768px){.main-layout{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.sidebar{display:contents;overflow-y:visible;-webkit-backdrop-filter:none;backdrop-filter:none}.sidebar-top{order:-1;width:100%;overflow-y:visible}.sidebar-bottom{order:3;width:100%;overflow-y:visible}.center-area{order:1;flex:none;overflow:visible;border-right:none}.bottom-panel{order:4;flex:none;max-height:none;overflow:visible;border-right:none}.left-col{flex:none;overflow:visible}.chart-wrap{aspect-ratio:16 / 9;flex:none;min-height:unset}.bottom-content{overflow:visible}.stat-chip,.gh-link{display:none}header{padding:4px 8px;gap:4px;min-height:38px}.proj-name{font-size:.75rem;max-width:140px;overflow:hidden;text-overflow:ellipsis}.view-toggle-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.view-toggle-bar::-webkit-scrollbar{display:none}.view-toggle-btn{flex-shrink:0}.bottom-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.bottom-tabs::-webkit-scrollbar{display:none}.bottom-tab{flex-shrink:0}.header-auth-name{display:none}.auth-avatar{width:20px;height:20px}#app{overflow:visible;height:auto;min-height:100vh}body{overflow:auto;height:auto}}@media(max-width:480px){.proj-name{max-width:80px}header{padding:3px 6px}.logo{font-size:.7rem}}.workspace-page{min-height:100vh;display:flex;justify-content:center;padding:40px 16px;position:relative;z-index:1}.workspace-container{width:100%;max-width:700px;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--brd);border-radius:16px;padding:28px 32px;align-self:flex-start}.workspace-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.workspace-header-left{display:flex;align-items:center;gap:12px}.workspace-header-right{display:flex;align-items:center;gap:8px}.workspace-back-btn{background:none;border:none;color:var(--muted);font-family:inherit;font-size:.75rem;cursor:pointer;transition:color .2s;padding:0}.workspace-back-btn:hover{color:var(--text)}.workspace-username{font-size:.75rem;color:var(--text)}.workspace-title{font-size:1.2rem;font-weight:700;color:var(--text);margin-bottom:2px}.workspace-divider{height:1px;background:var(--brd);margin-bottom:22px}.workspace-section{margin-bottom:24px}.workspace-section-title{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px}.workspace-empty{font-size:.72rem;color:var(--muted);font-style:italic;padding:10px 0}.workspace-list{display:flex;flex-direction:column;background:rgba(var(--neon-rgb),.02);border:1px solid var(--brd);border-radius:10px;overflow:hidden}.workspace-row{padding:10px 14px;border-bottom:1px solid var(--brd);transition:background .15s}.workspace-row:last-child{border-bottom:none}.workspace-row:hover{background:rgba(var(--neon-rgb),.04)}.workspace-row-top{display:flex;align-items:center;gap:6px;margin-bottom:2px}.workspace-row-name{font-size:.78rem;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.workspace-row-note{font-size:.68rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;flex-shrink:1}.workspace-row-time{font-size:.65rem;color:var(--muted);flex-shrink:0}.workspace-row-detail{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.workspace-row-meta-inline{font-size:.65rem;color:var(--muted);flex-shrink:0;white-space:nowrap}.workspace-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.workspace-actions{display:flex;gap:4px;flex-shrink:0}.workspace-action-btn{padding:2px 10px;border:1px solid var(--brd);border-radius:6px;background:transparent;color:var(--text);font-family:inherit;font-size:.65rem;cursor:pointer;transition:border-color .2s,background .2s}.workspace-action-btn:hover{border-color:rgba(var(--neon-rgb),.3);background:rgba(var(--neon-rgb),.05)}.workspace-action-remove{color:var(--muted)}.workspace-action-remove:hover{color:var(--cold);border-color:#e052524d;background:#e052520d}.workspace-pin{background:none;border:none;font-size:.85rem;cursor:pointer;color:var(--muted);padding:0;line-height:1;transition:color .2s;flex-shrink:0;width:20px;text-align:center}.workspace-pin:hover,.workspace-pin.pinned{color:var(--neon)}.workspace-actions-flush{padding-left:0}.workspace-row-note-empty{font-style:italic;opacity:.6}.workspace-gh-link{display:inline-flex;align-items:center;color:var(--muted);flex-shrink:0;transition:color .2s}.workspace-gh-link:hover{color:var(--accent)}.workspace-note{cursor:text}.workspace-note-text{font-size:.65rem;color:var(--text);opacity:.6;font-style:italic}.workspace-note-placeholder{font-size:.6rem;color:var(--muted);opacity:0;transition:opacity .15s}.workspace-row:hover .workspace-note-placeholder{opacity:1}.workspace-note-input{display:inline-block;width:180px;padding:1px 6px;border:1px solid rgba(var(--neon-rgb),.3);border-radius:4px;background:transparent;color:var(--text);font-family:inherit;font-size:.65rem;font-style:italic;outline:none}.workspace-note-input::placeholder{color:var(--muted);font-style:italic}.workspace-search{width:100%;padding:7px 12px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--text);font-family:inherit;font-size:.75rem;outline:none;margin-bottom:18px;transition:border-color .2s}.workspace-search::placeholder{color:var(--muted)}.workspace-search:focus{border-color:rgba(var(--neon-rgb),.4)}.workspace-status-wrap{display:flex;gap:3px;margin-top:4px}.workspace-status-btn{padding:1px 7px;border:1px solid var(--brd);border-radius:10px;background:transparent;color:var(--muted);font-family:inherit;font-size:.58rem;cursor:pointer;transition:all .15s;white-space:nowrap}.workspace-status-btn:hover{border-color:rgba(var(--neon-rgb),.3);color:var(--text)}.workspace-status-in-progress.active{background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.4);color:var(--accent)}.workspace-status-review.active{background:#e0a0301a;border-color:#e0a03066;color:var(--cool)}.workspace-status-completed.active{background:rgba(var(--neon-rgb),.1);border-color:rgba(var(--neon-rgb),.4);color:var(--neon)}.workspace-status-archived.active{background:rgba(var(--neon-rgb),.04);border-color:var(--brd);color:var(--muted);opacity:.7}.workspace-stats{font-size:.72rem;color:var(--muted);text-align:center;padding:14px 0;border:1px solid var(--brd);border-radius:10px;background:rgba(var(--neon-rgb),.02);margin-top:4px}@media(max-width:768px){.workspace-container{padding:20px 16px}.workspace-username{display:none}}.workspace-link-btn{background:none;border:1px solid var(--brd);border-radius:6px;color:var(--accent);font-family:inherit;font-size:.68rem;cursor:pointer;padding:2px 8px;transition:color .2s,border-color .2s,background .2s}.workspace-link-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3);background:rgba(var(--neon-rgb),.05)}.workspace-header-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--brd);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,border-color .2s;padding:0}.workspace-header-btn:hover{color:var(--neon);border-color:rgba(var(--neon-rgb),.3)}.share-confirm-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:200;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.share-confirm-card{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--brd);border-radius:16px;padding:32px;max-width:460px;width:90%;text-align:center}.share-confirm-card h2{margin:0 0 12px;font-size:1.2rem;color:var(--text)}.share-confirm-card p{margin:0 0 8px;color:var(--muted);font-size:.85rem}.share-confirm-repo{display:block;margin:12px 0 16px;padding:8px 12px;background:rgba(var(--neon-rgb),.08);border:1px solid var(--brd);border-radius:8px;font-size:.95rem;color:var(--accent);word-break:break-all}.share-confirm-notes{margin:0 0 12px;text-align:left;font-size:.82rem;color:var(--muted)}.share-confirm-note{padding:4px 0}.share-confirm-auth-hint{color:var(--warn, #e8a735);font-size:.8rem}.share-confirm-actions{display:flex;gap:12px;justify-content:center;margin-top:20px}.share-confirm-actions .btn-secondary{background:transparent;border:1px solid var(--brd);color:var(--muted);padding:8px 20px;border-radius:8px;cursor:pointer}.share-confirm-actions .btn-secondary:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--text)}[data-theme=light] #app:before{background-image:linear-gradient(rgba(var(--neon-rgb),.08) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--neon-rgb),.08) 1px,transparent 1px);opacity:.35}
