/*
 * @description Folha de estilos global LEUK. Correções LC_F2_007: mantém o aspeto visual claro anterior e corrige a usabilidade do dropdown de notificações da topbar, adicionando uma zona invisível de transição para impedir o fecho prematuro ao mover o rato do botão para o painel.
 * @version LC_F2_007-7.4.4
 * @author Bsidenet.com
 * @date 2026-05-19
 */

/* Auditoria: fonte externa mantida por compatibilidade visual; em produção com CSP restrita, preferir self-hosting ou permitir explicitamente fonts.googleapis.com/fonts.gstatic.com. */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap');

/* ==========================================================================
   0. TOKENS GLOBAIS, SEMÂNTICA VISUAL E FALLBACKS DE PLATAFORMA
   ========================================================================== */

:root {
    --font-ui: 'Roboto', Arial, sans-serif;

    --leuk-radius-xs: 0.75rem;
    --leuk-radius-sm: 1rem;
    --leuk-radius-md: 1.25rem;
    --leuk-radius-lg: 1.75rem;
    --leuk-radius-xl: 2rem;

    --leuk-shadow-soft: 0 10px 24px rgba(var(--leuk-iron-rgb), 0.08);
    --leuk-shadow-card: 0 14px 34px rgba(var(--leuk-iron-rgb), 0.06);
    --leuk-shadow-panel: 0 20px 40px rgba(var(--leuk-iron-rgb), 0.12);

    --leuk-anim-fast: 160ms cubic-bezier(0.4, 0, 0.2, 1);
    --leuk-anim-smooth: 280ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Fallback padrão de cor (Assume Pacific/Portal se não houver tag) */
    --leuk-platform-color: var(--leuk-pacific);
    --leuk-platform-color-rgb: var(--leuk-pacific-rgb);
}

/* Definição Dinâmica por Plataforma (Baseado no Body) */
body[data-app-shell='reservada'],
body[data-app-shell='portal'] {
    --leuk-platform-color: var(--leuk-pacific);
    --leuk-platform-color-rgb: var(--leuk-pacific-rgb);
}

body[data-app-shell='crm'],
body[data-app-shell='comercial'] {
    --leuk-platform-color: var(--leuk-sales);
    --leuk-platform-color-rgb: var(--leuk-sales-rgb);
}

/* ==========================================================================
   1. RESET E TYPOGRAPHY
   ========================================================================== */

*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    font-family: var(--font-ui) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
    background-color: var(--leuk-alabaster);
    color: var(--leuk-iron);
    overflow-x: hidden;
}

::selection {
    background: rgba(var(--leuk-platform-color-rgb), 0.25);
    color: var(--leuk-platform-color);
}

/* ==========================================================================
   2. SCROLLBARS BONITAS (WEBKIT) - PARA CHROME, EDGE E OPERA
   ========================================================================== */

/* Barra Global / Principal */
::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}
::-webkit-scrollbar-track {
    background: transparent;
}
::-webkit-scrollbar-thumb {
    background-color: var(--leuk-platform-color);
    border-radius: 999px;
    border: 3px solid var(--leuk-alabaster); /* Cria margem "flutuante" */
    background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover {
    background-color: rgba(var(--leuk-platform-color-rgb), 0.85);
}

/* Scrollbars Internas de Componentes (Tabelas, Listas, etc) */
.custom-scrollbar::-webkit-scrollbar,
[data-scrollbar='neutral']::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
.custom-scrollbar::-webkit-scrollbar-track,
[data-scrollbar='neutral']::-webkit-scrollbar-track {
    background: transparent;
}
.custom-scrollbar::-webkit-scrollbar-thumb,
[data-scrollbar='neutral']::-webkit-scrollbar-thumb {
    background-color: rgba(148, 163, 184, 0.5); /* Cinza translúcido para não distrair do conteúdo */
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box; 
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover,
[data-scrollbar='neutral']::-webkit-scrollbar-thumb:hover {
    background-color: rgba(148, 163, 184, 0.85);
}

/* Exceção da Sidebar (Para manter contraste visual no menu escuro) */
#sidebar::-webkit-scrollbar,
#sidebar .custom-scrollbar::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
#sidebar::-webkit-scrollbar-track,
#sidebar .custom-scrollbar::-webkit-scrollbar-track {
    background: transparent !important;
}
#sidebar::-webkit-scrollbar-thumb,
#sidebar .custom-scrollbar::-webkit-scrollbar-thumb {
    background-color: rgba(255, 255, 255, 0.2) !important;
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box;
}
#sidebar::-webkit-scrollbar-thumb:hover,
#sidebar .custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background-color: rgba(255, 255, 255, 0.4) !important;
}

/* Esconder barra em zonas específicas */
.hide-scrollbar {
    -ms-overflow-style: none;
}
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

/* ==========================================================================
   2.1. O "HACK" DO FIREFOX (Isolado de Chromium/Opera)
   ========================================================================== */
/* Como o Chrome e o Opera agora leem a regra W3C, eles sobrepõem o ::-webkit se a virem. 
   Por isso, trancamos a norma W3C numa query exclusiva do Firefox! */
@-moz-document url-prefix() {
    html, body {
        scrollbar-width: thin;
        scrollbar-color: var(--leuk-platform-color) transparent;
    }
    .custom-scrollbar, [data-scrollbar='neutral'] {
        scrollbar-width: thin;
        scrollbar-color: rgba(148, 163, 184, 0.6) transparent;
    }
    #sidebar, #sidebar .custom-scrollbar {
        scrollbar-width: thin !important;
        scrollbar-color: rgba(255, 255, 255, 0.25) transparent !important;
    }
    .hide-scrollbar {
        scrollbar-width: none !important;
    }
}

/* ==========================================================================
   3. APP SHELL (UNIVERSAL) E SIDEBAR FIX
   ========================================================================== */

/* Universaliza o funcionamento da grid principal sem estar presa à "reservada" */
body[data-app-shell] {
    display: flex;
    min-height: 100vh;
}

body[data-app-shell] .flex-1 {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

body[data-app-shell] main {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 1.5rem !important;
    scrollbar-gutter: stable;
}

@media (min-width: 768px) { body[data-app-shell] main { padding: 2.5rem !important; } }
@media (min-width: 1024px) { body[data-app-shell] main { padding: 3rem !important; } }

body[data-app-shell] #sidebar {
    background: linear-gradient(180deg, var(--leuk-iron) 0%, #303336 100%) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.12);
    z-index: 40;
    transition: transform var(--leuk-anim-smooth);
    min-height: 0; /* Vital para o scroll interno não partir no Chrome/Opera */
}

body[data-app-shell] #sidebar a:hover,
body[data-app-shell] #sidebar button[data-toggle-submenu]:hover {
    background: rgba(255, 255, 255, 0.04) !important;
    color: #ffffff !important;
}

body[data-app-shell] #sidebar .bg-leuk-pacific,
body[data-app-shell] #sidebar .bg-leuk-sales {
    background: linear-gradient(135deg, var(--leuk-platform-color), rgba(var(--leuk-platform-color-rgb), 0.8)) !important;
    box-shadow: 0 4px 12px rgba(var(--leuk-platform-color-rgb), 0.25);
    border: 1px solid rgba(255, 255, 255, 0.15);
}

body[data-app-shell] #sidebar .pl-11 { padding-left: 3rem !important; }
body[data-app-shell] #sidebar .border-l-2.border-leuk-slate {
    border-left-color: rgba(255, 255, 255, 0.12) !important;
    margin-left: 1.1rem;
}

#sidebar > nav, #sidebar .custom-scrollbar {
    min-height: 0 !important;
    max-height: 100%;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

/* ==========================================================================
   4. TOPBAR E CABEÇALHOS GERAIS
   ========================================================================== */

body[data-app-shell] header.bg-white.h-20 {
    background: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(var(--leuk-pale-rgb), 0.4);
    box-shadow: 0 4px 20px rgba(var(--leuk-iron-rgb), 0.03);
}

body[data-app-shell] .topbar-icon-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    border-radius: 0.85rem !important;
    background: #ffffff !important;
    color: var(--leuk-slate) !important;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.5) !important;
    box-shadow: 0 4px 10px rgba(var(--leuk-iron-rgb), 0.04) !important;
    transition: all var(--leuk-anim-fast) !important;
}

body[data-app-shell] .topbar-icon-btn:hover {
    background: rgba(var(--leuk-alabaster-rgb), 0.6) !important;
    color: var(--leuk-platform-color) !important;
    border-color: rgba(var(--leuk-pale-rgb), 0.8) !important;
}

/* ==========================================================================
   5. DROPDOWNS (PERFIL E NOTIFICAÇÕES)
   ========================================================================== */

body[data-app-shell] .absolute.right-0.mt-1.bg-white {
    background: #ffffff !important;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.4) !important;
    box-shadow: var(--leuk-shadow-panel) !important;
    border-radius: 1.25rem !important;
    overflow: hidden;
}

body[data-app-shell] .absolute.right-0.mt-1.bg-white > div:first-child {
    background: rgba(var(--leuk-alabaster-rgb), 0.4) !important;
    border-bottom: 1px solid rgba(var(--leuk-pale-rgb), 0.3) !important;
    padding: 0.75rem 1rem !important;
}

/* ==========================================================================
   6. TIPOGRAFIA INTERNA E COMPONENTES
   ========================================================================== */

body[data-app-shell] h1.text-3xl { letter-spacing: -0.02em; }
body[data-app-shell] p.uppercase.tracking-widest { letter-spacing: 0.12em !important; opacity: 0.85; }

body[data-app-shell] .bg-white.rounded-3xl,
body[data-app-shell] .bg-white.rounded-2xl {
    box-shadow: var(--leuk-shadow-card) !important;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.35) !important;
    background: #ffffff !important;
}

body[data-app-shell] input[type='text'],
body[data-app-shell] input[type='email'],
body[data-app-shell] input[type='password'],
body[data-app-shell] input[type='date'],
body[data-app-shell] input[type='time'],
body[data-app-shell] input[type='number'],
body[data-app-shell] select,
body[data-app-shell] textarea {
    background: rgba(var(--leuk-alabaster-rgb), 0.3) !important;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.5) !important;
    border-radius: var(--leuk-radius-sm) !important;
    color: var(--leuk-iron) !important;
    padding: 0.65rem 1rem !important;
    transition: border-color var(--leuk-anim-fast), box-shadow var(--leuk-anim-fast), background var(--leuk-anim-fast);
}

body[data-app-shell] input:hover,
body[data-app-shell] select:hover,
body[data-app-shell] textarea:hover {
    border-color: rgba(var(--leuk-pale-rgb), 0.8) !important;
    background: rgba(var(--leuk-alabaster-rgb), 0.5) !important;
}

body[data-app-shell] input:focus,
body[data-app-shell] select:focus,
body[data-app-shell] textarea:focus {
    background: #ffffff !important;
    border-color: var(--leuk-platform-color) !important;
    box-shadow: 0 0 0 4px rgba(var(--leuk-platform-color-rgb), 0.1) !important;
    outline: none !important;
}

body[data-app-shell] input[readonly],
body[data-app-shell] textarea[readonly] {
    background: rgba(var(--leuk-alabaster-rgb), 0.6) !important;
    color: rgba(var(--leuk-slate-rgb), 0.8) !important;
    cursor: not-allowed;
    border-color: rgba(var(--leuk-pale-rgb), 0.3) !important;
}

/* ==========================================================================
   7. TABELAS, MODAIS E EXTRAS
   ========================================================================== */

body[data-app-shell] table { width: 100%; border-collapse: separate; border-spacing: 0; }
body[data-app-shell] thead th {
    background: rgba(var(--leuk-alabaster-rgb), 0.5) !important;
    color: var(--leuk-slate) !important;
    font-size: 0.65rem !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 1rem 1.25rem !important;
    border-bottom: 1px solid rgba(var(--leuk-pale-rgb), 0.4) !important;
    font-weight: 700;
}
body[data-app-shell] tbody td { padding: 1rem 1.25rem !important; border-bottom: 1px solid rgba(var(--leuk-alabaster-rgb), 0.8) !important; vertical-align: middle; }
body[data-app-shell] tbody tr:last-child td { border-bottom: none !important; }
body[data-app-shell] tbody tr:hover td { background: rgba(var(--leuk-alabaster-rgb), 0.25) !important; }

