:root {
    --bg-dark: #020617;
    --bg-card: rgba(15, 23, 42, 0.9);
    --border-subtle: rgba(148, 163, 184, 0.35);
}

body {
    min-height: 100vh;
    background:
        radial-gradient(circle at top, #38bdf8 0, transparent 55%),
        radial-gradient(circle at 20% 80%, #6366f1 0, transparent 55%),
        radial-gradient(circle at 80% 20%, #ec4899 0, transparent 55%),
        #020617;
    color: #e5e7eb;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", sans-serif;
}

.glass-shell {
    background: linear-gradient(135deg, rgba(15,23,42,.85), rgba(15,23,42,.95));
    border-radius: 1.5rem;
    border: 1px solid rgba(148, 163, 184, 0.3);
    box-shadow: 0 25px 80px rgba(0,0,0,0.8);
    backdrop-filter: blur(20px);
}

.badge-pill {
    border-radius: 999px;
    padding: .35rem .9rem;
}

.hero-title {
    letter-spacing: .06em;
}

.search-group {
    background: rgba(15, 23, 42, .9);
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, .5);
    box-shadow: 0 12px 40px rgba(15, 23, 42, .85);
}

.search-group input {
    background: transparent;
    border: none;
    color: #e5e7eb;
}

.search-group input::placeholder {
    color: #6b7280;
}

.search-group input:focus {
    box-shadow: none;
}

.search-group .btn {
    border-radius: 999px;
}

.score-circle {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    border: 7px solid #22c55e;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.4rem;
    font-weight: 700;
    position: relative;
    box-shadow: 0 0 30px rgba(34, 197, 94, 0.35);
}

.score-circle.badge-mid {
    border-color: #eab308;
    box-shadow: 0 0 30px rgba(234, 179, 8, 0.3);
}

.score-circle.badge-low {
    border-color: #ef4444;
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.35);
}

.score-circle::after {
    content: "SEO";
    position: absolute;
    bottom: 12px;
    font-size: .7rem;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #9ca3af;
}

.favicon-preview {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    background: #020617;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.6);
}

.favicon-preview img {
    max-width: 100%;
    max-height: 100%;
}

.meta-chip {
    border-radius: 999px;
    background: rgba(15,23,42,.95);
    border: 1px solid rgba(148,163,184,.4);
    font-size: .75rem;
    padding: .25rem .7rem;
}

.meta-card {
    border-radius: .9rem;
    border: 1px solid rgba(148,163,184,.3);
    background: rgba(15,23,42,.95);
    padding: .65rem .75rem;
}

.meta-key {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: .75rem;
    color: #9ca3af;
}

.meta-value {
    font-size: .85rem;
}

.section-label {
    text-transform: uppercase;
    font-size: .7rem;
    letter-spacing: .16em;
    color: #9ca3af;
}

.pill-soft {
    border-radius: 999px;
    background: rgba(15,23,42,.9);
    border: 1px solid rgba(148,163,184,.4);
    padding: .25rem .6rem;
    font-size: .75rem;
    color: #e5e7eb;
}

.list-dot {
    font-size: .55rem;
}

a,
a:hover {
    color: #bfdbfe;
}