/* ─── DARK WEB SCANNER — Dramatic dark interface ─── */
.dw-page{background:#060D1A;min-height:100vh;padding-top:66px;display:flex;align-items:center;justify-content:center;}
.dw-wrap{max-width:700px;width:100%;padding:28px;text-align:center;position:relative;}

/* ─── GLOW ─── */
.dw-glow{position:absolute;top:-120px;left:50%;transform:translateX(-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(239,68,68,.08),transparent 70%);pointer-events:none;}

/* ─── INTRO ─── */
.dw-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:40px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);font-size:.75rem;font-weight:700;color:#EF4444;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px;}
.dw-badge-dot{width:6px;height:6px;border-radius:50%;background:#EF4444;animation:blink 2s infinite;}
.dw-title{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(2.4rem,5vw,3.8rem);color:#E8ECF2;line-height:1.1;letter-spacing:-.03em;margin-bottom:16px;}
.dw-subtitle{font-size:1rem;color:#8B95A8;line-height:1.7;max-width:500px;margin:0 auto 36px;}

/* ─── INPUT CARD ─── */
.dw-input-card{background:#0B1628;border:1px solid #1E2536;border-radius:16px;padding:28px;margin-bottom:28px;text-align:left;}
.dw-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#4B5563;margin-bottom:10px;display:block;}
.dw-input-row{display:flex;gap:10px;}
.dw-input-wrap{flex:1;position:relative;}
.dw-at{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#4B5563;font-size:1rem;font-weight:600;}
.dw-input{
  width:100%;padding:14px 14px 14px 34px;background:#131825;
  border:1.5px solid #1E2536;border-radius:10px;
  color:#E8ECF2;font-size:1rem;font-family:'Courier New',monospace;
  outline:none;transition:border-color .2s;
}
.dw-input:focus{border-color:#EF4444;box-shadow:0 0 0 3px rgba(239,68,68,.1);}
.dw-input::placeholder{color:#2A3347;}
.dw-scan-btn{
  padding:14px 24px;background:#EF4444;color:#fff;
  border:none;border-radius:10px;font-size:.875rem;font-weight:700;
  cursor:pointer;display:flex;align-items:center;gap:8px;
  transition:all .15s;white-space:nowrap;font-family:inherit;
}
.dw-scan-btn:hover{background:#DC2626;transform:translateY(-1px);box-shadow:0 4px 20px rgba(239,68,68,.35);}
.dw-disclaimer{font-size:.72rem;color:#4B5563;margin-top:12px;text-align:center;}
.dw-trust-row{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;}
.dw-trust-item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#4B5563;}

/* ─── SCANNING STATE ─── */
.dw-scanning{padding:60px 0;}
.dw-scan-ring{position:relative;width:140px;height:140px;margin:0 auto 24px;}
.dw-ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent;}
.r1{border-top-color:#EF4444;animation:ring-spin 2s linear infinite;}
.r2{inset:12px;border-right-color:#F59E0B;animation:ring-spin 3s linear infinite reverse;}
.r3{inset:24px;border-bottom-color:#3B82F6;animation:ring-spin 1.5s linear infinite;}
@keyframes ring-spin{to{transform:rotate(360deg)}}
.dw-scan-eye{position:absolute;inset:36px;display:flex;align-items:center;justify-content:center;color:#EF4444;animation:eye-pulse 1.5s ease-in-out infinite;}
@keyframes eye-pulse{0%,100%{opacity:.7}50%{opacity:1}}
.dw-scan-domain{font-family:'Courier New',monospace;font-size:1.2rem;color:#E8ECF2;font-weight:700;margin-bottom:8px;}
.dw-scan-status{font-size:.875rem;color:#8B95A8;margin-bottom:24px;min-height:22px;}
.dw-scan-log{text-align:left;max-width:460px;margin:0 auto 24px;font-family:'Courier New',monospace;font-size:.75rem;color:#4B5563;line-height:2;max-height:200px;overflow-y:auto;}
.dw-scan-log::-webkit-scrollbar{width:3px;}.dw-scan-log::-webkit-scrollbar-thumb{background:rgba(255,255,255,.05);border-radius:3px;}
.dw-log-line{animation:log-in .3s ease;}
.dw-log-ok{color:#10B981;}.dw-log-warn{color:#F59E0B;}.dw-log-crit{color:#EF4444;}.dw-log-info{color:#3B82F6;}
@keyframes log-in{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
.dw-progress-wrap{max-width:460px;margin:0 auto;height:3px;background:#1E2536;border-radius:3px;overflow:hidden;}
.dw-progress-bar{height:100%;background:linear-gradient(90deg,#EF4444,#F59E0B,#3B82F6);width:0;transition:width .3s;border-radius:3px;}

/* ─── RESULTS ─── */
.dw-results{padding:40px 0;animation:msg-in .4s ease;}
.dw-results-header{display:flex;align-items:center;gap:28px;padding:28px;background:#0B1628;border:1px solid #1E2536;border-radius:16px;margin-bottom:24px;text-align:left;}
.dw-result-score{flex-shrink:0;}
.dw-score-ring{position:relative;width:120px;height:120px;}
.dw-score-ring svg{width:100%;height:100%;}
.dw-score-circle{transition:stroke-dashoffset 1.5s ease,stroke 1s ease;}
.dw-score-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'DM Serif Display',serif;font-size:2.2rem;color:#E8ECF2;}
.dw-score-label{text-align:center;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#4B5563;margin-top:6px;}
.dw-result-summary{flex:1;}
.dw-result-title{font-family:'DM Serif Display',serif;font-size:1.5rem;color:#E8ECF2;margin-bottom:4px;}
.dw-result-domain{font-family:'Courier New',monospace;color:#8B95A8;font-size:.875rem;margin-bottom:14px;}
.dw-result-stats{display:flex;gap:16px;flex-wrap:wrap;}
.dw-rstat{padding:8px 14px;border-radius:8px;font-size:.78rem;font-weight:700;}
.dw-rstat-red{background:rgba(239,68,68,.1);color:#EF4444;}
.dw-rstat-amber{background:rgba(245,158,11,.1);color:#F59E0B;}
.dw-rstat-green{background:rgba(16,185,129,.1);color:#10B981;}

/* ─── FINDINGS ─── */
.dw-findings{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}
.dw-finding{
  background:#0B1628;border:1px solid #1E2536;border-radius:12px;
  padding:18px 20px;text-align:left;animation:log-in .3s ease;
}
.dw-finding-top{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.dw-finding-sev{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:4px;}
.dw-sev-critical{background:rgba(239,68,68,.15);color:#EF4444;}
.dw-sev-high{background:rgba(245,158,11,.15);color:#F59E0B;}
.dw-sev-medium{background:rgba(59,130,246,.15);color:#3B82F6;}
.dw-sev-low{background:rgba(16,185,129,.15);color:#10B981;}
.dw-finding-type{font-size:.75rem;color:#4B5563;}
.dw-finding-title{font-size:.9375rem;font-weight:600;color:#E8ECF2;margin-bottom:4px;}
.dw-finding-desc{font-size:.8125rem;color:#8B95A8;line-height:1.65;}
.dw-finding-date{font-size:.72rem;color:#4B5563;margin-top:8px;}

/* ─── CTA ─── */
.dw-result-cta{background:#0B1628;border:1px solid #1E2536;border-radius:16px;padding:32px;text-align:center;}
.dw-cta-title{font-family:'DM Serif Display',serif;font-size:1.3rem;color:#E8ECF2;margin-bottom:8px;}
.dw-cta-text{font-size:.875rem;color:#8B95A8;margin-bottom:20px;}
.dw-cta-acts{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

@keyframes msg-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:768px){.dw-input-row{flex-direction:column;}.dw-results-header{flex-direction:column;text-align:center;}.dw-result-stats{justify-content:center;}}
@media(max-width:480px){
  .dw-wrap{padding:20px 16px;}
  .dw-title{font-size:2rem;}
  .dw-input-card{padding:20px;}
  .dw-scan-btn{width:100%;justify-content:center;}
  .dw-score-ring{width:90px;height:90px;}
  .dw-score-num{font-size:1.6rem;}
  .dw-result-title{font-size:1.2rem;}
  .dw-results-header{padding:20px;gap:16px;}
  .dw-finding{padding:14px 16px;}
  .dw-result-cta{padding:24px 18px;}
  .dw-cta-title{font-size:1.1rem;}
  .dw-cta-acts{flex-direction:column;}
  .dw-cta-acts .btn{width:100%;text-align:center;justify-content:center;}
  .dw-trust-row{gap:14px;}
  .dw-scan-ring{width:100px;height:100px;}
  .dw-glow{width:300px;height:300px;}
}
