/* SEO Analytics — webcol.net/seo-analytics. Se apoya en centinela.css (formulario, tarjetas, nota, hallazgos). */
.sa-cats { display: grid; gap: 0.55rem; margin-top: 1.1rem; }
.sa-cat { display: grid; grid-template-columns: minmax(130px, 220px) 1fr 3ch; gap: 0.8rem; align-items: center; }
@media (max-width: 520px) { .sa-cat { grid-template-columns: 1fr 3ch; } .sa-cat__bar { grid-column: 1 / -1; grid-row: 2; } }
.sa-cat__name { color: var(--color-text-secondary); font-size: var(--text-small); }
.sa-cat__bar { height: 8px; background: var(--color-border); border-radius: 999px; overflow: hidden; }
.sa-cat__fill { display: block; height: 100%; border-radius: 999px; background: #16a34a; transition: width 0.6s ease; }
.sa-cat__fill--mid { background: #ca8a04; } .sa-cat__fill--low { background: #dc2626; }
.sa-cat__n { font-weight: 700; color: var(--color-text-primary); text-align: right; }

.sa-speed { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; }
@media (max-width: 600px) { .sa-speed { grid-template-columns: 1fr; } }
.sa-speed__box { border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 1rem; background: var(--color-bg-surface); }
.sa-speed__label { display: flex; gap: 0.4rem; align-items: center; font-size: var(--text-xs); text-transform: uppercase;
    letter-spacing: 0.05em; color: var(--color-text-muted); }
.sa-speed__label svg { width: 16px; height: 16px; }
.sa-speed__score { font-size: 2rem; font-weight: 800; color: var(--color-text-primary); margin: 0.2rem 0; }
.sa-speed__score--good { color: #4ade80; } .sa-speed__score--mid { color: #facc15; } .sa-speed__score--bad { color: #f87171; }
.sa-metrics { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 0.4rem; }

.sa-summary p { color: var(--color-text-secondary); margin: 0 0 0.75rem; line-height: 1.6; }
.sa-summary p:last-child { margin-bottom: 0; }

.sa-group { margin-top: 1.25rem; }
.sa-group:first-child { margin-top: 0; }
.sa-group__title { font-size: 0.95rem; font-weight: 700; color: var(--color-text-primary); margin: 0 0 0.6rem; }
.sa-why, .sa-fix { margin: 0.35rem 0 0; font-size: var(--text-small); line-height: 1.5; }
.sa-why { color: var(--color-text-secondary); }
.sa-fix { color: #86efac; }
.sa-why b, .sa-fix b { font-weight: 600; }

.sa-pages { margin: 0.5rem 0 0; padding-left: 1.1rem; color: var(--color-text-muted); font-size: var(--text-small); }
.sa-pages li { word-break: break-all; }

.sa-interest { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
@media (max-width: 520px) { .sa-interest { grid-template-columns: 1fr; } }
.sa-interest label { border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 0.7rem 0.8rem; cursor: pointer;
    display: flex; gap: 0.5rem; align-items: flex-start; font-size: var(--text-small); color: var(--color-text-secondary); }
.sa-interest label:has(input:checked) { border-color: var(--color-accent); box-shadow: 0 0 0 1px var(--color-accent); }
.sa-interest input { margin-top: 3px; accent-color: var(--color-accent); }
.wc-form .sa-interest label { text-transform: none; letter-spacing: normal; font-weight: 400; }
.wc-form .sa-interest input { width: auto; padding: 0; flex-shrink: 0; appearance: auto; -webkit-appearance: auto; border: 0; background: none; }
