/* assets/css/locamais-common-components.css - Estilos para componentes de UI comuns (botões, cards, etc.) */

/* Variáveis CSS (Cores, Fontes, Bordas, Sombras) - Raiz da UI */
/* Garanta que suas variáveis principais estejam definidas em locamais-base.css ou em algum lugar global.
   Replicando aqui para garantir que os estilos do modal funcionem mesmo que as variáveis não sejam carregadas no contexto. */
:root {
    --lm-primary: #0F172A;
    --lm-primary-dark: #2563EB;
    --lm-secondary: #64748B;
    --lm-light: #F9FAFB;
    --lm-lighter: #F3F4F6;
    --lm-dark: #1F2937;
    --lm-text: #374151;
    --lm-text-muted: #9CA3AF; /* Ajustado de #6B7280 para um cinza mais claro */
    --lm-border: #E5E7EB;
    --lm-border-light: #E2E8F0;
    --lm-success: #10B981;
    --lm-error: #EF4444;
    --lm-info: #3B82F6;
    --lm-warning: #F59E0B;
    --lm-purple-light: #EDE9FE; --lm-purple: #8B5CF6;
    --lm-blue-icon-bg: #DBEAFE; --lm-blue-icon-fg: var(--lm-primary);
    --lm-teal-light: #CCFBF1;   --lm-teal: #14B8A6;
    --lm-font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    --lm-border-radius: 0.375rem;
    --lm-border-radius-lg: 0.5rem;
    --lm-border-radius-table: 10px;
    --lm-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --lm-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --lm-table-header-bg:#CDDBF4;
    --lm-table-header-text: #233A67;

    /* Novas variáveis para o modal minimalista */
    --lm-modal-bg: #FFFFFF;
    --lm-modal-border-radius: 0.75rem; /* 12px */
    --lm-modal-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.25);
    --lm-export-card-bg: linear-gradient(135deg, #f0f4f8 0%, #ffffff 100%);
    --lm-export-card-border: 1px solid var(--lm-border);
    --lm-export-card-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* Wrapper principal da UI (área onde o portal está inserido) */
.locamais-portal-ui-wrapper {
    background-color: var(--lm-light) !important;
    padding: 20px 15px !important;
    margin: 20px 0 !important;
}

/* Page Header (cabeçalho de seções/módulos) */
.locamais-portal-page-header {
    display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: center !important;
    margin-bottom: 24px !important; padding-bottom: 16px !important;
}
.locamais-portal-page-title {
    font-size: 1.75rem !important; font-weight: 600 !important; color: var(--lm-dark) !important;
    margin: 0 !important; line-height: 1.3 !important; flex-grow: 1 !important;
}
.locamais-portal-header-actions { display: flex !important; align-items: center !important; gap: 12px !important; }

/* Botões Reusáveis */
.locamais-button {
    display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 0.5rem !important;
    padding: 0.5rem 1rem !important; height: 40px !important; font-size: 0.875rem !important; font-weight: 500 !important;
    border-radius: var(--lm-border-radius) !important; border: 1px solid transparent !important;
    cursor: pointer !important; transition: all 0.15s ease-in-out !important; white-space: nowrap !important; line-height: 1 !important;
}
.locamais-button .dashicons { font-size: 1.125rem !important; line-height: 1 !important; }
.locamais-button-text { display: inline !important; }
.locamais-button--primary { background-color: var(--lm-primary)!important; border-color: var(--lm-primary)!important; color: white !important; }
.locamais-button--primary:hover { background-color: var(--lm-primary-dark)!important; border-color: var(--lm-primary-dark)!important; }
.locamais-button--outline { background-color: transparent !important; border-color: var(--lm-border)!important; color: var(--lm-text)!important; }
.locamais-button--outline:hover { background-color: var(--lm-lighter)!important; border-color: #CBD5E1 !important; color: var(--lm-dark)!important; }
.locamais-button--success { background-color: var(--lm-success)!important; border-color: var(--lm-success)!important; color: white !important; }
.locamais-button--success:hover { background-color: #0d996d !important; border-color: #0d996d !important; }
.locamais-button--error { background-color: var(--lm-error)!important; border-color: var(--lm-error)!important; color: white !important; }
.locamais-button--error:hover { background-color: #d82b2b !important; border-color: #d82b2b !important; }
.locamais-button--info { background-color: var(--lm-info)!important; border-color: var(--lm-info)!important; color: white !important; }
.locamais-button--info:hover { background-color: #2b6cb0 !important; border-color: #2b6cb0 !important; }
.locamais-button:disabled { opacity: 0.65 !important; cursor: not-allowed !important; }
@keyframes locamais-spin { to { transform: rotate(360deg)!important; } } /* Animação genérica de giro */

/* Botão de atualização específico (usado em alguns headers) */
.locamais-button--refresh {
    background-color: var(--lm-lighter)!important; border: 1px solid var(--lm-border)!important;
    color: var(--lm-secondary)!important; padding: 0.4rem 0.8rem !important; font-size: 0.8125rem !important;
}
.locamais-button--refresh:hover {
    background-color: #E5E7EB !important; border-color: #D1D5DB !important; color: var(--lm-dark)!important;
}
.locamais-button--small {
    padding: 0.3rem 0.6rem !important;
    height: 32px !important;
    font-size: 0.8rem !important;
}
.locamais-button--small .dashicons {
    font-size: 0.9em !important;
}


/* Controles de Formulário (Inputs, Selects, Textareas) */
.locamais-form-group {
    margin-bottom: 1rem !important;
}
.locamais-form-group label {
    display: block !important;
    font-weight: 600 !important;
    margin-bottom: 0.5rem !important;
    color: var(--lm-dark) !important;
    font-size: 0.9em !important;
}
.locamais-form-group .required {
    color: var(--lm-error) !important;
}
.locamais-form-info {
    font-size: 0.85rem !important;
    color: var(--lm-text-muted) !important;
    margin-bottom: 1rem !important;
}
.locamais-input, .locamais-select, .locamais-textarea {
    font-family: var(--lm-font-sans) !important; font-size: 0.875rem !important;
    padding: 0.5rem 0.75rem !important; border: 1px solid var(--lm-border) !important;
    border-radius: var(--lm-border-radius) !important; background-color: var(--lm-lighter) !important;
    color: var(--lm-text) !important; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
    height: 40px !important; box-sizing: border-box !important;
    width: 100% !important; /* Adicionado width 100% para campos de formulário */
}
.locamais-select { min-width: 120px !important; }
.locamais-input--search-field { padding-left: 2.75rem !important; width: 100% !important; max-width: 300px !important; }
.locamais-select:focus, .locamais-input:focus, .locamais-textarea:focus {
    border-color: var(--lm-primary) !important; background-color: var(--lm-background-main, #FFFFFF) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important; outline: none !important;
}
.locamais-textarea {
    min-height: 80px !important;
    resize: vertical !important;
    height: auto !important;
}
.locamais-input-file { /* Estilo para input type="file" */
    padding: 0.5rem !important;
    height: auto !important;
}
.locamais-search-wrapper { position: relative !important; display: flex !important; align-items: center !important; }
.locamais-search-icon { position: absolute !important; left: 0.875rem !important; top: 50% !important; transform: translateY(-50%) !important; color: var(--lm-text-muted) !important; font-size: 1rem !important; pointer-events: none !important; }
.locamais-form-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin-top: 1.5rem !important;
}


/* Card de Conteúdo Principal (para agrupar tabelas, gráficos, etc.) */
.locamais-content-card {
    background-color: var(--lm-background-main, #FFFFFF) !important;
    border-radius: var(--lm-border-radius-lg) !important;
    box-shadow: var(--lm-shadow) !important;
    padding: 1.5rem !important;
    border: 0.5px solid var(--lm-border) !important;
}
.locamais-card-header { display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 1.25rem !important; gap: 1rem !important; }
.locamais-card-title { font-size: 1.25rem !important; font-weight: 600 !important; color: var(--lm-dark) !important; margin: 0 !important; }
.locamais-card-actions { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 0.75rem !important; }
.locamais-card-filters { display: flex !important; flex-wrap: wrap !important; align-items: flex-end !important; gap: 1.5rem !important; margin-bottom: 1.25rem !important; padding-top: 1rem !important; border-top: 1px solid var(--lm-border) !important; }


/* Cards de Status Reusáveis */
.locamais-stats-cards-container { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important; gap: 20px !important; margin-bottom: 30px !important; }
.locamais-stat-card {
    background-color: var(--lm-background-main, #FFFFFF) !important; border-radius: var(--lm-border-radius-lg) !important;
    padding: 1.5rem !important; display: flex !important; align-items: center !important; gap: 1rem !important;
    box-shadow: var(--lm-shadow) !important;
    border: 1px solid var(--lm-border) !important;
}
.locamais-stat-card__icon-bg { width: 48px !important; height: 48px !important; border-radius: 50% !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.locamais-stat-card__icon-bg .dashicons { font-size: 24px !important; color: #fff !important; }
/* Variações de cor para ícones de status */
.locamais-stat-card__icon-bg--total { background-color: var(--lm-blue-icon-bg) !important; }
.locamais-stat-card__icon-bg--total .dashicons { color: var(--lm-blue-icon-fg) !important; }
.locamais-stat-card__icon-bg--ativo { background-color: var(--lm-teal-light) !important; }
.locamais-stat-card__icon-bg--ativo .dashicons { color: var(--lm-teal) !important; }
.locamais-stat-card__icon-bg--inativo { background-color: var(--lm-purple-light) !important; }
.locamais-stat-card__icon-bg--inativo .dashicons { color: var(--lm-purple) !important; }
/* Novas cores para status cards (genéricas, se módulos não sobrescreverem) */
.locamais-stat-card__icon-bg--success { background-color: var(--lm-success); }
.locamais-stat-card__icon-bg--success .dashicons { color: white; }
.locamais-stat-card__icon-bg--error { background-color: var(--lm-error); }
.locamais-stat-card__icon-bg--error .dashicons { color: white; }
.locamais-stat-card__icon-bg--warning { background-color: var(--lm-warning); }
.locamais-stat-card__icon-bg--warning .dashicons { color: white; }
.locamais-stat-card__icon-bg--info { background-color: var(--lm-info); }
.locamais-stat-card__icon-bg--info .dashicons { color: white; }


.locamais-stat-card__content { flex-grow: 1 !important; text-align: left !important; }
.locamais-stat-card__label { font-size: 0.75rem !important; font-weight: 500 !important; color: var(--lm-text-muted) !important; text-transform: uppercase !important; margin-bottom: 0.25rem !important; display: block !important; }
.locamais-stat-card__value { font-size: 1.875rem !important; font-weight: 700 !important; color: var(--lm-dark) !important; line-height: 1.1 !important; margin-bottom: 0.375rem !important; display: flex !important; align-items: center !important; }
.locamais-stat-card__value .dashicons.spin { font-size: 1.5rem !important; margin-left: 0.5rem !important; }
.locamais-stat-card__subtext { font-size: 0.8125rem !important; color: var(--lm-text-muted) !important; }

/* Informações Detalhadas (ex: dados bancários em saque) */
.locamais-info-block {
    background-color: var(--lm-lighter);
    border: 1px solid var(--lm-border);
    padding: 1rem;
    border-radius: var(--lm-border-radius);
    margin-bottom: 1.5rem;
}
.locamais-info-block p {
    margin: 0.5em 0;
    font-size: 0.9em;
    color: var(--lm-text);
}
.locamais-info-block strong {
    color: var(--lm-dark);
}


/* Mensagens de estado (Loading, No Results, Error) - Reusáveis em contêineres */
.locamais-message {
    padding: 1.5rem 1.25rem !important; border-radius: var(--lm-border-radius) !important;
    text-align: center !important; margin: 0 !important;
    font-weight: 500 !important; font-size: 0.9375rem !important;
    display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
    width: 100% !important; height: 100% !important;
    color: var(--lm-text-muted) !important;
}
.locamais-message .dashicons { font-size: 2.5rem !important; margin-bottom: 0.75rem !important; }
.locamais-message--loading { border-color: transparent !important; background-color: transparent !important; color: var(--lm-primary) !important; }
.locamais-message--no-results { border-color: transparent !important; background-color: transparent !important; color: var(--lm-text-muted) !important; }
.locamais-message--error { border-color: var(--lm-error) !important; background-color: var(--lm-error-bg, #FEE2E2) !important; color: var(--lm-error) !important; padding: 1rem !important; min-height: auto !important; border-radius: var(--lm-border-radius) !important; }
.locamais-message--warning { border-color: var(--lm-warning) !important; background-color: #FFF3CD !important; color: #856404 !important; padding: 1rem !important; min-height: auto !important; border-radius: var(--lm-border-radius) !important; }


/* Notificações Toast (Global) - SEM !IMPORTANT */
#locamais-toast-container {
  position: fixed; top: 130px; right: 24px; z-index: 10000;
  display: flex; flex-direction: column-reverse; gap: 18px;
  max-width: 400px; width: calc(100% - 48px); pointer-events: none;
  font-family: var(--lm-font-sans);
}
.locamais-toast {
  display: flex; align-items: flex-start; gap: 16px; padding: 20px 24px;
  border-radius: 12px; color: #FFFFFF; font-size: 0.95rem; font-weight: 500;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 4px 6px -2px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  transform: translateX(calc(100% + 30px)); opacity: 0; pointer-events: all;
  transition: transform 0.5s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.4s ease-out, box-shadow 0.3s ease;
  position: relative; overflow: hidden;
}
.locamais-toast.locamais-toast-show { transform: translateX(0); opacity: 1; } /* Classe para exibir */
.locamais-toast:hover {
  box-shadow: 0 15px 35px -10px rgba(0, 0, 0, 0.2), 0 6px 10px -4px rgba(0, 0, 0, 0.15);
  transform: translateY(-2px) translateX(0);
}
.locamais-toast .locamais-toast-icon-wrapper {
  width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; margin-top: 0px; background-color: rgba(255, 255, 255, 0.15); box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.locamais-toast .locamais-toast-icon-wrapper .dashicons {
  font-size: 1.375rem;
  color: #FFFFFF;
}

.locamais-toast-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.locamais-toast-title {
  font-weight: 700;
  color: #FFFFFF;
  font-size: 1.05rem;
  line-height: 1.3;
  letter-spacing: 0.01em;
}

.locamais-toast-message {
  line-height: 1.45;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.9rem;
}
.locamais-toast-content > .locamais-toast-message:only-child {
    font-weight: 600;
    font-size: 1rem;
    color: #FFFFFF;
}

.locamais-toast-close-button {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
  color: rgba(255, 255, 255, 0.7);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.locamais-toast-close-button:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #FFFFFF;
  transform: scale(1.1);
}
.locamais-toast-close-button .dashicons {
  font-size: 20px;
  line-height: 1;
  display: block;
}

.locamais-toast-progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 5px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.3);
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  transform-origin: left;
}

/* CORES ÉPICAS PARA OS TOASTS (Fundos e Ícones) */

/* Sucesso */
.locamais-toast--success {
  background: linear-gradient(135deg, #057A55 0%, #10B981 100%);
}
.locamais-toast--success .locamais-toast-progress-bar {
  background-color: #A7F3D0;
}

/* Erro */
.locamais-toast--error {
  background: linear-gradient(135deg, #C53030 0%, #F56565 100%);
}
.locamais-toast--error .locamais-toast-progress-bar {
  background-color: #FED7D7;
}

/* Info */
.locamais-toast--info {
  background: linear-gradient(135deg, #2A4365 0%, #4299E1 100%);
}
.locamais-toast--info .locamais-toast-progress-bar {
  background-color: #BEE3F8;
}

/* Warning */
.locamais-toast--warning {
  background: linear-gradient(135deg, #B7791F 0%, #F6AD55 100%);
}
.locamais-toast--warning .locamais-toast-progress-bar {
  background-color: #FEEBC8;
}


/* Modal/Popup de Exportação (Global) */
.locamais-modal-overlay {
    position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important;
    backdrop-filter: blur(4px) !important; background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)) !important;
    display: flex !important; align-items: center !important; justify-content: center !important; z-index: 9998 !important;
    opacity: 0 !important; visibility: hidden !important; transition: all 0.4s ease !important;
}
.locamais-modal-overlay.is-active { opacity: 1 !important; visibility: visible !important; }
.locamais-modal {
    position: fixed !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) scale(0.95) !important;
    background: var(--lm-modal-bg) !important; /* Usar nova variável */
    border-radius: var(--lm-modal-border-radius) !important; /* Usar nova variável */
    box-shadow: var(--lm-modal-shadow) !important; /* Usar nova variável */
    width: 90% !important;
    max-width: 500px !important; /* MODAL MAIS COMPACTO */
    z-index: 9999 !important;
    opacity: 0 !important; visibility: hidden !important;
    padding: 1.5rem !important; /* PADDING REDUZIDO */
    display: flex !important; flex-direction: column !important;
    transition: all 0.5s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
.locamais-modal.is-active { opacity: 1 !important; visibility: visible !important; transform: translate(-50%, -50%) scale(1) !important; }
.locamais-modal__header {
    display: flex !important; justify-content: space-between !important; align-items: center !important; padding-bottom: 1rem !important; /* PADDING REDUZIDO */
    border-bottom: 1px solid var(--lm-border) !important; margin-bottom: 1.25rem !important; /* MARGIN REDUZIDA */
}
.locamais-modal__header h3 { margin: 0 !important; font-size: 1.5rem !important; font-weight: 700 !important; color: var(--lm-dark) !important; } /* TAMANHO DA FONTE REDUZIDO */
.locamais-modal__close-button {
    background: transparent !important; border: none !important; font-size: 1.2rem !important; /* TAMANHO DO ÍCONE REDUZIDO */
    color: var(--lm-text-muted) !important; cursor: pointer !important; display: flex !important;
    align-items: center !important; justify-content: center !important; border-radius: 50% !important;
    transition: transform 0.3s ease, background-color 0.3s !important;
    width: 32px !important; height: 32px !important; /* BOTÃO DE FECHAR MENOR */
}
.locamais-modal__close-button:hover { background-color: rgba(0, 0, 0, 0.08) !important; transform: rotate(90deg) scale(1.1) !important; color: var(--lm-dark) !important; } /* BACKGROUND HOVER MAIS FORTE */
.locamais-modal__body p { font-size: 0.95rem !important; text-align: center !important; color: var(--lm-text) !important; line-height: 1.5 !important; margin-bottom: 1.5rem !important; } /* TEXTO MAIS CURTO, MARGIN REDUZIDA */
.locamais-export-formats { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 1rem !important; } /* ESPAÇAMENTO REDUZIDO */
.locamais-export-card {
    background: var(--lm-export-card-bg) !important; /* Usar nova variável */
    border-radius: var(--lm-modal-border-radius) !important;
    border: var(--lm-export-card-border) !important;
    box-shadow: var(--lm-export-card-shadow) !important; /* Usar nova variável */
    padding: 1rem !important; /* PADDING REDUZIDO */
    max-width: 150px !important; /* LARGURA MÁXIMA DO CARD REDUZIDA */
    flex: 1 1 120px !important; /* FLEX PARA ADAPTAÇÃO MELHOR */
    text-align: center !important;
    transition: all 0.2s ease !important; /* TRANSIÇÃO MAIS RÁPIDA */
    cursor: pointer !important;
}
.locamais-export-card:hover, .locamais-export-card:focus-within { transform: translateY(-3px) scale(1.01) !important; border-color: var(--lm-primary) !important; box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1) !important; } /* SOMBRA E TRANSIÇÃO MAIS SUTIS */
.locamais-export-card__icon { width: 48px !important; height: 48px !important; margin-bottom: 0.75rem !important; transition: transform 0.2s ease !important; } /* ÍCONES MENORES E MARGIN MENOR */
.locamais-export-card:hover .locamais-export-card__icon { transform: scale(1.03) rotate(1deg) !important; } /* EFEITO MENOS AGRESSIVO */
.locamais-export-card__title { font-size: 1rem !important; font-weight: 600 !important; margin-bottom: 0.75rem !important; color: var(--lm-dark) !important; } /* TAMANHO DA FONTE E MARGIN REDUZIDOS */
.locamais-export-card .locamais-button { width: 100% !important; padding: 0.5rem 0.75rem !important; border-radius: 0.375rem !important; font-weight: 500 !important; } /* BOTÕES MAIS COMPACTOS */
.locamais-export-card .locamais-button--disabled { opacity: 0.6 !important; cursor: not-allowed !important; pointer-events: none !important; background-color: #f3f4f6 !important; color: #9ca3af !important; border-color: #e5e7eb !important; }
.locamais-export-card:has(.locamais-button--disabled):hover { transform: none !important; box-shadow: none !important; border-color: var(--lm-border) !important; cursor: default !important; }

/* Opções Avançadas de Modal (Toggles) */
.locamais-advanced-options {
    background-color: #f9fafb !important; border-radius: 0.75rem !important; padding: 1.25rem !important; border: 1px solid #e2e8f0 !important; margin-top: 1.5rem !important; /* PADDING E MARGIN REDUZIDOS */
}
.locamais-advanced-options__title {
    font-size: 0.95rem !important; font-weight: 700 !important; color: var(--lm-dark) !important; border-bottom: 1px dashed var(--lm-border) !important; padding-bottom: 0.4rem !important; margin-bottom: 1rem !important; /* TAMANHO, PADDING E MARGIN REDUZIDOS */
}
.locamais-option-item { display: flex !important; align-items: center !important; gap: 0.75rem !important; margin-bottom: 0.6rem !important; } /* ESPAÇAMENTO REDUZIDO */
.locamais-option-item label { font-size: 0.8rem !important; color: #374151 !important; cursor: pointer !important; flex: 1 !important; } /* TAMANHO DA FONTE REDUZIDO */
.locamais-option-item label[disabled] { opacity: 0.6 !important; cursor: not-allowed !important; }
.locamais-toggle-switch { width: 40px !important; height: 20px !important; position: relative !important; } /* TOGGLE MENOR */
.locamais-toggle-switch input { opacity: 0 !important; width: 0 !important; height: 0 !important; }
.locamais-toggle-slider {
    background-color: #e5e7eb !important; border-radius: 999px !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important; transition: all 0.3s ease !important;
}
.locamais-toggle-slider:before {
    content: "" !important; position: absolute !important; height: 16px !important; width: 16px !important; left: 2px !important; bottom: 2px !important; /* CÍRCULO DO TOGGLE MENOR */
    background-color: white !important; border-radius: 50% !important; transition: all 0.3s ease !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}
input:checked + .locamais-toggle-slider { background-color: #3b82f6 !important; }
input:checked + .locamais-toggle-slider:before { transform: translateX(20px) !important; } /* DISTÂNCIA DO TOGGLE */
input:disabled + .locamais-toggle-slider { opacity: 0.5 !important; cursor: not-allowed !important; }

/* Media Queries para Responsividade Geral */
@media screen and (max-width: 1024px) {
    .locamais-portal-page-header, .locamais-card-header, .locamais-card-filters { flex-direction: column !important; align-items: stretch !important; gap: 1rem !important; }
    .locamais-portal-header-actions, .locamais-card-actions { width: 100% !important; justify-content: flex-start !important; }
    .locamais-input--search-field { max-width: none !important; }
}
@media screen and (max-width: 768px) {
    .locamais-modal {
        max-width: 95% !important; /* Ocupa quase toda a largura em mobile */
        padding: 1rem !important;
    }
    .locamais-export-formats {
        grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)) !important; /* Mais flexível */
        gap: 0.75rem !important;
    }
    .locamais-export-card {
        padding: 0.75rem !important;
        flex: 1 1 100px !important;
    }
    .locamais-export-card__icon {
        width: 40px !important; height: 40px !important; /* Ícones ainda menores */
        margin-bottom: 0.5rem !important;
    }
    .locamais-export-card__title {
        font-size: 0.9rem !important;
    }
    .locamais-export-card .locamais-button {
        font-size: 0.8rem !important;
        padding: 0.4rem 0.6rem !important;
    }
}
/* --- Novos estilos para ícones de ordenação Font Awesome --- */
.locamais-sortable-header {
    cursor: pointer;
    white-space: nowrap; /* Evita que o texto quebre antes do ícone */
    /* Removido display: flex, align-items, justify-content, gap daqui */
}

/* Novo estilo para o wrapper interno do conteúdo do cabeçalho */
.locamais-sortable-header-content {
    display: flex; /* Aplica flexbox aqui */
    align-items: center; /* Alinha verticalmente */
    justify-content: flex-start; /* Alinha ao início */
    gap: 5px; /* Espaço entre texto e ícones */
    /* Garante que o conteúdo ocupe 100% da largura do TH */
    width: 100%; 
    height: 100%;
}

.locamais-sortable-header .locamais-sort-icons {
    display: inline-flex; /* Para manter os ícones juntos e alinhados */
    vertical-align: middle; /* Alinha os ícones verticalmente com o texto */
    width: 1em; /* Garante um espaço fixo para o ícone */
    justify-content: center;
    position: relative; /* Para posicionar ícones absolutos */
    height: 1em; /* Garante que o container tenha altura para os ícones */
    font-size: 0.9em; /* Ajusta o tamanho dos ícones um pouco menor que o texto */
}

.locamais-sortable-header .locamais-sort-icons .fa-solid {
    font-size: 1em; /* Tamanho padrão do ícone, relativo ao parent .locamais-sort-icons */
    line-height: 1;
    color: var(--lm-text-muted); /* Cor padrão dos ícones */
    transition: color 0.2s ease;
    position: absolute; /* Para sobrepor os ícones, ocupando o mesmo espaço */
    top: 0;
    left: 0;
}

/* Esconde todos os ícones por padrão */
.locamais-sortable-header .fa-sort-up,
.locamais-sortable-header .fa-sort-down,
.locamais-sortable-header .fa-sort {
    display: none;
}

/* Mostra o ícone de ordenação "neutro" por padrão em cabeçalhos ordenáveis */
.locamais-sortable-header:not(.sort-asc):not(.sort-desc) .fa-sort {
    display: inline-block;
}

/* Mostra o ícone ascendente quando a ordenação é ativa e crescente */
.locamais-sortable-header.sort-asc .fa-sort-up {
    display: inline-block;
    color: var(--lm-primary); /* Cor primária para indicar que está ativo */
}

/* Mostra o ícone descendente quando a ordenação é ativa e decrescente */
.locamais-sortable-header.sort-desc .fa-sort-down {
    display: inline-block;
    color: var(--lm-primary); /* Cor primária para indicar que está ativo */
}

/* Efeito ao passar o mouse para indicar interatividade */
.locamais-sortable-header:hover .locamais-sort-icons .fa-solid {
    color: var(--lm-dark);
}

/* --- Estilos para Badges de Status do Cliente --- */
.locamais-status-badge {
    display: inline-block;
    padding: 5px 12px;
    border-radius: 15px;
    font-weight: 500;
    font-size: 12px;
    text-align: center;
    min-width: 85px;
    white-space: nowrap;
    border: 1px solid transparent; /* Adicionado para consistência */
    line-height: 1.4;
    vertical-align: middle;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.locamais-status-badge.status-ativo {
    background-color: #d4edda; /* Light green */
    color: #155724; /* Dark green text */
    border-color: #c3e6cb;
}

.locamais-status-badge.status-inativo {
    background-color: #f8d7da; /* Light red */
    color: #721c24; /* Dark red text */
    border-color: #f5c6cb;
}

.locamais-status-badge.status-desconhecido { /* Para "Desconhecido" ou outros que não se encaixem */
    background-color: #e2e6ea; /* Light gray */
    color: #495057; /* Dark gray text */
    border-color: #dae0e5;
}

/* Fim dos estilos para Badges de Status do Cliente */
