@import url('./sweetalert.css');

/* Estilo do loader */
#loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(1px);
    z-index: 9999;
}

/* Estilos padrões do sistema -> customizados */
a {
    color: #285a84;
}

.hide {
    display: none;
}

.btn.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #285a84;
    --bs-btn-border-color: #285a84;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #03314d;
    --bs-btn-hover-border-color: #03314d;
    --bs-btn-focus-shadow-rgb: 139, 128, 214;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #03314d;
    --bs-btn-active-border-color: #03314d;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #03314d;
    --bs-btn-disabled-border-color: #03314d;
}

.btn-link {
    color: #285a84;
}

.card {
    border-radius: 9px !important;
}

:root,
[data-bs-theme='light'] {
    --bs-blue: #285a84;
    --bs-indigo: #03314d;
    --bs-purple: #3966d7;
    --bs-pink: #e83e8c;
    --bs-red: #e1665d;
    --bs-orange: #f1734f;
    --bs-yellow: #f7cc53;
    --bs-green: #6dcba3;
    --bs-secondary: #969ba5;
    --bs-teal: #050505;
    --bs-cyan: #5fd0f3;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #9295a4;
    --bs-gray-dark: #24243c;
    --bs-gray-100: #f8f9fa;
    --bs-gray-150: #f8f7fc;
    --bs-gray-200: #f4f5f6;
    --bs-gray-300: #eff0f2;
    --bs-gray-400: #e2e5e8;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #9295a4;
    --bs-gray-700: #2d2d49;
    --bs-gray-800: #24243c;
    --bs-gray-900: #1b1c31;
    --bs-primary: #285a84;
    --bs-secondary: #969ba5;
    --bs-success: #6dcba3;
    --bs-info: #5fd0f3;
    --bs-warning: #f7cc53;
    --bs-danger: #e1665d;
    --bs-pink: #e83e8c;
    --bs-light: #f8f7fc;
    --bs-dark: #24243c;
    --bs-purple: #3966d7;
    --bs-primary-rgb: 40, 90, 132;
    --bs-secondary-rgb: 150, 155, 165;
    --bs-success-rgb: 109, 203, 163;
    --bs-info-rgb: 95, 208, 243;
    --bs-warning-rgb: 247, 204, 83;
    --bs-danger-rgb: 225, 102, 93;
    --bs-pink-rgb: 232, 62, 140;
    --bs-light-rgb: 248, 247, 252;
    --bs-dark-rgb: 36, 36, 60;
    --bs-purple-rgb: 57, 102, 215;
    --bs-primary-text-emphasis: #302a53;
    --bs-secondary-text-emphasis: #3c3e42;
    --bs-success-text-emphasis: #2c5141;
    --bs-info-text-emphasis: #265361;
    --bs-warning-text-emphasis: #635221;
    --bs-danger-text-emphasis: #5a2925;
    --bs-light-text-emphasis: #2d2d49;
    --bs-dark-text-emphasis: #2d2d49;
    --bs-primary-bg-subtle: #e4e1f5;
    --bs-secondary-bg-subtle: #eaebed;
    --bs-success-bg-subtle: #e2f5ed;
    --bs-info-bg-subtle: #dff6fd;
    --bs-warning-bg-subtle: #fdf5dd;
    --bs-danger-bg-subtle: #f9e0df;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #e2e5e8;
    --bs-primary-border-subtle: #c9c3ec;
    --bs-secondary-border-subtle: #d5d7db;
    --bs-success-border-subtle: #c5eada;
    --bs-info-border-subtle: #bfecfa;
    --bs-warning-border-subtle: #fcebba;
    --bs-danger-border-subtle: #f3c2be;
    --bs-light-border-subtle: #f4f5f6;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: 'Noto Sans', sans-serif;
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 0.9rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #2d2d49;
    --bs-body-color-rgb: 45, 45, 73;
    --bs-body-bg: #f9f6fa;
    --bs-body-bg-rgb: 249, 246, 250;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(45, 45, 73, 0.75);
    --bs-secondary-color-rgb: 45, 45, 73;
    --bs-secondary-bg: #fff;
    --bs-secondary-bg-rgb: 255, 255, 255;
    --bs-tertiary-color: rgba(45, 45, 73, 0.5);
    --bs-tertiary-color-rgb: 45, 45, 73;
    --bs-tertiary-bg: #f8f9fa;
    --bs-tertiary-bg-rgb: 248, 249, 250;
    --bs-link-color: #285a84;
    --bs-link-color-rgb: 40, 90, 132;
    --bs-link-decoration: none;
    --bs-link-hover-color: #283846;
    --bs-link-hover-color-rgb: 95, 85, 166;
    --bs-code-color: #e1665d;
    --bs-highlight-bg: #fcf8e3;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #eff0f2;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0.25rem;
    --bs-border-radius-sm: 0.2rem;
    --bs-border-radius-lg: 0.4rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-xxl: 2rem;
    --bs-border-radius-2xl: var(--bs-border-radius-xxl);
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 2px 3px rgba(36, 36, 60, 0.06);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-box-shadow-lg: 0 5px 6px rgba(36, 36, 60, 0.1);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(40, 90, 132, 0.25);
    --bs-form-valid-color: #6dcba3;
    --bs-form-valid-border-color: #6dcba3;
    --bs-form-invalid-color: #e1665d;
    --bs-form-invalid-border-color: #e1665d;
}

