/* ===== Menubar footer buttons ===== */
.cp-menubar-footer{
  display:flex; align-items:center; justify-content:space-between;
  padding:8px 10px; gap:8px; border-top:1px solid rgba(0,0,0,.06);
}

.cp-footbtn{
  display:inline-flex; align-items:center; justify-content:center;
  width:42px; height:42px; border:0; border-radius:12px; cursor:pointer;
  background:rgba(15,23,42,.04); text-decoration:none;
  transition:transform .12s ease, background .15s ease, box-shadow .15s ease;
}
.cp-footbtn:hover{ background:rgba(15,23,42,.08); transform:translateY(-1px); }
.cp-footbtn:active{ transform:translateY(0); }
.cp-footbtn.is-busy{ pointer-events:none; opacity:.7; }

.cp-footbtn.-danger{
  color:#fff; background:linear-gradient(135deg,#ef4444 0%,#f59e0b 100%);
  box-shadow:0 6px 14px rgba(239,68,68,.25);
}
.cp-footbtn.-danger:hover{ filter:brightness(.95); }

/* ===== Fullscreen loading overlay (vanilla) ===== */
.cp-overlay{
  position:fixed; inset:0; display:none; align-items:center; justify-content:center;
  background:rgba(2,6,23,.58); backdrop-filter:saturate(120%) blur(2px);
  z-index:20000;
}
.cp-overlay.is-active{ display:flex; }

.cp-overlay__box{
  background:rgba(255,255,255,.92);
  padding:24px 28px; min-width:260px;
  border-radius:16px; box-shadow:0 10px 30px rgba(2,6,23,.35);
  display:flex; flex-direction:column; align-items:center; gap:14px;
}
.cp-overlay__spinner{
  width:56px; height:56px; border-radius:50%;
  border:4px solid rgba(2,6,23,.15); border-top-color:#2563eb;
  animation:cpSpin 1s linear infinite;
}
@keyframes cpSpin{ to{ transform:rotate(360deg); } }
.cp-overlay__msg{ font-size:16px; color:#0f172a; }

/* ห้ามสกรอลล์ตอน overlay โชว์ */
.cp-noscroll, .cp-noscroll body{ overflow:hidden !important; }