body[data-app-shell] .bg-black\/50.backdrop-blur-sm,
body[data-app-shell] .bg-black\/40 {
    background: rgba(var(--leuk-iron-rgb), 0.45) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
body[data-app-shell] .modal-content,
body[data-app-shell] [id^='modal'] .bg-white {
    box-shadow: 0 25px 50px -12px rgba(var(--leuk-iron-rgb), 0.25) !important;
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
}

body[data-app-shell] .leuk-toggle-input {
    appearance: none; -webkit-appearance: none; width: 2.5rem; height: 1.35rem;
    background: rgba(var(--leuk-pale-rgb), 0.6); border-radius: 999px; position: relative;
    cursor: pointer; outline: none; transition: background var(--leuk-anim-fast);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.05);
}
body[data-app-shell] .leuk-toggle-input::after {
    content: ''; position: absolute; top: 0.15rem; left: 0.15rem; width: 1.05rem; height: 1.05rem;
    background: #ffffff; border-radius: 50%; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15); transition: transform var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-toggle-input:checked { background: var(--leuk-platform-color); }
body[data-app-shell] .leuk-toggle-input:checked::after { transform: translateX(1.15rem); }

body[data-app-shell] .leuk-badge {
    display: inline-flex; align-items: center; padding: 0.2rem 0.6rem; border-radius: 0.4rem;
    font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; border: 1px solid transparent;
}
body[data-app-shell] .leuk-badge-success { background: rgba(16, 185, 129, 0.1) !important; color: #059669 !important; border-color: rgba(16, 185, 129, 0.2) !important; }
body[data-app-shell] .leuk-badge-danger { background: rgba(239, 68, 68, 0.1) !important; color: #dc2626 !important; border-color: rgba(239, 68, 68, 0.2) !important; }
body[data-app-shell] .leuk-badge-warning { background: rgba(245, 158, 11, 0.1) !important; color: #d97706 !important; border-color: rgba(245, 158, 11, 0.2) !important; }
body[data-app-shell] .leuk-badge-info { background: rgba(14, 165, 233, 0.1) !important; color: #0284c7 !important; border-color: rgba(14, 165, 233, 0.2) !important; }

@keyframes fade-in-up { 0% { opacity: 0; transform: translateY(10px); } 100% { opacity: 1; transform: translateY(0); } }
body[data-app-shell] .animate-fade-in { animation: fade-in-up 0.4s ease forwards; }

body[data-app-shell] .text-leuk-pacific, body[data-app-shell] .text-leuk-sales, body[data-app-shell] .text-leuk-production { color: var(--leuk-platform-color) !important; }
body[data-app-shell] .bg-leuk-pacific, body[data-app-shell] .bg-leuk-sales, body[data-app-shell] .bg-leuk-production { background-color: var(--leuk-platform-color) !important; }
body[data-app-shell] .border-leuk-pacific, body[data-app-shell] .border-leuk-sales, body[data-app-shell] .border-leuk-production { border-color: var(--leuk-platform-color) !important; }
body[data-app-shell] .text-leuk-slate { color: var(--leuk-slate) !important; }
body[data-app-shell] .text-leuk-iron { color: var(--leuk-iron) !important; }
body[data-app-shell] .bg-leuk-alabaster { background-color: var(--leuk-alabaster) !important; }
body[data-app-shell] i[class^='ph-'] { user-select: none; -webkit-user-select: none; }

/* Dashboard: cartões mais equilibrados e ícones sem ficar opacos no hover */
body[data-app-shell] .leuk-dashboard-hero-actions {
    align-items: stretch;
}
body[data-app-shell] .leuk-dashboard-action {
    min-height: 9.25rem;
}
body[data-app-shell] .leuk-dashboard-action-icon,
body[data-app-shell] .leuk-dashboard-summary-icon {
    opacity: 1 !important;
    color: var(--leuk-platform-color) !important;
    background: rgba(var(--leuk-platform-color-rgb), 0.10) !important;
    border-color: rgba(var(--leuk-platform-color-rgb), 0.18) !important;
    transition: background var(--leuk-anim-fast), color var(--leuk-anim-fast), transform var(--leuk-anim-fast), box-shadow var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-dashboard-action:hover .leuk-dashboard-action-icon,
body[data-app-shell] .leuk-dashboard-summary-card:hover .leuk-dashboard-summary-icon {
    opacity: 1 !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, var(--leuk-platform-color), rgba(var(--leuk-platform-color-rgb), 0.72)) !important;
    transform: translateY(-1px) scale(1.02);
    box-shadow: 0 12px 24px rgba(var(--leuk-platform-color-rgb), 0.22);
}
body[data-app-shell] .leuk-dashboard-summary-card {
    min-height: 7rem;
    align-items: stretch;
}
body[data-app-shell] .leuk-card-header-emphasis {
    background: linear-gradient(135deg, rgba(var(--leuk-platform-color-rgb), 0.08), rgba(var(--leuk-alabaster-rgb), 0.72));
    border-bottom-color: rgba(var(--leuk-platform-color-rgb), 0.12) !important;
}
body[data-app-shell] .leuk-card-header-emphasis h3 {
    letter-spacing: -0.02em;
}

/* Configurações: o índice lateral pode rolar sem cortar os últimos itens. */
body[data-app-shell] .configuracoes-menu-sticky {
    padding-bottom: 0.75rem;
    overscroll-behavior: contain;
}
body[data-app-shell] .configuracoes-menu-list {
    max-height: inherit;
    overflow-y: auto;
    padding-bottom: 1rem;
}

/* ========================================================================== 
   8. AVATARES, CONFIRMAÇÕES EM MODAL E SELETOR DE CORES LEUK
   ========================================================================== */

body[data-app-shell] .leuk-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at 20% 10%, rgba(255,255,255,0.38), transparent 28%),
        linear-gradient(135deg, var(--leuk-platform-color) 0%, rgba(var(--leuk-platform-color-rgb), 0.72) 48%, var(--leuk-iron) 100%);
    box-shadow: 0 12px 28px rgba(var(--leuk-platform-color-rgb), 0.25);
    border: 1px solid rgba(255,255,255,0.42);
    font-weight: 900;
    letter-spacing: 0.06em;
}
body[data-app-shell] .leuk-avatar > span { transform: translateY(0.01em); }

body[data-app-shell] .leuk-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(var(--leuk-iron-rgb), 0.52);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
body[data-app-shell] .leuk-modal-backdrop.is-open { display: flex; }
body[data-app-shell] .leuk-modal-card {
    width: min(100%, 30rem);
    border-radius: 2rem;
    background: #ffffff;
    border: 1px solid rgba(255,255,255,0.82);
    box-shadow: 0 28px 70px rgba(var(--leuk-iron-rgb), 0.28);
    padding: 1.5rem;
    animation: leuk-modal-in 180ms ease-out;
}
body[data-app-shell] .leuk-modal-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--leuk-platform-color);
    background: rgba(var(--leuk-platform-color-rgb), 0.10);
    border: 1px solid rgba(var(--leuk-platform-color-rgb), 0.18);
    margin-bottom: 1rem;
}
body[data-app-shell] .leuk-modal-title {
    font-size: 1.35rem;
    line-height: 1.2;
    font-weight: 900;
    color: var(--leuk-iron);
    letter-spacing: -0.025em;
}
body[data-app-shell] .leuk-modal-message {
    margin-top: 0.55rem;
    color: var(--leuk-slate);
    font-size: 0.925rem;
    line-height: 1.55;
}
body[data-app-shell] .leuk-modal-actions {
    margin-top: 1.35rem;
    display: flex;
    flex-direction: column-reverse;
    gap: 0.75rem;
}
@media (min-width: 640px) {
    body[data-app-shell] .leuk-modal-actions { flex-direction: row; justify-content: flex-end; }
}
body[data-app-shell] .leuk-modal-btn {
    min-height: 2.75rem;
    border-radius: 0.9rem;
    padding: 0.7rem 1.05rem;
    font-size: 0.82rem;
    font-weight: 900;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.55);
    transition: transform var(--leuk-anim-fast), background var(--leuk-anim-fast), color var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-modal-btn:hover { transform: translateY(-1px); }
body[data-app-shell] .leuk-modal-btn-secondary { background: #ffffff; color: var(--leuk-slate); }
body[data-app-shell] .leuk-modal-btn-primary {
    background: linear-gradient(135deg, var(--leuk-platform-color), rgba(var(--leuk-platform-color-rgb), 0.82));
    color: #ffffff;
    border-color: rgba(var(--leuk-platform-color-rgb), 0.18);
    box-shadow: 0 10px 20px rgba(var(--leuk-platform-color-rgb), 0.2);
}
body[data-app-shell] .leuk-modal-btn-danger {
    background: #dc2626;
    color: #ffffff;
    border-color: rgba(220, 38, 38, 0.2);
    box-shadow: 0 10px 20px rgba(220, 38, 38, 0.18);
}
@keyframes leuk-modal-in {
    from { opacity: 0; transform: translateY(10px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

body[data-app-shell] .leuk-color-picker {
    position: relative;
    overflow: visible !important;
}
body[data-app-shell] .leuk-color-picker.is-open {
    z-index: 9999;
}
body[data-app-shell] .leuk-color-picker__button {
    width: 100%;
    min-height: 3rem;
    border-radius: 1rem;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.55);
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    color: var(--leuk-iron);
    font-weight: 800;
    cursor: pointer;
    transition: border-color var(--leuk-anim-fast), box-shadow var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-color-picker__button:hover,
body[data-app-shell] .leuk-color-picker.is-open .leuk-color-picker__button {
    border-color: rgba(var(--leuk-platform-color-rgb), 0.45);
    box-shadow: 0 0 0 4px rgba(var(--leuk-platform-color-rgb), 0.08);
}
body[data-app-shell] .leuk-color-picker__swatch {
    width: 2rem;
    height: 2rem;
    border-radius: 0.75rem;
    border: 1px solid rgba(255,255,255,0.75);
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.08), 0 4px 10px rgba(0,0,0,0.08);
    flex-shrink: 0;
}
body[data-app-shell] .leuk-color-picker__panel {
    position: fixed;
    left: 1rem;
    top: 1rem;
    z-index: 99990;
    display: none;
    width: min(22rem, calc(100vw - 2rem));
    max-width: calc(100vw - 2rem);
    overflow-y: auto;
    border-radius: 1.35rem;
    background: #ffffff;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.55);
    box-shadow: 0 22px 48px rgba(var(--leuk-iron-rgb), 0.18);
    padding: 0.9rem;
}
body[data-app-shell] .leuk-color-picker.is-open .leuk-color-picker__panel { display: block; }
body[data-app-shell] .leuk-color-picker__grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.45rem;
}
body[data-app-shell] .leuk-color-picker__option {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 0.8rem;
    border: 2px solid transparent;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.55), 0 6px 12px rgba(0,0,0,0.08);
    cursor: pointer;
}
body[data-app-shell] .leuk-color-picker__option.is-selected {
    border-color: var(--leuk-iron);
    outline: 2px solid rgba(var(--leuk-platform-color-rgb), 0.22);
}
body[data-app-shell] .leuk-color-picker__other {
    margin-top: 0.75rem;
    border-top: 1px solid rgba(var(--leuk-pale-rgb), 0.35);
    padding-top: 0.75rem;
}
body[data-app-shell] .leuk-color-picker__hex {
    width: 100%;
    margin-top: 0.5rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-weight: 800;
    text-transform: uppercase;
}
body[data-app-shell] .leuk-color-picker__sliders {
    margin-top: 0.65rem;
    display: grid;
    gap: 0.4rem;
}
body[data-app-shell] .leuk-color-picker__slider-row {
    display: grid;
    grid-template-columns: 1rem 1fr 2.6rem;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.72rem;
    font-weight: 900;
    color: var(--leuk-slate);
}
body[data-app-shell] .leuk-color-picker__slider-row input[type='range'] {
    width: 100%;
    accent-color: var(--leuk-platform-color);
}

/* ========================================================================== 
   9. FILTROS DINÂMICOS E BOTÕES RESPONSIVOS
   ========================================================================== */
body[data-app-shell] .leuk-filter-btn,
body[data-app-shell] .leuk-filter-clear-btn {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    min-height: 2.9rem;
    border-radius: 0.95rem;
    padding: 0.72rem 1rem;
    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    min-width: max-content;
    flex-direction: row !important;
    text-align: center;
    transition: transform var(--leuk-anim-fast), background var(--leuk-anim-fast), color var(--leuk-anim-fast), border-color var(--leuk-anim-fast), box-shadow var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-filter-btn:hover,
body[data-app-shell] .leuk-filter-clear-btn:hover {
    transform: translateY(-1px);
}
body[data-app-shell] .leuk-filter-btn {
    color: #ffffff !important;
    background: linear-gradient(135deg, var(--leuk-iron), rgba(var(--leuk-platform-color-rgb), 0.85)) !important;
    border: 1px solid rgba(var(--leuk-platform-color-rgb), 0.18) !important;
    box-shadow: 0 10px 20px rgba(var(--leuk-iron-rgb), 0.10);
}
body[data-app-shell] .leuk-filter-clear-btn {
    color: var(--leuk-slate) !important;
    background: #ffffff !important;
    border: 1px solid rgba(var(--leuk-pale-rgb), 0.55) !important;
}
body[data-app-shell] .leuk-filter-btn i,
body[data-app-shell] .leuk-filter-clear-btn i {
    font-size: 1.05rem;
    line-height: 1;
    flex-shrink: 0;
    display: inline-flex !important;
}
body[data-app-shell] .leuk-filter-btn .leuk-filter-text,
body[data-app-shell] .leuk-filter-clear-btn .leuk-filter-text {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}
body[data-app-shell] .leuk-filter-loading {
    position: relative;
    opacity: 0.62;
    pointer-events: none;
    transition: opacity var(--leuk-anim-fast);
}
body[data-app-shell] .leuk-filter-loading::after {
    content: '';
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 999px;
    border: 2px solid rgba(var(--leuk-platform-color-rgb), 0.22);
    border-top-color: var(--leuk-platform-color);
    animation: leuk-spin 720ms linear infinite;
    z-index: 3;
}
body[data-app-shell] .leuk-filter-form-loading input,
body[data-app-shell] .leuk-filter-form-loading select {
    border-color: rgba(var(--leuk-platform-color-rgb), 0.32) !important;
}
@keyframes leuk-spin { to { transform: rotate(360deg); } }
@media (max-width: 639px) {
    body[data-app-shell] .leuk-filter-btn,
    body[data-app-shell] .leuk-filter-clear-btn {
        min-width: 2.9rem;
        padding-left: 0.85rem;
        padding-right: 0.85rem;
    }
    body[data-app-shell] .leuk-filter-btn .leuk-filter-text,
    body[data-app-shell] .leuk-filter-clear-btn .leuk-filter-text {
        display: none !important;
    }
}

/* Passo 63: dashboard, cabeçalhos de cartões e filtros mais consistentes */
body[data-app-shell] .leuk-dashboard-hero-actions {
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    align-items: stretch;
}
body[data-app-shell] .leuk-dashboard-action {
    min-height: 5.25rem !important;
}
body[data-app-shell] .leuk-dashboard-action-icon {
    margin-bottom: 0 !important;
}
body[data-app-shell] article.bg-white > .border-b:first-child,
body[data-app-shell] section.bg-white > .border-b:first-child {
    background: linear-gradient(135deg, rgba(var(--leuk-platform-color-rgb), 0.075), rgba(255, 255, 255, 0.94)) !important;
    border-bottom-color: rgba(var(--leuk-platform-color-rgb), 0.13) !important;
}
body[data-app-shell] article.bg-white > .border-b:first-child h1,
body[data-app-shell] article.bg-white > .border-b:first-child h2,
body[data-app-shell] article.bg-white > .border-b:first-child h3,
body[data-app-shell] section.bg-white > .border-b:first-child h1,
body[data-app-shell] section.bg-white > .border-b:first-child h2,
body[data-app-shell] section.bg-white > .border-b:first-child h3 {
    color: var(--leuk-iron) !important;
}
body[data-app-shell] .leuk-filter-btn,
body[data-app-shell] .leuk-filter-clear-btn {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.55rem !important;
    vertical-align: middle !important;
}
body[data-app-shell] .leuk-filter-btn > i,
body[data-app-shell] .leuk-filter-clear-btn > i,
body[data-app-shell] .leuk-filter-btn > span,
body[data-app-shell] .leuk-filter-clear-btn > span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}
body[data-app-shell] .leuk-message-create select,
body[data-app-shell] .leuk-message-create select option {
    font-weight: 400 !important;
}
body[data-app-shell] [data-feriado-item].is-editing {
    border-left: 4px solid var(--leuk-platform-color);
    background: rgba(var(--leuk-platform-color-rgb), 0.045);
}

/* Passo 64: mais densidade, dashboard equilibrado e filtros com ícone sempre lateral */
body[data-app-shell] main {
    padding: 0 !important;
}
body[data-app-shell] main > .flex-1 > .w-full {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
    padding-top: 0.75rem !important;
}
@media (min-width: 640px) {
    body[data-app-shell] main > .flex-1 > .w-full {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
        padding-top: 1rem !important;
    }
}
@media (min-width: 1024px) {
    body[data-app-shell] main > .flex-1 > .w-full {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
        padding-top: 1.15rem !important;
    }
}
@media (min-width: 1280px) {
    body[data-app-shell] .leuk-dashboard-hero-actions {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}
body[data-app-shell] .leuk-dashboard-action {
    min-width: 0;
    min-height: 4.85rem !important;
    padding: 0.85rem !important;
}
body[data-app-shell] .leuk-dashboard-action h3 {
    font-size: 0.82rem !important;
}
body[data-app-shell] .leuk-dashboard-action p {
    font-size: 0.72rem !important;
}
body[data-app-shell] .leuk-dashboard-action-icon {
    width: 2.25rem !important;
    height: 2.25rem !important;
    border-radius: 0.85rem !important;
}
body[data-app-shell] .leuk-filter-btn,
body[data-app-shell] .leuk-filter-clear-btn {
    display: inline-flex !important;
    flex-direction: row !important;
    grid-auto-flow: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    line-height: 1 !important;
}
body[data-app-shell] .leuk-filter-btn i,
body[data-app-shell] .leuk-filter-clear-btn i {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
}
body[data-app-shell] .leuk-filter-btn span,
body[data-app-shell] .leuk-filter-clear-btn span {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
}
@media (max-width: 639px) {
    body[data-app-shell] .leuk-filter-btn span,
    body[data-app-shell] .leuk-filter-clear-btn span {
        display: none !important;
    }
}

/* Passo 65: espaçamento médio e consistente + linhas de ausência clicáveis */
body[data-app-shell] main > .flex-1 > .w-full {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    padding-top: 1rem !important;
    padding-bottom: 1.25rem !important;
}
@media (min-width: 640px) {
    body[data-app-shell] main > .flex-1 > .w-full {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
        padding-top: 1.25rem !important;
        padding-bottom: 1.5rem !important;
    }
}
@media (min-width: 1024px) {
    body[data-app-shell] main > .flex-1 > .w-full {
        padding-left: 1.85rem !important;
        padding-right: 1.85rem !important;
        padding-top: 1.65rem !important;
        padding-bottom: 2rem !important;
    }
}
@media (min-width: 1440px) {
    body[data-app-shell] main > .flex-1 > .w-full {
        padding-left: 2.1rem !important;
        padding-right: 2.1rem !important;
        padding-top: 1.75rem !important;
    }
}
body[data-app-shell] main > .flex-1 > .w-full > section.mb-7,
body[data-app-shell] main > .flex-1 > .w-full > header.mb-7 {
    margin-bottom: 1.5rem !important;
}
body[data-app-shell] main > .flex-1 > .w-full > section.grid,
body[data-app-shell] main > .flex-1 > .w-full > div.grid {
    gap: 1.25rem !important;
}
@media (min-width: 1024px) {
    body[data-app-shell] main > .flex-1 > .w-full > section.grid,
    body[data-app-shell] main > .flex-1 > .w-full > div.grid {
        gap: 1.5rem !important;
    }
}
body[data-app-shell] article.bg-white > .border-b:first-child,
body[data-app-shell] section.bg-white > .border-b:first-child,
body[data-app-shell] aside.bg-white > .border-b:first-child {
    padding-top: 1.1rem !important;
    padding-bottom: 1.1rem !important;
}
body[data-app-shell] [data-ausencia-row] {
    outline: none;
}
body[data-app-shell] [data-ausencia-row]:hover td {
    background: rgba(var(--leuk-platform-color-rgb), 0.035) !important;
}
body[data-app-shell] [data-ausencia-row]:focus-visible td {
    background: rgba(var(--leuk-platform-color-rgb), 0.06) !important;
    box-shadow: inset 0 0 0 2px rgba(var(--leuk-platform-color-rgb), 0.22);
}

/* Passo 75.5 — tipografia transversal da sessão na topbar */
body[data-app-shell] .leuk-topbar-session-label {
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    color: var(--leuk-slate) !important;
}
body[data-app-shell] .leuk-topbar-session-name {
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    color: var(--leuk-iron) !important;
}

/* Passo 75.8 — rodapé e filtros transversais */
body[data-app-shell] .leuk-app-footer-page {
    flex-shrink: 0;
}
body[data-app-shell] [data-leuk-filter-form] label > span {
    font-weight: 500 !important;
    letter-spacing: .08em;
}
body[data-app-shell] [data-leuk-filter-form] input,
body[data-app-shell] [data-leuk-filter-form] select,
body[data-app-shell] [data-leuk-filter-form] textarea {
    min-height: 2.75rem;
    border-color: rgba(148, 163, 184, .38) !important;
    font-weight: 400 !important;
}
body[data-app-shell] [data-leuk-filter-form] .leuk-filter-btn,
body[data-app-shell] [data-leuk-filter-form] .leuk-filter-clear-btn {
    min-height: 2.75rem;
    font-weight: 500 !important;
}
body[data-app-shell] .leuk-audit-module-pill {
    background: rgba(var(--leuk-audit-module-rgb, 25, 133, 161), .10);
    border-color: rgba(var(--leuk-audit-module-rgb, 25, 133, 161), .22);
    color: var(--leuk-audit-module-color, var(--leuk-pacific));
}

/* Passo 75.9 — rodapé de página no estilo da topbar, sem comportamento sticky */
body[data-app-shell] .leuk-app-footer-page {
    margin-top: auto;
}
body[data-app-shell] .leuk-app-footer-page-card {
    min-height: 4.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid rgba(214, 226, 234, .72);
    border-radius: 1.65rem;
    background: rgba(255, 255, 255, .86);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 45px rgba(15, 23, 42, .055);
    padding: .9rem 1.1rem;
}
body[data-app-shell] .leuk-app-footer-title,
body[data-app-shell] .leuk-app-footer-meta {
    font-size: .64rem;
    font-weight: 500;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: .17em;
    color: rgba(51, 65, 85, .74);
}
body[data-app-shell] .leuk-app-footer-title {
    color: rgba(32, 48, 69, .82);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
body[data-app-shell] .leuk-app-footer-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .22rem .48rem;
    text-align: right;
}
@media (max-width: 768px) {
    body[data-app-shell] .leuk-app-footer-page-card {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 1.25rem;
    }
    body[data-app-shell] .leuk-app-footer-meta {
        justify-content: flex-start;
        text-align: left;
    }
}

/* Passo 77.0 — footer da área principal como barra rectangular ao estilo da topbar */
body[data-app-shell] .leuk-app-footer-page {
    margin-top: auto !important;
    padding: 0 !important;
    width: 100% !important;
    flex-shrink: 0;
}
body[data-app-shell] .leuk-app-footer-page-bar,
body[data-app-shell] .leuk-app-footer-page-card {
    min-height: 4rem !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    border-top: 1px solid rgba(214, 226, 234, .82) !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .95) !important;
    backdrop-filter: blur(18px);
    box-shadow: none !important;
    padding: 0 1.5rem !important;
}
body[data-app-shell] .leuk-app-footer-title,
body[data-app-shell] .leuk-app-footer-meta {
    font-size: .64rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    letter-spacing: .17em !important;
}
body[data-app-shell] .leuk-app-footer-title {
    color: rgba(32, 48, 69, .82) !important;
}
body[data-app-shell] .leuk-app-footer-meta {
    color: rgba(51, 65, 85, .68) !important;
}
@media (max-width: 768px) {
    body[data-app-shell] .leuk-app-footer-page-bar,
    body[data-app-shell] .leuk-app-footer-page-card {
        min-height: 4.5rem !important;
        align-items: flex-start !important;
        flex-direction: column !important;
        justify-content: center !important;
        padding: .85rem 1rem !important;
    }
    body[data-app-shell] .leuk-app-footer-meta {
        justify-content: flex-start !important;
        text-align: left !important;
    }
}

/* Passo 77.1 — footer rectangular sem respiros exteriores, centrado como barra da topbar */
body[data-app-shell] main {
    padding-bottom: 0 !important;
}
body[data-app-shell] .leuk-app-footer-page {
    display: block !important;
    width: 100% !important;
    margin: auto 0 0 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    flex-shrink: 0 !important;
}
body[data-app-shell] .leuk-app-footer-page-bar {
    min-height: 4rem !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-top: 1px solid rgba(214, 226, 234, .82) !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
    box-shadow: 0 -10px 28px rgba(15, 23, 42, .035) !important;
    padding: 0 1.5rem !important;
}
body[data-app-shell] .leuk-app-footer-title {
    display: none !important;
}
body[data-app-shell] .leuk-app-footer-meta,
body[data-app-shell] .leuk-app-footer-meta-centered {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: .24rem .55rem !important;
    text-align: center !important;
    color: rgba(51, 65, 85, .70) !important;
    font-size: .64rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    letter-spacing: .17em !important;
}
body[data-app-shell='crm'] .crm-content,
body[data-app-shell='portal'] main > .flex-1.flex.flex-col {
    padding-bottom: 0 !important;
}
@media (max-width: 768px) {
    body[data-app-shell] .leuk-app-footer-page-bar {
        min-height: 4.75rem !important;
        padding: .85rem 1rem !important;
    }
}
body[data-app-shell] { margin: 0 !important; }
body[data-app-shell] .leuk-app-footer-page,
body[data-app-shell] .leuk-app-footer-page-bar {
    box-sizing: border-box !important;
    max-width: none !important;
}

/* Passo 78.0 — footer flush e configurações sem sombras cruzadas */
body[data-app-shell] main {
    min-height: 100dvh !important;
}
body[data-app-shell='portal'] main > .flex-1.flex.flex-col,
body[data-app-shell='crm'] .crm-content {
    min-height: calc(100dvh - 5rem) !important;
    overflow-x: clip;
}
body[data-app-shell] .leuk-app-footer-page {
    --leuk-footer-bleed-x: 1.25rem;
    --leuk-footer-bleed-bottom: 1.5rem;
    display: block !important;
    flex: 0 0 auto !important;
    align-self: stretch !important;
    max-width: none !important;
    width: calc(100% + (var(--leuk-footer-bleed-x) * 2)) !important;
    margin: auto calc(-1 * var(--leuk-footer-bleed-x)) calc(-1 * var(--leuk-footer-bleed-bottom)) calc(-1 * var(--leuk-footer-bleed-x)) !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}
body[data-app-shell] .leuk-app-footer-page-bar {
    min-height: 4rem !important;
    width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border-top: 1px solid rgba(214, 226, 234, .86) !important;
    background: rgba(255, 255, 255, .97) !important;
    box-shadow: none !important;
}
body[data-app-shell] .leuk-app-footer-meta,
body[data-app-shell] .leuk-app-footer-meta-centered {
    font-weight: 500 !important;
    color: rgba(51, 65, 85, .68) !important;
}
@media (max-width: 1023px) {
    body[data-app-shell] .leuk-app-footer-page {
        --leuk-footer-bleed-x: 1rem;
        --leuk-footer-bleed-bottom: 1.25rem;
    }
}
@media (max-width: 639px) {
    body[data-app-shell] .leuk-app-footer-page {
        --leuk-footer-bleed-x: .75rem;
        --leuk-footer-bleed-bottom: 1rem;
    }
}
body[data-app-shell='portal'] .configuracoes-page-grid {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
}
body[data-app-shell='portal'] .configuracoes-page-grid > nav,
body[data-app-shell='portal'] .configuracoes-page-grid > form,
body[data-app-shell='portal'] .configuracoes-page-grid > article,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-panel] > form,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-panel] > article,
body[data-app-shell='portal'] .configuracoes-page-grid .leuk-config-panel {
    box-shadow: 0 10px 24px rgba(15, 23, 42, .035) !important;
    border-color: rgba(226, 232, 240, .92) !important;
}
body[data-app-shell='portal'] .configuracoes-page-grid .divide-y > *,
body[data-app-shell='portal'] .configuracoes-page-grid [class*="border-b"] {
    box-shadow: none !important;
}
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-panel] {
    gap: 1rem !important;
}

