/* ── Pontaj - Blue theme ──────────────────────────────────────────────────── */

/* ── Design tokens ───────────────────────────────────────────────────────── */
:root {
    --pt-blue-50:  #eff6ff;
    --pt-blue-100: #dbeafe;
    --pt-blue-200: #bfdbfe;
    --pt-blue-300: #93c5fd;
    --pt-blue-400: #60a5fa;
    --pt-blue-500: #3b82f6;
    --pt-blue-600: #2563eb;
    --pt-blue-700: #1d4ed8;
    --pt-blue-900: #1e3a8a;

    /* light mode surfaces */
    --pt-l-body:    #f2f3f6;
    --pt-l-panel:   #ffffff;
    --pt-l-border:  #e2e8f0;
    --pt-l-border2: #cbd5e1;
    --pt-l-text:    #1e293b;
    --pt-l-muted:   #64748b;
    --pt-l-hover:   #f8faff;
    --pt-l-active:  #eff6ff;

    /* dark mode surfaces */
    --pt-d-body:    #060e1c;
    --pt-d-topbar:  #040c17;
    --pt-d-panel:   #0e1b30;
    --pt-d-panel2:  #152237;
    --pt-d-border:  #263856;
    --pt-d-border2: #2e4565;
    --pt-d-text:    #e2e8f0;
    --pt-d-text-bright: #f1f5f9;
    --pt-d-muted:   #94a3b8;
    --pt-d-hover:   rgba(59, 130, 246, 0.08);
    --pt-d-active:  rgba(59, 130, 246, 0.15);
}

/* ── 1. Topbar ────────────────────────────────────────────────────────────── */
.fi-topbar {
    height: 2.8rem !important;
    min-height: 2.8rem !important;
    max-height: 2.8rem !important;
    overflow: visible !important;
    align-items: center !important;
}

