:root{
  --bg:#f5f8ff;
  --ink:#0b1636;
  --muted:#61708f;
  --blue:#145dff;
  --cyan:#10c9e8;
  --green:#12a65a;
  --red:#e5484d;
  --orange:#ff8a00;
  --card:#ffffff;
  --border:#dfe7f5;
  --shadow:0 18px 50px rgba(16,44,99,.12);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#eef5ff 0%,#fff 52%,#f7fbff 100%);color:var(--ink)}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);font-size:18px}.brand:hover{text-decoration:none}.brand-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;box-shadow:0 8px 20px rgba(20,93,255,.25)}
.nav{display:flex;align-items:center;gap:14px}.nav a{font-weight:650;color:#213154}.nav-cta{padding:10px 15px;border-radius:999px;background:var(--blue);color:#fff!important;box-shadow:0 10px 25px rgba(20,93,255,.25)}
.hero{display:grid;grid-template-columns:1.08fr .92fr;gap:38px;align-items:center;max-width:1180px;margin:0 auto;padding:74px 5vw 42px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid #cfe0ff;border-radius:999px;background:#fff;color:var(--blue);font-weight:800;font-size:13px;letter-spacing:.05em;text-transform:uppercase}.hero h1{font-size:clamp(38px,5vw,68px);line-height:1.02;margin:20px 0 18px;letter-spacing:-.055em}.hero h1 span{color:var(--blue)}.lead{font-size:20px;line-height:1.65;color:var(--muted);max-width:650px}.hero-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.point{background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(30,60,120,.06)}.point strong{display:block;margin-bottom:4px}.point span{color:var(--muted);font-size:14px}.scan-card{background:var(--card);border:1px solid var(--border);border-radius:30px;padding:28px;box-shadow:var(--shadow)}.scan-card h2{margin:0 0 8px;font-size:28px}.scan-card p{color:var(--muted);margin:0 0 20px;line-height:1.55}
.form-grid{display:grid;gap:14px}.field label{display:block;font-weight:750;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);border-radius:14px;padding:14px 14px;font-size:16px;background:#fff;color:var(--ink);outline:none}.field input:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(20,93,255,.10)}.hint{font-size:13px;color:var(--muted);margin-top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:15px;background:linear-gradient(135deg,var(--blue),#0046d5);color:#fff;padding:14px 18px;font-weight:850;font-size:16px;cursor:pointer;box-shadow:0 14px 30px rgba(20,93,255,.25)}.btn:hover{text-decoration:none;filter:brightness(.98)}.btn.secondary{background:#eef4ff;color:var(--blue);box-shadow:none;border:1px solid #d8e6ff}.btn.danger{background:var(--red)}.btn.small{padding:8px 11px;font-size:13px;border-radius:10px}.status{margin-top:12px;font-weight:700;color:var(--muted)}
.section{max-width:1180px;margin:0 auto;padding:28px 5vw}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:0 14px 40px rgba(16,44,99,.08)}.card h3{margin:0 0 8px;font-size:22px}.card p{color:var(--muted);line-height:1.6}.metric{display:flex;align-items:center;justify-content:space-between;padding:18px;border-radius:18px;background:#f4f8ff;border:1px solid var(--border)}.metric strong{font-size:32px}.metric span{color:var(--muted);font-weight:700}.result-hero{max-width:980px;margin:0 auto;padding:52px 5vw}.score-box{text-align:center;border-radius:34px;background:linear-gradient(135deg,#061a4f,#0d65ff);color:#fff;padding:40px;box-shadow:var(--shadow)}.score{font-size:82px;font-weight:950;line-height:1}.label{display:inline-block;margin-top:10px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.16);font-weight:800}.findings{display:grid;gap:12px;margin-top:22px}.finding{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:start;border:1px solid var(--border);border-radius:18px;padding:16px;background:#fff}.severity{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;font-weight:900}.pass .severity{background:#eafaf2;color:var(--green)}.warn .severity{background:#fff4e5;color:var(--orange)}.fail .severity{background:#ffedee;color:var(--red)}.finding h4{margin:0 0 4px}.finding p{margin:0;color:var(--muted)}.points{font-weight:900;color:var(--muted)}
.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:18px;background:#fff}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:14px}th{background:#f6f9ff;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#52617d}tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850}.badge.free{background:#eef4ff;color:var(--blue)}.badge.strong{background:#eafaf2;color:var(--green)}.badge.good{background:#eef4ff;color:var(--blue)}.badge.moderate{background:#fff4e5;color:var(--orange)}.badge.weak{background:#ffedee;color:var(--red)}.api-key{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f3f6fb;padding:8px;border-radius:10px;display:inline-block;color:#253452}.flash{max-width:900px;margin:18px auto 0;padding:14px 18px;border-radius:14px;font-weight:750}.flash-error{background:#ffedee;color:#b52227}.flash-success{background:#eafaf2;color:#0b7a43}.flash-info{background:#eef4ff;color:#145dff}.auth-wrap{max-width:520px;margin:50px auto;padding:0 20px}.admin-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:50px;padding:28px 5vw;background:#071a45;color:#cbd8f4}.footer a{color:#fff}.footer-links{display:flex;gap:14px}.copy-box{position:relative}.copy-box input{width:100%;border:1px solid var(--border);border-radius:14px;padding:14px 82px 14px 14px;font-size:14px;background:#fff;color:var(--ink);outline:none}.copy-btn{position:absolute;right:8px;top:8px;padding:8px 10px;border:0;border-radius:10px;background:#eef4ff;color:var(--blue);font-weight:850;cursor:pointer}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:38px}.hero-points,.grid-3{grid-template-columns:1fr}.topbar{position:static;align-items:flex-start;gap:16px}.nav{flex-wrap:wrap}.footer{display:block}.footer-links{margin-top:14px}.finding{grid-template-columns:36px 1fr}.points{grid-column:2}}
.key-reveal{border-color:#bcd3ff;background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%)}
.key-reveal h2{margin-top:0}.key-reveal .copy-box input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:700}
