/* 2026 © French Landes */
:root {
  --mc-blue: #4a6bff;
  --mc-blue-dark: #22389d;
  --mc-red: #d8433f;
  --mc-panel: rgba(10, 14, 28, 0.78);
  --mc-text: #f0f4ff;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--mc-text);
  font-family: "Segoe UI", Arial, sans-serif;
  background: linear-gradient(120deg, #10172d, #1a2f6f, #0f1a39);
  background-size: 220% 220%;
  animation: bgMove 14s ease infinite;
}

@keyframes bgMove {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.bg-blobs::before,
.bg-blobs::after {
  content: "";
  position: fixed;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  filter: blur(40px);
  opacity: 0.35;
  z-index: 0;
}
.bg-blobs::before { top: 10%; left: 8%; background: #4a6bff; }
.bg-blobs::after { bottom: 8%; right: 10%; background: #7ea2ff; }

header, main, footer { position: relative; z-index: 1; }
header {
  padding: 20px;
  text-align: center;
}
h1, h2, h3 { margin: 0 0 12px; text-transform: uppercase; letter-spacing: 1px; }
.panel {
  background: var(--mc-panel);
  border: 3px solid #000;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,0.08), 0 8px 0 #000;
  border-radius: 6px;
  padding: 20px;
}
.page-wrap {
  width: min(900px, 92vw);
  margin: 0 auto 24px;
}
.stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.row {
  display: flex;
  gap: 10px;
}
input, select {
  width: 100%;
  padding: 12px;
  border: 2px solid #000;
  background: rgba(0,0,0,0.45);
  color: #fff;
}

.mc-btn {
  width: 100%;
  padding: 14px 16px;
  border: 2px solid #000;
  font-weight: 800;
  color: #fff;
  text-transform: uppercase;
  cursor: pointer;
  background: #56617f;
  box-shadow: inset -4px -4px 0 #2f374c, inset 4px 4px 0 #7f8aac, 0 4px 0 #000;
}
.mc-btn.primary {
  background: var(--mc-blue);
  box-shadow: inset -4px -4px 0 var(--mc-blue-dark), inset 4px 4px 0 #7990ff, 0 4px 0 #000;
}
.mc-btn.google {
  background: var(--mc-red);
  box-shadow: inset -4px -4px 0 #872b28, inset 4px 4px 0 #ec7d79, 0 4px 0 #000;
}
.mc-btn:active {
  transform: translateY(2px);
  box-shadow: inset 2px 2px 0 rgba(0,0,0,0.35), 0 2px 0 #000;
}

.menu-buttons { max-width: 420px; margin: 0 auto; }
.status { min-height: 20px; font-weight: 600; }
footer { text-align: center; padding: 14px; opacity: 0.9; }

@media (max-width: 700px) { .row { flex-direction: column; } }
