.khwa-app{--ka-ink:#14243e;--ka-muted:#60718a;--ka-blue:#245cda;--ka-soft:#eef4fd;--ka-border:#dbe4f2;font-family:inherit;color:var(--ka-ink);max-width:1140px;margin:20px auto 54px;padding:0 16px;line-height:1.65}
.khwa-app *{box-sizing:border-box}.khwa-app button,.khwa-app input{font:inherit}.khwa-hero{background:linear-gradient(125deg,#0d1d36,#19365f 68%,#25599c);color:#fff;border-radius:26px;padding:clamp(26px,6vw,64px);box-shadow:0 18px 44px rgba(13,29,54,.16)}
.khwa-eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#7fc4ff}.khwa-hero h1{font-size:clamp(29px,4.6vw,51px)!important;line-height:1.13;color:#fff!important;margin:14px 0}.khwa-hero>p{font-size:clamp(16px,2vw,19px);color:#d4e4fa;max-width:800px;margin-bottom:27px}.khwa-form{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.23);padding:21px;border-radius:17px}.khwa-form label{font-weight:700;color:#fff;display:block;margin-bottom:8px}.khwa-inputrow{display:flex;gap:10px}.khwa-inputrow input{width:100%;min-width:0;background:white!important;border:2px solid transparent!important;border-radius:11px!important;color:#1e2e43!important;font-size:17px!important;padding:14px 17px!important;min-height:55px;box-shadow:none!important}.khwa-inputrow input:focus{outline:3px solid #8fbcff}.khwa-inputrow button,.khwa-contact,.khwa-print{min-height:55px;cursor:pointer;border:0;border-radius:11px;background:#5ad9b2;color:#09293a!important;font-weight:800;white-space:nowrap;padding:12px 22px;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s,box-shadow .2s,background .2s}.khwa-inputrow button:hover:not(:disabled),.khwa-contact:hover,.khwa-print:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(0,0,0,.15)}.khwa-inputrow button:disabled{opacity:.65;cursor:wait}.khwa-small{font-size:13px!important;color:var(--ka-muted);margin:6px 0}.khwa-form .khwa-small{color:#bcd1eb;margin:12px 0 0}.khwa-hp{position:absolute!important;left:-99999px;opacity:0;pointer-events:none}.khwa-alert{margin:20px 0;padding:17px 21px;border:1px solid #eeb2a4;background:#fff0ec;color:#8d2c1d;border-radius:13px}.khwa-progress{margin:24px 0;padding:26px;border-radius:18px;background:#f4f8ff;border:1px solid var(--ka-border)}.khwa-progressline{display:flex;align-items:center;gap:17px}.khwa-progressline strong{font-size:20px}.khwa-progressline p{margin:0;color:var(--ka-muted)}.khwa-spinner{width:35px;height:35px;border:4px solid #d6e6ff;border-top-color:#245cda;border-radius:50%;animation:khwa-spin .9s linear infinite;flex-shrink:0}.khwa-track{height:9px;background:#dce7f7;border-radius:12px;margin:20px 0 7px;overflow:hidden}.khwa-trackfill{height:100%;width:6%;background:linear-gradient(90deg,#245cda,#55d9b2);border-radius:inherit;transition:width .6s}.khwa-results{scroll-margin-top:25px;margin-top:30px}.khwa-report-head{background:#f0f5ff;border-radius:18px;padding:26px}.khwa-report-head h2{font-size:30px;margin:10px 0 5px}.khwa-scoregrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}.khwa-scorecard{border:1px solid var(--ka-border);background:#fff;border-radius:15px;padding:18px}.khwa-scorecard h3{font-size:15px!important;margin:0 0 8px!important}.khwa-score{font-size:22px;line-height:1.3;display:block}.khwa-scope{background:#fff8e8;border:1px solid #f0dfb6;border-radius:13px;padding:18px;margin:19px 0}.khwa-scope p{margin:7px 0}.khwa-report-section{margin:24px 0}.khwa-report-section>h3{font-size:24px;margin-bottom:13px}.khwa-finding{border:1px solid var(--ka-border);background:#fff;border-radius:12px;margin:9px 0;overflow:hidden}.khwa-finding summary{display:flex;align-items:center;gap:11px;padding:14px 16px;cursor:pointer;list-style:none}.khwa-finding summary::-webkit-details-marker{display:none}.khwa-finding summary:focus-visible{outline:3px solid #7aaaff;outline-offset:-3px}.khwa-finding-title{font-weight:700;flex:1}.khwa-plus{font-size:24px;color:#7387a1;line-height:1}.khwa-finding[open] .khwa-plus{transform:rotate(45deg)}.khwa-pill{font-size:12px;font-weight:800;border-radius:30px;padding:4px 9px;min-width:75px;text-align:center;line-height:1.5}.khwa-pill-pass{background:#e4f8ed;color:#157443}.khwa-pill-warning{background:#fff3d8;color:#876100}.khwa-pill-fail{background:#ffebe8;color:#ae352b}.khwa-pill-unknown{background:#eaf0f6;color:#51657e}.khwa-finding-body{border-top:1px solid var(--ka-border);padding:6px 18px 18px;color:#34445b}.khwa-evidence{padding:12px;border-radius:8px;background:#f3f6fa;overflow-wrap:anywhere;font-size:14px}.khwa-untested{border:1px solid var(--ka-border);padding:20px;border-radius:16px}.khwa-untested ul{padding-left:21px}.khwa-bottom-cta{background:#112b4b;color:white;padding:26px;border-radius:18px;margin-top:20px}.khwa-bottom-cta h3{color:white!important;margin-top:0}.khwa-bottom-cta p{color:#d7e6f8}.khwa-contact{background:#5ad9b2;margin:7px 9px 7px 0}.khwa-print{background:transparent;border:1px solid #9fc8ee;color:white!important}.khwa-explain{margin:35px 0}.khwa-explain h2{font-size:26px}.khwa-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.khwa-features>div{padding:18px;border:1px solid var(--ka-border);border-radius:14px}.khwa-features h3{font-size:19px;margin:0 0 6px}.khwa-features p{color:var(--ka-muted);margin:0}.khwa-disclaimer{color:#6c7f95;font-size:14px;border-top:1px solid var(--ka-border);padding-top:18px}
@keyframes khwa-spin{to{transform:rotate(360deg)}}
@media(max-width:700px){.khwa-app{padding:0 10px}.khwa-hero{border-radius:16px;padding:25px 18px}.khwa-form{padding:14px}.khwa-inputrow{flex-direction:column}.khwa-inputrow button{width:100%}.khwa-scoregrid,.khwa-features{grid-template-columns:1fr}.khwa-report-head h2{font-size:25px}.khwa-contact,.khwa-print{width:100%;white-space:normal;text-align:center}.khwa-scoregrid{gap:10px}.khwa-finding summary{padding:12px;gap:7px}.khwa-pill{min-width:62px}}
@media print{.khwa-form,.khwa-explain,.khwa-disclaimer,.khwa-progress,.khwa-alert,.khwa-bottom-cta{display:none!important}.khwa-app,.khwa-scorecard,.khwa-finding{box-shadow:none!important;color:#111!important}.khwa-finding-body{display:block!important}.khwa-finding{break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.khwa-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* v0.2: AI-ready export, diagnostics, brand identity and accessible button layout */
.khwa-hero h2{font-size:clamp(29px,4.6vw,51px)!important;line-height:1.13;color:#fff!important;margin:14px 0}
.khwa-brand{margin:30px 0 10px;padding:21px 24px;border-left:4px solid #245cda;background:#f2f7ff;border-radius:12px}
.khwa-brand p{margin:0 0 11px;color:#213a5b;font-size:16px;line-height:1.7}
.khwa-brand p:last-child{margin-bottom:0}.khwa-brand a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.khwa-results-overview{margin:16px 0 8px;padding:23px;border:1px solid #cadcef;background:#f6f9fe;border-radius:16px}
.khwa-results-overview h3{margin:0 0 8px;font-size:23px}.khwa-results-overview p{font-size:16px}
.khwa-export-actions,.khwa-error-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 10px}
.khwa-export-actions button,.khwa-error-buttons button{white-space:normal!important;cursor:pointer;min-height:46px;border-radius:9px;padding:10px 14px;border:1px solid #91add5;background:#fff;color:#163a71;font-size:16px!important;font-weight:700;line-height:1.4;transition:transform .2s,box-shadow .2s}
.khwa-export-actions button:hover,.khwa-error-buttons button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #163a7120}
.khwa-export-actions .khwa-export-primary{background:#245cda;color:#fff;border-color:#245cda}
.khwa-alert strong{display:block;font-size:19px}.khwa-alert p{font-size:16px;margin:8px 0}
.khwa-app .khwa-small,.khwa-app .khwa-pill,.khwa-app .khwa-evidence,.khwa-app .khwa-scorecard h3,.khwa-app .khwa-disclaimer,.khwa-app .khwa-eyebrow{font-size:16px!important}
.khwa-app button:focus-visible,.khwa-app a:focus-visible{outline:3px solid #66abff;outline-offset:3px}
@media(max-width:700px){.khwa-export-actions button,.khwa-error-buttons button{width:100%}.khwa-results-overview{padding:16px}.khwa-brand{padding:16px}}
@media print{.khwa-export-actions,.khwa-error-buttons,.khwa-brand{display:none!important}}
