@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--bg-primary:#0a0a0b;--bg-secondary:#121214;--bg-tertiary:#1c1c1f;--bg-glass:#1c1c1f99;--bg-glass-hover:#28282dcc;--text-primary:#fff;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--accent-primary:#3b82f6;--accent-secondary:#8b5cf6;--accent-glow:#3b82f680;--border-subtle:#ffffff14;--border-focus:#3b82f680;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--radius-sm:6px;--radius-md:12px;--radius-lg:24px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;max-width:100%;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:700;line-height:1.2}h1{font-size:3rem}h2{font-size:2.25rem}h3{font-size:1.5rem}.gradient-text{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:var(--transition-normal);padding:1.5rem}.glass-panel:hover{border-color:#ffffff26;box-shadow:0 8px 32px #0006}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;box-shadow:0 4px 14px 0 var(--accent-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f699}.btn-primary:active{transform:translateY(0)}.btn-outline{color:var(--text-primary);border:1px solid var(--border-subtle);background:0 0}.btn-outline:hover{background:#ffffff0d;border-color:#fff3}.input-field{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:var(--transition-fast);padding:.75rem 1rem;font-family:inherit;font-size:.875rem}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow);background:var(--bg-secondary);outline:none}.input-field::placeholder{color:var(--text-tertiary)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.grid-cols-2{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.grid-cols-3{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s forwards fadeIn}@keyframes pulse-glow{0%{box-shadow:0 0 #3b82f666}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.animate-pulse{animation:2s infinite pulse-glow}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.heatmap-grid{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-subtle);gap:3px;padding:1rem;display:grid;overflow:auto}.heatmap-cell{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff12;border-radius:6px;justify-content:center;align-items:center;width:52px;height:52px;font-size:.65rem;font-weight:600;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.heatmap-cell:hover{z-index:10;border-color:#ffffff4d;transform:scale(1.18);box-shadow:0 4px 16px #0009}.heatmap-cell.prior-art{background:#ef44442e;border-color:#ef444473;box-shadow:0 0 8px #ef444440,inset 0 0 12px #ef44441a}.heatmap-cell.prior-art:hover{box-shadow:0 0 18px #ef444499,inset 0 0 16px #ef444433}.heatmap-cell.white-space{background:#10b9811f;border-color:#10b98166;box-shadow:0 0 10px #10b9814d,inset 0 0 14px #10b9811a}.heatmap-cell.white-space:hover{background:#10b98138;transform:scale(1.22);box-shadow:0 0 20px #10b9818c,inset 0 0 18px #10b98133}.heatmap-cell.user-position{background:#3b82f640;border-color:#3b82f6b3;animation:2s infinite user-pos-pulse;box-shadow:0 0 14px #3b82f680,inset 0 0 14px #3b82f626}@keyframes user-pos-pulse{0%{box-shadow:0 0 8px #3b82f666,inset 0 0 10px #3b82f61a}50%{box-shadow:0 0 22px #3b82f6bf,inset 0 0 18px #3b82f640}to{box-shadow:0 0 8px #3b82f666,inset 0 0 10px #3b82f61a}}.heatmap-cell.selected{border-color:#f59e0b!important;animation:none!important;box-shadow:0 0 0 2px #f59e0b80,0 0 16px #f59e0b66!important}.heatmap-cell.pending{background:#ffffff05;border-color:#ffffff0d}.scan-progress-bar{background:var(--bg-tertiary);border-radius:var(--radius-full);border:1px solid var(--border-subtle);width:100%;height:8px;overflow:hidden}.scan-progress-bar-fill{background:linear-gradient(90deg, var(--accent-primary), var(--accent-secondary));border-radius:var(--radius-full);height:100%;transition:width .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.scan-progress-bar-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);width:100%;height:100%;animation:1.5s infinite shimmer;position:absolute;top:0;left:-100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}.axis-tag{border-radius:var(--radius-full);color:var(--accent-primary);transition:var(--transition-fast);background:#3b82f61f;border:1px solid #3b82f64d;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.8rem;font-weight:500;display:inline-flex}.axis-tag.removable{cursor:default;padding-right:.4rem}.axis-tag.removable .axis-tag-remove{width:16px;height:16px;color:var(--accent-primary);cursor:pointer;transition:var(--transition-fast);background:#3b82f633;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;line-height:1;display:inline-flex}.axis-tag.removable .axis-tag-remove:hover{color:var(--danger);background:#ef44444d}.axis-tag.success{color:var(--success);background:#10b9811f;border-color:#10b9814d}.axis-tag.warning{color:var(--warning);background:#f59e0b1f;border-color:#f59e0b4d}.axis-tag.danger{color:var(--danger);background:#ef44441f;border-color:#ef44444d}.heatmap-tooltip{z-index:100;background:var(--bg-tertiary);border-radius:var(--radius-md);pointer-events:none;border:1px solid #ffffff26;min-width:220px;max-width:320px;padding:.75rem 1rem;font-size:.8rem;line-height:1.5;position:absolute;box-shadow:0 8px 32px #0009}.mini-matrix-bg{opacity:.35;filter:blur(.5px);grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.mini-matrix-cell{border:1px solid #ffffff0f;border-radius:4px;width:20px;height:20px}.mini-matrix-cell.m-red{background:#ef444466;box-shadow:0 0 6px #ef444466}.mini-matrix-cell.m-green{background:#10b98166;box-shadow:0 0 6px #10b98166}.mini-matrix-cell.m-empty{background:#ffffff08}.claim-item{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:var(--transition-fast);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.claim-item:focus-within{border-color:#3b82f666;box-shadow:0 0 0 2px #3b82f61a}.claim-badge{text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-full);align-items:center;gap:.4rem;padding:.2rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.claim-badge.independent{color:var(--accent-primary);background:#3b82f626;border:1px solid #3b82f64d}.claim-badge.dependent{color:var(--accent-secondary);background:#8b5cf626;border:1px solid #8b5cf64d}.step-indicator{align-items:center;gap:0;margin-bottom:2rem;display:flex}.step-dot{border:2px solid var(--border-subtle);background:var(--bg-tertiary);width:32px;height:32px;color:var(--text-tertiary);transition:var(--transition-normal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.step-dot.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#3b82f633}.step-dot.completed{border-color:var(--success);color:var(--success);background:#10b98133}.step-line{background:var(--border-subtle);flex:1;min-width:40px;height:2px}.step-line.completed{background:var(--success)}.live-log{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);flex-direction:column;gap:.25rem;max-height:160px;padding:.75rem 1rem;font-family:Courier New,monospace;font-size:.78rem;display:flex;overflow-y:auto}.live-log-entry{line-height:1.4;animation:.3s fadeIn}.live-log-entry.prior-art-log{color:#fc8181}.live-log-entry.white-space-log{color:#68d391}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:#0000}50%{border-color:#60a5fa}}@keyframes floatUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.terminal-line{white-space:nowrap;border-right:.15em solid #60a5fa;animation:1s steps(40,end) typing,.75s step-end infinite blink-caret;overflow:hidden}.terminal-line-done{border-right:none;animation:none}.animate-float-up{opacity:0;animation:.6s ease-out forwards floatUp}.nav-links-scroll::-webkit-scrollbar{display:none!important}.nav-links-scroll{-ms-overflow-style:none!important;scrollbar-width:none!important}
