:root {
  --wqxt-action-gold: #d8ba78;
  --wqxt-action-text: #f2eee7;
  --wqxt-action-soft: rgba(242, 238, 231, .62);
  --wqxt-action-line: rgba(242, 238, 231, .28);
  --wqxt-action-danger: #cf6570;
}

wqxt-action-control {
  display: inline-grid;
  justify-items: stretch;
  gap: 8px;
  min-width: var(--wqxt-action-min-width, 136px);
  color: var(--wqxt-action-text);
  font-family: "Noto Serif SC", "Songti SC", serif;
}

wqxt-action-control[hidden] { display: none !important; }

.wqxt-action-control__button {
  min-width: 100%;
  min-height: 48px;
  padding: 0 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid var(--wqxt-action-gold);
  border-radius: 6px;
  background: var(--wqxt-action-gold);
  color: #17130c;
  font: 600 14px/1 "Noto Serif SC", "Songti SC", serif;
  letter-spacing: .04em;
  cursor: pointer;
  transition: filter 160ms ease, transform 120ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease;
}

.wqxt-action-control__button:hover { filter: brightness(1.06); }
.wqxt-action-control__button:active { transform: translateY(1px); filter: brightness(.9); }
.wqxt-action-control__button:focus-visible { outline: 2px solid #8fd9c5; outline-offset: 3px; }

wqxt-action-control[variant="secondary"] .wqxt-action-control__button {
  border-color: var(--wqxt-action-line);
  background: rgba(255,255,255,.035);
  color: var(--wqxt-action-text);
}

wqxt-action-control[variant="text"] .wqxt-action-control__button {
  min-height: 44px;
  padding-inline: 8px;
  border-color: transparent;
  background: transparent;
  color: var(--wqxt-action-soft);
}

wqxt-action-control[variant="danger"] .wqxt-action-control__button {
  border-color: rgba(207,101,112,.72);
  background: rgba(207,101,112,.08);
  color: #ef9aa3;
}

wqxt-action-control[state="pending"] .wqxt-action-control__button,
wqxt-action-control[state="disabled"] .wqxt-action-control__button,
wqxt-action-control[disabled] .wqxt-action-control__button {
  cursor: default;
  transform: none;
  filter: none;
}

wqxt-action-control[state="disabled"] .wqxt-action-control__button,
wqxt-action-control[disabled] .wqxt-action-control__button {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: rgba(242,238,231,.46);
}

.wqxt-action-control__spinner {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 2px solid rgba(23,19,12,.3);
  border-top-color: #17130c;
  border-radius: 50%;
  animation: wqxt-action-spin .8s linear infinite;
}

.wqxt-action-control__reason,
.wqxt-action-control__status {
  margin: 0;
  min-height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--wqxt-action-soft);
  font: 400 11px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: center;
}

.wqxt-action-control__reason svg {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.wqxt-action-control__elapsed { font: 600 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; }
.wqxt-action-control__detail { min-height: 44px; padding: 0 4px; border: 0; background: transparent; color: var(--wqxt-action-gold); font: 500 11px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; cursor: pointer; }

@keyframes wqxt-action-spin { to { transform: rotate(360deg); } }

@media (max-width: 1000px), (max-height: 560px) {
  .wqxt-action-control__button { min-height: 44px; padding-inline: 20px; font-size: 13px; }
  .wqxt-action-control__reason, .wqxt-action-control__status { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .wqxt-action-control__button { transition: none; }
  .wqxt-action-control__spinner { animation-duration: 1.6s; }
}

/* C01 gameplay entry: card rectangle / other gameplay capsule */
wqxt-action-control[variant="gameplay-entry"]{width:240px;min-width:240px;position:relative}
wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button{height:56px;min-height:56px;border:1px solid #6b6050;border-radius:28px;background:linear-gradient(100deg,#252321ef,#111218ed);color:#eee8d9;font-size:17px;font-weight:500;justify-content:flex-start;padding:0 42px 0 68px}
wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button::after{content:'';position:absolute;right:20px;width:4px;height:4px;background:#c0a36b;border-radius:50%;box-shadow:8px 0 #887851}
wqxt-action-control[variant="gameplay-entry"][entry-kind="card"] .wqxt-action-control__button{height:48px;min-height:48px;border-radius:6px;border-color:var(--wqxt-action-line);background:rgba(16,18,23,.94);font-size:14px;justify-content:center;padding:0 24px}
wqxt-action-control[variant="gameplay-entry"][entry-kind="card"] .wqxt-action-control__button::after{display:none}
wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button:hover:not(:disabled){border-color:#d7b978;background:linear-gradient(100deg,#3a3025f5,#17181ded)}
wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button:focus-visible{outline-color:#f0cf87;outline-offset:5px}
wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button:disabled{opacity:.5;filter:saturate(.2);cursor:default}
@media(max-width:1000px),(max-height:560px){wqxt-action-control[variant="gameplay-entry"]{width:200px;min-width:200px}wqxt-action-control[variant="gameplay-entry"] .wqxt-action-control__button{height:48px;min-height:48px;border-radius:24px;font-size:15px;padding-left:59px}wqxt-action-control[variant="gameplay-entry"][entry-kind="card"] .wqxt-action-control__button{border-radius:6px;font-size:13px;padding:0 20px}}

/* Match C01 cost-action: keep a disabled explanation available without a visible second row. */
wqxt-action-control[disabled-reason-display="accessible"] .wqxt-action-control__reason{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
