/* Shared Bootstrap skin. Preserve Bootstrap visibility and navigation mechanics. */
.peoplepro-modern {
    --pp-primary: #144D78;
    --pp-primary-hover: #103D60;
    --pp-primary-soft: #EAF2F8;
    --pp-secondary: #0AB7A3;
    --pp-secondary-hover: #078F80;
    --pp-accent: var(--pp-primary);
    --pp-accent-soft: var(--pp-primary-soft);
    --pp-ink: #243447;
    --pp-muted: #64748b;
    --pp-border: #dce4ec;
    --pp-surface: #f3f6f9;
    font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
    color: var(--pp-ink);
    background: var(--pp-surface);
    font-size: 14px;
    line-height: 1.55;
}
.peoplepro-modern .page { background: var(--pp-surface); min-height: calc(100vh - 65px); }
.peoplepro-modern #content > section { padding-top: 28px; }
.peoplepro-modern #content > section > .container-fluid { padding-right: 28px; padding-left: 28px; }
.peoplepro-modern h1, .peoplepro-modern h2, .peoplepro-modern h3,
.peoplepro-modern h4, .peoplepro-modern h5 { color: var(--pp-ink); font-weight: 600; letter-spacing: -.025em; }
.peoplepro-modern .table .pp-row-actions { min-width: 90px; white-space: normal; }
.peoplepro-modern .table .pp-row-actions .btn { margin-bottom: 3px; }
.peoplepro-modern .table-responsive .pp-row-actions { position: sticky; right: 0; z-index: 1; background: #fff; }
html[dir="rtl"] .peoplepro-modern .table-responsive .pp-row-actions { right: auto; left: 0; }
.peoplepro-modern .k-treeview .k-in { white-space: normal; overflow-wrap: anywhere; line-height: 1.5; }
.peoplepro-modern h1 { font-size: clamp(22px, 2vw, 30px); }
.peoplepro-modern h4 { font-size: 16px; }
.peoplepro-modern a:not(.btn) { color: var(--pp-accent); }
.peoplepro-modern a:focus-visible, .peoplepro-modern button:focus-visible {
    outline: 3px solid var(--pp-secondary); outline-offset: 3px;
}
.peoplepro-modern nav.navbar {
    background: #fff; border-bottom: 1px solid var(--pp-border);
    padding: 0; min-height: 65px; box-shadow: 0 2px 12px #17203305;
}
.peoplepro-modern .navbar .container-fluid { padding-inline: 24px; }
.peoplepro-modern .navbar .navbar-holder { width: 100%; min-height: 65px; }
.peoplepro-modern .navbar .nav-menu { margin-bottom: 0; gap: 8px; align-items: center; }
.peoplepro-modern nav.navbar a, .peoplepro-modern nav.navbar .btn-link { color: var(--pp-muted); }
.peoplepro-modern nav.navbar .dropdown-item { line-height: 1.5; padding: 10px 16px; }
.peoplepro-modern .navbar #toggle-btn { width: 36px; min-width: 36px; flex-shrink: 0; text-align: center; }
.peoplepro-modern #site_logo_main { position: static; transform: none; margin-inline-end: auto; padding-inline-start: 14px; }
.peoplepro-modern #site_logo_main img { height: 36px; width: auto; max-width: 150px; object-fit: contain; }
.peoplepro-modern .site-brand { font-size: 19px; font-weight: 700; color: var(--pp-ink); letter-spacing: -.04em; }
.peoplepro-modern .side-navbar { background: #fff; border-right: 1px solid var(--pp-border); padding-left: 12px; }
.peoplepro-modern .side-navbar li a { color: #475569; border-radius: 9px; font-weight: 500; margin-right: 12px; padding: 9px 12px; }
.peoplepro-modern .side-navbar li a i { color: #94a3b8; }
.peoplepro-modern .side-navbar li a:hover,
.peoplepro-modern .side-navbar li a:focus,
.peoplepro-modern .side-navbar li.active > a,
.peoplepro-modern .side-navbar li a[aria-expanded="true"] { color: var(--pp-accent); background: var(--pp-accent-soft); box-shadow: none; }
.peoplepro-modern .side-navbar li.active > a i,
.peoplepro-modern .side-navbar li a[aria-expanded="true"] i { color: var(--pp-accent); }
.peoplepro-modern .side-navbar li ul { border-left: 1px solid var(--pp-border); border-radius: 0; padding: 2px 4px 2px 10px; margin: 4px 18px; }
.peoplepro-modern .side-navbar li ul li a { font-size: 13px; padding: 7px 10px; }
.peoplepro-modern .pp-sidebar-menu { padding-block: 8px 32px; }
.peoplepro-modern .side-navbar .pp-sidebar-section-label {
    padding: 22px 12px 8px; margin-inline-end: 12px; color: var(--pp-muted);
    font-size: 10px; font-weight: 700; line-height: 1.5; letter-spacing: .075em;
    text-transform: uppercase; border-top: 1px solid #eef1f6; margin-top: 14px;
}
.peoplepro-modern .side-navbar .pp-sidebar-section-label:first-child { border-top: 0; padding-top: 10px; margin-top: 0; }
.peoplepro-modern .pp-sidebar-menu > li:not(.pp-sidebar-section-label) { margin-block: 3px; }
.peoplepro-modern .pp-sidebar-menu > li > a { display: flex; align-items: center; gap: 10px; min-height: 42px; }
.peoplepro-modern .pp-sidebar-menu > li > a i { width: 18px; flex: 0 0 18px; margin: 0; text-align: center; }
.peoplepro-modern .pp-sidebar-menu > li > a span { min-width: 0; white-space: normal; line-height: 1.4; }
.peoplepro-modern .pp-sidebar-menu a[aria-current="page"] { color: var(--pp-accent); background: var(--pp-accent-soft); font-weight: 650; }
.peoplepro-modern .pp-sidebar-menu a[data-toggle="collapse"] { padding-inline-end: 25px; }
.peoplepro-modern .pp-sidebar-menu a[data-toggle="collapse"]::before { inset-inline-end: 8px; }
.peoplepro-modern .card, .peoplepro-modern .wrapper.count-title {
    background: #fff; border: 1px solid var(--pp-border); border-radius: 14px;
    box-shadow: 0 3px 16px #17203304;
}
.peoplepro-modern .card-header { background: transparent; border-bottom: 1px solid #eef1f6; padding: 20px 24px; }
.peoplepro-modern .card-header h4 { margin-bottom: 0; }
.peoplepro-modern .card-body { padding: 24px; }
.peoplepro-modern .card-footer { background: #fafbfe; border-top-color: var(--pp-border); }
.peoplepro-modern .dashboard-heading { align-items: center; gap: 20px; }
.peoplepro-modern .dashboard-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pp-muted); margin-bottom: 7px; }
.peoplepro-modern .dashboard-heading h1 { margin: 0; overflow-wrap: anywhere; }
.peoplepro-modern .dashboard-date { padding: 10px 14px; border: 1px solid var(--pp-border); border-radius: 9px; background: #fff; font-size: 13px; white-space: nowrap; color: var(--pp-muted); }
.peoplepro-modern .dashboard-date i { margin-inline-end: 7px; color: var(--pp-accent); }
.peoplepro-modern .dashboard-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; }
.peoplepro-modern .dashboard-metrics > .col-sm-2 { max-width: none; width: auto; padding: 0; }
.peoplepro-modern .dashboard-metrics .count-title { text-align: start !important; padding: 20px; height: 100%; position: relative; overflow: hidden; }
.peoplepro-modern .dashboard-metrics .count-title::before { content: ""; position: absolute; inset: 18px auto 18px 0; width: 3px; border-radius: 3px; background: var(--pp-accent); }
.peoplepro-modern .dashboard-metrics .count-title a { display: block; }
.peoplepro-modern .dashboard-metrics .name strong { color: var(--pp-muted); font-size: 12px; font-weight: 600; }
.peoplepro-modern .dashboard-metrics .count-number { color: var(--pp-ink); font-size: clamp(20px, 1.9vw, 28px); font-weight: 650; line-height: 1.25; margin-top: 12px; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.peoplepro-modern .chart-period { color: var(--pp-muted); font-weight: 400; font-size: 12px; margin-inline-start: 8px; }
.peoplepro-modern .btn { border-radius: 8px; font-weight: 600; font-size: 13px; padding: 9px 16px; box-shadow: none; }
.peoplepro-modern .btn-sm { padding: 5px 10px; font-size: 12px; }
.peoplepro-modern .btn-primary { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }
.peoplepro-modern .btn-primary:hover, .peoplepro-modern .btn-primary:active { background: var(--pp-primary-hover); border-color: var(--pp-primary-hover); }
.peoplepro-modern .btn-primary:focus { box-shadow: 0 0 0 3px #0AB7A344; }
.peoplepro-modern .btn-outline-primary { border-color: #9ab5c8; color: var(--pp-accent); }
.peoplepro-modern .btn-outline-primary:hover { color: #fff; background: var(--pp-accent); }
.peoplepro-modern .form-group > label { color: #475569; font-size: 13px; font-weight: 600; margin-bottom: 7px; }
.peoplepro-modern .form-control { border: 1px solid #dce3ed; border-radius: 8px; color: var(--pp-ink); font-size: 14px; padding: 9px 12px; min-height: 40px; background-color: #fff; }
.peoplepro-modern .form-control:focus { border-color: var(--pp-secondary); box-shadow: 0 0 0 3px #0AB7A322; }
.peoplepro-modern .form-control:disabled, .peoplepro-modern .form-control[readonly] { background-color: #f8fafc; }
.peoplepro-modern .form-control.is-invalid { border-color: #dc3545; }
.peoplepro-modern textarea.form-control { height: auto; min-height: 96px; resize: vertical; }
.peoplepro-modern .form-control::placeholder { color: var(--pp-muted); opacity: 1; }
.peoplepro-modern input[type="checkbox"]:focus-visible, .peoplepro-modern input[type="radio"]:focus-visible {
    outline: 3px solid var(--pp-secondary); outline-offset: 3px;
}
.peoplepro-modern input[type="email"], .peoplepro-modern input[type="tel"], .peoplepro-modern input[type="url"],
.peoplepro-modern input[type="number"] { direction: ltr; text-align: start; }
.peoplepro-modern .card-header, .peoplepro-modern .modal-title { overflow-wrap: anywhere; }
.peoplepro-modern .form-control:disabled { color: #64748b; }
.peoplepro-modern .invalid-feedback { font-size: 12px; }
.peoplepro-modern .btn:disabled, .peoplepro-modern .btn.disabled { cursor: not-allowed; opacity: .6; }
.peoplepro-modern .btn-group > .btn:first-child:not(:last-child) { border-start-end-radius: 0; border-end-end-radius: 0; }
.peoplepro-modern .btn-group > .btn:last-child:not(:first-child) { border-start-start-radius: 0; border-end-start-radius: 0; }
.peoplepro-modern .bootstrap-select > .dropdown-toggle { border: 1px solid #dce3ed; border-radius: 8px; background: #fff; color: var(--pp-ink); font-weight: 400; min-height: 40px; }
.peoplepro-modern .bootstrap-select.form-control { padding: 0; border: 0; background: transparent; }
.peoplepro-modern .dashboard-overview > .row > section { width: 100%; min-width: 0; }
.peoplepro-modern .dropdown-menu { border: 1px solid var(--pp-border); border-radius: 10px; box-shadow: 0 12px 32px #17203312; }
.peoplepro-modern .dropdown-item:hover { background: var(--pp-accent-soft); color: var(--pp-accent); }
.peoplepro-modern .table { color: #475569; }
.peoplepro-modern .table thead th { background: #f8fafc; color: #64748b; border-top: 0; border-bottom: 1px solid var(--pp-border); font-size: 12px; font-weight: 600; padding: 14px 12px; }
.peoplepro-modern .table tbody td { padding: 14px 12px; border-color: #eef1f6; }
.peoplepro-modern .table-striped tbody tr:nth-of-type(odd) { background: #fbfcfe; }
.peoplepro-modern .table-hover tbody tr:hover { background: #edf4f8; }
.peoplepro-modern .table td .btn + .btn { margin-inline-start: 3px; }
.peoplepro-modern .table-responsive { scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.peoplepro-modern .dataTables_wrapper { padding-block: 8px; }
.peoplepro-modern .dataTables_filter input { border: 1px solid #dce3ed; border-radius: 8px; padding: 8px 12px; }
.peoplepro-modern .dataTables_info, .peoplepro-modern .dataTables_length, .peoplepro-modern .dataTables_filter { color: var(--pp-muted); font-size: 13px; }
.peoplepro-modern .page-link { border-color: var(--pp-border); color: var(--pp-accent); }
.peoplepro-modern .page-item.active .page-link { color: #fff; background: var(--pp-accent); border-color: var(--pp-accent); }
.peoplepro-modern .modal-content { border: 1px solid var(--pp-border); border-radius: 16px; box-shadow: 0 24px 80px #17203320; }
.peoplepro-modern .modal-header, .peoplepro-modern .modal-footer { border-color: var(--pp-border); padding: 20px 24px; }
.peoplepro-modern .modal-body { padding: 24px; }
.peoplepro-modern .modal-title { font-size: 18px; }
.peoplepro-modern .nav-tabs { border-bottom-color: var(--pp-border); }
.peoplepro-modern .nav-tabs .nav-link { color: var(--pp-muted); border-radius: 8px 8px 0 0; padding: 12px 16px; }
.peoplepro-modern .nav-tabs .nav-link.active { color: var(--pp-accent); border-color: var(--pp-border) var(--pp-border) #fff; font-weight: 600; }
.peoplepro-modern .nav-tabs.vertical { border: 0; gap: 4px; }
.peoplepro-modern .nav-tabs.vertical li { border: 0; }
.peoplepro-modern .nav-tabs.vertical .nav-link { border: 0; border-radius: 8px; }
.peoplepro-modern .nav-tabs.vertical .nav-link.active { background: var(--pp-accent-soft); }
.peoplepro-modern .alert { border-radius: 10px; font-size: 14px; }
.peoplepro-modern footer.main-footer { background: transparent; color: var(--pp-muted); border-top: 1px solid var(--pp-border); }
.peoplepro-modern .login-page {
    position: relative; isolation: isolate; overflow: hidden; margin: 0; width: 100%; min-height: 100vh;
    background: #f3f6f9;
}
.peoplepro-modern .login-page .form-outer { min-height: 100vh; padding: 50px 0 100px; }
.peoplepro-modern .login-page .form-inner { border: 1px solid #ffffff; border-radius: 24px; background: #ffffffed; padding: 40px; box-shadow: 0 24px 70px #35507018, 0 2px 8px #35507006; backdrop-filter: blur(12px); max-width: 440px; width: 100%; }
.peoplepro-modern .login-page .logo { color: var(--pp-ink); font-size: 28px; font-weight: 700; margin-bottom: 36px; }
.peoplepro-modern .login-page .logo span { color: var(--pp-ink); }
.peoplepro-modern .login-page .login-brand-logo { display: block; width: auto; max-width: 100%; max-height: 88px; margin-inline: auto; object-fit: contain; }
.peoplepro-modern .login-page .form-group { margin-bottom: 22px; }
.peoplepro-modern .login-page .form-control { min-height: 46px; }
.peoplepro-modern .login-page .forgot-pass { color: var(--pp-accent); }
.peoplepro-modern .auth-brand { color: var(--pp-muted); font-weight: 600; font-size: 14px; margin-bottom: 12px; }
.peoplepro-modern .auth-heading { font-size: 24px; margin-bottom: 24px; }
.peoplepro-modern .login-page .auth-description { color: var(--pp-muted); font-size: 14px; font-weight: 400; line-height: 1.6; margin-bottom: 24px; }
.peoplepro-modern .auth-panel .btn-block { white-space: normal; }
.peoplepro-modern .client-overview { margin-bottom: 20px; }
.peoplepro-modern .client-avatar { width: 100%; max-width: 100px; height: auto; aspect-ratio: 1; object-fit: cover; }
.peoplepro-modern .dashboard-counts .count-title { height: 100%; padding: 24px; }
.peoplepro-modern .dashboard-counts .count-number { font-family: inherit; font-size: 28px; font-weight: 650; color: var(--pp-ink); font-variant-numeric: tabular-nums; }
.peoplepro-modern .dashboard-counts .name strong { color: var(--pp-muted); font-size: 12px; font-weight: 600; }
/* Complete the shared controls and standalone public/installer surfaces. */
.peoplepro-modern .pp-skip-link { position: fixed; inset: 8px auto auto 8px; z-index: 1100; transform: translateY(-160%); padding: 10px 16px; background: #fff; border: 2px solid var(--pp-accent); border-radius: 8px; }
.peoplepro-modern .pp-skip-link:focus { transform: none; }
.peoplepro-modern #content:focus { outline: none; }
.peoplepro-modern .alert { position: static; inset: auto; transform: none; min-width: 0; max-width: none; overflow-wrap: anywhere; }
.peoplepro-modern #alertSection { display: flex; align-items: center; gap: 16px; padding-inline: 16px; }
.peoplepro-modern #alertSection #announce { flex: 1; min-width: 0; margin-bottom: 0; }
.peoplepro-modern #alertSection #closeButtonUpgrade {
    position: static; inset: auto; transform: none; float: none;
    display: flex; align-items: center; justify-content: center; flex: 0 0 36px;
    width: 36px; height: 36px; padding: 0; line-height: 1;
}
.peoplepro-modern .alert ul { padding-inline-start: 22px; margin-bottom: 0; }
.peoplepro-modern .right-sidebar { border: 1px solid var(--pp-border); box-shadow: 0 12px 32px #17203312; max-width: calc(100vw - 24px); max-height: calc(100vh - 90px); overflow-y: auto; border-radius: 10px; }
.peoplepro-modern .right-sidebar li a { white-space: normal; overflow-wrap: anywhere; }
.peoplepro-modern .navbar .pp-header-command { padding: 8px 10px; line-height: 20px; }
.peoplepro-modern .navbar .pp-header-command i { color: var(--pp-muted); margin: 0; }
.peoplepro-modern .input-group > .form-control { min-width: 0; }
.peoplepro-modern .input-group-text { background: #f8fafc; border-color: #dce3ed; color: var(--pp-muted); font-size: 13px; }
.peoplepro-modern input[type="file"].form-control { height: auto; padding: 7px; }
.peoplepro-modern input[type="file"]::file-selector-button { background: var(--pp-accent-soft); color: var(--pp-primary); border: 0; border-radius: 5px; padding: 6px 10px; margin-inline-end: 10px; }
.peoplepro-modern .select2-container { max-width: 100%; }
.peoplepro-modern .select2-container .select2-selection--single,
.peoplepro-modern .select2-container .select2-selection--multiple { border: 1px solid #dce3ed; border-radius: 8px; min-height: 40px; min-width: 0; background: #fff; }
.peoplepro-modern .select2-container .select2-selection--single .select2-selection__rendered { color: var(--pp-ink); line-height: 38px; padding-inline: 12px 30px; }
.peoplepro-modern .select2-container .select2-selection--single .select2-selection__arrow { height: 38px; }
.peoplepro-modern .select2-container .select2-selection--multiple .select2-selection__choice { background: var(--pp-accent-soft); border-color: #9ab5c8; color: var(--pp-primary); border-radius: 5px; }
.peoplepro-modern .select2-container--focus .select2-selection,
.peoplepro-modern .select2-container--open .select2-selection { border-color: var(--pp-secondary); box-shadow: 0 0 0 3px #0AB7A322; }
.peoplepro-modern .select2-dropdown { border-color: var(--pp-border); border-radius: 8px; box-shadow: 0 10px 24px #17203312; }
.peoplepro-modern .select2-results__option[aria-selected="true"] { background: #f1f5f9; }
.peoplepro-modern .select2-results__option--highlighted[aria-selected] { background: var(--pp-accent); color: #fff; }
.peoplepro-modern .bootstrap-tagsinput { border: 1px solid #dce3ed; border-radius: 8px; min-height: 40px; padding: 8px 12px; max-width: 100%; box-shadow: none; }
.peoplepro-modern .datepicker.datepicker-dropdown,
.peoplepro-modern .daterangepicker,
.peoplepro-modern .clockpicker-popover { border: 1px solid var(--pp-border); border-radius: 10px; box-shadow: 0 12px 32px #17203312; font-family: inherit; }
.peoplepro-modern .datepicker table { margin: 0; }
.peoplepro-modern .datepicker td, .peoplepro-modern .datepicker th { border-radius: 6px; }
.peoplepro-modern .datepicker td.active, .peoplepro-modern .daterangepicker td.active { background: var(--pp-accent); background-image: none; color: #fff; }
.peoplepro-modern .dataTables_processing { border: 1px solid var(--pp-border); border-radius: 10px; background: #fff; color: var(--pp-muted); box-shadow: 0 6px 20px #1720330d; }
.peoplepro-modern .dataTables_empty { text-align: center; padding: 32px 12px !important; color: var(--pp-muted); }
.peoplepro-modern .dt-buttons .btn { background: #fff; color: var(--pp-muted); border: 1px solid var(--pp-border); }
.peoplepro-modern .dt-buttons .btn span { color: inherit; }
.peoplepro-modern .dt-buttons .btn:hover { background: var(--pp-accent-soft); color: var(--pp-accent); }
.peoplepro-modern .dt-button-collection.dropdown-menu { background: #fff; padding: 8px; }
.peoplepro-modern .dt-button-collection.dropdown-menu a { color: var(--pp-ink); border-radius: 5px; }
.peoplepro-modern .dt-button-collection.dropdown-menu a.active { background: var(--pp-accent-soft); color: var(--pp-accent); }
.peoplepro-modern .fc-button-primary { background: var(--pp-accent); border-color: var(--pp-accent); border-radius: 7px; }
.peoplepro-modern .fc-toolbar { flex-wrap: wrap; gap: 12px; }
.peoplepro-modern .fc-toolbar h2 { font-size: 20px; }
.peoplepro-modern .progress { border-radius: 8px; background: #edf2f7; }
.peoplepro-modern .badge { border-radius: 5px; padding: 5px 8px; font-weight: 600; }
.peoplepro-modern .badge-primary { background: var(--pp-accent-soft); color: var(--pp-primary); }
.peoplepro-modern .list-group-item { border-color: var(--pp-border); }
.peoplepro-modern .swal2-popup { border-radius: 16px; font-family: inherit; }
.peoplepro-modern .swal2-styled.swal2-confirm { background: var(--pp-accent); border-radius: 8px; }
.peoplepro-public { min-height: 100vh; }
.peoplepro-public .public-navigation { background: #fff; border-bottom: 1px solid var(--pp-border); }
.peoplepro-public .public-navigation .container { min-height: 80px; gap: 16px; padding-block: 16px; }
.peoplepro-public .public-brand { display: flex; align-items: center; gap: 12px; color: var(--pp-ink) !important; font-size: 20px; font-weight: 700; max-width: 100%; overflow-wrap: anywhere; }
.peoplepro-public .public-brand img { max-width: 120px; width: auto; height: 40px; object-fit: contain; }
.peoplepro-public .jumbotron { background: #eaf2f8; border-bottom: 1px solid var(--pp-border); border-radius: 0; margin-bottom: 24px; padding: 48px 0; }
.peoplepro-public .frontend { padding-bottom: 40px; }
.peoplepro-public .frontend > .container { padding-top: 28px; }
.peoplepro-public .frontend img { width: auto !important; max-width: 100%; height: auto; }
.peoplepro-public .job-listing-heading, .peoplepro-public .job-details-heading { gap: 16px; }
.peoplepro-public .job-listing li { display: inline-block; margin: 4px 16px 4px 0; color: var(--pp-muted); }
.peoplepro-public .job-info { background: #fff; padding: 24px; border: 1px solid var(--pp-border); border-radius: 14px; overflow-wrap: anywhere; }
.peoplepro-public .pp-empty-state i { display: block; font-size: 32px; color: var(--pp-muted); margin-bottom: 16px; }
.peoplepro-public .footer { border-top: 1px solid var(--pp-border); background: #fff; color: var(--pp-muted); }
.peoplepro-installer .wrapper { padding: 32px; margin: 48px auto; border: 1px solid var(--pp-border); border-radius: 16px; box-shadow: 0 12px 40px #1720330b; }
.peoplepro-installer header h1 { color: var(--pp-ink); }
.peoplepro-installer label { display: block; margin: 14px 0 6px; color: var(--pp-muted); font-size: 13px; font-weight: 600; }
.peoplepro-installer .theme-color { color: var(--pp-accent); }
.peoplepro-modern .pp-addons .card { margin-bottom: 24px; overflow: hidden; }
.peoplepro-modern .pp-addon-art { min-height: 160px; padding: 28px; display: flex; align-items: center; gap: 20px; background: var(--pp-accent-soft); color: var(--pp-accent); font-weight: 650; font-size: 21px; }
.peoplepro-modern .pp-addon-art i { font-size: 46px; }
.peoplepro-modern .pp-addons .card-body > .btn { margin: 4px 4px 4px 0; }
.peoplepro-status { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.peoplepro-status .status-card { width: 100%; max-width: 520px; background: #fff; border: 1px solid var(--pp-border); border-radius: 20px; padding: 40px; box-shadow: 0 20px 60px #17203309; }
.peoplepro-status .status-code { font-size: 13px; font-weight: 700; letter-spacing: .1em; color: var(--pp-accent); margin-bottom: 18px; }
.peoplepro-status h1 { font-size: 28px; }
.peoplepro-status p { color: var(--pp-muted); }
@media (min-width: 1600px) { .peoplepro-modern .dashboard-metrics { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
@media (max-width: 1199px) { .peoplepro-modern .side-navbar:not(.shrink) { box-shadow: 12px 0 40px #17203315; } }
@media (max-width: 767px) {
    .peoplepro-modern .dt-buttons { width: 100%; float: none; text-align: start; display: flex; flex-wrap: wrap; margin-block: 12px; }
    .peoplepro-modern .modal-dialog { margin: 12px; }
    .peoplepro-modern .modal-content { max-height: calc(100vh - 24px); overflow-y: auto; }
    .peoplepro-modern .modal-footer { gap: 8px; flex-wrap: wrap; }
    .peoplepro-modern .modal-footer .btn { margin: 0; }
    .peoplepro-modern .fc-toolbar h2 { font-size: 17px; }
    .peoplepro-public .jumbotron { padding: 28px 0; }
    .peoplepro-public .job-info, .peoplepro-status .status-card { padding: 24px; }
    .peoplepro-installer .wrapper { margin: 24px auto; padding: 24px 18px; }
    .peoplepro-modern #content > section > .container-fluid { padding-inline: 16px; }
    .peoplepro-modern .dashboard-heading { flex-direction: column; align-items: flex-start; }
    .peoplepro-modern .dashboard-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .peoplepro-modern .dashboard-metrics .count-title { padding: 16px; }
    .peoplepro-modern .dashboard-overview > .row > .col-4 { flex: 0 0 100%; max-width: 100%; }
    .peoplepro-modern .dashboard-overview .fc-toolbar { flex-wrap: wrap; gap: 12px; }
    .peoplepro-modern .navbar .container-fluid { padding-inline: 10px; }
    .peoplepro-modern .navbar .nav-menu { gap: 0; }
    .peoplepro-modern .navbar .nav-menu > .nav-item { margin-inline: 0; }
    .peoplepro-modern #site_logo_main { padding-inline-start: 6px; }
    .peoplepro-modern #site_logo_main img { max-width: 95px; height: 28px; }
    .peoplepro-modern .site-brand { font-size: 15px; }
    .peoplepro-modern .card-header, .peoplepro-modern .card-body { padding: 18px; }
    .peoplepro-modern .nav-tabs:not(.vertical) { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; justify-content: flex-start !important; scrollbar-width: thin; }
    .peoplepro-modern .nav-tabs:not(.vertical) .nav-item { flex-shrink: 0; }
    .peoplepro-modern .nav-tabs:not(.vertical) .nav-link { white-space: nowrap; }
    .peoplepro-modern .nav-tabs.vertical { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .peoplepro-modern .nav-tabs.vertical .nav-link { font-size: 12px; padding: 10px 12px; height: 100%; }
    .peoplepro-modern .dataTables_wrapper .dataTables_length,
    .peoplepro-modern .dataTables_wrapper .dataTables_filter { width: 100%; max-width: 100%; flex: 0 0 100%; float: none; text-align: start; }
    .peoplepro-modern .dataTables_wrapper .dataTables_filter { margin-block: 12px; }
    .peoplepro-modern .dataTables_wrapper .dataTables_filter label { display: flex; align-items: center; gap: 8px; }
    .peoplepro-modern .dataTables_wrapper .dataTables_filter input { min-width: 0; width: 100%; margin-left: 0; }
    .peoplepro-modern .modal-header, .peoplepro-modern .modal-body, .peoplepro-modern .modal-footer { padding: 18px; }
    .peoplepro-modern .login-page .form-inner { padding: 28px 22px; }
    .peoplepro-modern .login-page .form-outer { padding-top: 24px; }
}
@media print {
    .peoplepro-modern { background: #fff; color: #000; }
    .peoplepro-modern .header, .peoplepro-modern .side-navbar, .peoplepro-modern .main-footer,
    .peoplepro-modern .pp-skip-link, .peoplepro-modern .dataTables_filter,
    .peoplepro-modern .dataTables_length, .peoplepro-modern .dt-buttons,
    .peoplepro-modern .dataTables_paginate { display: none !important; }
    .peoplepro-modern .page { margin: 0 !important; width: 100% !important; float: none; }
    .peoplepro-modern .card { box-shadow: none; }
    .peoplepro-modern .table-responsive { overflow: visible; }
}
@media (prefers-reduced-motion: reduce) {
    .peoplepro-modern *, .peoplepro-modern *::before, .peoplepro-modern *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
/* Direction is explicit on every layout; preserve the existing sidebar toggle states. */
html[dir="rtl"] .peoplepro-modern { text-align: right; }
html[dir="rtl"] .peoplepro-modern .page { margin-left: 0; margin-right: 230px; }
html[dir="rtl"] .peoplepro-modern .page.active { margin-right: 0; }
html[dir="rtl"] .peoplepro-modern .side-navbar { left: auto; right: 0; text-align: right; border-right: 0; border-left: 1px solid var(--pp-border); padding-left: 0; padding-right: 12px; }
html[dir="rtl"] .peoplepro-modern .side-navbar li a { margin-right: 0; margin-left: 12px; }
html[dir="rtl"] .peoplepro-modern .side-navbar li a i { margin-right: 0; margin-left: 10px; }
html[dir="rtl"] .peoplepro-modern .side-navbar li ul { border-left: 0; border-right: 1px solid var(--pp-border); padding: 2px 10px 2px 4px; }
html[dir="rtl"] .peoplepro-modern .side-navbar li a[data-toggle="collapse"]::before { right: auto; left: 0; }
html[dir="rtl"] .peoplepro-modern .pp-sidebar-menu > li > a i { margin: 0; }
html[dir="rtl"] .peoplepro-modern .pp-sidebar-menu a[data-toggle="collapse"]::before { left: 8px; right: auto; }
html[dir="rtl"] .peoplepro-modern .right-sidebar { right: auto; left: 0; }
html[dir="rtl"] .peoplepro-modern .dropdown-menu { text-align: right; }
html[dir="rtl"] .peoplepro-modern .bootstrap-select .dropdown-toggle .filter-option { text-align: right; }
html[dir="rtl"] .peoplepro-modern .text-left { text-align: right !important; }
html[dir="rtl"] .peoplepro-modern .text-right { text-align: left !important; }
html[dir="rtl"] .peoplepro-modern .pull-right, html[dir="rtl"] .peoplepro-modern .float-right { float: left !important; }
html[dir="rtl"] .peoplepro-modern .pull-left, html[dir="rtl"] .peoplepro-modern .float-left { float: right !important; }
html[dir="rtl"] .peoplepro-modern .dashboard-metrics .count-title::before { left: auto; right: 0; }
html[dir="rtl"] .peoplepro-modern .login-page.page { margin-right: 0; }
html[dir="rtl"] .peoplepro-modern .modal-header .close { margin: -1rem auto -1rem -1rem; }
@media (max-width: 1199px) {
    html[dir="rtl"] .peoplepro-modern .page { margin-right: 0; }
    html[dir="rtl"] .peoplepro-modern .side-navbar { left: auto !important; right: 0; }
    html[dir="rtl"] .peoplepro-modern .side-navbar.shrink { right: -230px; }
}
@media print {
    html[dir="rtl"] .peoplepro-modern .page { margin: 0 !important; }
    .peoplepro-modern .table th, .peoplepro-modern .table td { overflow-wrap: anywhere; }
    .peoplepro-modern .table tr { break-inside: avoid; }
    .peoplepro-modern .table thead { display: table-header-group; }
    .peoplepro-modern .modal, .peoplepro-modern .not-exported, .peoplepro-modern .pp-skip-link { display: none !important; }
}

