/* -----------------------------------------------------------
   GLASSMORPHISM THEME – CLEAN & DEDUPLICATED
------------------------------------------------------------ */

/* ---------- Root Variables ---------- */
:root {
  --glass-bg: rgba(255, 255, 255, 0.68);
  --glass-border: rgba(255, 255, 255, 0.35);
  --accent-a: #6366f1;
  --accent-b: #7c3aed;
  --muted: #6b7280;
  --card-radius: 12px;

  --darkglass: rgba(0,0,0,0.75);
}

/* ---------- Global ---------- */
* { box-sizing: border-box; }

body {
  min-height: 90vh;
  margin: 0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: linear-gradient(180deg,#ffffff,#f8fafc);
  overflow-x: hidden;
}

main {
  flex: 1;
  padding: 10px;
  transition: margin-left .25s ease;
}

/* ---------- PUBLIC NAVBAR (Desktop: light, Mobile: dark) ---------- */
.public-navbar {
  transition: all .3s ease;
}

/* Desktop (keep light theme) */
@media (min-width: 993px) {
  .public-navbar {
    background: #ffffff !important;
  }
}

/* Mobile (dark theme) */
@media (max-width: 992px) {
  .public-navbar {
    background: var(--darkglass) !important;
    backdrop-filter: blur(10px);
  }
  .public-navbar .navbar-brand,
  .public-navbar .nav-link,
  .public-navbar .btn {
    color: #fff !important;
  }
  .public-navbar .navbar-toggler-icon {
    filter: invert(1) brightness(2);
  }
}

/* ---------- Navbar (Admin) ---------- */
.navbar-dark i { color: #fff !important; }

/* ---------- Sidebar (Admin) ---------- */
.sidebar {
  backdrop-filter: blur(8px);
  background: rgba(0,0,0,0.9);
  border-right: 1px solid rgba(0,0,0,0.04);
  width: 60px;
  transition: width .3s ease;
  overflow-x: hidden;
  min-height: 100vh;
}

.sidebar:hover { width: 200px; }

.sidebar .nav-link span {
  opacity: 0;
  transition: opacity .3s;
}
.sidebar:hover .nav-link span { opacity: 1; }

.sidebar .nav-link {
  color: #fff;
  border-radius: 8px;
  margin: 2px 0;
  padding: .6rem 1rem;
  display: flex;
  align-items: center;
  gap: 12px;
}

.sidebar .nav-link:hover { background: var(--accent-a); color:#FFF; }

/* .sidebar.collapsed { width: 70px; } */
.sidebar.collapsed .text-label { opacity: 0; pointer-events:none; }

/* ---------- Mobile Sidebar (Admin & Public) ---------- */
@media (max-width: 992px) {
  .sidebar {
    position: fixed;
    top: 56px;
    left: -260px;
    width: 260px;
    height: calc(100% - 56px);
    background: var(--darkglass);
    backdrop-filter: blur(12px);
    transition: left .3s ease;
    z-index: 2000;
  }
  .sidebar.show { left: 0; }
  .sidebar .text-label { opacity: 1 !important; }
}

/* Mobile extra profile block for admin sidebar */
.mobile-profile-box {
  display: none;
}
@media (max-width: 992px) {
  .mobile-profile-box {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .mobile-profile-box img {
    width:50px;
    height:50px;
    border-radius:50%;
    object-fit:cover;
  }
}

/* ---------- Card Glass ---------- */
.card-glass {
  border-radius:16px;
  padding:24px;
  background:var(--glass-bg);
  backdrop-filter:blur(10px) saturate(140%);
  border:1px solid var(--glass-border);
  box-shadow:0 8px 32px rgba(2,6,23,0.08);
}

/* ---------- Buttons ---------- */
#sidebarToggleMobile i {
  font-size:1.6rem;
  color:#fff !important;
}

/* ---------- Responsive Padding ---------- */
@media (max-width: 992px) {
  main { padding: 12px !important; }
}
