:root{
  --bg: #fff7d6;
  --card: #ffffff;
  --ink: #1d1d1f;
  --muted:#6b7280;
  --shadow: 0 18px 40px rgba(0,0,0,.10);
  --r: 24px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 15% 10%, #ffeaa0 0 35%, transparent 36%),
    radial-gradient(circle at 90% 20%, #ffd5f0 0 30%, transparent 31%),
    radial-gradient(circle at 40% 90%, #c8f7ff 0 35%, transparent 36%),
    var(--bg);
}

.wrap{max-width:840px;margin:0 auto;padding:18px}
.brand{display:flex;gap:14px;align-items:center;margin:14px 0 18px}
.logo{font-size:44px;line-height:1}
h1{margin:0;font-size:28px}
.sub{margin:2px 0 0;color:var(--muted)}

.card{
  background:var(--card);
  border-radius:var(--r);
  box-shadow:var(--shadow);
  padding:18px;
}

.topbar{
  display:flex;flex-wrap:wrap;gap:10px;align-items:center;
  margin:12px 0 14px;
}
.chip{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  padding:10px 12px;
  border-radius:999px;
  box-shadow:0 8px 18px rgba(0,0,0,.06);
  font-weight:700;
}
.chip.link{font-weight:800;text-decoration:none;color:var(--ink)}
.center{text-align:center}
.big{font-size:22px}
.word{font-size:24px}
.emoji{font-size:26px;margin-left:6px}

.form{display:grid;gap:10px;margin-top:12px}
.lbl{font-weight:700}
.inp{
  padding:14px 14px;
  font-size:18px;
  border-radius:16px;
  border:2px solid rgba(0,0,0,.12);
  outline:none;
}
.inp:focus{border-color:rgba(0,0,0,.25)}

.alert{
  background:#fff1f2;
  border:1px solid rgba(255,0,0,.12);
  color:#991b1b;
  padding:10px 12px;
  border-radius:14px;
  font-weight:600;
}

.grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:14px;
  margin:16px 0 8px;
}

.colorBtn{
  border:none;
  border-radius:22px;
  padding:18px 14px;
  font-size:22px;
  font-weight:900;
  color:#fff;
  cursor:pointer;
  background: var(--c);
  box-shadow: 0 16px 28px rgba(0,0,0,.12);
  transition: transform .08s ease, filter .08s ease;
}
.colorBtn:active{transform: scale(.98); filter:brightness(.95)}
.colorBtn[disabled]{opacity:.65; cursor:default}

.row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 18px;
  border-radius:18px;
  font-weight:900;
  font-size:18px;
  border:2px solid rgba(0,0,0,.10);
  background:#fff;
  text-decoration:none;
  color:var(--ink);
  cursor:pointer;
}
.btn.primary{background:#ffd60a}
.btn.ghost{background:#fff}
.btn:disabled{opacity:.55;cursor:not-allowed}

.toast{
  min-height:28px;
  margin-top:10px;
  font-weight:900;
  font-size:18px;
}
.toast.ok{color:#15803d}
.toast.no{color:#b91c1c}

.scoreBig{font-size:54px;font-weight:1000;margin:8px 0}

.mini{margin-top:10px;color:var(--muted);font-weight:700}
.foot{margin:14px 0 6px;text-align:center;color:rgba(0,0,0,.55);font-weight:700}