#pg-scan{--pri:#6D3CCE;--pri-dark:#410AAC;--pri-light:#E3D6FF;--pri-lightest:#F7F4FF;
  --ink:#010347;--fg:#212529;--sub:#6C757D;--ok:#30AE8C;--warn:#E29A00;--bad:#EB0028;
  --bad-bg:#FFEBED;--ok-bg:#D3F3EB;--card:#fff;--line:#E9ECEF;
  --font:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --disp:"Open Sans","Helvetica Neue",Arial,sans-serif;
  font-family:var(--font);max-width:1100px;margin:0 auto;padding:64px 24px;}
#pg-scan *{box-sizing:border-box;}
#pg-scan .pg-s-head{text-align:center;margin-bottom:28px;}
#pg-scan .pg-s-eyebrow{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pri);}
#pg-scan .pg-s-h2{font-family:var(--disp);font-weight:800;font-size:32px;line-height:1.15;letter-spacing:-.02em;
  color:var(--ink);margin:10px 0 8px;}
@media(min-width:768px){#pg-scan .pg-s-h2{font-size:40px;}}
#pg-scan .pg-s-sub{font-size:15px;color:var(--sub);max-width:620px;margin:0 auto;}

/* entry */
#pg-scan .pg-s-form{display:flex;gap:10px;max-width:620px;margin:26px auto 8px;flex-wrap:wrap;justify-content:center;}
#pg-scan .pg-s-input{flex:1 1 320px;min-width:240px;font-size:15px;padding:14px 16px;border:1.5px solid var(--pri-light);
  border-radius:12px;outline:none;color:var(--fg);background:#fff;transition:border-color .15s,box-shadow .15s;}
#pg-scan .pg-s-input:focus{border-color:var(--pri);box-shadow:0 0 0 3px rgba(109,60,206,.18);}
#pg-scan .pg-s-btn{font-size:15px;font-weight:800;color:#fff;background:var(--ink);border:none;border-radius:12px;
  padding:14px 24px;cursor:pointer;box-shadow:0 3px 0 #00021f;transition:transform .12s,box-shadow .12s,opacity .15s;}
#pg-scan .pg-s-btn:hover{transform:translateY(-1px);box-shadow:0 4px 0 #00021f;}
#pg-scan .pg-s-btn:disabled{opacity:.6;cursor:default;transform:none;box-shadow:0 3px 0 #00021f;}
#pg-scan .pg-s-hint{color:var(--bad);font-size:13px;text-align:center;margin-top:6px;min-height:18px;}
#pg-scan .pg-s-disclaimer{font-size:12px;color:var(--sub);text-align:center;margin-top:14px;}

/* state visibility */
#pg-scan .pg-s-stage{display:none;}
#pg-scan[data-state="entry"] .pg-s-entry{display:block;}
#pg-scan[data-state="scanning"] .pg-s-scanning{display:block;}
#pg-scan[data-state="result"] .pg-s-result{display:block;}
#pg-scan[data-state="error"] .pg-s-error{display:block;}

/* scanning */
#pg-scan .pg-s-prog{height:8px;border-radius:99px;background:var(--pri-lightest);overflow:hidden;max-width:620px;margin:24px auto 14px;}
#pg-scan .pg-s-prog-fill{height:100%;width:0;background:linear-gradient(90deg,var(--pri),var(--pri-dark));transition:width .5s ease;}
#pg-scan .pg-s-phase{text-align:center;color:var(--sub);font-size:14px;min-height:20px;}
#pg-scan .pg-s-feed{max-width:620px;margin:18px auto 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
#pg-scan .pg-s-feed-chip{font-size:12.5px;font-weight:600;color:#475569;background:#fff;border:1px solid var(--line);
  border-radius:99px;padding:5px 12px;animation:pg-s-pop .3s ease;}
@keyframes pg-s-pop{from{opacity:0;transform:scale(.85);}to{opacity:1;transform:scale(1);}}

/* result, verdict card */
#pg-scan .pg-s-verdict{border-radius:18px;padding:28px;border:1px solid var(--line);background:#fff;
  box-shadow:0 4px 24px rgba(1,3,71,.08);}
#pg-scan .pg-s-verdict.is-fail{border-color:#FFB4C6;background:linear-gradient(180deg,#FFF6F7,#fff 60%);}
#pg-scan .pg-s-verdict.is-review{border-color:var(--pri-light);background:linear-gradient(180deg,var(--pri-lightest),#fff 60%);}
#pg-scan .pg-s-grade{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:13px;letter-spacing:.06em;
  text-transform:uppercase;padding:6px 12px;border-radius:99px;}
#pg-scan .is-fail .pg-s-grade{color:var(--bad);background:var(--bad-bg);}
#pg-scan .is-review .pg-s-grade{color:var(--pri-dark);background:var(--pri-light);}
#pg-scan .pg-s-verdict h3{font-family:var(--disp);font-weight:800;font-size:24px;line-height:1.2;color:var(--ink);margin:12px 0 4px;}
#pg-scan .pg-s-target{font-size:13px;color:var(--sub);word-break:break-all;margin-bottom:18px;}
#pg-scan .pg-s-reasons{display:flex;flex-direction:column;gap:10px;}
#pg-scan .pg-s-reason{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--fg);}
#pg-scan .pg-s-reason .req{flex:none;font-family:"Roboto Mono",monospace;font-size:11px;font-weight:700;color:#fff;
  background:var(--sub);border-radius:6px;padding:3px 7px;margin-top:1px;}
