/* Completion code checker. Shared tokens and components are in ../shared/zsa-base.css. */
.zsa.zsa-chk {--zsa-max-width:1320px;}
.zsa-chk h1 {font-size:clamp(1.75rem,1.4rem + 1.4vw,2.5rem);margin:8px 0 12px;}
.zsa-chk h2 {font-size:clamp(1.4rem,1.25rem + .6vw,1.75rem);margin:24px 0 8px;}
.zsa-chk h3 {font-size:1.15rem;font-weight:600;margin:20px 0 4px;}
.zsa-chk .zsa-eyebrow {margin:8px 0 0;}
.zsa-chk p, .zsa-chk li {font-size:var(--zsa-text-sm);}

/* Paste box */
.zsa-chk-form {margin-top:20px;}
.zsa-chk-label {display:block;font-size:var(--zsa-text-sm);font-weight:600;color:var(--zsa-navy);}
.zsa-chk-hint {margin:2px 0 8px;font-size:15px;}
.zsa-chk textarea {display:block;width:100%;min-height:180px;padding:10px 12px;border:1px solid var(--zsa-navy);border-radius:var(--zsa-radius);background:var(--zsa-white);color:var(--zsa-navy);font:400 16px/1.5 ui-monospace,"Cascadia Mono",Consolas,Menlo,"DejaVu Sans Mono","Liberation Mono",monospace;resize:vertical;}
.zsa-chk textarea:focus-visible {outline:var(--zsa-focus-ring);outline-offset:var(--zsa-focus-offset);}
.zsa-chk-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;}
.zsa-chk-status, .zsa-chk-message {margin:0;color:var(--zsa-navy);}
.zsa-chk-message {margin-top:8px;}
.zsa-chk-status:empty, .zsa-chk-message:empty {display:none;}

/* Results table. Wide tables scroll inside their own box, never the page. */
.zsa-chk-results h2:focus-visible {outline:var(--zsa-focus-ring);outline-offset:var(--zsa-focus-offset);}
.zsa-chk-count {margin:0 0 8px;}
.zsa-chk-scroll {overflow-x:auto;border:1px solid var(--zsa-border);border-radius:var(--zsa-radius-lg);}
.zsa-chk-scroll:focus-visible {outline:var(--zsa-focus-ring);outline-offset:var(--zsa-focus-offset);}
.zsa-chk-table {width:100%;border-collapse:collapse;font-size:15px;line-height:1.4;}
.zsa-chk-table caption {text-align:left;font-size:14px;font-weight:600;color:var(--zsa-navy);padding:8px 12px 4px;}
.zsa-chk-table th, .zsa-chk-table td {text-align:left;vertical-align:top;padding:8px 12px;border-top:1px solid var(--zsa-border);}
.zsa-chk-table thead th {background:var(--zsa-sky);color:var(--zsa-navy);font-weight:600;white-space:nowrap;}
.zsa-chk-table tbody th {font-weight:600;color:var(--zsa-navy);}
.zsa-chk-code {font-family:ui-monospace,"Cascadia Mono",Consolas,Menlo,"DejaVu Sans Mono","Liberation Mono",monospace;white-space:nowrap;}
.zsa-chk-steps {margin:0;padding:0;list-style:none;}
.zsa-chk-steps li {font-size:14px;white-space:nowrap;}
/* Status: the words carry the meaning; the color only repeats it. */
.zsa-chk-status-tag {display:inline-block;padding:2px 10px;border-radius:var(--zsa-radius-pill);font-size:14px;font-weight:600;white-space:nowrap;border:1px solid var(--zsa-border);color:var(--zsa-navy);background:var(--zsa-sky);}
.zsa-chk-status-tag--valid {color:var(--zsa-success);background:var(--zsa-success-bg);border-color:#bbf7d0;}
.zsa-chk-status-tag--typo, .zsa-chk-status-tag--future {color:var(--zsa-error);background:var(--zsa-error-bg);border-color:#fca5a5;}
.zsa-chk-status-tag--none {color:var(--zsa-slate);background:#f8fafc;}

.zsa-chk-help {margin-top:32px;}
.zsa-chk-help h2 {margin-top:0;}
.zsa-chk-help ul {padding-left:22px;}
.zsa-chk-help a {overflow-wrap:anywhere;}