[data-bs-theme='dark'] {
    color-scheme: dark;
    --bs-body-color: #9295a4;
    --bs-body-color-rgb: 146, 149, 164;
    --bs-body-bg: #1b1c31;
    --bs-body-bg-rgb: 27, 28, 49;
    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: #d8d8df;
    --bs-secondary-color-rgb: 216, 216, 223;
    --bs-secondary-bg: #24243c;
    --bs-secondary-bg-rgb: 36, 36, 60;
    --bs-tertiary-color: rgba(146, 149, 164, 0.5);
    --bs-tertiary-color-rgb: 146, 149, 164;
    --bs-tertiary-bg: #292943;
    --bs-tertiary-bg-rgb: 41, 41, 67;
    --bs-primary-text-emphasis: #285a84;
    --bs-secondary-text-emphasis: #c0c3c9;
    --bs-success-text-emphasis: #a7e0c8;
    --bs-info-text-emphasis: #9fe3f8;
    --bs-warning-text-emphasis: #fae098;
    --bs-danger-text-emphasis: #eda39e;
    --bs-light-text-emphasis: #f8f9fa;
    --bs-dark-text-emphasis: #eff0f2;
    --bs-primary-bg-subtle: #302a53;
    --bs-secondary-bg-subtle: #3c3e42;
    --bs-success-bg-subtle: #2c5141;
    --bs-info-bg-subtle: #265361;
    --bs-warning-bg-subtle: #635221;
    --bs-danger-bg-subtle: #5a2925;
    --bs-light-bg-subtle: #9295a4;
    --bs-dark-bg-subtle: #494b52;
    --bs-primary-border-subtle: #285a84;
    --bs-secondary-border-subtle: #5a5d63;
    --bs-success-border-subtle: #417a62;
    --bs-info-border-subtle: #397d92;
    --bs-warning-border-subtle: #947a32;
    --bs-danger-border-subtle: #873d38;
    --bs-light-border-subtle: #2d2d49;
    --bs-dark-border-subtle: #2d2d49;
    --bs-link-color: #285a84;
    --bs-link-hover-color: #285a84;
    --bs-link-color-rgb: 173, 166, 226;
    --bs-link-hover-color-rgb: 189, 184, 232;
    --bs-code-color: #eda39e;
    --bs-border-color: #2d2d49;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.05);
    --bs-form-valid-color: #a7e0c8;
    --bs-form-valid-border-color: #a7e0c8;
    --bs-form-invalid-color: #eda39e;
    --bs-form-invalid-border-color: #eda39e;
}

