/* Basic Reset for Consistency */
:root {
  box-sizing: border-box;

    --primary-color: #F1F2F6;
    --text-color: #003366;
    --text-alternate: #323232;
    --bold-blue: #007BFF;
    --header-job-class: #242728;
    --text-job-class: #323232;

   --footer-nav: #007A33;  /* cubs ivy */

    --red-job: #C93E3E;
    --yellow-job: #FFC107;
    --green-job: #4CAF50;

    --chicago-white: #ffff;
    --chicago-red: #EF002B;
    --chicago-blue: #41B6E6;

    --header-color6: #A84A4A;
    --header-color2: #002040;
    --header-color3: #a86262;
    --header-color4: #3f464d;
    --background-alternate:#c9e2f5; 

    --table-bold-text: #111;

    --github:black;

    --bee-text: #f8cd05;

    
}
.darkmode{
    --primary-color: #1a1919;
    --text-color: #E0E0E0;
    --text-alternate: #f1efef;
    --bold-blue: #f8cd05;

    --red-job: #E03C32;
    --yellow-job: #FFD301;
    --green-job: #7BB662;

    --footer-nav: #f8cd05;    

    --header-job-class: #3b3b3b;
    --header-color6: #e86464;
    --header-color2: #f4f9f9;
    --header-color3: #e85f5f;
    --header-color4: #fac2a2;
    --background-alternate:#0e0e0e; 
    --table-bold-text: #e3f6e6;
    --accent-strong-alt:  #FF8C00; 
    --text-job-class: #f7f5de;

    --github:white;
}
body{
  font-family: "DM Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  background-color: var(--primary-color);
  color: var(--text-color);
}

#dark-mode-toggle{

    background: none;
    border: none;
    padding: 1em;
    cursor: pointer;
}
#dark-mode-toggle svg:last-child{
display: none;
}
.darkmode #dark-mode-toggle svg:first-child{
    display:none;
}
.darkmode #dark-mode-toggle svg:last-child{
    display:block;
}
/* Default: show light image, hide dark image */
.dark-mode-image {
  display: none;
}
/* When the parent (e.g., body) has the dark-theme class: */
body.darkmode .light-mode-image {
  display: none;
}

body.darkmode .dark-mode-image {
  display: block;
}



svg{
    color: var(--text-color);
    border: none;
    outline: none;
    stroke: none;
    background-color: transparent;

}
header{
    display: flex;
    justify-content: space-between;
}
header a{
    padding-left: 1vw;
    padding-top: .5vw;
}

nav{
  justify-items: right;
  padding: 1vw;
}
.nav-list {
    list-style: none; /* Removes the bullet point */
    padding: 0;
    margin: 0;
}

.nav-item-back {
    display: flex;
    align-items: center; /* This centers the X and text vertically */
    gap: 8px;           /* Adds a nice space between the X and the text */
    color: var(--text-color); /* This forces the SVG to match your nav color */
    cursor: pointer;
}

.nav-item-back a {
    text-decoration: none;
    color: inherit;      /* The link will now match the X's color */
    font-weight: 500;
    display: inline-flex;
    gap: 6px;
}

.nav-item-back svg {
    display: block;
}
.nav-item-back:hover {
    background-color: var(--chicago-blue);
    color: var(--chicago-white);
    font-weight: bold;    /* Matches your project badge blue */
}



.horizontal-line {
  /* Defines the line as a 1px solid black border at the bottom of the div */
  border-bottom: 1px solid var(--text-color);
  /* Ensure the div spans the full width of its container */
  width: 100%;
}
.data-insight{
  color: var(--bold-blue);
  font-size: 2em;
  font-weight: bolder;
}

/* ------------------------------------------Global Body Styles---------------------- */
body {
  margin: 0;
  padding: 1vw 1vw;
  color: var(--text-color);
  line-height: 1.5;
  background-color: var(--primary-color);
  list-style: none;
}
@media (max-width: 900px){
body{
 line-height: 1.25;
}
}

body{
  margin-top: 0;
  padding-left: 2vw;
}


/* Base Typography */
h1{
  text-align: center;
}
h5,
h6
 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  line-height: 1.2;
  color: var(--header-color6);
  padding: 0vw 0vw;
}
h2{
  color: var(--header-color2);
  margin-bottom: 0rem;
  margin-top: 0;
  padding: 0 0 0 1vw;
  text-align: center;
}
h3{
  color: var(--header-color3);
  margin-bottom: 0rem;
  padding: 0 0 0 1.2vw;
  margin-top: 0;
}
h4{
  margin-bottom: 0.1rem;
  padding-left: 1.3vw;
  margin-top:0;
  color: var(--header-color4);
}
p{
  padding-left: 1.5vw;
  padding-top: 1vw;
  margin-top: 0;
}

/* ------------------- Job Stats Responsive----------------- */
.jobstats{
  padding: 0 10vw;
}

/*-------------------- Header Style ------------------------*/
header {
  display: flex;
  /* Enables Flexbox for the header container */
  justify-content: space-between;
  /* Pushes the logo to the left and links to the right */
  align-items: center;
  /* Vertically centers the items */
  padding: .5vw 0vw 0vw 0vw;
  overflow: hidden;
  /* Ensures content doesn't overflow */
  width: 100%;
  max-height: 20vw;
  margin-bottom: 0vw;
  text-decoration: none;
  margin: 0;
  border-bottom: 1px solid var(--text-color);
  color: var(--text-color);
}

header li a {

  text-decoration: none;
  margin: 1vw;
  /* Spacing for the links */
  font-size: 1.1em;
  transition: 0.5s;
  
}

header li a:hover {
  color: var(--hover-color)
}
/*-------------- End Header Style -------------*/

