/* ============================================================
   BOTONES DE ACCIÓN · AÑADIR PARADA / REINICIAR / GUARDAR
   ============================================================ */

.cf-week-actions-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-top:20px;
  flex-wrap:wrap;
}

.cf-week-topbar-actions{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
  white-space:nowrap;
}

/* separador pequeño entre Añadir parada y el resto */
.cf-week-actions-separator{
  width:1px;
  height:30px;
  margin:0 2px 0 4px;
  flex:0 0 auto;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.04),
    rgba(255,255,255,.16),
    rgba(255,255,255,.04)
  );
  box-shadow:
    0 0 0 1px rgba(255,255,255,.02),
    0 0 10px rgba(0,0,0,.12);
}

.cf-week-action-btn{
  min-height:46px;
  height:46px;
  padding:0 18px !important;
  border-radius:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-weight:900 !important;
  font-size:.96rem !important;
  letter-spacing:.01em;
  border:1px solid transparent !important;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    background .18s ease,
    opacity .18s ease,
    color .18s ease !important;
  white-space:nowrap;
  flex:0 0 auto;
}

/* ----------------------------
   AÑADIR PARADA
   ---------------------------- */

.cf-week-stop-btn{
  background:
    linear-gradient(180deg, rgba(28,86,154,.96), rgba(18,58,112,.98)) !important;
  border-color:rgba(116,184,255,.34) !important;
  color:#eef7ff !important;
  box-shadow:
    0 8px 18px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.cf-week-stop-btn.is-enabled{
  background:
    linear-gradient(180deg, rgba(44,128,224,.98), rgba(26,84,172,.99)) !important;
  border-color:rgba(137,201,255,.72) !important;
  color:#f7fbff !important;
  box-shadow:
    0 0 12px rgba(77,163,255,.22),
    0 0 24px rgba(77,163,255,.12),
    0 8px 22px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.10);
}

.cf-week-stop-btn.is-enabled:hover,
.cf-week-stop-btn:hover{
  transform:translateY(-1px);
  box-shadow:
    0 0 16px rgba(77,163,255,.30),
    0 0 30px rgba(77,163,255,.16),
    0 12px 26px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.12);
}

/* ----------------------------
   GUARDAR
   ---------------------------- */

.cf-week-save-btn{
  background:
    linear-gradient(180deg, rgba(9,76,52,.96), rgba(5,52,36,.98)) !important;
  border-color:rgba(76,255,160,.34) !important;
  color:#effff6 !important;
  box-shadow:
    0 8px 18px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.cf-week-save-btn.is-enabled{
  background:
    linear-gradient(180deg, rgba(14,138,88,.98), rgba(6,92,59,.99)) !important;
  border-color:rgba(126,255,191,.76) !important;
  color:#f7fff9 !important;
  box-shadow:
    0 0 12px rgba(57,255,20,.24),
    0 0 24px rgba(57,255,20,.14),
    0 8px 22px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.10);
}

.cf-week-save-btn.is-enabled:hover{
  transform:translateY(-1px);
  box-shadow:
    0 0 16px rgba(57,255,20,.32),
    0 0 30px rgba(57,255,20,.18),
    0 12px 26px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.12);
}

/* ----------------------------
   REINICIAR
   ---------------------------- */

.cf-week-reset-btn{
  background:
    linear-gradient(180deg, rgba(72,78,88,.95), rgba(50,56,63,.98)) !important;
  border-color:rgba(158,168,180,.26) !important;
  color:#eef3f6 !important;
  box-shadow:
    0 8px 18px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.cf-week-reset-btn.is-enabled{
  background:
    linear-gradient(180deg, rgba(108,118,130,.98), rgba(73,81,90,.99)) !important;
  border-color:rgba(201,211,223,.48) !important;
  color:#ffffff !important;
  box-shadow:
    0 0 10px rgba(210,220,230,.12),
    0 8px 22px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.10);
}

.cf-week-reset-btn.is-enabled:hover{
  transform:translateY(-1px);
  box-shadow:
    0 0 14px rgba(220,228,236,.16),
    0 12px 26px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.12);
}

/* ----------------------------
   BLOQUEADOS
   ---------------------------- */

.cf-week-action-btn.is-disabled,
.cf-week-action-btn:disabled{
  opacity:.48 !important;
  cursor:not-allowed !important;
  box-shadow:
    0 4px 12px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.03) !important;
  filter:saturate(.72);
}

.cf-week-action-btn.is-disabled:hover,
.cf-week-action-btn:disabled:hover{
  transform:none !important;
}

/* iconos */
.cf-week-action-btn img{
  display:block;
  flex:0 0 auto;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1200px){
  .cf-week-action-btn{
    min-height:42px;
    height:42px;
    padding:0 14px !important;
    font-size:.86rem !important;
  }

  .cf-week-action-btn img{
    height:15px !important;
    width:15px !important;
    margin-right:6px !important;
  }

  .cf-week-actions-separator{
    height:26px;
    margin:0 1px 0 3px;
  }
}

@media (max-width: 640px){
  .cf-week-action-btn{
    min-height:38px;
    height:38px;
    padding:0 12px !important;
    font-size:.78rem !important;
    border-radius:12px !important;
  }

  .cf-week-action-btn img{
    height:14px !important;
    width:14px !important;
    margin-right:5px !important;
  }

  .cf-week-actions-separator{
    height:22px;
    margin:0 0 0 2px;
  }
}