:root {
  --bg: #05070c;
  --bg-soft: #0b0f1a;
  --panel: rgba(16, 21, 33, 0.9);
  --panel-strong: rgba(20, 26, 41, 0.95);
  --border: rgba(255, 255, 255, 0.06);
  --border-strong: rgba(255, 255, 255, 0.14);
  --accent: #01b7e3;
  --accent-soft: rgba(1, 183, 227, 0.15);
  --accent-text: #031a26;
  --text: #f5f8fb;
  --text-muted: #9aa5b8;
  --danger: #ff6b7a;
  --success: #3dd598;
  --warning: #f7b955;
  --radius: 20px;
  --transition: 180ms ease;
  --input-bg: rgba(12, 18, 30, 0.92);
  --input-border: rgba(1, 183, 227, 0.25);
  --input-border-strong: rgba(1, 183, 227, 0.6);
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

*, *::before, *::after {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  background: radial-gradient(circle at 15% 10%, rgba(1, 183, 227, 0.12), transparent 45%), var(--bg);
  color: var(--text);
}

body {
  display: flex;
}

button, input, textarea, select {
  font: inherit;
}

input, textarea, select {
  color: #c5cdd8;
  background: var(--input-bg);
  border: 1px solid var(--border);
}

input::placeholder, textarea::placeholder {
  color: rgba(255, 255, 255, 0.3);
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

[hidden] {
  display: none !important;
}

.is-hidden {
  display: none !important;
}

button {
  cursor: pointer;
}