body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button] {
    background: #f8fafc !important; /* LC_F2_005: fallback local para a aba inativa; evita depender de classes Tailwind personalizadas quando a CDN não gera a paleta. */
    color: #475569 !important; /* LC_F2_005: texto escuro legível sobre fundo claro. */
    border: 1px solid #e2e8f0 !important; /* LC_F2_005: borda explícita mantém a navegação consistente após alternar abas. */
    box-shadow: none !important; /* LC_F2_005: remove sombras herdadas que podiam sugerir estado ativo indevidamente. */
}
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button]:hover {
    background: #ffffff !important; /* LC_F2_005: hover claro igual ao estilo anterior da plataforma, sem escurecer o tema global. */
    color: var(--leuk-pacific, #1985a1) !important; /* LC_F2_005: reforço visual no hover mantendo contraste AA em fundo branco. */
}
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][data-leuk-config-tab-state="active"],
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][aria-selected="true"] {
    background: var(--leuk-pacific, #1985a1) !important; /* LC_F2_005: corrige definitivamente a aba ativa que ficava branca com texto branco. */
    color: #ffffff !important; /* LC_F2_005: texto branco apenas quando o fundo ativo é escuro. */
    border-color: rgba(25, 133, 161, .38) !important; /* LC_F2_005: borda coerente com o botão ativo sem afetar outras páginas. */
    box-shadow: 0 12px 28px rgba(25, 133, 161, .18) !important; /* LC_F2_005: realça a seleção sem alterar o fundo geral da plataforma. */
}
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][data-leuk-config-tab-state="active"] span,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][aria-selected="true"] span,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][data-leuk-config-tab-state="active"] i,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][aria-selected="true"] i {
    color: inherit !important; /* LC_F2_005: impede spans/ícones internos de herdarem regras globais de texto claro sobre fundo claro. */
}
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][data-leuk-config-tab-state="active"] > span:first-child,
body[data-app-shell='portal'] .configuracoes-page-grid [data-leuk-config-tab-button][aria-selected="true"] > span:first-child {
    background: rgba(255, 255, 255, .16) !important; /* LC_F2_005: mantém o ícone visível na aba ativa sem criar bloco branco dominante. */
    border-color: rgba(255, 255, 255, .25) !important; /* LC_F2_005: borda clara só dentro da aba ativa. */
}

