/* Professional Theme Styles for 360Mail */

/* CSS Custom Properties - Override default font variables */
:root {
  --body-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --head-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Universal font application - highest specificity to override all other styles, excluding icons */
*:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]) {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Base styles for professional theme - Using higher specificity to override common.css, excluding icons */
html body.professional-theme,
html .professional-theme,
html body.professional-theme *:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]),
body.professional-theme,
body.professional-theme *:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]) {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Specific font declarations for elements that commonly don't inherit fonts, excluding icons */
button:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
input:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
textarea:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
select:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]),
.btn:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
.form-control:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
.card:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]),
h1:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
h2:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
h3:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
h4:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
h5:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
h6:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]),
p:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
span:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
div:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
a:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]), 
label:not(.fas):not(.far):not(.fab):not(.fa):not(i[class*="fa-"]):not([class*="fa-"]) {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Font Awesome icons - Override font inheritance with highest priority */
body.professional-theme .fas, 
body.professional-theme .far, 
body.professional-theme .fab, 
body.professional-theme .fa,
body.professional-theme i.fas, 
body.professional-theme i.far, 
body.professional-theme i.fab, 
body.professional-theme i.fa,
body.professional-theme [class^="fa-"], 
body.professional-theme [class*=" fa-"],
.professional-theme .fas, 
.professional-theme .far, 
.professional-theme .fab, 
.professional-theme .fa,
.professional-theme i.fas, 
.professional-theme i.far, 
.professional-theme i.fab, 
.professional-theme i.fa,
.professional-theme [class^="fa-"], 
.professional-theme [class*=" fa-"],
.fas, .far, .fab, .fa, 
i.fas, i.far, i.fab, i.fa,
[class^="fa-"], [class*=" fa-"] {
  font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 5 Free", "Font Awesome 5 Pro", "FontAwesome" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  line-height: 1 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  display: inline-block !important;
  speak: none !important;
}

body.professional-theme .far, 
body.professional-theme i.far,
.professional-theme .far, 
.professional-theme i.far,
.far, i.far {
  font-weight: 400 !important;
}

body.professional-theme .fab, 
body.professional-theme i.fab,
.professional-theme .fab, 
.professional-theme i.fab,
.fab, i.fab {
  font-weight: 400 !important;
}

body.professional-theme {
  --body-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --head-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
  background-attachment: fixed !important;
  min-height: 100vh !important;
  color: white !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

/* Create the animated background overlay */
body.professional-theme::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: 
    radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%),
    radial-gradient(circle at 40% 40%, rgba(120, 219, 255, 0.2) 0%, transparent 50%);
  pointer-events: none;
  z-index: -1;
}

/* Glassmorphism components */
body.professional-theme .glass,
.professional-theme .glass {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
  border-radius: 1.5rem !important;
}

/* Header styling */
body.professional-theme header,
.professional-theme header {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
  transition: all 0.3s ease !important;
}

/* Navigation links */
body.professional-theme nav a,
.professional-theme nav a {
  color: rgba(255, 255, 255, 0.9) !important;
  text-decoration: none !important;
  padding: 0.5rem 1rem !important;
  border-radius: 0.5rem !important;
  transition: all 0.3s ease !important;
  font-weight: 500 !important;
}

body.professional-theme nav a:hover,
.professional-theme nav a:hover {
  color: white !important;
  background: rgba(255, 255, 255, 0.1) !important;
  transform: translateY(-1px) !important;
}

/* Card components */
body.professional-theme .card,
.professional-theme .card {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 2rem !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
  transition: all 0.3s ease !important;
  overflow: hidden !important;
}

body.professional-theme .card:hover,
.professional-theme .card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}

body.professional-theme .card-body,
.professional-theme .card-body {
  padding: 1.5rem !important;
}

/* Container and layout */
body.professional-theme .container,
.professional-theme .container {
  color: white !important;
}

body.professional-theme .mantis-theme,
body.professional-theme .mantis-theme *,
.professional-theme .mantis-theme,
.professional-theme .mantis-theme * {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(20px) !important;
  border-radius: 1.5rem !important;
  color: white !important;
}

/* Text elements */
body.professional-theme h1,
body.professional-theme h2,
body.professional-theme h3,
body.professional-theme h4,
body.professional-theme h5,
body.professional-theme h6,
body.professional-theme p,
body.professional-theme span,
body.professional-theme div,
.professional-theme h1,
.professional-theme h2,
.professional-theme h3,
.professional-theme h4,
.professional-theme h5,
.professional-theme h6,
.professional-theme p,
.professional-theme span,
.professional-theme div {
  color: white !important;
}

