:root { --primary:#e2a8a8; --primary-600:#d89696; --bg-pink:#fef2f2; --pink:var(--primary); --mint:#ffffff; --ink:#1e293b; --muted:#6b7280; --glass:rgba(255,255,255,.8); --glass-stroke:rgba(226,168,168,.35); --surface:#ffffff; --card:#ffffff; --text:#1f2937; --border:#fde2e2; --shadow:0 6px 18px rgba(226,168,168,.15); --shadow-btn:0 4px 10px rgba(226,168,168,.15); --shadow-btn-strong:0 4px 12px rgba(226,168,168,.25); --shadow-btn-hover:0 0 0 4px rgba(226,168,168,.35); --grad-strong:rgba(226,168,168,.9); --grad-mid:rgba(226,168,168,.55); --grad-none:rgba(226,168,168,0); --radius:16px; --ring:0 0 0 4px rgba(226,168,168,.25); --secondary:#ffffff; --secondary-600:#f3f4f6; }

.btn { display:inline-flex; align-items:center; justify-content:center; font-weight:500; border-radius:999px!important; padding:0.6rem 1.2rem; font-size:15px; transition:all .25s ease; cursor:pointer; border:none; text-decoration:none; }
.btn-primary { background:var(--primary)!important; color:#fff!important; box-shadow:var(--shadow-btn)!important; }
.btn-primary:hover { background:var(--primary-600)!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.btn-primary:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }
.btn-outline-primary { background:transparent!important; color:var(--primary)!important; border:1px solid var(--primary)!important; }
.btn-outline-primary:hover { background:var(--primary)!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.btn-outline-primary:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }

.btn-secondary { background:#d1d5db!important; color:#fff!important; box-shadow:var(--shadow-btn)!important; }
.btn-secondary:hover { background:#9ca3af!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.btn-secondary:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }
.btn-outline-secondary { background:transparent!important; color:#6b7280!important; border:1px solid #9ca3af!important; }
.btn-outline-secondary:hover { background:#9ca3af!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.btn-outline-secondary:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }

.btn-outline-success { background:transparent!important; color:#16a34a!important; border:1px solid #22c55e!important; }
.btn-outline-success:hover { background:#22c55e!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.btn-outline-success:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }

.form-control, .form-select { border-radius:var(--radius); border:1px solid var(--border); padding:0.6rem 1rem; font-size:15px; background:var(--mint); color:var(--text); transition:all .25s ease; box-shadow:none; }
.form-control:focus, .form-select:focus { border-color:var(--primary)!important; box-shadow:var(--shadow-btn-hover)!important; outline:none!important; }
.form-control::placeholder { color:var(--muted)!important; opacity:1!important; }
.form-control:disabled, .form-select:disabled { background:var(--secondary-600)!important; color:var(--muted)!important; cursor:not-allowed!important; }

.search-form { background:var(--card); padding:15px; border-radius:var(--radius); margin-bottom:20px; }
.search-form .form-control, .search-form .form-select, .mobile-filter .form-control, .mobile-filter .form-select { border-radius:var(--radius); border:1px solid var(--border); padding:0.6rem 1rem; }
.mobile-filter .btn { border-radius:var(--radius); padding:0.6rem 1rem; }
.dropdown-menu .dropdown-item { border-radius:var(--radius); }

/* Pagination */
.pagination .pg-btn { display:inline-flex; align-items:center; justify-content:center; min-width:40px!important; height:40px!important; border-radius:999px!important; border:1px solid var(--border)!important; background:var(--secondary)!important; color:var(--ink)!important; font-size:14px!important; font-weight:500!important; transition:all .25s ease!important; text-decoration:none!important; box-shadow:var(--shadow-btn)!important; }
.pagination .pg-btn:hover { background:var(--primary)!important; color:#fff!important; box-shadow:var(--shadow-btn-strong)!important; }
.pagination .pg-btn:focus { outline:none!important; box-shadow:var(--shadow-btn-hover)!important; }
.pagination .pg-btn.active { background:var(--primary)!important; border-color:var(--primary)!important; color:#fff!important; }
.pagination .pg-btn.disabled { background:var(--secondary-600)!important; color:var(--muted)!important; cursor:not-allowed!important; box-shadow:none!important; }

/* Card */
.card { background:var(--card)!important; border-radius:var(--radius)!important; padding:24px; margin-bottom:24px; box-shadow:var(--shadow)!important; border:1px solid var(--border)!important; }
.card h5 { font-weight:600!important; color:var(--text)!important; margin-bottom:1.5rem!important; font-size:1.25rem!important; }
.card .btn { width:100%!important; margin-bottom:0.5rem!important; }

/* Form */
.form-group { margin-bottom:1.5rem; }
.form-label { display:block; margin-bottom:0.5rem; font-weight:500; color:var(--text); font-size:0.875rem; }

/* Page Header */
.page-header { display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; padding:0!important; min-height:auto!important; margin-bottom:1.5rem!important; }
.page-header .page-title { margin:0!important; font-size:1.25rem!important; font-weight:600!important; color:var(--text)!important; }

/* Responsive */
@media (max-width:991px) {
  .page-header { flex-direction:row!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; padding:0!important; min-height:auto!important; }
  .page-header > div:first-child { margin:0!important; flex:1!important; }
  .page-header .page-title { margin:0!important; font-size:1.25rem!important; }
  .card { padding:20px!important; }
  .dropdown-menu-form { width:100%!important; }
}
.dropdown-menu-form { width:320px!important; padding:18px!important; }

/* Status Chip */
.status-chip { display:inline-flex!important; align-items:center!important; gap:6px!important; border-radius:999px!important; padding:6px 14px!important; font-size:0.8125rem!important; font-weight:600!important; text-transform:capitalize!important; }
.status-chip.pending { background:#fef08a!important; color:#92400e!important; border:1px solid #fbbf24!important; }
.status-chip.confirmed { background:#fbcfe8!important; color:#9d174d!important; border:1px solid #f9a8d4!important; }
.status-chip.completed { background:#bfdbfe!important; color:#1d4ed8!important; border:1px solid #93c5fd!important; }
.status-chip.cancelled { background:#fecaca!important; color:#b91c1c!important; border:1px solid #fca5a5!important; }
.status-chip.unpaid { background:#fee2e2!important; color:#b91c1c!important; border:1px solid #fca5a5!important; }
.status-chip.dp { background:#fcd34d!important; color:#b45309!important; border:1px solid #f59e0b!important; }
.status-chip.paid { background:#bbf7d0!important; color:#166534!important; border:1px solid #86efac!important; }

/* Summary List */
.summary-list { list-style:none!important; padding:0!important; margin:0 0 1.5rem 0!important; display:grid!important; gap:12px!important; }
.summary-list li { display:flex!important; justify-content:space-between!important; align-items:center!important; font-size:0.875rem!important; color:var(--muted)!important; }
.summary-list li span:first-child { font-weight:500!important; color:var(--text)!important; }

/* Input Group */
.input-group .form-control { border-top-left-radius:0; border-bottom-left-radius:0; border-top-right-radius:var(--radius)!important; border-bottom-right-radius:var(--radius)!important; }
.input-group .input-group-text { border-top-right-radius:0; border-bottom-right-radius:0; border-top-left-radius:var(--radius); border-bottom-left-radius:var(--radius); background:var(--secondary); border-color:var(--border); color:var(--text); }
.text-primary { color:var(--primary)!important; }
