/* dashboard.css */

/* Base */
body {
  font-family: 'Inter', sans-serif;
  color: var(--color-foreground);
  background: var(--color-background);
}

/* Navbar tweaks */
.navbar { border-bottom:none; background:#fff; box-shadow:none; }
.nav-link.active { font-weight:600; color: var(--color-primary) !important; }

/* Container padding */
.container {
  max-width: 1140px;
}

/* Cards */
.card { border:1px solid var(--color-border); border-radius: var(--radius-lg); transition: transform .2s, box-shadow .2s; background:#fff; box-shadow: var(--shadow-xs); }
.card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }

/* Badges */
.badge {
  text-transform: capitalize;
  font-size: 0.85rem;
  padding: 0.4em 0.6em;
  border-radius: 1rem;
}

/* Buttons */
.btn-primary { border-radius: var(--radius-round); padding:.5rem 1.5rem; font-weight:600; }
.btn-outline-secondary { border-radius: var(--radius-round); padding:.5rem 1.2rem; }

/* Flash messages */
.flash-container .alert { border-radius: var(--radius-md); font-size:.95rem; }

/* Responsive tweaks */
@media (max-width: 768px) {
  .navbar .gap-3 {
    gap: 0.5rem !important;
  }
  .card {
    margin-bottom: 1.5rem;
  }
}

/* make room for the fixed-top navbar */
body { padding-top: var(--tt-nav-h, 4.5rem); }

/* Dashboard layout reuses marketing CSS where main has a nav offset.
   The dashboard body already has top padding, so reset the extra margin. */
body.dashboard-layout main { margin-top: 0; }

/* ensure flash messages sit on top, just under the nav */
.flash-container { position:fixed; top: var(--tt-nav-h, 4.5rem); left:50%; transform:translateX(-50%); width:auto; max-width:90%; z-index:1050; }

/* Form styling */
.form-label { font-weight:600; color: var(--color-foreground); }
.form-control:focus { border-color: var(--color-primary); box-shadow: 0 0 0 0.18rem rgba(37,99,235,.30); }

/* Time input customization */
input[type="datetime-local"]::-webkit-calendar-picker-indicator {
  filter: invert(0.5);
  cursor: pointer;
}
