.wrap{max-width:1100px;margin:0 auto;padding:1.25rem 1.25rem 3rem}.bk a{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text-muted);font-size:.75rem;text-decoration:none;margin-bottom:1rem}.hero{text-align:center;padding:.5rem 0 .75rem}.hero h1{font-size:1.5rem;font-weight:800;letter-spacing:-.04em;margin-bottom:.15rem}.hero h1 span{color:var(--accent)}.hero p{color:var(--text-muted);font-size:.82rem;max-width:580px;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px 18px;margin-bottom:10px}.ct{font-size:.85rem;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:6px;justify-content:space-between;flex-wrap:wrap}.mode-tabs{display:flex;gap:4px;margin-bottom:14px;justify-content:center}.mode-tab{padding:10px 24px;border-radius:10px;border:1px solid var(--border);background:0 0;color:var(--text-dim);font-size:.85rem;cursor:pointer;font-family:inherit;font-weight:600;transition:.15s;flex:1;max-width:300px;text-align:center}.mode-tab:hover{border-color:var(--border);color:var(--text-muted)}.mode-tab.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.mode-pane{display:none}.mode-pane.show{display:block}.filter-bar{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap;align-items:center}.search-wrap{position:relative;flex:1;min-width:200px}.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.class-search{width:100%;padding:10px 14px 10px 36px;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--text);font-family:inherit;font-size:.85rem;outline:0}.class-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.class-search::placeholder{color:var(--text-dim)}.pill-group{display:flex;gap:4px;flex-wrap:wrap}.pill{padding:5px 12px;border-radius:8px;border:1px solid var(--border);background:0 0;color:var(--text-dim);font-size:.72rem;font-weight:600;cursor:pointer;transition:.15s;font-family:inherit;white-space:nowrap}.pill:hover{border-color:var(--text-muted);color:var(--text-muted)}.pill.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.pill .pill-count{display:inline-flex;min-width:16px;height:16px;align-items:center;justify-content:center;border-radius:8px;background:var(--border);font-size:.6rem;margin-left:4px;padding:0 4px}.pill.on .pill-count{background:var(--accent);color:var(--bg)}.class-list{max-height:360px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;margin-bottom:10px}.class-list::-webkit-scrollbar{width:4px}.class-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.class-item{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:.12s;font-size:.82rem;gap:8px}.class-item:hover{background:var(--card)}.class-item.selected{background:var(--accent-soft);border-left:3px solid var(--accent)}.class-item:last-child{border-bottom:none}.ci-left{display:flex;flex-direction:column;gap:2px;min-width:0}.ci-name{font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci-meta{font-size:.68rem;color:var(--text-dim);font-family:JetBrains Mono,monospace}.ci-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.ci-lines{font-size:.68rem;color:var(--text-dim);font-family:JetBrains Mono,monospace}.ci-ns{font-size:.58rem;color:var(--accent2);padding:2px 6px;border-radius:4px;background:#8f7af514;font-weight:600}.class-empty{padding:2rem;text-align:center;color:var(--text-dim);font-size:.85rem}.batch-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{padding:12px 28px;border-radius:10px;border:0;background:var(--accent);color:#fff;font-size:.88rem;font-family:inherit;font-weight:700;cursor:pointer;transition:.12s}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:8px 16px;font-size:.78rem}.btn-outline{background:0 0;border:1px solid var(--border);color:var(--text-muted)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-full{width:100%;margin-top:8px}.code-area{width:100%;min-height:250px;padding:14px;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.82rem;line-height:1.6;outline:0;resize:vertical;tab-size:4}.code-area:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.code-area::placeholder{color:var(--text-dim)}.progress-wrap{margin:12px 0}.progress-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease;width:0}.progress-text{font-size:.72rem;color:var(--text-dim);margin-top:4px;text-align:center}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:14px}@media (max-width:500px){.stat-grid{grid-template-columns:1fr 1fr}}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 12px;text-align:center;transition:.15s}.stat-card:hover{border-color:var(--accent-soft)}.stat-val{font-size:1.4rem;font-weight:800;font-family:JetBrains Mono,monospace}.stat-label{font-size:.58rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.stat-sub{font-size:.65rem;color:var(--text-dim);margin-top:2px}.chart-wrap{position:relative;margin-bottom:14px}.bar-chart{display:flex;align-items:flex-end;gap:2px;height:180px;padding:0 0 24px}.bar-col{flex:1;min-width:4px;max-width:24px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;cursor:pointer}.bar-col:hover .bar-inner{filter:brightness(1.15)}.bar-inner{width:100%;border-radius:3px 3px 0 0;transition:height .5s ease,background .2s;min-height:2px}.bar-label{position:absolute;bottom:-20px;font-size:.5rem;color:var(--text-dim);transform:rotate(-45deg);transform-origin:top left;white-space:nowrap;max-width:60px;overflow:hidden;text-overflow:ellipsis}.bar-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:.72rem;white-space:nowrap;z-index:10;box-shadow:0 4px 12px var(--shadow-md)}.bar-col:hover .bar-tooltip{display:block}.chart-legend{display:flex;gap:14px;justify-content:center;margin-top:6px;font-size:.65rem;color:var(--text-dim)}.chart-legend span{display:flex;align-items:center;gap:4px}.chart-legend .dot{width:10px;height:10px;border-radius:3px}.risk-matrix{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:1px;background:var(--border);border-radius:10px;overflow:hidden;margin-bottom:14px;font-size:.72rem}.rm-cell{background:var(--surface);padding:8px 10px;text-align:center}.rm-header{font-weight:700;color:var(--text-dim);font-size:.62rem;text-transform:uppercase;letter-spacing:.03em;background:var(--card)}.rm-label{font-weight:600;color:var(--text);text-align:right;padding-right:12px;background:var(--card)}.rm-low{background:#47e88a0f}.rm-med{background:#f5c5420f}.rm-high{background:#f26b5e0f}.rm-count{font-weight:700;font-family:JetBrains Mono,monospace;font-size:.82rem}.rm-classes{font-size:.6rem;color:var(--text-dim);margin-top:2px;max-height:40px;overflow:hidden}.scroll-x{overflow-x:auto}table.dt{width:100%;border-collapse:collapse;font-size:.78rem}.dt th{padding:8px 10px;text-align:left;border-bottom:2px solid var(--border);color:var(--text-dim);font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;cursor:pointer;user-select:none;white-space:nowrap}.dt th:hover{color:var(--accent)}.dt th .sort-arrow{font-size:.55rem;margin-left:3px;opacity:.4}.dt th.sort-active .sort-arrow{opacity:1;color:var(--accent)}.dt td{padding:7px 10px;border-bottom:1px solid var(--border);color:var(--text-muted)}.dt tr:hover td{background:var(--card)}.dt tr.expandable{cursor:pointer}.dt tr.row-expanded td{background:var(--card);border-bottom-color:transparent}.expand-icon{display:inline-block;transition:transform .2s;font-size:.65rem;margin-right:4px}.row-expanded .expand-icon{transform:rotate(90deg)}.detail-row{display:none}.detail-row.show{display:table-row}.detail-row td{padding:10px 14px;background:var(--card);border-bottom:1px solid var(--border)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.75rem}@media (max-width:600px){.detail-grid{grid-template-columns:1fr}}.detail-section h4{font-size:.7rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}.detail-section ul{list-style:none;padding:0}.detail-section li{padding:3px 0;color:var(--text-muted);font-size:.72rem;display:flex;align-items:center;gap:4px}.detail-section li:before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0}.detail-section li.soql:before{background:var(--accent2)}.detail-section li.dml:before{background:var(--coral)}.detail-section li.method:before{background:var(--accent)}.detail-section li.issue:before{background:var(--amber)}.tg{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.6rem;font-weight:600}.tg-g{background:#47e88a1a;color:var(--accent)}.tg-r{background:#f26b5e1a;color:var(--coral)}.tg-a{background:#f5c5421a;color:var(--amber)}.tg-b{background:#4a9cf51a;color:#4a9cf5}.tg-p{background:#8f7af51a;color:var(--accent2)}.export-bar{display:flex;gap:8px;justify-content:flex-end;margin-bottom:10px;flex-wrap:wrap}.ap-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin-bottom:12px}.ap-card{padding:12px 14px;border-radius:10px;border:1px solid var(--border);display:flex;align-items:flex-start;gap:10px;font-size:.82rem;transition:.15s}.ap-card:hover{border-color:var(--accent-soft)}.ap-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}.ap-card-name{font-weight:600;color:var(--text);font-size:.78rem}.ap-card-count{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--text-dim)}.ap-card-classes{font-size:.65rem;color:var(--text-dim);margin-top:2px;line-height:1.4}.refactor{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}@media (max-width:600px){.refactor{grid-template-columns:1fr}}.ref-panel{padding:10px 14px;border-radius:10px;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1.5;white-space:pre-wrap;overflow-x:auto}.ref-before{background:#f26b5e0d;border:1px solid rgba(242,107,94,.12);color:var(--coral)}.ref-after{background:#47e88a0d;border:1px solid rgba(71,232,138,.12);color:var(--accent)}.ref-label{font-size:.65rem;font-weight:700;font-family:inherit;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.skel{background:var(--border);border-radius:6px;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.class-select-wrap{margin-bottom:10px}.class-select-row{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}.class-typeahead-wrap{position:relative;flex:1;min-width:200px}.class-typeahead-input{width:100%;padding:10px 14px 10px 36px;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--text);font-family:inherit;font-size:.85rem;outline:0;box-sizing:border-box}.class-typeahead-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.class-typeahead-input::placeholder{color:var(--text-dim)}.class-typeahead-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.class-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;max-height:220px;overflow-y:auto;z-index:100;box-shadow:0 8px 24px #0000002e;display:none}.class-dropdown.open{display:block}.class-dropdown::-webkit-scrollbar{width:4px}.class-dropdown::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.class-dd-item{padding:9px 14px;cursor:pointer;font-size:.82rem;color:var(--text-muted);transition:.1s;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.class-dd-item:last-child{border-bottom:none}.class-dd-item:hover,.class-dd-item.focused{background:var(--card);color:var(--text)}.class-dd-item strong{color:var(--accent)}.class-dd-ns{font-size:.6rem;color:var(--accent2);padding:2px 5px;border-radius:4px;background:#8f7af514;font-weight:600;margin-left:6px;flex-shrink:0}.class-dd-empty{padding:12px 14px;color:var(--text-dim);font-size:.8rem;text-align:center}.chart-tabs{display:flex;gap:4px;margin-bottom:12px}.chart-tab{padding:6px 16px;border-radius:8px;border:1px solid var(--border);background:0 0;color:var(--text-dim);font-size:.75rem;cursor:pointer;font-family:inherit;font-weight:600;transition:.12s}.chart-tab:hover{border-color:var(--border);color:var(--text-muted)}.chart-tab.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chart-pane{display:none}.chart-pane.show{display:block}.treemap-wrap{position:relative;width:100%;height:280px;overflow:hidden;border-radius:10px;border:1px solid var(--border);background:var(--card);margin-bottom:8px}.treemap-cell{position:absolute;box-sizing:border-box;border:2px solid var(--surface);border-radius:4px;cursor:pointer;overflow:hidden;transition:.12s;display:flex;align-items:flex-end}.treemap-cell:hover{filter:brightness(1.12);z-index:5}.treemap-label{padding:4px 6px;font-size:.55rem;font-weight:700;color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.5);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;background:linear-gradient(transparent,#00000059)}.treemap-tooltip{display:none;position:fixed;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-size:.72rem;z-index:200;box-shadow:0 4px 16px #00000038;pointer-events:none;max-width:260px}.treemap-tooltip.visible{display:block}.histogram-wrap{display:flex;align-items:flex-end;gap:6px;height:160px;padding:0 0 24px;margin-bottom:8px}.hist-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;cursor:default}.hist-bar{width:100%;border-radius:4px 4px 0 0;min-height:2px;transition:height .45s ease}.hist-label{position:absolute;bottom:-22px;font-size:.68rem;color:var(--text-dim);white-space:nowrap;text-align:center}.hist-count{font-size:.6rem;font-weight:700;color:var(--text);margin-bottom:2px;font-family:JetBrains Mono,monospace}.hist-pct{font-size:.58rem;color:var(--text-dim)}@media print{body{background:#fff!important;color:#1a1a1a!important;font-family:Inter,Helvetica,Arial,sans-serif!important;font-size:9pt!important;line-height:1.5!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}nav,footer,.bk,.mode-tabs,.filter-bar,.export-bar,.batch-bar,#progressWrap,.ap-summary,.refactorSection,.chart-wrap,.sf-connect-prompt,.sf-banner,.sf-modal-overlay,.mode-pane,.hero,.stat-grid,.risk-matrix,.scroll-x,.wrap,.card,.pill-group,.class-search,.class-typeahead-wrap,.class-list,.dt{display:none!important}#pdfReport{display:block!important}@page{size:A4;margin:16mm 14mm 20mm}.pdf-cover{page-break-after:always;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center}.pdf-cover-logo{width:48px;height:48px;margin-bottom:12px;border-radius:50%;background:#00a1e0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Georgia,serif;font-style:italic;font-size:24pt;font-weight:700}.pdf-cover h1{font-size:22pt;font-weight:800;margin:0 0 4px;letter-spacing:-.02em;color:#1a1a1a}.pdf-cover h2{font-size:11pt;font-weight:400;color:#666;margin:0 0 20px}.pdf-cover-meta{font-size:8pt;color:#888;line-height:1.8}.pdf-cover-score{margin:24px 0;padding:16px 32px;border:3px solid #1a1a1a;border-radius:12px;display:inline-block}.pdf-cover-score .big{font-size:36pt;font-weight:800;font-family:JetBrains Mono,monospace;line-height:1}.pdf-cover-score .sublbl{font-size:7pt;text-transform:uppercase;letter-spacing:.1em;color:#666;display:block;margin-top:2px}.pdf-cover-grade{font-size:14pt;font-weight:800;margin-top:6px;letter-spacing:.05em}.pdf-cover-grade.grade-a{color:#074}.pdf-cover-grade.grade-b{color:#285}.pdf-cover-grade.grade-c{color:#960}.pdf-cover-grade.grade-d{color:#c50}.pdf-cover-grade.grade-f{color:#c00}.pdf-page{padding:0;page-break-before:always}.pdf-page:first-of-type{page-break-before:auto}.pdf-section-title{font-size:13pt;font-weight:800;color:#1a1a1a;border-bottom:2px solid #1a1a1a;padding-bottom:6px;margin:0 0 14px;letter-spacing:-.02em}.pdf-section{margin-bottom:22px}.pdf-stat-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.pdf-stat{border:1px solid #ddd;border-radius:6px;padding:10px 14px;min-width:90px;text-align:center;flex:1}.pdf-stat .val{font-size:18pt;font-weight:800;font-family:JetBrains Mono,monospace}.pdf-stat .lbl{font-size:6.5pt;color:#888;text-transform:uppercase;letter-spacing:.08em;margin-top:2px}.pdf-stat.danger{border-color:#e8c0c0;background:#fff5f5}.pdf-stat.danger .val{color:#c00}.pdf-stat.good{border-color:#b8e0cc;background:#f5fff8}.pdf-stat.good .val{color:#074}.pdf-toc{margin-bottom:20px}.pdf-toc-title{font-size:10pt;font-weight:700;margin-bottom:6px}.pdf-toc-item{display:flex;justify-content:space-between;font-size:8pt;padding:3px 0;border-bottom:1px dotted #ddd}.pdf-toc-item .name{font-weight:600}.pdf-toc-item .meta{color:#666}.pdf-dist-row{display:flex;gap:4px;align-items:flex-end;height:60px;margin-bottom:4px}.pdf-dist-bar{flex:1;border-radius:2px 2px 0 0;position:relative}.pdf-dist-bar .bar-count{position:absolute;top:-12px;left:50%;transform:translate(-50%);font-size:6.5pt;font-weight:700}.pdf-dist-labels{display:flex;gap:4px;margin-bottom:14px}.pdf-dist-labels span{flex:1;font-size:6pt;text-align:center;color:#888}.pdf-class-block{border:1px solid #d0d0d0;border-radius:6px;margin-bottom:14px;padding:12px 14px;break-inside:avoid}.pdf-class-header{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #eee}.pdf-class-rank{width:24px;height:24px;border-radius:50%;background:#1a1a1a;color:#fff;font-size:8pt;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pdf-class-name{font-size:11pt;font-weight:700;flex:1}.pdf-risk-badge{font-size:7pt;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:3px}.pdf-risk-high{background:#ffe0e0;color:#c00}.pdf-risk-medium{background:#fff3d4;color:#960}.pdf-risk-low{background:#e0f5e8;color:#074}.pdf-class-metrics{display:flex;gap:16px;font-size:7.5pt;color:#555;margin-bottom:6px;flex-wrap:wrap}.pdf-class-metrics span{display:flex;align-items:center;gap:3px}.pdf-class-metrics strong{color:#1a1a1a}.pdf-issue-block{margin:8px 0;padding:8px 10px;border-left:3px solid #c00;background:#fff8f8;border-radius:0 4px 4px 0}.pdf-issue-block.warning{border-left-color:#c80;background:#fffcf5}.pdf-issue-title{font-size:8pt;font-weight:700;color:#1a1a1a;margin-bottom:3px;display:flex;align-items:center;gap:6px}.pdf-issue-title .sev{font-size:6pt;padding:1px 5px;border-radius:2px;color:#fff}.pdf-issue-title .sev-crit{background:#c00}.pdf-issue-title .sev-warn{background:#c80}.pdf-issue-desc{font-size:7pt;color:#666;margin-bottom:4px}.pdf-code{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:7pt;white-space:pre;overflow-x:hidden;word-break:break-all;margin:4px 0 6px;color:#1a1a1a;line-height:1.6}.pdf-code .ln{color:#999;user-select:none;display:inline-block;width:24px;text-align:right;margin-right:8px;font-size:6.5pt}.pdf-code .hl{background:#ffe0e0;display:inline;border-radius:2px;padding:0 2px}.pdf-method-table{width:100%;border-collapse:collapse;font-size:7.5pt;margin-top:6px}.pdf-method-table th{text-align:left;border-bottom:1px solid #ccc;padding:3px 6px;font-size:6.5pt;text-transform:uppercase;letter-spacing:.05em;color:#888}.pdf-method-table td{padding:3px 6px;border-bottom:1px solid #f0f0f0}.pdf-method-table .grade{font-weight:800;width:20px;text-align:center}.pdf-grade-a{color:#074}.pdf-grade-b{color:#285}.pdf-grade-c{color:#960}.pdf-grade-d{color:#c50}.pdf-grade-f{color:#c00}.pdf-reco{margin:8px 0;padding:10px 12px;border:1px solid #ddd;border-radius:4px;break-inside:avoid}.pdf-reco-title{font-size:8.5pt;font-weight:700;margin-bottom:4px;color:#1a1a1a}.pdf-reco-desc{font-size:7.5pt;color:#555;line-height:1.5;margin-bottom:6px}.pdf-reco-before{background:#fff5f5;border:1px solid #e8c0c0;border-radius:3px;padding:6px 8px;font-family:JetBrains Mono,monospace;font-size:6.5pt;white-space:pre-wrap;margin-bottom:4px;color:#800}.pdf-reco-after{background:#f5fff8;border:1px solid #b8e0cc;border-radius:3px;padding:6px 8px;font-family:JetBrains Mono,monospace;font-size:6.5pt;white-space:pre-wrap;color:#052}.pdf-reco-label{font-size:6pt;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.pdf-reco-label.before{color:#c00}.pdf-reco-label.after{color:#074}.pdf-summary-table{width:100%;border-collapse:collapse;font-size:7.5pt;margin-bottom:14px}.pdf-summary-table th{text-align:left;background:#f5f5f5;padding:5px 8px;border:1px solid #ddd;font-size:6.5pt;text-transform:uppercase;letter-spacing:.04em;color:#666}.pdf-summary-table td{padding:5px 8px;border:1px solid #eee}.pdf-summary-table tr:nth-child(2n) td{background:#fafafa}.pdf-footer{text-align:center;font-size:7pt;color:#aaa;margin-top:24px;padding-top:8px;border-top:1px solid #ddd}.pdf-footer a{color:#00a1e0;text-decoration:none}.pdf-page-num{position:fixed;bottom:10mm;right:14mm;font-size:7pt;color:#ccc}}#pdfReport{display:none}.progress-meta{display:flex;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.progress-pct{font-size:1.6rem;font-weight:800;font-family:JetBrains Mono,monospace;color:var(--accent);line-height:1}.progress-detail{display:flex;flex-direction:column;gap:2px}.progress-counter{font-size:.78rem;color:var(--text-muted);font-weight:600}.progress-classname{font-size:.72rem;color:var(--text-dim);font-family:JetBrains Mono,monospace;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-eta{font-size:.68rem;color:var(--text-dim)}