/* ChatTrade public front themes.
   The body class is set from Admin > Configuracoes globais > Tema do front. */

:root,
body.front-theme-dark {
    --ct-front-bg: #020617;
    --ct-front-bg-soft: #07111f;
    --ct-front-surface: #0f172a;
    --ct-front-card: rgba(15, 23, 42, .78);
    --ct-front-card-solid: #0f172a;
    --ct-front-border: rgba(255, 255, 255, .10);
    --ct-front-text: #ffffff;
    --ct-front-muted: rgba(226, 232, 240, .72);
    --ct-front-soft: rgba(255, 255, 255, .07);
    --ct-front-input: rgba(15, 23, 42, .78);
    --ct-front-shadow: rgba(0, 0, 0, .34);
}

body.front-theme-light {
    --ct-front-bg: #ffffff;
    --ct-front-bg-soft: #f8fafc;
    --ct-front-surface: #f8fafc;
    --ct-front-card: #ffffff;
    --ct-front-card-solid: #ffffff;
    --ct-front-border: rgba(15, 23, 42, .12);
    --ct-front-text: #0f172a;
    --ct-front-muted: #475569;
    --ct-front-soft: rgba(15, 23, 42, .055);
    --ct-front-input: #ffffff;
    --ct-front-shadow: rgba(15, 23, 42, .10);
}

body.front-theme-dark {
    background: var(--ct-front-bg) !important;
    color: var(--ct-front-text) !important;
}

body.front-theme-light,
body.front-theme-light::before,
body.front-theme-light::after {
    background: var(--ct-front-bg) !important;
    color: var(--ct-front-text) !important;
}

body.front-theme-light .content,
body.front-theme-light .main-content,
body.front-theme-light .public-main,
body.front-theme-light .content-area,
body.front-theme-light .page-wrapper,
body.front-theme-light .chat-page,
body.front-theme-light .chat-layout,
body.front-theme-light .client-page-center,
body.front-theme-light main,
body.front-theme-light section {
    color: var(--ct-front-text) !important;
}

body.front-theme-light .content,
body.front-theme-light .main-content,
body.front-theme-light .public-main,
body.front-theme-light .page-wrapper,
body.front-theme-light main {
    background: var(--ct-front-bg) !important;
}

body.front-theme-light .ct-front-topbar,
body.front-theme-light .sidebar.front-sidebar,
body.front-theme-light .sidebar {
    background: rgba(248, 250, 252, .97) !important;
    border-color: var(--ct-front-border) !important;
    color: var(--ct-front-text) !important;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .08) !important;
}

body.front-theme-light .ct-front-brand,
body.front-theme-light .ct-front-brand:hover,
body.front-theme-light .ct-front-nav-link,
body.front-theme-light .menu-item,
body.front-theme-light .menu-item:hover,
body.front-theme-light .market-title,
body.front-theme-light .company-name,
body.front-theme-light h1,
body.front-theme-light h2,
body.front-theme-light h3,
body.front-theme-light h4,
body.front-theme-light h5,
body.front-theme-light h6 {
    color: var(--ct-front-text) !important;
}

body.front-theme-light .ct-front-brand-copy small,
body.front-theme-light .ct-front-nav-link,
body.front-theme-light .market-subtitle,
body.front-theme-light .company-segment,
body.front-theme-light .company-description,
body.front-theme-light .ct-product-desc,
body.front-theme-light .text-muted,
body.front-theme-light .text-secondary,
body.front-theme-light p,
body.front-theme-light small,
body.front-theme-light em {
    color: var(--ct-front-muted) !important;
}

body.front-theme-light .ct-front-nav-link:hover,
body.front-theme-light .menu-item:hover {
    background: rgba(14, 165, 233, .10) !important;
}

