/* Historial de cambios MCP — estilos PROPIOS (prefijo .hm-) sobre los tokens --t-* de cadena-montaje:
   el tema oscuro (:root[data-theme=dark]) sale solo. No toca ninguna clase de prod. */
.hm-raiz{--hm-bg:var(--t-bg-ffffff);--hm-bg2:var(--t-bg-fbfbfc);--hm-bg3:var(--t-bg-f4f4f7);--hm-bd:var(--t-bd-e4e4ec);--hm-bd2:var(--t-bd-ebebf0);
  --hm-fg:var(--t-fg-17171f);--hm-fg2:var(--t-fg-3d3d48);--hm-mut:var(--t-fg-6b6b78);--hm-mut2:var(--t-fg-82828e);
  --hm-ac:var(--t-fg-6d4bd0);--hm-acbg:var(--t-bg-f4f1fd);--hm-acbd:var(--t-bd-c9bdf0);
  --hm-ok:var(--t-fg-1f7a4d);--hm-okbg:var(--t-bg-e9f7ef);--hm-okbd:var(--t-bd-b8e2c8);
  --hm-ko:var(--t-fg-b0281a);--hm-kobg:var(--t-bg-fdecec);--hm-kobd:var(--t-bd-f0cccc);
  --hm-am:var(--t-fg-8a5a00);--hm-ambg:var(--t-bg-fff3da);--hm-ambd:var(--t-bd-f0dfb6);
  --hm-az:var(--t-fg-1c64f2);--hm-azbg:var(--t-bg-eff4ff);--hm-azbd:var(--t-bd-c9dbfd);
  color:var(--hm-fg);font-size:13px;min-width:0;max-width:100%}
.hm-raiz *{box-sizing:border-box}
.hm-cargando,.hm-error{padding:40px 0;color:var(--hm-mut);font-size:13px;line-height:1.6}
.hm-error b{color:var(--hm-ko)}
.hm-mute{color:var(--hm-mut)} .hm-rojo{color:var(--hm-ko)} .hm-peq{font-size:11.5px;font-weight:400}

/* cifras */
.hm-kpis{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 14px}
.hm-kpi{flex:1 1 150px;max-width:230px;min-width:0;background:var(--hm-bg2);border:1px solid var(--hm-bd2);border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:2px}
.hm-kpi span{font-size:11.5px;color:var(--hm-mut);font-weight:600}
.hm-kpi b{font-size:22px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.hm-kpi small{font-size:11px;color:var(--hm-mut2)}
.hm-kpi-comp b{color:var(--hm-am)} .hm-kpi-exp b{color:var(--hm-az)}

/* barra de filtros */
.hm-barra{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}
.hm-buscar{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hm-bd);background:var(--hm-bg);border-radius:8px;padding:0 10px;color:var(--hm-mut);flex:1 1 220px;max-width:320px;min-width:0}
.hm-buscar input{border:0;outline:0;background:transparent;color:var(--hm-fg);font:inherit;font-size:12.5px;padding:7px 0;width:100%;min-width:0}
.hm-buscar:focus-within{border-color:var(--hm-acbd)}
.hm-sel,.hm-fecha input{border:1px solid var(--hm-bd);background:var(--hm-bg);color:var(--hm-fg2);border-radius:8px;padding:6px 8px;font:inherit;font-size:12px;max-width:100%;min-width:0}
.hm-sel-tanda{max-width:220px}
.hm-fecha{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--hm-mut);font-weight:600}
.hm-fecha input{padding:5px 6px}
.hm-chk{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--hm-fg2);font-weight:600;cursor:pointer;user-select:none}
.hm-chk input{accent-color:var(--hm-ac);margin:0}
.hm-esp{flex:1 1 0}
.hm-solo-movil{display:none}
.hm-bt{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hm-acbd);background:var(--hm-acbg);color:var(--hm-ac);border-radius:8px;padding:6px 11px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.hm-bt:hover{filter:brightness(.97)}
.hm-bt-sec{border-color:var(--hm-bd);background:var(--hm-bg);color:var(--hm-fg2)}
.hm-estado{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;color:var(--hm-mut);margin:4px 0 8px}
.hm-estado b{color:var(--hm-fg)}
.hm-dot{width:7px;height:7px;border-radius:50%;background:var(--hm-ok);display:inline-block}
.hm-dot-err{background:var(--hm-ko)}