:root,
[data-bs-theme='light'] {
    --bs-header-bg: #fff;
    --bs-header-item-color: var(--bs-header-item-color);
    --bs-text-muted: #959396;
    --bs-sidebar-bg: #ffffff;
    --bs-sidebar-border-color: #e9ebef;
    --bs-sidebar-menu-item-color: #7b8190;
    --bs-sidebar-menu-sub-item-color: #7b8190;
    --bs-sidebar-menu-item-icon-color: #7b8190;
    --bs-sidebar-menu-item-hover-color: #383c40;
    --bs-sidebar-menu-item-active-color: #283846;
    --bs-sidebar-menu-sub-item-active-color: #383c40;
    --bs-sidebar-menu-item-active-bg-color: #eeedf9;
    --bs-topbar-search-bg: #f8f7fc;
    --bs-header-dark-bg: radial-gradient(at 50% -20%, #03314d, #03314d) fixed;
    --bs-header-dark-item-color: #e9ecef;
    --bs-footer-bg: #ffffff;
    --bs-footer-color: #74788d;
    --bs-topnav-bg: #fff;
    --bs-menu-item-color: #7b8190;
    --bs-menu-item-active-color: #03314d;
    --bs-topnav-dark-bg: #03314d;
    --bs-menu-dark-item-color: rgba(255, 255, 255, 0.5);
    --bs-menu-item-active-border-color: #03314d;
    --bs-menu-dark-item-hover-color: #ffffff;
    --bs-menu-dark-item-active-color: #fff;
    --bs-navbar-brand-box-bg: #ffffff;
    --bs-boxed-body-bg: #e9e5eb;
    --bs-apex-grid-color: #f8f9fa;
}

:root [data-sidebar='dark'],
[data-bs-theme='light'] [data-sidebar='dark'] {
    --bs-sidebar-dark-bg: #24243c;
    --bs-sidebar-dark-menu-item-color: #9292a9;
    --bs-sidebar-dark-menu-sub-item-color: #9292a9;
    --bs-sidebar-dark-menu-item-icon-color: #9292a9;
    --bs-sidebar-dark-menu-item-hover-color: #d8d8df;
    --bs-sidebar-dark-menu-item-active-color: #d8d8df;
    --bs-sidebar-dark-menu-item-active-bg-color: #2c2c45;
}

[data-bs-theme='dark'] {
    --bs-light: #2d2d49;
    --bs-light-rgb: 45, 45, 73;
    --bs-dark: #2d2d49;
    --bs-dark-rgb: 45, 45, 73;
    --bs-text-muted: #858592;
    --bs-header-dark-bg: radial-gradient(at 50% -20%, #24243c, #222236) fixed;
    --bs-header-item-color: #24243c;
    --bs-top-tagbar-bg: #285a84;
    --bs-header-item-sub-color: var(--bs-text-muted);
    --bs-navbar-brand-box-bg: #24243c;
    --bs-footer-bg: #24243c;
    --bs-footer-color: #d8d8df;
    --bs-sidebar-dark-bg: #24243c;
    --bs-sidebar-dark-menu-item-color: #9292a9;
    --bs-sidebar-dark-menu-sub-item-color: #9292a9;
    --bs-sidebar-dark-menu-item-icon-color: #9292a9;
    --bs-sidebar-dark-menu-item-hover-color: #d8d8df;
    --bs-sidebar-dark-menu-item-active-color: #d8d8df;
    --bs-sidebar-dark-menu-item-active-bg-color: #2c2c45;
    --bs-boxed-body-bg: #14142b;
}

[data-bs-theme='dark'] [data-topbar='dark'] {
    --bs-header-dark-bg: radial-gradient(at 50% -20%, #24243c, #222236) fixed;
    --bs-header-dark-item-color: #e9ecef;
}

/* Espaçamento */
.pr-0 {
    padding-right: 0 !important;
}

.pr-5 {
    padding-right: 5px !important;
}

.pr-10 {
    padding-right: 10px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-50 {
    margin-top: 50px !important;
}

.mt-100 {
    margin-top: 1000px !important;
}

.mr-1 {
    margin-right: 1px !important;
}

.mr-2 {
    margin-right: 2px !important;
}

.mr-3 {
    margin-right: 3px !important;
}

.mr-4 {
    margin-right: 4px !important;
}

.mr-5 {
    margin-right: 5px !important;
}

/* Tamanho de fonte */
.fz20 {
    font-size: 20px !important;
}

.capitalize-input {
    text-transform: capitalize !important;
}

.capitalize-input::placeholder {
    text-transform: none;
    /* Isso remove a transformação de texto para o placeholder */
}

/* Alinhamentos */
.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.divCenterVertical {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    padding: 0;
}

.text-right {
    text-align: right !important;
    float: right;
}

.clearfix {
    margin: 10px 0;
    width: 100%;
}

/* Barra lateral de configurações */
.right-bar {
    width: 35%;
    right: -35%;
}

.right-bar .right-bar-toggle-close {
    background-color: #285a84;
}

.right-bar .right-bar-toggle-close:hover {
    background-color: #03314d;
}

/* Formatação  textos */
.uppercase {
    text-transform: uppercase;
}

/* Estilos para .form-select */
.form-select {
    display: block;
    width: 100%;
    padding: 0.422rem 0.875rem;
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.5;
    color: #6f6b7d;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #dbdade;
    appearance: none;
    border-radius: 0.375rem;
    transition:
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

.form-select:focus {
    color: #6f6b7d;
    background-color: #fff;
    border-color: #285a84;
    outline: 0;
    box-shadow: 0 0.125rem 0.25rem rgba(165, 163, 174, 0.3);
}

.form-select::-webkit-date-and-time-value {
    height: 1.5em;
}

.form-select::placeholder {
    color: #b7b5be;
    opacity: 1;
}

.form-select::placeholder,
.form-select:focus::placeholder {
    transition: all 0.2s ease;
}

/* Estilos para .form-control */
.form-control {
    display: block;
    width: 100%;
    padding: 0.422rem 0.875rem;
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.5;
    color: #6f6b7d;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #dbdade;
    appearance: none;
    border-radius: 0.375rem;
    transition:
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

.form-control:focus {
    color: #6f6b7d;
    background-color: #fff;
    border-color: #285a84;
    outline: 0;
    box-shadow: 0 0.125rem 0.25rem rgba(165, 163, 174, 0.3);
}

.form-control::placeholder {
    color: #b7b5be;
    opacity: 1;
}

.form-control::placeholder,
.form-control:focus::placeholder {
    transition: all 0.2s ease;
}

.choices__item .choices__item--selectable {
    border: 1px solid #285a84;
    background-color: #285a84 !important;
}

/* Não exibe no mobile */
@media (max-width: 767px) {
    .no-mobile {
        display: none !important;
    }

    .auth-bg {
        height: 100vh !important;
    }
}

.modal-body {
    border-radius: 9px;
    background-color: white;
    padding: 30px 30px;
}

.badge {
    font-size: 12px !important;
}

input.disabled {
    background-color: #eee !important;
    color: #888;
}

select.disabled {
    background-color: #eee !important;
    color: #888;
}

.exibeMeusDados {
    cursor: pointer;
}

.pointer {
    cursor: pointer;
}

#termo {
    padding-right: 50px;
}

/* Alerta ao clicar na tabela */
.selected-row {
    --bs-table-color: #000;
    --bs-table-striped-color: #000;
    --bs-table-active-color: #000;
    --bs-table-hover-color: #000;
    color: var(--bs-table-color);
}

.floating-info {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    display: none;
}

.floating-cobrancas {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    display: block;
}

.offcanvas-bottom {
    min-height: 50vh !important;
    overflow-y: auto;
}

/* Estilo para a classe 'selectable' */
.selectable {
    position: relative;
}

/* Estilo para ocultar inicialmente o elemento com a classe 'hover' */
.selectable .hover {
    display: none;
    position: absolute;
    top: 50%;
    right: 2%;
    transform: translateY(-50%);
    /* Centraliza verticalmente o ícone em relação ao texto */
}

/* Exibir o elemento com a classe 'hover' quando a célula estiver em hover */
.selectable:hover .hover {
    display: block;
}

@keyframes piscar {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}

.piscar {
    animation: piscar 2s ease-out 3;
}

/* ====== CARDS PRINCIPAIS ====== */
.hover-card {
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 12px;
}

.hover-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* ====== QUIOSQUES E MESAS ====== */
.quiosque-card {
    transition: all 0.3s ease;
    border-radius: 12px;
    cursor: pointer;
    min-height: 120px;
    background: #fff;
    border: 1px solid #e9ecef;
}

.quiosque-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.07);
    border-color: #bfc8d6;
}

.mesa-card {
    background: #fff;
    border: 1px solid #e9ecef;
}

.mesa-card:hover {
    border-color: #bfc8d6;
}

/* Estados dos cards */
.quiosque-card.reservado {
    background: #d4edda !important;
    border-color: #28a745 !important;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.15) !important;
}

.quiosque-card.aberto {
    background: #fff;
    border-color: #e9ecef;
}

.mesa-card.reservado {
    background: #d4edda !important;
    border-color: #28a745 !important;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.15) !important;
}

/* Badge dos números */
.numero-badge {
    background: #f5f6fa;
    color: #333;
    padding: 8px 12px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 60px;
    box-shadow: none;
}

.mesa-badge {
    background: #f5f6fa;
    box-shadow: none;
}

.quiosque-card.reservado .numero-badge {
    background: #c3e6cb !important;
    color: #155724 !important;
    box-shadow: none;
}

.mesa-card.reservado .mesa-badge {
    background: #c3e6cb !important;
    color: #155724 !important;
    box-shadow: none;
}

/* Indicador de status */

/* Informações da reserva */
.status-text {
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 4px;
}

.quiosque-card.aberto .status-text::after {
    content: 'Disponível';
    color: #6c757d;
}

.quiosque-card.reservado .status-text::after {
    content: 'Reservado';
    color: #28a745;
}

.reserva-details {
    font-size: 0.75rem;
    color: #6c757d;
    line-height: 1.3;
}

.quiosque-card.reservado .reserva-details {
    color: #155724;
}

/* Responsividade */
@media (max-width: 768px) {
    .quiosque-card {
        min-height: 100px;
    }

    .numero-badge {
        min-width: 50px;
        font-size: 0.8rem;
        padding: 6px 10px;
    }

    .status-text {
        font-size: 0.8rem;
    }

    .reserva-details {
        font-size: 0.7rem;
    }
}

/* Animações */
@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }
}

.quiosque-card.reservado .status-indicator {
    animation: pulse 2s infinite;
}

/* LISTA AUTOCOMPLETE */
#HeaderListaAssociados {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;

    max-height: 280px;
    overflow-y: auto;

    z-index: 3000;
    display: none;

    width: auto; /* tamanho cresce conforme o texto */
    min-width: 250px; /* largura mínima elegante */
    max-width: 600px; /* evita ficar gigante */
}

