/* -----------------------------------------------------------------------
   Global
------------------------------------------------------------------------ */
body {
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
}

/* -----------------------------------------------------------------------
   Login page
------------------------------------------------------------------------ */
.login-page {
  background: linear-gradient(135deg, #1a56db 0%, #0e3fa3 50%, #0b2d7a 100%);
  min-height: 100vh;
}

.login-icon { animation: fadeInDown 0.5s ease; }

@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* -----------------------------------------------------------------------
   Card entrance animation
------------------------------------------------------------------------ */
.card { animation: fadeIn 0.35s ease; }

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* -----------------------------------------------------------------------
   Dashboard cards
------------------------------------------------------------------------ */
.dashboard-card {
  transition: transform 0.18s ease, box-shadow 0.18s ease;
  cursor: pointer;
  border: 1px solid rgba(0,0,0,0.06) !important;
}
.dashboard-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,0,0,0.11) !important;
}

/* -----------------------------------------------------------------------
   Welcome banner
------------------------------------------------------------------------ */
.welcome-banner {
  background: linear-gradient(135deg, #1a56db, #0e3fa3) !important;
}
.avatar-circle {
  width: 56px; height: 56px;
  font-size: 1.4rem; flex-shrink: 0;
}

/* -----------------------------------------------------------------------
   Step badges (dashboard how-it-works)
------------------------------------------------------------------------ */
.step-badge {
  width: 28px; height: 28px; min-width: 28px;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.85rem;
}

/* -----------------------------------------------------------------------
   Navbar active link
------------------------------------------------------------------------ */
.navbar .nav-link.active {
  font-weight: 600;
  background: rgba(255,255,255,0.14);
}

/* -----------------------------------------------------------------------
   Input group icon fix
------------------------------------------------------------------------ */
.input-group .form-control.border-start-0 { border-left: 0 !important; }
.input-group .input-group-text.border-end-0 { border-right: 0 !important; }
.input-group:focus-within .input-group-text,
.input-group .form-control.border-start-0:focus {
  border-color: #86b7fe;
  box-shadow: none;
}

/* -----------------------------------------------------------------------
   rounded-4 (Bootstrap 5.2+ already has it, keep for older CDN)
------------------------------------------------------------------------ */
.rounded-4 { border-radius: 1rem !important; }

/* -----------------------------------------------------------------------
   Upload zone — subtle highlight when file selected
------------------------------------------------------------------------ */
.upload-zone { transition: background 0.15s ease; }
.upload-zone.has-file { background: #f0fff4; border-radius: .5rem; }

/* -----------------------------------------------------------------------
   Reports table — file icon
------------------------------------------------------------------------ */
.report-icon {
  width: 36px; height: 36px; flex-shrink: 0;
}

/* -----------------------------------------------------------------------
   Mobile tweaks
------------------------------------------------------------------------ */
@media (max-width: 575.98px) {
  .stat-num { font-size: 1.6rem !important; }
  .table { font-size: 0.85rem; }
  .btn-lg { font-size: 1rem; }
}
