.tx-admin-small-button{
  position:fixed; top:10px; left:12px; right:auto; z-index:9998;
  border:1px solid rgba(39,245,255,.45); border-radius:999px;
  padding:6px 11px; font:800 11px/1 Inter,Arial,sans-serif; letter-spacing:.04em;
  color:#eaffff; background:rgba(2,8,18,.72); backdrop-filter:blur(12px);
  box-shadow:0 8px 24px rgba(0,0,0,.35); cursor:pointer;
}
.tx-admin-small-button:hover{background:rgba(39,245,255,.18)}
.tx-admin-pin-modal{
  position:fixed!important;
  left:0!important; top:0!important; right:auto!important; bottom:auto!important;
  width:100vw!important; height:100dvh!important;
  z-index:999999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(0,0,0,.78);
  padding:16px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  transform:none!important;
}
.tx-admin-pin-modal[hidden]{display:none!important}
.tx-admin-pin-box{
  position:relative;
  width:min(420px, calc(100vw - 32px))!important;
  max-width:calc(100vw - 32px)!important;
  border-radius:24px;
  padding:26px 18px 24px;
  background:linear-gradient(145deg,#071120,#160924);
  border:1px solid rgba(39,245,255,.38);
  box-shadow:0 30px 100px rgba(0,0,0,.65);
  color:#f1feff;
  text-align:center;
  font-family:Inter,Arial,sans-serif;
  box-sizing:border-box!important;
  margin:0!important;
  transform:none!important;
}
.tx-admin-pin-box h2{margin:0 0 6px;font-size:26px}
.tx-admin-pin-box p{margin:0 0 18px;color:#a9c6d0}
.tx-admin-pin-close{position:absolute;top:10px;right:10px;border:0;border-radius:50%;width:34px;height:34px;background:rgba(255,255,255,.08);color:white;font-size:22px;cursor:pointer}
.tx-admin-pin-digits{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:8px;
  margin:18px auto 8px;
  width:100%;
  max-width:360px;
}
.tx-admin-pin-digits input{
  width:100%;
  min-width:0;
  height:52px;
  border-radius:14px;
  border:1px solid rgba(39,245,255,.42);
  background:#050b14;
  color:white;
  text-align:center;
  font-size:26px;
  font-weight:900;
  outline:none;
  box-sizing:border-box;
}
.tx-admin-pin-digits input:focus{border-color:#27f5ff;box-shadow:0 0 0 3px rgba(39,245,255,.18)}
#txAdminPinMsg{display:block;min-height:20px;margin-top:12px;color:#ffd85a;font-weight:800}
@media (max-width:380px){
  .tx-admin-pin-digits{gap:5px}
  .tx-admin-pin-digits input{height:48px;font-size:22px;border-radius:12px}
}

/* Admin privado: el módulo de edición sólo se ve tras PIN correcto */
body:not(.tx-admin-private-active) #adminProductosExcel{display:none!important}
body.tx-admin-private-active #adminProductosExcel{
  display:block!important;
  position:relative;
  z-index:5;
  width:min(1280px, calc(100vw - 24px));
  margin:18px auto 42px!important;
}
body.tx-admin-private-active #adminProductosExcel[hidden]{display:none!important}


.tx-admin-pin-box.tx-admin-pin-error-buzz{
  animation:txAdminBuzz .42s cubic-bezier(.36,.07,.19,.97) both;
  border-color:rgba(255,58,58,.9)!important;
  box-shadow:
    0 30px 100px rgba(0,0,0,.65),
    0 0 0 3px rgba(255,0,0,.16),
    0 0 36px rgba(255,30,30,.38)!important;
}
.tx-admin-pin-input-error{
  border-color:#ff3030!important;
  background:linear-gradient(180deg,#2a0508,#120307)!important;
  box-shadow:
    0 0 0 3px rgba(255,30,30,.22),
    0 0 18px rgba(255,30,30,.38)!important;
  animation:txAdminInputPulse .52s ease both;
}
@keyframes txAdminBuzz{
  10%,90%{transform:translateX(-2px)!important}
  20%,80%{transform:translateX(4px)!important}
  30%,50%,70%{transform:translateX(-7px)!important}
  40%,60%{transform:translateX(7px)!important}
}
@keyframes txAdminInputPulse{
  0%{filter:brightness(1)}
  35%{filter:brightness(1.55)}
  100%{filter:brightness(1)}
}

/* img3-20260515 */

/* === TXHOUSE 2026-05-15: botón Admin a la izquierda === */
.tx-admin-small-button{
  left:max(12px, env(safe-area-inset-left)) !important;
  right:auto !important;
}
@media (max-width:680px){
  .tx-admin-small-button{
    top:8px !important;
    left:max(8px, env(safe-area-inset-left)) !important;
  }
}
/* admin-button-left-20260515 */

.tx-admin-loading-lite{
  margin:24px auto;
  max-width:560px;
  padding:18px 20px;
  border-radius:18px;
  background:rgba(7,14,26,.92);
  border:1px solid rgba(125,243,255,.16);
  color:#e9f8ff;
  text-align:center;
  font-weight:700;
  letter-spacing:.02em;
}
