@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap";:root{--bg:#f5f6f8;--surface:#fff;--border:#e4e7ec;--border-light:#eef0f4;--text:#1a1d26;--text-secondary:#5f6b7c;--text-tertiary:#8e97a4;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-light:#eff6ff;--red:#dc2626;--red-bg:#fef2f2;--red-border:#fecaca;--orange:#d97706;--orange-bg:#fffbeb;--orange-border:#fde68a;--green:#16a34a;--green-bg:#f0fdf4;--green-border:#bbf7d0;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #0000000a;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}h1{letter-spacing:-.01em;font-size:1.25rem;font-weight:700}h2{font-size:1rem;font-weight:600}h3{font-size:.9rem;font-weight:600}.navbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:50;height:52px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:sticky;top:0}.nav-brand{align-items:center;gap:8px;display:flex}.nav-logo{color:var(--accent)}.nav-title{letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.nav-subtitle{color:var(--text-tertiary);font-size:.85rem;font-weight:400}.nav-version{color:var(--text-tertiary);background:var(--bg);border-radius:3px;margin-left:6px;padding:1px 6px;font-size:.65rem;font-weight:500}.nav-actions{align-items:center;gap:10px;display:flex}.nav-btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:7px 16px;font-family:inherit;font-size:.82rem;font-weight:500;transition:all .15s}.nav-analyze{background:var(--accent);color:#fff;border-color:var(--accent)}.nav-analyze:hover{background:var(--accent-hover)}.nav-logout{color:var(--text-secondary);border-color:var(--border);background:0 0}.nav-logout:hover{background:var(--bg);color:var(--text)}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:380px;box-shadow:var(--shadow);flex-direction:column;gap:16px;padding:44px 40px;display:flex}.login-card .brand{align-items:center;gap:10px;margin-bottom:4px;display:flex}.login-card .brand svg{color:var(--accent)}.login-card .subtitle{color:var(--text-secondary);margin-top:-6px;margin-bottom:8px;font-size:.85rem}.login-card label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:.78rem;font-weight:500;display:flex}.login-card input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);padding:10px 12px;font-family:inherit;font-size:.9rem;transition:border-color .15s}.login-card input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #2563eb1f}.login-card .error{color:var(--red);background:var(--red-bg);border-radius:var(--radius-sm);padding:8px 12px;font-size:.8rem}.login-card .btn-primary{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;margin-top:4px;padding:11px;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .15s}.login-card .btn-primary:hover{background:var(--accent-hover)}.login-card .btn-primary:disabled{opacity:.5;cursor:default}.login-card .hint{color:var(--text-tertiary);text-align:center;font-size:.75rem}.login-card .back-link{color:var(--text-tertiary);cursor:pointer;text-align:center;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:.78rem;transition:color .15s}.login-card .back-link:hover{color:var(--accent)}.dashboard{max-width:100%;padding:24px 28px}.metrics-bar{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px 22px}.metric-card .value{color:var(--accent);letter-spacing:-.01em;font-size:1.8rem;font-weight:700}.metric-card .value.skeleton{color:var(--text-tertiary);animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.25}50%{opacity:.7}}.metric-card .label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:.75rem;font-weight:500}.form-row{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.form-row label{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:.78rem;font-weight:500;display:flex}.form-row input,.form-row select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);padding:9px 11px;font-family:inherit;font-size:.88rem;transition:border-color .15s}.form-row input:focus,.form-row select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #2563eb1a}.field-hint{color:var(--text-tertiary);font-size:.7rem;font-weight:400}.form-error{color:var(--red);background:var(--red-bg);border:1px solid var(--red-border);border-radius:var(--radius-sm);margin-bottom:8px;padding:8px 12px;font-size:.78rem}.btn-primary{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;width:100%;margin-top:6px;padding:10px;font-family:inherit;font-size:.88rem;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:default}.result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-left:4px solid var(--accent);box-shadow:var(--shadow-sm);margin-top:8px;padding:18px 20px}.result-card.block{border-left-color:var(--red);background:var(--red-bg);border-color:var(--red-border)}.result-card.flag{border-left-color:var(--orange);background:var(--orange-bg);border-color:var(--orange-border)}.result-card.allow{border-left-color:var(--green);background:var(--green-bg);border-color:var(--green-border)}.result-card h3{margin-bottom:6px;font-size:.88rem}.result-card .result-meta{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin-bottom:8px;font-size:.78rem;display:flex}.result-card .result-meta .ms{color:var(--text-tertiary);margin-left:auto}.result-card .reasoning{color:var(--text-secondary);margin-bottom:8px;font-size:.84rem;line-height:1.55}.result-card .signals{flex-wrap:wrap;gap:5px;display:flex}.result-card .tag{background:var(--accent-light);color:var(--accent);border-radius:16px;padding:2px 8px;font-size:.72rem;font-weight:500}.agent-trace{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.trace-header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.75rem;font-weight:600}.trace-heuristic{color:var(--text-tertiary);padding:4px 0 6px;font-size:.72rem;font-style:italic}.trace-step{align-items:center;gap:10px;padding:5px 0;font-size:.78rem;display:flex}.trace-turn{background:var(--accent-light);color:var(--accent);text-align:center;border-radius:4px;min-width:28px;padding:1px 6px;font-size:.7rem;font-weight:600}.trace-tool{color:var(--text-secondary);min-width:80px;font-weight:500}.trace-result{color:var(--text-secondary);flex:1}.trace-ms{color:var(--text-tertiary);text-align:right;min-width:40px;font-size:.7rem}.trace-reasoning{color:var(--text-tertiary);padding:2px 0 4px 38px;font-size:.73rem;font-style:italic;line-height:1.4}.trace-analysis{color:var(--text-primary);border-left:3px solid var(--accent);margin:4px 0 4px 12px;padding:6px 0 6px 14px;font-size:.78rem;line-height:1.5}.trace-tool-analysis{color:var(--text-secondary);margin:2px 0;padding:3px 0 5px 26px;font-size:.76rem;line-height:1.45}.trace-summary{border-top:1px solid var(--border);color:var(--text-secondary);margin-top:8px;padding-top:8px;font-size:.73rem;font-weight:500}.replay-full{margin-bottom:16px}.replay-controls{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:12px 16px;display:flex}.replay-controls button{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:7px 16px;font-family:inherit;font-size:.82rem;font-weight:600;transition:all .15s}.btn-start{background:var(--green);color:#fff;border-color:var(--green)}.btn-start:hover{filter:brightness(1.1)}.btn-stop{color:var(--red);border-color:var(--red);background:0 0}.btn-stop:hover{background:var(--red-bg)}.replay-controls button:disabled{opacity:.4;cursor:default;filter:none}.replay-controls .control-group{color:var(--text-secondary);align-items:center;gap:5px;font-size:.78rem;display:flex}.replay-controls select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);padding:6px 8px;font-family:inherit;font-size:.82rem}.replay-progress-inline{color:var(--text-secondary);margin-left:auto;font-size:.82rem;font-weight:500}.replay-split{grid-template-columns:1fr 1fr;gap:16px;min-height:calc(100vh - 200px);display:grid}.replay-results,.replay-log{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-height:calc(100vh - 200px);box-shadow:var(--shadow-sm);padding:16px;overflow-y:auto}.replay-results h3,.replay-log h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;font-size:.82rem;font-weight:600}.terminal{border-radius:var(--radius-sm);background:#1e2128;max-height:100%;padding:12px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.74rem;line-height:1.7;overflow-y:auto}.log-line{white-space:pre-wrap;word-break:break-all;color:#e4e7ec;padding:1px 0}.empty-state{text-align:center;color:var(--text-tertiary);padding:50px 20px;font-size:.88rem}.modal-overlay{z-index:200;background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border-left:1px solid var(--border);width:440px;max-width:100vw;height:100vh;padding:28px 24px;animation:.2s slideIn;overflow-y:auto;box-shadow:-4px 0 20px #00000014}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h2{margin:0}.modal-close{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;padding:4px 10px;font-size:1rem}.modal-close:hover{background:var(--bg);color:var(--text)}.replay-results::-webkit-scrollbar{width:5px}.replay-log::-webkit-scrollbar{width:5px}.terminal::-webkit-scrollbar{width:5px}.modal-panel::-webkit-scrollbar{width:5px}.replay-results::-webkit-scrollbar-track{background:0 0}.replay-log::-webkit-scrollbar-track{background:0 0}.terminal::-webkit-scrollbar-track{background:0 0}.modal-panel::-webkit-scrollbar-track{background:0 0}.replay-results::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.replay-log::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.terminal::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.modal-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@media (width<=900px){.replay-split{grid-template-columns:1fr;min-height:auto}.replay-results,.replay-log{max-height:50vh}.metrics-bar,.form-row{grid-template-columns:1fr}.dashboard{padding:16px 12px}.modal-panel{width:100vw}.navbar{padding:0 12px}.nav-subtitle{display:none}.replay-controls{gap:6px;padding:10px 12px}}@media (width<=480px){.login-card{width:100%;margin:0 12px;padding:28px 20px}.nav-brand{gap:4px}.nav-title{font-size:.9rem}.nav-btn{padding:6px 10px;font-size:.75rem}.replay-controls{flex-direction:column;align-items:flex-start}.replay-progress-inline{margin-left:0}}.landing{--deep:#0a1628;--deep-2:#0f2640;--surface:#fff;--surface-alt:#f7f9fc;--line:#dde4ed;--text:#0f1a2e;--muted:#52647a;--teal:#0d9488;--teal-soft:#ccfbf1;--warm:#ea580c;--warm-soft:#fff7ed;--radius:16px;--shadow:0 14px 34px #0814281a;color:var(--text);background:#f5f6f9;min-height:100vh;font-family:Manrope,Segoe UI,sans-serif;position:relative}.landing:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(80% 50% at 50% -10%,#0f766e17,#0000 60%),radial-gradient(60% 40% at 85% 20%,#f973160f,#0000 55%),radial-gradient(50% 35% at 15% 70%,#0f766e0d,#0000 55%);position:fixed;inset:0}.landing>*{z-index:1;position:relative}.landing-hero{color:#eff6ff;background:radial-gradient(80% 50% at 50% -10%,#0d94882e,#0000 55%),radial-gradient(50% 35% at 85% 15%,#ea580c14,#0000 50%),linear-gradient(170deg,#0a1628 0%,#0f2640 45%,#132e4a 100%);padding:28px 24px 48px;animation:.6s fadeUp;position:relative;overflow:hidden}.landing-hero:after{content:"";pointer-events:none;background-image:radial-gradient(circle at 15% 30%,#ffffff06 1px,#0000 1px),radial-gradient(circle at 75% 60%,#ffffff05 1px,#0000 1px);background-size:80px 80px,55px 55px;position:absolute;inset:0}.hero-nav{z-index:1;justify-content:space-between;align-items:center;gap:20px;max-width:1160px;margin-bottom:48px;margin-left:auto;margin-right:auto;display:flex;position:relative}.hero-badge{letter-spacing:.1em;text-transform:uppercase;color:#ccfbf1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0d948838;border:1px solid #0d94884d;border-radius:999px;padding:7px 14px;font-size:.72rem;font-weight:700}.hero-links{gap:18px;font-size:.82rem;font-weight:600;display:flex}.hero-links a{color:#8b9db5;text-decoration:none;transition:color .2s;position:relative}.hero-links a:hover{color:#e2e8f0}.hero-links a:after{content:"";background:var(--teal);width:0;height:1.5px;transition:width .22s;position:absolute;bottom:-3px;left:0}.hero-links a:hover:after{width:100%}.hero-body{text-align:center;z-index:1;max-width:780px;margin:0 auto 48px;position:relative}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#5eead4;margin-bottom:18px;font-size:.74rem;font-weight:700}.hero-body h1{letter-spacing:-.03em;color:#f8fafc;margin:0 0 16px;font-family:Sora,Manrope,sans-serif;font-size:clamp(2.2rem,4.5vw,3.6rem);line-height:1.05}.hero-body h1 span{background:linear-gradient(135deg,#5eead4,#fdba74);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-tagline{color:#bccde0;max-width:620px;margin:0 auto;font-size:1.05rem;line-height:1.72}.hero-actions{justify-content:center;align-items:center;gap:15px;margin-top:28px;display:flex}.hero-cta{color:#fff;letter-spacing:.02em;cursor:pointer;background:linear-gradient(120deg,#ea580c,#f97316);border:none;border-radius:10px;padding:12px 24px;font-size:.88rem;font-weight:700;transition:transform .2s;box-shadow:0 10px 22px #ea580c47}.hero-cta:hover{transform:translateY(-2px)}.hero-secondary{color:#8bb9e0;text-underline-offset:4px;font-size:.86rem;font-weight:600;transition:color .2s}.hero-secondary:hover{color:#bae6fd}.arch-deep{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.arch-pillar{background:#fff;border:1px solid #d8e1e8;border-radius:14px;padding:20px}.arch-pillar-title{letter-spacing:-.02em;color:var(--teal);border-bottom:2px solid var(--teal-soft);margin-bottom:14px;padding-bottom:10px;font-family:Sora,Manrope,sans-serif;font-size:1.02rem}.arch-stack{gap:14px;display:grid}.arch-layer h4{letter-spacing:-.01em;margin-bottom:4px;font-size:.84rem;font-weight:700}.arch-layer p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.6}.hero-metrics{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:960px;margin:0 auto;display:grid;position:relative}.metric-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;background:#ffffff12;border:1px solid #ffffff1a;border-radius:14px;padding:18px 16px;animation:.7s both fadeUp}.metric-value{letter-spacing:-.02em;color:#f1f5f9;margin-bottom:4px;font-family:Sora,Manrope,sans-serif;font-size:1.4rem;font-weight:700}.metric-label{letter-spacing:.07em;text-transform:uppercase;color:#7c93b0;font-size:.7rem;font-weight:600}.landing-section{max-width:1160px;margin:0 auto;padding:56px 24px}.section-heading{margin-bottom:24px}.section-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-bottom:10px;font-size:.7rem;font-weight:800}.section-heading h2{letter-spacing:-.02em;margin:0;font-family:Sora,Manrope,sans-serif;font-size:clamp(1.5rem,2.5vw,2.2rem)}.mission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.mission-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:transform .2s,box-shadow .2s;box-shadow:0 6px 18px #0a23350a}.mission-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0a233514}.mission-card h3,.flow-card h3,.data-card h3,.business-grid h3{letter-spacing:-.01em;margin-bottom:10px;font-family:Sora,Manrope,sans-serif;font-size:1rem}.mission-card p,.flow-card p,.data-card li,.business-grid p,.screenshot figcaption{color:var(--muted);font-size:.88rem;line-height:1.65}.flow-section{background:radial-gradient(60% 40% at 10%,#0d94880a,#0000 60%),linear-gradient(#f8fafd 0%,#edf1f7 100%);border-top:1px solid #dce3ed;border-bottom:1px solid #dce3ed;position:relative}.flow-section:before{content:"";pointer-events:none;background-image:linear-gradient(#0d948808 1px,#0000 1px),linear-gradient(90deg,#0d948808 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0}.flow-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.flow-card{background:#fff;border:1px solid #d8e1e8;border-radius:14px;padding:18px}.flow-card span{color:#0f766e;margin-bottom:7px;font-family:Sora,Manrope,sans-serif;font-size:.8rem;font-weight:700;display:inline-block}.formula-card{text-align:center;background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border:1px solid #99f6e4;border-radius:12px;padding:16px 20px}.formula-card h3{margin-bottom:8px;font-family:Sora,Manrope,sans-serif;font-size:.95rem}.data-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.data-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 6px 18px #0a23350a}.data-card ul{gap:10px;margin:0;padding-left:18px;display:grid}.screens{background:#fff}.screenshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.screenshot{border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin:0;transition:transform .25s,box-shadow .25s;overflow:hidden;box-shadow:0 12px 32px #0a23351a}.screenshot:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0a233524}.screenshot img{width:100%;display:block}.screenshot figcaption{background:#f8fafc;border-top:1px solid #e2e8f0;padding:14px 16px}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.business-grid article{background:#fff;border:1px solid #d8e0e8;border-radius:14px;padding:20px}.landing-cta{background:radial-gradient(70% 50% at 50% 100%,#ea580c0f,#0000 60%),radial-gradient(50% 40% at 50% 0,#0d94880f,#0000 55%),linear-gradient(150deg,#f0f9ff,#ecfdf5 40%,#fff7ed 100%);border:1px solid #d4e8f0;border-radius:28px;max-width:1160px;margin:0 auto 40px;padding:64px 24px 72px;box-shadow:0 20px 52px #0d948814}.cta-body{text-align:center;max-width:720px;margin:0 auto}.landing-cta .section-tag{margin-bottom:12px}.landing-cta h2{letter-spacing:-.03em;margin:0 0 14px;font-family:Sora,Manrope,sans-serif;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.15}.landing-cta p{color:var(--muted);max-width:620px;margin:0 auto 26px;font-size:.94rem;line-height:1.7}.cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.cta-secondary{color:#0f766e;text-underline-offset:3px;padding:8px 4px;font-size:.88rem;font-weight:700;text-decoration:none;transition:color .2s}.cta-secondary:hover{color:#0a5a53}.landing-footer{text-align:center;color:#4f6272;border-top:1px solid #dbe4ec;padding:30px 20px 40px;font-size:.84rem}.footer-meta{color:#74879a;margin-top:4px;font-size:.76rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=980px){.hero-links{display:none}.hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-grid,.flow-grid,.data-grid,.arch-deep{grid-template-columns:1fr 1fr}}@media (width<=700px){.landing-hero,.landing-section,.landing-cta{padding-left:16px;padding-right:16px}.hero-copy{padding:28px 20px}.hero-body h1{font-size:1.8rem}.hero-actions{flex-direction:column;align-items:center}.hero-cta{width:100%}.hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-grid,.flow-grid,.data-grid,.arch-deep,.business-grid,.screenshot-grid{grid-template-columns:1fr}}
