.shafx-card{
  background:var(--shafx-card);
  border:1px solid var(--shafx-border);
  border-radius:var(--shafx-radius);
  box-shadow:var(--shafx-shadow);
}
.btn{
  min-height:var(--tap);
  padding:10px 14px;
  border-radius:14px;
  border:1px solid var(--shafx-border);
  background:rgba(255,255,255,.08);
  color:var(--shafx-text);
  cursor:pointer;
}
.btn.primary{
  background:var(--shafx-gold);
  color:#111;
  border-color:rgba(0,0,0,.12);
  font-weight:800;
}
.input, input, select, textarea{
  min-height:var(--tap);
  border-radius:14px;
}

/* Skeleton loaders */
.skeleton{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.06);
  border:1px solid var(--shafx-border);
  border-radius:14px;
  min-height:64px;
}
.skeleton:before{
  content:"";
  position:absolute; inset:0;
  transform:translateX(-100%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);
  animation:skeleton 1.2s infinite;
}
@keyframes skeleton{100%{transform:translateX(100%);}}
.widget-status{
  display:flex; gap:10px; align-items:center; justify-content:space-between;
  font-size:12px; color:var(--shafx-muted);
  margin-top:10px;
}
.badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  border:1px solid var(--shafx-border);
  background:rgba(255,255,255,.06);
}
.badge b{color:var(--shafx-gold);}
.widget-error{
  margin-top:10px;
  padding:12px 14px;
  border-radius:14px;
  border:1px dashed rgba(255,204,0,.35);
  background:rgba(255,204,0,.08);
  color:var(--shafx-text);
}


/* Safety: hidden elements must never block clicks */
[hidden], .hidden, .is-hidden { pointer-events: none !important; }
.splash-screen, #splashScreen, #loadingScreen, .loading-screen, .preloader, .loader-overlay { pointer-events: auto; }
.splash-screen.hidden, #splashScreen.hidden, #loadingScreen.hidden, .loading-screen.hidden, .preloader.hidden, .loader-overlay.hidden { pointer-events: none !important; }


/* ShaFX Header Responsive */
.shafx-header .shafx-mobile{background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;margin-top:10px}
.shafx-header .shafx-mobile a{display:block;padding:10px 12px;border-radius:10px}
.shafx-header .shafx-burger{display:none}
@media (max-width: 991px){
  .shafx-header .shafx-nav{display:none !important}
  .shafx-header .shafx-burger{display:inline-flex}
}
@media (min-width: 992px){
  .shafx-header .shafx-mobile{display:none !important}
}