body.front-theme-light .glass,
body.front-theme-light .glass-card,
body.front-theme-light .card,
body.front-theme-light .company-card,
body.front-theme-light .avatar-panel,
body.front-theme-light .chat-panel,
body.front-theme-light .chat-card,
body.front-theme-light .product-card,
body.front-theme-light .ct-product-card,
body.front-theme-light .market-hero,
body.front-theme-light .hero,
body.front-theme-light .hero-section,
body.front-theme-light .ct-page-hero,
body.front-theme-light .about-hero,
body.front-theme-light .client-page-center,
body.front-theme-light .front-chat-shell,
body.front-theme-light .plans-page,
body.front-theme-light .plan-card,
body.front-theme-light .empty-state,
body.front-theme-light .auth-reset,
body.front-theme-light .front-history-hero,
body.front-theme-light .front-history-card {
    background: var(--ct-front-card) !important;
    border-color: var(--ct-front-border) !important;
    color: var(--ct-front-text) !important;
    box-shadow: 0 18px 55px var(--ct-front-shadow) !important;
}

body.front-theme-light .promo-stage {
    background:
        radial-gradient(circle at 20% 20%, rgba(14, 165, 233, .16), transparent 28%),
        radial-gradient(circle at 84% 28%, rgba(59, 130, 246, .14), transparent 24%),
        linear-gradient(135deg, #ffffff, #f8fafc) !important;
    border-color: var(--ct-front-border) !important;
    color: var(--ct-front-text) !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .10) !important;
}

body.front-theme-light .promo-video-slot,
body.front-theme-light .promo-badge,
body.front-theme-light .segment-chip,
body.front-theme-light .meta-pill,
body.front-theme-light .flow-illustration,
body.front-theme-light .flow-step,
body.front-theme-light .ct-contact-pill,
body.front-theme-light .language-switcher,
body.front-theme-light .messages,
body.front-theme-light .chat-body,
body.front-theme-light .avatar-frame,
body.front-theme-light .unity-avatar-container {
    background: var(--ct-front-bg-soft) !important;
    border-color: var(--ct-front-border) !important;
    color: var(--ct-front-text) !important;
}

body.front-theme-light .segment-chip:hover,
body.front-theme-light .segment-chip.active {
    color: var(--ct-front-text) !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, .10) !important;
}

body.front-theme-light .company-card::before {
    opacity: .11 !important;
}

body.front-theme-light .ai,
body.front-theme-light .msg.assistant,
body.front-theme-light .message.ai,
body.front-theme-light .front-history-message.assistant {
    background: #f1f5f9 !important;
    color: var(--ct-front-text) !important;
    border-color: var(--ct-front-border) !important;
}

body.front-theme-light .user,
body.front-theme-light .msg.user,
body.front-theme-light .message.user,
body.front-theme-light .front-history-message.user {
    color: #ffffff !important;
}

body.front-theme-light .form-control,
body.front-theme-light input,
body.front-theme-light textarea,
body.front-theme-light select,
body.front-theme-light .ct-company-search {
    background: var(--ct-front-input) !important;
    color: var(--ct-front-text) !important;
    border-color: var(--ct-front-border) !important;
}

body.front-theme-light input::placeholder,
body.front-theme-light textarea::placeholder {
    color: #64748b !important;
}

body.front-theme-light select option {
    background: #ffffff;
    color: #0f172a;
}

body.front-theme-light .ct-product-image,
body.front-theme-light .company-logo,
body.front-theme-light .company-logo-fallback {
    background: #ffffff !important;
}

body.front-theme-light .ct-human-button,
body.front-theme-light a:not(.btn):not(.ct-auth-login):not(.ct-auth-register):not(.ct-auth-logout):not(.btn-company):not(.home-action-btn):not(.promo-cta) {
    color: var(--ct-front-text) !important;
}

body.front-theme-light .ct-front-sidebar-toggle,
body.front-theme-light .front-sidebar-toggle-button,
body.front-theme-light .sidebar-restore-button,
body.front-theme-light .ct-top-nav-toggle,
body.front-theme-light .sidebar-toggle {
    background: #ffffff !important;
    color: var(--ct-front-text) !important;
    border-color: var(--ct-front-border) !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .12) !important;
}

body.front-theme-light .front-brazilian-tech-footer,
body.front-theme-light .ct-front-footer,
body.front-theme-light .ct-front-footer * {
    color: rgba(15, 23, 42, .72) !important;
}
