/* Website Accessibility Checker — light + dark */

.apple-glass {
    background: rgba(255, 255, 255, 0.86);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
}
html.dark .apple-glass {
    background: rgba(18, 18, 20, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: none;
}

.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

.wac-surface {
    background: #f8fafc;
    border: 1px solid #e4e4e7;
}
html.dark .wac-surface {
    background: rgba(9, 9, 11, 0.72);
    border-color: rgba(255, 255, 255, 0.08);
}

.wac-tabbar {
    background: #f4f4f5;
    border: 1px solid #e4e4e7;
}
html.dark .wac-tabbar {
    background: rgba(24, 24, 27, 0.9);
    border-color: rgba(255, 255, 255, 0.1);
}

.input-tab-btn,
.result-tab,
.filter-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    color: #52525b;
    border: 1px solid transparent;
    transition: all 0.18s ease;
    white-space: nowrap;
    font-weight: 700;
}
html.dark .input-tab-btn,
html.dark .result-tab,
html.dark .filter-chip { color: #a1a1aa; }

.result-tab { padding: 0.5rem 0.85rem; border-radius: 0.75rem; font-size: 0.72rem; }
.filter-chip {
    padding: 0.35rem 0.75rem;
    border-radius: 0.75rem;
    font-size: 0.72rem;
    background: #f4f4f5;
    border-color: #e4e4e7;
}
html.dark .filter-chip {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.08);
}

.input-tab-btn:hover,
.result-tab:hover,
.filter-chip:hover { color: #18181b; }
html.dark .input-tab-btn:hover,
html.dark .result-tab:hover,
html.dark .filter-chip:hover { color: #fff; }

.input-tab-btn.active,
.result-tab.active,
.filter-chip.active {
    color: #065f46;
    background: rgba(16, 185, 129, 0.16);
    border-color: rgba(16, 185, 129, 0.32);
}
html.dark .input-tab-btn.active,
html.dark .result-tab.active,
html.dark .filter-chip.active { color: #fff; }

#score-ring {
    transition: stroke-dasharray 0.9s cubic-bezier(0.22, 1, 0.36, 1), stroke 0.4s ease;
}

.issue-card {
    padding: 1rem;
    border-radius: 1rem;
    background: #f8fafc;
    border: 1px solid #e4e4e7;
}
html.dark .issue-card {
    background: rgba(9, 9, 11, 0.72);
    border-color: rgba(255, 255, 255, 0.08);
}

.wac-issue-title {
    color: #18181b;
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0 0 0.25rem;
}
html.dark .wac-issue-title { color: #fff; }

.badge-pass {
    background: rgba(16, 185, 129, 0.12);
    border: 1px solid rgba(16, 185, 129, 0.25);
    color: #047857;
}
html.dark .badge-pass { color: #34d399; }

.badge-warning {
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(245, 158, 11, 0.25);
    color: #b45309;
}
html.dark .badge-warning { color: #fbbf24; }

.badge-error {
    background: rgba(244, 63, 94, 0.12);
    border: 1px solid rgba(244, 63, 94, 0.25);
    color: #e11d48;
}
html.dark .badge-error { color: #fb7185; }

.severity-critical {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.28);
    color: #b91c1c;
}
html.dark .severity-critical { color: #fca5a5; }

.severity-serious {
    background: rgba(249, 115, 22, 0.15);
    border: 1px solid rgba(249, 115, 22, 0.28);
    color: #c2410c;
}
html.dark .severity-serious { color: #fdba74; }

.severity-moderate {
    background: rgba(234, 179, 8, 0.15);
    border: 1px solid rgba(234, 179, 8, 0.28);
    color: #a16207;
}
html.dark .severity-moderate { color: #fde047; }

.severity-minor {
    background: rgba(59, 130, 246, 0.12);
    border: 1px solid rgba(59, 130, 246, 0.25);
    color: #1d4ed8;
}
html.dark .severity-minor { color: #93c5fd; }

pre.code-snippet,
.snippet-box {
    background: #f4f4f5;
    border: 1px solid #e4e4e7;
    border-radius: 0.75rem;
    padding: 0.7rem 0.85rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.7rem;
    line-height: 1.5;
    color: #3f3f46;
    overflow-x: auto;
}
html.dark pre.code-snippet,
html.dark .snippet-box {
    background: rgba(10, 10, 12, 0.85);
    border-color: rgba(255, 255, 255, 0.08);
    color: #d4d4d8;
}

.fix-box {
    padding: 0.75rem;
    border-radius: 0.75rem;
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.18);
    color: #065f46;
    font-size: 0.75rem;
    line-height: 1.5;
}
html.dark .fix-box { color: #6ee7b7; }