/* ── 2. Nav groups ────────────────────────────────────────────────────────── */
.fi-topbar-nav-groups {
    flex-wrap: nowrap !important;
    margin-block: 0 !important;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.fi-topbar-nav-groups::-webkit-scrollbar { display: none; }

/* ── 3. LIGHT topbar ──────────────────────────────────────────────────────── */
:root:not(.dark) .fi-topbar {
    background: #ffffff !important;
    border-bottom: 1px solid var(--pt-l-border) !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06) !important;
}
:root:not(.dark) .fi-topbar-item-label { color: #334155 !important; }
:root:not(.dark) .fi-topbar-item-btn:hover,
:root:not(.dark) .fi-topbar-item-btn:focus-visible {
    background: var(--pt-l-active) !important;
}
:root:not(.dark) .fi-topbar-item.fi-active .fi-topbar-item-btn {
    background: var(--pt-l-active) !important;
}
:root:not(.dark) .fi-topbar-item.fi-active .fi-topbar-item-label {
    color: var(--pt-blue-600) !important;
    font-weight: 600 !important;
}
:root:not(.dark) .fi-company-switcher-btn { color: #334155 !important; }

/* ── 4. DARK topbar ───────────────────────────────────────────────────────── */
.dark .fi-topbar {
    background: radial-gradient(circle,rgb(9, 23, 93) 0%, rgb(12, 20, 50) 100%) !important;
    border-bottom: 1px solid rgba(255,255,255,0.18) !important;
    box-shadow: 0 1px 16px rgba(0, 0, 0, 0.5) !important;
}
.dark .fi-topbar-item-label { color: var(--pt-d-text) !important; }
.dark .fi-topbar-item-btn:hover,
.dark .fi-topbar-item-btn:focus-visible {
    background: rgba(19, 61, 130, 0.5) !important
}
.dark .fi-topbar-item.fi-active .fi-topbar-item-btn {
    background: var(--pt-d-active) !important;
    border-radius: 6px !important;
}
.dark .fi-topbar-item.fi-active .fi-topbar-item-label {
    color: var(--pt-blue-400) !important;
    font-weight: 600 !important;
}
.dark .fi-company-switcher-btn { color: var(--pt-d-text) !important; }
.dark .fi-company-switcher-btn:hover { background: var(--pt-d-hover) !important; }

/* Theme toggle */
:root:not(.dark) .fi-topbar [type="button"] { color: #64748b; }
:root:not(.dark) .fi-topbar [type="button"]:hover { color: #1e293b; }
.dark .fi-topbar [type="button"] { color: var(--pt-d-muted) !important; }
.dark .fi-topbar [type="button"]:hover { color: var(--pt-d-text-bright) !important; }

/* ── 5. Body backgrounds - full-page gradient vignette ───────────────────── */
html.dark {
    background-color: var(--pt-d-body);
    background: radial-gradient(ellipse at 30% 20%, rgba(46, 78, 207, 0.4), transparent 50%), radial-gradient(circle at 70% 80%, rgba(100, 125, 198, 0.3), transparent 60%), radial-gradient(circle at 50% 50%, #0e2235, #02060c);
    background-attachment: fixed;
}
html.dark body { background: transparent !important; }
:root:not(.dark) .fi-body {
    background: 
        radial-gradient(circle at 15% 25%, rgba(255,255,255,0.95) 0%, rgba(220,220,220,0) 70%),
        radial-gradient(circle at 90% 75%, rgba(255,255,250,0.85) 0%, rgba(210,210,210,0) 65%),
        radial-gradient(circle at 60% 50%, rgba(252,252,255,0.75) 0%, rgba(200,200,200,0) 80%),
        linear-gradient(160deg, #fafafa, #f0f0f0, #e8e8e8);
}
.dark .fi-body { background: transparent !important; }

/* ── 6. DARK sections, tables - glass panels ─────────────────────────────── */
.dark .fi-section {
    background: rgba(100, 160, 255, 0.10) !important;
    border-color: var(--pt-d-border) !important;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.30), 0 0 0 1px rgba(38, 56, 86, 0.50) !important;
}
.dark .fi-section-header {
    border-color: var(--pt-d-border) !important;
    background: rgba(62, 103, 167, 0.14);
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}
.fi-section-header {
    border-color: var(--pt-d-border) !important;
    background: rgba(200, 197, 189, 0.14);
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}
.dark .fi-ta-table,
.dark .fi-ta-content {
    background-image: radial-gradient(ellipse 110% 70% at 50% 0%, #5b84ff 0%, #183c7b 100%);
}
.dark .fi-ta-header-cell,
.dark .fi-ta-row td {
    background: rgba(8, 18, 40, 0.70) !important;
    border-color: var(--pt-d-border) !important;
    color: var(--pt-d-text) !important;
}
.dark .fi-ta-header-cell {
    color: var(--pt-d-text-bright) !important;
}
.dark .fi-ta-row:hover td {
    background: rgba(21, 34, 60, 0.88) !important;
}
.dark .fi-ta-filters-form,
.dark .fi-ta-toolbar {
    background: rgba(8, 18, 40, 0.80) !important;
    border-color: var(--pt-d-border) !important;
}

/* ── Filter dropdown panel ──────────────────────────────────────────────────── */
.dark .fi-ta-filters {
    color: var(--pt-d-text) !important;
}
.dark .fi-ta-filters-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid var(--pt-d-border) !important;
}
.dark .fi-ta-filters-heading {
    color: var(--pt-d-text-bright) !important;
    font-weight: 600 !important;
}
/* fi-input-wrp: Filament sets dark bg to white@5% (transparent) - override */
.dark .fi-ta-filters .fi-input-wrp {
    background: var(--pt-d-panel2) !important;
    border-color: var(--pt-d-border) !important;
}
/* native inputs / selects inside */
.dark .fi-ta-filters input,
.dark .fi-ta-filters select,
.dark .fi-ta-filters textarea,
.dark .fi-ta-filters .fi-select-input {
    background: transparent !important;
    color: var(--pt-d-text) !important;
}
.dark .fi-ta-filters input::placeholder { color: var(--pt-d-muted) !important; }
/* labels */
.dark .fi-ta-filters label,
.dark .fi-ta-filters .fi-fo-field-wrp-label,
.dark .fi-ta-filters .fi-fo-field-wrp-label span {
    color: var(--pt-d-muted) !important;
}
/* select option list that floats */
.dark .fi-ta-filters .fi-select-options-list,
.dark .fi-ta-filters [role="listbox"] {
    background: var(--pt-d-panel) !important;
    border-color: var(--pt-d-border2) !important;
}
.dark .fi-ta-filters [role="option"] { color: var(--pt-d-text) !important; }
.dark .fi-ta-filters [role="option"]:hover,
.dark .fi-ta-filters [role="option"][aria-selected="true"] {
    background: var(--pt-d-hover) !important;
}

/* LIGHT table hover */
:root:not(.dark) .fi-ta-row:hover td { background: #f8faff !important; }

/* ── 7. Sidebar (if used) ─────────────────────────────────────────────────── */
.dark .fi-sidebar {
    background: rgba(4, 12, 23, 0.95) !important;
    border-color: var(--pt-d-border) !important;
}

/* ── 8. Modals & dropdowns - keep opaque for readability ─────────────────── */
:root:not(.dark) .fi-modal-window {
    border: 1px solid var(--pt-l-border2);
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.12) !important;
}
.dark .fi-modal-window {
    background: var(--pt-d-panel) !important;
    border: 1px solid var(--pt-d-border2) !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55) !important;
}
.dark .fi-dropdown-panel {
    background: #122543 !important;
    border-color: var(--pt-d-border2) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45) !important;
    z-index: 50 !important;
}
/* Filter panels float above table content but below sidebar navigation (z-20+) */
.fi-ta-filters-dropdown,
.fi-dropdown-panel[wire\:key*="filters"] {
    z-index: 15 !important;
}

/* ── 9. Company-switcher dropdown ────────────────────────────────────────── */
:root:not(.dark) .fi-company-switcher-dropdown {
    background: #ffffff;
    border-color: var(--pt-l-border);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.10);
}
.dark .fi-company-switcher-dropdown {
    background: var(--pt-d-panel) !important;
    border-color: var(--pt-d-border2) !important;
    color: var(--pt-d-text) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45) !important;
}
.fi-company-switcher-dropdown button {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    padding: 6px 16px !important;
    font-size: 0.875rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    color: inherit !important;
    transition: background 0.1s;
}
.fi-company-switcher-dropdown button:hover { background: var(--pt-l-active) !important; }
.dark .fi-company-switcher-dropdown button:hover { background: var(--pt-d-hover) !important; }
.fi-company-switcher-dropdown { color: var(--pt-l-text); }
.dark .fi-company-switcher-dropdown { color: var(--pt-d-text) !important; }
.fi-company-switcher-dropdown input[type="text"] {
    background: #f8faff !important;
    color: var(--pt-l-text) !important;
    border: 1px solid var(--pt-l-border) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    font-size: 0.875rem !important;
}
.dark .fi-company-switcher-dropdown input[type="text"] {
    background: var(--pt-d-body) !important;
    color: var(--pt-d-text) !important;
    border-color: var(--pt-d-border2) !important;
}

/* ── 10. Section headers ──────────────────────────────────────────────────── */
.fi-section-header-heading {
    font-size: 0.8125rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--pt-blue-600) !important;
    opacity: 1 !important;
}
.dark .fi-section-header-heading { color: var(--pt-blue-400) !important; }

/* ── 10b. Page header heading - ascuns (breadcrumb redundant) ─────────────── */
.fi-header-heading { display: none !important; }

/* ── 11. Page layout - reduce vertical gaps ───────────────────────────────── */
.fi-page { row-gap: 0.25rem !important; gap: 0.25rem !important; }
.fi-header { margin-bottom: 0 !important; }
.fi-page-main { padding-top: 0 !important; margin-top: 0 !important; }
.fi-page-main > * { margin-top: 0 !important; }
[x-filament-panel] .fi-page-main,
.fi-simple-page-main { padding-top: 0 !important; }
.fi-page-content { row-gap: 4px !important; gap: 4px !important; }

