*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:#f4f4f5;color:#1a1a1a;min-height:100vh;line-height:1.6}.page{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;max-width:960px;margin:0 auto;width:100%;padding:2rem 1.25rem 4rem}.header{background:#2d2d2d;color:#fff;padding:1rem 0;box-shadow:0 2px 10px #00000040}.header-inner{max-width:960px;margin:0 auto;padding:0 1.25rem}.logo{display:flex;align-items:center;gap:1rem}.logo-img{height:40px;width:auto;flex-shrink:0}.logo-divider{width:1px;height:36px;background:#fff3;flex-shrink:0}.logo h1{font-size:1.25rem;font-weight:700;line-height:1.2}.logo p{font-size:.8rem;opacity:.6}.search-card{background:#fff;border-radius:12px;padding:1.75rem;box-shadow:0 2px 16px #00000012;margin-bottom:1.75rem;border-top:3px solid #C53030}.search-label{display:block;font-weight:600;font-size:.95rem;color:#2d2d2d;margin-bottom:.6rem}.search-label--sub{margin-top:.875rem;font-size:.875rem;font-weight:500;color:#4a4a4a}.search-row{display:flex;gap:.75rem}.search-input{flex:1;padding:.75rem 1rem;border:2px solid #e2e2e2;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s;color:#1a1a1a}.search-input:focus{border-color:#c53030}.search-input:disabled{background:#f7f7f7;color:#a0a0a0}.scan-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:#c53030;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.scan-btn:hover:not(:disabled){background:#9b2424;transform:translateY(-1px)}.scan-btn:disabled{background:#d88a8a;cursor:not-allowed;transform:none}.btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.search-hint{margin-top:.75rem;font-size:.8rem;color:#6b6b6b;line-height:1.5}.error-box{background:#fff5f5;border:1px solid #fed7d7;border-left:4px solid #C53030;border-radius:8px;padding:1rem 1.25rem;color:#c53030;margin-bottom:1.5rem;font-size:.9rem}.mode-toggle{display:flex;background:#f4f4f5;border-radius:8px;padding:3px;margin-bottom:1.25rem}.mode-btn{flex:1;padding:.45rem .75rem;border:none;border-radius:6px;background:transparent;color:#4a4a4a;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.mode-btn:hover:not(.mode-btn--active){background:#fff9;color:#1a1a1a}.mode-btn--active{background:#fff;color:#c53030;font-weight:600;box-shadow:0 1px 3px #0000001a}.score-dashboard{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000012;margin-bottom:1.5rem;overflow:hidden}.score-dashboard-top{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;flex-wrap:wrap}.score-circle-area{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex-shrink:0}.score-circle{width:80px;height:80px;border-radius:50%;border:4px solid;display:flex;align-items:center;justify-content:center;background:#fff}.score-number{font-size:1.8rem;font-weight:800}.compliance-label{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.score-details{flex:1;min-width:200px}.score-url{font-size:.85rem;color:#666;word-break:break-all;margin-bottom:.25rem}.score-summary{font-size:1.1rem;color:#1a1a1a}.score-date{font-size:.8rem;color:#aaa;margin-top:.25rem}.print-btn{flex-shrink:0;align-self:flex-start;padding:.5rem 1rem;border:1px solid #C53030;border-radius:6px;background:#fff;color:#c53030;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}.print-btn:hover{background:#fff5f5}.print-btn:disabled{opacity:.6;cursor:not-allowed;background:#fafafa}.severity-bar{padding:1rem 1.5rem;border-top:1px solid #f0f0f0}.severity-bar-title{font-size:.8rem;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.severity-pills{display:flex;gap:.5rem;flex-wrap:wrap}.severity-pill{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#fafafa;border-radius:6px;border-left:3px solid}.severity-pill-count{font-size:1.1rem;font-weight:800;color:#1a1a1a}.severity-pill-label{font-size:.78rem;color:#888;text-transform:capitalize}.category-bar{padding:1rem 1.5rem;border-top:1px solid #f0f0f0}.category-bar-title{font-size:.8rem;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.category-pills{display:flex;gap:.4rem;flex-wrap:wrap}.category-pill{display:flex;align-items:center;gap:.35rem;padding:.3rem .65rem;background:#fafafa;border-radius:6px;border:1px solid #e8e8e8}.category-pill.has-issues{background:#fff5f5;border-color:#fed7d7}.category-pill-count{font-size:.9rem;font-weight:700;color:#1a1a1a}.category-pill-name{font-size:.75rem;color:#888}.report-section-title{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem}.report-url-inline{color:#666;font-weight:400;font-size:.9rem;word-break:break-all}.category-section{margin-bottom:1rem}.category-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#2d2d2d;color:#fff;border:none;border-radius:8px;cursor:pointer;border-left:4px solid #C53030}.category-name{font-size:.95rem;font-weight:700}.category-meta{display:flex;align-items:center;gap:.6rem}.category-count{font-size:.78rem;opacity:.7}.category-issues{font-size:.75rem;background:#c53030;padding:.15rem .5rem;border-radius:4px;font-weight:600}.check-table-header{display:none;padding:.5rem 1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#888;font-weight:700}@media (min-width: 700px){.check-table-header{display:flex;align-items:center;gap:.5rem}.cth-element{flex:1}.cth-relevant,.cth-successes,.cth-failures{width:70px;text-align:center}.cth-score{width:55px;text-align:center}.cth-expand{width:24px}}.check-card{background:#fff;border-radius:8px;margin-bottom:.5rem;box-shadow:0 1px 6px #0000000a;border-left:4px solid #e2e2e2;overflow:hidden}.check-card-header{display:flex;align-items:flex-start;justify-content:space-between;padding:.75rem 1rem;cursor:pointer;transition:background .1s;gap:.75rem}.check-card-header:hover{background:#fafafa}.check-card-left{display:flex;align-items:flex-start;gap:.6rem;flex:1;min-width:0}.check-number{font-size:.75rem;font-weight:700;color:#bbb;flex-shrink:0;min-width:28px;padding-top:2px}.check-title{font-size:.875rem;font-weight:600;color:#1a1a1a;line-height:1.3}.check-desc{font-size:.78rem;color:#888;margin-top:.15rem;line-height:1.4}.check-card-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.check-relevant{font-size:.72rem;font-weight:600;padding:.1rem .4rem;border-radius:3px}.check-relevant.yes{background:#f0fff4;color:#276749}.check-relevant.no{background:#f7f7f7;color:#bbb}.check-stat-num{font-size:.82rem;font-weight:700;color:#276749;width:28px;text-align:center}.check-stat-num.fail{color:#c53030}.check-score{font-size:.78rem;font-weight:800;padding:.15rem .5rem;border-radius:4px;border:1px solid;min-width:42px;text-align:center}.check-chevron{font-size:.6rem;color:#bbb}.check-card-detail{padding:0 1rem 1rem;border-top:1px solid #f0f0f0}.check-meta-row{display:flex;gap:.4rem;flex-wrap:wrap;margin:.75rem 0;align-items:center}.check-tag{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:3px}.wcag-tag{background:#fef2f2;color:#9b2424;border:1px solid #fecaca}.severity-tag{text-transform:capitalize}.aoda-tag{background:#faf5ff;color:#6b46c1;border:1px solid #e9d8fd}.check-learn-more{font-size:.75rem;color:#c53030;text-decoration:none;margin-left:.25rem}.check-learn-more:hover{text-decoration:underline}.aoda-rec{margin-top:.75rem;padding:.875rem 1rem;background:#fafafa;border:1px solid #e8e8e8;border-radius:6px}.aoda-rec-heading{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#c53030;margin-bottom:.4rem}.aoda-rec-meta{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.aoda-rec-pillar,.aoda-rec-severity{display:inline-block;padding:.12rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600}.aoda-rec-pillar{background:#fef2f2;color:#9b2424;border:1px solid #fecaca}.aoda-rec-severity{background:#fff5f5;color:#c53030;border:1px solid #fed7d7}.aoda-rec-plain{font-size:.85rem;color:#2d2d2d;line-height:1.6;margin-bottom:.6rem}.aoda-rec-bullets{padding-left:1.25rem;margin:0}.aoda-rec-bullets li{font-size:.82rem;color:#555;line-height:1.5;margin-bottom:.25rem}.code-snapshot-section{margin-top:.75rem}.code-snapshot-label{font-size:.78rem;font-weight:700;margin-bottom:.35rem}.success-label{color:#276749}.failure-label{color:#c53030}.code-snapshot{font-family:Consolas,Courier New,monospace;font-size:.72rem;line-height:1.5;padding:.5rem .75rem;border-radius:4px;margin-bottom:.35rem;white-space:pre-wrap;word-break:break-all;overflow-x:auto}.success-snapshot{background:#f0fff4;border:1px solid #c6f6d5;color:#22543d}.failure-snapshot{background:#fff5f5;border:1px solid #fed7d7;color:#742a2a}.snapshot-num{font-weight:800;color:inherit;opacity:.5;margin-right:.25rem}.snapshot-failure-msg{display:block;margin-top:.25rem;color:#c53030;font-style:italic;font-size:.7rem}.sitemap-summary-left{display:flex;align-items:center;gap:1.25rem;flex:1;min-width:0}.agg-dashboard{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000012;margin-bottom:1.5rem;overflow:hidden}.agg-section{padding:1.5rem 2rem}.agg-section-title{font-size:1rem;font-weight:600;color:#444;text-align:center;margin-bottom:1.25rem}.agg-divider{height:1px;background:#eee;margin:0 2rem}.agg-severity-circles{display:flex;align-items:flex-end;justify-content:center;gap:1.25rem;padding:.5rem 0 .25rem}.agg-sev-circle-wrap{display:flex;flex-direction:column;align-items:center;gap:.4rem}.agg-sev-circle{border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;transition:transform .2s}.agg-sev-circle:hover{transform:scale(1.05)}.agg-sev-moderate{background:#3d3d3d}.agg-sev-minor{background:#5a5a5a}.agg-sev-serious{background:#8b3a3a}.agg-sev-critical{background:#c53030}.agg-sev-count{font-size:1.6rem;font-weight:800;line-height:1}.agg-sev-label{font-size:.78rem;font-weight:600;color:#666;text-transform:capitalize}.agg-category-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 2rem;max-width:560px;margin:0 auto}.agg-cat-row{display:flex;align-items:center;gap:.6rem}.agg-cat-badge{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 .4rem;background:#3d3d3d;color:#fff;font-size:.82rem;font-weight:700;border-radius:4px;flex-shrink:0}.agg-cat-badge.has-issues{background:#c53030}.agg-cat-name{font-size:.92rem;color:#2d2d2d;font-weight:500}@media (max-width: 500px){.agg-category-grid{grid-template-columns:1fr}.agg-severity-circles{gap:.75rem}.agg-sev-count{font-size:1.2rem}.agg-section{padding:1rem 1.25rem}.sitemap-summary-left{flex-direction:column;align-items:flex-start}}.sitemap-loading-notice{display:flex;align-items:center;gap:.6rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.85rem 1.1rem;font-size:.9rem;color:#9b2424;margin-bottom:1.5rem}.btn-spinner--dark{border-color:#c530304d;border-top-color:#c53030}.sitemap-summary-bar{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 2px 16px #00000012;margin-bottom:1rem}.sitemap-summary-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.scanned-url{font-size:.875rem;color:#666;word-break:break-all}.summary-stats{display:flex;gap:.5rem;flex-wrap:wrap}.stat{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.stat-violations{background:#fff5f5;color:#c53030}.stat-passes{background:#f0fff4;color:#276749}.stat-incomplete{background:#fffbeb;color:#b7791f}.stat-pages{background:#fef2f2;color:#9b2424}.stat-fail-pages{background:#fff5f5;color:#c53030}.sitemap-pages{display:flex;flex-direction:column;gap:.5rem}.sitemap-page-row{background:#fff;border-radius:10px;box-shadow:0 1px 8px #0000000d;overflow:hidden}.sitemap-page-row--error{border-left:4px solid #e2e2e2}.sitemap-page-header{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;padding:.875rem 1.1rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s}.sitemap-page-header:hover{background:#fafafa}.sitemap-page-header--static{cursor:default}.sitemap-page-header--static:hover{background:none}.sitemap-mini-badge{font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;flex-shrink:0}.sitemap-mini-badge--error{background:#fff5f5;color:#c53030;border:1px solid #feb2b2}.sitemap-page-url{flex:1;min-width:0;font-size:.85rem;color:#2d2d2d;word-break:break-all}.sitemap-page-stats{display:flex;gap:.35rem;flex-wrap:wrap;flex-shrink:0}.sitemap-chevron{font-size:.65rem;color:#bbb;flex-shrink:0}.sitemap-page-err-msg{flex:1;min-width:0;font-size:.8rem;color:#888;word-break:break-word}.sitemap-page-detail{padding:0 1.1rem 1rem;border-top:1px solid #f0f0f0}.report-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.report-toolbar .report-section-title{margin-bottom:0}.expand-controls{display:flex;border:1px solid #e2e2e2;border-radius:6px;overflow:hidden;flex-shrink:0}.expand-btn{padding:.4rem .85rem;border:none;background:#fff;color:#666;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.expand-btn:first-child{border-right:1px solid #e2e2e2}.expand-btn:hover{background:#fafafa}.expand-btn.active{background:#c53030;color:#fff}.sitemap-top-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0}@media (max-width: 600px){.search-row{flex-direction:column}.scan-btn{width:100%;justify-content:center}.score-dashboard-top{flex-direction:column;align-items:flex-start}.check-card-header{flex-direction:column}.check-card-right{flex-wrap:wrap}.sitemap-page-stats,.logo-divider{display:none}.logo{flex-wrap:wrap}.logo h1{font-size:1.1rem}.report-toolbar{flex-direction:column}.sitemap-top-actions{flex-wrap:wrap}.sitemap-summary-top{flex-direction:column}}@media print{body{margin:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff}.print-btn,.scan-btn,.search-card,.mode-toggle,.sitemap-loading-notice,.expand-controls{display:none!important}.check-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none}.aoda-rec{break-inside:avoid;page-break-inside:avoid}.category-section{break-inside:avoid}.header{background:#2d2d2d!important}}
