:root{
  --sidebar-w: 260px;
  --sidebar-w-collapsed: 78px;
  --bg: #0b1220;
  --panel: #0f1a2e;
  --card: #0f172a;
  --text: #e5e7eb;
  --muted: rgba(229,231,235,.72);
  --accent: #0ea5e9;
}

.admin-body{background:#f5f7fb;}
.admin-shell{min-height:100vh;display:flex;position:relative;}

.admin-sidebar{
  width:var(--sidebar-w);
  background:linear-gradient(180deg,var(--bg),#0a1020);
  color:var(--text);
  position:sticky;
  top:0;
  height:100vh;
  overflow:auto;
}

.admin-shell.is-collapsed .admin-sidebar{width:var(--sidebar-w-collapsed);}

.admin-sidebar__brand{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px;
  border-bottom:1px solid rgba(255,255,255,.08);
  gap:10px;
}

.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;min-width:0;}
.brand__logo{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#0ea5e9,#3b82f6);display:flex;align-items:center;justify-content:center;font-weight:800;}
.brand__text{display:flex;flex-direction:column;min-width:0;}
.brand__title{font-weight:700;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.brand__subtitle{font-size:12px;color:var(--muted);}

.admin-shell.is-collapsed .brand__text{display:none;}

.admin-nav{padding:10px;display:flex;flex-direction:column;gap:4px;}
.admin-nav__section{margin-top:12px;margin-bottom:6px;padding:6px 10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(229,231,235,.55);}
.admin-shell.is-collapsed .admin-nav__section{display:none;}

.admin-nav__link{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;color:rgba(229,231,235,.9);text-decoration:none;}
.admin-nav__link i{width:22px;text-align:center;}
.admin-nav__link:hover{background:rgba(255,255,255,.06);}
.admin-nav__link.active{background:rgba(14,165,233,.16);outline:1px solid rgba(14,165,233,.25);}
.admin-shell.is-collapsed .admin-nav__link span{display:none;}

.admin-main{flex:1;min-width:0;}
.admin-topbar{
  position:sticky;
  top:0;
  z-index:10;
  background:#ffffff;
  border-bottom:1px solid rgba(2,6,23,.08);
  padding:12px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.admin-topbar__title{font-weight:800;font-size:16px;}
.admin-topbar__crumb{font-size:12px;color:#64748b;}

.admin-user{display:flex;align-items:center;gap:10px;}
.admin-user__avatar{width:34px;height:34px;border-radius:12px;background:#eef2ff;display:flex;align-items:center;justify-content:center;color:#334155;}
.admin-user__name{font-size:13px;font-weight:700;line-height:1.1;}
.admin-user__role{font-size:11px;color:#64748b;}

.admin-content{padding:16px;}

.card-soft{border:1px solid rgba(2,6,23,.08);border-radius:16px;box-shadow:0 10px 24px rgba(2,6,23,.04);}

/* Dashboard */
.dash-hero{background:linear-gradient(135deg,#0ea5e9 0%, #2563eb 60%, #1e293b 140%);color:#fff;border:none;}
.dash-hero__inner{padding:18px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.dash-hero__kicker{opacity:.85;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:12px;}
.dash-hero__title{font-weight:900;font-size:22px;line-height:1.15;}
.dash-hero__sub{opacity:.92;max-width:52ch;margin-top:6px;}

.dash-clock{min-width:190px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px);
  padding:12px 14px;border-radius:16px;text-align:right;}
.dash-clock__time{font-size:22px;font-weight:900;letter-spacing:.02em;}
.dash-clock__meta{font-size:12px;opacity:.9;}

.stat-tile{display:block;position:relative;overflow:hidden;padding:14px 14px;border-radius:16px;border:1px solid rgba(2,6,23,.08);
  text-decoration:none;color:inherit;background:#f1f5f9;box-shadow:0 10px 24px rgba(2,6,23,.04);}
.stat-tile:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(2,6,23,.06);}
.stat-tile__label{font-size:12px;color:#64748b;font-weight:700;}
.stat-tile__value{font-size:22px;font-weight:900;margin-top:6px;}
.stat-tile__icon{position:absolute;right:12px;bottom:10px;font-size:22px;opacity:.28;}
.stat-tile--slate{background:#f1f5f9;}
.stat-tile--amber{background:#fff7ed;}
.stat-tile--green{background:#f0fdf4;}
.stat-tile--blue{background:#eff6ff;}

@media (max-width: 576px){
  .dash-hero__inner{flex-direction:column;align-items:stretch;}
  .dash-clock{text-align:left;min-width:0;}
}

/* Mobile-first: sidebar becomes off-canvas */
@media (max-width: 992px){
  .admin-shell.is-mobile-open::before{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.45);
    z-index:900;
  }
  .admin-sidebar{position:fixed;left:0;top:0;transform:translateX(-100%);transition:transform .2s ease;z-index:1000;}
  .admin-shell.is-mobile-open .admin-sidebar{transform:translateX(0);}
  .admin-shell.is-collapsed .admin-sidebar{width:var(--sidebar-w);} /* collapsed off on mobile */

  /* If user has "collapsed" saved, still show labels when sidebar is opened on mobile */
  .admin-shell.is-mobile-open .brand__text{display:flex;}
  .admin-shell.is-mobile-open .admin-nav__section{display:block;}
  .admin-shell.is-mobile-open .admin-nav__link span{display:inline;}
}