/* ── 12. Page header - styled card ───────────────────────────────────────── */
.fi-header {
    background: #ffffff;
    border-radius: 0.75rem;
    border: 1px solid var(--pt-l-border);
    padding: 0.375rem 1rem !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.05);
}
.fi-header .fi-breadcrumbs {
    margin: calc(var(--spacing)*0.5) 0px calc(var(--spacing)*0.5) 0;
}
.dark .fi-header {
    background: radial-gradient(circle,rgb(9, 23, 93) 0%, rgb(12, 20, 50) 100%) !important;
    border-color: var(--pt-d-border) !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.30) !important;
}

/* ── 13. DARK: inputs, selects focus ring ─────────────────────────────────── */
.dark input:focus,
.dark select:focus,
.dark textarea:focus,
.dark .fi-input:focus-within {
    border-color: var(--pt-blue-500) !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.25) !important;
    outline: none !important;
}
:root:not(.dark) input:focus,
:root:not(.dark) select:focus,
:root:not(.dark) textarea:focus {
    border-color: var(--pt-blue-500) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
    outline: none !important;
}

/* ── 14. DARK: form inputs background ────────────────────────────────────── */
.dark .fi-input,
.dark .fi-select-input,
.dark input[type="text"],
.dark input[type="email"],
.dark input[type="number"],
.dark input[type="password"],
.dark select,
.dark textarea {
    background: rgba(62, 103, 167, 0.10) !important;
    border-color: rgb(19, 65, 137) !important;
    color: var(--pt-d-text) !important;
    text-align: center;
    border-radius: 8px;
}

