/**
 * Public Styles for Panha FrontDesk Albums & Gallery
 * Chua Bat Chanh Dao
 */

:root {
  --panha-primary: #1e3a2f;
  --panha-accent: #c5a059;
  --panha-bg: #faf8f5;
  --panha-card: #ffffff;
  --panha-text: #2c3330;
  --panha-muted: #6b7770;
  --panha-border: #e2ddd5;
}

/* Single Album & Archive Containers */
.panha-album-single-main,
.panha-album-archive-main {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.panha-album-header {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.panha-album-header h1 {
  word-break: break-word;
  overflow-wrap: break-word;
}

/* Grids */
.panha-home-album-cards,
.panha-album-masonry-grid,
.panha-albums-grid {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.panha-album-card {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.panha-album-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.panha-album-photo-item {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.panha-album-photo-item img:hover {
  transform: scale(1.03);
}

/* Responsive constraints to guarantee 0 horizontal overflow at 320px/390px */
@media (max-width: 768px) {
  .panha-album-masonry-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)) !important;
    gap: 16px !important;
  }
  .panha-albums-grid,
  .panha-home-album-cards {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .panha-album-header {
    padding: 20px 16px !important;
  }
  .panha-album-header h1 {
    font-size: 1.5rem !important;
  }
}

@media (max-width: 480px) {
  .panha-album-single-main,
  .panha-album-archive-main {
    padding: 24px 10px 60px !important;
  }
  .panha-album-header {
    padding: 16px 12px !important;
  }
  .panha-album-header h1 {
    font-size: 1.35rem !important;
  }
  .panha-album-masonry-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .panha-albums-grid,
  .panha-home-album-cards {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}