/* tabla tipo Notion */
.hm-tabla-caja{border:1px solid var(--hm-bd2);border-radius:10px;overflow:auto;max-width:100%;max-height:calc(100vh - 290px);min-height:240px;background:var(--hm-bg)}
.hm-tabla{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1120px;font-size:12.5px}
.hm-tabla th{position:sticky;top:0;z-index:2;background:var(--hm-bg2);color:var(--hm-mut);font-weight:600;font-size:11.5px;text-align:left;padding:8px 10px;border-bottom:1px solid var(--hm-bd2);cursor:pointer;white-space:nowrap;user-select:none}
.hm-tabla th+th,.hm-tabla td+td{border-left:1px solid var(--hm-bd2)}
.hm-tabla th:hover{color:var(--hm-fg)}
.hm-tabla th.hm-ord{color:var(--hm-ac)}
.hm-dir{margin-left:4px}
.hm-tabla td{padding:7px 10px;border-bottom:1px solid var(--hm-bd2);vertical-align:top;line-height:1.4;overflow:hidden;text-overflow:ellipsis}
.hm-fila{cursor:pointer}
.hm-fila:hover td{background:var(--hm-bg2)}
.hm-fila.hm-activa td{background:var(--hm-acbg)}
.hm-fila:focus-visible{outline:2px solid var(--hm-acbd);outline-offset:-2px}
.hm-fallo td{color:var(--hm-mut)} .hm-fallo .hm-que{color:var(--hm-ko)}
.hm-lect td{color:var(--hm-mut)}
.hm-c-fecha{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--hm-fg2)}
.hm-c-que .hm-que{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.hm-c-tanda a{color:var(--hm-fg);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-c-tanda a:hover{color:var(--hm-ac);text-decoration:underline}
.hm-vacio{text-align:center;color:var(--hm-mut);padding:30px!important}
.hm-herr{display:inline-block;font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--hm-bg3);color:var(--hm-fg2);white-space:nowrap}
.hm-h-editar_tanda{background:var(--hm-acbg);color:var(--hm-ac)}
.hm-h-crear_tanda,.hm-h-anadir_plantilla{background:var(--hm-okbg);color:var(--hm-ok)}
.hm-h-borrar_tanda{background:var(--hm-kobg);color:var(--hm-ko)}
.hm-h-subir_imagen{background:var(--hm-azbg);color:var(--hm-az)}
.hm-v{font-weight:600;font-variant-numeric:tabular-nums} .hm-v2{color:var(--hm-ac)}
.hm-arr{color:var(--hm-mut2);margin:0 3px}
.hm-tag{display:inline-block;font-size:10.5px;font-weight:600;padding:1px 6px;border-radius:5px;margin:2px 4px 0 0;white-space:nowrap}
.hm-tag-gris{background:var(--hm-bg3);color:var(--hm-mut)}
.hm-tag-ambar{background:var(--hm-ambg);color:var(--hm-am)}
.hm-tag-rojo{background:var(--hm-kobg);color:var(--hm-ko)}
.hm-or{display:inline-block;font-size:11px;font-weight:700;padding:2px 7px;border-radius:5px;white-space:nowrap}
.hm-or-normal{background:var(--hm-bg3);color:var(--hm-mut)}
.hm-or-competencia{background:var(--hm-ambg);color:var(--hm-am);border:1px solid var(--hm-ambd)}
.hm-or-expertos{background:var(--hm-azbg);color:var(--hm-az);border:1px solid var(--hm-azbd)}
.hm-or-prob{border-style:dashed}
.hm-mini{font-size:10.5px;padding:1px 6px;margin-left:8px}
.hm-conf{font-size:10.5px;color:var(--hm-mut);margin-left:5px}
.hm-sub{font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-sub a{color:var(--hm-mut);text-decoration:none} .hm-sub a:hover{color:var(--hm-ac);text-decoration:underline}
.hm-res{white-space:nowrap;font-variant-numeric:tabular-nums}
.hm-res2{font-size:11px;color:var(--hm-mut)}
.hm-k{font-size:10.5px;color:var(--hm-mut2);margin-right:2px}
.hm-was{color:var(--hm-mut)}
.hm-sube{color:var(--hm-ok)} .hm-baja{color:var(--hm-ko)} .hm-igual{color:var(--hm-fg2)}
.hm-n{display:inline-block;font-size:10.5px;color:var(--hm-mut2);margin-top:2px}
.hm-grupo td{background:var(--hm-bg2);padding:8px 10px;cursor:pointer;font-size:12.5px;position:sticky;left:0}
.hm-grupo b{margin-right:8px}
.hm-gn{color:var(--hm-mut);font-size:11.5px}
.hm-pleg{display:inline-flex;margin-right:6px;transition:transform .12s;color:var(--hm-mut)}
.hm-pleg.abierto{transform:rotate(90deg)}
.hm-nota{font-size:11.5px;color:var(--hm-mut);line-height:1.55;margin:10px 0 0;max-width:980px}

/* panel lateral (peek) */
.hm-velo{position:fixed;inset:0;background:var(--t-bg-11111b2e);z-index:60}
.hm-peek{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--hm-bg);border-left:1px solid var(--hm-bd);box-shadow:-8px 0 30px var(--t-sh-11111b1a, rgba(17,17,27,.1));z-index:61;overflow:auto;padding:16px 22px 40px;overscroll-behavior:contain}
.hm-pk-cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.hm-x{border:0;background:transparent;color:var(--hm-mut);cursor:pointer;padding:6px;border-radius:6px;display:inline-flex}
.hm-x:hover{background:var(--hm-bg3);color:var(--hm-fg)}
.hm-pk-tit{font-size:17px;line-height:1.35;margin:0 0 12px;font-weight:700;overflow-wrap:anywhere}
.hm-props{display:grid;grid-template-columns:86px 1fr;gap:6px 10px;margin:0 0 6px;font-size:12.5px}
.hm-props dt{color:var(--hm-mut);font-weight:600}
.hm-props dd{margin:0;min-width:0;overflow-wrap:anywhere}
.hm-props a,.hm-orbox a{color:var(--hm-ac);text-decoration:none} .hm-props a:hover,.hm-orbox a:hover{text-decoration:underline}
.hm-sec{border-top:1px solid var(--hm-bd2);margin-top:14px;padding-top:12px}
.hm-sec h4{margin:0 0 8px;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--hm-fg2)}
.hm-sec h4 .hm-peq{text-transform:none;letter-spacing:0;margin-left:6px}
.hm-sec p{margin:6px 0;line-height:1.5}
.hm-orbox{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--hm-bd2);border-radius:10px;padding:10px;background:var(--hm-bg2)}
.hm-orbox img{width:64px;height:86px;object-fit:cover;border-radius:6px;flex:none;background:var(--hm-bg3)}
.hm-orbox p{font-size:12px;color:var(--hm-fg2)}
.hm-mini-t{border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums;margin:6px 0}
.hm-mini-t th,.hm-mini-t td{padding:5px 6px;border-bottom:1px solid var(--hm-bd2);text-align:right;white-space:nowrap}
.hm-mini-t th:first-child,.hm-mini-t tbody th{text-align:left}
.hm-mini-t thead th{font-size:10.5px;color:var(--hm-mut);font-weight:600}
.hm-mini-t tbody th{font-weight:600;color:var(--hm-fg2)}
.hm-hook{border:1px solid var(--hm-bd2);border-radius:8px;padding:8px 10px;margin-top:8px}
.hm-hook p{font-size:12px;font-weight:600;margin:0 0 4px}
.hm-ops{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.hm-ops li{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.45}
.hm-sg{flex:none;width:20px;height:20px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}
.hm-sg-mas{background:var(--hm-okbg);color:var(--hm-ok)} .hm-sg-menos{background:var(--hm-kobg);color:var(--hm-ko)} .hm-sg-cambio{background:var(--hm-acbg);color:var(--hm-ac)}
.hm-ops li>div{min-width:0}
.hm-op-t{font-weight:600;color:var(--hm-fg2)}
.hm-op-txt{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--hm-fg)}
.hm-op-antes{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--hm-mut);text-decoration:line-through;text-decoration-color:var(--hm-kobd)}
.hm-op-ex{font-size:11px;color:var(--hm-mut);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.hm-sec .hm-bt{margin-top:12px}
.hm-diff{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.hm-diff-b{border:1px solid var(--hm-bd2);border-radius:8px;padding:8px 10px;font-size:12px}
.hm-diff-b ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}
.hm-diff-b li{white-space:pre-wrap;overflow-wrap:anywhere;display:flex;gap:6px}
.hm-diff-b li span{flex:none;font-weight:700;font-size:11px;min-width:12px}
.hm-diff-b li.mas span{color:var(--hm-ok)} .hm-diff-b li.menos span{color:var(--hm-ko)} .hm-diff-b li.menos{color:var(--hm-mut)}
.hm-diff-b li.apag span,.hm-diff-b li.enc span{color:var(--hm-am)} .hm-diff-b li.aj span{color:var(--hm-ac)} .hm-diff-b li.aj{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--hm-fg2)}
.hm-raw{margin-top:14px}
.hm-raw summary{cursor:pointer;font-size:12px;color:var(--hm-mut);font-weight:600}
.hm-raw pre{margin:8px 0 0;max-height:320px;overflow:auto;background:var(--hm-bg2);border:1px solid var(--hm-bd2);border-radius:8px;padding:8px 10px;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--hm-fg2)}

