/* FALLBACK — this file is auto-regenerated by Netlify on every deploy
   (see netlify.toml). This hand-written version exists only so the site
   still looks correct if you open it locally before Netlify has run its
   build. Do not hand-edit for new pages — just rely on the Netlify build,
   or run the Tailwind CLI locally (see README) if you want local preview
   to have full utility-class coverage too. */

body { margin: 0; font-family: 'Segoe UI', system-ui, sans-serif; }

.min-h-screen { min-height: 100vh; }
.flex { display: flex; }
.items-center { align-items: center; }
.justify-center { justify-content: center; }
.flex-1 { flex: 1 1 0%; }
.w-full { width: 100%; }
.w-16 { width: 4rem; }
.h-16 { height: 4rem; }
.max-w-md { max-width: 28rem; }
.mx-auto { margin-left: auto; margin-right: auto; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mt-1 { margin-top: 0.25rem; }
.mt-4 { margin-top: 1rem; }
.p-1 { padding: 0.25rem; }
.p-4 { padding: 1rem; }
.p-6 { padding: 1.5rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.rounded-full { border-radius: 9999px; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-lg { border-radius: 0.5rem; }
.rounded-2xl { border-radius: 1rem; }
.text-center { text-align: center; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.font-semibold { font-weight: 600; }
.font-medium { font-weight: 500; }
.capitalize { text-transform: capitalize; }
.transition { transition: all 0.15s ease; }
.text-white { color: #fff; }
.text-slate-800 { color: #1e293b; }
.text-slate-500 { color: #64748b; }
.text-red-200 { color: #fecaca; }
.text-emerald-700 { color: #047857; }
.bg-white { background-color: #fff; }
.bg-white\/10 { background-color: rgba(255,255,255,0.10); }
.bg-white\/20 { background-color: rgba(255,255,255,0.20); }
.bg-white\/80 { color: rgba(255,255,255,0.80); }
.text-white\/80 { color: rgba(255,255,255,0.80); }
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, #047857, #059669, #14b8a6);
}
.space-y-4 > * + * { margin-top: 1rem; }

.glass-card {
  background: rgba(255,255,255,0.10);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.20);
  border-radius: 1rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
}
.glass-input {
  width: 100%;
  padding: 0.65rem 1rem;
  border-radius: 0.5rem;
  background: rgba(255,255,255,0.20);
  border: 1px solid rgba(255,255,255,0.30);
  color: #fff;
  outline: none;
}
.glass-input::placeholder { color: rgba(255,255,255,0.70); }
.glass-btn {
  width: 100%;
  padding: 0.65rem 1rem;
  border-radius: 0.5rem;
  background: #fff;
  color: #047857;
  font-weight: 600;
  border: none;
  cursor: pointer;
}
.glass-btn:hover { opacity: 0.9; }
.glass-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.sidebar-link {
  display: flex; align-items: center; gap: 0.75rem;
  padding: 0.6rem 1rem; border-radius: 0.5rem;
  color: #475569; text-decoration: none;
}
.sidebar-link:hover { background: rgba(4,120,87,0.08); color: #047857; }
.sidebar-link-active { background: rgba(4,120,87,0.10); color: #047857; font-weight: 600; }
