/* Modal Overlay Styles */
.more-modal-overlay {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.5);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}
.more-modal-content {
  background: #fff;
  border-radius: 8px;
  padding: 2rem;
  box-shadow: 0 2px 16px rgba(0,0,0,0.2);
  min-width: 320px;
  max-width: 90vw;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  transition: width 0.3s, height 0.3s;
}
.more-modal-content.compact {
  width: 400px;
  height: 350px;
}
.more-modal-content.expanded {
  width: 90vw;
  height: 90vh;
}
.close-modal-btn {
  position: absolute;
  top: 12px;
  right: 16px;
  background: none;
  border: none;
  font-size: 2rem;
  cursor: pointer;
}
.expand-modal-btn {
  position: absolute;
  top: 12px;
  left: 16px;
  background: #eee;
  border: none;
  padding: 0.5em 1em;
  border-radius: 4px;
  cursor: pointer;
}
.resource-search-bar {
  width: 100%;
  padding: 0.5em;
  margin-bottom: 1em;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.resource-links-list {
  list-style: none;
  padding: 0;
}
.resource-links-list li {
  margin-bottom: 0.5em;
  word-wrap: break-word; /* Ensures long words break and wrap */
  overflow-wrap: break-word; /* Modern alternative for word-wrap */
}
.resource-links-list a {
  color: #007acc;
  text-decoration: none;
  display: inline-block; /* Allows max-width to be applied */
  max-width: 100%; /* Prevents links from overflowing their container */
}
.resource-links-list a:hover {
  text-decoration: underline;
}
