/* Trezo Dark Theme - Official Style Overrides */

:root {
    --trezo-primary: #3182ce;
    --trezo-secondary: #e53e3e;
    --trezo-success: #1b6d41;
    --trezo-warning: #d69e2e;
    --trezo-info: #3182ce;
    --trezo-danger: #e53e3e;
}

/* Dark mode color palette matching Trezo official theme */
.dark {
    --trezo-bg-primary: #1f1f1f;
    --trezo-bg-secondary: #111827;
    --trezo-bg-tertiary: #1f2937;
    --trezo-text-primary: #f9fafb;
    --trezo-text-secondary: #d1d5db;
    --trezo-text-muted: #9ca3af;
    --trezo-border: #374151;
    --trezo-shadow: rgba(0, 0, 0, 0.25);
}

/* Body and main layout */
.dark body {
    background-color: var(--trezo-bg-primary) !important;
    color: var(--trezo-text-primary) !important;
}

/* Authentication pages specific styling */
.dark .min-h-screen {
    background-color: var(--trezo-bg-primary) !important;
}



.dark .auth-card,
.dark .login-card,
.dark .register-card,
.dark .bg-white {
    background-color: var(--trezo-bg-secondary) !important;
    border-color: var(--trezo-border) !important;
    box-shadow: 0 10px 15px -3px var(--trezo-shadow) !important;
}

/* Override Tailwind classes */
.dark .bg-white {
    background-color: var(--trezo-bg-secondary) !important;
}

.dark .text-gray-500,
.dark .text-gray-600,
.dark .text-gray-700,
.dark .text-gray-800,
.dark .text-gray-900,
.dark .text-black {
    color: var(--trezo-text-primary) !important;
}

.dark .text-gray-400 {
    color: var(--trezo-text-muted) !important;
}

.dark .border-gray-200,
.dark .border-gray-300,
.dark .border {
    border-color: var(--trezo-border) !important;
}

/* Form elements */
.dark input[type="text"],
.dark input[type="email"],
.dark input[type="password"],
.dark input[type="tel"],
.dark input[type="number"],
.dark textarea,
.dark select {
    background-color: var(--trezo-bg-tertiary) !important;
    border-color: var(--trezo-border) !important;
    color: var(--trezo-text-primary) !important;
}

.dark input::placeholder,
.dark textarea::placeholder {
    color: var(--trezo-text-muted) !important;
}

.dark input:focus,
.dark textarea:focus,
.dark select:focus {
    border-color: var(--trezo-primary) !important;
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
    background-color: var(--trezo-bg-tertiary) !important;
}

