body {
  margin: 0;
  font-family: sans-serif;
  background: #f9f9f9;
}

.container {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 5%;
  box-sizing: border-box;
}

.page-title {
  text-align: center;
  font-size: 1.5em;
  margin-bottom: 1em;
}

.image-block {
  margin-bottom: 5%;
}

.text-area {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 10px;
}

.text-area td {
  border: 1px solid #ccc;
  padding: 6px;
  font-size: 13px; 
}

.image-block img {
  width: 100%;
  aspect-ratio: 1 / 1.4142;
  object-fit: cover;
  display: block;
  border: 1px solid #ccc;
  padding: 2.5%;
  background-color: white;
  box-sizing: border-box;
}

.image-title img {
  width: 100%;
}

.site-footer {
  text-align: center;
  font-size: 0.9em;
  color: #555;
  padding: 1em 0;
  border-top: 1px solid #ccc;
  margin-top: 2em;
  background-color: #f0f0f0;
}

.image-wrapper {
  position: relative;
}

.overlay-text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  transform: translate(-50%, -50%);
  text-align: center;
  background: rgba(128, 128, 128, 0.7);
  color: #ff1818;
  font-size: 1.5em;
  font-weight: bold;
  padding: 0.5em;
  border-radius: 10px;
}

.wrap {
  margin: 0 auto;
  padding: 1rem; 
  font-size: 13px; 
}
.scroll { overflow-x: auto; }
table { 
  border-collapse: collapse;
  width: 100%;
}
thead th { position: sticky; top: 0; background: #f7f7f7; }
th, td { padding: 6px 10px; border: 1px solid #ddd; vertical-align: top; white-space: nowrap; }
tbody tr:nth-child(odd) { background: #fafafa; }
