:root {
  --errp-bg:#ffffff; --errp-text:#1f2933; --errp-border:#cbd2d9; --errp-shadow:0 8px 24px -6px rgba(0,0,0,.18),0 2px 8px -2px rgba(0,0,0,.06);
}
html[data-theme='dark'] { --errp-bg:#1f242b; --errp-text:#e5edf3; --errp-border:#2f3a44; }
#error-report-panel { position:fixed; bottom:16px; left:16px; z-index:99991; width:380px; max-width:calc(100vw - 32px); font-family:system-ui,Inter,Arial,sans-serif; background:var(--errp-bg); border:1px solid var(--errp-border); border-radius:16px; box-shadow:var(--errp-shadow); display:none; flex-direction:column; overflow:hidden; }
#error-report-panel.active { display:flex; animation:erp-enter .35s cubic-bezier(.4,0,.2,1); }
@keyframes erp-enter { from { transform:translateY(16px); opacity:0;} to { transform:translateY(0); opacity:1;} }
#error-report-panel header { display:flex; align-items:center; gap:8px; padding:12px 14px 10px; font-weight:600; font-size:15px; border-bottom:1px solid var(--errp-border); }
#error-report-panel header svg { width:20px; height:20px; stroke:currentColor; }
#error-report-panel .erp-body { max-height:260px; overflow:auto; padding:12px 16px 6px; display:flex; flex-direction:column; gap:10px; }
#error-report-panel .erp-section { background:rgba(0,0,0,0.02); border:1px solid var(--errp-border); border-radius:10px; padding:10px 12px; font-size:13px; line-height:1.35; }
html[data-theme='dark'] #error-report-panel .erp-section { background:rgba(255,255,255,0.03); }
#error-report-panel .erp-section h4 { margin:0 0 4px; font-size:12px; letter-spacing:.05em; font-weight:600; text-transform:uppercase; opacity:.75; }
#error-report-panel ul { margin:0; padding-left:18px; }
#error-report-panel li { margin:2px 0; }
#error-report-panel footer { padding:10px 14px 12px; display:flex; gap:8px; flex-wrap:wrap; border-top:1px solid var(--errp-border); }
#error-report-panel button { cursor:pointer; border:none; border-radius:8px; font-size:12px; font-weight:600; padding:6px 10px; background:#0d9488; color:#fff; display:inline-flex; align-items:center; gap:4px; }
#error-report-panel button.secondary { background:#475569; }
#error-report-panel button.danger { background:#dc2626; }
#error-report-panel button:hover { filter:brightness(1.05); }
#error-report-panel pre { margin:0; background:#0f172a; color:#e2e8f0; padding:8px 10px; font-size:11px; border-radius:8px; overflow:auto; max-height:140px; }
html[data-theme='dark'] #error-report-panel pre { background:#101a22; }
#error-report-panel .erp-hidden { display:none; }
@media (max-width:520px){ #error-report-panel { left:50%; bottom:12px; transform:translateX(-50%); width:96%; } }

/* Category badges */
#error-report-panel .erp-badges{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px;}
#error-report-panel .erp-badge{font-size:10px;letter-spacing:.05em;font-weight:600;text-transform:uppercase;padding:4px 6px 3px;border-radius:6px;line-height:1.1;background:#e2e8f0;color:#1e293b;border:1px solid #cbd5e1;}
html[data-theme='dark'] #error-report-panel .erp-badge{background:#26323c;color:#e2e8f0;border-color:#354752;}
.erp-badge.validation{background:#fef3c7;color:#92400e;border-color:#fcd34d;} html[data-theme='dark'] .erp-badge.validation{background:#5a441c;color:#fcd34d;border-color:#8b6a29;}
.erp-badge.auth{background:#e0f2fe;color:#075985;border-color:#7dd3fc;} html[data-theme='dark'] .erp-badge.auth{background:#153445;color:#7dd3fc;border-color:#1e4e63;}
.erp-badge.server{background:#fee2e2;color:#7f1d1d;border-color:#fecaca;} html[data-theme='dark'] .erp-badge.server{background:#442020;color:#fecaca;border-color:#6b2d2d;}
.erp-badge.rate{background:#ede9fe;color:#5b21b6;border-color:#ddd6fe;} html[data-theme='dark'] .erp-badge.rate{background:#392e63;color:#ddd6fe;border-color:#5946a3;}
.erp-badge.network{background:#e0f7fa;color:#036972;border-color:#7ddce4;} html[data-theme='dark'] .erp-badge.network{background:#1a4a51;color:#7ddce4;border-color:#256871;}
.erp-badge.client{background:#e2e8f0;color:#334155;border-color:#cbd5e1;} html[data-theme='dark'] .erp-badge.client{background:#25313b;color:#cbd5e1;border-color:#374956;}

/* History section */
#erp-history{max-height:150px;overflow:auto;}
#erp-history ul{list-style:none;padding:0;margin:4px 0 0;}
#erp-history li{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border:1px solid var(--errp-border);border-radius:8px;margin-bottom:6px;cursor:pointer;transition:background .18s,border-color .18s;}
#erp-history li:hover{background:rgba(0,0,0,0.04);} html[data-theme='dark'] #erp-history li:hover{background:rgba(255,255,255,0.06);}
#erp-history .h-top{display:flex;align-items:center;gap:6px;}
#erp-history time{font-size:10px;opacity:.6;}
#erp-history .h-summary{font-size:12px;font-weight:500;line-height:1.25;}
#erp-history .h-meta{font-size:10px;opacity:.7;display:flex;gap:10px;flex-wrap:wrap;}
#erp-filter-row{display:flex;align-items:center;gap:8px;margin:4px 0 2px;}
#erp-filter-row select{font-size:12px;padding:4px 6px;border:1px solid var(--errp-border);background:var(--errp-bg);color:var(--errp-text);border-radius:6px;}
html[data-theme='dark'] #erp-filter-row select{background:#1d242b;}

/* Remote log status */
#erp-remote-status{font-size:10px;opacity:.6;margin-left:auto;}
