/*
 * A11yRemedy free checker. Styles follow the Elementor designs on
 * /accessibility-checker/ (form) and /scan-results/ (results), so the
 * shortcodes look the same as the static pages they replace.
 * Fonts (Giest, Giest Mono, Outfit) come from the site kit.
 */

/* ---------- Search form: [a11yremedy_scan] ---------- */

.ck-scan{display:grid;gap:8px;text-align:left;width:100%;font-family:Giest,sans-serif;margin:0}
.ck-scan label{font-weight:600;font-size:15px;line-height:20px;color:#F9FAFB}
.ck-scan-bar{display:flex;align-items:center;gap:6px;padding:7px;background:#111923;border:1px solid #2A3847;border-radius:12px;transition:border-color .15s,box-shadow .15s}
.ck-scan-bar:focus-within{border-color:#10B981;box-shadow:0 0 0 3px rgba(16,185,129,.18)}
.ck-scan-pre{font-family:"Giest Mono",monospace;color:#9CA3AF;font-size:14px;padding-left:10px}
.ck-scan .ck-scan-bar input{flex:1;min-width:0;background:transparent;border:0;box-shadow:none;border-radius:0;color:#F9FAFB;font-family:"Giest Mono",monospace;font-size:16px;line-height:24px;padding:10px 4px;margin:0;outline:none}
.ck-scan .ck-scan-bar input::placeholder{color:#6B7686;opacity:1}
.ck-scan .ck-scan-bar button{background:#10B981;color:#03170F;border:0;border-radius:8px;padding:0 20px;min-height:46px;font-family:Giest,sans-serif;font-weight:600;font-size:15px;line-height:20px;cursor:pointer;white-space:nowrap}
.ck-scan .ck-scan-bar button:hover,.ck-scan .ck-scan-bar button:focus{background:#34D399;color:#03170F}
.ck-scan .ck-scan-bar button:focus-visible{outline:2px solid #10B981;outline-offset:3px}
.ck-scan .ck-scan-error{color:#F87171;font-size:14px;line-height:20px;margin:0}
.ck-scan .ck-scan-error[hidden]{display:none}
@media (max-width:520px){.ck-scan-bar{flex-wrap:wrap}.ck-scan-pre{display:none}.ck-scan .ck-scan-bar input{flex-basis:100%;padding:10px 8px}.ck-scan .ck-scan-bar button{width:100%}}

/* ---------- Results page: [a11yremedy_scan_results] ---------- */

/* Bands. The hero band matches the Elementor "hero band" containers. */
.ckr-page{width:100%;background:#090D16;color:#F9FAFB}
.ckr-band-hero{position:relative;padding:0 20px;background-color:#090D16;background-image:var(--ckr-hero-image,none);background-size:contain;background-position:50% 50%;background-repeat:repeat;display:flex;flex-direction:column;align-items:center}
.ckr-band-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(rgba(17,24,39,.46) 43%,#090D16 84%);pointer-events:none}
.ckr-hero-inner{position:relative;width:100%;max-width:1160px;padding:80px 0 36px;display:flex;flex-direction:column;align-items:center}
.ckr-band-body{padding:8px 20px 80px;display:flex;flex-direction:column;align-items:center}
.ckr-band-body[hidden]{display:none}
.ckr-body-inner{width:100%;max-width:920px;display:flex;flex-direction:column;gap:28px}
@media (max-width:767px){.ckr-band-hero{padding:0 16px}.ckr-hero-inner{padding:48px 0 28px}.ckr-band-body{padding:8px 16px 56px}}

/* While a scan is being picked up, keep the empty "Scan one page" hero from
   flashing. If the script never runs, the hero shows again after 3 seconds. */
.ckr-page[data-ckr-pending] .ckr-band-hero .ckr-hero{visibility:hidden;animation:ckr-reveal 0s linear 3s forwards}
@keyframes ckr-reveal{to{visibility:visible}}

.ckr{--card:#111827;--field:#111923;--line:#1F2937;--line2:#2A3847;--text:#F9FAFB;--muted:#9CA3AF;--green:#10B981;--green-ink:#03170F;--wash:rgba(16,185,129,.08);--critical:#FF8A80;--serious:#F87171;--moderate:#FBBF24;--minor:#93C5FD;font-family:Giest,sans-serif;color:var(--text);font-size:16px;line-height:1.6;text-align:left;width:100%}
.ckr *{box-sizing:border-box}
.ckr p{margin:0}
.ckr h1,.ckr h2,.ckr h3{font-family:Outfit,sans-serif;font-weight:700;margin:0;line-height:1.15;color:var(--text);text-wrap:balance}
.ckr h1:focus{outline:none}
.ckr a{color:var(--green);text-underline-offset:3px}
.ckr code{font-family:"Giest Mono",monospace;font-size:.88em;background:#0B1220;border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:#E5E7EB}
.ckr .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal}
.ckr-eyebrow{font-family:"Giest Mono",monospace;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--green);font-weight:500;overflow-wrap:anywhere}
.ckr-muted{color:var(--muted)}
.ckr-hero{display:grid;justify-items:center;gap:16px;text-align:center}
.ckr-hero h1{font-size:52px;line-height:58px;letter-spacing:-1px;max-width:760px;overflow-wrap:anywhere}
.ckr-sub{color:var(--muted);font-size:18px;line-height:28px;max-width:600px}
.ckr-meta{font-family:"Giest Mono",monospace;font-size:12px;line-height:18px;color:var(--muted)}
.ckr-form{width:100%;max-width:560px;text-align:left;display:grid;gap:8px}
.ckr-bar{display:flex;align-items:center;gap:6px;padding:7px;background:var(--field);border:1px solid var(--line2);border-radius:12px}
.ckr-bar:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(16,185,129,.18)}
.ckr-pre{font-family:"Giest Mono",monospace;color:var(--muted);font-size:14px;padding-left:10px}
.ckr .ckr-bar input{flex:1;min-width:0;background:transparent;border:0;box-shadow:none;border-radius:0;color:var(--text);font-family:"Giest Mono",monospace;font-size:16px;line-height:24px;padding:10px 4px;margin:0;outline:none}
.ckr .ckr-bar input::placeholder{color:#6B7686;opacity:1}
.ckr .ckr-bar input[readonly]{color:var(--muted)}
.ckr .ckr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:8px;border:1px solid transparent;font-family:Giest,sans-serif;font-weight:600;font-size:15px;line-height:20px;text-decoration:none;white-space:nowrap;cursor:pointer}
.ckr .ckr-btn.ckr-btn-primary{background:var(--green);color:var(--green-ink);border-color:var(--green)}
.ckr .ckr-btn.ckr-btn-primary:hover,.ckr .ckr-btn.ckr-btn-primary:focus{background:#34D399;color:var(--green-ink)}
.ckr .ckr-btn.ckr-btn-ghost{background:transparent;color:var(--green);border-color:#0E8A62}
.ckr .ckr-btn.ckr-btn-ghost:hover,.ckr .ckr-btn.ckr-btn-ghost:focus{background:#0F1F1B;color:#34D399}
.ckr .ckr-btn:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.ckr .ckr-btn[disabled]{opacity:.8;cursor:progress}
.ckr-spin{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;display:inline-block;animation:ckr-spin .8s linear infinite}
@keyframes ckr-spin{to{transform:rotate(360deg)}}

.ckr-steps{list-style:none;margin:0 auto;padding:0;display:grid;gap:10px;width:100%;max-width:560px}
.ckr-steps li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:center;padding:12px 16px;background:var(--card);border:1px solid var(--line);border-radius:10px;color:var(--muted);margin:0}
.ckr-dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--line2);display:grid;place-items:center;font-size:12px;font-weight:700;line-height:1;color:var(--green-ink)}
.ckr-steps .is-active{color:var(--text);border-color:#0E8A62}
.ckr-steps .is-active .ckr-dot{border-color:var(--green);border-top-color:transparent;animation:ckr-spin .8s linear infinite}
.ckr-steps .is-done{color:var(--text)}
.ckr-steps .is-done .ckr-dot{background:var(--green);border-color:var(--green)}
.ckr-skel{display:grid;gap:12px;margin-top:22px}
.ckr-skel div{height:120px;border-radius:10px;border:1px solid var(--line);background:linear-gradient(90deg,#111827,#162033,#111827);background-size:200% 100%;animation:ckr-shimmer 1.6s ease-in-out infinite}
.ckr-skel div:first-child{height:150px}
@keyframes ckr-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}

.ckr-summary{display:grid;grid-template-columns:1.1fr 1fr 1fr;background:var(--card);border:1px solid var(--line);border-radius:12px}
.ckr-summary>div{padding:22px 24px;display:grid;gap:10px;align-content:start;min-width:0}
.ckr-summary>div+div{border-left:1px solid var(--line)}
.ckr-k{font-family:"Giest Mono",monospace;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}
.ckr-big{font-family:Outfit,sans-serif;font-weight:700;font-size:42px;line-height:1;color:var(--text)}
.ckr-big.is-dim{color:var(--muted)}
.ckr-bars{display:grid;gap:7px}
.ckr-bar-row{display:grid;grid-template-columns:74px 1fr 24px;gap:10px;align-items:center;font-size:14px}
.ckr-track{height:6px;border-radius:3px;background:#1A2333;overflow:hidden;display:block}
.ckr-fill{display:block;height:100%;border-radius:3px}
.ckr-n{text-align:right;font-family:"Giest Mono",monospace;font-size:13px}
.ckr-summary ul{margin:0;padding-left:18px;color:var(--muted);font-size:15px;display:grid;gap:4px}
.ckr-summary li{margin:0}
.ckr-small{font-size:14px;line-height:22px;color:var(--muted)}

.ckr-list-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px}
.ckr-list-head h2{font-size:28px}
.ckr-causes{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ckr-causes>li{margin:0}
.ckr-group{font-family:"Giest Mono",monospace;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);display:flex;gap:10px;align-items:center;padding-top:8px}
.ckr-group::after{content:"";flex:1;height:1px;background:var(--line)}
.ckr-cause{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:24px;display:grid;gap:12px;min-width:0}
.ckr-top{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.ckr-sev{font-family:"Giest Mono",monospace;font-size:12px;font-weight:500;padding:2px 9px;border-radius:5px;border:1px solid currentColor;white-space:nowrap;line-height:1.6}
.ckr-sev-critical{color:var(--critical)}.ckr-sev-serious{color:var(--serious)}.ckr-sev-moderate{color:var(--moderate)}.ckr-sev-minor{color:var(--minor)}.ckr-sev-bp{color:var(--muted)}
.ckr-rule{font-family:"Giest Mono",monospace;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.ckr-count{margin-left:auto;font-family:"Giest Mono",monospace;font-size:12px;color:var(--muted);white-space:nowrap}
.ckr-count b{font-family:Outfit,sans-serif;font-size:21px;color:var(--text);font-weight:600;margin-right:4px}
.ckr-cause h3{font-size:20px;font-weight:600}
.ckr-why{color:var(--muted)}
.ckr-code{font-family:"Giest Mono",monospace;font-size:13px;line-height:20px;background:#0B1220;border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto;white-space:pre;color:#D1D5DB}
.ckr-swatches{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-family:"Giest Mono",monospace;font-size:13px}
.ckr-sw{display:inline-flex;align-items:center;gap:8px}
.ckr-sw i{width:18px;height:18px;border-radius:4px;border:1px solid rgba(255,255,255,.22);display:inline-block}
.ckr-bad{color:var(--serious)}.ckr-good{color:var(--green)}
.ckr-fix{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:baseline}
.ckr-fix-k{font-family:"Giest Mono",monospace;font-size:12px;color:var(--green);font-weight:500;letter-spacing:1px}
.ckr-fix p{overflow-wrap:anywhere}
.ckr-where{font-family:"Giest Mono",monospace;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.ckr-where span{color:#D1D5DB}
.ckr .ckr-locked a{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:14px 18px;border:1px dashed var(--line2);border-radius:10px;color:var(--text);text-decoration:none}
.ckr .ckr-locked a:hover,.ckr .ckr-locked a:focus-visible{border-style:solid;border-color:var(--green);background:var(--wash);color:var(--text)}
.ckr .ckr-locked a:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.ckr-ltitle{flex:1;min-width:200px;font-weight:500}
.ckr-ln{font-family:"Giest Mono",monospace;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.ckr-unlock{font-size:14px;font-weight:600;color:var(--green);display:inline-flex;align-items:center;gap:6px}
.ckr-empty{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:22px 24px;color:var(--muted)}

.ckr-gate{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;border:1px solid #0E8A62;border-radius:14px;padding:36px;background:linear-gradient(135deg,rgba(16,185,129,.08),rgba(16,185,129,0) 70%),var(--card);scroll-margin-top:96px}
.ckr-gate h2{font-size:28px}
.ckr-gate ul{margin:12px 0 0;padding-left:18px;color:var(--muted);display:grid;gap:4px}
.ckr-gate li{margin:0}
.ckr-gate-form{display:grid;gap:10px}
.ckr-gate-form label{font-weight:600;font-size:15px;color:var(--text)}
.ckr .ckr-field{background:var(--field);border:1px solid var(--line2);border-radius:8px;color:var(--text);font-family:Giest,sans-serif;font-size:16px;line-height:24px;padding:12px 14px;width:100%;box-shadow:none;margin:0}
.ckr .ckr-field:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(16,185,129,.18)}
.ckr .ckr-field[aria-invalid="true"]{border-color:var(--serious)}
.ckr .ckr-field::placeholder{color:#6B7686;opacity:1}
.ckr-error{color:var(--serious);font-size:14px;line-height:20px;margin:0}
.ckr-error[hidden]{display:none}
.ckr-sent:focus{outline:none}
.ckr-sent{display:grid;gap:8px;border:1px solid #0E8A62;border-radius:10px;padding:20px 22px;background:var(--wash)}
.ckr-sent-title{font-family:Outfit,sans-serif;font-weight:700;font-size:20px;line-height:1.2;display:flex;align-items:center;gap:10px}
.ckr-sent-title svg{flex:none;color:var(--green)}
.ckr-sent p{overflow-wrap:anywhere}

.ckr-upsell{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:28px}
.ckr-upsell>div:first-child{flex:1 1 380px;display:grid;gap:8px}
.ckr-upsell h2{font-size:26px}
.ckr-actions{display:flex;flex-wrap:wrap;gap:10px}
.ckr-method{font-size:13px;line-height:20px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;display:grid;gap:6px}
.ckr h2.ckr-k{font-family:"Giest Mono",monospace;font-weight:500;font-size:11px;letter-spacing:1.4px;line-height:16px;color:var(--muted)}

.ckr-errbox{width:100%;max-width:560px;margin:0 auto;background:var(--card);border:1px solid rgba(248,113,113,.45);border-radius:12px;padding:22px 24px;display:grid;gap:10px}
.ckr-errbox h2{font-size:22px}
.ckr-errbox ul{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:4px}
.ckr-errbox li{margin:0}
.ckr-errbox p{overflow-wrap:anywhere}

@media (prefers-reduced-motion:reduce){.ckr-spin,.ckr-steps .is-active .ckr-dot,.ckr-skel div{animation:none}}
@media (max-width:767px){.ckr-hero h1{font-size:34px;line-height:40px;letter-spacing:-.5px}.ckr-sub{font-size:16px;line-height:25px}.ckr-summary{grid-template-columns:1fr}.ckr-summary>div+div{border-left:0;border-top:1px solid var(--line)}.ckr-gate{grid-template-columns:1fr;padding:22px}.ckr-cause{padding:18px}.ckr-list-head h2,.ckr-gate h2{font-size:24px}}
@media (max-width:520px){.ckr-fix{grid-template-columns:1fr;gap:4px}.ckr-bar{flex-wrap:wrap}.ckr-pre{display:none}.ckr .ckr-bar input{flex-basis:100%;padding:10px 8px}.ckr-bar .ckr-btn{width:100%}}
