.stack{display:grid;gap:18px}#message:not(:empty){margin-top:24px}#progress{margin-top:40px}.prog-bar{height:8px;background:var(--sunk);border-radius:4px;overflow:hidden;margin-top:12px}.prog-bar i{display:block;height:100%;background:var(--accent);width:0;transition:width .4s}@media(prefers-reduced-motion:reduce){.prog-bar i{transition:none}}.rep-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:32px;align-items:center;margin-top:8px}.rep-score{font-size:clamp(88px,16vw,148px);line-height:.9;font-weight:400;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.rep-score small{font-size:22px;letter-spacing:0;color:var(--muted);margin-left:6px}.subs{display:grid;gap:12px;margin-top:40px;max-width:640px}.sub{display:grid;grid-template-columns:150px minmax(0,1fr) 40px;gap:14px;align-items:center;font-size:15px}.sub i{height:10px;background:var(--sunk);border-radius:5px;position:relative;overflow:hidden;display:block}.sub i b{position:absolute;inset:0 auto 0 0;background:var(--accent);border-radius:5px}.sub span:last-child{text-align:right;font-variant-numeric:tabular-nums}.fixes{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:16px;max-width:820px}.fix{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;display:grid;gap:14px}.fix h3{font-size:22px;line-height:28px}.fix dl{margin:0;display:grid;gap:12px}.fix dt{font:500 12px/16px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.fix dd{margin:2px 0 0}.fix-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}@media(max-width:560px){.rep-head{grid-template-columns:1fr;gap:12px}.sub{grid-template-columns:100px minmax(0,1fr) 34px;gap:10px}.fix{padding:20px}}#progress.page-narrow{max-width:1040px}.pv-head{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.pv-title{font-size:clamp(26px,3.4vw,36px);line-height:1.15;letter-spacing:-.025em;font-weight:500;text-wrap:balance}.pv-sub{margin-top:6px}#progress .prog-bar{margin-top:20px}.pv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;margin-top:24px;align-items:start}.pv-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px}.pv-step{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:12px;padding:12px 14px;border-radius:12px;transition:background-color .3s}.pv-label{font-size:15px;line-height:22px;color:var(--muted);transition:color .3s}.pv-line{grid-column:2;font-size:13px;line-height:18px;color:var(--muted);min-height:18px}.pv-dot{grid-row:span 2;width:18px;height:18px;margin-top:2px;border-radius:50%;border:2px solid var(--line-strong);position:relative}.pv-step[data-state=running]{background:var(--surface)}.pv-step[data-state=running] .pv-label,.pv-step[data-state=done] .pv-label{color:var(--ink)}.pv-step[data-state=running] .pv-dot{border-color:var(--accent);border-right-color:transparent;animation:pv-spin .8s linear infinite}.pv-step[data-state=done] .pv-dot{border-color:var(--accent);background:var(--accent);animation:pv-pop .35s cubic-bezier(.2,.8,.2,1.4)}.pv-step[data-state=done] .pv-dot:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.pv-step[data-state=done] .pv-line{color:var(--ink)}.pv-step[data-state=failed] .pv-dot{border-color:var(--warn);border-style:dashed}.pv-right{display:grid;gap:14px;min-width:0}.pv-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;display:grid;gap:12px;min-width:0}.pv-engines{list-style:none;margin:0;padding:0;display:grid;gap:8px}.pv-chip{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:var(--sunk);font-size:14px;line-height:20px;min-width:0;transition:background-color .35s,color .35s,transform .35s}.pv-chip b{font-weight:500}.pv-chip span{color:var(--muted);text-align:right;overflow-wrap:anywhere}.pv-chip[data-state=asking] span{animation:pv-blink 1.2s ease-in-out infinite}.pv-chip[data-state=yes]{background:var(--accent-soft)}.pv-chip[data-state=yes] span{color:var(--accent-text);font-weight:500}.pv-chip[data-state=no] span{color:var(--danger)}.pv-chip[data-state=yes],.pv-chip[data-state=no],.pv-chip[data-state=off]{animation:pv-flip .45s cubic-bezier(.2,.8,.2,1)}.pv-comp{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pv-comp li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:8px 10px;border-radius:10px;font-size:14px;line-height:20px;min-height:36px}.pv-rank{font:500 12px/20px var(--mono);color:var(--muted)}.pv-name{overflow-wrap:anywhere}.pv-meta{font-size:12px;color:var(--muted);white-space:nowrap}.pv-you{background:var(--accent-soft)}.pv-you .pv-rank,.pv-you .pv-name{color:var(--accent-text);font-weight:500}.pv-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pv-stat{display:grid;gap:2px;padding:10px;border-radius:10px;background:var(--sunk);min-width:0}.pv-stat b{font-size:22px;line-height:26px;font-weight:500;letter-spacing:-.02em}.pv-stat span{font-size:12px;line-height:16px;color:var(--muted)}.pv-stat.warn b{color:var(--warn)}.pv-skel{background:linear-gradient(90deg,var(--sunk) 0%,var(--line) 50%,var(--sunk) 100%);background-size:200% 100%;animation:pv-shimmer 1.4s linear infinite;border-radius:10px}.pv-comp .pv-skel{height:36px}.pv-stat-skel{height:56px}.pv-empty{font-size:14px;color:var(--muted)}.pv-in{animation:pv-rise .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d, 0ms)}.pv-score{position:relative;width:120px;height:120px;display:grid;place-items:center;animation:pv-rise .5s cubic-bezier(.2,.8,.2,1) both}.pv-score b{position:absolute;top:34px;left:0;right:0;text-align:center;font-size:40px;line-height:44px;font-weight:500;letter-spacing:-.03em}.pv-score small{position:absolute;top:78px;left:0;right:0;text-align:center;font-size:12px;color:var(--muted)}.pv-dial{width:120px;height:120px;transform:rotate(-90deg)}.pv-dial circle{fill:none;stroke-width:10;stroke-linecap:round}.pv-dial-track{stroke:var(--sunk)}.pv-dial-ring{stroke:var(--accent)}.pv-dial-ring[data-band=poor]{stroke:var(--danger)}.pv-dial-ring[data-band=fair]{stroke:var(--warn)}@keyframes pv-spin{to{transform:rotate(360deg)}}@keyframes pv-pop{0%{transform:scale(.4)}to{transform:scale(1)}}@keyframes pv-blink{50%{opacity:.35}}@keyframes pv-shimmer{to{background-position:-200% 0}}@keyframes pv-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pv-flip{0%{transform:rotateX(70deg);opacity:.4}to{transform:none;opacity:1}}@media(max-width:820px){.pv-grid{grid-template-columns:1fr}.pv-right{order:-1}}@media(max-width:520px){.pv-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-score,.pv-dial{width:96px;height:96px}.pv-score b{top:26px;font-size:32px}.pv-score small{top:62px}}@media(prefers-reduced-motion:reduce){.pv-step[data-state=running] .pv-dot,.pv-chip[data-state=asking] span,.pv-skel,.pv-in,.pv-score,.pv-chip,.pv-step[data-state=done] .pv-dot{animation:none}}#progress,#report{scroll-margin-top:96px}.pv-final .pv-left,.pv-final .prog-bar{display:none}.pv-final .pv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pv-final .pv-right{display:contents}.pv-final+#report .subs,#progress.pv-final~#report .subs{margin-top:24px}@media(max-width:960px){.pv-final .pv-grid{grid-template-columns:1fr}}.share-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}.share-bar .btn-sm{min-height:36px;padding:6px 14px;font-size:14px;border-radius:10px}.share-msg{font-size:13px;color:var(--muted)}.share-cta{margin:72px 0 24px;padding:32px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);display:grid;gap:12px;justify-items:start}.share-cta h2{font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:-.02em}.share-cta p{max-width:60ch}.share-link{font-size:14px;margin-left:4px}
