/* Ushuru Mashinani — App Styles */

:root {
  --sidebar-width: 240px;
}

body {
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
  font-size: .875rem;
}

/* Sidebar */
.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.1) transparent;
}

.sidebar .nav-link:hover:not(.active) {
  background: rgba(255,255,255,.08);
  border-radius: .375rem;
}

/* Cards */
.hover-card {
  transition: box-shadow .15s ease, transform .1s ease;
}
.hover-card:hover {
  box-shadow: 0 .5rem 1.5rem rgba(0,0,0,.12) !important;
  transform: translateY(-1px);
}

/* Accordion wizard */
.accordion-button:not(.collapsed) {
  background-color: #f0f4ff;
  color: var(--bs-primary);
}

/* Progress bar */
.progress {
  border-radius: 99px;
}

/* Table */
.table th {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #6c757d;
  font-weight: 600;
}

/* Badge overrides */
.badge {
  font-weight: 500;
  letter-spacing: .02em;
}

/* Receipt print */
@media print {
  .sidebar, header, nav, .btn, .d-flex.gap-2.mt-3 {
    display: none !important;
  }
  body { background: white !important; }
  .card { border: 1px solid #ddd !important; box-shadow: none !important; }
  .flex-grow-1 { padding: 0 !important; }
  .p-4 { padding: 0 !important; }
}

/* Mobile responsive */
@media (max-width: 768px) {
  .sidebar {
    display: none !important;
  }
}