/* 78.1 — tipografia transversal mais leve, alinhada com o Portal */
body.leuk-ui input,
body.leuk-ui select,
body.leuk-ui textarea,
body.leuk-ui option,
body.leuk-ui button {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
body.leuk-ui input,
body.leuk-ui select,
body.leuk-ui textarea,
body.leuk-ui option {
    font-weight: 400 !important;
    letter-spacing: normal !important;
}
body.leuk-ui select,
body.leuk-ui option {
    font-size: .875rem;
}
body.leuk-ui label > span,
body.leuk-ui .leuk-form-label {
    font-weight: 500 !important;
}

/* Passo 80 — uniformização de títulos de página */
.leuk-page-header {
    margin-bottom: 1.5rem;
}
.leuk-page-header .leuk-page-title {
    margin: 0;
    color: var(--leuk-iron, #243449);
    font-size: clamp(2rem, 1.6rem + 1.1vw, 3rem);
    line-height: 1.06;
    letter-spacing: -0.03em;
    font-weight: 300;
}
.leuk-page-header .leuk-page-description {
    margin-top: .65rem;
    max-width: 52rem;
    color: #5e7187;
    font-size: .98rem;
    line-height: 1.55;
    font-weight: 400;
}
.leuk-page-header .leuk-page-meta,
.leuk-page-header .leuk-page-link {
    margin-top: .9rem;
}
body[data-app-shell='portal'] .leuk-page-header .leuk-page-title,
body[data-app-shell='crm'] .leuk-page-header .leuk-page-title {
    text-wrap: balance;
}
@media (max-width: 767px) {
    .leuk-page-header .leuk-page-title {
        font-size: 2.15rem;
    }
    .leuk-page-header .leuk-page-description {
        font-size: .94rem;
    }
}

/* Passo 83.3 — Sidebars uniformizadas entre Portal e CRM */
#sidebar .sidebar-menu-trigger {
    font-weight: 600 !important;
    letter-spacing: .15em !important;
    color: rgba(255,255,255,.52) !important;
}
#sidebar .sidebar-submenu a,
#sidebar nav a:not(.leuk-sidebar-brand):not(.leuk-sidebar-room-link) {
    font-weight: 500 !important;
}
.leuk-sidebar-brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .72rem;
    min-width: 0;
    border-radius: 1.15rem;
    padding: .35rem .65rem;
    transition: background-color .18s ease, transform .18s ease;
}
.leuk-sidebar-brand:hover {
    background: rgba(255,255,255,.055);
    transform: translateY(-1px);
}
.leuk-sidebar-brand-logo {
    height: 2rem;
    width: auto;
    flex: 0 0 auto;
}
.leuk-sidebar-brand-text {
    display: inline-flex;
    align-items: baseline;
    gap: .32rem;
    min-width: 0;
    color: #fff;
    font-size: .92rem;
    line-height: 1;
    letter-spacing: -.015em;
    font-weight: 500;
    white-space: nowrap;
}
.leuk-sidebar-brand-text em {
    font-style: normal;
    font-weight: 700;
    letter-spacing: -.02em;
}
.leuk-sidebar-room-dock {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .25rem .15rem .55rem;
    flex-wrap: wrap;
}
.leuk-sidebar-room-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: .95rem;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.045);
    color: rgba(255,255,255,.85);
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.leuk-sidebar-room-link:hover {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.16);
    transform: translateY(-1px);
}
.leuk-sidebar-room-link i {
    font-size: 1.12rem;
    line-height: 1;
}
.leuk-sidebar-room-link::after {
    content: attr(data-tooltip);
    position: absolute;
    left: calc(100% + .65rem);
    top: 50%;
    transform: translateY(-50%) translateX(-.25rem);
    opacity: 0;
    pointer-events: none;
    white-space: nowrap;
    background: rgba(17,24,39,.96);
    color: #fff;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: .75rem;
    padding: .45rem .6rem;
    font-size: .72rem;
    font-weight: 500;
    line-height: 1;
    box-shadow: 0 14px 30px rgba(15,23,42,.22);
    z-index: 90;
    transition: opacity .15s ease, transform .15s ease;
}
.leuk-sidebar-room-link:hover::after,
.leuk-sidebar-room-link:focus-visible::after {
    opacity: 1;
    transform: translateY(-50%) translateX(0);
}
.leuk-sidebar-room-badge {
    position: absolute;
    top: -.28rem;
    right: -.28rem;
    min-width: 1.1rem;
    height: 1.1rem;
    padding: 0 .25rem;
    border-radius: 999px;
    background: var(--leuk-pacific, #1985a1);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .62rem;
    font-weight: 700;
    border: 2px solid var(--leuk-iron, #243449);
}
@media (max-width: 767px) {
    .leuk-sidebar-room-link::after { display: none; }
}

/* Passo 83.4 — lettering e ícones das salas nas sidebars */
.leuk-sidebar-brand {
    width: 100%;
    justify-content: flex-start;
    gap: .85rem;
    padding: .4rem .55rem;
}
.leuk-sidebar-brand-logo {
    height: 2.15rem;
    width: auto;
    flex: 0 0 auto;
}
.leuk-sidebar-brand-text {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: #fff;
    font-size: 1.02rem;
    line-height: 1;
    letter-spacing: .18em;
    font-weight: 300;
    white-space: nowrap;
    text-transform: uppercase;
}
.leuk-sidebar-brand-text em {
    font-style: normal;
    font-weight: 300;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.leuk-sidebar-room-dock {
    gap: .7rem;
    padding: .35rem .15rem .7rem;
    overflow: visible;
}
.leuk-sidebar-room-link {
    width: 2.9rem;
    height: 2.9rem;
    border-radius: 1.15rem;
    overflow: visible;
}
.leuk-sidebar-room-link i {
    font-size: 1.48rem;
    line-height: 1;
}
.leuk-sidebar-room-link::after {
    left: 50%;
    top: calc(100% + .5rem);
    transform: translateX(-50%) translateY(-.25rem);
    min-width: max-content;
    max-width: min(13rem, calc(100vw - 2rem));
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
    line-height: 1.25;
    padding: .5rem .65rem;
    z-index: 120;
}
.leuk-sidebar-room-link:hover::after,
.leuk-sidebar-room-link:focus-visible::after {
    transform: translateX(-50%) translateY(0);
}
.leuk-sidebar-room-badge {
    top: -.22rem;
    right: -.22rem;
}
#sidebar nav,
#sidebar .leuk-sidebar-room-dock,
#sidebar .px-1 {
    overflow: visible;
}
@media (max-width: 767px) {
    .leuk-sidebar-brand-logo { height: 2.05rem; }
    .leuk-sidebar-room-link { width: 2.75rem; height: 2.75rem; }
    .leuk-sidebar-room-link i { font-size: 1.38rem; }
}

/* Passo 83.5 — alinhamento vertical das sidebars */
#sidebar nav > .leuk-sidebar-room-dock:first-child,
#sidebar nav > .px-1:first-child > .leuk-sidebar-room-dock:first-child {
    margin-top: -.15rem;
    margin-bottom: .35rem;
}
#sidebar nav > .leuk-sidebar-room-dock + .px-1 {
    margin-top: 0 !important;
}

/* Fase 1.1 — variáveis de cor por shell para componentes transversais */
body[data-app-shell="portal"] {
    --leuk-platform-color: var(--leuk-pacific);
    --leuk-platform-color-rgb: var(--leuk-pacific-rgb);
}
body[data-app-shell="crm"] {
    --leuk-platform-color: var(--leuk-sales);
    --leuk-platform-color-rgb: var(--leuk-sales-rgb);
}

/* Fase 1 — Componentes transversais do Ecossistema */
.leuk-sidebar-room-link.is-active {
    background: rgba(255,255,255,.13);
    border-color: rgba(255,255,255,.32);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 14px 30px rgba(0,0,0,.16);
}
.leuk-sidebar-room-link.is-active::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -.42rem;
    width: .42rem;
    height: .42rem;
    transform: translateX(-50%);
    border-radius: 999px;
    background: currentColor;
    opacity: .9;
}

/* Fase 3A — módulo visual centralizado sem estilos inline */
.leuk-sidebar-room-link--portal {
    color: var(--leuk-pacific, #1985a1);
}
.leuk-sidebar-room-link--crm {
    color: var(--leuk-sales, #9b5de5);
}
.leuk-sidebar-room-link--modulo {
    color: var(--leuk-platform-color, var(--leuk-pacific, #1985a1));
}
.leuk-sidebar-room-link i {
    color: currentColor;
}
.leuk-sidebar-room-link.is-active::before {
    background: currentColor;
}

/* Fase 3F — botões dos módulos mais sóbrios e com estados por cor */
.leuk-sidebar-room-link {
    --leuk-sidebar-module-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-sidebar-module-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    border-radius: .78rem;
    border-color: rgba(var(--leuk-sidebar-module-rgb), .32);
    background: rgba(var(--leuk-sidebar-module-rgb), .06);
    color: var(--leuk-sidebar-module-color);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}

.leuk-sidebar-room-link:hover,
.leuk-sidebar-room-link:focus-visible {
    border-color: rgba(var(--leuk-sidebar-module-rgb), .58);
    background: rgba(var(--leuk-sidebar-module-rgb), .16);
    color: var(--leuk-sidebar-module-color);
    box-shadow: inset 0 0 0 1px rgba(var(--leuk-sidebar-module-rgb), .08), 0 12px 24px rgba(0,0,0,.12);
}

.leuk-sidebar-room-link.is-active {
    border-color: rgba(var(--leuk-sidebar-module-rgb), .72);
    background: linear-gradient(135deg, rgba(var(--leuk-sidebar-module-rgb), .24), rgba(var(--leuk-sidebar-module-rgb), .10));
    color: var(--leuk-sidebar-module-color);
    box-shadow: inset 0 0 0 1px rgba(var(--leuk-sidebar-module-rgb), .18), 0 14px 28px rgba(var(--leuk-sidebar-module-rgb), .14);
}

.leuk-sidebar-room-link--portal {
    --leuk-sidebar-module-color: var(--leuk-pacific, #1985a1);
    --leuk-sidebar-module-rgb: var(--leuk-pacific-rgb, 25, 133, 161);
}
.leuk-sidebar-room-link--crm {
    --leuk-sidebar-module-color: var(--leuk-sales, #f97316);
    --leuk-sidebar-module-rgb: var(--leuk-sales-rgb, 249, 115, 22);
}
.leuk-sidebar-room-link--modulo {
    --leuk-sidebar-module-color: var(--leuk-platform-color, var(--leuk-pacific, #1985a1));
    --leuk-sidebar-module-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161));
}

.leuk-dashboard-summary {
    --leuk-dashboard-summary-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-dashboard-summary-color-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    --leuk-dashboard-summary-accent-stop: #172333;

    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, .82fr) auto;
    gap: 1rem;
    align-items: stretch;
    margin: 0 0 1.35rem;
    padding: clamp(1rem, 2vw, 1.35rem);
    overflow: hidden;
    border: 1px solid rgba(var(--leuk-dashboard-summary-color-rgb), .42);
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at 9% -16%, rgba(var(--leuk-dashboard-summary-color-rgb), .28) 0, rgba(var(--leuk-dashboard-summary-color-rgb), .10) 32%, transparent 58%),
        radial-gradient(circle at 92% 118%, rgba(var(--leuk-dashboard-summary-color-rgb), .18) 0, transparent 42%),
        linear-gradient(135deg, rgba(13, 19, 29, .99) 0%, var(--leuk-dashboard-summary-accent-stop) 52%, rgba(8, 13, 20, .98) 100%);
    box-shadow: 0 22px 50px rgba(15, 23, 42, .24), 0 14px 32px rgba(var(--leuk-dashboard-summary-color-rgb), .12);
}

.leuk-dashboard-summary--portal {
    --leuk-dashboard-summary-color: var(--leuk-pacific);
    --leuk-dashboard-summary-color-rgb: var(--leuk-pacific-rgb);
    --leuk-dashboard-summary-accent-stop: #123542;
}

.leuk-dashboard-summary--crm {
    --leuk-dashboard-summary-color: var(--leuk-sales);
    --leuk-dashboard-summary-color-rgb: var(--leuk-sales-rgb);
    --leuk-dashboard-summary-accent-stop: #b94714;
}

.leuk-dashboard-summary::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: .3rem;
    background: linear-gradient(180deg, var(--leuk-dashboard-summary-color), rgba(var(--leuk-dashboard-summary-color-rgb), .35));
}

.leuk-dashboard-summary::after {
    content: '';
    position: absolute;
    right: -3.5rem;
    top: -4rem;
    width: 13rem;
    height: 13rem;
    border: 1px solid rgba(var(--leuk-dashboard-summary-color-rgb), .18);
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    opacity: .72;
    pointer-events: none;
    z-index: 0;
}

.leuk-dashboard-summary__main,
.leuk-dashboard-summary__metrics,
.leuk-dashboard-summary__action {
    position: relative;
    z-index: 1;
}

.leuk-dashboard-summary__main {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    padding-left: .4rem;
}

.leuk-dashboard-summary__icon {
    width: 3.25rem;
    height: 3.25rem;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 1.1rem;
    background: rgba(255,255,255,.11);
    color: #fff;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.42);
    font-size: 1.55rem;
}

.leuk-dashboard-summary__copy {
    min-width: 0;
}

.leuk-dashboard-summary__eyebrow {
    margin: 0 0 .32rem;
    color: rgba(255,255,255,.78);
    font-size: .68rem;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.leuk-dashboard-summary__title {
    margin: 0;
    color: #fff;
    font-size: clamp(1.35rem, 2.2vw, 1.9rem);
    font-weight: 800;
    letter-spacing: -.035em;
}

.leuk-dashboard-summary__description {
    margin: .42rem 0 0;
    max-width: 56rem;
    color: rgba(255,255,255,.76);
    font-size: .94rem;
    line-height: 1.55;
}

.leuk-dashboard-summary__metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.leuk-dashboard-summary__metric {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: .65rem;
    row-gap: .08rem;
    align-items: center;
    min-width: 0;
    padding: .72rem .78rem;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 1.05rem;
    background: rgba(255,255,255,.10);
    backdrop-filter: blur(8px);
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

a.leuk-dashboard-summary__metric:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--leuk-dashboard-summary-color-rgb), .24);
    box-shadow: 0 12px 25px rgba(70,73,76,.07);
}

.leuk-dashboard-summary__metric-icon {
    grid-row: span 2;
    width: 2.1rem;
    height: 2.1rem;
    display: grid;
    place-items: center;
    border-radius: .78rem;
    background: rgba(var(--leuk-dashboard-summary-color-rgb), .12);
    color: rgba(255,255,255,.78);
    font-size: 1rem;
}

.leuk-dashboard-summary__metric-label {
    min-width: 0;
    overflow: hidden;
    color: rgba(255,255,255,.58);
    font-size: .62rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .12em;
    line-height: 1.1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.leuk-dashboard-summary__metric-value {
    min-width: 0;
    overflow: hidden;
    color: #fff;
    font-size: 1rem;
    font-weight: 850;
    letter-spacing: -.02em;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-dashboard-summary__action {
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 3rem;
    padding: .78rem 1rem;
    border-radius: 1rem;
    background: rgba(255,255,255,.94);
    color: var(--leuk-dashboard-summary-color);
    font-size: .82rem;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.leuk-dashboard-summary__action:hover {
    transform: translateY(-1px);
    background: #fff;
    color: var(--leuk-dashboard-summary-color);
    box-shadow: 0 14px 28px rgba(var(--leuk-dashboard-summary-color-rgb), .22);
}

@media (max-width: 1180px) {
    .leuk-dashboard-summary {
        grid-template-columns: 1fr;
    }

    .leuk-dashboard-summary__action {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .leuk-dashboard-summary__main {
        align-items: flex-start;
    }

    .leuk-dashboard-summary__icon {
        width: 2.75rem;
        height: 2.75rem;
        border-radius: .95rem;
    }

    .leuk-dashboard-summary__metrics {
        grid-template-columns: 1fr;
    }
}

/* Fase 3G — Barra de progresso transversal sem estilos inline */
.leuk-progress-bar {
    --leuk-progress-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    --leuk-progress-color: var(--leuk-platform-color, var(--leuk-pacific));
    display: grid;
    gap: .38rem;
    min-width: 0;
}
.leuk-progress-bar__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    min-width: 0;
}
.leuk-progress-bar__label,
.leuk-progress-bar__value {
    color: var(--leuk-iron, #46494c);
    font-size: .78rem;
    font-weight: 650;
    line-height: 1.1;
}
.leuk-progress-bar__label {
    min-width: 0;
    overflow: hidden;
    color: var(--leuk-slate, #64748b);
    text-overflow: ellipsis;
    white-space: nowrap;
}
.leuk-progress-bar__value {
    flex: 0 0 auto;
    color: var(--leuk-progress-color);
}
.leuk-progress-bar__native {
    display: block;
    width: 100%;
    height: .5rem;
    overflow: hidden;
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    border-radius: 999px;
    background: rgba(148, 163, 184, .20);
}
.leuk-progress-bar__native::-webkit-progress-bar {
    border-radius: 999px;
    background: rgba(148, 163, 184, .20);
}
.leuk-progress-bar__native::-webkit-progress-value {
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(var(--leuk-progress-rgb), .72), var(--leuk-progress-color));
}
.leuk-progress-bar__native::-moz-progress-bar {
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(var(--leuk-progress-rgb), .72), var(--leuk-progress-color));
}
.leuk-progress-bar--xs { gap: .26rem; }
.leuk-progress-bar--xs .leuk-progress-bar__native { height: .38rem; }
.leuk-progress-bar--xs .leuk-progress-bar__label,
.leuk-progress-bar--xs .leuk-progress-bar__value { font-size: .72rem; }
.leuk-progress-bar--md .leuk-progress-bar__native { height: .62rem; }
.leuk-progress-bar--md .leuk-progress-bar__label { font-size: .82rem; }
.leuk-progress-bar--md .leuk-progress-bar__value { font-size: 1.18rem; font-weight: 500; }
.leuk-progress-bar--primary {
    --leuk-progress-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    --leuk-progress-color: var(--leuk-platform-color, var(--leuk-pacific));
}
.leuk-progress-bar--success { --leuk-progress-rgb: 22, 163, 74; --leuk-progress-color: #16a34a; }
.leuk-progress-bar--warning { --leuk-progress-rgb: 217, 119, 6; --leuk-progress-color: #d97706; }
.leuk-progress-bar--danger { --leuk-progress-rgb: 220, 38, 38; --leuk-progress-color: #dc2626; }
.leuk-progress-bar--neutral { --leuk-progress-rgb: 100, 116, 139; --leuk-progress-color: #64748b; }

/* Fase 3F — Badge transversal de estados */
.leuk-status-badge {
    --leuk-status-rgb: var(--leuk-slate-rgb);
    --leuk-status-color: var(--leuk-slate);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .32rem;
    width: max-content;
    max-width: 100%;
    border: 1px solid rgba(var(--leuk-status-rgb), .22);
    border-radius: .68rem;
    background: rgba(var(--leuk-status-rgb), .075);
    color: var(--leuk-status-color);
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
}

.leuk-status-badge i {
    font-size: 1em;
    line-height: 1;
}

.leuk-status-badge--xs { padding: .34rem .48rem; font-size: .68rem; }
.leuk-status-badge--sm { padding: .44rem .62rem; font-size: .74rem; }
.leuk-status-badge--md { padding: .56rem .78rem; font-size: .82rem; }
.leuk-status-badge--primary { --leuk-status-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)); --leuk-status-color: var(--leuk-platform-color, var(--leuk-pacific)); }
.leuk-status-badge--success { --leuk-status-rgb: 22, 163, 74; --leuk-status-color: var(--leuk-success); }
.leuk-status-badge--warning { --leuk-status-rgb: 245, 158, 11; --leuk-status-color: var(--leuk-warning); }
.leuk-status-badge--danger { --leuk-status-rgb: 239, 68, 68; --leuk-status-color: var(--leuk-danger); }
.leuk-status-badge--info { --leuk-status-rgb: 14, 165, 233; --leuk-status-color: var(--leuk-info); }

/* Fase 3D — Componentes UI reutilizáveis para dashboards */
.leuk-section-card {
    margin: 0 0 1.25rem;
    overflow: hidden;
    border: 1px solid rgba(197, 195, 198, .34);
    border-radius: 1.65rem;
    background: #fff;
    box-shadow: 0 18px 42px rgba(70, 73, 76, .065);
}

.leuk-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 1.35rem;
    border-bottom: 1px solid rgba(197, 195, 198, .28);
    background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.86));
}

.leuk-section-header__copy {
    min-width: 0;
}

.leuk-section-header__eyebrow {
    margin: 0 0 .28rem;
    color: var(--leuk-pale);
    font-size: .66rem;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.leuk-section-header__title {
    margin: 0;
    color: var(--leuk-iron);
    font-size: clamp(1.08rem, 1.8vw, 1.35rem);
    font-weight: 800;
    letter-spacing: -.03em;
}

.leuk-section-header__description {
    margin: .38rem 0 0;
    max-width: 48rem;
    color: var(--leuk-slate);
    font-size: .88rem;
    line-height: 1.5;
}

.leuk-section-header__aside {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .65rem;
    flex: 0 0 auto;
}

.leuk-section-header__badge,
.leuk-section-header__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 2.1rem;
    padding: .48rem .75rem;
    border: 1px solid rgba(197, 195, 198, .36);
    border-radius: 999px;
    background: rgba(248,250,252,.78);
    color: var(--leuk-slate);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.leuk-section-header__action {
    border-color: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .2);
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .08);
    color: var(--leuk-platform-color, var(--leuk-pacific));
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.leuk-section-header__action:hover {
    transform: translateY(-1px);
    background: var(--leuk-platform-color, var(--leuk-pacific));
    color: #fff;
}

.leuk-section-card__body {
    padding: 1.25rem 1.35rem;
}

.leuk-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin: 0 0 1.25rem;
}

.leuk-kpi-grid--operational {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.leuk-kpi-card {
    --leuk-kpi-tone-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-kpi-tone-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));

    display: flex;
    align-items: center;
    gap: .95rem;
    min-width: 0;
    min-height: 5.25rem;
    padding: 1rem;
    border: 1px solid rgba(197, 195, 198, .34);
    border-radius: 1.25rem;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 14px 32px rgba(70, 73, 76, .055);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.leuk-kpi-card--primary {
    --leuk-kpi-tone-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-kpi-tone-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
}

.leuk-kpi-card--success,
.leuk-kpi-card--green {
    --leuk-kpi-tone-color: #047857;
    --leuk-kpi-tone-rgb: 4, 120, 87;
}

.leuk-kpi-card--warning,
.leuk-kpi-card--amber {
    --leuk-kpi-tone-color: #b45309;
    --leuk-kpi-tone-rgb: 180, 83, 9;
}

.leuk-kpi-card--danger,
.leuk-kpi-card--red {
    --leuk-kpi-tone-color: #b91c1c;
    --leuk-kpi-tone-rgb: 185, 28, 28;
}

.leuk-kpi-card--neutral,
.leuk-kpi-card--slate,
.leuk-kpi-card--blue {
    --leuk-kpi-tone-color: var(--leuk-slate);
    --leuk-kpi-tone-rgb: 76, 92, 104;
}

a.leuk-kpi-card:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--leuk-kpi-tone-rgb), .22);
    box-shadow: 0 18px 36px rgba(70, 73, 76, .08);
}