/* Email display */
body.professional-theme .email-display,
.professional-theme .email-display {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 2rem !important;
  padding: 2rem !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
  margin: 2rem 0 !important;
}

body.professional-theme .email-text,
.professional-theme .email-text {
  font-family: 'JetBrains Mono', 'Fira Code', monospace !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: white !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3) !important;
  letter-spacing: 0.5px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Dropdown styling for email switching - Target specific dropdown elements */
body.professional-theme .text-gray-800,
body.professional-theme .hover\:text-gray-900:hover {
  color: #1f2937 !important;
}

body.professional-theme .hover\:bg-blue-50:hover {
  background: rgba(59, 130, 246, 0.1) !important;
}

/* Hide default alert system elements for professional theme */
body.professional-theme .fixed.flex.items-center.justify-center.top-0.right-0:not(.professional-alert),
body.professional-theme .fixed.w-full.max-w-sm:not(.professional-alert) {
  display: none !important;
}

/* Professional theme alert styling */
body.professional-theme .professional-alert {
  position: fixed !important;
  top: 1rem !important;
  right: 1rem !important;
  z-index: 9999 !important;
}

body.professional-theme .professional-alert div {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Ensure alert text is always readable */
body.professional-theme .professional-alert .text-gray-900 {
  color: #111827 !important;
}

body.professional-theme .professional-alert .text-gray-700 {
  color: #374151 !important;
}

/* Buttons */
body.professional-theme .btn,
.professional-theme .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.75rem 1.5rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  border-radius: 1.5rem !important;
  transition: all 0.3s ease !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 0.875rem !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

body.professional-theme .btn-primary,
.professional-theme .btn-primary {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
  color: white !important;
  box-shadow: 0 10px 25px rgba(102, 126, 234, 0.3) !important;
}

body.professional-theme .btn-primary:hover,
.professional-theme .btn-primary:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 15px 35px rgba(102, 126, 234, 0.4) !important;
}

body.professional-theme .btn-secondary,
.professional-theme .btn-secondary {
  background: rgba(255, 255, 255, 0.1) !important;
  color: white !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  backdrop-filter: blur(10px) !important;
}

/* Form controls */
body.professional-theme .form-control,
body.professional-theme input,
body.professional-theme textarea,
body.professional-theme select,
.professional-theme .form-control,
.professional-theme input,
.professional-theme textarea,
.professional-theme select {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: white !important;
  border-radius: 0.75rem !important;
  padding: 0.75rem 1rem !important;
  transition: all 0.3s ease !important;
  backdrop-filter: blur(10px) !important;
}

body.professional-theme .form-control::placeholder,
body.professional-theme input::placeholder,
body.professional-theme textarea::placeholder,
.professional-theme .form-control::placeholder,
.professional-theme input::placeholder,
.professional-theme textarea::placeholder {
  color: rgba(255, 255, 255, 0.6) !important;
}

body.professional-theme .form-control:focus,
body.professional-theme input:focus,
body.professional-theme textarea:focus,
body.professional-theme select:focus,
.professional-theme .form-control:focus,
.professional-theme input:focus,
.professional-theme textarea:focus,
.professional-theme select:focus {
  outline: none !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  background: rgba(255, 255, 255, 0.15) !important;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.1) !important;
}

/* Action buttons grid */
body.professional-theme .action-buttons,
.professional-theme .action-buttons {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  gap: 1rem !important;
  margin-top: 2rem !important;
}

body.professional-theme .action-button,
.professional-theme .action-button {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 1.5rem !important;
  padding: 1.5rem !important;
  text-align: center !important;
  color: white !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

body.professional-theme .action-button:hover,
.professional-theme .action-button:hover {
  background: rgba(255, 255, 255, 0.2) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2) !important;
}

/* Message items */
body.professional-theme .message-item,
.professional-theme .message-item {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 1.5rem !important;
  padding: 1rem !important;
  margin-bottom: 0.5rem !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  color: white !important;
}

body.professional-theme .message-item:hover,
.professional-theme .message-item:hover {
  background: rgba(255, 255, 255, 0.15) !important;
  transform: translateX(5px) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}

/* Footer */
body.professional-theme footer,
.professional-theme footer {
  background: rgba(0, 0, 0, 0.2) !important;
  backdrop-filter: blur(10px) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  margin-top: 4rem !important;
  padding: 2rem 0 !important;
}

body.professional-theme footer a,
.professional-theme footer a {
  color: rgba(255, 255, 255, 0.8) !important;
  transition: all 0.3s ease !important;
}

