/* Salamaid: preset-5 (merah) disesuaikan dengan warna logo #dc3831 */
[data-pc-preset=preset-5]{--pc-sidebar-active-color:#dc3831;--bs-blue:#dc3831;--bs-primary:#dc3831;--bs-primary-rgb:220,56,49;--bs-primary-light:#fbebea;--bs-link-color:#dc3831;--bs-link-color-rgb:220,56,49;--bs-link-hover-color:#b02d27;--bs-link-hover-color-rgb:to-rgb(shift-color($pc-primary, $link-shade-percentage));--dt-row-selected:220,56,49}
[data-pc-preset=preset-5] .bg-light-primary{background:#fbebea;color:#dc3831}
[data-pc-preset=preset-5] .link-primary{color:#dc3831!important}
[data-pc-preset=preset-5] .link-primary:focus,[data-pc-preset=preset-5] .link-primary:hover{color:#b02d27!important}
[data-pc-preset=preset-5] .btn-primary{--bs-btn-color:#ffffff;--bs-btn-bg:#dc3831;--bs-btn-border-color:#dc3831;--bs-btn-hover-color:#ffffff;--bs-btn-hover-bg:#bb302a;--bs-btn-hover-border-color:#b02d27;--bs-btn-focus-shadow-rgb:225,86,80;--bs-btn-active-color:#ffffff;--bs-btn-active-bg:#b02d27;--bs-btn-active-border-color:#a52a25;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#ffffff;--bs-btn-disabled-bg:#dc3831;--bs-btn-disabled-border-color:#dc3831}
[data-pc-preset=preset-5] .btn-link{--bs-btn-color:#dc3831;--bs-btn-hover-color:#b02d27;--bs-btn-active-color:#b02d27}
[data-pc-preset=preset-5] .text-bg-primary{color:#fff!important;background-color:RGBA(220,56,49,var(--bs-bg-opacity,1))!important}
[data-pc-preset=preset-5] .accordion{--bs-accordion-btn-focus-border-color:#dc3831;--bs-accordion-btn-focus-box-shadow:0 0 0 0.2rem rgba(220,56,49, 0.25);--bs-accordion-active-color:#dc3831;--bs-accordion-active-bg:#fbebea;--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc3831'%3e%3cpath fill-rule=' evenodd' d=' M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}
[data-pc-preset=preset-5] .alert-primary{--bs-alert-color:#84221d;--bs-alert-bg:#f8d7d6;--bs-alert-border-color:#f5c3c1;--bs-alert-link-color:#6a1b18}
[data-pc-preset=preset-5] .list-group{--bs-list-group-active-bg:#dc3831;--bs-list-group-active-border-color:#dc3831}
[data-pc-preset=preset-5] .list-group-item-primary{color:#84221d;background-color:#f8d7d6}
[data-pc-preset=preset-5] .nav{--bs-nav-link-hover-color:#b02d27}
[data-pc-preset=preset-5] .nav-pills{--bs-nav-pills-link-active-bg:#dc3831}
[data-pc-preset=preset-5] .pagination{--bs-pagination-hover-color:#b02d27;--bs-pagination-focus-color:#b02d27;--bs-pagination-focus-box-shadow:0 0 0 0.2rem rgba(220,56,49, 0.25);--bs-pagination-active-bg:#dc3831;--bs-pagination-active-border-color:#dc3831}
[data-pc-preset=preset-5] .progress{--bs-progress-bar-bg:#dc3831}
[data-pc-preset=preset-5] .form-check .form-check-input.input-primary:checked{border-color:#dc3831;background-color:#dc3831}
[data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:checked{border-color:#fbebea;background-color:#fbebea}
[data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23dc3831' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")}
[data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23dc3831'/%3e%3c/svg%3e")}
[data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:focus[type=checkbox],[data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:focus[type=radio],[data-pc-preset=preset-5] .form-check .form-check-input.input-primary:focus[type=checkbox],[data-pc-preset=preset-5] .form-check .form-check-input.input-primary:focus[type=radio]{box-shadow:0 0 0 .2rem rgba(220,56,49,.25);border-color:#dc3831}
[data-pc-preset=preset-5] .form-check.form-switch .form-check-input.input-light-primary:checked{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23dc3831'/%3e%3c/svg%3e")}
[data-pc-preset=preset-5] .btn-light-primary{background:#fbebea;color:#dc3831;border-color:#fbebea}
[data-pc-preset=preset-5] .btn-light-primary .material-icons-two-tone{background-color:#dc3831}
.show>[data-pc-preset=preset-5] .btn-light-primary.dropdown-toggle,[data-pc-preset=preset-5] .btn-check:active+.btn-light-primary,[data-pc-preset=preset-5] .btn-check:checked+.btn-light-primary,[data-pc-preset=preset-5] .btn-light-primary.focus,[data-pc-preset=preset-5] .btn-light-primary:focus,[data-pc-preset=preset-5] .btn-light-primary:hover,[data-pc-preset=preset-5] .btn-light-primary:not(:disabled):not(.disabled).active,[data-pc-preset=preset-5] .btn-light-primary:not(:disabled):not(.disabled):active{background:#dc3831;color:#fff;border-color:#dc3831}
[data-pc-preset=preset-5] .btn-link-primary{background:0 0;color:#dc3831;border-color:transparent}
[data-pc-preset=preset-5] .btn-link-primary .material-icons-two-tone{background-color:#dc3831}
.show>[data-pc-preset=preset-5] .btn-link-primary.dropdown-toggle,[data-pc-preset=preset-5] .btn-check:active+.btn-link-primary,[data-pc-preset=preset-5] .btn-check:checked+.btn-link-primary,[data-pc-preset=preset-5] .btn-link-primary.focus,[data-pc-preset=preset-5] .btn-link-primary:focus,[data-pc-preset=preset-5] .btn-link-primary:hover,[data-pc-preset=preset-5] .btn-link-primary:not(:disabled):not(.disabled).active,[data-pc-preset=preset-5] .btn-link-primary:not(:disabled):not(.disabled):active{background:#fbebea;color:#dc3831;border-color:#fbebea}
[data-pc-preset=preset-5] .slider-selection{background-image:linear-gradient(to bottom,#eeafac 0,#eeafac 100%)}
[data-pc-preset=preset-5] .slider-selection.tick-slider-selection,[data-pc-preset=preset-5] .slider-tick.in-selection{background-image:linear-gradient(to bottom,#ea9c98 0,#ea9c98 100%)}
[data-pc-preset=preset-5] .swal-button:active,[data-pc-preset=preset-5] .swal-button:not([disabled]):hover{background-color:#c9291f}
[data-pc-preset=preset-5] .swal-button:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(220,56,49,.29)}
[data-pc-preset=preset-5] .swal-content__input:focus,[data-pc-preset=preset-5] .swal-content__textarea:focus{border-color:rgba(220,56,49,.29)}
[data-pc-preset=preset-5] .swal2-styled:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(220,56,49,.4)!important}
[data-pc-preset=preset-5] .table-primary{--bs-table-color:#ffffff;--bs-table-bg:#dc3831;--bs-table-border-color:#e04c46;--bs-table-striped-bg:#de423b;--bs-table-striped-color:#ffffff;--bs-table-active-bg:#e04c46;--bs-table-active-color:#ffffff;--bs-table-hover-bg:#dc3c35;--bs-table-hover-color:#ffffff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}
[data-pc-theme=dark][data-pc-preset=preset-5] .form-check .form-check-input.input-light-primary:checked{border-color:rgba(220,56,49,.2);background-color:rgba(220,56,49,.2)}
[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary{background:rgba(220,56,49,.2);color:#dc3831;border-color:rgba(220,56,49,.2)}
[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary .material-icons-two-tone{background-color:#dc3831}
.show>[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary.dropdown-toggle,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary.focus,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary:focus,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary:hover,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary:not(:disabled):not(.disabled).active,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-light-primary:not(:disabled):not(.disabled):active{background:#dc3831;color:#fff;border-color:#dc3831}
[data-pc-theme=dark][data-pc-preset=preset-5] .btn-check:active+.btn-light-primary,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-check:checked+.btn-light-primary{background:#dc3831!important;color:#fff;border-color:#dc3831}
[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary{background:0 0;color:#dc3831;border-color:transparent}
[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary .material-icons-two-tone{background-color:#dc3831}
.show>[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary.dropdown-toggle,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-check:active+.btn-link-primary,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-check:checked+.btn-link-primary,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary.focus,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary:focus,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary:hover,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary:not(:disabled):not(.disabled).active,[data-pc-theme=dark][data-pc-preset=preset-5] .btn-link-primary:not(:disabled):not(.disabled):active{background:rgba(220,56,49,.2);color:#dc3831;border-color:rgba(220,56,49,.2)}
.layout-advance a.preset.preset-5{background:#dc3831}
.layout-advance.preset-5{--pc-layout-2-color:#dc3831}
.theme-color.preset-color.preset-color>a[data-value=preset-5]{background:#dc3831}

/* Penyesuaian tambahan Salamaid */
.pc-sidebar .m-header .logo-lg { max-height: 36px; width: auto; }
.pc-header .m-header .logo-lg { max-height: 34px; width: auto; }
.table td, .table th { vertical-align: middle; }
.table thead th { white-space: nowrap; }
.pagination { margin-bottom: 0; }
.approval-reject-form { min-width: 16rem; }
.layout-advance { --pc-layout-2-color: #dc3831; }

/* Tombol & tautan di page-header (latar merah) */
.layout-advance .page-header .btn-primary { --bs-btn-bg: #fff; --bs-btn-color: #dc3831; --bs-btn-border-color: #fff; --bs-btn-hover-bg: #fbebea; --bs-btn-hover-color: #b02d27; --bs-btn-hover-border-color: #fbebea; --bs-btn-active-bg: #f8d7d6; --bs-btn-active-color: #b02d27; }
.layout-advance .page-header .btn-outline-secondary,
.layout-advance .page-header .btn-light-primary { --bs-btn-color: #fff; --bs-btn-border-color: rgba(255, 255, 255, .6); --bs-btn-hover-bg: rgba(255, 255, 255, .15); --bs-btn-hover-color: #fff; --bs-btn-hover-border-color: #fff; background: transparent; color: #fff; border-color: rgba(255, 255, 255, .6); }
.layout-advance .page-header .page-header-title a:not(.btn) { color: #fff; }

/* Jarak vertikal/horizontal antar elemen anak */
.stack-sm > * + * { margin-top: .5rem; }
.stack > * + * { margin-top: 1rem; }
.stack-lg > * + * { margin-top: 1.5rem; }
.stack-x > * + * { margin-left: .75rem; }
.stack-x > form { display: inline; }

/* Grid responsif (dipakai dengan .d-grid + .gap-*) */
.cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.span-2 { grid-column: span 2 / span 2; }
.span-full { grid-column: 1 / -1; }
@media (min-width: 576px) {
    .cols-sm-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cols-sm-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cols-sm-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .cols-sm-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .cols-sm-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .span-sm-2 { grid-column: span 2 / span 2; }
    .span-sm-3 { grid-column: span 3 / span 3; }
    .span-sm-4 { grid-column: span 4 / span 4; }
    .span-sm-5 { grid-column: span 5 / span 5; }
    .span-sm-6 { grid-column: span 6 / span 6; }
}
@media (min-width: 992px) {
    .cols-lg-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .cols-lg-7 { grid-template-columns: repeat(7, minmax(0, 1fr)); }
    .span-lg-2 { grid-column: span 2 / span 2; }
}

/* Lebar tetap kecil untuk input pencarian/filter */
.mw-search { max-width: 18rem; }
.w-5r { width: 5rem; } .w-7r { width: 7rem; } .w-8r { width: 8rem; } .w-10r { width: 10rem; } .w-12r { width: 12rem; } .w-18r { width: 18rem; }

.text-pre-line { white-space: pre-line; }
.cursor-pointer { cursor: pointer; }
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }

/* Halaman memakai jarak eksplisit (mt-*, stack), jadi paragraf tanpa margin bawah bawaan */
.pc-content p { margin-bottom: 0; }
.stack-sm > .card, .stack > .card, .stack-lg > .card { margin-bottom: 0; }
.page-header .page-header-subtitle { color: rgba(255, 255, 255, .8); }
.mw-form { max-width: 36rem; }
.d-grid > .card, .row > [class*="col"] > .card:last-child { margin-bottom: 0; }
.pc-content .card h3 { font-size: 1rem; }
.auth-logo { max-height: 56px; }

/* DataTable (lihat docs/layout/datatable.md) */
.datatable-card .table > thead th { white-space: nowrap; font-weight: 600; }
.datatable-card .table td.text-wrap, .datatable-card .table th.text-wrap { white-space: normal; }
.datatable-card .dt-container .dt-search input { margin-left: 0; min-width: 14rem; }
.datatable-card .dt-container .dt-paging .pagination { margin-bottom: 0; }
.datatable-footer .pagination { margin-bottom: 0; }

/* Form (lihat docs/layout/form.md) */
.form-floating > textarea.form-control { height: 6.5rem; }
.form-floating > .form-control[type="date"], .form-floating > .form-control[type="time"], .form-floating > .form-control[type="month"] { min-height: calc(3.5rem + 2px); }
.form-section-title { font-size: .875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--bs-secondary); }

/* Dashboard */
.dashboard-hero { position: relative; border: 0; background: linear-gradient(135deg, #6c4ce8 0%, #aa3ce7 52%, #ef6b72 100%); }
.dashboard-hero .card-body { position: relative; z-index: 1; min-height: 13.5rem; }
.dashboard-hero-icon { position: absolute; right: 1.5rem; bottom: -1.9rem; color: rgba(255, 255, 255, .14); font-size: 12rem; line-height: 1; transform: rotate(-12deg); }
.dashboard-attendance-card { position: relative; border: 0; background: linear-gradient(135deg, #e7fbf8 0%, #d8edff 100%); }
.dashboard-attendance-card::after { position: absolute; right: -1.7rem; bottom: -2.4rem; width: 9rem; height: 9rem; content: ''; border-radius: 50%; background: rgba(57, 190, 220, .14); }
.dashboard-attendance-card .card-body { position: relative; z-index: 1; }
.dashboard-stat-card { position: relative; border: 0; color: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.dashboard-stat-card::after { position: absolute; right: -1.6rem; bottom: -2.7rem; width: 9rem; height: 9rem; content: ''; border: 1.25rem solid rgba(255, 255, 255, .13); border-radius: 50%; }
.dashboard-stat-card:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 12px 24px rgba(37, 40, 80, .2); }
.dashboard-stat-card .card-body { position: relative; z-index: 1; }
.dashboard-stat-card h3, .dashboard-stat-card .text-muted, .dashboard-stat-card .text-warning { color: #fff !important; }
.dashboard-stat-card .text-muted, .dashboard-stat-card .text-warning { opacity: .78; }
.dashboard-stat-card .avtar { background: rgba(255, 255, 255, .18) !important; color: #fff; }
.dashboard-stat-card--employees { background: linear-gradient(135deg, #7254e8 0%, #9b59e9 100%); }
.dashboard-stat-card--attendance { background: linear-gradient(135deg, #18b6a7 0%, #38d7b7 100%); }
.dashboard-stat-card--leave { background: linear-gradient(135deg, #f09339 0%, #f7c23a 100%); }
.dashboard-stat-card--payroll { background: linear-gradient(135deg, #2989db 0%, #4a7df0 100%); }
.dashboard-panel { border: 0; box-shadow: var(--pc-card-box-shadow); }
.dashboard-panel .card-header { border-bottom: 0; }
.dashboard-panel--attendance .card-header { background: linear-gradient(90deg, #effaf8 0%, #fff 75%); }
.dashboard-panel--approvals .card-header { background: linear-gradient(90deg, #f6f0ff 0%, #fff 75%); }
.dashboard-approval { color: inherit; border-bottom: 1px solid var(--bs-border-color); }
.dashboard-approval:nth-child(3n + 1) .avtar { background: #f1eaff; color: #7556e8; }
.dashboard-approval:nth-child(3n + 2) .avtar { background: #e7faf6; color: #18aa9b; }
.dashboard-approval:nth-child(3n) .avtar { background: #fff3dc; color: #e89a1c; }
.dashboard-approval:last-child { border-bottom: 0; }
.dashboard-approval:hover { color: inherit; }
.dashboard-empty { color: inherit; }

/* Select2 di dalam form-floating: label tetap mengambang, kotak diberi ruang untuk label. */
.form-floating > .select2-container ~ label { opacity: .65; transform: scale(.85) translateY(-.5rem) translateX(.15rem); z-index: 3; pointer-events: none; }
.form-floating > .select2-container .select2-selection--single { padding-top: 1.625rem; height: calc(3.5rem + 2px); }
.form-floating > .select2-container .select2-selection--single .select2-selection__rendered { padding-left: 0; }
.form-floating > .select2-container .select2-selection--single .select2-selection__arrow { top: 1.1rem; }