.leuk-kpi-card__icon {
    width: 3rem;
    height: 3rem;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid rgba(var(--leuk-kpi-tone-rgb), .18);
    border-radius: 1rem;
    background: rgba(var(--leuk-kpi-tone-rgb), .08);
    color: var(--leuk-kpi-tone-color);
    font-size: 1.35rem;
}

.leuk-kpi-card__body {
    min-width: 0;
    display: block;
}

.leuk-kpi-card__value {
    display: block;
    overflow: hidden;
    color: var(--leuk-iron);
    font-size: 1.55rem;
    font-weight: 780;
    letter-spacing: -.035em;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-kpi-card__label {
    display: block;
    margin-top: .28rem;
    overflow: hidden;
    color: var(--leuk-slate);
    font-size: .68rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .12em;
    line-height: 1.15;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.leuk-kpi-card__description {
    display: block;
    margin-top: .38rem;
    color: var(--leuk-pale);
    font-size: .76rem;
    line-height: 1.35;
}

.leuk-kpi-grid--operational .leuk-kpi-card,
.leuk-kpi-grid--portal .leuk-kpi-card {
    min-height: 5.65rem;
}

.leuk-empty-state {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem;
    border: 1px dashed rgba(197, 195, 198, .48);
    border-radius: 1.25rem;
    background: rgba(248, 250, 252, .72);
}

.leuk-empty-state__icon {
    width: 2.8rem;
    height: 2.8rem;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: .95rem;
    background: #fff;
    color: var(--leuk-platform-color, var(--leuk-pacific));
    font-size: 1.28rem;
    box-shadow: inset 0 0 0 1px rgba(197, 195, 198, .3);
}

.leuk-empty-state__copy {
    min-width: 0;
    flex: 1 1 auto;
}

.leuk-empty-state__copy strong,
.leuk-empty-state__copy span {
    display: block;
}

.leuk-empty-state__copy strong {
    color: var(--leuk-iron);
    font-size: .95rem;
    font-weight: 850;
}

.leuk-empty-state__copy span {
    margin-top: .18rem;
    color: var(--leuk-slate);
    font-size: .84rem;
    line-height: 1.4;
}

.leuk-empty-state__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    flex: 0 0 auto;
    padding: .58rem .78rem;
    border-radius: 999px;
    background: var(--leuk-platform-color, var(--leuk-pacific));
    color: #fff;
    font-size: .76rem;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .leuk-kpi-grid,
    .leuk-kpi-grid--operational {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .leuk-section-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .leuk-section-header__aside {
        justify-content: flex-start;
        width: 100%;
    }

    .leuk-kpi-grid,
    .leuk-kpi-grid--operational {
        grid-template-columns: 1fr;
    }

    .leuk-empty-state {
        align-items: flex-start;
        flex-direction: column;
    }
}

.leuk-section-card > .leuk-kpi-grid.leuk-section-card__body {
    margin-bottom: 0;
}

/* Leuk UI — Page headers, feedback and filters (Fase 3E) */
.leuk-page-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 1.5rem;
    padding: 1.4rem;
    border: 1px solid rgba(197, 195, 198, .32);
    border-radius: 1.55rem;
    background: #fff;
    box-shadow: 0 18px 46px rgba(70, 73, 76, .07);
}

.leuk-page-hero--hero {
    border-color: rgba(255, 255, 255, .12);
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, .14), transparent 34%),
        linear-gradient(135deg, var(--leuk-iron), var(--leuk-slate) 56%, var(--leuk-platform-color, var(--leuk-pacific)) 140%);
    color: #fff;
}

.leuk-page-hero__main {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem;
}

.leuk-page-hero__copy {
    min-width: 0;
    max-width: 58rem;
}

.leuk-page-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .72rem;
    padding: .42rem .68rem;
    border: 1px solid rgba(197, 195, 198, .35);
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    color: var(--leuk-slate);
    font-size: .64rem;
    font-weight: 900;
    letter-spacing: .18em;
    line-height: 1;
    text-transform: uppercase;
}

.leuk-page-hero--hero .leuk-page-hero__eyebrow {
    border-color: rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .78);
}

.leuk-page-hero__title {
    margin: 0;
    color: var(--leuk-iron);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 300;
    letter-spacing: -.055em;
    line-height: 1;
}

.leuk-page-hero--hero .leuk-page-hero__title {
    color: #fff;
}

.leuk-page-hero__description {
    max-width: 46rem;
    margin: .68rem 0 0;
    color: var(--leuk-slate);
    font-size: .98rem;
    line-height: 1.62;
}

.leuk-page-hero--hero .leuk-page-hero__description {
    color: rgba(255, 255, 255, .74);
}

.leuk-page-hero__notice {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    max-width: 50rem;
    margin-top: 1rem;
    padding: .82rem .95rem;
    border: 1px solid rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .18);
    border-radius: 1rem;
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .08);
    color: var(--leuk-slate);
    font-size: .82rem;
    line-height: 1.45;
}

.leuk-page-hero__notice i {
    color: var(--leuk-platform-color, var(--leuk-pacific));
    font-size: 1.2rem;
}

.leuk-page-hero__notice p {
    margin: 0;
}

.leuk-page-hero__aside {
    display: flex;
    align-items: stretch;
    gap: .75rem;
    flex: 0 0 auto;
}

.leuk-page-hero__metric {
    min-width: 12rem;
    padding: 1rem;
    border: 1px solid rgba(197, 195, 198, .25);
    border-radius: 1.2rem;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 12px 30px rgba(70, 73, 76, .05);
}

.leuk-page-hero--hero .leuk-page-hero__metric {
    border-color: rgba(255, 255, 255, .15);
    background: rgba(255, 255, 255, .1);
    box-shadow: none;
}

.leuk-page-hero__metric span,
.leuk-page-hero__metric em {
    display: block;
    color: var(--leuk-pale);
    font-style: normal;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.leuk-page-hero--hero .leuk-page-hero__metric span,
.leuk-page-hero--hero .leuk-page-hero__metric em {
    color: rgba(255, 255, 255, .6);
}

.leuk-page-hero__metric strong {
    display: block;
    margin: .25rem 0;
    color: var(--leuk-iron);
    font-size: 2.35rem;
    font-weight: 300;
    letter-spacing: -.06em;
    line-height: .95;
}

.leuk-page-hero--hero .leuk-page-hero__metric strong {
    color: #fff;
}

.leuk-page-hero__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .6rem;
}

.leuk-page-hero__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 2.85rem;
    padding: .72rem .95rem;
    border: 1px solid transparent;
    border-radius: .95rem;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .07em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}

.leuk-page-hero__action:hover {
    transform: translateY(-1px);
}

.leuk-page-hero__action--primary {
    background: var(--leuk-platform-color, var(--leuk-pacific));
    color: #fff;
}

.leuk-page-hero__action--secondary {
    border-color: rgba(197, 195, 198, .42);
    background: #fff;
    color: var(--leuk-slate);
}

.leuk-alert {
    display: flex;
    align-items: center;
    gap: .78rem;
    margin-bottom: 1.25rem;
    padding: .9rem 1rem;
    border: 1px solid rgba(197, 195, 198, .32);
    border-radius: 1.05rem;
    background: #fff;
    color: var(--leuk-slate);
    font-size: .88rem;
    font-weight: 760;
    line-height: 1.35;
    box-shadow: 0 10px 24px rgba(70, 73, 76, .05);
}

.leuk-alert i {
    flex: 0 0 auto;
    font-size: 1.24rem;
}

.leuk-alert--success,
.leuk-alert--sucesso {
    border-color: rgba(4, 120, 87, .18);
    background: rgba(4, 120, 87, .08);
    color: #047857;
}

.leuk-alert--error,
.leuk-alert--erro,
.leuk-alert--danger {
    border-color: rgba(185, 28, 28, .18);
    background: rgba(185, 28, 28, .08);
    color: #b91c1c;
}

.leuk-alert--warning,
.leuk-alert--aviso {
    border-color: rgba(180, 83, 9, .2);
    background: rgba(180, 83, 9, .09);
    color: #b45309;
}

.leuk-alert--info {
    border-color: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .18);
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .08);
    color: var(--leuk-platform-color, var(--leuk-pacific));
}

.leuk-filter-panel {
    margin-bottom: 1.25rem;
    border: 1px solid rgba(197, 195, 198, .3);
    border-radius: 1.35rem;
    background: #fff;
    box-shadow: 0 14px 32px rgba(70, 73, 76, .055);
}

.leuk-filter-panel__form {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: end;
    gap: .85rem;
    padding: 1rem;
}

.leuk-filter-panel__field {
    display: block;
    min-width: 0;
}

.leuk-filter-panel__field--wide {
    grid-column: span 2;
}

.leuk-filter-panel__field span {
    display: block;
    margin-bottom: .45rem;
    color: var(--leuk-slate);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .13em;
    line-height: 1.15;
    text-transform: uppercase;
}

.leuk-filter-panel__field input,
.leuk-filter-panel__field select {
    width: 100%;
    min-height: 2.9rem;
    padding: .7rem .85rem;
    border: 1px solid rgba(197, 195, 198, .42);
    border-radius: .9rem;
    background: #fff;
    color: var(--leuk-iron);
    font: inherit;
    font-size: .88rem;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.leuk-filter-panel__field input:focus,
.leuk-filter-panel__field select:focus {
    border-color: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .45);
    box-shadow: 0 0 0 4px rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb)), .12);
}

