/* ===== Luxury Dark Theme (updated) ===== */

/* Palette */
:root{
  --brand:        #0d6efd;
  --lux-bg:       #0e1116;     /* slightly lighter for contrast */
  --lux-bg-soft:  #121723;
  --lux-card:     #151b26;
  --lux-border:   #2a3340;
  --lux-text:     #eaf0f7;
  --lux-muted:    #aeb6c2;
  --lux-gold:     #c5a880;
  --lux-shadow:   0 12px 40px rgba(0,0,0,.35);
}

html,body{ background:var(--lux-bg); color:var(--lux-text); }
a{ color: var(--lux-gold); text-decoration:none; }
a:hover{ opacity:.9; }
hr{ border-color: var(--lux-border); opacity:.5; }

/* Navbar */
.navbar{
  background: linear-gradient(180deg,#111723, #0e1116);
  border-bottom:1px solid var(--lux-border);
}
.navbar .navbar-brand{ color:#fff !important; letter-spacing:.3px; }
.navbar .nav-link{ color: var(--lux-muted) !important; }
.navbar .nav-link.active{
  color:#fff !important; background:rgba(197,168,128,.12); border-radius:10px;
}

/* Cards & surfaces */
.card,.lux-card{
  background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)), var(--lux-card);
  border:1px solid var(--lux-border);
  border-radius:18px; box-shadow:var(--lux-shadow); color:var(--lux-text);
}
.lux-soft{ background:var(--lux-bg-soft); }

/* Tables */
.table{
  --bs-table-bg: transparent;
  --bs-table-striped-color: var(--lux-text);
  --bs-table-striped-bg: rgba(255,255,255,.03);
  color:var(--lux-text);
}
.table thead{ background: rgba(255,255,255,.03); }
.table td,.table th{ border-color:var(--lux-border) !important; }

/* Buttons */
.btn-brand{
  --_c: var(--lux-gold);
  background:var(--_c); border-color:var(--_c); color:#0b0d10;
  font-weight:600; box-shadow:0 8px 24px rgba(197,168,128,.25);
}
.btn-brand:hover{ filter:brightness(.96); color:#0b0d10; }
.btn-outline-light{ border-color:#394353; color:#dbe3ef; }
.btn-outline-light:hover{ background:var(--lux-gold); color:#0b0d10; border-color:var(--lux-gold); }
.btn-close{ filter: invert(1) grayscale(100%); opacity:.8; }
.btn-close:hover{ opacity:1; }

/* Forms */
.form-control,.form-select,.form-control:focus,.form-select:focus{
  background:#0f141d; color:#eaf0f7; border:1px solid #344155;
}
.form-control:focus,.form-select:focus{
  border-color:var(--lux-gold);
  box-shadow:0 0 0 .25rem rgba(197,168,128,.18);
}
.form-control::placeholder{ color:#93a1b3; opacity:.85; }

/* Dropdowns / menus (selects, context menus) */
.dropdown-menu{
  background:var(--lux-bg-soft); border:1px solid var(--lux-border); color:var(--lux-text);
}
.dropdown-item{ color:var(--lux-text); }
.dropdown-item:hover,.dropdown-item:focus{ background:rgba(255,255,255,.06); color:#fff; }

/* Modals */
.modal-backdrop.show{ opacity:.75; background:#000; }
.modal-content{
  background:var(--lux-bg-soft); color:var(--lux-text);
  border:1px solid var(--lux-border); border-radius:16px;
}
.modal-header,.modal-footer{ border-color:var(--lux-border); }

/* Badges */
.badge{ border-radius:999px; padding:.4rem .6rem; }
.badge-gold{ background: rgba(197,168,128,.2); color:var(--lux-gold); border:1px solid rgba(197,168,128,.35); }

/* Utility */
.shadow-soft{ box-shadow: var(--lux-shadow); }
.brand-logo{ height:28px; width:auto; }
.page-title{ font-weight:700; letter-spacing:.3px; }
.muted{ color:var(--lux-muted); }

/* Small links in “File/Link” column */
.file-links a{ color:var(--lux-gold); }
.file-links a + a::before{ content:" · "; color:var(--lux-muted); }

/* Pagination */
.page-link{ background:transparent; border-color:var(--lux-border); color:var(--lux-text); }
.page-item.active .page-link{ background:var(--lux-gold); border-color:var(--lux-gold); color:#0b0d10; }


/* --- public polish --- */
body{ background:#0e1117; color:#e9eef5; }
.navbar{ background: linear-gradient(180deg,#0f141d,#0d1218); border-bottom:1px solid #1f2732; }
.lux-card{ background: #121823; border:1px solid #1f2732; }
.table td,.table th{ border-color:#1f2732!important; }
.muted{ color:#a9b3c2; }

