/* Cyrano auth-page theme. Scoped to the login/forgot/reset layout only
   (unique class stack). Dashboard and admin are not matched. */
@import url("https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter:wght@400;500;600;700&display=swap");

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 {
  --background: #f8fafd;
  --foreground: #0a1331;
  --primary: #080f32;
  --accent: #2bb3a3;
  --accent-strong: #0f766e;
  --accent-foreground: #080f32;
  --navy: #080f32;
  --navy-2: #131c40;
  --navy-foreground: #eef2f9;
  --navy-muted: #98a5be;
  --muted-foreground: #5b6375;
  --border: #dde1ea;
  --card: #fff;
  --radius: .75rem;
  --font-sans: Inter, ui-sans-serif, system-ui, sans-serif;
  --font-display: "Instrument Serif", Georgia, serif;
  font-family: var(--font-sans);
  color: var(--foreground);
  background-color: var(--background) !important;
  background-image: none !important;
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50,
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 * {
  font-family: inherit;
}

/* Wordmark */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 h1.text-2xl {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em;
  color: var(--foreground) !important;
  font-size: 1.75rem !important;
  line-height: 1 !important;
}

/* Welcome Back / Reset Your Password */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 h2.text-2xl {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em;
  color: var(--foreground) !important;
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-sm.text-gray-500,
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-gray-600,
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-gray-500 {
  color: var(--muted-foreground) !important;
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-\[\#0B1F3A\] {
  color: var(--foreground) !important;
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-\[\#0B1F3A\]:hover {
  color: var(--accent-strong) !important;
}

/* Homepage "C" mark in place of the Partner Laine PNG */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .w-12.h-12.bg-white.rounded-xl {
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  background: #080f32 url("/cyrano-theme/logo.svg") center / 28px 28px no-repeat !important;
  border-radius: 6px !important;
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 img[src*="partner-laine-logo"] {
  width: 28px !important;
  height: 28px !important;
  opacity: 0;
}

/* Card */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .border.border-gray-200.shadow-lg {
  border-color: var(--border) !important;
  border-radius: 1rem !important;
  box-shadow: 0 8px 30px rgba(8, 15, 50, .08) !important;
  background: var(--card);
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 label {
  color: var(--foreground);
  font-weight: 500;
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input[type="email"],
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input[type="password"],
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input[type="text"] {
  height: 44px !important;
  border-color: var(--border) !important;
  border-radius: .65rem !important;
  color: var(--foreground);
  background: #fff !important;
  font-family: var(--font-sans);
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(43, 179, 163, .25) !important;
  outline: none;
}

/* Primary actions: teal pill, like "Book a demo" */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.bg-\[\#0B1F3A\] {
  background: var(--accent) !important;
  color: var(--accent-foreground) !important;
  border-radius: 9999px !important;
  min-height: 44px !important;
  font-family: var(--font-sans);
  font-weight: 600 !important;
  font-size: 14px !important;
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.bg-\[\#0B1F3A\]:hover:not(:disabled) {
  filter: brightness(.95);
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.bg-\[\#0B1F3A\]:disabled {
  opacity: .6;
}

.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-blue-600 {
  color: var(--accent-strong) !important;
}

/* Right-hand marketing panel (desktop login only) */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 div.bg-\[\#0B1F3A\] {
  background: var(--navy) !important;
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 div.bg-\[\#0B1F3A\] h2 {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em;
  line-height: 1.05;
  color: var(--navy-foreground);
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-blue-100 {
  color: var(--navy-muted) !important;
}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .bg-blue-600 {
  background: var(--accent) !important;
  color: var(--navy) !important;
}
/* cyrano-a11y-20261110 */
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input:focus,.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 input:focus-visible{border-color:var(--accent)!important;outline:2px solid #080f32!important;outline-offset:2px;box-shadow:0 0 0 3px #fff!important}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.bg-\[\#0B1F3A\]:focus-visible,.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 #remember:focus-visible,.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.absolute.right-3:focus-visible{outline:2px solid #080f32!important;outline-offset:3px;box-shadow:0 0 0 3px #fff!important}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 button.absolute.right-3{color:#0a1331!important;width:44px!important;height:44px!important;display:inline-flex!important;align-items:center;justify-content:center;right:4px!important;transform:translateY(-50%)!important}
.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 [role="alert"],.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-red-500,.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-destructive,.min-h-screen.bg-gradient-to-br.from-gray-50.to-blue-50 .text-sm.\[\&_p\]\:leading-relaxed{color:#B91C1C!important}