.leuk-filter-panel__actions {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.leuk-filter-panel__submit,
.leuk-filter-panel__clear {
    min-height: 2.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    padding: .72rem .9rem;
    border-radius: .9rem;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.leuk-filter-panel__submit {
    border: 1px solid var(--leuk-platform-color, var(--leuk-pacific));
    background: var(--leuk-platform-color, var(--leuk-pacific));
    color: #fff;
}

.leuk-filter-panel__clear {
    border: 1px solid rgba(197, 195, 198, .42);
    background: #fff;
    color: var(--leuk-slate);
}

.leuk-panel__empty-wrap {
    padding: 1.75rem;
}

@media (max-width: 1180px) {
    .leuk-page-hero__main {
        align-items: flex-start;
        flex-direction: column;
    }

    .leuk-page-hero__aside {
        width: 100%;
        justify-content: space-between;
    }

    .leuk-filter-panel__form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .leuk-filter-panel__field--wide {
        grid-column: span 2;
    }
}

@media (max-width: 760px) {
    .leuk-page-hero {
        padding: 1.1rem;
        border-radius: 1.25rem;
    }

    .leuk-page-hero__aside,
    .leuk-filter-panel__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .leuk-page-hero__metric,
    .leuk-page-hero__actions,
    .leuk-page-hero__action,
    .leuk-filter-panel__submit,
    .leuk-filter-panel__clear {
        width: 100%;
    }

    .leuk-filter-panel__form,
    .leuk-filter-panel__field--wide {
        grid-template-columns: 1fr;
        grid-column: auto;
    }
}

/* Fase 4 — topbar transversal e pesquisa global */
.leuk-topbar-search {
    position: relative;
    display: none;
    align-items: center;
    min-width: min(28vw, 22rem);
}

.leuk-topbar-search__label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.leuk-topbar-search__icon {
    position: absolute;
    left: .85rem;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(70, 73, 76, .56);
    font-size: 1rem;
    pointer-events: none;
}

.leuk-topbar-search__input {
    width: 100%;
    height: 2.55rem;
    border: 1px solid rgba(174, 188, 191, .48);
    border-radius: .9rem;
    background: rgba(247, 249, 249, .82);
    color: var(--leuk-iron, #1f2933);
    font-size: .82rem;
    font-weight: 500;
    outline: none;
    padding: 0 .9rem 0 2.35rem;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.leuk-topbar-search__input:focus {
    border-color: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .42);
    background: #fff;
    box-shadow: 0 0 0 .18rem rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .10);
}

@media (min-width: 1180px) {
    .leuk-topbar-search { display: flex; }
}

.leuk-topbar-notifications {
    position: relative;
}

.leuk-topbar-notifications::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 0;
    width: min(21rem, calc(100vw - 2rem));
    height: .8rem;
    pointer-events: auto;
    background: transparent;
    z-index: 59;
    /* Correção LC_F2_007: cria uma ponte invisível entre o botão e o painel.
       Sem esta área, havia um intervalo sem :hover; ao atravessá-lo, o browser fechava
       o dropdown antes de o utilizador conseguir chegar às notificações. */
}

.leuk-topbar-notifications__trigger {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    min-height: 2.75rem;
    border: 1px solid rgba(174, 188, 191, .48);
    border-radius: .95rem;
    background: rgba(247, 249, 249, .72);
    color: var(--leuk-slate, #46494c);
    padding: .36rem .72rem .36rem .42rem;
    text-decoration: none;
    transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}

.leuk-topbar-notifications__trigger:hover,
.leuk-topbar-notifications:focus-within .leuk-topbar-notifications__trigger {
    border-color: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .38);
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .06);
    color: var(--leuk-platform-color, var(--leuk-pacific));
    transform: translateY(-1px);
}

.leuk-topbar-notifications__icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 2.05rem;
    height: 2.05rem;
    border: 1px solid rgba(174, 188, 191, .42);
    border-radius: .75rem;
    background: #fff;
    font-size: 1.05rem;
}

.leuk-topbar-notifications__counter {
    position: absolute;
    top: -.45rem;
    right: -.45rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.15rem;
    height: 1.15rem;
    border: 2px solid #fff;
    border-radius: 999px;
    background: #e63946;
    color: #fff;
    font-size: .62rem;
    font-weight: 850;
    line-height: 1;
    padding: 0 .22rem;
}

.leuk-topbar-notifications__copy {
    display: none;
    line-height: 1.1;
    text-align: left;
}

.leuk-topbar-notifications__label {
    display: block;
    color: rgba(174, 188, 191, .95);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.leuk-topbar-notifications__meta {
    display: block;
    color: var(--leuk-iron, #1f2933);
    font-size: .76rem;
    font-weight: 600;
}

@media (min-width: 1280px) {
    .leuk-topbar-notifications__copy { display: block; }
}

.leuk-topbar-notifications__panel {
    position: absolute;
    top: calc(100% + .7rem); /* Correção LC_F2_007: mantém o espaçamento visual, mas reduz ligeiramente a distância para a zona de transição cobrir todo o percurso do rato. */
    right: 0;
    width: min(21rem, calc(100vw - 2rem));
    border: 1px solid rgba(174, 188, 191, .34);
    border-radius: 1.15rem;
    background: rgba(255,255,255,.98);
    box-shadow: 0 24px 60px rgba(15, 23, 42, .16);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-.35rem);
    transition: opacity .18s ease, transform .18s ease;
    overflow: hidden;
    z-index: 60;
}

.leuk-topbar-notifications:hover .leuk-topbar-notifications__panel,
.leuk-topbar-notifications:focus-within .leuk-topbar-notifications__panel {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.leuk-topbar-notifications__panel-head,
.leuk-topbar-notifications__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .9rem 1rem;
}

.leuk-topbar-notifications__panel-head {
    border-bottom: 1px solid rgba(174, 188, 191, .24);
}

.leuk-topbar-notifications__panel-head strong {
    color: var(--leuk-iron, #1f2933);
    font-size: .88rem;
}

.leuk-topbar-notifications__panel-head span {
    color: rgba(70, 73, 76, .76);
    font-size: .72rem;
    font-weight: 700;
}

.leuk-topbar-notifications__list {
    display: grid;
    gap: 0;
}

.leuk-topbar-notifications__item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .72rem;
    padding: .85rem 1rem;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid rgba(174, 188, 191, .18);
}

.leuk-topbar-notifications__item:hover {
    background: rgba(247, 249, 249, .78);
}

.leuk-topbar-notifications__item-icon {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: .72rem;
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .08);
    color: var(--leuk-platform-color, var(--leuk-pacific));
}

