:root{color-scheme:dark}
body{margin:0;height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:#020810;color:#f2f7fa;font-family:Arial,Helvetica,sans-serif}
#attackMap,.map-shade{position:fixed;inset:0;z-index:0}
#attackMap{background:radial-gradient(circle at 58% 45%,rgb(0 181 208 / 12%),transparent 38%),linear-gradient(180deg,#06131e 0%,#020810 100%)}
.leaflet-container{font:inherit;background:#020810}
.map-shade{pointer-events:none;background:rgb(2 8 16 / 25%);z-index:1}
main{position:relative;z-index:2;flex:1;min-height:0;overflow-y:auto;display:flex;padding:28px 24px 30px}
.check-card{width:min(100%,1100px);flex-shrink:0;margin:auto;padding:32px;background:rgb(6 19 30 / 46%);border:1px solid #173248;border-top:3px solid #bb181d;border-radius:6px}
.site-name{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;margin-bottom:20px}
.site-name .bi{color:#bb181d;font-size:26px}
h1{font-size:clamp(20px,3vw,24px);line-height:1.25;margin:0 0 25px;font-weight:700}
.form-label{font-size:14px;color:#b4c5cf}
.form-control,.input-group-text{background:#020810;border-color:#34515f;color:#f2f7fa}
.form-control::placeholder{color:#8198a6}
.form-control:focus{background:#020810;color:#fff;border-color:#bb181d;box-shadow:0 0 0 .2rem rgb(187 24 29 / 20%)}
.input-group-text{color:#b4c5cf}
.source{display:block;margin-top:20px;font-size:12px;color:#91a8b6}
footer{flex-shrink:0;z-index:2;position:relative;text-align:center;padding:20px 24px 35px}
footer strong{display:block;font-size:clamp(20px,3vw,25px);margin-bottom:8px}
footer a{color:#f2f7fa;font-size:19px;text-decoration:none}
footer a:hover{color:#ef5364;text-decoration:underline}
#result:not(:empty){margin-top:24px;border-top:1px solid #173248;padding-top:20px}
.result-title{font-size:19px;font-weight:700}
.result-found{color:#ff536c}
.result-clear{color:#75bd9b}
.result-error{color:#ffc477}
.breach-list{padding:0;margin:16px 0 0;max-height:none;overflow:visible}
.breach-list li{padding:12px 0;background:transparent;color:#f2f7fa;border-color:#173248}
.breach-meta{font-size:13px;line-height:1.6;color:#b4c5cf}
.result-note{font-size:14px;line-height:1.5;color:#b4c5cf}
.attack-pulse{stroke-dasharray:8 8;animation:attack-flow 1s linear infinite}
@keyframes attack-flow{to{stroke-dashoffset:-32}}
@media(max-width:600px){main{padding:30px 16px 20px}.check-card{padding:24px 20px}footer{padding-bottom:25px}.input-group{flex-wrap:wrap}.input-group>.form-control{min-width:0}}
@media(prefers-reduced-motion:reduce){.attack-pulse{animation:none}}
.check-brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.check-brand-row .site-name{margin-bottom:0}.huijbregts-brand{display:block;background:#fff;padding:8px 12px;border-radius:4px;flex-shrink:0}.huijbregts-brand img{display:block;width:180px;max-width:100%;height:auto}@media(max-width:480px){.check-brand-row{gap:10px;flex-wrap:wrap}.huijbregts-brand{margin-left:auto}.huijbregts-brand img{width:140px}}
.page-heading{flex-shrink:0;position:relative;z-index:2;text-align:center;padding:28px 24px 0;font-size:clamp(20px,3vw,28px);font-weight:700;line-height:1.3}
.domain-results-table{--bs-table-bg:transparent;--bs-table-color:#f2f7fa;--bs-table-border-color:#173248;font-size:13px}.domain-results-table td{overflow-wrap:anywhere;min-width:110px;max-width:340px}.domain-results-table th{white-space:nowrap}.domain-results .result-error{margin-bottom:0}
.result-advice{padding:16px;border-left:3px solid #bb181d;background:rgb(2 8 16 / 65%)}
@media(max-width:600px){
    body{height:auto;min-height:100dvh;overflow-y:auto}
    .page-heading{padding:18px 16px 0;font-size:20px}
    main{flex:none;overflow:visible;padding:18px 12px}
    .check-card{padding:20px 16px}
    .check-brand-row{gap:12px;margin-bottom:20px}
    .site-name{font-size:17px}
    h1{font-size:21px;margin-bottom:20px}
    #check-form .btn-group{display:flex;flex-direction:column;width:100%;gap:8px}
    #check-form .btn-group>.btn{border-radius:4px;margin:0;min-height:44px;text-align:left}
    #check-form .input-group{gap:12px}
    #check-form .input-group-text{display:none}
    #check-form .input-group>.form-control{flex:0 0 100%;width:100%;border-radius:4px;margin:0;font-size:16px;min-height:50px}
    #check-form .input-group>.btn{width:100%;border-radius:4px;margin:0;min-height:48px;font-size:17px}
    footer{padding:4px 16px 24px}
    footer strong{font-size:20px}
    footer a{font-size:17px}
}

main{overflow-y:scroll}@media(max-width:600px){body{overflow-y:scroll}main{overflow:visible}}