/* ITENS DA LISTA */
.item-associado {
    padding: 5px 12px;
    font-size: 12px;
    color: #444;

    white-space: nowrap; /* ⛔ não deixa quebrar linha */
    overflow: hidden; /* evita bagunça */
    text-overflow: ellipsis; /* ... caso fique muito grande */
}

.item-associado:hover {
    background: #f1f1f1;
}

/* PREVIEW WHATSAPP (APENAS A FOTO) */
.preview-wpp {
    position: absolute;
    top: 190px;
    left: -820%; /* sempre ao lado do dropdown */
    transform: translateY(-50%);

    z-index: 6000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease-in-out;
}

.preview-card {
    background: #ffffff;
    padding: 2px;
    border-radius: 12px;
    border: 1px solid #ddd;
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.15);
    width: auto;

    display: flex;
    align-items: center;
    justify-content: center;

    transform: translateX(15px);
    transition: all 0.2s ease-in-out;
}

.preview-wpp.show {
    opacity: 1;
    pointer-events: auto;
}

.preview-wpp.show .preview-card {
    transform: translateX(0px);
}

.preview-img {
    width: 80px;
    border-radius: 12px;
    object-fit: contain;
}
/* Estilos para o sistema de permissões */
.permission-checkbox {
    cursor: pointer;
}