body.professional-theme footer a:hover,
.professional-theme footer a:hover {
  color: white !important;
  text-decoration: none !important;
}

/* Responsive design */
@media (max-width: 768px) {
  body.professional-theme .card-body,
  .professional-theme .card-body {
    padding: 1rem !important;
  }
  
  body.professional-theme .action-buttons,
  .professional-theme .action-buttons {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }
  
  body.professional-theme .action-button,
  .professional-theme .action-button {
    padding: 1rem !important;
  }
}

@media (max-width: 640px) {
  body.professional-theme .email-text,
  .professional-theme .email-text {
    font-size: 1rem !important;
    word-break: break-all !important;
  }
}

/* Loading states */
body.professional-theme .loading,
.professional-theme .loading {
  display: inline-block !important;
  width: 20px !important;
  height: 20px !important;
  border: 3px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 50% !important;
  border-top-color: white !important;
  animation: spin 1s ease-in-out infinite !important;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* Enhanced loading and error handling styles */
body.professional-theme .animate-spin {
  animation: spin 1s linear infinite !important;
}

body.professional-theme .pause-spinner {
  animation-play-state: paused !important;
}

body.professional-theme button:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

body.professional-theme #imap-error {
  animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

body.professional-theme .loading-indicator {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
}

/* Refresh button enhanced states */
body.professional-theme #refresh.loading {
  opacity: 0.7 !important;
  cursor: not-allowed !important;
}

body.professional-theme #refresh.loading .fas {
  animation: spin 1s linear infinite !important;
}

/* Error message styling */
body.professional-theme .error-message {
  background: rgba(239, 68, 68, 0.1) !important;
  border: 1px solid rgba(239, 68, 68, 0.3) !important;
  color: #fecaca !important;
  padding: 0.75rem 1rem !important;
  border-radius: 0.5rem !important;
  margin-bottom: 1rem !important;
  backdrop-filter: blur(10px) !important;
}

/* Custom scrollbar */
body.professional-theme ::-webkit-scrollbar,
.professional-theme ::-webkit-scrollbar {
  width: 8px !important;
}

body.professional-theme ::-webkit-scrollbar-track,
.professional-theme ::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.1) !important;
}

body.professional-theme ::-webkit-scrollbar-thumb,
.professional-theme ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3) !important;
  border-radius: 4px !important;
}

body.professional-theme ::-webkit-scrollbar-thumb:hover,
.professional-theme ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.5) !important;
}

/* Focus styles */
body.professional-theme *:focus,
.professional-theme *:focus {
  outline: 2px solid rgba(255, 255, 255, 0.5) !important;
  outline-offset: 2px !important;
}

/* Utility classes for compatibility */
body.professional-theme .text-white,
.professional-theme .text-white {
  color: white !important;
}

body.professional-theme .bg-opacity-20,
.professional-theme .bg-opacity-20 {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

body.professional-theme .rounded-lg,
.professional-theme .rounded-lg {
  border-radius: 0.5rem !important;
}

body.professional-theme .shadow-lg,
.professional-theme .shadow-lg {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
}

/* Override any existing theme styles */
body.professional-theme .mantis-theme,
body.professional-theme .nebula-theme,
body.professional-theme .default-theme,
.professional-theme .mantis-theme,
.professional-theme .nebula-theme,
.professional-theme .default-theme {
  background: inherit !important;
  color: inherit !important;
}

/* Make sure links are visible */
body.professional-theme a,
.professional-theme a {
  color: rgba(255, 255, 255, 0.9) !important;
  text-decoration: none !important;
}

body.professional-theme a:hover,
.professional-theme a:hover {
  color: white !important;
}

/* Print styles */
@media print {
  body.professional-theme::before,
  .professional-theme::before {
    display: none !important;
  }
  
  body.professional-theme,
  .professional-theme {
    background: white !important;
    color: black !important;
  }
  
  body.professional-theme *,
  .professional-theme * {
    color: black !important;
  }
} 

/* Compact Professional Overrides */
body.professional-theme .btn,
.professional-theme .btn {
  padding: 0.5rem 1rem !important;
  font-size: 0.8125rem !important; /* ~13px */
}

body.professional-theme nav a,
.professional-theme nav a {
  padding: 0.25rem 0.75rem !important;
  font-size: 0.875rem !important;
}

body.professional-theme .card-body,
.professional-theme .card-body {
  padding: 1rem !important;
}

body.professional-theme .action-button,
.professional-theme .action-button {
  padding: 1rem !important;
}

body.professional-theme .feature-card,
.professional-theme .feature-card {
  padding: 1.5rem !important;
}

body.professional-theme .feature-icon,
.professional-theme .feature-icon {
  width: 64px !important;
  height: 64px !important;
}

/* Typography tweaks */
body.professional-theme h1,
body.professional-theme h2,
.professional-theme h1,
.professional-theme h2 {
  letter-spacing: -0.01em !important;
}

/* Reduce section spacing */
body.professional-theme section,
.professional-theme section {
  margin-bottom: 2rem !important;
} 

/* Additional compact tweaks */
body.professional-theme .email-display,
.professional-theme .email-display {
  max-width: 100% !important;
  margin: 1rem 0 !important;
}

/* Reduce default section vertical padding */
body.professional-theme section,
.professional-theme section {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
} 

/* Hero section compact padding */
body.professional-theme .hero-section,
.professional-theme .hero-section {
  padding-top: 3rem !important;
  padding-bottom: 2rem !important;
}

/* Action buttons inline centered */
body.professional-theme .action-buttons,
.professional-theme .action-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 0.75rem !important;
}

