/* AncientFortune — components.css : exhibits, lightbox, cards */

.exhibit-frame{
  border:1px solid rgba(176,140,62,0.5);
  border-radius:4px;
  padding:1.4em;
  background:rgba(245,239,226,0.04);
  position:relative;
}
.exhibit-frame svg.corner{
  position:absolute;
  width:28px;
  height:28px;
  opacity:0.7;
}
.exhibit-frame svg.corner.tl{top:6px;left:6px;}
.exhibit-frame svg.corner.tr{top:6px;right:6px;transform:scaleX(-1);}
.exhibit-frame svg.corner.bl{bottom:6px;left:6px;transform:scaleY(-1);}
.exhibit-frame svg.corner.br{bottom:6px;right:6px;transform:scale(-1,-1);}

.exhibit-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1.4em;
  margin:1.6em 0 2.2em;
}

.exhibit-card{
  border:none;
  cursor:pointer;
  text-align:left;
  font-family:inherit;
  color:inherit;
  background:transparent;
  padding:0;
}
.exhibit-card .exhibit-frame{
  transition:border-color 0.15s ease, background 0.15s ease;
  height:100%;
}
.exhibit-card:hover .exhibit-frame,
.exhibit-card:focus .exhibit-frame{
  border-color:var(--accent);
  background:rgba(176,140,62,0.1);
}
.exhibit-card h3{margin-bottom:0.2em;font-size:1.2rem;}
.exhibit-card .period{
  display:inline-block;
  font-size:0.8rem;
  color:var(--accent);
  margin-bottom:0.6em;
  letter-spacing:0.03em;
  text-transform:uppercase;
}
.exhibit-card p{font-size:0.92rem;margin-bottom:0.4em;}

/* Lightbox */
.lightbox-overlay{
  position:fixed;
  inset:0;
  background:rgba(15,10,6,0.88);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1500;
  padding:1.2em;
}
.lightbox-overlay[hidden]{display:none!important;}
.lightbox-box{
  background:var(--bg-light);
  color:var(--text-on-light);
  max-width:560px;
  width:100%;
  padding:2em;
  border-radius:8px;
  border:2px solid var(--accent);
  position:relative;
  max-height:85vh;
  overflow-y:auto;
  animation:lb-in 0.18s ease;
}
@media (prefers-reduced-motion: reduce){
  .lightbox-box{animation:none;}
}
@keyframes lb-in{
  from{opacity:0;transform:scale(0.96);}
  to{opacity:1;transform:scale(1);}
}
.lightbox-box h3{color:var(--warn);}
.lightbox-close{
  position:absolute;
  top:0.8em;
  right:0.8em;
  background:transparent;
  border:2px solid var(--accent);
  border-radius:50%;
  width:36px;
  height:36px;
  font-size:1.1rem;
  cursor:pointer;
  color:var(--text-on-light);
}
.lightbox-nav{
  display:flex;
  justify-content:space-between;
  margin-top:1.4em;
}
.lightbox-nav button{
  font-family:var(--font-body);
  font-weight:600;
  background:transparent;
  border:1px solid var(--accent);
  border-radius:6px;
  padding:0.5em 1.1em;
  cursor:pointer;
  color:var(--text-on-light);
}
.lightbox-source{
  font-size:0.8rem;
  opacity:0.75;
  margin-top:1em;
  font-style:italic;
}

.hall-tag{
  display:inline-block;
  background:var(--surface);
  color:var(--accent);
  border:1px solid var(--accent);
  border-radius:20px;
  padding:0.3em 0.9em;
  font-size:0.85rem;
  margin:0 0.4em 0.4em 0;
}

.faq-item{
  border-bottom:1px solid rgba(176,140,62,0.3);
  padding:1.2em 0;
}
.faq-item h3{margin-bottom:0.4em;}

table.data-table{
  width:100%;
  border-collapse:collapse;
  margin:1.4em 0;
}
table.data-table th,table.data-table td{
  border:1px solid rgba(176,140,62,0.4);
  padding:0.6em 0.8em;
  text-align:left;
  font-size:0.92rem;
}
table.data-table th{
  background:var(--surface);
  color:var(--accent);
}
