
  :root{
       --white:#F6F8FA;
        
      
    --n700:#1E293B;  
         
    --radius:16px; --radius-sm:12px;
    --shadow:0 1px 2px rgba(11,19,43,.04), 0 10px 30px rgba(11,19,43,.07);
    --font:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  }
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--n700:#28344D;--shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.45)}}
  :root[data-theme="dark"]{--n700:#28344D;--shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.45)}
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.55;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:1120px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
  h1,h2,h3{letter-spacing:-.02em;margin:0}
  h2{font-size:clamp(1.7rem,3.5vw,2.25rem);font-weight:700}
  .eyebrow{font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
  .btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;border-radius:var(--radius-sm);padding:12px 20px;font-size:.98rem;border:1px solid transparent;cursor:pointer}
  .btn-primary{background:var(--lime);color:var(--navy)}
  .btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--border)}
  .btn-dark{background:var(--btn-bg);color:#fff}

  /* nav */
  nav.top{background:var(--nav-bg);color:var(--nav-ink);box-shadow:inset 0 -1px 0 var(--nav-line)}
  nav.top .row{display:flex;align-items:center;gap:12px;height:60px}
  nav.top .brand{display:flex;align-items:center;gap:9px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;flex:none}
  nav.top .brand .com{color:var(--slate);font-weight:600}
  nav.top .cta{background:var(--lime);color:var(--navy);font-weight:600;border-radius:10px;padding:0 16px;height:38px;display:inline-flex;align-items:center;font-size:.9rem;white-space:nowrap;flex:none}nav.top .cta:hover{filter:brightness(1.05)}
  nav.top .nav-links{margin-left:auto;display:flex;align-items:center;gap:16px;min-width:0}
  nav.top .nl{color:var(--nav-dim);font-weight:500;font-size:.9rem;white-space:nowrap}nav.top .nl:hover{color:var(--nav-ink)}
  nav.top .navdd{position:relative;display:flex;align-items:center;height:60px}
  nav.top .navdd-t{background:none;border:0;cursor:pointer;font:500 .9rem Inter;display:inline-flex;align-items:center;gap:4px;padding:0}
  nav.top .navdd-t .cev{font-size:.7rem}
  nav.top .navdd-m{display:none;position:absolute;top:60px;left:0;background:var(--nav-panel);border:1px solid var(--nav-line);border-radius:12px;box-shadow:0 18px 44px rgba(0,0,0,.45);min-width:190px;padding:8px;flex-direction:column;z-index:60}
  nav.top .navdd:hover .navdd-m,nav.top .navdd:focus-within .navdd-m{display:flex}
  nav.top .navdd-m a{color:var(--nav-dim);padding:9px 12px;border-radius:8px;font-size:.9rem;white-space:nowrap;font-weight:500}nav.top .navdd-m a:hover{background:var(--nav-hover);color:var(--nav-ink)}
  nav.top .acct{position:relative}nav.top .acct>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;color:var(--nav-dim);font-size:.9rem}nav.top .acct>summary::-webkit-details-marker{display:none}nav.top .acct .av{width:24px;height:24px;flex:none;border-radius:50%;background:var(--lime);color:var(--navy);display:grid;place-items:center;font-weight:700;font-size:.72rem}nav.top .acct[open]>summary{color:var(--nav-ink)}nav.top .acct .anm{max-width:120px;overflow:hidden;text-overflow:ellipsis}
  nav.top .acctmenu{position:absolute;right:0;top:36px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 30px rgba(11,19,43,.18);min-width:164px;padding:6px;z-index:60;display:flex;flex-direction:column}nav.top .acctmenu a{color:var(--ink);padding:9px 12px;border-radius:8px;font-size:.9rem;font-weight:500}nav.top .acctmenu a:hover{background:var(--n50)}
  nav.top .acctid{display:flex;align-items:center;gap:9px;padding:9px 12px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}nav.top .acctid .av{width:26px;height:26px;font-size:.8rem}nav.top .acctid .acctem{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}nav.top .acctsep{height:1px;background:var(--border);margin:4px 0}nav.top .acctmenu a.signout{color:var(--muted)}nav.top .acctmenu a.signout:hover{color:var(--danger);background:rgba(220,38,38,.08)}
  nav.top .mobmenu{display:none;margin-left:auto;position:relative}nav.top .mobmenu>summary{list-style:none;cursor:pointer;width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}nav.top .mobmenu>summary::-webkit-details-marker{display:none}nav.top .mobmenu>summary span{width:21px;height:2px;background:var(--nav-ink);border-radius:2px;transition:.2s}nav.top .mobmenu[open]>summary span:nth-child(1){transform:translateY(7px) rotate(45deg)}nav.top .mobmenu[open]>summary span:nth-child(2){opacity:0}nav.top .mobmenu[open]>summary span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  nav.top .mobpanel{position:absolute;right:0;top:48px;background:var(--nav-panel);border:1px solid var(--nav-line);border-radius:12px;box-shadow:0 18px 44px rgba(0,0,0,.45);min-width:220px;padding:8px;display:flex;flex-direction:column;z-index:60}nav.top .mobpanel a{color:var(--nav-dim);padding:11px 12px;border-radius:8px;font-size:.95rem;font-weight:500}nav.top .mobpanel a:hover{background:var(--nav-hover);color:var(--nav-ink)}nav.top .mobpanel .mobsep{height:1px;background:var(--nav-line);margin:6px 4px}nav.top .mobpanel .mcta{background:var(--lime);color:var(--navy);font-weight:700;text-align:center;margin-top:6px}
  @media(max-width:1000px){nav.top .nav-links{display:none}nav.top .mobmenu{display:block}}
  nav.top .thm{background:transparent;border:1px solid var(--nav-line);color:var(--nav-dim);width:36px;height:36px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;padding:0}nav.top .thm:hover{color:var(--nav-ink);border-color:var(--nav-dim)}nav.top .thm svg{display:block}nav.top .thm .sun{display:none}
  :root[data-theme="dark"] nav.top .thm .sun{display:block}:root[data-theme="dark"] nav.top .thm .moon{display:none}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) nav.top .thm .sun{display:block}:root:not([data-theme="light"]) nav.top .thm .moon{display:none}}
  nav.top .mobpanel .mthm{background:transparent;border:none;text-align:left;color:var(--nav-dim);padding:11px 12px;border-radius:8px;font:500 .95rem var(--font);cursor:pointer;width:100%}nav.top .mobpanel .mthm:hover{background:var(--nav-hover);color:var(--nav-ink)}

  /* hero */
  .hero{padding:clamp(48px,7vw,90px) 0 clamp(30px,5vw,56px)}
  .hero-grid{display:grid;grid-template-columns:1fr;gap:clamp(28px,4vw,48px);align-items:center}
  @media(min-width:980px){.hero-grid{grid-template-columns:1.05fr .95fr}}
  .tag-live{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--slate);border:1px solid var(--border);border-radius:20px;padding:6px 12px}
  .tag-live .dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px rgba(124,252,0,.2)}
  .hero h1{font-size:clamp(2.6rem,6.5vw,4.1rem);font-weight:700;line-height:1.02;margin:.35em 0 .25em}
  .hero h1 .p{color:var(--lime)}
  .hero p.lede{font-size:clamp(1.05rem,2.2vw,1.24rem);color:var(--body);max-width:52ch}
  .hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
  .hero .assur{display:flex;gap:18px 26px;flex-wrap:wrap;margin-top:22px;font-size:.85rem;color:var(--slate)}
  .hero .assur b{color:var(--ink);font-weight:600}

  /* scorecard */
  .scorecard{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
  .sc-head{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}
  .sc-head .ico{width:40px;height:40px;border-radius:10px;background:var(--navy);display:grid;place-items:center;color:var(--lime);font-weight:700}
  .sc-head .who{font-weight:600;font-size:.95rem}
  .sc-head .who span{display:block;color:var(--slate);font-weight:400;font-size:.8rem;font-family:ui-monospace,Menlo,monospace}
  .sc-head .done{margin-left:auto;font-size:.7rem;font-weight:600;color:var(--success);background:rgba(22,163,74,.1);border-radius:20px;padding:3px 9px}
  .sc-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border)}
  @media(min-width:520px){.sc-metrics{grid-template-columns:repeat(4,1fr)}}
  .sc-metrics .m{background:var(--surface);padding:14px 16px}
  .sc-metrics .m .l{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);font-weight:600}
  .sc-metrics .m .v{font-size:1.5rem;font-weight:700;margin-top:3px}
  .grade{color:var(--danger)}
  .sc-findings{padding:14px 18px 4px}
  .sc-findings .f{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--n100);font-size:.86rem}
  .sc-findings .f:last-child{border-bottom:0}
  .sev{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 7px;border-radius:5px}
  .sev.c{background:rgba(239,68,68,.12);color:var(--danger)} .sev.h{background:rgba(245,158,11,.14);color:var(--sev-h)}
  .sc-findings .f .name{font-weight:600} .sc-findings .f .live{margin-left:auto;color:var(--success);font-weight:600;font-size:.76rem;white-space:nowrap}
  .proof{margin:12px 18px 18px;background:var(--navy);border-radius:10px;padding:14px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.72rem;color:#CBD5E1;overflow-x:auto}
  .proof .k{color:#7CFC00} .proof .r{color:#F87171} .proof .blk{background:var(--body);color:var(--body);border-radius:2px}
  .proof .cap{display:flex;justify-content:space-between;color:#93A0B4;margin-bottom:8px;font-family:var(--font);font-size:.68rem}
  .proof .cap .badge{color:#CBD5E1;background:#1E293B;border-radius:5px;padding:2px 8px}

  section.band{padding:clamp(46px,6vw,74px) 0}
  .sec-h{text-align:center;max-width:60ch;margin:0 auto 34px}
  .sec-h p{color:var(--slate);margin:.5em 0 0}

  .grid-cards{display:grid;grid-template-columns:1fr;gap:16px}
  @media(min-width:640px){.grid-cards{grid-template-columns:1fr 1fr}}
  @media(min-width:960px){.grid-cards.c3{grid-template-columns:repeat(3,1fr)} .grid-cards.c4{grid-template-columns:repeat(4,1fr)}}
  .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
  .card .ic{width:38px;height:38px;border-radius:10px;background:var(--n100);display:grid;place-items:center;margin-bottom:12px;font-size:1.1rem}
  .card h3{font-size:1.02rem;font-weight:600;margin-bottom:5px}
  .card p{color:var(--slate);font-size:.9rem;margin:0}

  .band.dark{background:var(--navy);color:#fff}
  .band.dark .sec-h p{color:#93A0B4}

  /* pricing */
  .tiers{display:grid;grid-template-columns:1fr;gap:14px}
  @media(min-width:720px){.tiers{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(min-width:1000px){.tiers{grid-template-columns:repeat(4,minmax(0,1fr))}}
  .tier{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 20px;display:flex;flex-direction:column}
  .tier.feat{background:var(--navy);color:#fff;border-color:var(--navy);position:relative}
  .tier.feat .price{color:#fff}
  .tier .pop{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--lime);color:var(--navy);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:20px}
  .tier .name{font-weight:700}
  .tier .price{font-size:1.8rem;font-weight:700;margin:6px 0 2px}
  .tier .price span{font-size:.8rem;font-weight:500;color:var(--slate)}
  .tier.feat .price span{color:#93A0B4}
  .tier ul{list-style:none;padding:0;margin:14px 0 18px;font-size:.85rem;color:var(--slate);display:flex;flex-direction:column;gap:7px}
  .tier.feat ul{color:#C3CBD8}
  .tier ul li::before{content:"›";color:var(--lime);margin-right:8px;font-weight:700}
  .tier .btn{margin-top:auto;justify-content:center}

  /* trust + subscribe */
  .trust{display:flex;flex-wrap:wrap;gap:16px 34px;justify-content:center;padding:26px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);font-size:.85rem}
  .trust b{color:var(--ink)}
  .subscribe{max-width:520px;margin:34px auto 0;text-align:center}
  .subscribe form{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
  .subscribe input{flex:1;min-width:220px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}
  .subscribe .msg{font-size:.82rem;margin-top:8px;min-height:1.2em}
  /* scan card */
  .scan-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);max-width:600px;margin:24px auto 0;overflow:hidden}
  .tabs{display:flex;border-bottom:1px solid var(--border)}
  .tab{flex:1;background:none;border:0;padding:15px;font:600 .92rem/1 var(--font);color:var(--slate);cursor:pointer;border-bottom:2px solid transparent}
  .tab.active{color:var(--ink);border-bottom-color:var(--lime)}
  .panel{padding:22px} .panel.hidden{display:none}
  .drop{display:block;position:relative;border:2px dashed var(--border);border-radius:12px;padding:30px 18px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--n50)}
  .drop.drag{border-color:var(--lime);background:rgba(124,252,0,.07)}
  .drop-ic{font-size:1.7rem;line-height:1}
  .drop .link{color:var(--ink);text-decoration:underline;font-weight:600}
  .drop input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  /* The tint and border stay brand lime; the outline is the indicator and lime is
     1.33:1 on this background. */
  .drop:focus-within{border-color:var(--lime);background:rgba(124,252,0,.07);outline:3px solid var(--link);outline-offset:3px}
  /* Not opacity: .btn-primary is lime, so a faded one is still a green button. A
     disabled control gets its own neutral treatment. */
  .btn[disabled],.btn:disabled{background:var(--n50);color:var(--faint);border-color:var(--border);cursor:not-allowed;box-shadow:none}
  /* Holds its space whether or not it has text: appearing and disappearing shifted the
     form by ~16px every time the message changed. */
  .field-err{color:var(--danger);font-size:.86rem;line-height:1.45;margin:7px 0 0;text-align:left;min-height:1.25rem}
  /* The global :focus-visible outline is lime, which sat over the red border and read
     as a normal focus ring on an invalid field. */
  .ac-app[aria-invalid="true"]:focus-visible{outline-color:var(--danger)}
  .ac-app[aria-invalid="true"]{border-color:var(--danger);box-shadow:0 0 0 3px rgba(220,38,38,.14)}
  .hint{color:var(--slate);font-size:.8rem;margin-top:8px}
  .fname{margin-top:12px;font-weight:600;color:var(--ink);font-size:.9rem}
  .btn.block{display:flex;width:100%;justify-content:center;margin-top:16px}
  .btn:disabled{opacity:.5;cursor:not-allowed}
  #pkg-input{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:12px;font:inherit}
  .scan-msg{padding:2px 22px 20px;min-height:1.2em;font-size:.88rem;text-align:center}

  footer{background:var(--foot-bg);color:var(--foot-dim);padding:40px 0 30px;font-size:.88rem;box-shadow:inset 0 1px 0 var(--foot-line)}
  footer .cols{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between}
  footer a{color:var(--foot-link)} footer a:hover{color:var(--foot-ink)}
  footer .brand{color:var(--foot-ink);font-weight:700;display:flex;align-items:center;gap:9px;margin-bottom:8px}
  footer nav{display:flex;gap:22px;flex-wrap:wrap}
  footer .legal{margin-top:26px;border-top:1px solid var(--foot-line);padding-top:16px;font-size:.8rem}

  .wave{flex:none}
  .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  :focus-visible{outline:3px solid var(--link);outline-offset:3px;border-radius:4px}

  /* scan progress overlay */
  #sfx{position:fixed;inset:0;background:rgba(11,19,43,.96);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}
  #sfx.on{display:flex;animation:sfxin .3s ease}@keyframes sfxin{from{opacity:0}to{opacity:1}}
  .sfx-card{background:#0F1A33;border:1px solid #1E293B;border-radius:18px;padding:30px 28px;width:100%;max-width:430px;color:#fff}
  .sfx-wave{display:flex;gap:6px;justify-content:center;height:46px;align-items:center;margin-bottom:16px}
  .sfx-wave span{width:7px;height:14px;background:#7CFC00;border-radius:4px;animation:sfxeq 1s ease-in-out infinite}
  .sfx-wave span:nth-child(2){animation-delay:.15s}.sfx-wave span:nth-child(3){animation-delay:.3s}.sfx-wave span:nth-child(4){animation-delay:.45s}.sfx-wave span:nth-child(5){animation-delay:.6s}
  @keyframes sfxeq{0%,100%{height:14px}50%{height:44px}}
  .sfx-title{text-align:center;font-weight:700;font-size:1.1rem;margin-bottom:18px}
  .sfx-steps{display:flex;flex-direction:column;gap:11px}
  .sfx-step{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:.92rem}
  .sfx-step .sfx-ic{width:24px;height:24px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:.72rem;background:#1E293B;color:var(--muted)}
  .sfx-step.active{color:#fff}.sfx-step.active .sfx-ic{background:rgba(124,252,0,.15)}
  .sfx-step.done{color:#C3CBD8}.sfx-step.done .sfx-ic{background:#7CFC00;color:var(--ink)}
  .sfx-spin{width:12px;height:12px;border:2px solid rgba(124,252,0,.3);border-top-color:#7CFC00;border-radius:50%;display:inline-block;animation:sfxspin .7s linear infinite}
  @keyframes sfxspin{to{transform:rotate(360deg)}}
  .sfx-err{color:#FCA5A5;text-align:center;margin-top:16px;font-size:.9rem;min-height:1em}.sfx-err a{color:#7CFC00;font-weight:600}
.home-plan-note{color:var(--muted);font-size:.9rem;line-height:1.6;margin-top:20px}.home-plan-note a{color:var(--link);font-weight:600}.tier{min-width:0;overflow-wrap:anywhere}.tier .name{margin:0;font-size:1rem}.tier ul li::before{color:var(--link)}.tier.feat ul li::before{color:var(--lime)}.subscribe-label{flex-basis:100%;text-align:left;font-weight:600}.subscribe input{min-width:0;background:var(--surface);color:var(--ink)}.subscribe button:disabled{opacity:.65;cursor:wait}.home-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--border);border-radius:12px;margin-top:24px;padding:22px;background:var(--n50)}.home-welcome h2{font-size:1.15rem;margin:0 0 6px}.home-welcome p{color:var(--muted);margin:0}@media(max-width:620px){.home-welcome{flex-direction:column;align-items:start;width:calc(100% - 40px)}.subscribe input{flex-basis:100%}.subscribe button{width:100%}}
