/* ── Layout ─────────────────────────────────────────────────── */
body { background: #f4f6fb; min-height: 100vh; }
.container-fluid { max-width: 1400px; }

/* ── Sidebar stat cards ──────────────────────────────────────── */
.stat-card { transition: transform .15s; }
.stat-card:hover { transform: translateY(-2px); }
.stat-icon { width: 52px; height: 52px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }

/* ── Cards ───────────────────────────────────────────────────── */
.card { border-radius: 12px; }
.card-header { border-radius: 12px 12px 0 0 !important; }

/* ── Tables ──────────────────────────────────────────────────── */
.table > :not(caption) > * > * { padding: .55rem .75rem; }
.dt-table { font-size: .9rem; }

/* ── Navbar ──────────────────────────────────────────────────── */
.navbar-brand img { object-fit: contain; }
.nav-link.active { font-weight: 600; }

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

/* ── Currency input ──────────────────────────────────────────── */
.currency-input { font-variant-numeric: tabular-nums; }

/* ── Nota form item table ────────────────────────────────────── */
#itemTable td, #itemTable th { padding: .35rem .5rem; vertical-align: middle; }
#itemTable .form-control-sm { font-size: .85rem; }

/* ── Print invoice / kwitansi ────────────────────────────────── */
@media print {
  body { background: #fff !important; }
  .navbar, footer, .print-bar, .breadcrumb { display: none !important; }
}

/* ── Select2 tweaks ──────────────────────────────────────────── */
.select2-container--bootstrap-5 .select2-selection { min-height: 38px; }

/* ── Scrollable modal body ───────────────────────────────────── */
.modal-body { max-height: 70vh; overflow-y: auto; }

/* ── Alert slim ──────────────────────────────────────────────── */
.alert { border-radius: 10px; }

/* ── Login page ──────────────────────────────────────────────── */
.card.shadow-lg { border-radius: 16px !important; }

/* ── Summernote rendered output ──────────────────────────────── */
.summernote-view p   { margin-bottom: .25rem; }
.summernote-view ul,
.summernote-view ol  { padding-left: 1.25rem; margin-bottom: .25rem; }
.summernote-view li  { margin-bottom: .1rem; }
.summernote-view h4,
.summernote-view h5  { font-size: .95rem; font-weight: 600; margin: .4rem 0 .1rem; }

/* ── DataTables override ─────────────────────────────────────── */
.dataTables_wrapper .dataTables_filter input { border-radius: 6px; border: 1px solid #dee2e6; padding: 4px 10px; }
.dataTables_wrapper .dataTables_length select { border-radius: 6px; border: 1px solid #dee2e6; padding: 2px 6px; }
.dataTables_wrapper .dataTables_info { font-size: .85rem; color: #6c757d; }
.dataTables_wrapper .dataTables_paginate .paginate_button { border-radius: 6px !important; }
