/* How the quiz looks. Colours, sizes and roundness — change anything.

   The four colours come from config/look.js, which the studio reads too, so
   the game and the studio around it wear the same set. The values here are
   only what to use if that file goes missing. */
:root {
  --primary: oklch(0.72 0.19 20);
  --accent: oklch(0.78 0.15 350);
  --highlight: oklch(0.85 0.15 95);
  --deep: #191033;
  /* Six bright rainbow stops the body sweeps through on a loop. */
  --hi-1: #ff6af4;
  --hi-2: #3d6eff;
  --hi-3: #00e4d8;
  --hi-4: #4dff42;
  --hi-5: #ffe14d;
  --hi-6: #ff5d5d;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
  font-family: system-ui, sans-serif;
  background: var(--deep);
  color: #fff;
  text-align: center;
}
/* The rainbow lives on its own layer behind everything. It is drawn three
   times bigger than the screen and the whole sheet of colour glides across,
   then eases back — so every band flows gently into the next and back again,
   with no hue-wrap snaps and no standing still. One slow cross takes 14s. */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: linear-gradient(125deg,
    var(--hi-1) 0%, var(--hi-2) 17%, var(--hi-3) 34%,
    var(--hi-4) 50%, var(--hi-5) 67%, var(--hi-6) 84%, var(--hi-1) 100%);
  background-size: 300% 300%;
  animation: drift 14s ease-in-out infinite;
}
@keyframes drift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
#quiz { max-width: 560px; padding: 24px; width: 100%; }
h1 { font-size: 2.4em; margin: 0.2em 0 0.6em; }
h2 { font-size: 1.5em; margin: 0.3em 0 1em; }
.count { opacity: 0.7; letter-spacing: 0.1em; }
.plays { font-size: 0.95em; opacity: 0.75; margin: 0.2em 0 1.6em; }
.tell { font-size: 1.2em; opacity: 0.9; margin-bottom: 1.5em; }
.tagline { font-size: 1.15em; opacity: 0.9; margin: 0 0 1.6em; }
button {
  display: block;
  width: 100%;
  margin: 10px 0;
  padding: 14px 18px;
  font-size: 1.1em;
  border: 2px solid color-mix(in oklab, var(--accent) 60%, transparent);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  cursor: pointer;
}
button:hover { background: color-mix(in oklab, var(--primary) 35%, transparent); }
button.big { font-size: 1.3em; padding: 18px; }

/* The "who has played" panel that sits under the quiz after a run, styled
   to match the page. Each row is a name you played under and how many runs
   that account finished, the newest first. */
#plays {
  margin: 8px auto 48px;
  width: min(560px, 100%);
  padding: 20px 24px;
  box-sizing: border-box;
  border-radius: 16px;
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.15);
  text-align: left;
  color: #fff;
  font-family: system-ui, sans-serif;
}
#plays .screens-board-title {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #ffd9a8;
}
#plays .plays-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#plays .plays-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: baseline;
  padding: 5px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
}
#plays .plays-row.plays-mine {
  border-color: var(--highlight);
  background: rgba(255, 255, 255, 0.08);
}
#plays .plays-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 15px;
}
#plays .plays-count {
  font-weight: 700;
  font-size: 15px;
  font-variant-numeric: tabular-nums;
  color: var(--highlight);
}
#plays .plays-empty {
  padding: 4px 10px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
}
