/* ============================================================
   omega-tabler.css
   Overrides do Tabler para identidade visual do OMEGA - Contador
   ============================================================ */

:root {
    --tblr-primary:        #066fd1;
    --tblr-primary-rgb:    6, 111, 209;
    --tblr-font-sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body {
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

/* ------------------------------------------------------------
   Sidebar (navbar-vertical)
   ------------------------------------------------------------ */
.navbar-vertical {
    --tblr-bg-surface: #1a2236;
    width: 15rem;
    min-width: 15rem;
}
.navbar-vertical .navbar-brand-image {
    max-height: 40px;
    width: auto;
}
.navbar-vertical .nav-link {
    padding: 0.55rem 0.8rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-radius: 0.375rem;
    margin: 0 0.5rem;
    width: auto;
}
.navbar-vertical .nav-link-icon {
    width: 1.25rem;
    min-width: 1.25rem;
    text-align: center;
    margin-right: 0.5rem;
    flex-shrink: 0;
}
.navbar-vertical .nav-link-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.navbar-vertical .nav-item.mt-auto {
    border-top: 1px solid rgba(255,255,255,0.08);
    margin-top: auto !important;
    padding-top: 0.5rem;
    margin-top: auto !important;
}
.navbar-vertical .navbar-nav {
    flex: 1;
}
.navbar-vertical .navbar-nav > .nav-item.dropdown .dropdown-menu {
    position: static !important;
    float: none;
    background: transparent;
    border: none;
    box-shadow: none;
    padding-left: 1.25rem;
    margin: 0;
}
.navbar-vertical .dropdown-menu .dropdown-item {
    color: rgba(255,255,255,0.7);
    padding: 0.4rem 0.8rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-radius: 0.25rem;
}
.navbar-vertical .dropdown-menu .dropdown-item:hover,
.navbar-vertical .dropdown-menu .dropdown-item:focus {
    color: #fff;
    background: rgba(255,255,255,0.08);
}
.navbar-vertical .dropdown-toggle::after {
    margin-left: auto;
}

/* ------------------------------------------------------------
   Avatar
   ------------------------------------------------------------ */
.avatar-sm {
    --tblr-avatar-size: 2rem;
}

/* ------------------------------------------------------------
   Card
   ------------------------------------------------------------ */
.card {
    box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 1px 2px rgba(0,0,0,0.06);
    border: 1px solid var(--tblr-border-color);
}

/* ------------------------------------------------------------
   Theme toggle
   ------------------------------------------------------------ */
#btnToggleTheme { color: inherit; }

/* ------------------------------------------------------------
   Page wrapper
   ------------------------------------------------------------ */
.page-wrapper {
    background: var(--tblr-body-bg);
    min-height: 100vh;
}

/* ------------------------------------------------------------
   Buttons
   ------------------------------------------------------------ */
.btn-primary {
    --tblr-btn-bg: #066fd1;
    --tblr-btn-border-color: #066fd1;
    --tblr-btn-hover-bg: #055ab0;
}

/* ------------------------------------------------------------
   Tables
   ------------------------------------------------------------ */
.table thead th {
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 0.05em;
    color: var(--tblr-secondary-color);
    background: var(--tblr-bg-surface-secondary);
}

/* ------------------------------------------------------------
   Dark theme overrides
   ------------------------------------------------------------ */
[data-bs-theme="dark"] {
    --tblr-secondary-color: #e8eaed;
}

[data-bs-theme="dark"] .text-secondary,
[data-bs-theme="dark"] .subheader,
[data-bs-theme="dark"] .page-pretitle {
    color: #e8eaed !important;
}

[data-bs-theme="dark"] .table thead th {
    color: #e8eaed !important;
}

[data-bs-theme="dark"] .navbar-vertical .text-secondary {
    color: rgba(255,255,255,0.7) !important;
}

/* ------------------------------------------------------------
   DataTables overrides (Bootstrap 3 → Bootstrap 5 / Tabler)
   ------------------------------------------------------------ */
div.dt-buttons {
    float: none;
    text-align: center;
    margin-bottom: 0.75rem;
}
div.dt-buttons .btn-default,
div.dt-buttons .dt-button {
    background: transparent;
    border: 1px solid var(--tblr-border-color, #dadcde);
    color: var(--tblr-body-color, #1d273b);
    border-radius: 3px;
    font-size: 0.75rem;
    padding: 0.3rem 0.6rem;
    margin: 0 1px;
    cursor: pointer;
    transition: color .15s,background-color .15s,border-color .15s;
}
div.dt-buttons .btn-default:hover,
div.dt-buttons .dt-button:hover {
    background: var(--tblr-bg-surface-secondary, #f0f2f5);
    border-color: var(--tblr-primary, #066fd1);
    color: var(--tblr-primary, #066fd1);
}
div.dt-buttons .btn-default:active,
div.dt-buttons .dt-button:active {
    background: var(--tblr-primary, #066fd1);
    border-color: var(--tblr-primary, #066fd1);
    color: #fff;
}

/* Pagination */
.dataTables_wrapper .dataTables_paginate {
    float: right;
    text-align: right;
    padding-top: 0.5rem;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
    display: inline-block;
    padding: 0.3rem 0.6rem;
    margin: 0 1px;
    border: 1px solid var(--tblr-border-color, #dadcde);
    border-radius: 3px;
    cursor: pointer;
    color: var(--tblr-body-color, #1d273b);
    font-size: 0.75rem;
    background: transparent;
    transition: color .15s,background-color .15s,border-color .15s;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: var(--tblr-bg-surface-secondary, #f0f2f5);
    border-color: var(--tblr-primary, #066fd1);
    color: var(--tblr-primary, #066fd1);
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: var(--tblr-primary, #066fd1);
    border-color: var(--tblr-primary, #066fd1);
    color: #fff;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
    cursor: default;
    color: var(--tblr-secondary-color, #6f7885);
    background: transparent;
    border-color: var(--tblr-border-color, #dadcde);
    opacity: 0.5;
}

/* Filter input */
.dataTables_wrapper .dataTables_filter input {
    margin-left: 0.5rem;
    border: 1px solid var(--tblr-border-color, #dadcde);
    border-radius: 3px;
    padding: 0.25rem 0.5rem;
    font-size: 0.8rem;
    background: var(--tblr-bg-surface, #fff);
    color: var(--tblr-body-color, #1d273b);
}
.dataTables_wrapper .dataTables_filter input:focus {
    border-color: var(--tblr-primary, #066fd1);
    outline: none;
}

/* Length select */
.dataTables_wrapper .dataTables_length select {
    border: 1px solid var(--tblr-border-color, #dadcde);
    border-radius: 3px;
    padding: 0.25rem 1.5rem 0.25rem 0.5rem;
    font-size: 0.8rem;
    background: var(--tblr-bg-surface, #fff);
    color: var(--tblr-body-color, #1d273b);
    margin: 0 0.25rem;
}
.dataTables_wrapper .dataTables_length select:focus {
    border-color: var(--tblr-primary, #066fd1);
    outline: none;
}

/* Info text */
.dataTables_wrapper .dataTables_info {
    padding-top: 0.75rem;
    font-size: 0.8rem;
    color: var(--tblr-secondary-color, #6f7885);
}

/* Processing indicator */
.dataTables_wrapper .dataTables_processing {
    background: var(--tblr-bg-surface, #fff);
    border: 1px solid var(--tblr-border-color, #dadcde);
    border-radius: 3px;
    padding: 0.5rem 1rem;
    font-size: 0.8rem;
}

/* Dark theme */
[data-bs-theme="dark"] div.dt-buttons .btn-default,
[data-bs-theme="dark"] div.dt-buttons .dt-button {
    border-color: #2c3344;
    color: #e8eaed;
}
[data-bs-theme="dark"] div.dt-buttons .btn-default:hover,
[data-bs-theme="dark"] div.dt-buttons .dt-button:hover {
    background: #2c3344;
    border-color: var(--tblr-primary, #066fd1);
}
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
    border-color: #2c3344;
    color: #e8eaed;
}
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #2c3344;
    border-color: var(--tblr-primary, #066fd1);
}
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter input,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length select {
    background: #1d2233;
    border-color: #2c3344;
    color: #e8eaed;
}
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter input:focus,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length select:focus {
    border-color: var(--tblr-primary, #066fd1);
}
