
:root{ --epcc-bg:#0b1226; --epcc-fg:#e6edf6; --epcc-b:#1f2937; --epcc-accent:#00B5E2; --epcc-pink:#E6007E; }
.epcc-fab{position:fixed;right:18px;bottom:18px;z-index:2147483647;background:#0f1a33;border:1px solid var(--epcc-b);
  color:var(--epcc-fg);padding:10px 14px;border-radius:999px;font-weight:800;cursor:pointer;box-shadow:0 10px 30px #0007}
.epcc-panel{position:fixed;top:0;right:-460px;width:460px;max-width:92vw;height:100vh;background:var(--epcc-bg);
  color:var(--epcc-fg);border-left:1px solid var(--epcc-b);box-shadow:-20px 0 40px #0009;z-index:2147483646;transition:right .22s ease}
.epcc-panel.open{right:0}
.epcc-head{display:flex;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--epcc-b)}
.epcc-head input{flex:1;background:#0f1a33;border:1px solid var(--epcc-b);color:#e6edf6;border-radius:10px;padding:10px}
.epcc-head button{background:#0f1a33;border:1px solid var(--epcc-b);color:#e6edf6;border-radius:10px;padding:10px 12px;cursor:pointer}
.epcc-body{height:calc(100vh - 56px);overflow:auto;padding:8px 12px}
.epcc-table{width:100%;border-collapse:collapse}
.epcc-table th,.epcc-table td{border-bottom:1px solid var(--epcc-b);padding:8px;text-align:left;vertical-align:top}
.epcc-table thead{position:sticky;top:0;background:#0f1a33;z-index:1}
.epcc-hit{background:rgba(0,181,226,.18);border-radius:6px;padding:0 2px}
.epcc-highlight{outline:2px solid var(--epcc-pink); background:rgba(230,0,126,.15)}
.epcc-term{ position:relative; cursor:help; border-bottom:1px dotted rgba(255,255,255,.35); }
.epcc-term:focus{ outline:2px solid var(--epcc-accent); border-radius:4px; }
#epcc-tip{ position:fixed; z-index:2147483647; pointer-events:none; background:var(--epcc-bg); color:var(--epcc-fg);
  border:1px solid var(--epcc-b); box-shadow:0 10px 30px #0007; border-radius:12px; padding:10px 12px; min-width:220px;
  transform:translate(-50%, -110%); opacity:0; transition:opacity .12s ease; }
#epcc-tip.visible{ opacity:1; }
#epcc-tip table{ width:100%; border-collapse:collapse; font-size:.92rem }
#epcc-tip th, #epcc-tip td{ padding:6px 8px; border-bottom:1px solid var(--epcc-b); text-align:left }
#epcc-tip thead{ background:#0f1a33 }
#epcc-tip .key{ font-weight:800; letter-spacing:.3px; opacity:.85 }
