/* Global background image + overrides to reveal it */
html, body { height: 100%; }
body {
  background: url('ai-gsa2.jpg') no-repeat center center fixed !important;
  background-size: cover !important;
  position: relative;
}
body::after { content: ''; position: fixed; inset: 0; background: rgba(0,0,0,0.45); pointer-events: none; z-index: 0; }
#root, body > * { position: relative; z-index: 1; }

/* Make layout wrappers transparent so background is visible */
.bg-background, .bg-gray-100, .bg-gray-50 { background-color: transparent !important; }
/* Keep panels readable with glass effect */
.bg-white, .bg-surface {
  background-color: rgba(255,255,255,0.14) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,0.18);
}

/* Improve input readability: dark blue fields with white text */
input, textarea, select {
  background-color: #0b2a5b !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.4) !important;
}
input::placeholder, textarea::placeholder {
  color: rgba(255,255,255,0.9) !important;
}
/* Focus ring for better contrast */
input:focus, textarea:focus, select:focus {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.8) !important;
}

/* Global readability boxes for text content */
h1, h2, h3, h4, h5, h6 {
  background-color: rgba(11, 42, 91, 0.95);
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 10px;
  padding: 10px 14px;
}

p, label, small {
  background-color: rgba(11, 42, 91, 0.92);
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 8px;
  padding: 6px 10px;
  display: inline-block;
}

ul, ol {
  padding-left: 1.25rem;
}
li {
  background-color: rgba(11, 42, 91, 0.9);
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 8px;
  padding: 6px 10px;
  margin: 4px 0;
}

.text-text-primary, .text-text-secondary {
  color: #ffffff !important;
}
