/* LumaBooth-style Full-width Dashboard & Event Media Styles */
.event-workspace .workspace-main {
  padding: 20px 32px 40px !important;
  max-width: 100% !important;
  width: 100% !important;
}

[data-pane="overview"] {
  max-width: 100% !important;
  width: 100% !important;
}

/* 3-Card Stat Row (LumaBooth style) */
.luma-dashboard-stats {
  display: grid;
  grid-template-columns: 1fr 1fr 1.3fr;
  gap: 16px;
  margin-bottom: 18px;
}

.luma-stat-card {
  background: #ffffff;
  border: 1px solid #e8e3ef;
  border-radius: 12px;
  padding: 16px 20px;
  box-shadow: 0 2px 8px rgba(45, 25, 75, 0.03);
  display: flex;
  align-items: center;
  justify-content: space-around;
  min-height: 86px;
}

.luma-metric-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex: 1;
}

.luma-metric-col span {
  font-size: 11px;
  color: #847796;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}

.luma-metric-col strong {
  font-size: 26px;
  font-weight: 700;
  color: #271b48;
  margin-top: 4px;
  line-height: 1.2;
}

.luma-metric-col small {
  font-size: 10px;
  color: #9a8ea8;
  margin-top: 2px;
}

/* Card 3: Link sharing card */
.luma-share-card {
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: 8px;
}

.luma-share-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.luma-share-header span {
  font-size: 12px;
  font-weight: 600;
  color: #3b2d56;
}

.luma-share-header .toggle-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  color: #7b6f8f;
  cursor: pointer;
}

.luma-share-header input[type=checkbox] {
  appearance: none;
  width: 36px;
  height: 20px;
  border-radius: 10px;
  background: #d8d1e2;
  position: relative;
  cursor: pointer;
  outline: none;
  transition: background .2s;
}

.luma-share-header input[type=checkbox]:before {
  content: '';
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  top: 2px;
  left: 2px;
  transition: transform .2s;
  box-shadow: 0 1px 3px rgba(0,0,0,0.25);
}

.luma-share-header input[type=checkbox]:checked {
  background: #3eb574;
}

.luma-share-header input[type=checkbox]:checked:before {
  transform: translateX(16px);
}

.luma-share-body {
  display: flex;
  align-items: center;
  gap: 6px;
}

.luma-share-body input {
  flex: 1;
  background: #f7f5fa !important;
  border: 1px solid #e3dbe9 !important;
  font-size: 12px !important;
  padding: 6px 10px !important;
  min-height: 34px !important;
  border-radius: 7px !important;
  color: #4b3a65 !important;
}

.luma-share-body button,
.luma-share-body a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  height: 34px;
  font-size: 12px;
  font-weight: 500;
  border-radius: 7px;
  border: 1px solid #dfd6e6;
  background: #fff;
  color: #463462;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: background .15s;
}

.luma-share-body button:hover,
.luma-share-body a:hover {
  background: #f5eff9;
}

/* Action Bar below stats */
.luma-action-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 10px 0 14px;
  border-bottom: 1px solid #eae5ef;
  margin-bottom: 16px;
}

.luma-event-tag {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #3b2c58;
}

.luma-event-tag strong {
  font-weight: 600;
  font-size: 15px;
}

.luma-event-tag span {
  color: #887b9b;
  font-size: 12px;
}

.luma-action-buttons {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.luma-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 13px;
  font-size: 12px;
  font-weight: 500;
  border-radius: 8px;
  border: 1px solid #ded5e6;
  background: #fff;
  color: #3f2f5b;
  cursor: pointer;
  transition: all .15s;
}

.luma-action-btn:hover {
  background: #f7f2fb;
  border-color: #c9b7d8;
}

.luma-action-btn.danger {
  color: #b32655;
  border-color: #f2c7d5;
}

.luma-action-btn.danger:hover {
  background: #fff0f4;
  border-color: #e89eb6;
}

#mediaProgress {
  width: 100%;
  font-size: 12px;
  color: #b32f78;
  font-weight: 500;
  padding: 8px 12px;
  background: #fcf4f8;
  border-radius: 8px;
  margin-top: 6px;
}

