/* =============================================
   ระบบปฏิทินงานออนไลน์ — Custom CSS
   Font: Sarabun (มาตรฐานราชการ)
   ============================================= */

/* --- Base --- */
body, .content-wrapper, .main-sidebar, .navbar, .main-footer,
h1, h2, h3, h4, h5, h6, p, label, input, select, textarea, button, a, td, th {
  font-family: 'Sarabun', sans-serif !important;
}

/* --- FullCalendar overrides --- */
.fc .fc-toolbar-title { font-size: 1.2rem; font-weight: 600; }
.fc .fc-button { font-family: 'Sarabun', sans-serif !important; font-size: 13px; }
.fc .fc-button-primary { background-color: #1a3c6e !important; border-color: #1a3c6e !important; }
.fc .fc-button-primary:hover { background-color: #2563a8 !important; border-color: #2563a8 !important; }
.fc .fc-button-primary:not(:disabled).fc-button-active { background-color: #378ADD !important; border-color: #378ADD !important; }
.fc .fc-daygrid-day-number { color: #333; font-size: 13px; }
.fc .fc-daygrid-day.fc-day-today { background: #e8f4fd !important; }
.fc .fc-event { font-size: 11px; padding: 1px 4px; cursor: pointer; border-radius: 4px; }
.fc .fc-event:hover { opacity: 0.85; }
.fc .fc-event.event-pending { opacity: 0.85; }
.fc .fc-event.event-cancelled { opacity: 0.5; text-decoration: line-through; }
.fc .fc-col-header-cell-cushion { font-weight: 600; font-size: 12px; color: #555; }
.fc-theme-standard .fc-scrollgrid { border-color: #dee2e6; }

/* --- Color Picker --- */
.color-dot { transition: transform .15s, border-color .15s; }
.color-dot:hover { transform: scale(1.15) !important; }

/* --- Sidebar --- */
.main-sidebar { box-shadow: 2px 0 8px rgba(0,0,0,.12); }
.nav-sidebar .nav-link { border-radius: 6px; margin: 1px 8px; padding: 8px 12px; }
.nav-sidebar .nav-link.active { background-color: rgba(55,138,221,.2); color: #90c4f9 !important; }

/* --- Cards --- */
.card { border-radius: 10px; box-shadow: 0 1px 6px rgba(0,0,0,.07); }
.card-header { border-radius: 10px 10px 0 0 !important; }
.card.card-primary.card-outline > .card-header { border-top: 3px solid #378ADD; }
.card.card-warning.card-outline > .card-header { border-top: 3px solid #EF9F27; }

/* --- Buttons --- */
.btn { border-radius: 6px; font-size: 13px; }
.btn-sm { font-size: 12px; padding: 3px 10px; }

/* --- Badges --- */
.badge { font-family: 'Sarabun', sans-serif !important; font-size: 11px; }

/* --- Tables --- */
.table th { font-weight: 600; font-size: 13px; }
.table td { font-size: 13px; vertical-align: middle; }

/* --- DataTables --- */
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: #378ADD !important; color: #fff !important; border-radius: 4px; border: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: #e8f4fd !important; border: none; border-radius: 4px;
}

/* --- Notification Row --- */
.notif-row:hover { background: #f0f7ff !important; }

/* --- Select2 --- */
.select2-container .select2-selection--single { height: 38px; border-radius: 6px; border-color: #ced4da; }
.select2-container .select2-selection--single .select2-selection__rendered { line-height: 36px; }
.select2-container .select2-selection--single .select2-selection__arrow { height: 36px; }

/* --- Small Box (Reports) --- */
.small-box { border-radius: 10px; }
.small-box h3 { font-size: 2rem; font-weight: 700; }

/* --- Login Page --- */
.login-page body { font-family: 'Sarabun', sans-serif !important; }

/* --- Modal --- */
.modal-header { border-radius: .3rem .3rem 0 0; }
.modal-content { border-radius: 10px; border: none; box-shadow: 0 10px 40px rgba(0,0,0,.2); }

/* --- Print --- */
@media print {
  .main-sidebar, .main-header, .main-footer, .content-header, .btn, .card-tools { display: none !important; }
  .content-wrapper { margin-left: 0 !important; }
}

/* --- Scrollbar custom --- */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #bbb; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #888; }
