:root{--bg:#f4f7fb;--ink:#101828;--mut:#667085;--line:#e4e7ec;--card:#fff;--pri:#155eef;--ok:#067647;--bad:#b42318;--warn:#b54708;--shadow:0 16px 38px rgba(16,24,40,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif}.layout{display:grid;grid-template-columns:390px 1fr;min-height:100vh}.side{background:#0b1220;color:white;padding:22px;overflow:auto;max-height:100vh;position:sticky;top:0}.brand{display:flex;gap:12px;align-items:center;margin-bottom:18px}.logo{width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,#155eef,#53b1fd);display:grid;place-items:center;font-weight:900}.brand span{display:block;color:#98a2b3;font-size:13px}.primary{background:var(--pri);color:white;border:0;border-radius:14px;padding:13px 16px;font-weight:800}.full{width:100%}.msg{font-size:12px;color:#cbd5e1;margin:10px 0 18px;word-break:break-word}.diag{display:block;text-align:center;margin:10px 0 12px;color:#bfdbfe;text-decoration:none;font-size:12px;font-weight:800}.filters{display:grid;gap:8px;margin-bottom:14px}input,select{width:100%;border:1px solid var(--line);border-radius:13px;padding:11px 12px;background:white}.side input,.side select{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.16);color:white}.side option{color:#111}.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.stats span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px;font-size:12px}.clients{display:grid;gap:8px}.client,.branch{width:100%;text-align:left;border:1px solid var(--line);background:white;border-radius:15px;padding:13px;display:grid;gap:4px;cursor:pointer}.side .client{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:white}.client.active,.branch.active{outline:3px solid rgba(21,94,239,.22);border-color:#84adff}.client small,.branch small{color:#98a2b3}.client em,.branch em{justify-self:start;font-style:normal;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;background:#eef4ff;color:#1849a9}.client em.vinculado,.branch em.vinculado{background:#ecfdf3;color:var(--ok)}.client em.viejo_sin_match,.branch em.viejo_sin_match{background:#fff3ed;color:var(--warn)}main{padding:28px}header{background:linear-gradient(135deg,#101828,#1d2939);color:white;border-radius:24px;padding:26px;margin-bottom:20px;box-shadow:var(--shadow)}h1{margin:0;font-size:38px;letter-spacing:-.04em}header p{color:#d0d5dd}.panel{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow);margin-bottom:18px}.empty{color:var(--mut)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panelHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.panelHead h2{margin:0}.historyFilters{display:flex;gap:8px;min-width:420px}.branches{display:grid;gap:9px;max-height:480px;overflow:auto}.kpis{display:grid;gap:12px;max-height:480px;overflow:auto}.year{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fcfcfd}.year h3{margin:0 0 10px}.krow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.krow p{margin:6px 0;color:var(--mut)}.timeline{display:grid;gap:12px}.event{border:1px solid var(--line);border-radius:18px;padding:15px;background:white}.event>div{display:flex;justify-content:space-between;gap:14px}.event time{color:var(--mut);font-size:13px;white-space:nowrap}.event p{color:#475467;line-height:1.5}.event footer{display:flex;flex-wrap:wrap;gap:7px}.event span,.event a{border-radius:999px;background:#f2f4f7;color:#475467;padding:5px 9px;font-size:12px;font-weight:800;text-decoration:none}.event .sistema_viejo{background:#fef3f2;color:var(--bad)}.event .sistema_nuevo{background:#ecfdf3;color:var(--ok)}.toast{position:fixed;right:20px;bottom:20px;background:#101828;color:white;padding:14px 16px;border-radius:14px;box-shadow:var(--shadow)}.toast.err{background:var(--bad)}.hide{display:none}@media(max-width:1100px){.layout{grid-template-columns:1fr}.side{position:static;max-height:none}.grid{grid-template-columns:1fr}.historyFilters{min-width:0;flex-direction:column;width:100%}.panelHead{flex-direction:column}h1{font-size:30px}}

/* v5 */
.diag{display:block!important;clear:both;text-align:center;margin:10px 0 12px!important;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.06);color:#bfdbfe!important;text-decoration:none!important;font-size:12px;font-weight:800}
.diag+.diag{margin-top:6px!important}
.client b{word-break:break-word}
.client small{word-break:break-word}

.secondarySync{margin-top:8px;background:#1f2937!important}.side .primary.full+ .primary.full{margin-top:8px}


/* v11 modo automático: sin botones manuales para evitar procesos pisados */
.autoStatus{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  padding:13px;
  margin:10px 0 12px;
  display:grid;
  gap:5px;
}
.autoStatus b{font-size:14px}
.autoStatus span{font-size:12px;color:#cbd5e1;line-height:1.35}
.autoStatus small{font-size:11px;color:#98a2b3;line-height:1.3}
.autoStatus.running{border-color:rgba(251,191,36,.55);background:rgba(251,191,36,.10)}
.autoStatus.running b{color:#fde68a}
.autoStatus.idle{border-color:rgba(34,197,94,.42);background:rgba(34,197,94,.08)}
.autoStatus.idle b{color:#bbf7d0}
.autoStatus.warn{border-color:rgba(248,113,113,.45);background:rgba(248,113,113,.09)}
