:root{
  --whw-card-bg: #ffffff;
  --whw-card-border: rgba(17,24,39,.10);
  --whw-text: #0f172a;
  --whw-muted: rgba(15,23,42,.70);
  --whw-shadow: 0 10px 30px rgba(2,6,23,.08);

  /* fallbacks if theme vars not defined */
  --whw-green: var(--wordle-green, #16a34a);
  --whw-amber: var(--wordle-amber, #f59e0b);

  --whw-radius: 18px;
  --whw-maxw: 980px;
}

.wh-wordle-card{
  max-width: var(--whw-maxw);
  margin: 18px auto;
  padding: 18px 18px 16px;
  border: 1px solid var(--whw-card-border);
  border-radius: var(--whw-radius);
  background: var(--whw-card-bg);
  box-shadow: var(--whw-shadow);
  color: var(--whw-text);
}

.wh-wordle-card__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.wh-wordle-card__title{
  font-weight: 800;
  letter-spacing: -0.02em;
  font-size: clamp(1.15rem, 1.1rem + 0.5vw, 1.55rem);
  line-height: 1.15;
}

.wh-wordle-card__meta{
  display:flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.wh-wordle-pill{
  font-size: .9rem;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid var(--whw-card-border);
  background: rgba(15,23,42,.03);
  color: var(--whw-muted);
  white-space: nowrap;
}

.wh-wordle-muted{
  color: var(--whw-muted);
  font-size: 1.05rem;
  margin: 8px 0 0;
}

.wh-wordle-hints{
  display:flex;
  flex-direction: column;
  gap: 12px;
}

.wh-wordle-hint-item{
  border: 1px solid rgba(17,24,39,.08);
  border-radius: 14px;
  padding: 12px 12px 10px;
  background: rgba(255,255,255,.85);
}

.wh-wordle-hint-item__top{
  display:flex;
  justify-content:center;
}

.wh-wordle-hint-item__content{
  margin-top: 10px;
  font-size: 1.05rem;
  line-height: 1.55;
  color: var(--whw-text);
}

.wh-wordle-hint-item__content:not([hidden]) {
  display: flex;
  justify-content: center;
}

.wh-wordle-btn{
  border: 1px solid rgba(17,24,39,.16);
  background: #fff;
  color: var(--whw-text);
  padding: 10px 14px;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 700;
  font-size: 1.02rem;
  transition: transform .05s ease, box-shadow .15s ease, border-color .15s ease;
}

.wh-wordle-btn:active{
  transform: translateY(1px);
}

.wh-wordle-btn:focus{
  outline: none;
  box-shadow: 0 0 0 4px rgba(59,130,246,.18);
}

.wh-wordle-btn[disabled]{
  opacity: .55;
  cursor: not-allowed;
}

.wh-wordle-btn--hint{
  border-color: rgba(245,158,11,.35);
  box-shadow: 0 6px 16px rgba(245,158,11,.12);
}

.wh-wordle-btn--primary{
  border-color: rgba(22,163,74,.35);
  box-shadow: 0 6px 16px rgba(22,163,74,.12);
}

.wh-wordle-answer{
  display:flex;
  flex-direction: column;
  gap: 14px;
}

.wh-wordle-tiles{
  display:flex;
  justify-content:center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 6px;
}

.wh-wordle-tile{
  width: 3rem;
  height: 3.2rem;
  border-radius: 0.5rem;
  border: 1px solid rgba(17,24,39,.16);
  background: rgba(255,255,255,.92);
  /*background: rgba(15, 23, 42, 0.95);*/
  box-shadow: 0 10px 18px rgba(2,6,23,.06);
  cursor: pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition: transform .05s ease, box-shadow .15s ease, border-color .15s ease;
}

.wh-wordle-tile:active{
  transform: translateY(1px);
}

.wh-wordle-tile:focus{
  outline: none;
  box-shadow: 0 0 0 4px rgba(59,130,246,.18);
}

.wh-wordle-tile__char{
  font-size: 1.6rem;
  font-weight: 900;
  letter-spacing: .02em;
}

.wh-wordle-tile.is-revealed{
  border-color: rgba(22,163,74,.40);
  background: var(--whw-green);
}

.wh-wordle-answer__actions{
  display:flex;
  justify-content:center;
  margin-top: 2px;
}