#dignity-casino-entry {
  position: relative; isolation: isolate; display: block; min-height: 148px;
  overflow: hidden; border: 1px solid rgba(255,55,98,.38); border-radius: 16px;
  color: #fff; text-decoration: none;
  background: radial-gradient(circle at 18% 18%,rgba(255,28,80,.27),transparent 34%),
    radial-gradient(circle at 82% 30%,rgba(121,37,255,.25),transparent 38%),
    linear-gradient(160deg,#18070e 0%,#09070d 47%,#120614 100%);
  box-shadow: 0 18px 38px rgba(0,0,0,.35),inset 0 0 42px rgba(255,20,74,.07);
  -webkit-tap-highlight-color: transparent;
}
#dignity-casino-entry::before {
  content: ""; position: absolute; z-index: -1; inset: 0;
  background: linear-gradient(105deg,transparent 0 13%,rgba(255,255,255,.035) 13.3% 13.8%,transparent 14.1% 100%),
    repeating-linear-gradient(90deg,transparent 0 38px,rgba(255,46,104,.055) 39px 40px),
    linear-gradient(0deg,rgba(255,24,80,.16),transparent 42%);
  transform: perspective(210px) rotateX(2deg); transform-origin: bottom;
}
#dignity-casino-entry::after {
  content: ""; position: absolute; z-index: -1; left: 7%; right: 7%; bottom: -29px;
  height: 60px; border-radius: 50%; background: rgba(255,24,78,.28); filter: blur(22px);
  animation: dignity-neon-breathe 4.8s ease-in-out infinite;
}
.dignity-entry-open {
  position: absolute; top: 11px; right: 13px; padding: 3px 7px;
  border: 1px solid rgba(255,205,115,.45); border-radius: 999px; color: #ffd99c;
  font: 500 8px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .18em;
  box-shadow: 0 0 10px rgba(255,170,61,.22);
}
.dignity-entry-sign {
  display: block; width: max-content; max-width: calc(100% - 36px); margin: 20px auto 0;
  padding: 8px 18px 7px; border: 1px solid rgba(255,80,122,.52); border-radius: 7px;
  text-align: center; background: rgba(18,3,11,.48);
  box-shadow: 0 0 8px rgba(255,30,91,.44),0 0 27px rgba(255,18,77,.18),inset 0 0 12px rgba(255,48,100,.11);
  transform: rotate(-.65deg);
}
.dignity-entry-en {
  display: block; color: #ff426f; font: 700 22px/.95 ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;
  letter-spacing: .18em; text-indent: .18em;
  text-shadow: 0 0 3px #fff,0 0 8px #ff2f65,0 0 21px #ff1553;
}
.dignity-entry-zh {
  display: block; margin-top: 6px; color: #f3ccff; font-size: 13px;
  letter-spacing: .42em; text-indent: .42em; text-shadow: 0 0 5px #a14cff,0 0 13px #822cff;
}
.dignity-entry-line {
  display: flex; justify-content: center; align-items: center; gap: 8px; margin: 13px 12px 0;
  color: rgba(255,225,229,.72); font-size: 10px; letter-spacing: .06em;
}
.dignity-entry-line::before,.dignity-entry-line::after {
  content: ""; width: 23px; height: 1px;
  background: linear-gradient(90deg,transparent,rgba(255,66,111,.62));
}
.dignity-entry-line::after { transform: scaleX(-1); }
#dignity-casino-entry:active { transform: scale(.988); }
#dignity-casino-entry:focus-visible { outline: 2px solid #ff4c78; outline-offset: 2px; }
/* 淺色主題不在卡片外圍落黑影，避免看起來像髒邊。 */
html[data-mode="light"] #dignity-casino-entry { box-shadow: none; }
@keyframes dignity-neon-breathe {
  0%,100% { opacity: .55; transform: scaleX(.88); }
  50% { opacity: .9; transform: scaleX(1.08); }
}
@media (prefers-reduced-motion: reduce) { #dignity-casino-entry::after { animation: none; } }