#mediaProgress:empty {
  display: none;
}

#mediaDownloadParts {
  width: 100%;
  margin-top: 8px;
}

#mediaDownloadParts a {
  display: inline-block;
  padding: 8px 14px;
  margin: 3px;
  border: 1px solid #d9c8e2;
  border-radius: 8px;
  background: #fff;
  color: #8c2a71;
  font-size: 12px;
  text-decoration: none;
  font-weight: 500;
}

#mediaDownloadParts a:hover {
  background: #faeff6;
}

/* Full Width Photos Container */
.luma-photos-container {
  width: 100%;
  background: #ffffff;
  border: 1px solid #eae5ef;
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(45, 25, 75, 0.03);
  margin-top: 14px;
}

.luma-photos-container .toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  border-bottom: 1px solid #f0ecf4;
  padding-bottom: 12px;
}

.luma-photos-container .toolbar h2 {
  font-size: 18px;
  font-weight: 700;
  color: #261a45;
  margin: 0;
}

#recentEventPhotos {
  width: 100% !important;
  box-sizing: border-box !important;
}

#recentEventPhotos:has(.media-tile),
#recentEventPhotos.recent-photos,
.recent-photos {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#recentEventPhotos .media-tile,
.recent-photos .media-tile {
  display: block !important;
  width: 100% !important;
  max-width: 150px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #e8e2ee !important;
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(45, 25, 75, 0.04) !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

#recentEventPhotos .media-tile img,
.recent-photos .media-tile img {
  width: 100% !important;
  height: 100% !important;
  max-height: 120px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  display: block !important;
}

#recentEventPhotos .media-tile>span,
.recent-photos .media-tile>span {
  display: block !important;
  font-size: 11px !important;
  color: #4a3a64 !important;
  padding: 4px 6px 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#recentEventPhotos .media-tile small,
.recent-photos .media-tile small {
  display: block !important;
  font-size: 10px !important;
  color: #8b7d9c !important;
  padding: 0 6px 4px !important;
}

/* GNAlbum Toolbar inside Overview */
.luma-photos-container .album-tools {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 0 0 16px 0 !important;
  width: 100% !important;
}

.luma-photos-container .album-tabs {
  display: flex !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}

.luma-photos-container .album-tabs button {
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1px solid #dfd7e8 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #55446c !important;
  cursor: pointer !important;
  transition: all 0.15s !important;
}

.luma-photos-container .album-tabs button:hover {
  background: #f7f3fb !important;
  border-color: #c9bed8 !important;
}

.luma-photos-container .album-tabs button[aria-pressed="true"] {
  background: #271b48 !important;
  border-color: #271b48 !important;
  color: #ffffff !important;
}

.luma-photos-container .album-search {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
}

.luma-photos-container .album-search input {
  padding: 8px 12px !important;
  font-size: 13px !important;
  border: 1px solid #ded5e6 !important;
  border-radius: 8px !important;
  min-height: 36px !important;
  width: 190px !important;
  background: #fff !important;
  color: #3b2d56 !important;
}

.luma-photos-container .album-search select {
  padding: 8px 12px !important;
  font-size: 13px !important;
  border: 1px solid #ded5e6 !important;
  border-radius: 8px !important;
  min-height: 36px !important;
  background: #fff !important;
  color: #3b2d56 !important;
  cursor: pointer !important;
}

.luma-photos-container .album-summary {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
  color: #7d6f8f !important;
  width: 100% !important;
}

.luma-photos-container .album-summary button {
  padding: 6px 12px !important;
  font-size: 12px !important;
  border-radius: 6px !important;
  border: 1px solid #ded5e6 !important;
  background: #fff !important;
  color: #63537b !important;
  cursor: pointer !important;
}

.luma-photos-container .album-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
}

.luma-photos-container .album-tile {
  background: #ffffff !important;
  border: 1px solid #e8e2ee !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 4px rgba(45, 25, 75, 0.04) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.luma-photos-container .album-tile:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 14px rgba(45, 25, 75, 0.08) !important;
}

.luma-photos-container .album-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background: #f8f6fb !important;
  border: 0 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.luma-photos-container .album-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.2s ease !important;
}

.luma-photos-container .album-tile:hover .album-image img {
  transform: scale(1.04) !important;
}

.luma-photos-container .album-caption {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 6px 8px !important;
  background: #ffffff !important;
  border-top: 1px solid #f1ecf6 !important;
  font-size: 11px !important;
}

.luma-photos-container .album-caption span {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #4a3a64 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

.luma-photos-container .album-caption a {
  color: #b93773 !important;
  font-weight: bold !important;
  font-size: 18px !important;
  text-decoration: none !important;
}

.luma-photos-container .album-help {
  text-align: center !important;
  color: #8b7d9c !important;
  font-size: 13px !important;
  margin: 20px 0 6px !important;
}

.dashboard-preparation {
  margin-top: 24px;
  border: 1px solid #e8e2ee;
  border-radius: 12px;
  background: #fdfcff;
}

.dashboard-preparation summary {
  cursor: pointer;
  padding: 14px 18px;
  font-weight: 600;
  font-size: 13px;
  color: #65547e;
  border-radius: 12px;
  outline: none;
}

.dashboard-preparation[open] summary {
  border-bottom: 1px solid #ece5f2;
}

.dashboard-preparation>.overview-columns {
  padding: 18px;
}

@media(max-width: 900px) {
  .luma-dashboard-stats {
    grid-template-columns: 1fr;
  }
  .event-workspace .workspace-main {
    padding: 14px !important;
  }
}

/* Real-time Cloud Sync Progress Card */
.luma-sync-progress-card {
  background: #ffffff;
  border: 1px solid #e2dbed;
  border-radius: 12px;
  padding: 14px 20px;
  margin-bottom: 18px;
  box-shadow: 0 2px 8px rgba(45, 25, 75, 0.03);
  transition: all 0.3s ease;
}

.luma-sync-progress-card.syncing {
  border-color: #3b82f6;
  background: linear-gradient(180deg, #f0f7ff 0%, #ffffff 100%);
  box-shadow: 0 4px 14px rgba(59, 130, 246, 0.12);
}

.luma-sync-progress-card.completed {
  border-color: #10b981;
  background: linear-gradient(180deg, #f0fdf4 0%, #ffffff 100%);
}

.luma-sync-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.luma-sync-title {
  display: flex;
  align-items: center;
  gap: 10px;
}

.luma-sync-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
}

.luma-sync-badge.syncing {
  background: #dbeafe;
  color: #1d4ed8;
  animation: pulseSync 2s infinite ease-in-out;
}

.luma-sync-badge.completed {
  background: #d1fae5;
  color: #065f46;
}

.luma-sync-badge.idle {
  background: #f3f4f6;
  color: #4b5563;
}

@keyframes pulseSync {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.85; transform: scale(1.02); }
}

.luma-sync-headline {
  font-size: 13px;
  font-weight: 700;
  color: #271b48;
}

.luma-sync-metrics {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.luma-sync-percent {
  font-size: 20px;
  font-weight: 800;
  color: #1e1b4b;
}

.luma-sync-percent.completed {
  color: #059669;
}

.luma-sync-ratio {
  font-size: 12px;
  color: #6b7280;
  font-weight: 600;
}

.luma-sync-bar-track {
  width: 100%;
  height: 8px;
  background: #e5e7eb;
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 8px;
  position: relative;
}

.luma-sync-bar-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #3b82f6, #60a5fa);
  border-radius: 6px;
  transition: width 0.4s ease, background 0.3s ease;
}

.luma-sync-bar-fill.completed {
  background: linear-gradient(90deg, #10b981, #34d399);
}

.luma-sync-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11px;
  color: #6b7280;
}

.luma-sync-status-text {
  font-weight: 500;
}

.luma-sync-refresh-btn {
  background: none;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  color: #374151;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: all 0.15s ease;
}

.luma-sync-refresh-btn:hover {
  background: #f3f4f6;
  border-color: #9ca3af;
}