/* ── 15. Timekeeper toolbar ───────────────────────────────────────────────── */
.tk-toolbar-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: #ffffff;
    border-radius: 0.75rem;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06);
    border: 1px solid var(--pt-l-border);
    margin-bottom: 0.5rem;
}
.dark .tk-toolbar-bar {
    background: radial-gradient(circle,rgb(13, 28, 106) 0%, rgb(17, 30, 65) 100%);
    border-color: var(--pt-d-border) !important;
}
.tk-toolbar-bar select,
.tk-toolbar-bar input[type="text"],
.tk-toolbar-bar input[type="number"] {
    font-size: 0.75rem !important;
    padding: 3px 8px !important;
    border: 1px solid var(--pt-l-border2) !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: var(--pt-l-text) !important;
    outline: none !important;
    height: 28px;
    width: auto !important;
    max-width: 180px !important;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.tk-toolbar-bar select:focus,
.tk-toolbar-bar input:focus {
    border-color: var(--pt-blue-500) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
}
.dark .tk-toolbar-bar select,
.dark .tk-toolbar-bar input[type="text"],
.dark .tk-toolbar-bar input[type="number"] {
    background: rgba(0,0,0,0.4) !important;
    color: var(--pt-d-text) !important;
    border-color: var(--pt-d-border2) !important;
}

/* ── 16. Timekeeper table ─────────────────────────────────────────────────── */
.tk-wrap th { color: var(--pt-blue-700); font-weight: 700; }
.dark .tk-wrap th { color: var(--pt-blue-400); }

/* ── 16b. .tk-tbl dark mode ──────────────────────────────────────────────── */
.dark .tk-tbl {
    background: transparent /* #04123D !important */;
    color: var(--pt-d-text) !important;
}


.tk-col-info, .tk-col-tot {
    background: linear-gradient(324deg,rgb(244, 244, 244) 0%, rgb(255, 255, 255) 100%);
}

.dark .tk-col-info, .dark .tk-col-tot {
    background: radial-gradient(circle,rgb(13, 28, 106) 0%, rgb(17, 30, 65) 100%) !important;
}
.dark .tk-tbl th,
.dark .tk-tbl td {
    border-color: var(--pt-d-border) !important;
    color: var(--pt-d-text);
    background: #04123D;
}
.dark .tk-tbl thead th {
    color: var(--pt-d-text-bright);
    background: rgba(14, 27, 48, 0.95);
}
.dark .tk-tbl .bg-gray-50 { background: rgba(21, 34, 55, 0.95) !important; }

/* ── 17. Modal widths ─────────────────────────────────────────────────────── */
.fi-modal-window          { max-width: 32rem !important; }
.fi-modal-window.fi-width-sm  { max-width: 24rem !important; }
.fi-modal-window.fi-width-md  { max-width: 28rem !important; }
.fi-modal-window.fi-width-lg  { max-width: 32rem !important; }
.fi-modal-window.fi-width-xl  { max-width: 36rem !important; }
.fi-modal-window.fi-width-2xl { max-width: 42rem !important; }
.fi-modal-window.fi-width-3xl { max-width: 48rem !important; }
.fi-modal-window.fi-width-4xl { max-width: 56rem !important; }
.fi-modal-window.fi-width-5xl { max-width: 64rem !important; }
.fi-modal-window.fi-width-6xl { max-width: 72rem !important; }
.fi-modal-window.fi-width-7xl { max-width: 80rem !important; }

/* ── 18. Flatpickr - Romanian calendar (Sat/Sun red) ─────────────────────── */
.flatpickr-calendar .dayContainer .flatpickr-day:nth-child(7n+6),
.flatpickr-calendar .dayContainer .flatpickr-day:nth-child(7n+7) { color: #dc2626; }
.flatpickr-calendar .dayContainer .flatpickr-day.selected:nth-child(7n+6),
.flatpickr-calendar .dayContainer .flatpickr-day.selected:nth-child(7n+7) { color: #fff; }
.flatpickr-calendar .flatpickr-weekdays .flatpickr-weekday:nth-child(6),
.flatpickr-calendar .flatpickr-weekdays .flatpickr-weekday:nth-child(7) { color: #dc2626 !important; }

/* ── 19. DARK: scrollbar ──────────────────────────────────────────────────── */
.dark ::-webkit-scrollbar { width: 6px; height: 6px; }
.dark ::-webkit-scrollbar-track { background: transparent; }
.dark ::-webkit-scrollbar-thumb {
    background: var(--pt-d-border2);
    border-radius: 3px;
}
.dark ::-webkit-scrollbar-thumb:hover { background: #3a5580; }
:root:not(.dark) ::-webkit-scrollbar { width: 6px; height: 6px; }
:root:not(.dark) ::-webkit-scrollbar-track { background: #f1f5f9; }
:root:not(.dark) ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
:root:not(.dark) ::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* ── 20. DARK: badges & notification count ────────────────────────────────── */
.dark .fi-badge { border-color: var(--pt-d-border2) !important; }

/* Badge-ul de notificări: butonul trebuie să fie containing block (relative),
   altfel badge-ul (cu inset-inline-start:100%) se ancorează de un strămoș mai sus
   și „plutește" deasupra. Lăsăm poziționarea implicită Filament să-și facă treaba. */
.fi-topbar .fi-icon-btn { position: relative !important; overflow: visible !important; }
.fi-topbar .fi-icon-btn > .fi-icon-btn-badge-ctn { margin-left: -9px; margin-top: 5px; }

.fi-badge-green { background: rgba(159, 223, 55, 0.3) }
.dark .fi-badge-green { background: rgba(61, 223, 55, 0.3) }

/* ── 21. DARK: avatar / user menu button ─────────────────────────────────── */
.dark .fi-user-avatar {
    border: 2px solid var(--pt-d-border2) !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2) !important;
}

/* ── 22. Notification toasts ─────────────────────────────────────────────── */
.dark .fi-fo-notification {
    background: var(--pt-d-panel2) !important;
    border-color: var(--pt-d-border2) !important;
}

/* ── 23. Action buttons in tables - blue tinted ───────────────────────────── */
.dark .fi-ta-actions .fi-btn { border-color: var(--pt-d-border2) !important; }

/* ── 24. LIGHT: section card depth ───────────────────────────────────────── */
:root:not(.dark) .fi-section {
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.05),
                0 0 0 1px rgba(15, 23, 42, 0.04);
}

/* ── 25. Select dropdowns (Filament native) dark ─────────────────────────── */
.dark .fi-select-options-wrapper {
    background: var(--pt-d-panel) !important;
    border-color: var(--pt-d-border2) !important;
}
.dark .fi-select-option:hover { background: var(--pt-d-hover) !important; }
.dark .fi-select-option[aria-selected="true"] {
    background: var(--pt-d-active) !important;
    color: var(--pt-blue-300) !important;
}

/* ── 26. Timekeeper action buttons - dark mode ────────────────────────────── */
.dark .tk-action-btn.emerald {
    border-color: rgba(16, 185, 129, 0.45) !important;
    background: rgba(16, 185, 129, 0.26) !important;
    color: #6ee7b7 !important;
}
.dark .tk-action-btn.sky {
    border-color: rgba(56, 189, 248, 0.45) !important;
    background: rgba(56, 189, 248, 0.26) !important;
    color: #7dd3fc !important;
}
.dark .tk-action-btn.amber {
    border-color: rgba(245, 158, 11, 0.45) !important;
    background: rgba(245, 158, 11, 0.26) !important;
    color: #fcd34d !important;
}
.dark .tk-action-btn.gray {
    border-color: rgba(148, 163, 184, 0.35) !important;
    background: rgba(148, 163, 184, 0.26) !important;
    color: #94a3b8 !important;
}
.dark .tk-action-btn.green {
    border-color: rgba(123, 172, 52, 0.55) !important;
    background: rgba(153, 211, 45, 0.25) !important;
    color: #9cbb70 !important;
}
.dark .tk-action-btn.green:hover {
    background: rgba(110, 155, 26, 0.25) !important;
    color: #bcd894 !important;  
}

.tk-action-btn.green {
    border-color: rgba(98, 155, 30, 0.35) !important;
    background: rgba(191, 222, 79, 0.26) !important;
    color: #435833 !important;
}
.tk-action-btn.green:hover {
    background: rgba(129, 152, 45, 0.26) !important; 
    color: #2a3c1c !important;       
}

.dark .tk-action-btn:hover { filter: brightness(1.18) !important; }

.tk-page-indicator {
    font-size: 11px; padding: 3px 8px; border-radius: 4px; font-weight: 600;
    background: #f3f4f6; border: 1px solid #e5e7eb;
}
.dark .tk-page-indicator {
    background: rgba(148, 163, 184, 0.10) !important;
    border-color: rgba(148, 163, 184, 0.25) !important;
    color: var(--pt-d-text) !important;
}

/* ── 27. Primary action buttons - light mode uses 600 shade + light text ─── */
:root:not(.dark) .fi-btn.fi-color-primary,
:root:not(.dark) .fi-ac-btn-action.fi-color-primary {
    background-color: oklch(0.52 0.22 250) !important;
    color: oklch(0.97 0.02 250) !important;
}
:root:not(.dark) .fi-btn.fi-color-primary:hover,
:root:not(.dark) .fi-ac-btn-action.fi-color-primary:hover {
    background-color: oklch(0.44 0.20 250) !important;
    color: oklch(0.97 0.02 250) !important;
}

/* ── 28. Timekeeper table - inline style overrides for dark mode ──────────── */
/* .tk-col-act rowspan td has inline background:#fafafa */
.dark .tk-col-act[rowspan] { background: #04123D !important; }
/* .tk-col-lbl has background:#f9fafb in CSS */
.dark .tk-col-lbl { background: #04123D; color: var(--pt-d-muted) !important; }
/* .tk-day-we has background + color; override color in dark */
.dark .tk-day-we { background-color: #391d22 !important; color: #fdb9b9 !important; }
/* .tk-day-sl, .tk-day-n - dark equivalents */
.dark .tk-day-sl { background-color: #1e1535 !important; color: var(--pt-d-text) !important; }
.dark .tk-day-n  { background-color: #2d0e14 !important; color: var(--pt-d-text) !important; }
/* Employee/workplace name color: #00329e on light, #799bec on dark */
.dark .tk-col-info [style*="color:#00329e"],
.dark .tk-col-info [style*="color: #00329e"],
.dark [style*="color:#00329e"] { color: #a8bced !important; }

/* Leave table headers */
.dark .tk-leaves-tbl th { background: #04123D !important; color: var(--pt-d-text-bright) !important; }
/* Leave table tfoot add-row inputs/selects - dark mode */
.tk-dep-inp {
    font-size: 11px;
    padding: 2px 4px;
    border: 1px solid #d1d5db;
    border-radius: 3px;
    background: #fff;
    color: #111827;
    width: 100%;
    box-sizing: border-box;
}
.dark .tk-dep-inp {
    background: #0f2044 !important;
    color: #c9d8f0 !important;
    border-color: #2d4a7a !important;
    color-scheme: dark;
}
.tk-leaves-tbl tfoot td {
    padding: 4px 3px;
    vertical-align: middle;
}
.tk-leaves-add-row td { border-top: 1px solid #e5e7eb; }
.dark .tk-leaves-add-row td { border-top-color: #1e3a6a !important; }
/* bg-gray-50 rows in dark (thead row) */
.dark .tk-tbl tr.bg-gray-50 { background: rgba(14, 27, 48, 0.95) !important; }
.dark .tk-tbl thead tr.bg-gray-50 th { background: rgba(11, 43, 94, 0.80); }
/* .tk-sep-row separator row */
.dark .tk-sep-row td { background: transparent !important;  border-color: var(--pt-d-border) !important; }
/* .tk-col-tot empty total cells - no background needed */
.tk-col-tot { background: transparent !important; }

/* ── 29. Table toolbar (fi-ta-header-toolbar) - kpi-card style ───────────── */
.fi-ta-header-toolbar {
    background: rgba(10, 28, 90, 0.85);
    border: 1px solid rgba(100, 160, 255, 0.20);
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding: 0.5rem 1rem;
    position: relative;
    overflow: visible;
}
.fi-ta-header-toolbar::after {
    content: '';
    position: absolute;
    top: 0; left: 20%; right: 20%; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.6), transparent);
}
:root:not(.dark) .fi-ta-header-toolbar {
    background: rgba(18, 57, 210, 0.07);
    border-color: rgba(37, 99, 235, 0.18);
}

/* ── 30. Pagination - kpi-card style ─────────────────────────────────────── */
.fi-pagination {
    background: radial-gradient(circle,rgb(7, 18, 72) 0%, rgb(12, 20, 50) 100%) !important;
    border: 1px solid rgba(100, 160, 255, 0.20) !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 10px !important;
    border-bottom-right-radius: 10px !important;
    padding: 0.4rem 1rem !important;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(8px);
    margin-top: 2px !important;
}
.fi-pagination::after {
    content: '';
    position: absolute;
    bottom: 0; left: 20%; right: 20%; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.6), transparent);
}
:root:not(.dark) .fi-pagination {
    background: rgba(18, 57, 210, 0.05) !important;
    border-color: rgba(37, 99, 235, 0.18) !important;
}

/* ── 29b. Table header cell alignment - actions cell matches regular cells ── */
.dark .fi-ta-actions-header-cell,
.dark .fi-ta-empty-header-cell {
    background: rgba(8, 18, 40, 0.70) !important;
}

/* ── 29c. Form field labels - dark ───────────────────────────────────────── */
.fi-fo-field .fi-fo-field-label-content:where(.dark, .dark *) {
    color: rgba(255, 255, 255, 0.90);
}

/* ── 29d. Toggle (switch) buttons - dark checked state ───────────────────── */
.dark button[role="switch"][aria-checked="true"] {
    background-color: oklch(0.52 0.22 250) !important;
}
.dark button[role="switch"][aria-checked="false"] {
    background-color: rgba(62, 103, 167, 0.25) !important;
}

/* ── 31. Auth / Login page ────────────────────────────────────────────────── */

/* Full-page layout */
.fi-simple-layout {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
}

/* Light mode background (no image) */
:root:not(.dark) .fi-simple-layout {
    background: linear-gradient(145deg, #dce8ff 0%, #eef2ff 40%, #e8e4ff 100%);
}

/* Orb elements injected via render hook */
.pt-orb {
    position: fixed;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
    will-change: transform;
}
.pt-orb-1 {
    width: 700px; height: 700px;
    top: -250px; left: -200px;
    background: radial-gradient(circle at 40% 40%, rgba(37,99,235,0.32) 0%, transparent 60%);
    filter: blur(80px);
    animation: pt-orb-drift 13s ease-in-out infinite;
}
.pt-orb-2 {
    width: 560px; height: 560px;
    bottom: -180px; right: -150px;
    background: radial-gradient(circle at 60% 60%, rgba(99,102,241,0.26) 0%, transparent 60%);
    filter: blur(90px);
    animation: pt-orb-drift 11s ease-in-out infinite reverse;
    animation-delay: -5s;
}
.pt-orb-3 {
    width: 380px; height: 380px;
    top: 50%; left: 60%;
    background: radial-gradient(circle at 50% 50%, rgba(14,165,233,0.20) 0%, transparent 60%);
    filter: blur(70px);
    animation: pt-orb-drift 9s ease-in-out infinite;
    animation-delay: -3s;
}
:root:not(.dark) .pt-orb-1 {
    background: radial-gradient(circle at 40% 40%, rgba(37,99,235,0.18) 0%, transparent 60%);
}
:root:not(.dark) .pt-orb-2 {
    background: radial-gradient(circle at 60% 60%, rgba(99,102,241,0.14) 0%, transparent 60%);
}
:root:not(.dark) .pt-orb-3 {
    background: radial-gradient(circle at 50% 50%, rgba(14,165,233,0.12) 0%, transparent 60%);
}
@keyframes pt-orb-drift {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33%       { transform: translate(20px, -28px) scale(1.05); }
    66%       { transform: translate(-14px, 16px) scale(0.96); }
}

/* Main centering wrapper */
.fi-simple-main-ctn {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem 1rem;
}

/* ── Card base ── */
.fi-simple-main {
    position: relative;
    border-radius: 1.75rem !important;
}

/* Card - dark */
.dark .fi-simple-main {
    background: rgba(6, 14, 30, 0.52) !important;
    border: 1px solid rgba(100, 160, 255, 0.16) !important;
    box-shadow:
        0 0 0 1px rgba(100,160,255,0.05),
        0 2px 4px rgba(0,0,0,0.25),
        0 24px 80px rgba(0,0,0,0.65),
        inset 0 1px 0 rgba(100,160,255,0.08) !important;
    backdrop-filter: blur(36px) saturate(1.4) !important;
    padding: 2.75rem 3rem !important;
}

/* Card - light */
:root:not(.dark) .fi-simple-main {
    background: rgba(255,255,255,0.38) !important;
    border: 1px solid rgba(255,255,255,0.65) !important;
    box-shadow:
        0 4px 8px rgba(37,99,235,0.04),
        0 24px 64px rgba(37,99,235,0.13),
        inset 0 1px 0 rgba(255,255,255,0.85),
        inset 0 -1px 0 rgba(37,99,235,0.06) !important;
    backdrop-filter: blur(36px) saturate(1.9) !important;
    padding: 2.75rem 3rem !important;
}

/* Top glow accent line on card */
.fi-simple-main::before {
    content: '';
    position: absolute;
    top: 0; left: 12%; right: 12%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(96,165,250,0.80), transparent);
    border-radius: 1px;
    pointer-events: none;
}

/* Bottom subtle tint line */
.fi-simple-main::after {
    content: '';
    position: absolute;
    bottom: 0; left: 20%; right: 20%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(99,102,241,0.35), transparent);
    border-radius: 1px;
    pointer-events: none;
}

/* ── Logo ── */
img.fi-logo {
    height: 2.2rem !important;
    width: auto !important;
    margin: 0.3rem auto 0.375rem !important;
    filter: drop-shadow(0 2px 12px rgba(37,99,235,0.30));
}
div.fi-logo {
    font-size: 2.4rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.04em !important;
    height: auto !important;
    line-height: 1 !important;
    background: linear-gradient(135deg, #93c5fd 0%, #3b82f6 45%, #818cf8 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    margin: 0 auto 0.375rem !important;
    text-align: center;
    filter: drop-shadow(0 0 20px rgba(59,130,246,0.40));
}
:root:not(.dark) div.fi-logo {
    background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 50%, #4f46e5 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    filter: drop-shadow(0 0 14px rgba(37,99,235,0.25));
}

/* ── Header ── */
.fi-simple-header {
    text-align: center;
    margin-bottom: 2rem;
}
.fi-simple-header::after {
    content: '';
    display: block;
    width: 56px; height: 2px;
    margin: 0.875rem auto 0;
    background: linear-gradient(90deg, transparent, rgba(59,130,246,0.85), transparent);
    border-radius: 2px;
}

/* Page heading ("Conectare") */
.fi-simple-header-heading {
    font-size: 1.0rem !important;
    font-weight: 500 !important;
    margin-top: 0.55rem !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.dark .fi-simple-header-heading { color: rgba(148,163,184,0.85) !important; }
:root:not(.dark) .fi-simple-header-heading { color: rgba(71,85,105,0.80) !important; }

/* ── Form inputs on login page ── */
.fi-simple-main .fi-input-wrapper,
.fi-simple-main .fi-input {
    border-radius: 0.75rem !important;
}
.fi-simple-main input[type="email"],
.fi-simple-main input[type="password"],
.fi-simple-main input[type="text"] {
    border-radius: 0.75rem !important;
    font-size: 0.9375rem !important;
    height: 2.75rem !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
:root:not(.dark) .fi-simple-main .fi-input,
:root:not(.dark) .fi-simple-main input[type="email"],
:root:not(.dark) .fi-simple-main input[type="password"],
:root:not(.dark) .fi-simple-main input[type="text"] {
    background: rgba(255,255,255,0.72) !important;
    border-color: rgba(37,99,235,0.22) !important;
}
:root:not(.dark) .fi-simple-main .fi-input:focus-within,
:root:not(.dark) .fi-simple-main input[type="email"]:focus,
:root:not(.dark) .fi-simple-main input[type="password"]:focus {
    background: rgba(255,255,255,0.92) !important;
    border-color: rgba(37,99,235,0.55) !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.12) !important;
}
.dark .fi-simple-main .fi-input,
.dark .fi-simple-main input[type="email"],
.dark .fi-simple-main input[type="password"],
.dark .fi-simple-main input[type="text"] {
    background: rgba(37,99,235,0.08) !important;
    border-color: rgba(100,160,255,0.22) !important;
    color: var(--pt-d-text) !important;
}
.dark .fi-simple-main .fi-input:focus-within,
.dark .fi-simple-main input[type="email"]:focus,
.dark .fi-simple-main input[type="password"]:focus {
    background: rgba(37,99,235,0.14) !important;
    border-color: rgba(100,160,255,0.50) !important;
    box-shadow: 0 0 0 3px rgba(59,130,246,0.18) !important;
}

/* ── Submit button on login page ── */
.fi-simple-main .fi-btn.fi-color-primary,
.fi-simple-main [type="submit"].fi-btn {
    background: linear-gradient(135deg, oklch(0.52 0.22 250) 0%, oklch(0.44 0.22 260) 100%) !important;
    border: none !important;
    border-radius: 0.75rem !important;
    height: 2.75rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.025em !important;
    box-shadow: 0 4px 16px rgba(37,99,235,0.38), inset 0 1px 0 rgba(255,255,255,0.15) !important;
    transition: all 0.18s ease !important;
    color: #fff !important;
}
.fi-simple-main .fi-btn.fi-color-primary:hover,
.fi-simple-main [type="submit"].fi-btn:hover {
    box-shadow: 0 6px 24px rgba(37,99,235,0.50), inset 0 1px 0 rgba(255,255,255,0.15) !important;
    transform: translateY(-1px) !important;
}

/* ── GDPR checkbox label - smaller text ── */
.fi-simple-main .fi-fo-checkbox .fi-fo-field-label-content,
.fi-simple-main .fi-fo-checkbox label {
    font-size: 0.75rem !important;
    color: rgba(100,116,139,0.90) !important;
    line-height: 1.5 !important;
}
.dark .fi-simple-main .fi-fo-checkbox .fi-fo-field-label-content,
.dark .fi-simple-main .fi-fo-checkbox label {
    color: rgba(148,163,184,0.80) !important;
}

/* ── 32. Timekeeper / general dark overrides ─────────────────────────────── */
.dark .fi-header-heading { color: #ccd6e0 !important; }

.dark .fi-ta-cell.fi-ta-selection-cell:first-of-type {
    padding-inline-start: calc(var(--spacing) * 6) !important;
    background: rgba(8, 18, 40, 0.70) !important;
}

/* -- Header actions margin fix --------------------------------------------- */
.fi-header.fi-header-has-breadcrumbs .fi-header-actions-ctn { margin-top: 0px; }

/* -- Dashboard stats widget: remove card border/shadow ----------------- */
.fi-wi-stats-overview,
.fi-wi-stats-overview > *,
.fi-wi-stats-overview .fi-section,
.fi-wi-stats-overview .fi-sc {
    border: none !important;
    outline: none !important;
    /* Tailwind ring and shadow both map to box-shadow */
    box-shadow: none !important;
    --tw-ring-shadow: 0 0 #0000 !important;
    --tw-shadow: 0 0 #0000 !important;
    --tw-ring-offset-shadow: 0 0 #0000 !important;
    background: transparent !important;
    padding-inline: 0 !important;
    padding-block-start: 0 !important;
}

/* -- Dark mode: Sauron-style KPI cards for stats widget -------------------- */
.dark .fi-wi-stats-overview-stat {
    background:        rgba(100,160,255,0.16);;
    border:            1px solid oklch(1 0 0 / 0.10) !important;
    border-radius:     0.75rem !important;
    padding:           1.375rem 1.5rem !important;
    backdrop-filter:   blur(10px) !important;
    position:          relative !important;
    overflow:          hidden !important;
    transition:        border-color .25s ease, transform .25s ease, box-shadow .25s ease !important;
    box-shadow:        none !important;
}

/* top accent gradient line (primary colour) */
.dark .fi-wi-stats-overview-stat::after {
    content: '';
    position: absolute;
    top: 0; left: 20%; right: 20%;
    height: 1px;
    background: linear-gradient(90deg, transparent, oklch(0.60 0.22 250 / 0.7), transparent);
    pointer-events: none;
}

.dark .fi-wi-stats-overview-stat:hover {
    border-color: oklch(1 0 0 / 0.20) !important;
    transform:    translateY(-2px) !important;
    box-shadow:   0 8px 30px oklch(0 0 0 / 0.35) !important;
}

/* label - small uppercase "dirty blue" */
.dark .fi-wi-stats-overview-stat .fi-wi-stats-overview-stat-label {
    font-size:      0.72rem !important;
    font-weight:    700 !important;
    color:          oklch(0.55 0.10 250) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
}

/* value - big bright number */
.dark .fi-wi-stats-overview-stat .fi-wi-stats-overview-stat-value {
    font-size:      1.9rem !important;
    font-weight:    800 !important;
    color:          oklch(0.96 0.01 250) !important;
    letter-spacing: -0.03em !important;
    line-height:    1 !important;
    margin-bottom:  0.375rem !important;
}

/* description - small muted text */
.dark .fi-wi-stats-overview-stat .fi-wi-stats-overview-stat-description {
    font-size: 0.78rem !important;
    color:     oklch(0.60 0.05 250) !important;
}

/* -- Inline edit in table cells: allow input to overflow row height ---- */
.fi-ta-cell, .fi-ta-row td { overflow: visible !important; }
.dark .fi-ta-cell, .dark .fi-ta-row td { overflow: visible !important; }

/* ── 34. Misc layout fixes ───────────────────────────────────────────────────── */

/* Page header: let main content grow on wide screens */
.fi-page-header-main-ctn {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 90% !important;
    margin: auto;
}

/* Settings save button spacing */
.settings-save-wrap { margin-top: 10px !important; }

/* Search input: rounded corners on all sides */
.fi-ta-filters-search .fi-input-wrp,
.fi-global-search-field-ctn .fi-input-wrp {
    border-radius: 6px !important;
    overflow: hidden !important;
}
:root:not(.dark) .fi-ta-filters-search .fi-input-wrp { overflow: hidden !important; }

/* Selected rows: left accent + subtle tint on ALL cells, not just the checkbox cell */
tr[aria-selected="true"] > td,
tr[aria-selected="true"] > th {
    background-color: rgba(59, 130, 246, 0.05) !important;
    border-top-color: rgba(59, 130, 246, 0.30) !important;
    border-bottom-color: rgba(59, 130, 246, 0.30) !important;
}
tr[aria-selected="true"] > td:first-child,
tr[aria-selected="true"] > th:first-child {
    border-left: 3px solid oklch(0.60 0.22 250) !important;
}
.dark tr[aria-selected="true"] > td,
.dark tr[aria-selected="true"] > th {
    background-color: rgba(59, 130, 246, 0.09) !important;
    border-top-color: oklch(0.44 0.20 250 / 0.40) !important;
    border-bottom-color: oklch(0.44 0.20 250 / 0.40) !important;
}
.dark tr[aria-selected="true"] > td:first-child,
.dark tr[aria-selected="true"] > th:first-child {
    border-left-color: oklch(0.60 0.22 250) !important;
}

/* ── 33. MOBILE RESPONSIVE ──────────────────────────────────────────────────── */
@media (max-width: 768px) {
    /* Modal: keep inside viewport on tablets/phones */
    .fi-modal-window { max-width: calc(100vw - 2rem) !important; }

    /* Login card: more compact padding */
    .fi-simple-main {
        padding: 2rem 1.75rem !important;
        border-radius: 1.5rem !important;
    }

    /* Topbar items: tighter spacing */
    .fi-topbar-item-btn { padding-inline: 0.55rem !important; }
    .fi-topbar-item-label { font-size: 0.8rem !important; }

    /* Page content: reduce horizontal padding */
    .fi-page-content { padding-inline: 0.5rem !important; }

    /* Section cards: reduce padding */
    .fi-section-content { padding: 0.75rem !important; }

    /* Breadcrumbs: smaller text */
    .fi-breadcrumbs-item-label { font-size: 0.75rem !important; }
}

@media (max-width: 480px) {
    /* Modal: near full-width on small phones */
    .fi-modal-window {
        max-width: calc(100vw - 1rem) !important;
        border-radius: 1rem !important;
    }

    /* Login card: minimal padding on very small screens */
    .fi-simple-main {
        padding: 1.5rem 1.25rem !important;
        border-radius: 1.25rem !important;
    }

    /* Page content: minimal side padding */
    .fi-page-content { padding-inline: 0.25rem !important; }

    /* Topbar: font slightly smaller */
    .fi-topbar-item-label { font-size: 0.75rem !important; }

    /* Buttons: comfortable touch targets */
    .fi-btn { min-height: 2.5rem !important; }

    /* Headers: smaller on tiny screens */
    .fi-header-heading { font-size: 1rem !important; }

    /* Table header toolbar: wrap on small screens */
    .fi-ta-header-toolbar {
        flex-wrap: wrap !important;
        gap: 0.5rem !important;
    }

    /* Pagination: compact */
    .fi-pagination { padding: 0.3rem 0.5rem !important; }
    .fi-pagination .fi-pagination-records-per-page { display: none !important; }
}

/* ── Date-time picker: weekend days highlight ─────────────────────────────── */
/* Calendar grid: 7 cols Mon-Sun. Sat = position 6n, Sun = position 7n in     */
/* the flat list (empty "padding" divs fill the same grid positions).          */
/* Selector targets direct div children of the calendar grid container.        */
.fi-fo-date-time-picker-calendar > div:nth-of-type(7n+6),
.fi-fo-date-time-picker-calendar > div:nth-of-type(7n+7) {
    background-color: rgba(220, 38, 38, 0.08) !important;
    color: #dc2626 !important;
    border-radius: 0.25rem;
}
.dark .fi-fo-date-time-picker-calendar > div:nth-of-type(7n+6),
.dark .fi-fo-date-time-picker-calendar > div:nth-of-type(7n+7) {
    background-color: rgba(220, 38, 38, 0.18) !important;
    color: #f87171 !important;
}

/* ── SVG icon color: tk-btn uses currentColor ─────────────────────────────── */
.tk-btn         { color: #6b7280; }
.dark .tk-btn   { color: #cfdbee !important; }

/* ── Search input: fix right-side corner gap on focus ───────────────────── */
/* Filament wraps the search field in a group with overflow-hidden; focus     */
/* ring on the inner input leaks through on the right side in light mode.    */
.fi-ta-search-field-wrapper,
.fi-input-wrapper:has(input[type="search"]),
.fi-input-wrapper:has([name*="search"]) {
    overflow: hidden !important;
    border-radius: 0.5rem !important;
}
.fi-ta-search-field-wrapper input:focus,
input[type="search"]:focus,
.fi-ta-search-field input:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* ── Primary buttons: darker in dark mode ───────────────────────────────── */
.dark .fi-btn.fi-color-primary {
    background-color: oklch(0.35 0.16 250) !important;
}
.dark .fi-btn.fi-color-primary:hover {
    background-color: oklch(0.26 0.12 250) !important;
}

/* ── GDPR revoke button: light & dark mode ──────────────────────────────── */
.gdpr-revoke-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 7px 16px; font-size: 0.875rem; font-weight: 600;
    border-radius: 8px; cursor: pointer;
    border: 1px solid #fca5a5; background: #fef2f2; color: #b91c1c;
}
.dark .gdpr-revoke-btn {
    border-color: #991b1b; background: #3f0808; color: #fca5a5;
}

/* ── Select: clear-value button alignment ─────────────────────────────────── */
.fi-select-input-value-remove-btn { margin-top: -8px; }

/* ── Mobile: ascunde breadcrumb header, lărgește page header ─────────────── */
@media (max-width: 767px) {
    .fi-header.fi-header-has-breadcrumbs { display: none !important; }
    .fi-page-header-main-ctn { max-width: 100% !important; }
}

/* ── Topbar: compact nav groups at ≤1280px (icon-only, no labels) ─────── */
@media (min-width: 1024px) and (max-width: 1280px) {
    .fi-topbar-nav-groups {
        gap-x: 0.25rem !important;
    }
    .fi-topbar-item-label,
    .fi-topbar-group-toggle-icon {
        display: none !important;
    }
    .fi-topbar-item-btn {
        padding: 0.375rem 0.5rem !important;
    }
    .fi-topbar-item-btn > .fi-icon {
        width: 1.375rem !important;
        height: 1.375rem !important;
    }
}

/* ── 35. Table header (fi-ta-header) - light mode only ───────────────────── */
@media (min-width: 40rem) {
    html:not(.dark) .fi-ta-ctn .fi-ta-header {
        padding-inline: 1.5rem;
        background: rgba(18, 57, 210, 0.07);
        border-color: rgba(37, 99, 235, 0.18);
        border-top-left-radius: 8px;
        border-top-right-radius: 8px;
    }
}

/* Subheading-ul de pagină (ex. avertismentul de limită angajați) - fără plafon de lățime */
.fi-header-subheading {
    max-width: none !important;
}
