:root{--audit-error:var(--error);--audit-warning:var(--az-warn);--audit-info:var(--az-ink-2);--audit-ok:var(--az-ok)}.audit-page{display:flex;flex-direction:column;min-height:100vh}.audit-header{border-bottom:1px solid var(--border-secondary);background-color:var(--bg-secondary)}.audit-header-inner{max-width:1440px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.audit-identity{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 260px}.audit-identity-name{font-family:var(--font-heading);font-style:normal;font-size:1.6rem;line-height:1.1;color:var(--text-primary)}.audit-identity-job{font-family:var(--font-tech);font-size:.8125rem;letter-spacing:0;color:var(--text-secondary)}.audit-score{display:flex;align-items:center;gap:14px}.audit-ring{position:relative;width:72px;height:72px;flex-shrink:0}.audit-ring svg{width:72px;height:72px;transform:rotate(-90deg)}.audit-ring-track{fill:none;stroke:var(--border-secondary);stroke-width:6}.audit-ring-value{fill:none;stroke-width:6;stroke-linecap:butt;transition:stroke-dashoffset .6s ease}.audit-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-tech);line-height:1}.audit-ring-grade{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.audit-ring-score{font-size:.8125rem;color:var(--text-secondary);margin-top:2px}.audit-score-text{display:flex;flex-direction:column;gap:6px}.audit-score-verdict{font-family:var(--font-tech);font-size:.8125rem;font-weight:600;letter-spacing:0;color:var(--text-primary)}.audit-counts{display:flex;gap:6px;flex-wrap:wrap}.audit-count{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:3px 9px;font-family:var(--font-tech);font-size:.8125rem;font-weight:600;letter-spacing:0;border:1px solid var(--border-ui);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.audit-count[aria-pressed=true]{border-color:var(--border-primary);background:var(--text-primary);color:var(--bg-primary)}.audit-count[aria-pressed=true] .audit-dot{box-shadow:none;outline:1px solid var(--az-panel)}.audit-dot{width:8px;height:8px;flex-shrink:0;display:inline-block}.audit-dot-error{background:var(--audit-error)}.audit-dot-warning{background:var(--audit-warning)}.audit-dot-info{background:var(--audit-info)}.audit-actions{display:flex;gap:8px;align-items:center;margin-left:auto}.audit-body{flex:1;max-width:1440px;width:100%;margin:0 auto;padding:24px;display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}@media (max-width:1100px){.audit-body{grid-template-columns:minmax(0,1fr)}}.audit-stage{position:sticky;top:16px}@media (max-width:1100px){.audit-stage{position:static}}.audit-stage-frame{position:relative;margin:0 auto;border:1px solid var(--border-secondary);background:#fff}.audit-stage-scaled{transform-origin:top left}.audit-overlay{position:absolute;inset:0;pointer-events:none}.audit-box{position:absolute;pointer-events:auto;cursor:pointer;border:2px solid var(--audit-color,var(--audit-warning));background:color-mix(in srgb,var(--audit-color,var(--audit-warning)) 8%,transparent);transition:background-color .12s ease,box-shadow .12s ease}.audit-box-active,.audit-box:hover{background:color-mix(in srgb,var(--audit-color,var(--audit-warning)) 20%,transparent);box-shadow:none;outline:3px solid color-mix(in srgb,var(--audit-color,var(--audit-warning)) 35%,transparent);outline-offset:0;z-index:2}.audit-box-dim{opacity:.35}.audit-box-marks{position:absolute;top:-9px;right:-2px;display:flex;gap:2px}.audit-mark{min-width:18px;height:18px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;line-height:1;color:#fff;background:var(--audit-color,var(--audit-warning));border:1px solid #fff}.audit-mark,.audit-stage-hint{font-family:var(--font-tech);font-size:.8125rem}.audit-stage-hint{margin-top:8px;text-align:center;letter-spacing:0;color:var(--text-muted)}.audit-panel{display:flex;flex-direction:column;gap:16px}.audit-empty{padding:24px;text-align:center;border:1px solid var(--audit-ok);background:var(--bg-tertiary);font-family:var(--font-tech);font-size:.8125rem;letter-spacing:0;color:var(--audit-ok)}.audit-group{border:1px solid var(--border-secondary);background:var(--bg-secondary)}.audit-group-title{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-family:var(--font-tech);font-size:.8125rem;font-weight:600;letter-spacing:0;color:var(--text-secondary);border-bottom:1px solid var(--border-secondary);background:var(--bg-tertiary)}.audit-group-count{color:var(--text-muted);font-weight:500}.audit-finding{display:grid;grid-template-columns:26px 1fr;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border-secondary);border-left:3px solid transparent;cursor:pointer;transition:background-color .12s ease,border-color .12s ease;text-align:left;width:100%;background:transparent}.audit-finding:last-child{border-bottom:none}.audit-finding-active,.audit-finding:hover{background:var(--bg-hover)}.audit-finding-active{border-left-color:var(--audit-color,var(--audit-warning))}.audit-finding-num{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-tech);font-size:.8125rem;font-weight:700;color:#fff;background:var(--audit-color,var(--audit-warning))}.audit-finding-title{font-family:var(--font-body);font-weight:600;font-size:1rem;color:var(--text-primary);line-height:1.3}.audit-finding-sev{font-family:var(--font-tech);font-size:.8125rem;letter-spacing:0;color:var(--audit-color,var(--audit-warning));margin-left:6px}.audit-finding-detail{margin-top:4px;font-size:.9375rem;line-height:1.45;color:var(--text-secondary)}.audit-finding-excerpt{margin-top:6px;padding:6px 8px;font-family:var(--font-tech);font-size:.8125rem;line-height:1.4;color:var(--text-primary);background:var(--bg-tertiary);border-left:2px solid var(--border-secondary);white-space:pre-wrap;word-break:break-word}.audit-finding-actions{margin-top:8px;display:flex;gap:8px}.audit-manual{border:1px solid var(--border-secondary);background:var(--bg-secondary)}.audit-manual-item{display:grid;grid-template-columns:20px 1fr;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border-secondary);align-items:start}.audit-manual-item:last-child{border-bottom:none}.audit-manual-item input[type=checkbox]{width:16px;height:16px;margin-top:2px;accent-color:var(--text-primary);border-radius:0}.audit-manual-title{font-weight:600;font-size:.85rem;color:var(--text-primary)}.audit-manual-item-done .audit-manual-title{text-decoration:line-through;color:var(--text-muted)}.audit-manual-detail{font-size:.9375rem;color:var(--text-secondary);line-height:1.4}.audit-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border-secondary);background:var(--bg-secondary)}.audit-stat{padding:10px 12px;border-right:1px solid var(--border-secondary)}.audit-stat:last-child{border-right:none}.audit-stat-value{font-family:var(--font-tech);font-size:1.1rem;font-weight:700;color:var(--text-primary);line-height:1}.audit-stat-label{margin-top:4px;font-family:var(--font-tech);font-size:.8125rem;letter-spacing:0;color:var(--text-muted)}.audit-stat-over .audit-stat-value{color:var(--audit-error)}@media (max-width:600px){.audit-mark{display:none}}