/* Shared components for the simpler themed screens (home, counts, waiting,
   endgame, previous). Loaded alongside draw.css (theme vars + hero + panel). */

.hint { color: var(--text-muted); font-size: 13px; }
.center { text-align: center; }
.stack { display: grid; gap: 10px; }

/* Big title on the home hero */
.home-title { font-family: 'Bebas Neue', sans-serif; font-size: 56px; letter-spacing: 0.08em; color: #f0ead8; line-height: 0.95; }
.home-title em { color: var(--gold); font-style: normal; }
.home-sub { font-size: 13px; letter-spacing: 0.22em; text-transform: uppercase; color: rgba(240,234,216,0.6); margin-top: 6px; }

/* Secondary (cream) full-width button to complement .draw-btn */
.btn-secondary {
  width: 100%; background: var(--card-bg); border: 1px solid var(--cream-border);
  border-radius: 12px; color: var(--text-dark); font-size: 15px; font-weight: 500;
  padding: 14px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px;
  -webkit-tap-highlight-color: transparent; text-decoration: none;
}
.btn-secondary i { font-size: 17px; }
.btn-secondary:active { border-color: #b0a890; }

/* Join-by-PIN field */
.field-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.12em; color: var(--text-muted); margin: 14px 0 6px; }
.pin-input {
  width: 100%; text-align: center; letter-spacing: 0.5em; font-size: 26px;
  font-family: 'Bebas Neue', sans-serif; padding: 12px; border-radius: 12px;
  border: 1px solid var(--cream-border); background: var(--card-bg); color: var(--text-dark);
}

/* Waiting screen PIN display */
.pin-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.15em; color: var(--text-muted); text-align: center; }
.pin-big {
  font-family: 'Bebas Neue', sans-serif; font-size: 64px; letter-spacing: 0.3em;
  color: var(--green-btn); text-align: center; margin: 6px 0 4px; padding-left: 0.3em;
}

/* Dice-count editor rows */
.count-edit {
  display: flex; align-items: center; gap: 12px;
  background: var(--card-bg); border: 1px solid var(--cream-border); border-radius: 12px;
  padding: 10px 14px; margin-bottom: 8px;
}
.count-edit .count-swatch { width: 22px; height: 22px; border-radius: 50%; border: 1px solid rgba(0,0,0,0.3); flex-shrink: 0; }
.count-edit-name { flex: 1; font-weight: 600; color: var(--text-dark); text-transform: capitalize; }

/* End-game score rows */
.score-row { display: flex; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--cream-border); }
.score-row .count-swatch { width: 18px; height: 18px; border-radius: 50%; border: 1px solid rgba(0,0,0,0.3); flex-shrink: 0; }
.score-text { font-size: 14px; color: var(--text-mid); }
.score-text strong { color: var(--text-dark); text-transform: capitalize; }

/* Previous-games list */
.list-link {
  display: flex; align-items: center; justify-content: space-between;
  background: var(--card-bg); border: 1px solid var(--cream-border); border-radius: 12px;
  padding: 14px; margin-bottom: 8px; color: var(--text-dark); text-decoration: none; font-weight: 500;
}
.list-link i { color: var(--text-muted); }
