.viz-section:where(.astro-kl3m2oi4){display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:2rem;align-items:center;margin:2rem 0}.viz-section--reverse:where(.astro-kl3m2oi4){grid-template-columns:220px minmax(0,1fr)}.viz-section--reverse:where(.astro-kl3m2oi4) .viz-section__text:where(.astro-kl3m2oi4){grid-column:2}.viz-section--reverse:where(.astro-kl3m2oi4) .viz-section__art:where(.astro-kl3m2oi4){grid-column:1;grid-row:1}.viz-section__text:where(.astro-kl3m2oi4){min-width:0}.viz-section__art:where(.astro-kl3m2oi4){width:220px;max-width:100%;aspect-ratio:200 / 160}.viz-section__art:where(.astro-kl3m2oi4) svg:where(.astro-kl3m2oi4){width:100%;height:100%;display:block}@media(max-width:720px){.viz-section:where(.astro-kl3m2oi4),.viz-section--reverse:where(.astro-kl3m2oi4){grid-template-columns:1fr;gap:1rem}.viz-section--reverse:where(.astro-kl3m2oi4) .viz-section__text:where(.astro-kl3m2oi4){grid-column:1}.viz-section--reverse:where(.astro-kl3m2oi4) .viz-section__art:where(.astro-kl3m2oi4){grid-column:1;grid-row:auto}.viz-section__art:where(.astro-kl3m2oi4){max-width:220px;width:100%}}@media(max-width:560px){.viz-section__art:where(.astro-kl3m2oi4){display:none}}.cta-row:where(.astro-kl3m2oi4){display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0 0}.hero-aside:where(.astro-kl3m2oi4){margin:.75rem 0 0;color:var(--text-secondary);font-size:.875rem;line-height:1.55}.hero-aside:where(.astro-kl3m2oi4) a:where(.astro-kl3m2oi4){color:var(--accent);text-decoration:none;font-weight:600}.hero-aside:where(.astro-kl3m2oi4) a:where(.astro-kl3m2oi4):hover{text-decoration:underline}.btn:where(.astro-kl3m2oi4){display:inline-flex;align-items:center;padding:.65rem 1.1rem;border-radius:999px;font-weight:600;font-size:.9375rem;text-decoration:none}.btn-primary:where(.astro-kl3m2oi4){background:var(--accent);color:#fff}.btn-primary:where(.astro-kl3m2oi4):hover{background:var(--accent-hover)}.btn-ghost:where(.astro-kl3m2oi4){color:var(--text-primary);border:1px solid var(--border, rgba(148, 163, 184, .25))}.btn-ghost:where(.astro-kl3m2oi4):hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.btn-disabled:where(.astro-kl3m2oi4){opacity:.55;filter:grayscale(.4);cursor:not-allowed;pointer-events:none}.btn-sm:where(.astro-kl3m2oi4){padding:.4rem .85rem;font-size:.825rem}.validator-tool:where(.astro-kl3m2oi4){margin:2rem 0}.tool-blurb:where(.astro-kl3m2oi4){color:var(--text-secondary);font-size:.95rem;margin:.5rem 0 1.25rem}.validator-dropzone:where(.astro-kl3m2oi4){display:flex;align-items:center;justify-content:center;min-height:180px;padding:2rem;border:2px dashed var(--border, rgba(148, 163, 184, .3));border-radius:12px;background:var(--bg-surface, rgba(255, 255, 255, .02));cursor:pointer;transition:background .15s ease,border-color .15s ease;text-align:center}.validator-dropzone:where(.astro-kl3m2oi4):hover,.validator-dropzone:where(.astro-kl3m2oi4):focus-visible,.validator-dropzone--hover:where(.astro-kl3m2oi4){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);outline:none}.validator-dropzone-prompt:where(.astro-kl3m2oi4){margin:0;line-height:1.5}.validator-dropzone-prompt:where(.astro-kl3m2oi4) strong:where(.astro-kl3m2oi4){display:block;font-size:1.05rem;color:var(--text-primary)}.validator-dropzone-or:where(.astro-kl3m2oi4){display:block;margin-top:.25rem;font-size:.875rem;color:var(--text-secondary)}.validator-status:where(.astro-kl3m2oi4){margin:1rem 0 0;padding:.65rem 1rem;border-radius:8px;background:var(--bg-surface, rgba(255, 255, 255, .04));font-size:.9rem;color:var(--text-secondary)}.validator-status:where(.astro-kl3m2oi4)[data-kind=loading]{color:var(--text-secondary)}.validator-status:where(.astro-kl3m2oi4)[data-kind=error]{background:color-mix(in srgb,#f87171 14%,transparent);color:#fecaca}.validator-report:where(.astro-kl3m2oi4){margin:1.5rem 0 0}.validator-report-header:where(.astro-kl3m2oi4){display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:.85rem 1rem;border:1px solid var(--border, rgba(148, 163, 184, .18));border-radius:10px;background:var(--bg-surface, rgba(255, 255, 255, .03))}.validator-report-summary:where(.astro-kl3m2oi4){display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.validator-summary-label:where(.astro-kl3m2oi4){font-weight:600;color:var(--text-primary)}.validator-summary-counts:where(.astro-kl3m2oi4){display:flex;gap:.4rem;flex-wrap:wrap}.validator-report-actions:where(.astro-kl3m2oi4){display:flex;gap:.5rem;flex-wrap:wrap}.badge:where(.astro-kl3m2oi4){display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:lowercase}.badge-error:where(.astro-kl3m2oi4){background:color-mix(in srgb,#ef4444 24%,transparent);color:#fecaca}.badge-warning:where(.astro-kl3m2oi4){background:color-mix(in srgb,#f59e0b 24%,transparent);color:#fde68a}.badge-info:where(.astro-kl3m2oi4){background:color-mix(in srgb,#38bdf8 22%,transparent);color:#bae6fd}.validator-issue-list:where(.astro-kl3m2oi4){list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-direction:column;gap:.6rem}.validator-issue:where(.astro-kl3m2oi4){padding:.85rem 1rem;border-radius:8px;background:var(--bg-surface, rgba(255, 255, 255, .02));border-left:3px solid var(--border)}.validator-issue--error:where(.astro-kl3m2oi4){border-left-color:#ef4444}.validator-issue--warning:where(.astro-kl3m2oi4){border-left-color:#f59e0b}.validator-issue--info:where(.astro-kl3m2oi4){border-left-color:#38bdf8}.validator-issue--clean:where(.astro-kl3m2oi4){border-left-color:#22c55e;color:var(--text-secondary)}.validator-issue-head:where(.astro-kl3m2oi4){display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-bottom:.35rem}.validator-issue-sev:where(.astro-kl3m2oi4){font-size:.7rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary)}.validator-issue--error:where(.astro-kl3m2oi4) .validator-issue-sev:where(.astro-kl3m2oi4){color:#fca5a5}.validator-issue--warning:where(.astro-kl3m2oi4) .validator-issue-sev:where(.astro-kl3m2oi4){color:#fde68a}.validator-issue--info:where(.astro-kl3m2oi4) .validator-issue-sev:where(.astro-kl3m2oi4){color:#bae6fd}.validator-issue-rule:where(.astro-kl3m2oi4){font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.78rem;color:var(--text-secondary);background:var(--bg-elevated, rgba(255, 255, 255, .04));padding:.05rem .4rem;border-radius:4px}.validator-issue-tag:where(.astro-kl3m2oi4){font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.78rem;color:var(--accent-text, var(--accent));text-decoration:none}.validator-issue-tag:where(.astro-kl3m2oi4):hover{text-decoration:underline}.validator-issue-msg:where(.astro-kl3m2oi4){margin:0;color:var(--text-primary);font-size:.92rem;line-height:1.5}.validator-issue-cite:where(.astro-kl3m2oi4){margin:.3rem 0 0;font-size:.78rem;color:var(--text-muted, var(--text-secondary));font-style:italic}