/* Buttons - usando o estilo correto do Trezo */
.dark .bg-\[\#fe7a36\],
.dark button[style*="background"],
.dark .btn-primary {
    background-color: #fe7a36 !important;
    border-color: #fe7a36 !important;
    color: white !important;
}

.dark .bg-\[\#fe7a36\]:hover,
.dark .btn-primary:hover {
    background-color: #e56728 !important;
    border-color: #e56728 !important;
}

.dark .btn-secondary {
    background-color: var(--trezo-bg-tertiary) !important;
    border-color: var(--trezo-border) !important;
    color: var(--trezo-text-primary) !important;
}

.dark .btn-outline-primary {
    background-color: transparent !important;
    border-color: #fe7a36 !important;
    color: #fe7a36 !important;
}

/* Links */
.dark a {
    color: #fe7a36 !important;
}

.dark a:hover {
    color: #e56728 !important;
}

/* Toggle switch styling - usando as cores corretas do Trezo */
.dark .light-dark-toggle {
    background-color: rgba(254, 122, 54, 0.1) !important;
    color: #fe7a36 !important;
    border: 1px solid rgba(254, 122, 54, 0.2) !important;
    border-radius: 0.5rem !important;
    padding: 0.5rem !important;
    transition: all 0.3s ease !important;
}

.dark .light-dark-toggle:hover {
    background-color: rgba(254, 122, 54, 0.2) !important;
    transform: scale(1.05) !important;
}

/* Cards and panels */
.dark .card,
.dark .panel {
    background-color: var(--trezo-bg-secondary) !important;
    border-color: var(--trezo-border) !important;
}

/* Dropdowns */
.dark .dropdown-menu {
    background-color: var(--trezo-bg-secondary) !important;
    border-color: var(--trezo-border) !important;
    box-shadow: 0 10px 15px -3px var(--trezo-shadow) !important;
}

.dark .dropdown-item {
    color: var(--trezo-text-secondary) !important;
}

.dark .dropdown-item:hover {
    background-color: var(--trezo-bg-tertiary) !important;
    color: var(--trezo-text-primary) !important;
}

/* Alerts */
.dark .alert {
    border-color: var(--trezo-border) !important;
}

.dark .alert-success {
    background-color: rgba(56, 161, 105, 0.1) !important;
    border-color: var(--trezo-success) !important;
    color: #68d391 !important;
}

.dark .alert-danger {
    background-color: rgba(229, 62, 62, 0.1) !important;
    border-color: var(--trezo-danger) !important;
    color: #fc8181 !important;
}

.dark .alert-warning {
    background-color: rgba(214, 158, 46, 0.1) !important;
    border-color: var(--trezo-warning) !important;
    color: #f6e05e !important;
}

.dark .alert-info {
    background-color: rgba(49, 130, 206, 0.1) !important;
    border-color: var(--trezo-info) !important;
    color: #90cdf4 !important;
}

/* Specific layout improvements */
.dark .rounded-\[10px\],
.dark .rounded-lg,
.dark .rounded {
    background-color: var(--trezo-bg-secondary) !important;
}

.dark .shadow-lg,
.dark .shadow {
    box-shadow: 0 10px 15px -3px var(--trezo-shadow) !important;
}

/* Image handling in dark mode */
.dark img {
    opacity: 0.9;
}

/* Custom scrollbar for dark mode */
.dark ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.dark ::-webkit-scrollbar-track {
    background-color: var(--trezo-bg-tertiary);
}

.dark ::-webkit-scrollbar-thumb {
    background-color: var(--trezo-border);
    border-radius: 4px;
}

.dark ::-webkit-scrollbar-thumb:hover {
    background-color: var(--trezo-text-muted);
}

/* Force dark background on all containers */
.dark .min-h-screen,
.dark .h-screen,
.dark .w-full,
.dark .container,
.dark .wrapper {
    background-color: #1f1f1f00 !important;
}

/* Override any remaining light backgrounds */
.dark [class*="bg-white"],
.dark [class*="bg-gray-50"],
.dark [class*="bg-gray-100"] {
    background-color: var(--trezo-bg-secondary) !important;
}

.dark [class*="bg-gray-200"],
.dark [class*="bg-gray-300"] {
    background-color: var(--trezo-bg-tertiary) !important;
}

/* Ensure proper text contrast */
.dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6 {
    color: var(--trezo-text-primary) !important;
}

.dark label {
    color: var(--trezo-text-primary) !important;
}

/* Logo dark mode handling */
.dark .logo-light {
    display: none !important;
}

.dark .logo-dark {
    display: block !important;
}

/* Logo dark mode handling - Ensure proper visibility */
.dark .dark\:hidden {
    display: none !important;
}

.dark .dark\:inline-block {
    display: inline-block !important;
}

/* Force logo visibility in dark mode */
html.dark img[src*="logo-big.svg"] {
    display: none !important;
}

html.dark img[src*="white-logo-big.svg"] {
    display: inline-block !important;
}


/* Authentication specific improvements */
.dark .auth-left-content {
    background-color: var(--trezo-bg-primary) !important;
}

.dark .auth-right-content {
    background-color: var(--trezo-bg-secondary) !important;
}

.dark #navbar.is-sticky {
  z-index: 999;
  background-color: var(--trezo-bg-primary) !important;
}