/* Login e migrazione: stesso stile "Nebulosa" dell'app, solo ciò che serve a queste due pagine. */
@font-face {
  font-family: 'Inter Tight';
  src: url('fonts/inter-tight.woff2') format('woff2');
  font-weight: 100 900; font-style: normal; font-display: swap;
}

:root { --bg: #0A1626; --text: #F3F7FD; --text-4: #A9BAD3; --accent: #5AA8FF; --danger: #FFC2BA; color-scheme: dark; }

*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; min-height: 100dvh;
  display: grid; place-items: center; padding: 24px;
  font-family: 'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif;
  color: var(--text);
  background:
    radial-gradient(120% 55% at 10% 0%, rgba(70,130,230,.34), rgba(10,22,38,0) 62%),
    radial-gradient(110% 42% at 50% 108%, rgba(240,130,80,.26), rgba(10,22,38,0) 72%),
    var(--bg);
  -webkit-font-smoothing: antialiased;
}
.card {
  width: min(22rem, 100%); padding: 28px; border-radius: 24px;
  background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.16);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  display: flex; flex-direction: column; gap: 16px;
}
h1 { margin: 0; font-size: 28px; font-weight: 600; letter-spacing: -.02em; }
p { margin: 0; color: var(--text-4); line-height: 1.45; }
a { color: var(--accent); }
label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--text-4); }
input, button { font: inherit; color: inherit; }
input {
  height: 48px; border-radius: 24px; padding: 0 18px; font-size: 16px;
  border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.05);
}
input:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(142,197,255,.55); }
button.primary {
  height: 48px; border: none; border-radius: 24px; cursor: pointer;
  background: var(--accent); color: #06121F; font-weight: 600; font-size: 16px;
}
.error { color: var(--danger); }