@media (max-width:760px){
  .hm-kpi{flex:1 1 calc(50% - 10px);max-width:none;padding:8px 10px}
  .hm-kpi b{font-size:18px}
  .hm-buscar{flex:1 1 100%;max-width:none}
  .hm-sel,.hm-sel-tanda{flex:1 1 calc(50% - 8px);max-width:none}
  .hm-fecha{flex:1 1 calc(50% - 8px)} .hm-fecha input{flex:1;min-width:0}
  .hm-esp{display:none}
  .hm-solo-movil{display:inline-block}
  /* la tabla pasa a tarjetas: una por cambio, sin scroll lateral */
  .hm-tabla-caja{max-height:none;overflow:visible;border-radius:10px}
  .hm-tabla{min-width:0;table-layout:auto;display:block}
  .hm-tabla colgroup,.hm-tabla thead{display:none}
  .hm-tabla tbody{display:block}
  .hm-tabla tr.hm-fila{display:grid;grid-template-columns:auto auto 1fr;gap:5px 8px;padding:11px 12px;border-bottom:1px solid var(--hm-bd2);align-items:center}
  .hm-tabla tr.hm-fila td{display:block;border:0!important;padding:0;background:transparent!important;min-width:0}
  .hm-fila:hover,.hm-fila.hm-activa{background:var(--hm-acbg)}
  .hm-c-fecha{font-size:11.5px}
  .hm-c-quien{font-size:11.5px;color:var(--hm-mut)}
  .hm-c-herr{justify-self:end}
  .hm-c-tanda,.hm-c-que{grid-column:1/-1}
  .hm-c-que .hm-que{font-size:13px;color:var(--hm-fg);-webkit-line-clamp:3}
  .hm-c-fecha{order:1} .hm-c-quien{order:2} .hm-c-herr{order:3} .hm-c-tanda{order:4} .hm-c-ver{order:5} .hm-c-or{order:6} .hm-c-que{order:7} .hm-c-res{order:8}
  .hm-c-ver{grid-column:1/2;font-size:11.5px}
  .hm-c-or{grid-column:2/-1;justify-self:end;text-align:right}
  .hm-c-or .hm-sub{display:none}
  .hm-c-res{grid-column:1/-1}
  .hm-c-res:has(.hm-mute:only-child){display:none!important}
  .hm-tabla tr.hm-grupo{display:block}
  .hm-tabla tr.hm-grupo td{display:block;position:static}
  .hm-vacio{display:block}
  .hm-peek{padding:12px 14px 40px}
  .hm-props{grid-template-columns:74px 1fr}
}
