:root {
  --bg: #140c16;
  --card: #231528;
  --gold: #d4af6a;
  --ink: #f7f1e8;
  --muted: #c4b4a0;
}
body { background: radial-gradient(1200px 600px at 10% -10%, #3a2040, var(--bg)); color: var(--ink); min-height: 100vh; }
.app-nav { background: #1a101c; border-bottom: 1px solid rgba(212,175,106,.25); }
.navbar-brand { font-weight: 700; letter-spacing: .03em; color: var(--gold) !important; }
.app-footer { color: var(--muted); }
.card-luxury {
  background: linear-gradient(180deg, #2b1a31, #1c121f);
  border: 1px solid rgba(212,175,106,.22);
  color: var(--ink);
  border-radius: 18px;
}
.stat { background: #2a1b30; border-radius: 14px; padding: 1.1rem 1.2rem; border: 1px solid rgba(255,255,255,.05); }
.stat strong { display:block; font-size: 1.7rem; color: var(--gold); }
.dropzone {
  border: 2px dashed rgba(212,175,106,.45);
  border-radius: 18px;
  padding: 2.4rem 1rem;
  text-align: center;
  background: rgba(0,0,0,.18);
  cursor: pointer;
}
.dropzone.dragover { background: rgba(212,175,106,.12); }
.btn-gold { background: var(--gold); color: #2a1608; font-weight: 700; border: 0; }
.btn-gold:hover { background: #e4c588; color: #2a1608; }
.gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
@media (max-width: 992px) { .gallery-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .gallery-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .gallery-grid { grid-template-columns: 1fr; } }
.gallery-card img { width: 100%; aspect-ratio: 3/4; object-fit: cover; border-radius: 12px; }
.form-control, .form-select { background: #2b2030; border-color: #4a3650; color: #fff; }
.form-control:focus, .form-select:focus { background: #2b2030; color: #fff; border-color: var(--gold); box-shadow: none; }
.table { --bs-table-bg: transparent; color: var(--ink); }
.hero { padding: 4rem 0 2rem; }
.spinner-gold { width: 3rem; height: 3rem; border-width: .3rem; color: var(--gold); }