#pg-scan .pg-s-reason.fail .req{background:var(--bad);}
#pg-scan .pg-s-reason.warn .req{background:var(--warn);}
#pg-scan .pg-s-reason.pass .req{background:var(--ok);}

/* result, script summary */
#pg-scan .pg-s-summary{margin-top:22px;}
#pg-scan .pg-s-stat{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:12px;}
#pg-scan .pg-s-stat b{color:var(--bad);}
#pg-scan .pg-s-list{display:flex;flex-direction:column;gap:8px;}
#pg-scan .pg-s-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;}
#pg-scan .pg-s-item .ico{width:24px;height:24px;border-radius:6px;flex:none;display:grid;place-items:center;
  background:var(--pri-lightest);color:var(--pri);font-weight:800;font-size:12px;overflow:hidden;}
#pg-scan .pg-s-item .ico img{width:100%;height:100%;object-fit:contain;}
#pg-scan .pg-s-item .nm{flex:1;font-size:14px;font-weight:600;color:var(--fg);}
#pg-scan .pg-s-item .nm small{display:block;font-weight:400;color:var(--sub);font-size:12px;}
#pg-scan .pg-s-exposure{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--sub);margin-top:5px;}
#pg-scan .pg-s-exposure--reader{color:var(--pri-dark);background:var(--pri-lightest);border:2px solid var(--pri);border-radius:99px;padding:3px 10px;display:inline-flex;}
#pg-scan .pg-s-read-chip{font-size:10.5px;font-weight:700;border-radius:6px;padding:2px 7px;background:#fff5f5;color:#b91c1c;border:1px solid #fecaca;}
#pg-scan .pg-s-read-chip.pci{background:#fff1f2;color:#be123c;border-color:#fda4af;}
#pg-scan .pg-s-read-chip.phi{background:#fef2f2;color:#991b1b;border-color:#fca5a5;}
#pg-scan .pg-s-badge{flex:none;font-size:11px;font-weight:700;border-radius:99px;padding:4px 9px;}
#pg-scan .pg-s-badge.unauth{color:var(--bad);background:var(--bad-bg);}
#pg-scan .pg-s-badge.recognized{color:var(--ok);background:var(--ok-bg);}
#pg-scan .pg-s-badge.reader{color:#b45309;background:#fef3c7;border:1px solid #fcd34d;}
#pg-scan .pg-s-more{font-size:13px;color:var(--sub);text-align:center;margin-top:8px;}

/* result, malicious host panel */
#pg-scan .pg-s-malicious-panel{margin-top:20px;padding:18px 20px;border-radius:14px;background:#fff5f5;border:1.5px solid #fca5a5;}
#pg-scan .pg-s-malicious-badge{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#991b1b;background:#fee2e2;border-radius:99px;padding:4px 10px;margin-bottom:10px;}
#pg-scan .pg-s-malicious-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;}
#pg-scan .pg-s-malicious-chip{font-size:12px;font-weight:700;color:#991b1b;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;padding:3px 10px;font-family:"Roboto Mono",monospace;}
#pg-scan .pg-s-malicious-note{font-size:13px;color:#7f1d1d;line-height:1.55;margin:0;}

/* result, iframe payment panel */
#pg-scan .pg-s-iframe-panel{margin-top:20px;padding:18px 20px;border-radius:14px;background:#f0fdf4;border:1.5px solid #86efac;}
#pg-scan .pg-s-iframe-panel-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
#pg-scan .pg-s-iframe-badge{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#166534;background:#bbf7d0;border-radius:99px;padding:4px 10px;flex:none;}
#pg-scan .pg-s-iframe-conf{font-size:12px;font-weight:600;color:#15803d;}
#pg-scan .pg-s-iframe-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
#pg-scan .pg-s-iframe-chip{font-size:12px;font-weight:700;color:#166534;background:#dcfce7;border:1px solid #86efac;border-radius:99px;padding:3px 11px;}
#pg-scan .pg-s-iframe-note{font-size:13px;color:#14532d;line-height:1.55;margin:0;}
#pg-scan .pg-s-iframe-note strong{color:#166534;}

/* result, data + cta */
#pg-scan .pg-s-data{margin-top:20px;padding:16px;border-radius:12px;background:var(--pri-lightest);font-size:14px;color:var(--ink);}
#pg-scan .pg-s-data .pill{display:inline-block;font-size:12px;font-weight:700;border-radius:99px;padding:3px 10px;margin:3px 4px 0 0;
  background:#fff;border:1px solid var(--pri-light);color:var(--pri-dark);}
#pg-scan .pg-s-data .pill.phi{border-color:#FFB4C6;color:var(--bad);}
#pg-scan .pg-s-cta{margin-top:24px;text-align:center;}
#pg-scan .pg-s-cta a{display:inline-block;font-weight:800;font-size:15px;color:#fff;background:var(--ink);border-radius:99px;
  padding:14px 28px;text-decoration:none;box-shadow:0 3px 0 #00021f;}
#pg-scan .pg-s-cta .ghost{background:#fff;color:var(--ink);border:1.5px solid var(--pri-light);box-shadow:none;margin-left:8px;}
#pg-scan .pg-s-rescan{display:block;background:none;border:none;color:var(--pri);font-size:13px;font-weight:600;cursor:pointer;margin:14px auto 0;}

/* error */
#pg-scan .pg-s-error-box{max-width:560px;margin:24px auto;padding:18px;border:1px solid #FFB4C6;background:var(--bad-bg);
  border-radius:12px;color:#8a1020;font-size:14px;text-align:center;}
#pg-scan .pg-s-error-box button{margin-top:10px;font-weight:700;color:var(--pri);background:none;border:none;cursor:pointer;}