/* LGPD consent island for the Blazor app — lobby-v2 visual language (literal palette, matches
   lobby-v2.css / home-v2.css: card #111822→#0d131b, gold #f3c43f, emerald #25d08a). The banner is
   plain HTML in App.razor (driven by wwwroot/js/analytics.js) so it works before the WASM boot. */
.truco-consent {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 1200;
  padding: 1rem;
  display: flex;
  justify-content: center;
}
.truco-consent__inner {
  width: 100%;
  max-width: 60rem;
  padding: 1.15rem 1.4rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  background: linear-gradient(160deg, #111822, #0d131b);
  border: 1px solid rgba(243, 196, 63, 0.35);
  border-radius: 16px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55);
}
.truco-consent__text {
  flex: 1 1 320px;
}
.truco-consent__title {
  font-size: 1.05rem;
  font-weight: 700;
  margin: 0 0 0.35rem;
  color: #f5f7fa;
}
.truco-consent__text p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #b8becc;
}
.truco-consent__text a {
  color: #f3c43f;
  text-decoration: none;
}
.truco-consent__text a:hover {
  text-decoration: underline;
}
.truco-consent__actions {
  display: flex;
  gap: 0.6rem;
  flex: 0 0 auto;
}
.truco-consent__btn {
  padding: 0.62rem 1.25rem;
  font-size: 0.92rem;
  font-weight: 600;
  border-radius: 10px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease,
    transform 0.15s ease;
}
.truco-consent__btn--ghost {
  background: transparent;
  border-color: rgba(184, 190, 204, 0.3);
  color: #b8becc;
}
.truco-consent__btn--ghost:hover {
  border-color: rgba(184, 190, 204, 0.55);
  color: #ececec;
}
.truco-consent__btn--accept {
  background: #25d08a;
  color: #07130d;
}
.truco-consent__btn--accept:hover {
  background: #2ee0a0;
  transform: translateY(-1px);
}
.truco-consent-reopen {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 1100;
  padding: 0.5rem 0.95rem;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #cdd3df;
  background: linear-gradient(160deg, #111822, #0d131b);
  border: 1px solid rgba(243, 196, 63, 0.35);
  border-radius: 999px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4);
  cursor: pointer;
  transition: color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.truco-consent-reopen:hover {
  color: #f3c43f;
  border-color: rgba(243, 196, 63, 0.6);
  transform: translateY(-1px);
}

/* On the table/tutorial (the only pages on RoomLayout, which roots a .room-shell card) the reopen
   pill is hidden so it doesn't sit over the game UI. The accept banner is intentionally NOT hidden:
   a first-time visitor deep-linking straight into a room still gets the consent prompt (LGPD). */
body:has(.room-shell) .truco-consent-reopen {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .truco-consent__btn,
  .truco-consent__btn--accept:hover,
  .truco-consent-reopen,
  .truco-consent-reopen:hover {
    transform: none;
  }
}