body.professional-theme .action-button,
.professional-theme .action-button {
  padding: 0.75rem 1rem !important;
  min-width: 120px !important;
  font-size: 0.8rem !important;
} 

/* Tighten hero bottom spacing */
body.professional-theme .hero-section,
.professional-theme .hero-section {
  margin-bottom: 1rem !important;
}

/* Email display full container width */
body.professional-theme .email-display,
.professional-theme .email-display {
  width: 100% !important;
} 

/* Force Inter font on action buttons */
body.professional-theme .action-button,
.professional-theme .action-button,
body.professional-theme .action-button *,
.professional-theme .action-button * {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Enlarge email display container */
body.professional-theme .in-app-actions .max-w-md,
.professional-theme .in-app-actions .max-w-md {
  max-width: 100% !important;
}

/* Reduce top margin before in-app-actions */
body.professional-theme .in-app-actions,
.professional-theme .in-app-actions {
  margin-top: 1rem !important;
}

/* Fix border alignment and consistency */
body.professional-theme .professional-app {
  border: none !important;
}

body.professional-theme .professional-app > div {
  border-top: none !important;
  border-bottom: none !important;
}

/* Email list panel borders - ensure consistent alignment */
body.professional-theme .professional-app .w-full.lg\:w-1\/3,
body.professional-theme .professional-app .w-full.xl\:w-1\/4 {
  border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
}

/* Message content panel borders */
body.professional-theme .professional-app .flex-1.flex.flex-col {
  border: none !important;
}

/* Header and footer borders alignment */
body.professional-theme .professional-app .border-b {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}

body.professional-theme .professional-app .border-t {
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
}

body.professional-theme .professional-app .border-r {
  border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
}

/* Ensure all borders are pixel-perfect aligned */
body.professional-theme .professional-app * {
  box-sizing: border-box !important;
}

/* Fix any misaligned dividers */
body.professional-theme .professional-app .border-white\/10 {
  border-color: rgba(255, 255, 255, 0.1) !important;
}

body.professional-theme .professional-app .border-white\/20 {
  border-color: rgba(255, 255, 255, 0.2) !important;
}

/* Additional fixes for perfect alignment */
body.professional-theme .professional-app {
  height: 100vh !important;
  overflow: hidden !important;
}

body.professional-theme .professional-app .flex-1 {
  height: 100% !important;
}

/* Ensure consistent border widths */
body.professional-theme .professional-app .border-r,
body.professional-theme .professional-app .border-l,
body.professional-theme .professional-app .border-t,
body.professional-theme .professional-app .border-b {
  border-width: 1px !important;
}

/* Fix any sub-pixel rendering issues */
body.professional-theme .professional-app * {
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
}

/* Ensure headers and footers align properly */
body.professional-theme .professional-app .p-6,
body.professional-theme .professional-app .p-4 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

body.professional-theme .professional-app .border-b.border-white\/10 {
  border-bottom-width: 1px !important;
  border-bottom-style: solid !important;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

body.professional-theme .professional-app .border-t.border-white\/10 {
  border-top-width: 1px !important;
  border-top-style: solid !important;
  border-top-color: rgba(255, 255, 255, 0.1) !important;
}

body.professional-theme .professional-app .border-r.border-white\/10 {
  border-right-width: 1px !important;
  border-right-style: solid !important;
  border-right-color: rgba(255, 255, 255, 0.1) !important;
} 