

.gw-btn, .gw-chip, .gw-panel, .gw-num, .gw-sectitle { box-sizing:border-box; }


/* Buttons: the one family (.gw-btn gold primary, .ghost, .danger, tactile press) lives in /css/gw-ui.css (r14 F). */


/* r14 F (U4-14): the old block here forced Send / Match & roll / Roll the bones / Next / Send my wisp / Set free to a muted
   tint with !important, so the main action read quieter than Close. Those buttons now keep their own styles again (gold
   primaries; Set free its red danger look). Only the true secondary actions keep the quiet ghost look below. */
.rd-close, .hc-done:not(.ready), .gw-ghostbtn {
  background:rgba(255,255,255,.03) !important;
  border:1px solid rgba(227,164,78,.34) !important;
  color:#e2d6bd !important; text-shadow:none !important;
  box-shadow:none !important;
  border-radius:10px !important; font-weight:600 !important;
  transition:transform .2s cubic-bezier(.34,1.56,.64,1), opacity .14s ease !important;
}
.rd-close:hover, .hc-done:not(.ready):hover, .gw-ghostbtn:hover {
  border-color:rgba(227,164,78,.7) !important; color:#fff !important; transform:translateY(-1px) !important; filter:none !important;
}
.rd-close:active, .hc-done:not(.ready):active, .gw-ghostbtn:active {
  transform:translateY(1px) scale(.98) !important; box-shadow:inset 0 3px 7px rgba(0,0,0,.4) !important; transition-duration:80ms !important;
}
/* Homecoming "Continue" once the scene has played: it is the only way on, so it is the gold primary. */
.modal.homecoming .hc-done.ready {
  color:#231708 !important; background:linear-gradient(180deg,#ffe7a6,#f2ba52 52%,#e09a34) !important; border:1px solid #7a5620 !important;
  font-weight:700 !important; box-shadow:0 3px 12px rgba(227,164,78,.36), inset 0 1px 0 rgba(255,255,255,.55) !important;
}
/* Bones "Send challenge" borrows .wfree-go (the red Set free look): it is the primary of the challenge form, so gold. */
#bones-send.wfree-go {
  color:#231708; background:linear-gradient(180deg,#ffe7a6,#f2ba52 52%,#e09a34); border:1px solid #7a5620; font-weight:700;
  box-shadow:0 3px 12px rgba(227,164,78,.36), inset 0 1px 0 rgba(255,255,255,.55); border-radius:10px; min-height:40px;
}
#bones-send.wfree-go:hover { filter:brightness(1.06); }
/* tactile press for the restored primaries (transform only; their own rules keep colour and glow) */
.wfree-go:active, .bones-intro-btn:active, .bi-accept:active, .bones-challenge:active, .rd-act:active { transform:translateY(1px) scale(.97); }


.gw-chip {
  font-size:var(--gw-fs-caption); color:var(--gw-muted);
  border:1px solid var(--gw-line); border-radius:var(--gw-r-pill);
  padding:.18rem .6rem; display:inline-flex; gap:.35rem; align-items:center;
}
.gw-chip--accent { color:var(--gw-accent); border-color:rgba(var(--gw-glow),.45); }


.gw-panel {
  background:var(--gw-card); border:1px solid var(--gw-line);
  border-radius:var(--gw-r-lg); padding:var(--gw-sp-5);
}
.gw-sectitle {
  font-size:var(--gw-fs-label); text-transform:uppercase; letter-spacing:1.1px;
  color:var(--gw-accent); font-weight:700;
  display:flex; align-items:center; gap:var(--gw-sp-2);
}
.gw-sectitle::after { content:''; flex:1; height:1px; background:linear-gradient(90deg,rgba(var(--gw-glow),.4),transparent); }


.gw-lore { font-family:var(--gw-font-lore); font-style:italic; color:#cdbfa8; line-height:1.6; }


.gw-num { font-variant-numeric:tabular-nums; display:inline-block; }
.gw-num.gw-pop { animation:gw-pop var(--gw-dur-reward) var(--gw-ease-spring); }
@keyframes gw-pop { 0%{transform:scale(1)} 35%{transform:scale(1.22)} 100%{transform:scale(1)} }
.gw-glow { animation:gw-glowpulse 700ms var(--gw-ease-out); }
@keyframes gw-glowpulse {
  0%{box-shadow:0 0 0 rgba(var(--gw-glow),0)}
  30%{box-shadow:0 0 26px rgba(var(--gw-glow),.55)}
  100%{box-shadow:0 0 0 rgba(var(--gw-glow),0)}
}
.gw-spark { position:absolute; width:5px; height:5px; border-radius:50%; background:rgb(var(--gw-glow)); pointer-events:none; z-index:2; }


@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}
