/* ==========================================================================
   Project: NOVA · 分档位/高倍房星币准入护航样式 (css/tier-guard.css)
   统一复用 3D 黑曜鎏金锁 assets/ui/icon_lock_3d.png + 顶部非遮挡轻胶囊提示
   ========================================================================== */

/* 1. 通用未解锁档位按钮叠加态 */
.ntg-locked-tier {
  position: relative !important;
  opacity: 0.78;
  filter: saturate(0.82);
}

.ntg-lock-ico {
  width: 15px;
  height: 15px;
  object-fit: contain;
  vertical-align: -2px;
  flex-shrink: 0;
  pointer-events: none;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.78)) drop-shadow(0 0 5px rgba(251, 191, 36, 0.45));
}

.ntg-corner-lock {
  position: absolute;
  top: -5px;
  right: -4px;
  width: 17px;
  height: 17px;
  object-fit: contain;
  pointer-events: none;
  z-index: 4;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.85)) drop-shadow(0 0 6px rgba(251, 191, 36, 0.55));
}

.ntg-req-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 1px 5px;
  border-radius: 999px;
  font-size: 9.5px;
  font-weight: 800;
  line-height: 1.25;
  white-space: nowrap;
  color: #fde68a;
  background: rgba(15, 23, 42, 0.86);
  border: 1px solid rgba(251, 191, 36, 0.48);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
  pointer-events: none;
}

/* 千里江山青绿白玉皮肤适配 */
.skin-qianli .ntg-req-pill,
.skin-jade .ntg-req-pill {
  color: #92400e;
  background: rgba(255, 251, 235, 0.94);
  border-color: rgba(217, 119, 6, 0.52);
  box-shadow: 0 1px 3px rgba(15, 61, 46, 0.18);
}

/* 古陆挖宝档位按钮内锁标紧凑排版 */
.dig-tier-btn.ntg-locked-tier {
  padding-right: 10px;
}
.dig-tier-btn .ntg-req-sub {
  display: block;
  width: 100%;
  font-size: 9.5px;
  font-weight: 800;
  color: #fcd34d;
  line-height: 1.15;
  margin-top: 1px;
  opacity: 0.94;
}

/* 奇点轮盘 V3 牌匾内锁标紧凑排版 */
.jp-tier-btn.ntg-locked-tier .ntg-corner-lock {
  top: -4px;
  right: -3px;
  width: 15px;
  height: 15px;
}

/* 水果机筹码胶囊锁标 */
.c-pill.ntg-locked-tier {
  padding-right: 11px;
}
.c-pill.ntg-locked-tier .ntg-corner-lock {
  top: -5px;
  right: -4px;
  width: 15px;
  height: 15px;
}

/* 破译舱母岩标签锁标 */
.dc-tier-tab.ntg-locked-tier .ntg-corner-lock {
  top: 2px;
  right: 3px;
  width: 16px;
  height: 16px;
}

/* 老虎机加注按钮达上限或需更高储备提示态 */
#nsStakePlusBtn.ntg-next-locked {
  position: relative;
  border-color: rgba(251, 191, 36, 0.55);
}
#nsStakePlusBtn .ntg-corner-lock {
  top: -4px;
  right: -4px;
  width: 14px;
  height: 14px;
}

/* 2. 顶部非阻塞轻胶囊提示 (#novaTierGuardToast) */
#novaTierGuardToast {
  position: fixed;
  top: max(10px, env(safe-area-inset-top, 10px));
  left: 50%;
  transform: translate3d(-50%, -14px, 0);
  width: max-content;
  max-width: min(95vw, 540px);
  z-index: 9880;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.2s;
}

#novaTierGuardToast.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translate3d(-50%, 0, 0);
}

.ntg-toast-card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px 7px 11px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(12, 19, 38, 0.96), rgba(24, 34, 62, 0.95));
  border: 1.5px solid rgba(251, 191, 36, 0.72);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.65), 0 0 16px rgba(251, 191, 36, 0.22);
  color: #f8fafc;
  pointer-events: none;
}

.ntg-toast-lock {
  width: 22px;
  height: 22px;
  object-fit: contain;
  flex-shrink: 0;
  filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.75)) drop-shadow(0 0 6px rgba(251, 191, 36, 0.5));
}

.ntg-toast-body {
  min-width: 0;
  flex: 1 1 auto;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.32;
  color: #f1f5f9;
  word-break: break-word;
}

.ntg-toast-body b {
  color: #fde047;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.ntg-toast-body .ntg-shortfall {
  color: #fca5a5;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.ntg-toast-coin {
  width: 14px;
  height: 14px;
  object-fit: contain;
  vertical-align: -2px;
  margin: 0 1px;
}

.ntg-toast-btn {
  flex-shrink: 0;
  pointer-events: auto;
  cursor: pointer;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(253, 224, 71, 0.85);
  background: linear-gradient(180deg, #fde047 0%, #f59e0b 100%);
  color: #1e1b08;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.4);
  transition: transform 0.12s ease;
}

.ntg-toast-btn:active {
  transform: scale(0.95);
}

@media (max-width: 420px) {
  .ntg-toast-card {
    border-radius: 16px;
    padding: 7px 9px;
    gap: 7px;
  }
  .ntg-toast-body {
    font-size: 11px;
  }
  .ntg-toast-btn {
    padding: 5px 8px;
    font-size: 10.5px;
  }
}
