.wtb-scan-box{
  --wtb-orange:#F99D34;
  --wtb-green:#7CDA24;
  --wtb-light-green:#F5FCEE;
  --wtb-navy:#0d1b3d;
  --wtb-text:#101828;
  --wtb-muted:#475467;
  --wtb-border:#d9dee7;
  --wtb-danger:#ef4444;
  position:relative;
  font-family:inherit;
  color:var(--wtb-text);
}
.wtb-scan-form{padding:0;margin:0 0 16px;}
.wtb-scan-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;align-items:center;}
.wtb-scan-row input[type="text"]{width:100%;height:54px;border:1px solid var(--wtb-orange);border-radius:0;padding:0 18px;font-size:16px;box-sizing:border-box;background:#fff;}
.wtb-scan-row input[type="text"]:focus{outline:none;border-color:var(--wtb-orange);box-shadow:0 0 0 3px rgba(249,157,52,.18);}
.wtb-scan-row button{height:54px;border:0;border-radius:0;background:var(--wtb-orange);color:#fff;font-size:16px;font-weight:800;cursor:pointer;padding:0 22px;}
.wtb-scan-row button:hover{filter:brightness(.97);}
.wtb-message{margin-top:18px;padding:14px 16px;border-radius:10px;font-weight:600;}
.wtb-error{background:#fff4f4;border:1px solid #fecaca;color:#b42318;}
.wtb-result-card{margin-top:22px;}
.wtb-score-header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-radius:18px;padding:26px;border:1px solid var(--wtb-border);background:#fff;}
.wtb-kicker{font-size:14px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;margin-bottom:8px;}
.wtb-score-header h2{margin:0 0 8px;font-size:36px;line-height:1.1;word-break:break-word;}
.wtb-score-header p{margin:0;font-size:16px;line-height:1.6;max-width:780px;}
.wtb-score-good{background:var(--wtb-light-green);border-color:rgba(124,218,36,.45);}
.wtb-score-good .wtb-kicker,.wtb-score-good h2{color:var(--wtb-green);}
.wtb-score-attention{background:#fff8ef;border-color:rgba(249,157,52,.45);}
.wtb-score-attention .wtb-kicker,.wtb-score-attention h2{color:var(--wtb-orange);}
.wtb-score-risk{background:#fff4f4;border-color:#fda4af;}
.wtb-score-risk .wtb-kicker,.wtb-score-risk h2{color:#dc2626;}
.wtb-score-circle{flex:0 0 132px;width:132px;height:132px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#fff;border:4px solid currentColor;}
.wtb-score-good .wtb-score-circle{color:var(--wtb-green);}
.wtb-score-attention .wtb-score-circle{color:var(--wtb-orange);}
.wtb-score-risk .wtb-score-circle{color:#dc2626;}
.wtb-score-circle span{font-size:42px;line-height:1;font-weight:800;}
.wtb-score-circle small{font-size:15px;font-weight:700;color:var(--wtb-muted);}
.wtb-meta-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0;}
.wtb-meta-row>div{background:#fff;border:1px solid var(--wtb-border);border-radius:14px;padding:14px 16px;}
.wtb-check-section{margin-top:18px;}
.wtb-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:8px 2px 10px;border-bottom:1px solid var(--wtb-border);}
.wtb-section-heading h3{margin:0;font-size:24px;line-height:1.2;color:var(--wtb-text);}
.wtb-section-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;font-size:14px;font-weight:800;background:#f8fafc;border:1px solid var(--wtb-border);color:var(--wtb-text);}
.wtb-check-grid{display:grid;grid-template-columns:1fr;gap:14px;}
.wtb-check-card{background:#fff;border:1px solid var(--wtb-border);border-radius:16px;padding:18px 18px 16px;box-shadow:none;}
.dns-group-risk .wtb-check-card{background:#fff4f4;border-color:#fda4af;}
.dns-group-warning .wtb-check-card{background:#fff8ef;border-color:rgba(249,157,52,.45);}
.dns-group-pass .wtb-check-card{background:var(--wtb-light-green);border-color:rgba(124,218,36,.45);}
.wtb-check-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;}
.wtb-check-head h4{margin:0;font-size:24px;line-height:1.2;color:var(--wtb-text);}
.wtb-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:8px 12px;border-radius:999px;font-size:13px;font-weight:800;color:#fff;background:var(--wtb-green);}
.dns-group-warning .wtb-badge{background:var(--wtb-orange);}
.dns-group-risk .wtb-badge{background:#ef4444;}
.wtb-check-card p{margin:0;font-size:16px;line-height:1.6;}
.dns-fixer-record-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:12px;font-size:14px;color:var(--wtb-muted);}
.dns-fixer-detail-list{margin-top:12px;display:grid;gap:8px;}
.dns-fixer-line{font-size:15px;line-height:1.5;color:var(--wtb-text);}
.dns-fixer-subtitle{margin-top:14px;margin-bottom:8px;font-size:13px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--wtb-text);}
.dns-fixer-textarea{width:100%;min-height:84px;border:1px solid var(--wtb-border);border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.5;box-sizing:border-box;background:#fff;color:var(--wtb-text);resize:vertical;}
.dns-fixer-copy-button{display:inline-flex;align-items:center;justify-content:center;height:42px;border:0;border-radius:8px;background:var(--wtb-orange);color:#fff;font-size:14px;font-weight:800;cursor:pointer;padding:0 16px;margin-top:10px;}
.dns-fixer-copy-button:hover{filter:brightness(.97);}
.dns-fixer-copy-button.is-done{background:var(--wtb-green);}
.dnssec-chip{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:800;}
.dnssec-chip.is-good{background:var(--wtb-light-green);color:#3f7f10;border:1px solid rgba(124,218,36,.45);}
.dnssec-chip.is-risk{background:#fff4f4;color:#b42318;border:1px solid #fecaca;}
.dns-fixer-loader{display:none;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:220px;padding:18px 0;}
.dns-fixer-loader-text{font-size:16px;font-weight:700;color:var(--wtb-text);text-align:center;}
.dns-fixer-hourglass{position:relative;width:54px;height:78px;border:4px solid var(--wtb-orange);border-radius:14px;overflow:hidden;background:#fff;}
.dns-fixer-hourglass::before,
.dns-fixer-hourglass::after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;}
.dns-fixer-hourglass::before{top:10px;border-bottom:22px solid rgba(249,157,52,.9);animation:dns-fixer-sand-top 1.2s linear infinite;}
.dns-fixer-hourglass::after{bottom:10px;border-top:22px solid rgba(249,157,52,.9);animation:dns-fixer-sand-bottom 1.2s linear infinite;}
.dns-fixer-hourglass:before{}
.dns-fixer-hourglass:after{}
.dns-fixer-hourglass::marker{display:none;}
.dns-fixer-hourglass span{display:none;}
@keyframes dns-fixer-sand-top{
  0%{opacity:1;transform:translateX(-50%) scaleY(1);}
  50%{opacity:.4;transform:translateX(-50%) scaleY(.45);}
  100%{opacity:1;transform:translateX(-50%) scaleY(1);}
}
@keyframes dns-fixer-sand-bottom{
  0%{opacity:.35;transform:translateX(-50%) scaleY(.45);}
  50%{opacity:1;transform:translateX(-50%) scaleY(1);}
  100%{opacity:.35;transform:translateX(-50%) scaleY(.45);}
}
@media (max-width:900px){
  .wtb-scan-row{grid-template-columns:1fr;}
  .wtb-score-header{flex-direction:column;align-items:flex-start;}
  .wtb-meta-row{grid-template-columns:1fr 1fr;}
  .wtb-score-circle{width:112px;height:112px;flex-basis:112px;}
  .wtb-score-header h2{font-size:30px;}
  .wtb-check-head{flex-direction:column;}
}
@media (max-width:640px){
  .wtb-meta-row{grid-template-columns:1fr;}
}
