@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";
:root{--bg-primary:#0a0a0b;--bg-surface:#141415;--bg-elevated:#1c1c1e;--bg-hover:#242426;--bg-border:#2a2a2e;--text-primary:#fafafa;--text-secondary:#888;--text-tertiary:#555;--accent:#3b82f6;--accent-dim:#3b82f626;--accent-hover:#60a5fa;--success:#22c55e;--success-dim:#22c55e26;--warning:#f59e0b;--warning-dim:#f59e0b26;--critical:#ef4444;--critical-dim:#ef444426;--info:#3b82f6;--info-dim:#3b82f626;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}code,pre,.mono{font-family:var(--font-mono)}.navbar{z-index:100;height:64px;padding:0 var(--space-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--bg-border);background:#0a0a0bcc;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.navbar-logo{align-items:center;gap:var(--space-sm);letter-spacing:-.02em;font-size:18px;font-weight:700;display:flex}.navbar-logo-icon{background:var(--accent);border-radius:var(--radius-sm);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:800;display:flex}.navbar-links{align-items:center;gap:var(--space-lg);display:flex}.navbar-link{color:var(--text-secondary);transition:color var(--transition-fast);font-size:14px;font-weight:500}.navbar-link:hover,.navbar-link--active{color:var(--text-primary)}.navbar-user{align-items:center;gap:var(--space-sm);margin-left:var(--space-sm);display:flex}.navbar-user-avatar{border-radius:var(--radius-full);background:var(--accent);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.navbar-sign-in{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);margin-left:var(--space-sm);border:none;padding:6px 16px;font-size:13px;font-weight:600}.navbar-sign-in:hover{background:var(--accent-hover)}.navbar-sign-out{color:var(--text-secondary);border:1px solid var(--bg-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:4px 12px;font-size:12px;font-weight:500}.navbar-sign-out:hover{color:var(--text-primary);border-color:var(--text-tertiary)}.usage-limit-alert{margin-bottom:var(--space-xl)}.hero{padding:160px var(--space-xl) var(--space-4xl);text-align:center;max-width:800px;margin:0 auto}.hero-badge{align-items:center;gap:var(--space-sm);background:var(--accent-dim);border-radius:var(--radius-full);color:var(--accent);margin-bottom:var(--space-lg);font-size:13px;font-weight:500;font-family:var(--font-mono);border:1px solid #3b82f640;padding:6px 14px;display:inline-flex}.hero-title{letter-spacing:-.035em;margin-bottom:var(--space-lg);background:linear-gradient(#fff 0%,#999 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(36px,5vw,56px);font-weight:800;line-height:1.1}.hero-subtitle{color:var(--text-secondary);max-width:560px;margin:0 auto var(--space-2xl);font-size:18px;line-height:1.7}.url-input-wrapper{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);max-width:640px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:0;margin:0 auto;padding:6px;display:flex}.url-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.url-input-icon{padding:0 var(--space-md);color:var(--text-tertiary);flex-shrink:0;font-size:18px}.url-input{color:var(--text-primary);font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:14px 0;font-size:15px}.url-input::placeholder{color:var(--text-tertiary)}.url-input-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);transition:background var(--transition-fast), transform var(--transition-fast);flex-shrink:0;padding:12px 28px;font-size:14px;font-weight:600}.url-input-btn:hover{background:var(--accent-hover)}.url-input-btn:active{transform:scale(.97)}.url-input-btn:disabled{opacity:.5;cursor:not-allowed}.example-section{padding:var(--space-3xl) var(--space-xl);max-width:960px;margin:0 auto}.section-label{text-align:center;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-bottom:var(--space-sm);font-size:13px;font-weight:600}.section-title{text-align:center;letter-spacing:-.02em;margin-bottom:var(--space-2xl);color:var(--text-primary);font-size:28px;font-weight:700}.score-card{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);padding:var(--space-2xl);gap:var(--space-2xl);grid-template-columns:auto 1fr;align-items:start;display:grid}@media (max-width:700px){.score-card{grid-template-columns:1fr;justify-items:center}}.score-card-url{font-family:var(--font-mono);color:var(--text-secondary);background:var(--bg-elevated);border-radius:var(--radius-sm);grid-column:1/-1;padding:8px 14px;font-size:13px;display:inline-block}.gauge-container{align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.gauge-svg{width:180px;height:180px;transform:rotate(-90deg)}.gauge-track{fill:none;stroke:var(--bg-elevated);stroke-width:10px}.gauge-fill{fill:none;stroke-width:10px;stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1),stroke .3s}.gauge-score-label{font-family:var(--font-mono);letter-spacing:-.03em;font-size:44px;font-weight:700;position:absolute}.gauge-score-max{color:var(--text-tertiary);font-size:18px}.gauge-inner{flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.gauge-text{flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gauge-text-score{font-family:var(--font-mono);letter-spacing:-.03em;font-size:42px;font-weight:700;line-height:1}.gauge-text-label{color:var(--text-secondary);margin-top:4px;font-size:13px}.subscores{gap:var(--space-md);flex-direction:column;width:100%;display:flex}.subscore{cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.subscore:hover{background:var(--bg-elevated)}.subscore-header{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);display:flex}.subscore-label{color:var(--text-secondary);align-items:center;gap:var(--space-sm);min-width:120px;font-size:13px;font-weight:500;display:flex}.subscore-weight{font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-elevated);border-radius:var(--radius-sm);padding:2px 6px;font-size:11px}.subscore-bar-wrapper{background:var(--bg-elevated);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.subscore-bar-fill{border-radius:var(--radius-full);height:100%;transition:width 1s cubic-bezier(.4,0,.2,1)}.subscore-value{font-family:var(--font-mono);text-align:right;min-width:36px;font-size:14px;font-weight:600}.subscore-detail{padding:var(--space-sm) var(--space-md) var(--space-md);color:var(--text-secondary);border-top:1px solid var(--bg-border);margin:0 var(--space-md);font-size:13px;line-height:1.6}.subscore-chevron{color:var(--text-tertiary);transition:transform var(--transition-fast);font-size:12px}.subscore-chevron--open{transform:rotate(90deg)}.issues-section{padding:var(--space-3xl) var(--space-xl);max-width:960px;margin:0 auto}.issues-list{gap:var(--space-sm);flex-direction:column;display:flex}.issue-card{align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-md);display:flex}.issue-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);flex-shrink:0;margin-top:2px;padding:3px 8px;font-size:11px;font-weight:600}.issue-badge--critical{color:var(--critical);background:var(--critical-dim)}.issue-badge--warning{color:var(--warning);background:var(--warning-dim)}.issue-badge--info{color:var(--info);background:var(--info-dim)}.issue-message{color:var(--text-secondary);font-size:14px;line-height:1.5}.raw-data-toggle{align-items:center;gap:var(--space-sm);padding:var(--space-md) 0;color:var(--text-tertiary);cursor:pointer;transition:color var(--transition-fast);text-align:left;width:100%;font-size:13px;font-weight:500;display:flex}.raw-data-toggle:hover{color:var(--text-secondary)}.raw-data-panel{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-md);overflow:hidden}.raw-data-content{padding:var(--space-lg);overflow-x:auto}.raw-data-content pre{font-family:var(--font-mono);color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.7}.stepper{align-items:center;gap:var(--space-2xl);padding:200px var(--space-xl);flex-direction:column;display:flex}.stepper-title{letter-spacing:-.02em;font-size:24px;font-weight:700}.stepper-steps{align-items:center;gap:var(--space-lg);display:flex}.stepper-step{align-items:center;gap:var(--space-sm);color:var(--text-tertiary);transition:color var(--transition-base);font-size:14px;font-weight:500;display:flex}.stepper-step--active{color:var(--accent)}.stepper-step--done{color:var(--success)}.stepper-dot{background:var(--bg-border);width:10px;height:10px;transition:background var(--transition-base), box-shadow var(--transition-base);border-radius:50%;flex-shrink:0}.stepper-step--active .stepper-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-dim);animation:1.5s ease-in-out infinite pulse}.stepper-step--done .stepper-dot{background:var(--success)}.stepper-connector{background:var(--bg-border);width:40px;height:2px}.stepper-connector--done{background:var(--success)}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--accent-dim)}50%{box-shadow:0 0 0 8px #3b82f614}}.results-page{padding:100px var(--space-xl) var(--space-3xl);max-width:960px;margin:0 auto}.results-url{font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:var(--space-2xl);background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-sm);padding:10px 16px;font-size:14px;display:inline-block}.results-grid{gap:var(--space-2xl);margin-bottom:var(--space-3xl);grid-template-columns:auto 1fr;align-items:start;display:grid}@media (max-width:700px){.results-grid{grid-template-columns:1fr;justify-items:center}}.phase2-section{padding:var(--space-3xl) var(--space-xl);max-width:960px;margin:0 auto}.phase2-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.phase2-card{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);padding:var(--space-xl);position:relative;overflow:hidden}.phase2-card:after{content:"";-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1;background:#0a0a0b99;position:absolute;inset:0}.phase2-badge{top:var(--space-md);right:var(--space-md);z-index:2;font-family:var(--font-mono);background:var(--bg-elevated);border:1px solid var(--bg-border);border-radius:var(--radius-full);color:var(--text-tertiary);padding:4px 10px;font-size:11px;font-weight:600;position:absolute}.phase2-card-icon{margin-bottom:var(--space-md);font-size:28px}.phase2-card-title{margin-bottom:var(--space-sm);font-size:18px;font-weight:600}.phase2-card-desc{color:var(--text-secondary);font-size:14px;line-height:1.6}.pricing-page{padding:140px var(--space-xl) var(--space-3xl);max-width:1080px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:var(--space-3xl)}.pricing-header h1{letter-spacing:-.03em;margin-bottom:var(--space-md);font-size:40px;font-weight:800}.pricing-header p{color:var(--text-secondary);font-size:18px}.pricing-grid{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:800px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);padding:var(--space-xl);flex-direction:column;display:flex}.pricing-card--featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 4px 24px #3b82f61a;position:relative}.pricing-card-badge{background:var(--accent);color:#fff;border-radius:var(--radius-full);padding:4px 14px;font-size:12px;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-tier{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--space-sm);font-size:14px;font-weight:600}.pricing-price{font-family:var(--font-mono);margin-bottom:var(--space-xs);font-size:40px;font-weight:700}.pricing-price-period{color:var(--text-tertiary);font-size:16px;font-weight:400}.pricing-desc{color:var(--text-secondary);margin-bottom:var(--space-xl);font-size:14px;line-height:1.5}.pricing-features{gap:var(--space-sm);margin-bottom:var(--space-xl);flex-direction:column;flex:1;list-style:none;display:flex}.pricing-feature{color:var(--text-secondary);align-items:center;gap:var(--space-sm);font-size:14px;display:flex}.pricing-feature:before{content:"✓";color:var(--success);font-weight:700}.pricing-btn{border-radius:var(--radius-md);text-align:center;transition:background var(--transition-fast);padding:12px;font-size:14px;font-weight:600}.pricing-btn--primary{background:var(--accent);color:#fff}.pricing-btn--primary:hover{background:var(--accent-hover)}.pricing-btn--secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--bg-border)}.pricing-btn--secondary:hover{background:var(--bg-hover)}.generate-page{padding:140px var(--space-xl) var(--space-3xl);max-width:1080px;margin:0 auto}.generate-layout{gap:var(--space-xl);grid-template-columns:260px 1fr;align-items:start;display:grid}@media (max-width:800px){.generate-layout{grid-template-columns:1fr}}.generate-steps{flex-direction:column;gap:0;display:flex}.generate-step{align-items:flex-start;gap:var(--space-md);padding:var(--space-md) 0;display:flex;position:relative}.generate-step:not(:last-child):after{content:"";background:var(--bg-border);width:2px;position:absolute;top:38px;bottom:0;left:11px}.generate-step--done:not(:last-child):after{background:var(--success)}.generate-step-dot{background:var(--bg-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex}.generate-step--active .generate-step-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-dim)}.generate-step--done .generate-step-dot{background:var(--success)}.generate-step-text{color:var(--text-tertiary);font-size:14px;font-weight:500}.generate-step--active .generate-step-text{color:var(--text-primary)}.generate-step--done .generate-step-text{color:var(--success)}.generate-terminal{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);overflow:hidden}.generate-terminal-header{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--bg-border);display:flex}.generate-terminal-dot{border-radius:50%;width:12px;height:12px}.generate-terminal-body{padding:var(--space-lg);font-family:var(--font-mono);color:var(--success);min-height:300px;max-height:460px;font-size:13px;line-height:1.8;overflow-y:auto}.generate-terminal-line{opacity:.8}.generate-terminal-line:before{content:"$ ";color:var(--text-tertiary)}.tools-page{padding:140px var(--space-xl) var(--space-3xl);max-width:1080px;margin:0 auto}.tools-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.tool-card{background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-lg);padding:var(--space-xl)}.tool-card-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.tool-card-name{font-family:var(--font-mono);font-size:16px;font-weight:600}.tool-card-badge{border-radius:var(--radius-full);padding:3px 10px;font-size:12px;font-weight:600}.tool-card-badge--pass{color:var(--success);background:var(--success-dim)}.tool-card-badge--review{color:var(--warning);background:var(--warning-dim)}.tool-card-desc{color:var(--text-secondary);margin-bottom:var(--space-lg);font-size:14px;line-height:1.5}.tool-card-schema{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:var(--space-md);font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:var(--space-lg);font-size:12px;line-height:1.7;overflow-x:auto}.tool-card-download{justify-content:center;align-items:center;gap:var(--space-sm);background:var(--bg-elevated);border:1px solid var(--bg-border);border-radius:var(--radius-md);color:var(--text-secondary);width:100%;transition:background var(--transition-fast), color var(--transition-fast);padding:10px;font-size:13px;font-weight:500;display:flex}.tool-card-download:hover{background:var(--bg-hover);color:var(--text-primary)}.phase2-overlay{position:relative}.phase2-overlay:before{content:"";-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;border-radius:var(--radius-lg);background:#0a0a0ba6;position:absolute;inset:-20px}.phase2-overlay-badge{z-index:11;align-items:center;gap:var(--space-sm);font-family:var(--font-mono);color:var(--text-secondary);padding:var(--space-lg) var(--space-xl);background:var(--bg-surface);border:1px solid var(--bg-border);border-radius:var(--radius-md);flex-direction:column;font-size:14px;font-weight:600;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.footer{padding:var(--space-2xl) var(--space-xl);border-top:1px solid var(--bg-border);text-align:center;color:var(--text-tertiary);font-size:13px}
