:root { --gw-accent: #d71921; }
.gw-t {
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  text-shadow:
    0 0 calc(var(--gw-lit, 0) * 16px) var(--gw-accent),
    0 0 calc(var(--gw-lit, 0) * 5px) var(--gw-accent);
  filter: drop-shadow(0 0 calc(var(--gw-lit, 0) * 12px) var(--gw-accent));
  transition: text-shadow 0.25s ease, filter 0.25s ease;
}

/* Fair play notice in the footer */
.fair-note {
  margin: 16px 0 0;
  font-size: 12px;
  line-height: 1.5;
  opacity: 0.6;
}

.gw {
  --gw-bg: #ffffff;
  --gw-fg: #121212;
  --gw-muted: #5f5f66;
  --gw-line: rgba(0, 0, 0, 0.14);
  --gw-accent: #d71921;
}
:root[data-theme="dark"] .gw {
  --gw-bg: #151517;
  --gw-fg: #f2f2f3;
  --gw-muted: #a0a0a8;
  --gw-line: rgba(255, 255, 255, 0.16);
}
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] .gw {
    --gw-bg: #151517;
    --gw-fg: #f2f2f3;
    --gw-muted: #a0a0a8;
    --gw-line: rgba(255, 255, 255, 0.16);
  }
}

.gw {
  box-sizing: border-box;
  width: min(420px, calc(100vw - 32px));
  margin: auto;
  padding: 28px 24px 24px;
  border: 1px solid var(--gw-line);
  border-radius: 20px;
  background: var(--gw-bg);
  color: var(--gw-fg);
  font-family: inherit;
  font-size: 15px;
  line-height: 1.5;
}
.gw::backdrop {
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(3px);
}
.gw [hidden] { display: none !important; }

.gw h2 { margin: 0 0 8px; font-size: 24px; line-height: 1.2; }
.gw-lead { margin: 0 0 18px; color: var(--gw-muted); }

.gw-x {
  position: absolute;
  top: 12px;
  right: 14px;
  width: 32px;
  height: 32px;
  border: 0;
  background: none;
  color: var(--gw-muted);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.gw-cf { display: flex; justify-content: center; margin-bottom: 12px; }
.gw-cf:empty { display: none; }
/* Captcha hidden after the first claim but still running */
.gw-cf-quiet { height: 0; margin: 0; overflow: hidden; opacity: 0; pointer-events: none; }

.gw-after { display: grid; gap: 10px; }

.gw-btn {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border: 1px solid transparent;
  border-radius: 999px;
  font: inherit;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}
.gw-primary { background: var(--gw-accent); color: #fff; }
.gw-ghost { background: transparent; border-color: var(--gw-line); color: var(--gw-fg); }
.gw-btn:disabled { opacity: 0.45; cursor: not-allowed; }
.gw-btn:focus-visible { outline: 2px solid var(--gw-accent); outline-offset: 2px; }
.gw-x:focus-visible { outline: none; color: var(--gw-fg); }

.gw-msg { margin: 14px 0 0; text-align: center; color: var(--gw-muted); font-size: 14px; white-space: pre-line; }
.gw-msg:empty { margin: 0; }

@media (prefers-reduced-motion: reduce) {
  .gw-t { transition: none; }
}