.shows-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center; /* or 'flex-start' if you prefer left alignment */
	gap: 1rem; /* optional: adds spacing between wrapped panels */
	margin-top: 2rem;
}

.content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
	padding: 0;
	margin: 0;
}

.inner-container {
    width: clamp(350px, 80%, 70vw);
    background-color: rgba(35, 35, 35, 0.75);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
	margin-left: 1.5rem;
	margin-right: 1.5rem;
	border: 1px solid #666;
}

.rectangle {
    width: 100%;
    border-top: 2px solid white;
    border-bottom: 2px solid white;
    color: white;
    display: flex;
    flex-direction: row;
    align-items: flex-start; /* Align areas to top */
    justify-content: space-between;
    box-sizing: border-box;
    padding-top: 10px;
	padding-bottom: 10px;
}

.rectangle-group {
    display: none;
}

.rectangle-group.active {
	width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}


.left-area {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border: 2px solid transparent;
    transition: border-color 0.2s ease-in-out;
    cursor: default; /* default until hover */
}

.left-area img {
	display: none;
}

.right-area {
    width: 58%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 8px;
    border: 2px solid transparent;
    transition: border-color 0.2s ease-in-out;
    cursor: default; /* default until hover */
}

.left-area:hover {
    border-color: #E5B24F;
    cursor: pointer; /* or try 'pointer' if you prefer */
}

.right-area:hover {
    border-color: #E5B24F;
    cursor: alias;
}

.left-area, .right-area {
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Align text to top */
}

.left-area a, .right-area a {
	color: inherit;
	text-decoration: none; /* or none if you prefer */
}

.left-area p, .right-area p {
    margin: 0;
    font-size: clamp(0.75rem, 3vw, 1.25rem);
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: break-word;
}

.left-area .date,
.right-area .venue {
	font-weight: bold;
}

.tabs {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 15px;
}

.tabs a {
    text-decoration: none;
    color: #8f99fb;
    font-weight: normal;
    font-size: clamp(1.2rem, 3vw, 1.5rem);
    cursor: pointer;
	margin-top: 15px;
}

.tabs a.active {
    color: #E5B24F;	/* gold to match our "X" */
    font-weight: bold;
	margin-top: 15px;
}

.tabs .tab-sep img {
    color: white;
	height: 3.5rem;
}


/*=====  FOR MODAL IMAGE POPUP  =====*/
.modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

.modal.show {
  display: flex;
}

@keyframes zoomIn {
  from {
    transform: scale(0.7);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}

.modal-content {
  display: inline-flex;
  width: fit-content;
  height: fit-content;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  background-color: transparent;
  border-radius: 10px;
  box-shadow: none;
  animation: zoomIn 0.2s ease-out; /* 🎯 Apply animation */
}

#modalImg {
  display: block;
  max-width: 90vw;
  max-height: 90vh;
  object-fit: contain;
  border-radius: 4px;
}

#modalImg.scaled {
  width: var(--img-width);
  height: var(--img-height);
  object-fit: contain;
  border: 4px solid #E5B24F; /* ✨ gold border for the popup image */
  border-radius: 8px;
}

.image-wrapper {
    display: inline-block;
}