/* -------------- Mobile responsiveness update --------------------- */
@media screen and (min-width:900px){
p {
  margin-top: 0;
  margin-bottom: 1rem;
  padding-top: 0vw;
}
body{
padding: 0 0;
}
}
@media screen and (max-width:505px){
  h1 {
  text-align: center;
  padding: .5vw;
  font-weight: bold;
  font-size: 2em;
}

h2 {
  padding-left:0;
  padding-bottom: 0;
  text-align: center;
}

h3 {
  padding-left: 1vw;
}

h4 {
  padding-left: 1vw;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
  padding-left: 2.1vw;

}
body{
  padding: 0;
}
}


----------------------------------- /* End of Mobile Responsiveness*/---------------------------
.table-responsive {
  overflow-x: auto; /* Adds horizontal scrollbar when content is too wide */
  width: 100%; /* Ensures the container takes the full width */
}

/* Optional: Basic table styling for better appearance */
table {
  width: 100%; /* Can be set to a fixed px width for large tables with max-width: 100% for mobile */
  border-collapse: collapse;
}

th, td {
  padding: 10px;
  border: 1px solid #ddd;
  white-space: nowrap; /* Prevents text from wrapping within cells */
}



a {
  color: inherit;
  /* Inherit color from parent */
  text-decoration: none;
  /* Remove default underline */
}

/* -------------------------------------Simple Image Responsiveness ----------------------------------*/
img {
  max-width: 100%;
  max-height: auto;
  object-fit: contain;
}

.social-icons{
    display: flex;
    align-items: center;
    vertical-align: middle;
    text-decoration: none;
    flex-direction: row;
    padding-top: 1vw;

}
.social-icons ul{
  display: flex;
  gap: 1vw;

}
.social-icons li{
    text-decoration: none;
    list-style-type: none;
    display: flex;
}
.social-icons a {

    text-decoration: none;
    display: flex;
}
.social-icons a:hover {
    opacity: 50%;
}

.footercontainer {
    display: flex; /* Enables Flexbox for the footer container */
    flex-direction: column; /* Stacks items vertically */
    align-items: center; /* Centers items horizontally */
    justify-content:center; /* Centers items vertically */
    padding: .2vw 0;
}

.footerNav {
    margin: .1vw 0;
    list-style: none; /* Removes default bullet points */
    display: flex; /* Enables Flexbox for the list items */
    align-items: center;
}  

.footerNav ul {
    display: flex; /* Enables Flexbox for the list items */
    align-items: center;
}
.footerNav li a {
    color: var(--footer-nav);
    text-decoration: none;
    margin: 1vw;   /* Spacing for the links */
    font-size: 1.1em;
    transition: 0.5s;
}
.footerNav li a:hover {
    color: var(--hover-color)
}   

.footerbottom {
    color: var(--text-color);
    text-align: center;
    padding: 1vw;
    font-size: smaller;
}

/*----------------------------------------Tables Dashboard-------------------------------------*/
table {
  border:2px solid var(--table-bold-text);
  width: 100%;
  border-collapse: collapse;
  box-shadow: var(--text-color);
  outline: var(--text-alternate);
  padding: 1vw 10vw;
}



td {
  text-align: center;
  border-bottom: 1.5px solid var(--text-alternate);
  font-size: .8em;
  text-wrap-mode: wrap;
}

thead {
  font-weight: bolder;
  background-color: var(--header-color6);
  font-size: 1em;
  text-align: center;
}

th {
  color: var(--text-color);
  background-color: var(--background-alternate);
  font-size: 1em;
  border-bottom: 1px solid var(--text-color);
  text-wrap-mode: wrap;
}

tfoot {
  font-weight: bold;
  color: var(--table-bold-text);
  background-color: var(--background-alternate);
}

table tr th:first-child,
table tr td:first-child {
  font-weight: bold;
  color: var(--text-color);
}


#dark-mode-toggle{

    background: none;
    border: none;
    padding: 1em;
    cursor: pointer;
}
#dark-mode-toggle svg:last-child{
display: none;
}
.darkmode #dark-mode-toggle svg:first-child{
    display:none;
}
.darkmode #dark-mode-toggle svg:last-child{
    display:block;
}
/* Default: show light image, hide dark image */
.dark-mode-image {
  display: none;
}
/* When the parent (e.g., body) has the dark-theme class: */
body.darkmode .light-mode-image {
  display: none;
}

body.darkmode .dark-mode-image {
  display: block;
}



svg{
    color: var(--text-color);
    border: none;
    outline: none;
    stroke: none;
    background-color: transparent;

}
header{
    display: flex;
    justify-content: space-between;
}
header a{
    padding-left: 1vw;
    padding-top: .5vw;
}

.dashboard {
  color: var(--text-job-class);
  padding: 2vw 17vw;
}
@media (max-width: 1100px){
  .dashboard{
    padding: 1vw 10vw;
  }
}

@media (max-width: 700px){
  .dashboard{
    padding: 1vw 1vw;
  }
}


.dashboard-head{
  display: flex;
  justify-content: center;
  text-align: center;
  gap: 2em;
  padding-top: 1vw;
}
.dashboard-headers{
  border: 1px solid var(--text-color);
  padding: 1vw;
  border-radius: 3%;
  box-shadow: 2px 5px #888888;
}
.dashboard-numbers{
  font-size: 2.5em;
  color: var(--bold-blue);
}
.interest-list{
  padding: 1vw 17vw;
}
@media (max-width: 1100px){
.interest-list{
  padding: 1vw 10vw;
}
}
@media (max-width: 700px){
  .interest-list{
    padding: 1vw 1vw;
  }
}