:root {
  --navy: #071a2b;
  --navy-2: #0c2940;
  --cyan: #16c7d9;
  --cyan-dark: #0799aa;
  --canvas: #f3f7f9;
  --line: #dce6eb;
  --text: #10283b;
  --muted: #667b89;
  --danger: #c93d4b;
  --success: #138561;
  --white: #fff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background: var(--canvas);
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; }
button, input, select { font: inherit; }
.brand-mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: var(--navy); background: linear-gradient(135deg, #6ef1fa, var(--cyan)); font-weight: 900; }
.button { min-height: 44px; padding: 0 18px; border: 0; border-radius: 10px; font-weight: 750; cursor: pointer; }
.button:disabled { opacity: .55; cursor: wait; }
.button-primary { color: var(--navy); background: var(--cyan); }
.button-primary:hover { background: #39d9e6; }
.button-secondary { color: var(--navy); background: #eaf2f5; }
.field { display: grid; gap: 7px; }
.field label { font-size: 13px; font-weight: 750; }
.field input, .field select { width: 100%; min-height: 46px; padding: 0 13px; border: 1px solid #cbd9e0; border-radius: 10px; color: var(--text); background: white; outline: none; }
.field input:focus, .field select:focus { border-color: var(--cyan-dark); box-shadow: 0 0 0 3px rgba(22,199,217,.15); }
.message { display: none; padding: 11px 13px; border-radius: 9px; font-size: 14px; }
.message.is-visible { display: block; }
.message.error { color: #8d2631; background: #fdebed; border: 1px solid #f3c7cd; }
.message.info { color: #075c68; background: #e8fbfd; border: 1px solid #bceef3; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
