.features[data-v-61ec298f]{max-width:880px;margin:0 auto;padding:0 32px 64px}.features-grid[data-v-61ec298f]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.feature-card[data-v-61ec298f]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:28px 24px;box-shadow:var(--shadow-sm);transition:all .2s}.feature-card[data-v-61ec298f]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.feature-icon[data-v-61ec298f]{font-size:28px;margin-bottom:12px}.feature-card h3[data-v-61ec298f]{font-size:17px;font-weight:700;margin-bottom:8px}.feature-card p[data-v-61ec298f]{font-size:14px;color:var(--color-text-muted);line-height:1.5}.bottom-cta[data-v-61ec298f]{text-align:center;padding:64px 32px 80px;border-top:1px solid var(--color-border);max-width:600px;margin:0 auto}.bottom-cta h2[data-v-61ec298f]{font-size:28px;font-weight:800;margin-bottom:12px;letter-spacing:-.02em}.bottom-cta p[data-v-61ec298f]{font-size:16px;color:var(--color-text-muted);margin-bottom:28px}@media(max-width:768px){.features-grid[data-v-61ec298f]{grid-template-columns:1fr}.bottom-cta[data-v-61ec298f]{padding:48px 20px 60px}.bottom-cta h2[data-v-61ec298f]{font-size:24px}}.export-panel-backdrop[data-v-f5e6374d]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:199}:root{--cb-rust: #b86a4d;--cb-rust-light: #c87d62;--cb-gold: #e8b84a;--cb-sage: #8aab98;--cb-charcoal: #2d2d2d;--cb-black: #1a1a1a;--cb-tan: #d4c4a8;--cb-tan-light: #e8dcc8;--color-bg: #faf7f2;--color-bg-alt: #f5f0e8;--color-bg-card: #ffffff;--color-border: #d4c4a8;--color-border-strong: rgba(0, 0, 0, .15);--color-text: #2d2d2d;--color-text-muted: #5a5a5a;--color-text-dim: #888888;--severity-critical: #dc2626;--severity-critical-bg: #fef2f2;--severity-high: #ea580c;--severity-high-bg: #fff7ed;--severity-medium: #ca8a04;--severity-medium-bg: #fefce8;--severity-low: #2563eb;--severity-low-bg: #eff6ff;--tier-error: #dc2626;--tier-error-bg: #fef2f2;--tier-optimization: #d97706;--tier-optimization-bg: #fffbeb;--tier-info: #6b7280;--tier-info-bg: #f3f4f6;--health-good: #16a34a;--health-fair: #ca8a04;--health-poor: #ea580c;--health-critical: #dc2626;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 30px rgba(0,0,0,.12);--font-mono: "SF Mono", "Fira Code", "Consolas", monospace;--sidebar-width: 240px;--topbar-height: 56px}[data-theme=dark]{--color-bg: #1a1814;--color-bg-alt: #22201a;--color-bg-card: #2a2820;--color-border: rgba(255, 255, 255, .12);--color-border-strong: rgba(255, 255, 255, .2);--color-text: #f5f2ed;--color-text-muted: #a0a0a0;--color-text-dim: #6a6a6a;--severity-critical-bg: #1c0f0f;--severity-high-bg: #1c150f;--severity-medium-bg: #1c1a0f;--severity-low-bg: #0f131c;--tier-error-bg: #1c0f0f;--tier-optimization-bg: #1c180f;--tier-info-bg: #1a1a1e;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 30px rgba(0,0,0,.5)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}.header{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--color-border);background:var(--color-bg);position:sticky;top:0;z-index:100}.header-logo{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;color:var(--color-text);text-decoration:none}.header-logo svg{width:28px;height:28px}.header-actions{display:flex;align-items:center;gap:12px}.header-cta{display:inline-flex;align-items:center;padding:7px 18px;background:var(--cb-rust);color:#fff;border-radius:var(--radius-sm);font-size:14px;font-weight:600;text-decoration:none;transition:all .2s}.header-cta:hover{background:var(--cb-rust-light);transform:translateY(-1px)}.theme-toggle{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 10px;cursor:pointer;color:var(--color-text-muted);font-size:16px;transition:all .2s}.theme-toggle:hover{border-color:var(--color-border-strong);color:var(--color-text)}.hero{text-align:center;padding:80px 32px 40px;max-width:720px;margin:0 auto}.hero h1{font-size:40px;font-weight:800;line-height:1.2;margin-bottom:16px;letter-spacing:-.02em}.hero h1 span{color:var(--cb-rust)}.hero p{font-size:18px;color:var(--color-text-muted);max-width:560px;margin:0 auto 40px}.upload-zone{border:2px dashed var(--color-border-strong);border-radius:var(--radius-lg);padding:60px 40px;text-align:center;cursor:pointer;transition:all .2s;max-width:600px;margin:0 auto;background:var(--color-bg-card)}.upload-zone:hover,.upload-zone.dragover{border-color:var(--cb-rust);background:var(--severity-critical-bg)}.upload-zone.dragover{transform:scale(1.01)}.upload-zone-icon{font-size:48px;margin-bottom:16px;opacity:.6}.upload-zone h3{font-size:18px;margin-bottom:8px}.upload-zone p{font-size:14px;color:var(--color-text-dim)}.upload-zone input[type=file]{display:none}.upload-error{color:var(--severity-critical);font-size:14px;margin-top:12px;display:none}.upload-error.visible{display:block}.loading{display:none;text-align:center;padding:60px 32px}.loading.visible{display:block}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--cb-rust);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:var(--color-text-muted);font-size:16px}.results{display:none}.results.visible{display:flex}.report-sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:var(--color-bg-card);border-right:1px solid var(--color-border);z-index:100;display:flex;flex-direction:column;overflow:hidden}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 20px;height:56px;border-bottom:1px solid var(--color-border);font-size:16px;font-weight:600;color:var(--color-text);flex-shrink:0}.sidebar-logo svg{width:32px;height:32px;flex-shrink:0}.sidebar-container-info{padding:14px 20px;border-bottom:1px solid var(--color-border);font-size:12px;color:var(--color-text-muted);line-height:1.7;flex-shrink:0}.sidebar-container-info strong{display:block;font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:2px}.sidebar-container-info span{display:block;color:var(--color-text-dim)}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;color:var(--color-text-muted);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s;font-family:inherit;text-align:left;width:100%}.sidebar-nav-item:hover{background:var(--color-bg-alt);color:var(--color-text)}.sidebar-nav-item.active{background:var(--cb-tan-light);color:var(--cb-rust)}[data-theme=dark] .sidebar-nav-item.active{background:#b86a4d26;color:var(--cb-rust-light)}.sidebar-nav-icon{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.sidebar-nav-icon svg{width:18px;height:18px}.sidebar-nav-item.active .sidebar-nav-icon svg{stroke:var(--cb-rust)}[data-theme=dark] .sidebar-nav-item.active .sidebar-nav-icon svg{stroke:var(--cb-rust-light)}.sidebar-nav-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;font-size:11px;font-weight:700;line-height:1;color:#fff;background:var(--cb-rust);border-radius:10px}.sidebar-nav-item.active .sidebar-nav-badge{background:var(--cb-rust);color:#fff}.report-main{flex:1;margin-left:var(--sidebar-width);min-height:100vh;position:relative}.report-main:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle,var(--color-border) 1px,transparent 1px);background-size:24px 24px;opacity:.3;pointer-events:none;z-index:0}.report-tab-panels{max-width:1000px;padding:0 32px 80px;position:relative;z-index:1}.report-topbar{position:sticky;top:0;height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:50}.report-topbar-title{font-size:16px;font-weight:600;color:var(--color-text)}.panel-header{padding:24px 0 20px;margin-bottom:8px;border-bottom:1px solid var(--color-border)}.panel-header-title{font-size:22px;font-weight:800;color:var(--color-text);margin-bottom:6px;letter-spacing:-.01em}.panel-header-desc{font-size:14px;color:var(--color-text-muted);line-height:1.5;max-width:640px}body.has-sidebar .header{display:none}body.has-sidebar .sidebar-toggle{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 8px;cursor:pointer;color:var(--color-text-muted);display:none;align-items:center;justify-content:center;transition:all .2s}.sidebar-toggle:hover{border-color:var(--color-border-strong);color:var(--color-text)}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:99}.container-identity{display:flex;align-items:center;gap:24px;padding:8px 24px;background:var(--color-bg-alt);border-bottom:1px solid var(--color-border);font-size:13px;color:var(--color-text-muted);flex-wrap:wrap}.container-identity-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.container-identity-label{font-weight:600;color:var(--color-text-dim)}.report-tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--color-border);margin-bottom:32px;padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--color-bg);position:sticky;top:var(--header-height, 57px);z-index:99}.report-tab-bar::-webkit-scrollbar{display:none}.report-tab{padding:10px 18px;font-size:14px;font-weight:600;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all .2s;font-family:inherit}.report-tab:hover{color:var(--color-text)}.report-tab.active{color:var(--cb-rust);border-bottom-color:var(--cb-rust)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;margin-left:6px;font-size:11px;font-weight:700;line-height:1;color:#fff;background:var(--cb-rust);border-radius:10px;vertical-align:middle}.report-tab-panel{display:none}.report-tab-panel.active{display:block}.summary-hero{display:flex;align-items:center;gap:32px;padding:32px 0 40px}.summary-hero .health-ring{width:140px;height:140px;margin:0;flex-shrink:0}.summary-hero .health-ring svg{width:140px;height:140px}.summary-hero .health-ring-score{font-size:36px}.summary-hero .health-ring-label{font-size:12px}.summary-hero-info{flex:1}.summary-hero-info .health-grade{margin-bottom:4px}.summary-hero-info .health-summary{margin-bottom:0}.category-subscores{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.subscore-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;text-align:center;box-shadow:var(--shadow-sm);cursor:pointer;transition:all .2s}.subscore-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.subscore-mini-gauge{display:block;margin:0 auto 8px}.subscore-value{font-size:20px;font-weight:800;line-height:1;margin-bottom:4px}.subscore-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.score-deductions{margin-top:8px;font-size:13px;color:var(--color-text-muted);display:flex;flex-wrap:wrap;align-items:center;gap:4px}.score-deduction-item{white-space:nowrap}.score-deduction-sep{color:var(--color-text-dim);margin:0 2px}.whats-working{background:#f0faf3;border:1px solid #c8e6c9;border-radius:var(--radius-md);padding:20px 24px;margin-bottom:32px}[data-theme=dark] .whats-working{background:#1a2e1f;border-color:#2e5a32}.whats-working-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--health-good);margin-bottom:12px}.whats-working-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:14px;color:var(--color-text)}.whats-working-item svg{flex-shrink:0}.copy-summary-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:var(--color-bg-card);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;margin-top:16px}.copy-summary-btn:hover{border-color:var(--cb-rust);color:var(--cb-rust)}.copy-summary-btn.copied{background:var(--health-good);color:#fff;border-color:var(--health-good)}.top-actions{margin-bottom:32px}.top-actions-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:12px}.top-action-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-left:4px solid;border-radius:var(--radius-md);padding:14px 18px;margin-bottom:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:12px}.top-action-card:hover{transform:translate(2px);box-shadow:var(--shadow-sm)}.top-action-severity{display:flex;align-items:center;gap:4px;flex-shrink:0}.top-action-severity svg{width:16px;height:16px}.top-action-text{font-size:14px;font-weight:600;flex:1}.top-action-category{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--color-bg-alt);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}.issues-filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.issues-filter-bar select{padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);font-size:13px;font-family:inherit;cursor:pointer}.issues-search{padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);font-size:13px;font-family:inherit;min-width:180px}.issues-search:focus{outline:none;border-color:var(--cb-rust)}.issues-count{font-size:13px;color:var(--color-text-muted);margin-left:auto}.tab-empty-state{text-align:center;padding:48px 32px;color:var(--color-text-muted);font-size:15px}.report-tab-panel .section-title{border-top:none;padding-top:16px}.report-tab-panel .section-title:first-child{padding-top:0}.panel-issues-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.panel-issues-title{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--color-text)}.health-score-section{text-align:center;padding:48px 0 40px}.health-ring{position:relative;width:180px;height:180px;margin:0 auto 20px}.health-ring svg{width:180px;height:180px;transform:rotate(-90deg)}.health-ring-bg{fill:none;stroke:var(--color-border);stroke-width:12}.health-ring-progress{fill:none;stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset 1s ease-out,stroke .3s}.health-ring-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.health-ring-score{font-size:48px;font-weight:800;line-height:1}.health-ring-label{font-size:14px;color:var(--color-text-muted);margin-top:4px}.health-grade{font-size:20px;font-weight:700;margin-bottom:8px}.health-summary{color:var(--color-text-muted);font-size:15px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:48px}.stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;text-align:center;box-shadow:var(--shadow-sm)}.stat-card-value{font-size:32px;font-weight:800;line-height:1;margin-bottom:4px}.stat-card-label{font-size:13px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.issue-summary{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.issue-badge{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid transparent}.issue-badge:hover{transform:translateY(-1px)}.issue-badge-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.issue-group{margin-bottom:32px}.issue-group-header{display:flex;align-items:center;gap:10px;padding:12px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.issue-group-header h3{font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.issue-group-header .count{font-size:13px;color:var(--color-text-dim);font-weight:400}.issue-group-chevron{margin-left:auto;transition:transform .2s;color:var(--color-text-dim)}.issue-group.collapsed .issue-group-chevron{transform:rotate(-90deg)}.issue-group.collapsed .issue-group-items{display:none}.issue-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-left:4px solid;border-radius:var(--radius-md);padding:20px 24px;margin-bottom:12px;box-shadow:var(--shadow-sm)}.issue-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.issue-card-title{font-size:16px;font-weight:700}.issue-card-category{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--color-bg-alt);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}.issue-card-description{font-size:14px;color:var(--color-text-muted);margin-bottom:12px;line-height:1.5}.issue-card-affected{margin-bottom:12px}.issue-card-affected-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);margin-bottom:6px}.affected-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:4px;background:var(--color-bg-alt);font-size:13px;margin:2px 4px 2px 0;font-family:var(--font-mono)}.affected-tag-id{color:var(--color-text-dim);font-size:11px}.evidence-block{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:12px;overflow-x:auto}.evidence-block-title{font-size:12px;font-weight:600;color:var(--color-text-dim);margin-bottom:8px}.evidence-line{font-family:var(--font-mono);font-size:12px;line-height:1.8;white-space:pre}.evidence-line-num{color:var(--color-text-dim);margin-right:12px;-webkit-user-select:none;user-select:none}.evidence-line-code{color:var(--color-text)}.issue-card-recommendation{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:var(--tier-info-bg);border-radius:var(--radius-sm);font-size:13px;color:var(--color-text-muted)}.issue-card-recommendation strong{color:var(--color-text);white-space:nowrap}.section-title{font-size:22px;font-weight:800;margin-bottom:24px;padding-top:32px;border-top:1px solid var(--color-border)}.tag-type-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:32px}.tag-type-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px}.tag-type-name{font-weight:500}.tag-type-count{font-weight:700;color:var(--cb-rust)}.html-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:32px}.html-stat{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:14px;text-align:center}.html-stat-value{font-size:24px;font-weight:800}.html-stat-label{font-size:12px;color:var(--color-text-muted)}.consent-bars{margin-bottom:32px}.consent-bar-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.consent-bar-label{width:180px;font-size:14px;text-align:right;flex-shrink:0}.consent-bar-track{flex:1;height:24px;background:var(--color-bg-alt);border-radius:12px;overflow:hidden}.consent-bar-fill{height:100%;border-radius:12px;transition:width .6s ease-out}.consent-bar-fill.good{background:var(--health-good)}.consent-bar-fill.warning{background:var(--severity-high)}.consent-bar-fill.neutral{background:var(--color-text-dim)}.consent-bar-count{width:40px;font-size:14px;font-weight:600}.ownership-section{margin-bottom:48px}.prefix-list{display:grid;gap:8px;margin-bottom:24px}.prefix-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.prefix-badge{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--cb-rust);background:var(--severity-critical-bg);padding:2px 10px;border-radius:4px;white-space:nowrap}.prefix-count{font-weight:700;font-size:14px;white-space:nowrap}.prefix-samples{font-size:13px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.era-timeline{display:flex;align-items:flex-end;gap:4px;height:100px;padding:8px 0}.era-bar{flex:1;min-width:30px;background:var(--cb-rust);border-radius:4px 4px 0 0;position:relative;transition:height .4s ease-out;opacity:.7}.era-bar:hover{opacity:1}.era-bar-label{position:absolute;bottom:-24px;left:50%;transform:translate(-50%);font-size:11px;color:var(--color-text-dim);white-space:nowrap}.era-bar-count{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:11px;font-weight:600}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:var(--cb-rust);color:#fff;border:none;border-radius:var(--radius-sm);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:var(--cb-rust-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.deep-analysis.visible{display:block}.tag-analysis-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.tag-analysis-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tag-analysis-name{font-weight:700;font-size:15px}.tag-status-badge{font-size:11px;padding:3px 10px;border-radius:10px;font-weight:700;text-transform:uppercase}.tag-status-badge.active{background:#dcfce7;color:#166534}.tag-status-badge.dead{background:#fef2f2;color:#991b1b}.tag-status-badge.redundant{background:#fefce8;color:#854d0e}.tag-status-badge.legacy{background:#f3e8ff;color:#6b21a8}[data-theme=dark] .tag-status-badge.active{background:#052e16;color:#86efac}[data-theme=dark] .tag-status-badge.dead{background:#450a0a;color:#fca5a5}[data-theme=dark] .tag-status-badge.redundant{background:#422006;color:#fde68a}[data-theme=dark] .tag-status-badge.legacy{background:#3b0764;color:#d8b4fe}.tag-analysis-summary{font-size:14px;color:var(--color-text-muted);line-height:1.5;margin-bottom:12px}.roadmap{margin-top:48px}.roadmap-phase{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px;margin-bottom:16px}.roadmap-phase h4{font-size:16px;margin-bottom:12px}.roadmap-phase ul{list-style:none;padding:0}.roadmap-phase li{padding:4px 0;font-size:14px;color:var(--color-text-muted)}.roadmap-phase li:before{content:"•";color:var(--cb-rust);margin-right:8px}.issue-card-category.cat-ga4{background:#e8f5e9;color:#2e7d32}[data-theme=dark] .issue-card-category.cat-ga4{background:#1b3a1f;color:#81c784}.issue-card-category.cat-ads{background:#eceff1;color:#546e7a}[data-theme=dark] .issue-card-category.cat-ads{background:#1a2332;color:#90a4ae}.issue-card-category.cat-ecommerce{background:#fce4ec;color:#c62828}[data-theme=dark] .issue-card-category.cat-ecommerce{background:#2a1520;color:#ef9a9a}.ga4-overview{margin-bottom:16px}.ga4-subsection-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:8px}.ga4-tag-list,.ga4-measurement-ids,.ga4-ecommerce-status,.ga4-event-list-section{margin-bottom:16px}.ga4-event-toggle:hover{color:var(--cb-rust)}.ads-overview{margin-bottom:16px}.ads-platform-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:32px}.ads-platform-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;box-shadow:var(--shadow-sm)}.ads-platform-name{font-size:15px;font-weight:700;margin-bottom:4px}.ads-platform-count{font-size:24px;font-weight:800;color:var(--cb-rust);margin-bottom:4px}.ads-platform-detail{font-size:12px;color:var(--color-text-muted);margin-bottom:8px}.ads-platform-ids{margin-top:4px}.ecommerce-overview,.ecommerce-funnel{margin-bottom:16px}.ecommerce-funnel-steps{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.ecommerce-funnel-step{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;border:1px solid var(--color-border)}.ecommerce-funnel-step.tracked{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.ecommerce-funnel-step.missing{background:var(--severity-critical-bg);color:var(--severity-critical);border-color:#ffcdd2}[data-theme=dark] .ecommerce-funnel-step.tracked{background:#1b3a1f;color:#81c784;border-color:#2e5a32}[data-theme=dark] .ecommerce-funnel-step.missing{background:#2a1515;color:#ef9a9a;border-color:#4a2525}.funnel-step-icon{font-size:14px;font-weight:700}.ecommerce-tools,.naming-overview{margin-bottom:16px}.naming-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.naming-separator-section{margin-bottom:24px}.naming-separator-bar{display:flex;height:28px;border-radius:14px;overflow:hidden;background:var(--color-bg-alt);margin-bottom:8px}.naming-separator-segment{height:100%;transition:width .6s ease-out;min-width:2px}.naming-separator-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--color-text-muted)}.naming-legend-item{display:inline-flex;align-items:center;gap:4px}.naming-legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.naming-variable-section,.naming-param-section{margin-bottom:20px}.naming-param-indicators{display:grid;gap:8px}.naming-param-indicator{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;border:1px solid var(--color-border)}.naming-param-indicator.ok{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.naming-param-indicator.warning{background:var(--severity-medium-bg);color:var(--severity-medium);border-color:var(--severity-medium)}.naming-param-indicator.danger{background:var(--severity-critical-bg);color:var(--severity-critical);border-color:var(--severity-critical)}[data-theme=dark] .naming-param-indicator.ok{background:#1b3a1f;color:#81c784;border-color:#2e5a32}.naming-indicator-icon{font-size:14px;font-weight:700}.trigger-overview{margin-bottom:16px}.trigger-type-section,.trigger-duplicate-section{margin-bottom:20px}.variable-overview{margin-bottom:16px}.variable-type-section,.variable-health-section{margin-bottom:20px}.consent-overview{margin-bottom:40px}.consent-indicators{display:grid;gap:8px;margin:16px 0 24px}.consent-type-distribution{margin-top:16px}.sstm-overview{margin-bottom:16px}.sstm-score-section{margin-bottom:24px}.sstm-score-label{font-size:16px;margin-bottom:10px;color:var(--color-text-muted)}.sstm-score-bar{height:12px;background:var(--color-bg-alt);border-radius:6px;overflow:hidden;margin-bottom:8px}.sstm-score-bar-fill{height:100%;border-radius:6px;transition:width .8s ease-out}.sstm-score-detail{font-size:13px;color:var(--color-text-dim)}.sstm-indicator-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:24px}.sstm-indicator-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:14px;box-shadow:var(--shadow-sm)}.sstm-indicator-name{font-size:13px;font-weight:600;color:var(--color-text-muted);margin-bottom:6px}.sstm-indicator-score{font-size:20px;font-weight:800;margin-bottom:4px}.sstm-indicator-score.high{color:var(--health-good)}.sstm-indicator-score.medium{color:var(--health-fair)}.sstm-indicator-score.low{color:var(--color-text-dim)}.sstm-indicator-detail{font-size:12px;color:var(--color-text-dim)}.sstm-benefits{margin-bottom:16px}.tech-summary{font-size:14px;color:var(--color-text-muted);margin-bottom:24px}.tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.tech-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-left:4px solid var(--color-text-dim);border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--shadow-sm);transition:all .2s}.tech-card:hover{box-shadow:var(--shadow-md)}.tech-card-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.tech-card-name{font-size:16px;font-weight:700}.tech-card-category{font-size:10px;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border:1px solid;background:transparent}.tech-card-detail{font-size:13px;color:var(--color-text-muted);margin-bottom:8px}.tech-card-ids{margin-bottom:8px}.tech-card-issues{display:none;margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border)}.tech-card.expanded .tech-card-issues{display:block}.tech-issue-pill{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 7px;font-size:11px;font-weight:700;line-height:1;color:#fff;border-radius:10px;margin-left:auto}.speed-header{display:flex;align-items:center;gap:24px;margin-bottom:28px}.speed-score-ring{position:relative;width:100px;height:100px;flex-shrink:0}.speed-score-ring svg{width:100%;height:100%}.speed-score-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800}.speed-grade{font-size:18px;font-weight:700;margin-bottom:4px}.speed-subtitle{font-size:13px;color:var(--color-text-muted)}.speed-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:32px}.speed-metric-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 12px;text-align:center;box-shadow:var(--shadow-sm)}.speed-metric-value{font-size:22px;font-weight:800;color:var(--color-text)}.speed-metric-label{font-size:11px;color:var(--color-text-muted);margin-top:4px;text-transform:uppercase;letter-spacing:.03em}.speed-signal-section{margin-bottom:24px}.speed-signal-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.speed-signal-bar{width:4px;height:18px;border-radius:2px;flex-shrink:0}.speed-signal-title{font-size:15px;font-weight:700}.speed-signal-header .speed-signal-count{font-size:12px;color:var(--color-text-muted);margin-left:auto}.speed-signal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.speed-signal-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-left:4px solid var(--color-text-dim);border-radius:var(--radius-md);padding:16px 18px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.speed-signal-card:hover{box-shadow:var(--shadow-md)}.speed-signal-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.speed-signal-label{font-size:14px;font-weight:700}.speed-severity-pill{display:inline-flex;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:10px;color:#fff}.speed-severity-pill.critical{background:var(--severity-critical)}.speed-severity-pill.high{background:var(--severity-high)}.speed-severity-pill.medium{background:var(--severity-medium)}.speed-severity-pill.low{background:var(--severity-low)}.speed-signal-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;font-size:11px;font-weight:700;background:var(--color-border);color:var(--color-text);border-radius:10px;margin-left:auto}.speed-signal-detail{font-size:13px;color:var(--color-text-muted);line-height:1.5}.speed-signal-tags{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.speed-clean{background:var(--color-bg-card);border:1px solid var(--health-good);border-radius:var(--radius-md);padding:24px;text-align:center;color:var(--health-good);font-size:14px}.speed-section-title{font-size:16px;font-weight:700;margin:0 0 14px}.speed-recommendations{margin-top:28px;padding-top:24px;border-top:1px solid var(--color-border)}.speed-rec-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.speed-rec-item .speed-severity-pill{flex-shrink:0;margin-top:2px}.speed-rec-text{font-size:13px;color:var(--color-text);line-height:1.5}.speed-related-issues{margin-top:28px;padding-top:24px;border-top:1px solid var(--color-border)}.events-dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:32px}.events-dest-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-top:3px solid var(--color-text-dim);border-radius:var(--radius-md);padding:16px;text-align:center;box-shadow:var(--shadow-sm)}.events-dest-count{font-size:28px;font-weight:800;line-height:1;margin-bottom:4px;color:var(--color-text)}.events-dest-label{font-size:13px;font-weight:700;margin-bottom:2px}.events-dest-detail{font-size:12px;color:var(--color-text-muted)}.events-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.events-filter-btn{padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted);font-family:inherit}.events-filter-btn:hover{border-color:var(--cb-rust);color:var(--cb-rust)}.events-filter-btn.active{background:var(--cb-rust);color:#fff;border-color:var(--cb-rust)}.events-card-container{display:grid;gap:10px}.events-trigger-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.events-trigger-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;-webkit-user-select:none;user-select:none;gap:12px;transition:background .15s}.events-trigger-header:hover{background:var(--color-bg-alt)}.events-trigger-header-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.events-trigger-name{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.events-group-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0}.events-trigger-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.events-trigger-tag-count{font-size:12px;color:var(--color-text-muted);white-space:nowrap}.events-trigger-dests{display:flex;gap:4px}.events-dest-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px;background:var(--color-bg-alt);color:var(--color-text-muted);white-space:nowrap}.events-trigger-chevron{color:var(--color-text-dim);transition:transform .2s;display:flex;align-items:center}.events-trigger-card.expanded .events-trigger-chevron{transform:rotate(180deg)}.events-trigger-body{display:none;padding:0 18px 14px;border-top:1px solid var(--color-border)}.events-trigger-card.expanded .events-trigger-body{display:block}.events-tag-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13px;flex-wrap:wrap}.events-tag-row:last-of-type{border-bottom:none}.events-tag-name{font-weight:600;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.events-ga4-event{font-family:var(--font-mono);font-size:12px;padding:2px 8px;border-radius:4px;background:#e8f5e9;color:#2e7d32;white-space:nowrap;flex-shrink:0}[data-theme=dark] .events-ga4-event{background:#1b3a1f;color:#81c784}.events-tag-platforms{display:flex;gap:4px;flex-shrink:0}.events-platform-pill{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--color-bg-alt);color:var(--color-text-muted);white-space:nowrap}.events-consent-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.events-consent-indicator.consent-ok{background:var(--health-good)}.events-consent-indicator.consent-warn{background:var(--severity-high)}.events-consent-indicator.consent-unset{background:var(--color-text-dim)}.events-ga4-params{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 6px}.events-param-pill{font-family:var(--font-mono);font-size:11px;padding:1px 7px;border-radius:4px;background:var(--color-bg-alt);color:var(--color-text-muted);white-space:nowrap}@media(max-width:768px){.hero{padding:40px 20px 24px}.hero h1{font-size:28px}.hero p{font-size:16px}.upload-zone{padding:40px 24px}.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.header{padding:12px 16px}.report-tab-panels{padding:0 16px 60px}.issue-summary{justify-content:center}.consent-bar-label{width:120px;font-size:12px}.tag-type-list{grid-template-columns:1fr}.html-overview-grid{grid-template-columns:repeat(2,1fr)}.summary-hero{flex-direction:column;text-align:center}.category-subscores{grid-template-columns:repeat(2,1fr)}.issues-filter-bar{flex-direction:column;align-items:stretch}.issues-count{margin-left:0;text-align:center}.tech-grid{grid-template-columns:1fr}.speed-header{flex-direction:column;text-align:center}.speed-metrics{grid-template-columns:repeat(3,1fr)}.speed-signal-grid{grid-template-columns:1fr}.events-dest-grid{grid-template-columns:repeat(2,1fr)}.events-trigger-header-left{flex-wrap:wrap}.events-trigger-header-right{gap:8px}.events-trigger-dests{display:none}.events-tag-row{flex-wrap:wrap}.score-deductions{flex-direction:column;gap:2px}.score-deduction-sep{display:none}.report-sidebar{transform:translate(-100%);transition:transform .25s ease;box-shadow:none}.report-sidebar.open{transform:translate(0);box-shadow:var(--shadow-lg)}.report-main{margin-left:0}body.has-sidebar .header{display:flex;margin-left:0}body.has-sidebar .sidebar-toggle{display:flex}.sidebar-backdrop.visible{display:block}}@media(max-width:480px){.stat-grid,.html-overview-grid,.category-subscores{grid-template-columns:1fr 1fr}.speed-metrics{grid-template-columns:repeat(2,1fr)}.tier-summary-cards{grid-template-columns:1fr}}.tier-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.tier-summary-card{border-radius:12px;padding:20px;color:#fff}.tier-summary-card .tier-card-count{font-size:32px;font-weight:800;line-height:1;margin-bottom:4px}.tier-summary-card .tier-card-label{font-size:14px;font-weight:600;margin-bottom:2px}.tier-summary-card .tier-card-hint{font-size:12px;opacity:.85}.tier-summary-card.error{background:linear-gradient(135deg,#dc2626,#b91c1c)}.tier-summary-card.optimization{background:linear-gradient(135deg,#d97706,#b45309)}.tier-summary-card.info{background:linear-gradient(135deg,#6b7280,#4b5563)}.tier-stacked-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--color-bg-alt);margin-bottom:8px}.tier-stacked-segment{height:100%;transition:width .6s ease-out;min-width:0}.tier-stacked-segment.error{background:var(--tier-error)}.tier-stacked-segment.optimization{background:var(--tier-optimization)}.tier-stacked-segment.info{background:var(--tier-info)}.tier-stacked-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--color-text-muted);margin-bottom:32px}.tier-legend-item{display:inline-flex;align-items:center;gap:6px}.tier-legend-dot{width:8px;height:8px;border-radius:50%}.tier-legend-dot.error{background:var(--tier-error)}.tier-legend-dot.optimization{background:var(--tier-optimization)}.tier-legend-dot.info{background:var(--tier-info)}.tier-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid;background:transparent;font-family:inherit}.tier-toggle.active{color:#fff}.tier-toggle.error{color:var(--tier-error);border-color:var(--tier-error)}.tier-toggle.error.active{background:var(--tier-error);color:#fff}.tier-toggle.optimization{color:var(--tier-optimization);border-color:var(--tier-optimization)}.tier-toggle.optimization.active{background:var(--tier-optimization);color:#fff}.tier-toggle.info{color:var(--tier-info);border-color:var(--tier-info)}.tier-toggle.info.active{background:var(--tier-info);color:#fff}.score-deduction-item.error{color:var(--tier-error)}.score-deduction-item.optimization{color:var(--tier-optimization)}.score-deduction-item.info{color:var(--tier-info)}.top-action-card.error{border-left-color:var(--tier-error)}.top-action-card.optimization{border-left-color:var(--tier-optimization)}.top-action-card.info{border-left-color:var(--tier-info)}.top-actions-empty{background:#f0faf3;border:1px solid #c8e6c9;border-radius:var(--radius-md);padding:20px 24px;margin-bottom:32px;display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text)}[data-theme=dark] .top-actions-empty{background:#1a2e1f;border-color:#2e5a32}.top-actions-empty svg{flex-shrink:0}.issue-badge.error{background:var(--tier-error-bg);color:var(--tier-error);border-color:var(--tier-error)}.issue-badge.optimization{background:var(--tier-optimization-bg);color:var(--tier-optimization);border-color:var(--tier-optimization)}.issue-badge.info{background:var(--tier-info-bg);color:var(--tier-info);border-color:var(--tier-info)}.issue-card.error{border-left-color:var(--tier-error)}.issue-card.optimization{border-left-color:var(--tier-optimization)}.issue-card.info{border-left-color:var(--tier-info)}.tech-issue-pill.error{background:var(--tier-error-bg);color:var(--tier-error)}.tech-issue-pill.optimization{background:var(--tier-optimization-bg);color:var(--tier-optimization)}.tech-issue-pill.info{background:var(--tier-info-bg);color:var(--tier-info)}@media(max-width:768px){.tier-summary-cards{grid-template-columns:1fr}}.sidebar-export-separator{height:1px;background:var(--color-border);margin:0 20px;flex-shrink:0}.sidebar-export-btn{flex-shrink:0;margin:8px 12px 16px}.sidebar-export-btn:hover{background:var(--color-bg-alt);color:var(--color-text)}.export-panel{display:none;position:fixed;bottom:16px;left:calc(var(--sidebar-width) + 8px);width:260px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:200;padding:8px}.export-panel.visible{display:block}.export-panel-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:8px 12px 4px}.export-panel-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s;font-family:inherit;text-align:left;color:var(--color-text)}.export-panel-option:hover{background:var(--color-bg-alt)}.export-panel-option-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-bg-alt);color:var(--color-text-muted);flex-shrink:0}.export-panel-option-text{flex:1;min-width:0}.export-panel-option-label{display:block;font-size:14px;font-weight:600;line-height:1.3}.export-panel-option-desc{display:block;font-size:12px;color:var(--color-text-muted);line-height:1.3}.export-panel-option-check{display:none;color:var(--health-good);flex-shrink:0}.export-panel-option.exported{background:#16a34a14}.export-panel-option.exported .export-panel-option-check{display:flex}.export-panel-option.exported .export-panel-option-icon{background:#16a34a1f;color:var(--health-good)}[data-theme=dark] .export-panel-option.exported{background:#16a34a1f}[data-theme=dark] .export-panel-option.exported .export-panel-option-icon{background:#16a34a2e}@media(max-width:768px){.export-panel{left:16px;right:16px;bottom:0;width:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:12px 8px calc(env(safe-area-inset-bottom,0px) + 12px)}}
