:root {
  font-family: system-ui, sans-serif;
  color: #f8f6ff;
  background: #090b16;
}

* { box-sizing: border-box; }

body {
  min-height: 100vh;
  margin: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 18% 22%, #6edcc0 0 2px, transparent 3px),
    radial-gradient(circle at 78% 18%, #ffd45c 0 2px, transparent 3px),
    radial-gradient(circle at 88% 72%, #bd8ee0 0 2px, transparent 3px),
    radial-gradient(circle at 22% 82%, #f38eab 0 1px, transparent 2px),
    #090b16;
}

.card {
  width: min(420px, 100%);
  padding: 36px;
  text-align: center;
  background: #171329;
  border: 3px solid #bd8ee0;
  box-shadow: 10px 10px 0 #352647;
}

.eyebrow {
  margin: 0;
  color: #6edcc0;
  font: 700 12px monospace;
  letter-spacing: 0.18em;
}

h1 { margin: 12px 0 24px; font-size: clamp(28px, 8vw, 44px); }

output {
  display: block;
  margin: 0 auto 24px;
  color: #ffd45c;
  font: 700 80px/1 monospace;
}

.controls { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }

button {
  min-height: 58px;
  color: #171329;
  background: #6edcc0;
  border: 0;
  box-shadow: 5px 5px 0 #473956;
  font: 700 30px monospace;
  cursor: pointer;
}

button:active { transform: translate(3px, 3px); box-shadow: 2px 2px 0 #473956; }

.reset {
  width: 100%;
  min-height: 44px;
  margin-top: 18px;
  color: #f8f6ff;
  background: #8c5ab2;
  font-size: 14px;
}

.note { margin: 20px 0 0; color: #bdb6c9; font-size: 13px; }
