/* Center the spinner + text together */
.spinner-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center; /* horizontal centering */
}

/* Spinner size */
.spinner {
  width: 180px;
  height: 180px;
}

/* Background circle */
.spinner-bg {
  fill: none;
  stroke: #eee;
  stroke-width: 4;
}

/* Foreground circle (progress) */
.spinner-fg {
  fill: none;
  stroke: #3498db;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-dasharray: 125.6; /* 2πr = 2 * π * 20 */
  stroke-dashoffset: 125.6; /* start empty */
  transition: stroke-dashoffset 0.2s ease;
}

/* Text below spinner */
.spinner-text {
  margin-top: 10px;           /* distance below circle */
  font-size: 0.9rem;
  color: rgba(0,0,0,0.5);     /* soft/opaque */
  text-align: center;
  font-family: sans-serif;
}

.divider {
  border: none;
  border-top: 1px solid #ccc;
  border-bottom: 10px
  margin: 20px 0 50px 0;
  width: 100vw;            /* full viewport width */
  position: relative;       /* optional, ensures layout flow */
  left: 0;                  /* align with viewport left */
  margin-left: calc(-50vw + 50%); /* centers it across viewport */
}

.footer-info {
  position: fixed;
  bottom: 0;           /* flush with bottom */
  left: 0;
  width: 100%;
  background-color: #f8f8f8;
  color: #666;
  font-size: 0.85em;
  text-align: center;
  padding: 8px 0;       /* small vertical padding */
  border-top: 1px solid #ddd; /* optional top border */
  box-shadow: 0 -1px 3px rgba(0,0,0,0.05); 
  z-index: 1000;
  margin: 0;            /* ensure no margin at bottom */
}

/* Choices container overall */
.choices {
  width: 400px;            /* or your desired width */
  font-size: 14px;
  min-height: 28px !important; /* smaller height */
  padding: 10px 0px;
}

/* Inner container that holds input + selected items */
.choices__inner {
  min-height: 28px !important;  /* shrink height */
  padding: 2px 8px !important;  /* adjust top/bottom padding */
  border-radius: 6px;
  border: 1px solid #ccc !important;
  box-sizing: border-box;
}

/* Search input inside Choices */
.choices__input {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 2px 0 !important;  /* reduce input padding */
  min-height: 24px !important; /* shrink height */
}

/* Reduce option item padding in dropdown */
.choices__list--dropdown .choices__item {
  padding: 4px 8px;
}

/* Lock title/site info at the top */
body {
  margin: 0;
  font-family: sans-serif;
}

h1, #siteInfo {
  position: sticky;
  top: 0;
  background: #fff;
  padding: 10px 20px;
  border-bottom: 1px solid #ddd;
  z-index: 100;
}

.layout-container {
  display: flex;
  gap: 20px;
  padding: 20px;
}

.sidebar {
  background: #f8f8f8;
  padding: 15px;
  border: 1px solid #ddd;

  width: 400px;      /* fixed width */
  height: fit-content;

  border-radius: 0;  /* remove rounded corners */
}

/* Right panel */
.results {
  overflow-x: auto; /* table scroll if too wide */
}

/* Table styling */
#csvTable {
  width: 100%;
  border-collapse: collapse;
}

#csvTable th,
#csvTable td {
  border: 1px solid #ccc;
  padding: 8px 10px;
  text-align: left;
}

#csvTable th {
  background-color: #f0f0f0;
  cursor: pointer; /* if sortable */
}

/* Loading spinner centering */
#loadingIndicator {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sidebar h3 {
  margin-top: 0;      /* remove space above */
  margin-bottom: 10px; /* adjust space below as needed */
  font-size: 16px;    /* optional: adjust size */
}

/* Input container background */
.choices__inner {
  background-color: #fff !important;  /* white background */
  border: 1px solid #ccc;
  color: #000;                        /* text color */
}

/* Dropdown menu background */
.choices__list--dropdown {
  background-color: #fff !important;  /* white dropdown */
  border: 1px solid #ccc;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15); /* optional subtle shadow */
}

/* Optional: each option item background */
.choices__list--dropdown .choices__item {
  background-color: #fff;            /* ensures options are white */
  color: #000;
}

/* Hover state for options */
.choices__list--dropdown .choices__item--selectable.is-highlighted {
  background-color: #eef6ff;         /* light highlight on hover */
  color: #000;
}