.leuk-topbar-notifications__item--erro .leuk-topbar-notifications__item-icon { background: rgba(230,57,70,.10); color: #b4232e; }
.leuk-topbar-notifications__item--alerta .leuk-topbar-notifications__item-icon { background: rgba(245,158,11,.12); color: #a05a00; }
.leuk-topbar-notifications__item--sucesso .leuk-topbar-notifications__item-icon { background: rgba(16,185,129,.10); color: #047857; }

.leuk-topbar-notifications__item-copy {
    min-width: 0;
}

.leuk-topbar-notifications__item-copy strong {
    display: block;
    overflow: hidden;
    color: var(--leuk-iron, #1f2933);
    font-size: .82rem;
    font-weight: 760;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-topbar-notifications__item-copy small {
    display: block;
    overflow: hidden;
    color: rgba(70, 73, 76, .70);
    font-size: .7rem;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-topbar-notifications__empty {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: 1rem;
    color: rgba(70, 73, 76, .72);
    font-size: .82rem;
}

.leuk-topbar-notifications__footer {
    color: var(--leuk-platform-color, var(--leuk-pacific));
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
}

.leuk-search-results {
    display: grid;
    gap: 1rem;
    margin-top: 1.1rem;
}

.leuk-search-group {
    overflow: hidden;
    border: 1px solid rgba(174, 188, 191, .32);
    border-radius: 1.35rem;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15,23,42,.05);
}

.leuk-search-group__header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .85rem;
    padding: 1rem 1.1rem;
    border-bottom: 1px solid rgba(174, 188, 191, .24);
    background: linear-gradient(180deg, rgba(247,249,249,.78), rgba(255,255,255,.9));
}

.leuk-search-group__icon {
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .20);
    border-radius: .9rem;
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .08);
    color: var(--leuk-platform-color, var(--leuk-pacific));
    font-size: 1.2rem;
}

.leuk-search-group__header p {
    margin: 0 0 .2rem;
    color: rgba(174, 188, 191, .95);
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.leuk-search-group__header h2 {
    margin: 0;
    color: var(--leuk-iron, #1f2933);
    font-size: 1rem;
    font-weight: 820;
}

.leuk-search-group__header > strong {
    display: inline-grid;
    place-items: center;
    min-width: 2rem;
    height: 2rem;
    border-radius: .72rem;
    background: rgba(var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161)), .10);
    color: var(--leuk-platform-color, var(--leuk-pacific));
    font-size: .8rem;
}

.leuk-search-group__list {
    display: grid;
}

.leuk-search-result {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .8rem;
    align-items: center;
    padding: .95rem 1.1rem;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid rgba(174, 188, 191, .18);
}

.leuk-search-result:last-child { border-bottom: 0; }
.leuk-search-result:hover { background: rgba(247,249,249,.78); }

.leuk-search-result__body {
    min-width: 0;
}

.leuk-search-result__body strong {
    display: block;
    overflow: hidden;
    color: var(--leuk-iron, #1f2933);
    font-size: .92rem;
    font-weight: 760;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-search-result__body small {
    display: block;
    overflow: hidden;
    margin-top: .12rem;
    color: rgba(70, 73, 76, .72);
    font-size: .78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-search-result__meta {
    display: inline-flex;
    align-items: center;
    min-height: 1.65rem;
    border: 1px solid rgba(174, 188, 191, .30);
    border-radius: 999px;
    background: rgba(247,249,249,.82);
    color: rgba(70,73,76,.76);
    font-size: .68rem;
    font-weight: 760;
    letter-spacing: .06em;
    padding: 0 .7rem;
    text-transform: uppercase;
    white-space: nowrap;
}

@media (max-width: 640px) {
    .leuk-search-result { grid-template-columns: 1fr; }
    .leuk-search-result__meta { justify-self: start; }
}

/* Fase 5 — manual permission-aware e pré-staging */
.leuk-manual-hero,
.leuk-manual-guide,
.leuk-manual-group,
.leuk-manual-modules,
.leuk-manual-alerts,
.leuk-maintenance-card {
    box-sizing: border-box;
}

.leuk-manual-hero {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.5rem;
    align-items: end;
    margin-bottom: 1.5rem;
    padding: 2rem;
    border: 1px solid rgba(25, 133, 161, .24);
    border-radius: 1.35rem;
    color: #f8fafc;
    background:
        radial-gradient(circle at 12% -12%, rgba(25, 133, 161, .28), transparent 42%),
        linear-gradient(135deg, #0d131d 0%, #123542 52%, #070b12 100%);
    box-shadow: 0 24px 52px rgba(15, 23, 42, .2);
}

.leuk-manual-hero::after {
    content: "";
    position: absolute;
    right: -4rem;
    top: -5rem;
    width: 16rem;
    height: 16rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
}

.leuk-manual-hero__content,
.leuk-manual-hero__meta {
    position: relative;
    z-index: 1;
}

.leuk-manual-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin: 0 0 .65rem;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(25, 133, 161, .9);
}

.leuk-manual-hero .leuk-manual-eyebrow {
    color: rgba(248, 250, 252, .74);
}

.leuk-manual-hero h2,
.leuk-manual-guide h3,
.leuk-manual-group__header h3,
.leuk-manual-modules__header h3 {
    margin: 0;
    letter-spacing: -.03em;
    color: inherit;
}

.leuk-manual-hero h2 {
    font-size: clamp(2rem, 4vw, 3.6rem);
    font-weight: 300;
}

.leuk-manual-hero p:not(.leuk-manual-eyebrow) {
    max-width: 52rem;
    margin: .75rem 0 0;
    color: rgba(248, 250, 252, .76);
    line-height: 1.7;
}

.leuk-manual-notice {
    display: inline-flex;
    margin-top: 1rem;
    padding: .55rem .8rem;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: .9rem;
    color: rgba(248, 250, 252, .82);
    background: rgba(255, 255, 255, .08);
    font-size: .78rem;
}

.leuk-manual-hero__meta {
    display: grid;
    gap: .6rem;
    min-width: 12rem;
}

.leuk-manual-hero__meta span {
    display: grid;
    gap: .15rem;
    padding: .75rem .9rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: .9rem;
    color: rgba(248, 250, 252, .7);
    background: rgba(255, 255, 255, .07);
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.leuk-manual-hero__meta strong {
    color: #fff;
    font-size: 1rem;
    letter-spacing: 0;
    text-transform: none;
}

.leuk-manual-alerts {
    display: grid;
    gap: .7rem;
    margin-bottom: 1rem;
}

.leuk-manual-alerts p {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin: 0;
    padding: .85rem 1rem;
    border: 1px solid rgba(249, 115, 22, .22);
    border-radius: 1rem;
    color: #7c2d12;
    background: rgba(249, 115, 22, .08);
    font-size: .9rem;
}

.leuk-manual-guide,
.leuk-manual-modules {
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.leuk-manual-guide {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(18rem, 1.05fr);
    gap: 1.25rem;
    align-items: center;
}

.leuk-manual-guide h3,
.leuk-manual-modules__header h3 {
    color: #172033;
    font-size: 1.35rem;
    font-weight: 750;
}

.leuk-manual-guide p,
.leuk-manual-modules__header p,
.leuk-manual-group__header p,
.leuk-manual-card__subtitle,
.leuk-manual-card__note p,
.leuk-manual-steps-list li p,
.leuk-manual-module small {
    color: #64748b;
    line-height: 1.65;
}

.leuk-manual-guide__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.leuk-manual-guide__steps article {
    padding: 1rem;
    border: 1px solid rgba(148, 163, 184, .2);
    border-radius: 1rem;
    background: #f8fafc;
}

.leuk-manual-guide__steps span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: .55rem;
    color: #fff;
    background: #1985a1;
    font-size: .72rem;
    font-weight: 800;
}

.leuk-manual-guide__steps strong {
    display: block;
    margin-top: .65rem;
    color: #172033;
}

.leuk-manual-layout {
    display: grid;
    grid-template-columns: 18rem minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.leuk-manual-index {
    position: sticky;
    top: 6rem;
    max-height: calc(100vh - 7rem);
    overflow: auto;
    padding: 1rem;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.leuk-manual-index__title {
    margin: 0 0 .85rem;
    color: #94a3b8;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.leuk-manual-index__group {
    display: grid;
    gap: .3rem;
    padding: .6rem 0;
    border-top: 1px solid rgba(148, 163, 184, .16);
}

.leuk-manual-index__group:first-of-type {
    border-top: 0;
}

.leuk-manual-index a {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .55rem .65rem;
    border-radius: .8rem;
    color: #64748b;
    text-decoration: none;
    font-size: .84rem;
    font-weight: 700;
    transition: background-color .18s ease, color .18s ease;
}

.leuk-manual-index a:hover {
    color: #172033;
    background: #f1f5f9;
}

.leuk-manual-index__group-link {
    color: #172033 !important;
    font-size: .72rem !important;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.leuk-manual-content,
.leuk-manual-group {
    display: grid;
    gap: 1rem;
}

.leuk-manual-group {
    scroll-margin-top: 6rem;
}

.leuk-manual-group__header {
    padding: 1.25rem 1.35rem;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 1.15rem;
    background: #fff;
}

.leuk-manual-group__header h3 {
    color: #172033;
    font-size: 1.55rem;
    font-weight: 750;
}

.leuk-manual-card {
    display: grid;
    grid-template-columns: 3.1rem minmax(0, 1fr);
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 1.2rem;
    background: #fff;
    box-shadow: 0 14px 32px rgba(15, 23, 42, .055);
    scroll-margin-top: 6rem;
}

.leuk-manual-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: .9rem;
    color: #1985a1;
    background: rgba(25, 133, 161, .09);
    font-size: 1.45rem;
}

.leuk-manual-card h4 {
    margin: 0;
    color: #172033;
    font-size: 1.2rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.leuk-manual-card__subtitle {
    margin: .35rem 0 0;
    font-size: .92rem;
}

.leuk-manual-card__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(13rem, .42fr);
    gap: 1rem;
    margin-top: 1rem;
}

.leuk-manual-steps-list,
.leuk-manual-card__note {
    padding: 1rem;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 1rem;
    background: #f8fafc;
}

.leuk-manual-card__label {
    margin: 0 0 .75rem;
    color: #94a3b8;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.leuk-manual-steps-list ol {
    display: grid;
    gap: .7rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.leuk-manual-steps-list li {
    display: grid;
    grid-template-columns: 1.65rem minmax(0, 1fr);
    gap: .65rem;
    align-items: start;
}

.leuk-manual-steps-list li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: .55rem;
    color: #1985a1;
    background: #fff;
    font-size: .75rem;
    font-weight: 900;
}

.leuk-manual-steps-list li p,
.leuk-manual-card__note p {
    margin: 0;
    font-size: .9rem;
}

.leuk-manual-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(148, 163, 184, .18);
}

.leuk-manual-actions a,
.leuk-manual-module {
    text-decoration: none;
}

.leuk-manual-actions a {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .65rem .85rem;
    border: 1px solid rgba(25, 133, 161, .24);
    border-radius: .75rem;
    color: #0f5d73;
    background: rgba(25, 133, 161, .08);
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.leuk-manual-actions a:hover {
    border-color: rgba(25, 133, 161, .42);
    background: rgba(25, 133, 161, .14);
    transform: translateY(-1px);
}

.leuk-manual-modules {
    margin-top: 1.5rem;
}

.leuk-manual-modules__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
    margin-top: 1rem;
}

.leuk-manual-module {
    display: grid;
    gap: .4rem;
    padding: 1rem;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 1rem;
    color: #172033;
    background: #f8fafc;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.leuk-manual-module span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: .8rem;
    color: #1985a1;
    background: #fff;
    font-size: 1.25rem;
}

.leuk-manual-module:hover {
    transform: translateY(-2px);
    border-color: rgba(25, 133, 161, .28);
    box-shadow: 0 14px 32px rgba(15, 23, 42, .08);
}

.leuk-maintenance-page {
    min-height: 100vh;
    margin: 0;
    display: grid;
    place-items: center;
    padding: 2rem;
    color: #f8fafc;
    background:
        radial-gradient(circle at 14% 12%, rgba(25, 133, 161, .26), transparent 34%),
        linear-gradient(135deg, #070b12, #0d131d 52%, #020617);
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.leuk-maintenance-card {
    width: min(100%, 34rem);
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 1.35rem;
    background: rgba(15, 23, 42, .78);
    box-shadow: 0 30px 80px rgba(0, 0, 0, .28);
}

.leuk-maintenance-brand {
    margin: 0 0 2.5rem;
    color: rgba(248, 250, 252, .82);
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .42em;
}

.leuk-maintenance-card h1 {
    margin: 0;
    font-size: clamp(2rem, 5vw, 3.8rem);
    font-weight: 250;
    letter-spacing: -.04em;
}

.leuk-maintenance-card p:not(.leuk-maintenance-brand) {
    margin: 1rem 0 0;
    color: rgba(248, 250, 252, .74);
    line-height: 1.7;
}

.leuk-maintenance-meta {
    display: grid;
    gap: .5rem;
    margin: 1.5rem 0;
}

.leuk-maintenance-meta span {
    padding: .7rem .8rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: .8rem;
    color: rgba(248, 250, 252, .74);
    background: rgba(255, 255, 255, .06);
    font-size: .82rem;
}

.leuk-maintenance-card a {
    display: inline-flex;
    margin-top: .25rem;
    padding: .72rem .95rem;
    border: 1px solid rgba(25, 133, 161, .4);
    border-radius: .85rem;
    color: #fff;
    background: rgba(25, 133, 161, .18);
    text-decoration: none;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

@media (max-width: 1100px) {
    .leuk-manual-layout,
    .leuk-manual-guide {
        grid-template-columns: 1fr;
    }

    .leuk-manual-index {
        position: relative;
        top: auto;
        max-height: none;
    }
}

@media (max-width: 760px) {
    .leuk-manual-hero,
    .leuk-manual-card,
    .leuk-manual-card__grid,
    .leuk-manual-modules__grid,
    .leuk-manual-guide__steps {
        grid-template-columns: 1fr;
    }

    .leuk-manual-hero,
    .leuk-manual-guide,
    .leuk-manual-group__header,
    .leuk-manual-card,
    .leuk-manual-modules {
        padding: 1.1rem;
    }
}

/* Revisão final — dashboards com primeira leitura orientada */
.leuk-dashboard-focus {
    --leuk-focus-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-focus-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    margin: 0 0 1.25rem;
    padding: 1rem;
    border: 1px solid rgba(var(--leuk-focus-rgb), .16);
    border-radius: 1.35rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92));
    box-shadow: 0 16px 34px rgba(15, 23, 42, .05);
}
.leuk-dashboard-focus--portal {
    --leuk-focus-color: var(--leuk-pacific);
    --leuk-focus-rgb: var(--leuk-pacific-rgb);
}
.leuk-dashboard-focus--crm {
    --leuk-focus-color: var(--leuk-sales);
    --leuk-focus-rgb: var(--leuk-sales-rgb);
}
.leuk-dashboard-focus__header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .9rem;
    padding: .1rem .2rem 0;
}
.leuk-dashboard-focus__eyebrow {
    margin: 0 0 .24rem;
    color: rgba(var(--leuk-focus-rgb), .92);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .18em;
    line-height: 1;
    text-transform: uppercase;
}
.leuk-dashboard-focus__title {
    margin: 0;
    color: var(--leuk-iron);
    font-size: clamp(1.05rem, 1.6vw, 1.32rem);
    font-weight: 850;
    letter-spacing: -.025em;
}
.leuk-dashboard-focus__description {
    max-width: 72rem;
    margin: .3rem 0 0;
    color: var(--leuk-slate);
    font-size: .88rem;
    line-height: 1.5;
}
.leuk-dashboard-focus__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .78rem;
}
.leuk-dashboard-focus__item {
    --leuk-focus-tone-rgb: var(--leuk-focus-rgb);
    --leuk-focus-tone-color: var(--leuk-focus-color);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .8rem;
    min-width: 0;
    min-height: 5.35rem;
    padding: .9rem;
    border: 1px solid rgba(var(--leuk-focus-tone-rgb), .16);
    border-radius: 1.05rem;
    background: rgba(var(--leuk-focus-tone-rgb), .045);
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
a.leuk-dashboard-focus__item:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--leuk-focus-tone-rgb), .28);
    background: rgba(var(--leuk-focus-tone-rgb), .07);
    box-shadow: 0 14px 28px rgba(15, 23, 42, .055);
}
.leuk-dashboard-focus__item--success {
    --leuk-focus-tone-rgb: 4, 120, 87;
    --leuk-focus-tone-color: #047857;
}
.leuk-dashboard-focus__item--warning {
    --leuk-focus-tone-rgb: 180, 83, 9;
    --leuk-focus-tone-color: #b45309;
}
.leuk-dashboard-focus__item--danger {
    --leuk-focus-tone-rgb: 185, 28, 28;
    --leuk-focus-tone-color: #b91c1c;
}
.leuk-dashboard-focus__item--neutral {
    --leuk-focus-tone-rgb: 100, 116, 139;
    --leuk-focus-tone-color: #64748b;
}
.leuk-dashboard-focus__icon {
    width: 2.8rem;
    height: 2.8rem;
    display: grid;
    place-items: center;
    border-radius: .9rem;
    background: #fff;
    border: 1px solid rgba(var(--leuk-focus-tone-rgb), .18);
    color: var(--leuk-focus-tone-color);
    font-size: 1.24rem;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.64);
}
.leuk-dashboard-focus__copy {
    display: block;
    min-width: 0;
}
.leuk-dashboard-focus__copy em,
.leuk-dashboard-focus__copy strong,
.leuk-dashboard-focus__copy small {
    display: block;
    min-width: 0;
}
.leuk-dashboard-focus__copy em {
    color: var(--leuk-focus-tone-color);
    font-size: .62rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .14em;
    line-height: 1;
    text-transform: uppercase;
}
.leuk-dashboard-focus__copy strong {
    margin-top: .28rem;
    overflow: hidden;
    color: var(--leuk-iron);
    font-size: .94rem;
    font-weight: 850;
    line-height: 1.22;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.leuk-dashboard-focus__copy small {
    margin-top: .22rem;
    color: var(--leuk-slate);
    font-size: .78rem;
    line-height: 1.35;
}
.leuk-dashboard-focus__value {
    min-width: 2.6rem;
    padding: .5rem .58rem;
    border-radius: .85rem;
    background: #fff;
    border: 1px solid rgba(var(--leuk-focus-tone-rgb), .18);
    color: var(--leuk-focus-tone-color);
    font-size: .95rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
}
.leuk-dashboard-primary-grid {
    margin-top: .15rem;
}
.leuk-dashboard-secondary-grid {
    opacity: .96;
}
.leuk-dashboard-support-grid {
    margin-bottom: 1.05rem !important;
}
@media (min-width: 1280px) {
    .leuk-dashboard-support-grid.crm-kpi-grid,
    .leuk-dashboard-support-grid.leuk-kpi-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (max-width: 1120px) {
    .leuk-dashboard-focus__grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 640px) {
    .leuk-dashboard-focus {
        border-radius: 1.15rem;
        padding: .85rem;
    }
    .leuk-dashboard-focus__item {
        grid-template-columns: auto minmax(0, 1fr);
    }
    .leuk-dashboard-focus__value {
        grid-column: 2;
        justify-self: start;
    }
}

/* Manuais por plataforma — renderizador comum Portal/CRM */
.leuk-manual-page {
    --leuk-manual-color: var(--leuk-pacific, #1985a1);
    --leuk-manual-rgb: var(--leuk-pacific-rgb, 25, 133, 161);
    --leuk-manual-dark: #0f3f4c;
}

.leuk-manual-page--crm {
    --leuk-manual-color: var(--leuk-sales, #f97316);
    --leuk-manual-rgb: var(--leuk-sales-rgb, 249, 115, 22);
    --leuk-manual-dark: #7c2d12;
}

.leuk-manual-page .leuk-manual-hero {
    background:
        radial-gradient(circle at 8% 10%, rgba(var(--leuk-manual-rgb), .28), transparent 34%),
        radial-gradient(circle at 88% 18%, rgba(var(--leuk-manual-rgb), .18), transparent 32%),
        linear-gradient(135deg, #101724 0%, #172033 54%, #080d16 100%);
}

.leuk-manual-page .leuk-manual-eyebrow,
.leuk-manual-page .leuk-manual-card__icon,
.leuk-manual-page .leuk-manual-steps-list li span,
.leuk-manual-page .leuk-manual-module span {
    color: var(--leuk-manual-color);
}

.leuk-manual-page .leuk-manual-guide__steps span {
    background: var(--leuk-manual-color);
}

.leuk-manual-page .leuk-manual-actions a {
    border-color: rgba(var(--leuk-manual-rgb), .24);
    color: var(--leuk-manual-dark);
    background: rgba(var(--leuk-manual-rgb), .08);
}

.leuk-manual-page .leuk-manual-actions a:hover {
    border-color: rgba(var(--leuk-manual-rgb), .44);
    background: rgba(var(--leuk-manual-rgb), .14);
}

.leuk-manual-page .leuk-manual-card__icon,
.leuk-manual-page .leuk-manual-module span {
    background: rgba(var(--leuk-manual-rgb), .09);
}

.leuk-manual-page .leuk-manual-module:hover {
    border-color: rgba(var(--leuk-manual-rgb), .28);
}

.leuk-manual-page--crm .leuk-manual-alerts p {
    border-color: rgba(var(--leuk-sales-rgb, 249, 115, 22), .22);
    color: #7c2d12;
    background: rgba(var(--leuk-sales-rgb, 249, 115, 22), .08);
}

/* Sidebar: acesso ao manual fora dos menus operacionais */
.leuk-sidebar-manual {
    flex-shrink: 0;
    padding: .75rem .85rem .65rem;
    border-top: 1px solid rgba(255, 255, 255, .08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .025), rgba(255, 255, 255, 0)),
        rgba(8, 13, 22, .32);
}

.leuk-sidebar-manual--portal {
    --leuk-sidebar-manual-rgb: var(--leuk-pacific-rgb, 25, 133, 161);
    --leuk-sidebar-manual-color: var(--leuk-pacific, #1985a1);
}

.leuk-sidebar-manual--crm {
    --leuk-sidebar-manual-rgb: var(--leuk-sales-rgb, 249, 115, 22);
    --leuk-sidebar-manual-color: var(--leuk-sales, #f97316);
}

.leuk-sidebar-manual__link {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .7rem;
    min-height: 3.75rem;
    padding: .78rem .82rem;
    border: 1px solid rgba(var(--leuk-sidebar-manual-rgb), .34);
    border-radius: 1rem;
    color: rgba(245, 248, 251, .82);
    background:
        radial-gradient(circle at 8% 18%, rgba(var(--leuk-sidebar-manual-rgb), .16), transparent 42%),
        rgba(255, 255, 255, .035);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055);
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

.leuk-sidebar-manual__link:hover,
.leuk-sidebar-manual__link:focus-visible {
    color: #fff;
    border-color: rgba(var(--leuk-sidebar-manual-rgb), .68);
    background:
        radial-gradient(circle at 8% 18%, rgba(var(--leuk-sidebar-manual-rgb), .26), transparent 46%),
        rgba(var(--leuk-sidebar-manual-rgb), .09);
    transform: translateY(-1px);
    outline: none;
}

.leuk-sidebar-manual__link.is-active {
    color: #fff;
    border-color: rgba(var(--leuk-sidebar-manual-rgb), .82);
    background:
        linear-gradient(135deg, rgba(var(--leuk-sidebar-manual-rgb), .22), rgba(255, 255, 255, .045)),
        rgba(var(--leuk-sidebar-manual-rgb), .12);
}

.leuk-sidebar-manual__icon {
    width: 2.1rem;
    height: 2.1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .8rem;
    color: var(--leuk-sidebar-manual-color);
    background: rgba(var(--leuk-sidebar-manual-rgb), .12);
    border: 1px solid rgba(var(--leuk-sidebar-manual-rgb), .22);
    font-size: 1.05rem;
}

.leuk-sidebar-manual__body {
    min-width: 0;
    display: grid;
    gap: .16rem;
}

.leuk-sidebar-manual__body strong,
.leuk-sidebar-manual__body small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leuk-sidebar-manual__body strong {
    font-size: .84rem;
    font-weight: 700;
    letter-spacing: -.01em;
}

.leuk-sidebar-manual__body small {
    font-size: .68rem;
    line-height: 1.35;
    color: rgba(230, 238, 247, .56);
}

.leuk-sidebar-manual__arrow {
    color: rgba(var(--leuk-sidebar-manual-rgb), .78);
    font-size: .95rem;
    transition: transform .18s ease;
}

.leuk-sidebar-manual__link:hover .leuk-sidebar-manual__arrow,
.leuk-sidebar-manual__link:focus-visible .leuk-sidebar-manual__arrow {
    transform: translate(1px, -1px);
}

/* Tooltips flutuantes genéricos.
   Usados quando o elemento pode estar dentro de cards/painéis com overflow que cortam tooltips absolutos. */
.leuk-floating-tooltip {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2147483001;
    width: max-content;
    max-width: min(22rem, calc(100vw - 1.5rem));
    padding: .72rem .85rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 1rem;
    background: rgba(70,73,76,.98);
    color: #fff;
    font-size: .78rem;
    font-weight: 500;
    line-height: 1.42;
    box-shadow: 0 20px 46px rgba(15,23,42,.28), 0 4px 14px rgba(15,23,42,.14);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translate3d(var(--leuk-floating-tooltip-x, 0), var(--leuk-floating-tooltip-y, 0), 0) scale(.985);
    transition: opacity .14s ease, visibility .14s ease, transform .14s ease;
}

.leuk-floating-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translate3d(var(--leuk-floating-tooltip-x, 0), var(--leuk-floating-tooltip-y, 0), 0) scale(1);
}

.leuk-floating-tooltip strong {
    display: block;
    margin-bottom: .22rem;
    color: rgba(255,255,255,.58);
    font-size: .64rem;
    font-weight: 900;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.leuk-floating-tooltip span {
    display: block;
}

.leuk-floating-tooltip::before {
    content: '';
    position: absolute;
    width: .62rem;
    height: .62rem;
    background: inherit;
    border: inherit;
    border-right: 0;
    border-bottom: 0;
}

.leuk-floating-tooltip[data-placement="bottom"]::before {
    top: -.31rem;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
}

.leuk-floating-tooltip[data-placement="top"]::before {
    bottom: -.31rem;
    left: 50%;
    transform: translateX(-50%) rotate(225deg);
}

.leuk-floating-tooltip[data-placement="right"]::before {
    left: -.31rem;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}

.leuk-floating-tooltip[data-placement="left"]::before {
    right: -.31rem;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}

@media (prefers-reduced-motion: reduce) {
    .leuk-floating-tooltip {
        transition: none !important;
    }
}

/* Hotfix final — navegação entre plataformas mais legível e tooltips flutuantes.
   Mantém a cor própria de cada módulo em hover/ativo e desativa tooltips presos à sidebar. */
.leuk-sidebar-room-dock {
    position: relative;
    display: flex;
    align-items: center;
    gap: .52rem;
    width: max-content;
    max-width: 100%;
    padding: .42rem;
    margin: .05rem 0 .7rem;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 1rem;
    background: linear-gradient(135deg, rgba(255,255,255,.052), rgba(255,255,255,.018));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
    overflow: visible;
}

.leuk-sidebar-room-link {
    --leuk-sidebar-module-color: var(--leuk-platform-color, var(--leuk-pacific));
    --leuk-sidebar-module-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb));
    position: relative;
    width: 2.65rem;
    height: 2.55rem;
    border-radius: .72rem;
    border: 1px solid rgba(var(--leuk-sidebar-module-rgb), .42);
    background: rgba(var(--leuk-sidebar-module-rgb), .075);
    color: var(--leuk-sidebar-module-color);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
    transform: translateZ(0);
    transition:
        background-color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease,
        opacity .18s ease;
}

.leuk-sidebar-room-link::after {
    display: none !important;
    content: none !important;
}

.leuk-sidebar-room-link i {
    color: currentColor;
    font-size: 1.36rem;
    transition: transform .18s ease, filter .18s ease, opacity .18s ease;
    filter: drop-shadow(0 6px 12px rgba(var(--leuk-sidebar-module-rgb), .16));
}

.leuk-sidebar-room-link:hover,
.leuk-sidebar-room-link:focus-visible {
    color: var(--leuk-sidebar-module-color);
    border-color: rgba(var(--leuk-sidebar-module-rgb), .78);
    background: rgba(var(--leuk-sidebar-module-rgb), .20);
    box-shadow:
        inset 0 0 0 1px rgba(var(--leuk-sidebar-module-rgb), .10),
        0 14px 28px rgba(var(--leuk-sidebar-module-rgb), .12),
        0 8px 18px rgba(0,0,0,.13);
    transform: translateY(-1px);
}

.leuk-sidebar-room-link:hover i,
.leuk-sidebar-room-link:focus-visible i {
    transform: scale(1.05);
    filter: drop-shadow(0 8px 16px rgba(var(--leuk-sidebar-module-rgb), .22));
}

.leuk-sidebar-room-link.is-active {
    color: var(--leuk-sidebar-module-color);
    border-color: rgba(var(--leuk-sidebar-module-rgb), .95);
    background:
        radial-gradient(circle at 30% 18%, rgba(var(--leuk-sidebar-module-rgb), .25), transparent 56%),
        linear-gradient(135deg, rgba(var(--leuk-sidebar-module-rgb), .22), rgba(var(--leuk-sidebar-module-rgb), .10));
    box-shadow:
        inset 0 0 0 1px rgba(var(--leuk-sidebar-module-rgb), .18),
        0 0 0 3px rgba(var(--leuk-sidebar-module-rgb), .105),
        0 16px 32px rgba(var(--leuk-sidebar-module-rgb), .13);
}

.leuk-sidebar-room-link.is-active::before {
    content: '';
    position: absolute;
    left: 50%;
    right: auto;
    bottom: .18rem;
    width: .92rem;
    height: .16rem;
    transform: translateX(-50%);
    border-radius: 999px;
    background: currentColor;
    opacity: .98;
    box-shadow: 0 0 14px rgba(var(--leuk-sidebar-module-rgb), .38);
}

.leuk-sidebar-room-link.is-active i {
    transform: translateY(-.05rem);
}

.leuk-sidebar-room-link--portal {
    --leuk-sidebar-module-color: var(--leuk-pacific, #1985a1);
    --leuk-sidebar-module-rgb: var(--leuk-pacific-rgb, 25, 133, 161);
}
.leuk-sidebar-room-link--crm {
    --leuk-sidebar-module-color: var(--leuk-sales, #f97316);
    --leuk-sidebar-module-rgb: var(--leuk-sales-rgb, 249, 115, 22);
}
.leuk-sidebar-room-link--modulo {
    --leuk-sidebar-module-color: var(--leuk-platform-color, var(--leuk-pacific, #1985a1));
    --leuk-sidebar-module-rgb: var(--leuk-platform-color-rgb, var(--leuk-pacific-rgb, 25, 133, 161));
}

.leuk-module-tooltip {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2147483000;
    max-width: min(18rem, calc(100vw - 1.5rem));
    padding: .5rem .68rem;
    border: 1px solid rgba(15,23,42,.12);
    border-radius: .82rem;
    background: rgba(255,255,255,.98);
    color: #101828;
    font-size: .75rem;
    font-weight: 650;
    line-height: 1.25;
    letter-spacing: -.01em;
    white-space: normal;
    overflow-wrap: anywhere;
    box-shadow: 0 18px 38px rgba(15,23,42,.18), 0 3px 10px rgba(15,23,42,.08);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translate3d(var(--leuk-tooltip-x, 0), var(--leuk-tooltip-y, 0), 0) scale(.985);
    transition: opacity .14s ease, visibility .14s ease, transform .14s ease;
}

.leuk-module-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translate3d(var(--leuk-tooltip-x, 0), var(--leuk-tooltip-y, 0), 0) scale(1);
}

.leuk-module-tooltip::before {
    content: '';
    position: absolute;
    width: .58rem;
    height: .58rem;
    background: inherit;
    border: inherit;
    border-right: 0;
    border-bottom: 0;
}

.leuk-module-tooltip[data-placement="right"]::before {
    left: -.28rem;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}
.leuk-module-tooltip[data-placement="left"]::before {
    right: -.28rem;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
.leuk-module-tooltip[data-placement="bottom"]::before {
    top: -.28rem;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
}
.leuk-module-tooltip[data-placement="top"]::before {
    bottom: -.28rem;
    left: 50%;
    transform: translateX(-50%) rotate(225deg);
}

@media (max-width: 767px) {
    .leuk-sidebar-room-dock {
        width: auto;
        margin-right: .25rem;
    }
    .leuk-sidebar-room-link {
        width: 2.58rem;
        height: 2.52rem;
    }
    .leuk-module-tooltip {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .leuk-sidebar-room-link,
    .leuk-sidebar-room-link i,
    .leuk-module-tooltip {
        transition: none !important;
    }
}

/* Hotfix 102.1 — sidebar responsiva com link do manual no fundo
   Mantém o manual fora do menu operacional, mas impede que o bloco inferior desalinhe em mobile. */
body[data-app-shell] #sidebar {
    max-height: 100dvh;
    overflow: hidden !important;
}

body[data-app-shell] #sidebar > nav,
body[data-app-shell] #sidebar > nav.custom-scrollbar {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

body[data-app-shell] #sidebar .leuk-sidebar-room-dock {
    max-width: 100%;
}

body[data-app-shell] #sidebar .leuk-sidebar-manual,
body[data-app-shell] #sidebar .leuk-app-footer-sidebar {
    flex: 0 0 auto;
}

body[data-app-shell] #sidebar .leuk-sidebar-manual__link,
body[data-app-shell] #sidebar .leuk-app-footer-sidebar,
body[data-app-shell] #sidebar .leuk-app-footer-sidebar > div {
    box-sizing: border-box;
    max-width: 100%;
}

body[data-app-shell] #sidebar .leuk-sidebar-manual__body strong,
body[data-app-shell] #sidebar .leuk-sidebar-manual__body small,
body[data-app-shell] #sidebar .leuk-app-footer-sidebar .truncate {
    min-width: 0;
}

@media (max-width: 767px) {
    body[data-app-shell] #sidebar {
        width: min(20rem, calc(100vw - 1rem)) !important;
        max-width: calc(100vw - 1rem) !important;
        height: 100dvh !important;
    }

    body[data-app-shell] #sidebar > nav,
    body[data-app-shell] #sidebar > nav.custom-scrollbar {
        padding-top: .85rem !important;
        padding-bottom: .85rem !important;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual {
        padding: .55rem .65rem .5rem !important;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__link {
        grid-template-columns: auto minmax(0, 1fr);
        gap: .55rem;
        min-height: 0;
        padding: .62rem .68rem;
        border-radius: .9rem;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__icon {
        width: 1.9rem;
        height: 1.9rem;
        border-radius: .72rem;
        font-size: .98rem;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__arrow {
        display: none;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__body {
        gap: .1rem;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__body strong,
    body[data-app-shell] #sidebar .leuk-sidebar-manual__body small {
        white-space: normal;
        overflow: visible;
        text-overflow: clip;
        overflow-wrap: anywhere;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__body strong {
        font-size: .78rem;
        line-height: 1.22;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__body small {
        font-size: .63rem;
        line-height: 1.25;
    }

    body[data-app-shell] #sidebar .leuk-app-footer-sidebar {
        padding: .45rem .65rem .55rem !important;
    }

    body[data-app-shell] #sidebar .leuk-app-footer-sidebar > div {
        border-radius: .9rem !important;
        padding: .55rem .65rem !important;
    }

    body[data-app-shell] #sidebar .leuk-app-footer-sidebar .truncate {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        line-height: 1.25 !important;
        letter-spacing: .12em !important;
        overflow-wrap: anywhere;
    }
}

@media (max-height: 620px) and (max-width: 767px) {
    body[data-app-shell] #sidebar .leuk-sidebar-manual {
        padding-top: .42rem !important;
        padding-bottom: .38rem !important;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__link {
        padding: .52rem .6rem;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-manual__body small {
        display: none;
    }

    body[data-app-shell] #sidebar .leuk-app-footer-sidebar {
        display: none;
    }
}

/* Hotfix 102.2 — dock de módulos estável entre Portal e CRM
   Mantém a mesma posição/dimensão dos botões e impede hover branco herdado. */
body[data-app-shell] #sidebar .leuk-sidebar-room-dock {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: .52rem !important;
    width: max-content !important;
    max-width: 100% !important;
    min-height: 3.4rem !important;
    box-sizing: border-box !important;
    margin: .05rem 0 .7rem !important;
    padding: .42rem !important;
}

body[data-app-shell] #sidebar .px-1 > .leuk-sidebar-room-dock:first-child,
body[data-app-shell] #sidebar nav > .leuk-sidebar-room-dock:first-child {
    margin-top: .05rem !important;
    margin-bottom: .7rem !important;
}

body[data-app-shell] #sidebar .leuk-sidebar-room-link {
    flex: 0 0 2.65rem !important;
    inline-size: 2.65rem !important;
    block-size: 2.55rem !important;
    min-width: 2.65rem !important;
    max-width: 2.65rem !important;
    min-height: 2.55rem !important;
    max-height: 2.55rem !important;
    box-sizing: border-box !important;
    background: rgba(var(--leuk-sidebar-module-rgb), .075) !important;
    color: var(--leuk-sidebar-module-color) !important;
}

body[data-app-shell] #sidebar .leuk-sidebar-room-link:hover,
body[data-app-shell] #sidebar .leuk-sidebar-room-link:focus-visible {
    background: rgba(var(--leuk-sidebar-module-rgb), .20) !important;
    color: var(--leuk-sidebar-module-color) !important;
    border-color: rgba(var(--leuk-sidebar-module-rgb), .78) !important;
    transform: none !important;
}

body[data-app-shell] #sidebar .leuk-sidebar-room-link:hover i,
body[data-app-shell] #sidebar .leuk-sidebar-room-link:focus-visible i {
    color: currentColor !important;
    transform: none !important;
}

body[data-app-shell] #sidebar .leuk-sidebar-room-link.is-active {
    background:
        radial-gradient(circle at 30% 18%, rgba(var(--leuk-sidebar-module-rgb), .25), transparent 56%),
        linear-gradient(135deg, rgba(var(--leuk-sidebar-module-rgb), .22), rgba(var(--leuk-sidebar-module-rgb), .10)) !important;
    color: var(--leuk-sidebar-module-color) !important;
    border-color: rgba(var(--leuk-sidebar-module-rgb), .95) !important;
    transform: none !important;
}

@media (max-width: 767px) {
    body[data-app-shell] #sidebar .leuk-sidebar-room-dock {
        width: max-content !important;
        min-height: 3.34rem !important;
        gap: .5rem !important;
        margin-right: 0 !important;
    }

    body[data-app-shell] #sidebar .leuk-sidebar-room-link {
        flex-basis: 2.58rem !important;
        inline-size: 2.58rem !important;
        block-size: 2.52rem !important;
        min-width: 2.58rem !important;
        max-width: 2.58rem !important;
        min-height: 2.52rem !important;
        max-height: 2.52rem !important;
    }
}

