.sa-progress{color:var(--text-2);align-items:center;gap:10px;margin-top:14px;font-weight:600;display:flex}.sa-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite sa-spin}@keyframes sa-spin{to{transform:rotate(360deg)}}.sa-error{border-radius:var(--r);background:var(--bad-soft);color:var(--bad);margin-top:14px;padding:12px 14px;font-weight:600}.sa-summary{align-items:center;gap:20px 28px;display:grid}@media (min-width:640px){.sa-summary{grid-template-columns:auto 1fr}.sa-badge-box{grid-column:1/-1}}@media (min-width:1100px){.sa-summary{grid-template-columns:auto minmax(0,1fr) minmax(360px,500px)}.sa-badge-box{grid-column:auto}}.sa-score{--c:var(--accent);width:150px;height:150px;margin:0 auto;position:relative}.sa-score[data-level=great]{--c:var(--ok)}.sa-score[data-level=good]{--c:#2f9e6e}.sa-score[data-level=mid]{--c:var(--warn)}.sa-score[data-level=bad]{--c:var(--bad)}.sa-ring{width:100%;height:100%;transform:rotate(-90deg)}.sa-ring circle{fill:none;stroke-width:11px}.sa-ring-bg{stroke:var(--surface-2)}.sa-ring-fg{stroke:var(--c);stroke-linecap:round;transition:stroke-dashoffset 1s ease-out}.sa-score-num{text-align:center;place-content:center;line-height:1;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.sa-score-num b{color:var(--c);font-variant-numeric:tabular-nums;font-size:46px;font-weight:800}.sa-score-num span{color:var(--text-3);margin-top:4px;font-size:13px}.sa-summary-main{gap:10px;min-width:0;display:grid}.sa-summary-main h2{font-size:1.6rem}.sa-checked{color:var(--text-3);overflow-wrap:anywhere;margin:0;font-size:14px}.sa-counts{flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.sa-counts b{font-size:18px}.sa-counts .is-ok b{color:var(--ok)}.sa-counts .is-warn b{color:var(--warn)}.sa-counts .is-fail b{color:var(--bad)}.sa-critical{border-radius:var(--r);background:var(--bad-soft);color:var(--bad);margin:0;padding:10px 12px;font-size:14px;font-weight:600}.sa-facts{grid-template-columns:minmax(110px,auto) 1fr;gap:10px 18px;margin:12px 0 0;display:grid}.sa-facts dt{color:var(--text-3);font-size:14px}.sa-facts dd{overflow-wrap:anywhere;margin:0}.sa-facts dd small{color:var(--text-3);font-size:12.5px;display:block}@media (max-width:479px){.sa-facts{grid-template-columns:1fr;gap:2px}.sa-facts dd{margin-bottom:10px}}.sa-badge{white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:2px 9px;font-size:12px;font-weight:700;display:inline-flex}.sa-badge--ok{color:var(--ok);background:var(--ok-soft)}.sa-badge--warn{color:var(--warn);background:var(--warn-soft)}.sa-badge--fail{color:var(--bad);background:var(--bad-soft)}.sa-badge--info{color:var(--text-2);background:var(--surface-2)}.sa-issues{gap:12px;margin:0;padding:0;list-style:none;display:grid}.sa-issue{border:1px solid var(--border);border-left:4px solid var(--warn);border-radius:var(--r);background:var(--surface);gap:8px;padding:14px 16px;display:grid}.sa-issue--fail{border-left-color:var(--bad)}.sa-issue-head{align-items:center;gap:10px;display:flex}.sa-issue h3{font-size:1rem}.sa-issue p{margin:0;font-size:14.5px}.sa-issue-value{color:var(--text-2);overflow-wrap:anywhere;font-weight:600}.sa-tools{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;display:grid}.sa-tool{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);align-content:start;gap:10px;padding:14px 16px;display:grid}.sa-tool-head{align-items:center;gap:10px;display:flex}.sa-tool h3{font-size:1rem}.sa-tool p{margin:0;font-size:13px}.sa-tool ul{margin:0;padding-left:18px;font-size:14px}.sa-tool .btn{justify-self:start}.sa-badge-box{border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);align-self:stretch;gap:10px;min-width:0;padding:14px;display:grid}.sa-badge-box h3{font-size:1rem}.sa-badge-opts,.sa-badge-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sa-badge-opts .seg button,.sa-badge-actions .seg button{height:28px;padding:0 10px;font-size:13px}.sa-badge-preview{border:1px solid var(--border);border-radius:var(--r);background:repeating-conic-gradient(var(--surface) 0 25%, var(--bg) 0 50%) 0 0 / 18px 18px;place-items:center;min-height:172px;padding:10px;display:grid}.sa-badge-preview img{max-width:100%;height:auto;display:block}.sa-code-text{word-break:break-all;min-height:0;font-size:12px}.sa-badge-box .hint{margin:0;font-size:12.5px}.sa-badge-guide{font-size:13.5px;font-weight:600}.sa-groups{gap:10px;margin-top:12px;display:grid}.sa-group{border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.sa-group summary{cursor:pointer;justify-content:space-between;gap:12px;padding:12px 16px;font-weight:700;display:flex}.sa-group-count{color:var(--ok);font-size:13px;font-weight:600}.sa-group-count.is-bad{color:var(--warn)}.sa-checks{margin:0;padding:0 16px 8px;list-style:none}.sa-check{border-top:1px solid var(--border);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.sa-check .sa-badge{justify-content:center;min-width:82px}.sa-check b{font-size:14.5px;display:block}.sa-check-value{color:var(--text-2);overflow-wrap:anywhere;font-size:14px;display:block}.sa-check .hint{margin:4px 0 0}@media (max-width:479px){.sa-check{flex-direction:column;gap:6px}}
