.audit-app{font-family:var(--bs-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);color:var(--pst-color-text-base, #212529);line-height:1.6}.audit-app *,.audit-app *:before,.audit-app *:after{box-sizing:border-box}.audit-app .page{max-width:100%;padding:0;margin:0}.audit-app .page>p.muted:first-of-type{margin-bottom:20px}.audit-app .card{background:var(--pst-color-surface, #fff);border:1px solid var(--pst-color-border, #dee2e6);border-radius:10px;padding:18px;margin-bottom:16px}.audit-app .label{font-weight:600;display:block;margin-bottom:8px}.audit-app .muted{color:var(--pst-color-text-muted, #6c757d)}.audit-app button{border:0;border-radius:6px;padding:8px 16px;background:var(--bs-primary, #0d6efd);color:#fff;font-weight:600;cursor:pointer;font-size:14px;transition:background .15s}.audit-app button:hover:not(:disabled){opacity:.9}.audit-app button:disabled{opacity:.55;cursor:not-allowed}.audit-app .error{background:var(--bs-danger-bg-subtle, #fff1f1);color:var(--bs-danger-text-emphasis, #842029);border:1px solid var(--bs-danger-border-subtle, #f5c2c7);border-radius:8px;padding:10px 12px;margin-bottom:16px}.audit-app .preview{max-height:260px;overflow:auto;white-space:pre-wrap;background:var(--pst-color-surface, #f8f9fa);border:1px solid var(--pst-color-border, #dee2e6);border-radius:6px;padding:10px;font-size:12px;font-family:var(--bs-font-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace)}.audit-app .row{display:flex;justify-content:space-between;align-items:center}.audit-app .formRow{display:flex;gap:12px;align-items:center;margin:10px 0}.audit-app .modelInput{flex:1;border:1px solid var(--pst-color-border, #dee2e6);border-radius:6px;padding:7px 10px;font-size:14px;background:var(--pst-color-surface, #fff);color:var(--pst-color-text-base, #212529)}.audit-app .aiConfigCard{border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;background:var(--bs-tertiary-bg, #f8f9fa);padding:12px;margin:10px 0}.audit-app .reportCard{padding:22px}.audit-app .summaryHero{margin-top:10px;display:flex;justify-content:space-between;gap:16px;align-items:stretch}.audit-app .summaryMain{flex:1}.audit-app .summaryTag{color:var(--pst-color-text-muted, #6c757d);margin:0 0 6px;font-size:14px}.audit-app .summaryTitle{margin:0 0 10px;font-size:24px;line-height:1.2;font-weight:700}.audit-app .summaryText{margin:0;color:var(--pst-color-text-base, #212529);font-size:15px;line-height:1.7}.audit-app .scoreBadge{min-width:180px;border:1px solid #e6d9ae;border-radius:10px;background:#fffaf0;padding:14px;text-align:center}.audit-app .scoreLabel{color:#7a6a40;font-weight:600;font-size:14px}.audit-app .scoreValue{color:#ca7b00;font-size:36px;font-weight:700;line-height:1.15}.audit-app .scoreStatus{display:inline-block;border-radius:999px;border:1px solid #e7cd8f;color:#916200;padding:2px 10px;font-size:12px;font-weight:600}.audit-app .progressWrap{margin:18px 0 14px}.audit-app .progressBar{width:100%;height:8px;background:var(--bs-secondary-bg, #e9ecef);border-radius:999px;overflow:hidden}.audit-app .progressFill{height:100%;background:linear-gradient(90deg,#f6b300,#ffcc45)}.audit-app .statsGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.audit-app .statCard{border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;padding:12px 14px;background:var(--pst-color-surface, #fff)}.audit-app .statName{color:var(--pst-color-text-muted, #6c757d);font-size:13px}.audit-app .statValue{margin-top:8px;font-size:26px;font-weight:700;line-height:1}.audit-app .statError .statValue{color:var(--bs-danger, #dc3545)}.audit-app .statWarn .statValue{color:#c68d00}.audit-app .statInfo .statValue{color:var(--bs-primary, #0d6efd)}.audit-app .statPass .statValue{color:var(--bs-success, #198754)}.audit-app .scoreList{margin-top:18px;border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;padding:14px}.audit-app .scoreItem+.scoreItem{margin-top:12px}.audit-app .scoreItemTop{display:flex;justify-content:space-between;margin-bottom:6px;font-weight:600;font-size:14px}.audit-app .scoreTrack{height:6px;background:var(--bs-secondary-bg, #e9ecef);border-radius:999px;overflow:hidden}.audit-app .scoreTrackFill{height:100%;background:#f3b61f}.audit-app .aiCard{margin-top:18px;border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;background:var(--bs-tertiary-bg, #f8f9fa);padding:14px}.audit-app .aiCard h3{margin-top:0}.audit-app .viewerCard{margin-top:16px;border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;padding:12px;background:var(--pst-color-surface, #fff)}.audit-app .viewerHeader{margin-bottom:8px}.audit-app .viewerHeader h3{margin:4px 0}.audit-app .viewerLayout{display:grid;grid-template-columns:1fr 300px;gap:12px}.audit-app .viewerCanvasWrap{min-height:460px;border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;overflow:hidden;background:var(--bs-tertiary-bg, #f8f9fa)}.audit-app .viewerCanvas{width:100%;height:100%;min-height:460px}.audit-app .viewerPanel{border:1px solid var(--pst-color-border, #dee2e6);border-radius:8px;background:var(--pst-color-surface, #fff);padding:10px}.audit-app .viewerSection+.viewerSection{margin-top:12px}.audit-app .viewerLabel{font-size:12px;color:var(--pst-color-text-muted, #6c757d);margin-bottom:6px;font-weight:600}.audit-app .viewerSelect{width:100%;border:1px solid var(--pst-color-border, #dee2e6);border-radius:6px;padding:6px 10px;background:var(--pst-color-surface, #fff);color:var(--pst-color-text-base, #212529);font-size:14px}.audit-app .poseList{display:flex;flex-wrap:wrap;gap:6px}.audit-app .poseBtn{padding:5px 10px;font-size:12px;background:var(--bs-secondary-bg, #e9ecef);color:var(--pst-color-text-base, #212529)}.audit-app .activePoseBtn{background:var(--bs-primary, #0d6efd);color:#fff}.audit-app .distanceBox{border:1px solid var(--pst-color-border, #dee2e6);border-radius:6px;background:var(--bs-tertiary-bg, #f8f9fa);padding:8px;font-size:13px;line-height:1.45;font-family:var(--bs-font-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace)}.audit-app .meshTagList{display:flex;flex-wrap:wrap;gap:6px}.audit-app .meshTag{font-size:11px;border-radius:999px;border:1px solid var(--bs-primary-border-subtle, #9ec5fe);color:var(--bs-primary-text-emphasis, #052c65);background:var(--bs-primary-bg-subtle, #cfe2ff);padding:3px 8px}.audit-app .legendList{border:1px solid var(--pst-color-border, #dee2e6);border-radius:6px;background:var(--bs-tertiary-bg, #f8f9fa);padding:8px;font-size:12px;line-height:1.6}.audit-app .legendDot{display:inline-block;width:9px;height:9px;border-radius:999px;margin-right:6px}.audit-app .legendRed{background:#ef4444}.audit-app .legendPink{background:#f43f5e}.audit-app .legendGreen{background:#10b981}.audit-app .legendBlue{background:#3b82f6}.audit-app .legendOrange{background:#f59e0b}@media(max-width:900px){.audit-app .summaryHero{flex-direction:column}.audit-app .summaryTitle{font-size:20px}.audit-app .summaryText{font-size:14px}.audit-app .statsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-app .viewerLayout{grid-template-columns:1fr}}.audit-app table{width:100%;border-collapse:collapse}.audit-app th,.audit-app td{border-bottom:1px solid var(--pst-color-border, #dee2e6);text-align:left;padding:8px 4px}.audit-app input[type=file]{font-size:14px}
