:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.page{background-color:#0a0a0f;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.fog-overlay{pointer-events:none;background:radial-gradient(at 50% 100%,#1a1a2e 0%,#0a0a0f 70%);position:absolute;inset:0}.landing-content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:24px;padding:40px 20px;display:flex;position:relative}.heading{color:#fff;margin:0;font-size:48px;font-weight:700;line-height:1.15}.subheading{color:#6b7280;max-width:500px;margin:0;font-size:18px;line-height:1.6}.scan-btn{color:#fff;cursor:pointer;letter-spacing:.04em;background-color:#ef4444;border:none;border-radius:8px;margin-top:8px;padding:16px 48px;font-size:18px;font-weight:600}.scan-btn:focus-visible{outline-offset:3px;outline:3px solid #ef4444}.shield-wall{flex-wrap:wrap;justify-content:center;gap:16px;max-width:860px;margin-top:8px;display:flex}.shield-card{flex-direction:column;align-items:center;gap:6px;width:120px;display:flex}.shield-shortname{color:#fff;text-align:center;letter-spacing:.03em;font-family:monospace;font-size:11px}.score-hud{z-index:100;flex-direction:column;align-items:flex-end;display:flex;position:fixed;top:24px;right:28px}.score-label{color:#6b7280;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.score-number{font-variant-numeric:tabular-nums;font-size:64px;font-weight:800;line-height:1}.hover-card{z-index:20;pointer-events:none;text-align:left;background:#1a1a2e;border:1px solid #fff2;border-radius:8px;flex-direction:column;gap:6px;width:200px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.hover-card-header{color:#fff;font-size:13px;font-weight:700;line-height:1.3}.hover-card-value{color:#ef4444;font-family:monospace;font-size:11px}.hover-card-risk{color:#6b7280;font-size:12px;line-height:1.5}.overlay{z-index:50;background:#0a0a0f;align-items:stretch;display:flex;position:fixed;inset:0;overflow:hidden}.overlay-close{color:#fff;cursor:pointer;z-index:51;background:0 0;border:1px solid #fff3;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:border-color .2s;display:flex;position:absolute;top:20px;right:24px}.overlay-close:hover{border-color:#fff8}.overlay-content{width:100%;display:flex}.overlay-left{border-right:1px solid #fff1;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.overlay-right{flex-direction:column;flex:1;gap:12px;padding:48px 40px 40px;display:flex;overflow-y:auto}.overlay-attack-name{color:#ef4444;letter-spacing:3px;text-transform:uppercase;margin:0;font-size:14px;font-weight:700}.overlay-header-name{color:#fff;margin:0;font-size:36px;font-weight:700;line-height:1.15}.overlay-description{color:#9ca3af;margin:0;font-size:16px;line-height:1.7}.overlay-example{color:#6b7280;margin:0;font-size:14px;font-style:italic;line-height:1.6}.harden-btn{color:#fff;letter-spacing:.06em;cursor:pointer;background:#ef4444;border:none;border-radius:8px;width:100%;margin-top:4px;padding:16px;font-size:16px;font-weight:700;transition:background .2s}.harden-btn:hover{background:#dc2626}.demo-box{background:#07070d;border:1px solid #fff2;border-radius:6px;flex-shrink:0;width:100%;height:180px;position:relative;overflow:hidden}.demo-browser-bar{color:#6b7280;background:#12121c;border-bottom:1px solid #fff1;padding:6px 12px;font-size:11px}.demo-csp{flex-direction:column;height:100%;display:flex}.demo-area{flex:1;position:relative;overflow:hidden}.demo-script-tag{color:#ef4444;white-space:nowrap;background:#ef444422;border:1px solid #ef4444;border-radius:4px;padding:4px 10px;font-family:monospace;font-size:11px;animation:5s ease-in-out infinite csp-script;position:absolute;top:50%;right:-220px;transform:translateY(-50%)}@keyframes csp-script{0%,8%{opacity:0;right:-220px}22%,65%{opacity:1;right:16px}80%,to{opacity:0;right:-220px}}.demo-cookies{position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.demo-cookie{color:#f59e0b;opacity:0;background:#f59e0b22;border-radius:3px;padding:2px 6px;font-family:monospace;font-size:10px;animation:5s ease-in infinite csp-cookie;position:absolute}.demo-cookie-1{animation-delay:1.6s;left:-40px}.demo-cookie-2{animation-delay:2.1s;left:5px}.demo-cookie-3{animation-delay:2.6s;left:50px}@keyframes csp-cookie{0%{opacity:0;transform:translateY(0)}5%{opacity:1}55%{opacity:0;transform:translateY(-80px)}to{opacity:0;transform:translateY(0)}}.demo-hsts{flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;display:flex}.demo-padlock{font-size:36px;animation:5s ease-in-out infinite hsts-lock}@keyframes hsts-lock{0%,20%{filter:none;transform:scale(1)rotate(0)}35%,55%{filter:grayscale()opacity(.4);transform:scale(.7)rotate(20deg)}70%,to{filter:none;transform:scale(1)rotate(0)}}.demo-url-wrap{gap:0;font-family:monospace;font-size:13px;display:flex}.demo-url-https{color:#22c55e;animation:5s ease-in-out infinite hsts-https}@keyframes hsts-https{0%,22%{opacity:1}35%,60%{opacity:0}72%,to{opacity:1}}.demo-url-http{color:#ef4444;opacity:0;animation:5s ease-in-out infinite hsts-http}@keyframes hsts-http{0%,22%{opacity:0}35%,60%{opacity:1}72%,to{opacity:0}}.demo-url-host{color:#9ca3af}.demo-intercepted{letter-spacing:.1em;color:#ef4444;opacity:0;font-family:monospace;font-size:11px;font-weight:700;animation:5s ease-in-out infinite hsts-intercepted}@keyframes hsts-intercepted{0%,30%{opacity:0;transform:scale(.8)}42%,58%{opacity:1;transform:scale(1)}68%,to{opacity:0;transform:scale(.8)}}.demo-xfo{flex-direction:column;justify-content:center;align-items:center;gap:0;height:100%;display:flex;position:relative}.demo-xfo-stack{width:180px;height:44px;position:relative}.demo-real-btn,.demo-hidden-btn{border-radius:6px;justify-content:center;align-items:center;padding:10px 16px;font-size:12px;font-weight:600;display:flex;position:absolute;inset:0}.demo-real-btn{color:#94a3b8;background:#1e293b;border:1px solid #334155;animation:5s ease-in-out infinite xfo-top}@keyframes xfo-top{0%,25%{opacity:1;transform:translateY(0)}45%,70%{opacity:0;transform:translateY(-52px)}88%,to{opacity:1;transform:translateY(0)}}.demo-hidden-btn{color:#ef4444;opacity:0;background:#7f1d1d33;border:1px solid #ef4444;font-size:11px;animation:5s ease-in-out infinite xfo-hidden}@keyframes xfo-hidden{0%,35%{opacity:0}50%,68%{opacity:1}82%,to{opacity:0}}.demo-xfo-cursor{color:#f59e0b;opacity:0;margin-top:8px;font-family:monospace;font-size:11px;animation:5s ease-in-out infinite xfo-cursor}@keyframes xfo-cursor{0%,45%{opacity:0;transform:translate(20px,-10px)}58%,68%{opacity:1;transform:translate(0)}78%,to{opacity:0;transform:translate(0)}}.demo-xcto{perspective:600px;justify-content:center;align-items:center;height:100%;display:flex}.demo-file-card{width:140px;height:80px;transform-style:preserve-3d;animation:5s ease-in-out infinite xcto-flip;position:relative}@keyframes xcto-flip{0%,15%{transform:rotateY(0)}35%,65%{transform:rotateY(180deg)}85%,to{transform:rotateY(0)}}.demo-file-front,.demo-file-back{backface-visibility:hidden;border-radius:8px;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.demo-file-front{color:#94a3b8;background:#1e293b;border:1px solid #334155}.demo-file-back{color:#ef4444;background:#1c0707;border:1px solid #ef4444;font-family:monospace;transform:rotateY(180deg)}.demo-rp{justify-content:center;align-items:center;gap:8px;height:100%;padding:0 16px;display:flex}.demo-rp-source,.demo-rp-dest{white-space:nowrap;border-radius:6px;flex-shrink:0;padding:8px 10px;font-family:monospace;font-size:11px;font-weight:700}.demo-rp-source{color:#a5b4fc;background:#1a1a2e;border:1px solid #4f46e5}.demo-rp-dest{color:#ef4444;background:#1c0707;border:1px solid #ef4444}.demo-rp-mid{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex;overflow:hidden}.demo-rp-url{color:#ef4444;white-space:nowrap;opacity:0;background:#ef444411;border-radius:3px;padding:2px 6px;font-family:monospace;font-size:9px;animation:5s ease-in-out infinite rp-url}@keyframes rp-url{0%,15%{opacity:0;transform:translate(-30px)}30%,65%{opacity:1;transform:translate(0)}80%,to{opacity:0;transform:translate(30px)}}.demo-rp-arrow{color:#f59e0b;font-size:16px;animation:5s ease-in-out infinite rp-arrow}@keyframes rp-arrow{0%,10%{opacity:.2}30%,70%{opacity:1}85%,to{opacity:.2}}.demo-pp{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;display:flex}.demo-mic{font-size:44px;animation:5s ease-in-out infinite pp-mic}@keyframes pp-mic{0%,20%{filter:none}30%,70%{filter:drop-shadow(0 0 10px #ef4444)}80%,to{filter:none}}.demo-rec-dot{opacity:0;background:#ef4444;border-radius:50%;width:10px;height:10px;animation:5s ease-in-out infinite pp-dot}@keyframes pp-dot{0%,25%{opacity:0;transform:scale(0)}35%{opacity:1;transform:scale(1)}42%{transform:scale(1.4)}49%{transform:scale(1)}56%{transform:scale(1.4)}63%{transform:scale(1)}70%{transform:scale(1.4)}75%,to{opacity:0;transform:scale(0)}}.demo-rec-label{color:#ef4444;letter-spacing:.12em;opacity:0;font-family:monospace;font-size:10px;animation:5s ease-in-out infinite pp-label}@keyframes pp-label{0%,28%{opacity:0}38%{opacity:1}46%{opacity:0}54%{opacity:1}62%{opacity:0}70%{opacity:1}76%,to{opacity:0}}.demo-coop{justify-content:center;align-items:center;gap:24px;height:100%;padding:16px;display:flex;position:relative}.demo-main-win{color:#6b7280;background:#0d0d14;border:1px solid #6b7280;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:110px;height:70px;font-family:monospace;font-size:10px;display:flex}.demo-popup-win{color:#f59e0b;background:#1a1500;border:1px solid #f59e0b;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:52px;font-family:monospace;font-size:10px;animation:5s ease-in-out infinite coop-popup;display:flex}@keyframes coop-popup{0%,15%{opacity:0;transform:translateY(-16px)scale(.85)}28%,72%{opacity:1;transform:translateY(0)scale(1)}84%,to{opacity:0;transform:translateY(-16px)scale(.85)}}.demo-coop-arrow{color:#ef4444;white-space:nowrap;opacity:0;font-family:monospace;font-size:10px;animation:5s ease-in-out infinite coop-arrow;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}@keyframes coop-arrow{0%,30%{opacity:0}42%,70%{opacity:1}80%,to{opacity:0}}.demo-coep{justify-content:space-around;align-items:center;height:100%;padding:16px 24px;display:flex;position:relative}.demo-main-frame{color:#6b7280;background:#0d0d14;border:1px solid #6b7280;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:100px;height:72px;font-family:monospace;font-size:10px;display:flex}.demo-cross-origin{color:#f59e0b;background:#1a1500;border:1px solid #f59e0b;border-radius:4px;flex-shrink:0;padding:4px 8px;font-family:monospace;font-size:10px;animation:5s ease-in-out infinite coep-leak}@keyframes coep-leak{0%,12%{opacity:1;transform:translate(0)}42%,62%{opacity:.5;transform:translate(-130px)}72%{opacity:0;transform:translate(-130px)}80%,to{opacity:1;transform:translate(0)}}.demo-coep-leaked{color:#ef4444;letter-spacing:.08em;opacity:0;font-family:monospace;font-size:11px;font-weight:700;animation:5s ease-in-out infinite coep-leaked-label;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes coep-leaked-label{0%,38%{opacity:0}52%,65%{opacity:1}75%,to{opacity:0}}.demo-corp{justify-content:center;align-items:center;height:100%;display:flex;position:relative}.demo-foreign-site{background:#0d0d14;border:1px solid #6b7280;border-radius:6px;flex-direction:column;gap:8px;padding:12px 16px;display:flex}.demo-foreign-label{color:#6b7280;font-family:monospace;font-size:10px}.demo-embedded-resource{color:#fff;background:#1a1a2e;border:1px solid #0000;border-radius:4px;padding:6px 12px;font-family:monospace;font-size:11px;animation:5s ease-in-out infinite corp-embed}@keyframes corp-embed{0%,18%{color:#fff;background:#1a1a2e;border-color:#0000}35%,62%{color:#ef4444;background:#1c0707;border-color:#ef4444}78%,to{color:#fff;background:#1a1a2e;border-color:#0000}}.demo-corp-stolen{color:#ef4444;letter-spacing:.08em;opacity:0;font-family:monospace;font-size:11px;font-weight:700;animation:5s ease-in-out infinite corp-stolen;position:absolute;top:50%;right:24px;transform:translateY(-50%)}@keyframes corp-stolen{0%,32%{opacity:0;transform:translateY(-50%)scale(.8)}48%,62%{opacity:1;transform:translateY(-50%)scale(1)}74%,to{opacity:0;transform:translateY(-50%)scale(.8)}}.shield-card.victory{animation:1.5s ease-in-out infinite victory-card-pulse}@keyframes victory-card-pulse{0%,to{box-shadow:0 0 6px gold}50%{box-shadow:0 0 22px gold,0 0 44px #ffd70055}}.victory-banner{z-index:150;color:#000;letter-spacing:.02em;background:linear-gradient(90deg,gold 0%,#f59e0b 100%);justify-content:center;align-items:center;height:64px;font-size:24px;font-weight:700;display:flex;position:fixed;top:0;left:0;right:0}.bottom-bar{z-index:40;background:#0a0a0f;border-top:1px solid #fff1;justify-content:center;align-items:center;gap:16px;padding:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-btn-grey,.bottom-btn-blue{letter-spacing:.06em;cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:13px;font-weight:600;transition:opacity .2s}:is(.bottom-btn-grey,.bottom-btn-blue):hover{opacity:.8}.bottom-btn-grey{color:#d1d5db;background:#374151}.bottom-btn-blue{color:#fff;background:#3b82f6}
