/* Shared Dewa V1 admin theme. Standalone receipts and PDF layouts are excluded. */
@media screen {
body[bp-layout] {
    color-scheme: dark;
    --dw-yellow: #ffdf55; --dw-muted: #9aa8be; --dw-border: #ffffff12;
    --tblr-body-bg: #0d131e; --tblr-body-color: #e8eef8;
    --tblr-bg-surface: #151f2e; --tblr-bg-surface-secondary: #1b2739;
    --tblr-bg-surface-tertiary: #202e43; --tblr-bg-forms: #1b2739;
    --tblr-border-color: #303d52; --tblr-border-color-translucent: #ffffff12;
    --tblr-secondary-color: #9eacc2; --tblr-muted: #9eacc2;
    --tblr-heading-color: #f0f4fc; --tblr-link-color: #ffdf55;
    --tblr-link-hover-color: #fff0a3; --tblr-primary: #ffdf55;
    --tblr-primary-rgb: 255, 223, 85;
    --bs-body-bg: #0d131e; --bs-body-color: #e8eef8;
    --bs-border-color: #303d52; --bs-secondary-color: #9eacc2;
    background: #0d131e !important; color: #e8eef8;
    font-family: Inter, 'Segoe UI', sans-serif;
}
body[bp-layout]::before, body[bp-layout]::after { display: none !important; }
body[bp-layout] .page-wrapper { background: radial-gradient(ellipse at 95% 0%, #ffdf5504, transparent 45%), #0d131e; }
body[bp-layout] .page-body { margin-top: 26px; }
body[bp-layout] .navbar-vertical { background: #121b29 !important; border-right: 1px solid var(--dw-border); box-shadow: none; }
body[bp-layout] .navbar-brand, body[bp-layout] .navbar-brand a { color: var(--dw-yellow) !important; font-weight: 750; letter-spacing: -.5px; }
body[bp-layout] .navbar-vertical .nav-link { color: #b8c3d5; border-radius: 9px; transition: background .15s, color .15s; }
body[bp-layout] .navbar-vertical .nav-link:hover, body[bp-layout] .navbar-vertical .nav-link.active { background: #ffdf5510; color: var(--dw-yellow); }
body[bp-layout] .navbar-vertical .nav-icon { color: inherit; }
body[bp-layout] .navbar-vertical .dropdown-menu { background: #162132 !important; }
body[bp-layout] .navbar-vertical .dropdown-item { border-radius: 7px; }
body[bp-layout] .navbar-vertical .dropdown-item.active, body[bp-layout] .navbar-vertical .dropdown-item:active { background: #ffdf5514 !important; color: #ffdf55 !important; }
body[bp-layout] .navbar-vertical .text-secondary, body[bp-layout] .navbar-vertical .text-body { color: #a9b6ca !important; }
body[bp-layout] .breadcrumb { font-size: 11px; color: #8495af; margin-bottom: 20px; }
body[bp-layout] .breadcrumb a { color: #adbbd0; }
body[bp-layout] .breadcrumb-item.active { color: #ffdf55; }
body[bp-layout] .page-header h1, body[bp-layout] .page-header h2, body[bp-layout] .page-header h3, body[bp-layout] section.container-fluid > h2 { color: #f3f6fc; letter-spacing: -.7px; }
body[bp-layout] h1, body[bp-layout] h2, body[bp-layout] h3, body[bp-layout] h4, body[bp-layout] h5 { color: #edf3fd; }
body[bp-layout] .text-muted, body[bp-layout] .text-secondary { color: #9eacc2 !important; }
body[bp-layout] .text-body { color: #e8eef8 !important; }
body[bp-layout] .card { --tblr-card-bg: #151f2e; --tblr-card-border-color: #ffffff12; background-color: #151f2e; color: #e8eef8; border: 1px solid #ffffff12; border-radius: 15px; box-shadow: 0 6px 24px #00000012; }
body[bp-layout] .card-header { background: #ffffff02; border-bottom-color: #ffffff12; padding: 18px 22px; border-radius: 15px 15px 0 0; }
body[bp-layout] .card-body { padding: 22px; }
body[bp-layout] .card-footer { background: #101a28; border-top-color: #ffffff12; border-radius: 0 0 15px 15px; }
body[bp-layout] .card-title { color: #eef3fc; font-weight: 650; }
body[bp-layout] .bg-light, body[bp-layout] .bg-white { background-color: #1a2639 !important; }
body[bp-layout] .border { border-color: #303d52 !important; }
body[bp-layout] .btn { border-radius: 9px; font-weight: 600; font-size: 13px; box-shadow: none; }
body[bp-layout] .btn-primary { --tblr-btn-bg: #ffdf55; --tblr-btn-border-color: #ffdf55; --tblr-btn-color: #151b26; --tblr-btn-hover-bg: #ffe983; --tblr-btn-hover-border-color: #ffe983; --tblr-btn-hover-color: #151b26; --tblr-btn-active-bg: #f1cc34; --tblr-btn-active-color: #151b26; --tblr-btn-disabled-bg: #ffdf55; --tblr-btn-disabled-color: #151b26; background-color: #ffdf55; border-color: #ffdf55; color: #151b26; }
body[bp-layout] .btn-primary:hover { background-color: #ffe983; border-color: #ffe983; color: #151b26; }
body[bp-layout] .btn-secondary, body[bp-layout] .btn-default, body[bp-layout] .btn-light { background: #243249; color: #d9e3f4; border-color: #3a4860; }
body[bp-layout] .btn-outline-primary { color: #ffdf55; border-color: #ffdf5570; }
body[bp-layout] .btn-outline-primary:hover { color: #151b26; background: #ffdf55; }
body[bp-layout] .btn-outline-secondary { color: #b9c7db; border-color: #3a4860; }
body[bp-layout] .btn-outline-secondary:hover { color: #eef3fc; background: #26354e; }
body[bp-layout] .btn-link, body[bp-layout] .text-primary { color: #ffdf55 !important; }
body[bp-layout] .bg-primary { background-color: #ffdf55 !important; color: #151b26 !important; }
body[bp-layout] .bg-primary-lt { background-color: #ffdf5518 !important; color: #ffdf55 !important; }
body[bp-layout] .btn-primary.text-white, body[bp-layout] .btn.bg-primary.text-white { color: #151b26 !important; }
body[bp-layout] .card-body.bg-primary { background: linear-gradient(125deg, #283449, #192435) !important; color: #edf3fc !important; border-top: 2px solid #ffdf55; border-radius: 14px; }
body[bp-layout] .card-body.bg-primary .text-white { color: #b5c3d8 !important; }
body[bp-layout] .card-body.bg-primary h2 { color: #ffdf55; margin-top: 9px; }
body[bp-layout] .form-control, body[bp-layout] .form-select, body[bp-layout] .input-group-text { background-color: #1b2739; color: #e8eef8; border-color: #35445c; border-radius: 9px; }
body[bp-layout] .form-control, body[bp-layout] .form-select { min-height: 42px; font-size: 13px; }
body[bp-layout] .form-control::placeholder { color: #8293af; opacity: 1; }
body[bp-layout] .form-control:focus, body[bp-layout] .form-select:focus { border-color: #ffdf55; box-shadow: 0 0 0 3px #ffdf5514; background-color: #1b2739; color: #e8eef8; }
body[bp-layout] .form-control:disabled, body[bp-layout] .form-control[readonly] { background: #111b29; color: #a1b0c8; }
body[bp-layout] .form-label, body[bp-layout] label { color: #d4deee; }
body[bp-layout] .form-hint, body[bp-layout] .help-block, body[bp-layout] .form-text { color: #9eacc2; }
body[bp-layout] .form-check-input { background-color: #1b2739; border-color: #52607a; }
body[bp-layout] .form-check-input:checked { background-color: #9c8427; border-color: #ffdf55; }
body[bp-layout] .form-control.is-invalid, body[bp-layout] .form-select.is-invalid { border-color: #f58a98; }
body[bp-layout] .invalid-feedback { color: #ff9ba7; }
body[bp-layout] .table { --tblr-table-color: #d5dff0; --tblr-table-bg: transparent; --tblr-table-striped-bg: #ffffff03; --tblr-table-striped-color: #d5dff0; --tblr-table-hover-bg: #ffdf5506; --tblr-table-hover-color: #eef3fc; --tblr-table-border-color: #2c3a4e; color: #d5dff0; border-color: #2c3a4e; }
body[bp-layout] .table thead th { background: #1d2a3e; color: #aebed5; border-color: #303d52; font-size: 11px; letter-spacing: .5px; padding-top: 14px; padding-bottom: 14px; }
body[bp-layout] .table tfoot td, body[bp-layout] .table tfoot th { background: #1d2a3e; color: #ffdf55; border-color: #303d52; }
body[bp-layout] .table tbody td { border-color: #29364a; }
body[bp-layout] .table-striped > tbody > tr:nth-of-type(odd) > * { --tblr-table-accent-bg: transparent; background-color: #151f2e !important; color: #d5dff0; box-shadow: none; }
body[bp-layout] .table-striped > tbody > tr:nth-of-type(even) > * { --tblr-table-accent-bg: transparent; background-color: #1b2739 !important; color: #d5dff0; box-shadow: none; }
body[bp-layout] .table-hover > tbody > tr:hover > * { background-color: #253148 !important; color: #edf3fc; box-shadow: none; }
body[bp-layout] .dt-processing, body[bp-layout] .dataTables_processing { background: #1b2739 !important; color: #d5dff0 !important; }
body[bp-layout] .table-bordered, body[bp-layout] .table-bordered > :not(caption) > * > * { border-color: #303d52; }
body[bp-layout] .table-responsive { border-radius: 11px; }
body[bp-layout] .dataTables_wrapper { color: #adbbd0; }
body[bp-layout] .dataTables_wrapper .dataTables_length, body[bp-layout] .dataTables_wrapper .dataTables_filter, body[bp-layout] .dataTables_wrapper .dataTables_info { color: #9eacc2; font-size: 12px; }
body[bp-layout] table.dataTable { border-color: #303d52 !important; }
body[bp-layout] table.dataTable tbody tr { background-color: transparent; }
body[bp-layout] .page-link { background: #1b2739; color: #bfcbdf; border-color: #35445c; border-radius: 6px; }
body[bp-layout] .page-item.active .page-link { background: #ffdf55; color: #151b26; border-color: #ffdf55; }
body[bp-layout] .page-item.disabled .page-link { background: #141e2d; color: #71819a; }
body[bp-layout] .nav-tabs { border-color: #303d52; gap: 4px; }
body[bp-layout] .nav-tabs .nav-link, body[bp-layout] .nav-pills .nav-link { color: #aebcd3; border-radius: 8px; }
body[bp-layout] .nav-tabs .nav-link.active, body[bp-layout] .nav-pills .nav-link.active { color: #ffdf55; background: #ffdf5510; border-color: #ffdf5540; }
body[bp-layout] .dropdown-menu { background: #1a2536; border-color: #354258; color: #edf2fa; border-radius: 10px; box-shadow: 0 12px 35px #0004; }
body[bp-layout] .dropdown-item { color: #c2cde0; }
body[bp-layout] .dropdown-item:hover { background: #ffffff08; color: #ffdf55; }
body[bp-layout] .dropdown-header { color: #899bb8; }
body[bp-layout] .modal-content { background: #151f2e; color: #e8eef8; border: 1px solid #354258; border-radius: 18px; box-shadow: 0 30px 100px #0007; }
body[bp-layout] .modal-header, body[bp-layout] .modal-footer { border-color: #303d52; }
body[bp-layout] .btn-close { filter: invert(1) grayscale(100%) brightness(180%); }
body[bp-layout] .select2-container--bootstrap .select2-selection, body[bp-layout] .select2-container--default .select2-selection { background: #1b2739 !important; border-color: #35445c !important; color: #e8eef8; border-radius: 9px !important; }
body[bp-layout] .select2-selection__rendered { color: #dce5f5 !important; }
body[bp-layout] .select2-selection__choice { background: #293a53 !important; border-color: #465a78 !important; color: #e2ebf9 !important; }
body[bp-layout] .select2-dropdown, body[bp-layout] .select2-search__field { background: #1b2739 !important; color: #e8eef8 !important; border-color: #35445c !important; }
body[bp-layout] .select2-results__option[aria-selected=true] { background: #2e405a !important; }
body[bp-layout] .select2-results__option--highlighted { background: #ffdf55 !important; color: #151b26 !important; }
body[bp-layout] .swal-modal { background: #192436; border: 1px solid #354258; border-radius: 18px; }
body[bp-layout] .swal-title, body[bp-layout] .swal-text { color: #e8eef8; }
body[bp-layout] .swal-button--cancel { background: #34435c; color: #e8eef8; }
body[bp-layout] .swal2-popup { background: #192436; color: #e8eef8; }
body[bp-layout] .list-group-item { background: #151f2e; color: #d5dff0; border-color: #303d52; }
body[bp-layout] .accordion-item, body[bp-layout] .accordion-button { background: #151f2e; color: #d5dff0; border-color: #303d52; }
body[bp-layout] .progress { background: #2b3b53; }
body[bp-layout] .income-day-card, body[bp-layout] .weekday-static-chart .weekday-row { background: #192537 !important; border-color: #35445c !important; box-shadow: none; }
body[bp-layout] .income-day-card.is-empty { background: #131e2d !important; }
body[bp-layout] .income-day-title, body[bp-layout] .income-week-total, body[bp-layout] .weekday-static-chart .weekday-label, body[bp-layout] .cabang-kpi { color: #e1ebfa !important; }
body[bp-layout] .income-day-line, body[bp-layout] .weekday-static-chart .metric-value { color: #bdcbe0 !important; }
body[bp-layout] .income-calendar-weekday, body[bp-layout] .weekday-static-chart .metric-label, body[bp-layout] .chart-meta, body[bp-layout] .cabang-period { color: #98aac5 !important; }
body[bp-layout] .income-week-total { border-color: #42536e; }
body[bp-layout] .apexcharts-tooltip, body[bp-layout] .apexcharts-menu { background: #1b2739 !important; color: #e8eef8 !important; border-color: #35445c !important; }
body[bp-layout] .apexcharts-tooltip-title { background: #26364f !important; border-color: #35445c !important; }
body[bp-layout] .apexcharts-text { fill: #aebed5 !important; }
body[bp-layout] .apexcharts-gridline { stroke: #344258 !important; }
body[bp-layout] .apexcharts-legend-text { color: #b7c5dc !important; }
body[bp-layout] .fnb-image, body[bp-layout] .employee-menu-grid img { border-color: #35445c; }
body[bp-layout] .attendance-table tbody tr { background-color: #192537 !important; border-color: #35445c !important; }
body[bp-layout] .attendance-table tbody td::before { color: #9eacc2 !important; }
body[bp-layout] footer { background: transparent !important; color: #8795ac; border-top: 1px solid var(--dw-border); }
body[bp-layout] footer a { color: #aebbd0; }
body[bp-layout] :focus-visible { outline: 2px solid #ffdf55; outline-offset: 3px; }
.dewa-desktop-brand { padding: 15px 0 4px; }
.dewa-desktop-brand img { display: block; width: 180px; max-width: 100%; height: auto; border-radius: 7px; margin: 0 auto; }
.dewa-desktop-brand span { display: block; font-size: 8px; font-weight: 500; letter-spacing: 2px; color: #93a4be; margin-top: 12px; }
.dewa-mobile-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 68px; }
.dewa-mobile-brand img { width: 128px; height: auto; border-radius: 5px; display: block; }
.dewa-menu-toggle { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #35445c; border-radius: 10px; background: #1b2739; color: #ffdf55; font-size: 24px; }
.dewa-mobile-nav { display: none; }
.dewa-mobile-drawer { background: #121b29; color: #e8eef8; --tblr-offcanvas-width: 330px; width: min(330px, 88vw); border-right: 1px solid #35445c; }
.dewa-mobile-drawer .offcanvas-header { border-bottom: 1px solid #ffffff12; align-items: flex-start; padding: 22px; }
.dewa-mobile-drawer .offcanvas-header img { width: 155px; height: auto; border-radius: 6px; }
.dewa-mobile-drawer h2 { font-size: 14px; color: #afbed5; margin: 17px 0 0; }
.dewa-drawer-close {margin-left: auto; flex-shrink: 0; width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #35445c; border-radius: 10px; color: #d5dff0; background: #1b2739; font-size: 22px; }
.dewa-mobile-drawer .offcanvas-body { padding: 18px 16px 28px; overscroll-behavior: contain; }
.dewa-mobile-user { display: flex; gap: 10px; align-items: center; padding: 0 8px 18px; border-bottom: 1px solid #ffffff12; font-size: 13px; }
.dewa-mobile-user > i { font-size: 30px; color: #ffdf55; }
.dewa-mobile-user span { min-width: 0; overflow-wrap: anywhere; }
.dewa-mobile-user small { display: block; color: #8fa1bc; font-size: 10px; margin-top: 4px; }
.dewa-mobile-drawer .nav-link { display: flex; gap: 12px; align-items: center; padding: 13px 12px; color: #c2cfe3; border-radius: 9px; font-size: 13px; }
.dewa-mobile-drawer .nav-link:hover, .dewa-mobile-drawer .nav-link.active { background: #ffdf5510; color: #ffdf55; }
.dewa-mobile-drawer .nav-icon { font-size: 21px; min-width: 23px; }
.dewa-mobile-drawer .dropdown-menu { position: static !important; transform: none !important; margin: 4px 0 8px 17px; box-shadow: none; padding: 6px; min-width: 0; }
.dewa-mobile-drawer .dropdown-item { padding: 12px; font-size: 12px; gap: 10px; display: flex; border-radius: 7px; white-space: normal; }
.dewa-mobile-drawer .dropdown-item.active { background: #ffdf5514; color: #ffdf55; }
.dewa-mobile-logout { display: flex; gap: 10px; align-items: center; color: #ff99a6; border-top: 1px solid #ffffff12; padding: 20px 12px 0; margin-top: 18px; font-size: 12px; }
@media (max-width: 991.98px) {
    body[bp-layout] .page-wrapper { padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px)); }
    body[bp-layout] .navbar-vertical { position: sticky; top: 0; z-index: 1020; border-bottom: 1px solid #ffffff12; }
    body[bp-layout] #mobile-menu { display: none !important; }
    .dewa-mobile-nav { display: flex; position: fixed; bottom: 0; left: 0; right: 0; z-index: 1030; justify-content: space-around; gap: 4px; padding: 9px 8px calc(9px + env(safe-area-inset-bottom, 0px)); background: #121b29f5; border-top: 1px solid #35445c; box-shadow: 0 -8px 25px #0003; backdrop-filter: blur(16px); }
    .dewa-mobile-nav-item { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; min-height: 51px; border: 0; border-radius: 10px; color: #8fa1bc; background: transparent; font-size: 10px; font-weight: 600; text-decoration: none; }
    .dewa-mobile-nav-item i { font-size: 24px; }
    .dewa-mobile-nav-item.is-active, .dewa-mobile-nav-item:hover { background: #ffdf5510; color: #ffdf55; text-decoration: none; }
    body[bp-layout] main > .container-fluid { padding-left: 0; padding-right: 0; }
    body[bp-layout] .input-group { min-width: 0; }
    body[bp-layout] .nav-tabs .nav-link { padding: 10px 12px; font-size: 12px; }
    body[bp-layout] .card { min-width: 0; }
    body[bp-layout] .table-responsive { -webkit-overflow-scrolling: touch; }
}
@media (max-width: 767px) { body[bp-layout] .page-body { margin-top: 18px; } body[bp-layout] .card-body { padding: 16px; } body[bp-layout] .card-header { padding: 15px 16px; } body[bp-layout] .btn { font-size: 12px; } }
@media (prefers-reduced-motion: reduce) { body[bp-layout] .nav-link { transition: none; } body[bp-layout] .session-lamp.is-blinking { animation: none; } }
}
