@import url('https://fonts.googleapis.com/css2?family=Fira+Code&display=swap');

/* === GIST Theme Palette === */
/* #002050 - Blue (Primary Dark) */
/* #FF6600 - Orange (Primary Accent) */
/* #0099FF - Light Blue (Secondary Accent) */
/* #1BD75F - Green (Success/Tertiary Accent) */

/* === BASE BODY STYLING === */
body {
  font-family: 'Inter', 'Segoe UI', sans-serif;
  background-color: #f4f6f8; /* Keep light neutral background */
  margin: 0;
  color: #1f2937; /* Default text color slightly softened */
}

/* === APP SHELL NAVBAR === */
.dash-mantine-AppShellNavbar {
  background-color: #002050 !important; /* GIST Blue */
  color: #ffffff; /* White text on dark blue */
  padding-top: 20px;
  border-right: 1px solid #1a3a6d; /* Slightly lighter blue for border */
}

/* === NAVLINKS (Sidebar) === */
.dash-mantine-NavLink {
  color: #cbd5e1; /* Light grey text for contrast on dark blue */
  border-radius: 8px;
  margin-bottom: 4px;
  padding: 10px 16px;
  font-weight: 500;
  font-size: 14px;
  transition: background-color 0.2s ease, color 0.2s ease; /* Smooth transition */
}

/* Using Orange accent for hover/active state */
.dash-mantine-NavLink:hover {
  background-color: rgba(255, 102, 0, 0.1); /* Subtle Orange background tint on hover */
  color: #FF6600; /* GIST Orange text color on hover */
}
.dash-mantine-NavLink[data-active="true"] {
  background-color: rgba(255, 102, 0, 0.15); /* Slightly stronger Orange background tint for active */
  color: #FF6600; /* GIST Orange text color for active */
  font-weight: 600; /* Make active link slightly bolder */
}

/* Alternative Hover/Active: Less Accent, More Subtle Blue */
/*
.dash-mantine-NavLink:hover,
.dash-mantine-NavLink[data-active="true"] {
  background-color: #1a3a6d; // Slightly lighter blue background
  color: #ffffff; // White text
}
*/


/* === APP SHELL HEADER === */
.dash-mantine-AppShellHeader {
  background-color: #ffffff; /* Keep white header */
  border-bottom: 1px solid #eaecef; /* Light grey border */
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

/* === PAGE TITLE === */
.page-title {
  font-size: 18px;
  font-weight: 600;
  color: #002050; /* GIST Blue for titles */
}

/* === SECTION HEADERS === */
.section-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #002050; /* GIST Blue for section headers */
}

/* === ACCORDION === */
.dash-mantine-AccordionControl {
  font-weight: 600;
  font-size: 15px;
  color: #002050; /* GIST Blue text */
  /* Using a very light blue background */
  background-color: #e6f4ff; /* Lighter version related to #0099FF */
  border-radius: 8px;
  border: 1px solid #cce9ff; /* Subtle border */
  padding: 10px 16px; /* Ensure consistent padding */
}
.dash-mantine-AccordionControl:hover {
    background-color: #d Bqf0ff; /* Slightly darker on hover */
}


/* === PAPER BOXES === */
.dash-mantine-Paper {
  background-color: #ffffff; /* Keep white paper */
  border: 1px solid #e6e8ec; /* Light grey border */
  border-radius: 10px !important; /* Keep consistent radius */
  box-shadow: 0 1px 3px rgba(0,0,0,0.04); /* Subtle shadow */
}

/* === FORM BUTTON HOVER === */
/* General hover effect */
button.mantine-Button-root:hover {
  opacity: 0.9;
  /* Consider adding specific GIST theme button styles */
}

/* === SUGGESTED PRIMARY BUTTON STYLE === */
/* Target filled primary buttons (adjust selector if needed) */
button.mantine-Button-filled {
  background-color: #FF6600; /* GIST Orange */
  color: #ffffff; /* White text */
}
button.mantine-Button-filled:hover {
  background-color: #e65c00; /* Slightly darker orange on hover */
  opacity: 1; /* Override general opacity hover if desired */
}

/* === STICKY BUTTON GRADIENT BACKGROUND === */
.sticky-submit {
  position: sticky;
  bottom: 0;
  /* Adjusted right alignment if needed based on layout */
  /* right: 0; */
  padding: 12px 20px; /* Adjust padding as needed */
  text-align: right;
  /* Lighter gradient for subtlety */
  background: linear-gradient(to top, #ffffff 0%, #ffffffcc 50%, transparent 100%);
  border-top: 1px solid #eaecef; /* Match header/paper border */
  z-index: 10;
  margin-left: -20px; /* Counteract parent padding if needed */
  margin-right: -20px; /* Counteract parent padding if needed */
}

/* === SEARCH-LIKE TEXT INPUT STYLING === */
/* Includes Mantine input selector for better targeting */
.mantine-TextInput-input::placeholder,
input[type="text"]::placeholder {
  color: #94a3b8; /* Keep subtle placeholder color */
  font-size: 13px;
}

/* Optional: Style input borders to match theme */
.mantine-TextInput-input {
    border-color: #ced4da; /* Default light grey */
}
.mantine-TextInput-input:focus {
    border-color: #0099FF; /* GIST Light Blue on focus */
    box-shadow: 0 0 0 2px rgba(0, 153, 255, 0.2); /* Optional focus ring */
}

.zoom
{
    zoom: 200%;
}