:root{--bg: #ffffff;--bg-secondary: #f8f9fb;--bg-card: #ffffff;--text: #1a1a2e;--text-secondary: #64748b;--text-muted: #5a6a7a;--border: #e2e8f0;--border-light: #f1f5f9;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-light: #eff6ff;--critical: #dc2626;--serious: #ea580c;--moderate: #d97706;--minor: #6b7280;--good: #16a34a;--okay: #d97706;--poor: #dc2626;--radius: 8px;--radius-lg: 12px;--shadow: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.12);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.6}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}p a,li a,td a,dd a,figcaption a,.legal-content a,.faq-item a,.auth-footer a,.tos-checkbox a,.scan-disclaimer a,.footer-disclaimer a{text-decoration:underline}.skip-nav{position:absolute;left:-9999px;top:0;z-index:999;padding:12px 24px;background:var(--primary);color:#fff;font-weight:600;font-size:.9rem;text-decoration:none;border-radius:0 0 var(--radius) 0}.skip-nav:focus{left:0;outline:3px solid var(--primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.container{max-width:1120px;margin:0 auto;padding:0 24px}h1{font-size:2rem;font-weight:800;line-height:1.2}h2{font-size:1.5rem;font-weight:700;line-height:1.3;margin-bottom:12px}h3{font-size:1.1rem;font-weight:600;line-height:1.4}.gradient-text{background:linear-gradient(135deg,var(--primary),#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.muted{color:var(--text-muted)}.subtitle{color:var(--text-secondary);margin-top:4px}.section-sub{color:var(--text-secondary);font-size:1.1rem;margin-bottom:40px;text-align:center;max-width:600px;margin-left:auto;margin-right:auto}.section-title{margin-top:32px;margin-bottom:16px}.error-text{color:var(--critical);font-size:.9rem;margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:all .15s;text-decoration:none!important}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--bg);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary)}.btn-ghost{background:transparent;color:var(--text-secondary);border:none;padding:6px 12px}.btn-ghost:hover{color:var(--text);background:var(--bg-secondary)}.btn-ghost:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-ghost.danger{color:var(--critical)}.btn-ghost.danger:hover{background:#fef2f2}.btn-text{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.85rem}.btn-text:hover{color:var(--text)}.btn-text:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-sm{padding:8px 16px;font-size:.85rem;font-weight:700}.btn-lg{padding:14px 28px;font-size:1rem}.btn-block{width:100%}.top-nav{padding:16px 0;border-bottom:1px solid var(--border-light);position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100}.nav-inner{display:flex;align-items:center;justify-content:space-between}.nav-brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.1rem;color:var(--text);text-decoration:none!important}.nav-links{display:flex;align-items:center;gap:20px}.nav-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500}.nav-links a:hover{color:var(--text);text-decoration:none}.nav-links a.btn-cta,.nav-links a.btn-cta:hover{color:#fff}.btn-cta{background:#1e3a5f;color:#fff;border-color:#1e3a5f;box-shadow:0 1px 2px #0f27574d,0 4px 12px #0f275726;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,background .2s ease}.btn-cta:hover:not(:disabled){background:#172e4a;transform:translateY(-1px);box-shadow:0 2px 4px #0f27574d,0 8px 24px #0f275733}.btn-cta:active:not(:disabled){transform:translateY(0)}.cta-arrow{margin-left:4px;transition:transform .15s ease}.btn-cta:hover .cta-arrow{transform:translate(2px)}.hero{position:relative;padding:96px 0 72px;overflow:hidden}.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 20% 50%,hsl(220 80% 92% / .7) 0%,transparent 70%),radial-gradient(ellipse 50% 60% at 80% 30%,hsl(260 60% 92% / .5) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 50% 80%,hsl(180 50% 94% / .4) 0%,transparent 70%);animation:heroGlow 20s ease-in-out infinite alternate;pointer-events:none}@keyframes heroGlow{0%{opacity:.6;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.hero-text{text-align:left}.hero h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:800;line-height:1.1;letter-spacing:-.03em;margin-bottom:20px}.hero-preview{position:relative}.hero-sub{font-size:1.15rem;color:var(--text-secondary);max-width:540px;margin:0 0 36px;line-height:1.6}.scan-form{display:flex;gap:0;max-width:520px;margin:0;border-radius:12px;box-shadow:0 1px 2px #6677990f,0 4px 12px #66779914,0 12px 36px #6677990f;overflow:hidden;border:1px solid var(--border);transition:box-shadow .25s ease,border-color .25s ease}.scan-form:focus-within{border-color:#7da1e8;box-shadow:0 1px 2px #2662d91a,0 4px 12px #2662d91a,0 12px 36px #2662d914}.scan-input-wrap{flex:1}.scan-form input{width:100%;padding:16px 20px;border:none;font-size:1rem;font-family:var(--font);background:var(--bg)}.scan-form input:focus{outline:none}.scan-form input:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.scan-form .btn-cta{border-radius:0;white-space:nowrap;padding:16px 28px;font-size:.95rem;box-shadow:none}.scan-form .btn-cta:hover{transform:none}.hero-note{font-size:.82rem;color:var(--text-muted);margin-top:16px}.scan-progress{margin-top:24px;display:flex;flex-direction:column;align-items:center;gap:12px}.progress-bar-track{width:260px;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--primary);border-radius:3px;transition:width .4s ease}.scan-result{padding:64px 0;background:var(--bg-secondary)}.result-header{display:flex;align-items:center;gap:40px;margin:24px 0 32px;padding:28px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:0 1px 2px #6677990f,0 4px 12px #6677990f}.result-stats{flex:1}.stat-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border-light)}.stat-row .stat-label{color:var(--text-secondary)}.stat-row .stat-value{font-weight:600}.stat-row.critical .stat-value{color:var(--critical)}.stat-row.serious .stat-value{color:#c2410c}.stat-row.moderate .stat-value{color:#b45309}.stat-row.minor .stat-value{color:var(--minor)}.result-page{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:0 1px 3px #6677990f}.result-page h3{display:flex;align-items:center;gap:8px;margin-bottom:12px}.result-cta{text-align:center;padding:40px;margin-top:32px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:0 1px 3px #6677990f}.result-cta h3{margin-bottom:8px}.result-cta p{color:var(--text-secondary);margin-bottom:20px}.preview-window{max-width:680px;margin:0 auto;border-radius:12px;overflow:hidden;border:1px solid hsl(220 15% 88%);box-shadow:0 2px 4px #6677990a,0 8px 24px #6677990f,0 24px 48px #6677990f}.preview-chrome{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#f3f4f6;border-bottom:1px solid hsl(220 15% 90%)}.preview-dots{display:flex;gap:6px}.preview-dots span{width:10px;height:10px;border-radius:50%;background:#cdd0d6}.preview-url-bar{flex:1;padding:4px 12px;background:var(--bg);border-radius:6px;font-size:.75rem;color:var(--text-muted);font-family:monospace}.preview-body{padding:24px;background:var(--bg)}.preview-top{padding-bottom:20px;border-bottom:1px solid var(--border-light);margin-bottom:16px}.preview-score-area{display:flex;align-items:center;gap:20px}.preview-site{font-weight:700;font-size:1rem}.preview-meta{font-size:.82rem;color:var(--text-muted);margin-top:2px}.preview-violations{margin-bottom:20px}.pv-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-light);font-size:.88rem;color:var(--text-secondary)}.pv-row:last-child{border-bottom:none}.pv-count{margin-left:auto;font-weight:600;color:var(--text);font-size:.82rem}.preview-fix{background:#f6f7f9;border-radius:var(--radius);padding:16px;position:relative}.preview-fix-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.preview-fix-tag{font-weight:500;text-transform:none;letter-spacing:0;color:var(--primary)}.preview-fix-blur{display:flex;flex-direction:column;gap:6px;filter:blur(2.5px);-webkit-user-select:none;user-select:none;pointer-events:none}.preview-fix-blur code{font-size:.78rem;font-family:monospace;color:var(--text-secondary);line-height:1.5}.preview-fix-blur strong{color:var(--good);font-weight:700}.preview-fix-gate{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-top:24px}.stat-bar{background:#0f172a;padding:40px 0}.stat-bar-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;text-align:center}.stat-bar-val{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1;margin-bottom:6px}.stat-bar-label{font-size:.85rem;color:#94a3b8;line-height:1.4}.feature-section{padding:80px 0;background:var(--bg-secondary)}.feature-section h2{text-align:center;margin-bottom:48px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:880px;margin:0 auto}.feature-problem h3,.feature-solution h3{margin-bottom:12px;font-size:1.05rem}.feature-problem p,.feature-solution p{color:var(--text-secondary);font-size:.92rem;line-height:1.7;margin-bottom:12px}.feature-list{list-style:none;margin-top:16px}.feature-list li{padding:5px 0 5px 24px;position:relative;font-size:.92rem;color:var(--text-secondary)}.feature-list li:before{content:"✓";position:absolute;left:0;color:var(--good);font-weight:700}.feature-cta{text-align:center;margin-top:40px}.authority-section{padding:56px 0}.authority-quote{max-width:680px;margin:0 auto;padding:28px 32px;background:#fcf3f3;border-left:3px solid var(--critical);border-radius:0 var(--radius) var(--radius) 0}.authority-quote p{font-size:1.05rem;line-height:1.6;color:var(--text);margin-bottom:12px}.authority-quote cite{font-style:normal;font-size:.82rem;color:var(--text-muted)}.pricing-page h1{text-align:center;margin-bottom:8px}.pricing-page{padding-top:80px;padding-bottom:60px}.pricing-context{text-align:center;color:var(--text-secondary);font-size:1.05rem;margin-bottom:40px}.billing-toggle{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:32px}.toggle-btn{padding:8px 20px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s ease}.toggle-btn:first-child{border-radius:var(--radius) 0 0 var(--radius)}.toggle-btn:nth-child(2){border-radius:0 var(--radius) var(--radius) 0}.toggle-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.toggle-save{margin-left:10px;font-size:.78rem;font-weight:600;color:#15803d}.price-savings{font-size:.82rem;color:#15803d;font-weight:500;margin-top:-12px;margin-bottom:16px}.price-savings.muted{color:var(--text-muted);font-weight:400}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pricing-grid-2col{grid-template-columns:1fr 1fr;max-width:800px;margin:0 auto}.severity-section{max-width:800px;margin:32px auto}.severity-heading{text-align:center;margin-bottom:24px}.severity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.severity-card{text-align:center;padding:24px}.severity-price{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:4px}.severity-label{font-weight:600;font-size:1.1rem;margin-bottom:8px}.severity-desc{color:var(--text-muted);font-size:.85rem}.pricing-card{position:relative;padding:28px 20px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;transition:box-shadow .25s ease,transform .25s ease}.pricing-card:hover{box-shadow:0 4px 16px #66779914}.pricing-card-hl{border:2px solid var(--primary);box-shadow:0 2px 8px #2662d91a,0 8px 32px #2662d914}.pricing-card-hl:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2662d926,0 12px 40px #2662d91a}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);padding:4px 14px;background:var(--primary);color:#fff;font-size:.72rem;font-weight:600;border-radius:12px;letter-spacing:.02em}.pricing-card h2{font-size:1.25rem;margin-bottom:12px}.price{margin-bottom:20px}.price-dollar{font-size:1.2rem;font-weight:600;vertical-align:super}.price-amount{font-size:2.5rem;font-weight:800;letter-spacing:-.02em}.price-period{font-size:.9rem;color:var(--text-secondary)}.pricing-card ul{list-style:none;text-align:left;margin-bottom:24px}.pricing-card li{padding:5px 0 5px 22px;position:relative;font-size:.88rem;color:var(--text-secondary)}.pricing-card li:before{content:"✓";position:absolute;left:0;color:var(--good);font-weight:600;font-size:.85rem}.pricing-note{text-align:center;font-size:.82rem;color:var(--text-muted);margin-top:24px}.pricing-mention{text-align:center;font-size:.92rem;color:var(--text-secondary);margin-top:32px}.faq-section{padding:72px 0}.faq-section h2{text-align:center;margin-bottom:40px}.faq-list{max-width:680px;margin:0 auto}.faq-list .faq-item{border-bottom:1px solid var(--border)}.faq-list .faq-item:first-child{border-top:1px solid var(--border)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 0;background:none;border:none;cursor:pointer;font-size:1rem;font-weight:600;color:var(--text);text-align:left;font-family:var(--font);line-height:1.4;transition:color .15s ease}.faq-question:hover{color:var(--primary)}.faq-question:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.faq-chevron{flex-shrink:0;margin-left:16px;width:20px;height:20px;position:relative}.faq-chevron:before,.faq-chevron:after{content:"";position:absolute;background:var(--text-muted);transition:transform .25s cubic-bezier(.4,0,.2,1)}.faq-chevron:before{width:12px;height:2px;top:9px;left:4px}.faq-chevron:after{width:2px;height:12px;top:4px;left:9px}.faq-item.open .faq-chevron:after{transform:scaleY(0)}.faq-item.open .faq-chevron:before,.faq-item.open .faq-chevron:after{background:var(--primary)}.faq-answer-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1)}.faq-item.open .faq-answer-wrap{grid-template-rows:1fr}.faq-answer{overflow:hidden}.faq-answer p{padding-bottom:20px;color:var(--text-secondary);font-size:.92rem;line-height:1.7}.pricing-faq{margin-top:48px;margin-bottom:48px}.pricing-faq h2{text-align:center;margin-bottom:32px}.pricing-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:800px;margin:0 auto}.pricing-faq-grid .faq-item{padding:20px;background:var(--bg-secondary);border-radius:var(--radius)}.pricing-faq-grid .faq-item h3{margin-bottom:8px;font-size:.95rem}.pricing-faq-grid .faq-item p{font-size:.88rem;color:var(--text-secondary);line-height:1.6}.final-cta{padding:72px 0;text-align:center;background:#0f172a;color:#fff}.final-cta h2{font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800;letter-spacing:-.02em;margin-bottom:28px;color:#fff}.exit-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.exit-popup{background:var(--bg);border-radius:16px;padding:40px 36px;max-width:460px;width:100%;text-align:center;position:relative;box-shadow:0 4px 12px #14181f1a,0 16px 48px #14181f26;animation:popIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.exit-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;padding:4px 8px;line-height:1;transition:color .15s}.exit-close:hover{color:var(--text)}.exit-popup h3{font-size:1.2rem;margin-bottom:8px;line-height:1.3}.exit-popup>p{color:var(--text-secondary);font-size:.92rem;margin-bottom:24px}.exit-form{display:flex;gap:0;border-radius:10px;overflow:hidden;border:1px solid var(--border);box-shadow:0 1px 4px #6677990f}.exit-form input{flex:1;padding:14px 16px;border:none;font-size:.95rem;font-family:var(--font);outline:none}.exit-form input:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.exit-form .btn-cta{border-radius:0;box-shadow:none;padding:14px 20px}.exit-note{font-size:.78rem;color:var(--text-muted);margin-top:12px}.footer{padding:32px 0;border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:.85rem}.footer-inner{display:flex;justify-content:space-between;align-items:center}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand strong{color:var(--text)}.footer-brand span{color:var(--text-muted)}.footer-links{display:flex;gap:20px}.footer-links a{color:var(--text-secondary)}.auth-page{min-height:100vh;display:flex;flex-direction:column;align-items:center}.auth-page .top-nav{width:100%}.auth-card{width:100%;max-width:420px;padding:32px;margin-top:60px}.auth-card h1{font-size:1.5rem;margin-bottom:8px}.auth-sub{color:var(--text-secondary);margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--text-secondary)}.form-group input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;transition:border-color .15s}.form-group input:focus{border-color:var(--primary);outline:none}.form-group input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-divider{display:flex;align-items:center;margin:20px 0 16px;color:var(--text-muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-top:1px solid var(--border)}.auth-divider span{padding:0 12px}.google-btn-container{display:flex;justify-content:center}.auth-footer{margin-top:20px;text-align:center;font-size:.9rem;color:var(--text-secondary)}.auth-footer a{margin:0 4px}.success-message{padding:16px;background:#f0fdf4;border-radius:var(--radius);color:var(--good);text-align:center}.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;background:#0f172a;color:#e2e8f0;display:flex;flex-direction:column;padding:20px 0;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:0 20px 20px;font-weight:700;font-size:1rem;color:#fff;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-nav{flex:1;padding:16px 0}.sidebar-nav a{display:flex;align-items:center;gap:10px;padding:10px 20px;color:#94a3b8;font-size:.9rem;font-weight:500;text-decoration:none!important;transition:all .15s}.sidebar-nav a:hover{color:#fff;background:#ffffff0d}.sidebar-nav a.active{color:#fff;background:#ffffff1a;border-right:3px solid var(--primary)}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-user{display:flex;align-items:center;gap:8px;margin-bottom:8px}.user-email{font-size:.8rem;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.plan-badge.free{background:#334155;color:#94a3b8}.plan-badge.starter{background:#1e40af;color:#93c5fd}.plan-badge.pro{background:#7e22ce;color:#c4b5fd}.plan-badge.enterprise{background:#b45309;color:#fde68a}.app-main{flex:1;padding:32px 40px;background:var(--bg-secondary);overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-header h1{margin-bottom:0}.header-actions{display:flex;gap:8px}.back-link{font-size:.85rem;color:var(--text-secondary);display:block;margin-bottom:4px}.card{background:var(--bg-card);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);margin-bottom:16px}.success-card{background:#f0fdf4;border:1px solid #bbf7d0}.error-card{background:#fef2f2;border:1px solid #fecaca}.sites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.site-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow)}.site-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.site-info h3{margin-bottom:2px}.site-info h3 a{color:var(--text);font-weight:600}.site-url{font-size:.85rem;color:var(--text-muted)}.site-card-stats{font-size:.9rem;color:var(--text-secondary);margin-bottom:16px}.site-card-actions,.add-site-card .form-row{display:flex;gap:8px}.add-site-card input{flex:1;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state svg{margin-bottom:16px;color:var(--text-muted)}.empty-state h2{color:var(--text);margin-bottom:8px}.empty-state p{margin-bottom:20px}.empty-state.small{padding:32px}.score-overview{display:flex;align-items:center;gap:32px}.score-detail h2{margin-bottom:8px}.score-stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:8px}.stat{font-size:.85rem;font-weight:600}.stat.critical{color:var(--critical)}.stat.serious{color:#c2410c}.stat.moderate{color:#b45309}.stat.minor{color:var(--minor)}.scan-progress-card{text-align:center;padding:60px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.scan-progress-card h2{margin:16px 0 8px}.filter-bar{display:flex;gap:8px;margin:20px 0 16px;align-items:center;flex-wrap:wrap}.filter-btn{padding:6px 14px;border:1px solid var(--border);border-radius:20px;background:var(--bg);font-size:.8rem;font-weight:500;cursor:pointer;text-transform:capitalize}.filter-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.violation-page{margin-bottom:16px}.page-title{display:flex;align-items:center;gap:8px;margin-bottom:16px}.badge{display:inline-block;padding:2px 10px;background:var(--bg-secondary);border-radius:12px;font-size:.75rem;font-weight:500;color:var(--text-secondary)}.violation-item{padding:12px 16px;border-left:3px solid var(--border);margin-bottom:12px;background:var(--bg-secondary);border-radius:0 var(--radius) var(--radius) 0}.violation-item.impact-critical{border-left-color:var(--critical)}.violation-item.impact-serious{border-left-color:var(--serious)}.violation-item.impact-moderate{border-left-color:var(--moderate)}.violation-item.impact-minor{border-left-color:var(--minor)}.violation-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.impact-badge{padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;color:#fff}.impact-badge.critical{background:var(--critical)}.impact-badge.serious{background:#9a3412}.impact-badge.moderate{background:#92400e}.impact-badge.minor{background:#374151}.rule-id{font-family:monospace;font-size:.8rem;color:var(--text-secondary);font-weight:600}.wcag-ref{font-size:.8rem;color:var(--text-muted)}.learn-more{font-size:.8rem}.violation-desc{font-size:.9rem;color:var(--text-secondary)}.code-snippet{margin-top:8px;padding:8px 12px;background:#f1f5f9;border-radius:var(--radius);font-size:.8rem;font-family:monospace;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.code-snippet.original{border-left:3px solid var(--critical)}.fix-section,.fix-detail{margin-top:8px}.fix-explanation{font-size:.85rem;color:var(--text-secondary);margin-bottom:8px;font-style:italic}.code-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.code-block{position:relative}.code-label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-bottom:4px;color:var(--text-muted)}.code-block pre{padding:10px;border-radius:var(--radius);font-size:.8rem;font-family:monospace;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.code-block.original pre{background:#fef2f2;border:1px solid #fecaca}.code-block.fixed pre{background:#f0fdf4;border:1px solid #bbf7d0}.copy-btn{position:absolute;top:24px;right:8px}.scan-list{display:flex;flex-direction:column;gap:8px}.scan-row{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);text-decoration:none!important;color:var(--text);transition:box-shadow .15s}.scan-row:hover{box-shadow:var(--shadow-md)}.scan-row-info{flex:1}.scan-date{font-weight:500;display:block}.scan-type{font-size:.8rem;color:var(--text-muted);text-transform:capitalize}.scan-row-stats{display:flex;gap:12px;font-size:.85rem;color:var(--text-secondary)}.status-badge{padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600}.status-badge.running{background:#eff6ff;color:var(--primary)}.status-badge.failed{background:#fef2f2;color:var(--critical)}.detail-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-light);font-size:.9rem}.detail-label{color:var(--text-secondary)}.subscription-status{margin-bottom:12px;font-size:.9rem}.plan-features{margin-bottom:20px}.plan-actions{display:flex;gap:12px}.upgrade-options{display:flex;gap:12px;flex-wrap:wrap}.form-row{display:flex;gap:8px}.score-ring-wrapper{display:inline-flex;flex-direction:column;align-items:center}.score-ring{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.score-ring .ring-bg{stroke:var(--border-light)}.score-ring.good .ring-fg{stroke:var(--good)}.score-ring.okay .ring-fg{stroke:var(--okay)}.score-ring.poor .ring-fg{stroke:var(--critical)}.score-ring.neutral .ring-fg{stroke:var(--border)}.ring-label{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1}.ring-score{font-weight:800;font-size:1.5em}.ring-max{font-size:.6em;color:var(--text-muted)}.ring-sublabel{font-size:.7rem;color:var(--text-muted);margin-top:6px;text-align:center;font-style:italic}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading{display:flex;justify-content:center;padding:60px}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.legal-page{min-height:100vh;display:flex;flex-direction:column}.legal-content{max-width:740px;margin:40px auto 60px;line-height:1.8}.legal-content h1{font-size:2rem;margin-bottom:8px}.legal-content h2{font-size:1.25rem;margin-top:32px;margin-bottom:12px;border-bottom:1px solid var(--border-light);padding-bottom:8px}.legal-content h3{font-size:1rem;margin-top:20px;margin-bottom:8px}.legal-content p{margin-bottom:12px;color:var(--text-secondary);font-size:.95rem}.legal-content ul{margin-bottom:12px;padding-left:24px}.legal-content li{margin-bottom:6px;color:var(--text-secondary);font-size:.95rem}.legal-updated{color:var(--text-muted);font-size:.85rem;margin-bottom:24px}.legal-highlight{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;border-radius:var(--radius);padding:16px 20px;margin:16px 0}.legal-highlight p{color:var(--text)}.legal-table{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:.9rem}.legal-table th,.legal-table td{padding:10px 12px;border:1px solid var(--border);text-align:left}.legal-table th{background:var(--bg-secondary);font-weight:600;color:var(--text)}.legal-table td{color:var(--text-secondary)}.scan-disclaimer{font-size:.78rem;color:var(--text-muted);max-width:560px;margin:8px 0 0;line-height:1.5}.scan-disclaimer a{color:var(--text-muted);text-decoration:underline}.score-disclaimer{font-size:.78rem;color:var(--text-muted);font-style:italic;margin-top:2px}.fix-caveat{font-size:.75rem;color:#92400e;margin-top:6px;font-style:italic}.fix-status-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}.fix-status-badge.applied{background:#dcfce7;color:#166534}.fix-status-badge.reverted{background:#fef3c7;color:#92400e}.fix-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light)}.btn-revert{background:#fef3c7;color:#92400e;border:1px solid #fcd34d;font-weight:600}.btn-revert:hover{background:#fde68a}.btn-revert:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.violation-item.fix-applied{border-left:3px solid var(--good)}.violation-item.fix-reverted{border-left:3px solid var(--moderate)}.footer-disclaimer{font-size:.75rem;color:var(--text-muted);margin-top:16px;text-align:center;border-top:1px solid var(--border-light);padding-top:12px}.manual-testing-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-lg);padding:20px 24px;margin-top:24px}.manual-testing-note h3{margin-bottom:8px;color:var(--primary)}.manual-testing-note p{color:var(--text-secondary);font-size:.9rem;margin-bottom:8px}.manual-testing-note ul{list-style:none}.manual-testing-note li{padding:4px 0 4px 20px;position:relative;font-size:.85rem;color:var(--text-secondary)}.manual-testing-note li:before{content:"•";position:absolute;left:4px;color:var(--primary)}.tos-checkbox{margin-bottom:20px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:.85rem;color:var(--text-secondary);line-height:1.5;cursor:pointer}.checkbox-label input[type=checkbox]{margin-top:3px;flex-shrink:0;width:18px;height:18px;accent-color:var(--primary)}.checkbox-label a{font-weight:600}.estimate-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}.estimate-modal{background:var(--bg);border-radius:16px;padding:32px;max-width:480px;width:100%;box-shadow:0 4px 12px #14181f1a,0 16px 48px #14181f26;animation:popIn .25s cubic-bezier(.34,1.56,.64,1)}.estimate-modal h2{margin-bottom:4px}.estimate-summary{color:var(--text-secondary);margin-bottom:20px}.estimate-breakdown{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.estimate-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius);font-size:.9rem}.estimate-impact{display:flex;align-items:center;gap:8px}.estimate-price{color:var(--text-secondary);font-size:.85rem}.estimate-price strong{color:var(--text)}.estimate-total{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:2px solid var(--border);margin-bottom:16px;font-weight:600}.estimate-total-amount{font-size:1.4rem;font-weight:800;color:var(--text)}.estimate-note{font-size:.82rem;color:var(--text-muted);margin-bottom:20px;line-height:1.5}.estimate-actions{display:flex;gap:12px;justify-content:flex-end}@media(max-width:768px){.estimate-modal{padding:24px 20px}.estimate-row{flex-direction:column;align-items:flex-start;gap:4px}.estimate-actions{flex-direction:column-reverse}.estimate-actions .btn{width:100%}}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:110}.hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-topbar{display:none;align-items:center;gap:12px;padding:12px 16px;background:#0f172a;position:sticky;top:0;z-index:100}.mobile-topbar .hamburger{display:flex}.mobile-topbar .hamburger span{background:#e2e8f0}.mobile-topbar-brand{color:#fff;font-weight:700;font-size:1rem;text-decoration:none!important}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0006;z-index:199}@media(max-width:1024px){.pricing-grid{grid-template-columns:repeat(2,1fr)}.hero-inner{grid-template-columns:1fr;gap:32px}.hero-text{text-align:center}.hero-sub{margin:0 auto 36px}.scan-form{margin:0 auto}.hero-note,.scan-disclaimer{text-align:center}}@media(max-width:768px){.hero{padding:72px 0 48px}.hero h1{font-size:2rem}.scan-form{flex-direction:column;border-radius:10px}.scan-form .btn-cta{border-radius:0 0 10px 10px}.pricing-grid,.pricing-grid-2col{grid-template-columns:1fr}.severity-grid{grid-template-columns:repeat(2,1fr)}.pricing-faq-grid{grid-template-columns:1fr}.result-header{flex-direction:column;text-align:center}.code-compare{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:16px;text-align:center}.preview-body{padding:16px}.preview-score-area{gap:12px}.stat-bar-inner{grid-template-columns:1fr;gap:20px}.feature-section{padding:60px 0}.feature-grid{grid-template-columns:1fr;gap:32px}.authority-section{padding:40px 0}.authority-quote{padding:20px 24px}.faq-question{font-size:.95rem}.final-cta{padding:48px 0}.final-cta h2{font-size:1.5rem}.exit-popup{margin:24px;padding:28px 24px}.hamburger{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;padding:16px 24px;gap:12px;border-bottom:1px solid var(--border);box-shadow:var(--shadow-md)}.nav-links.open{display:flex}.top-nav .nav-inner{position:relative}.mobile-topbar{display:flex}.sidebar-overlay{display:block}.sidebar{position:fixed;left:-240px;top:0;z-index:200;transition:left .25s ease}.sidebar.open{left:0}.app-main{padding:20px 16px}.sites-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:12px}.score-overview{flex-direction:column;text-align:center}.scan-row{flex-direction:column;align-items:flex-start}.scan-row-stats{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