.permission-checkbox:checked + label {
    font-weight: 500;
    color: #285a84;
}

.card.border {
    border: 1px solid #e9ecef !important;
    transition: all 0.3s ease;
    height: 100%;
}

.card.border:hover {
    border-color: #285a84 !important;
    box-shadow: 0 0.125rem 0.25rem rgba(40, 90, 132, 0.1);
}

#permission-alert {
    border-left: 4px solid #ff9800;
}

#select-all-permissions {
    cursor: pointer;
}

/* Badge Supervisor no Header */
.user-name .badge {
    font-size: 0.65rem;
    padding: 0.35rem 0.5rem;
    font-weight: 600;
    letter-spacing: 0.5px;
}

#select-all-permissions:checked + label {
    color: #285a84;
}

.btn-recebimentos.disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

/* Log de usuários */
.table-log-usuarios {
    table-layout: fixed;
}

.table-log-usuarios .log-pagina-acao {
    min-width: 10rem;
    max-width: 14rem;
}

.table-log-usuarios .log-pagina-acao .badge {
    font-size: 0.7rem;
}

/* Aba Esporte — ficha do associado (dashboard) */
#esporte .associados-esporte .table-hover tbody tr.js-ae-ver-associado {
    cursor: pointer;
}

#esporte .associados-esporte .table-hover tbody tr.js-ae-ver-associado:hover {
    background-color: rgba(40, 90, 132, 0.06);
}

