:root{
  --purple-900:#2b0a57;
  --purple-800:#3b0f73;
  --purple-700:#4c1d95;
  --purple-600:#5b21b6;
  --purple-500:#7c3aed;
  --purple-100:#f3e8ff;
  --ink:#101828;
}

body{ color:var(--ink); background:#fff; }

.navbar-purple{ background:linear-gradient(90deg, var(--purple-900), var(--purple-700)); }
.navbar-purple-darker{ background:linear-gradient(90deg, var(--purple-900), #16042f); }
.footer-purple{ background:linear-gradient(90deg, var(--purple-900), var(--purple-700)); color:#fff; }

/* Two-row navigation */
.top-nav{ border-bottom:1px solid rgba(255,255,255,.12); }
.sub-nav{ border-bottom:1px solid rgba(255,255,255,.10); }

/* Spread second navigation items across (desktop) + enforce white text */
@media (min-width: 992px){
  .sub-nav .navbar-nav{ justify-content:space-between; }
}
.sub-nav .nav-link{ color:#fff !important; font-weight:600; }
.sub-nav .nav-link:hover{ opacity:.9; }

/* Mobile-friendly dropdown inside collapsed navbar */
@media (max-width: 991.98px){
  .sub-nav .navbar-nav{ gap: .25rem; }
  .sub-nav .dropdown-menu{
    position: static;
    float: none;
    width: 100%;
    margin-top: .25rem;
  }
  .sub-nav .dropdown-menu .dropdown-item{
    padding: .7rem 1rem;
  }
}

.top-action-nav .nav-link{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:.2rem;
  padding:.35rem .6rem;
  border-radius:12px;
  min-width:92px;
}
.top-action-nav .nav-link i{
  font-size:1.1rem;
  line-height:1;
}
.top-action-nav .nav-link span{
  font-weight:600;
  font-size:.78rem;
  line-height:1.05;
}
.top-action-nav .nav-link:hover{
  background:rgba(255,255,255,.10);
}

.btn-purple{
  --bs-btn-bg: var(--purple-600);
  --bs-btn-border-color: var(--purple-600);
  --bs-btn-hover-bg: var(--purple-700);
  --bs-btn-hover-border-color: var(--purple-700);
  --bs-btn-active-bg: var(--purple-800);
  --bs-btn-active-border-color: var(--purple-800);
  --bs-btn-color:#fff;
}
.btn-outline-purple{
  --bs-btn-color: var(--purple-700);
  --bs-btn-border-color: rgba(124,58,237,.5);
  --bs-btn-hover-bg: var(--purple-700);
  --bs-btn-hover-border-color: var(--purple-700);
  --bs-btn-hover-color:#fff;
}

.hero-wrap{
  background:radial-gradient(1000px 400px at 20% 10%, rgba(124,58,237,.25), transparent 60%),
             radial-gradient(900px 500px at 90% 30%, rgba(76,29,149,.25), transparent 60%),
             linear-gradient(180deg, #ffffff, #fbf8ff);
  border-bottom:1px solid rgba(124,58,237,.15);
}
.hero-card{
  background:#fff;
  border:1px solid rgba(124,58,237,.18);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(16,24,40,.08);
}
.pill{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.35rem .75rem; border-radius:999px;
  background:rgba(124,58,237,.12); color:var(--purple-800);
  font-weight:600; font-size:.85rem;
}

.page-title-area{
  background:linear-gradient(90deg, rgba(43,10,87,.95), rgba(76,29,149,.9));
  color:#fff;
}
.page-title-area .breadcrumb{ --bs-breadcrumb-divider: '›'; }
.page-title-area .breadcrumb a{ color:rgba(255,255,255,.9); text-decoration:none; }
.page-title-area .breadcrumb a:hover{ text-decoration:underline; }
.page-title-area .breadcrumb-item.active{ color:rgba(255,255,255,.85); }

.card-soft{
  border:1px solid rgba(124,58,237,.18);
  border-radius:16px;
  box-shadow:0 8px 20px rgba(16,24,40,.06);
}
.section-title{
  color:var(--purple-900);
}

.sidebar-widget{
  border:1px solid rgba(124,58,237,.18);
  border-radius:16px;
  padding:16px;
  background:#fff;
  box-shadow:0 8px 20px rgba(16,24,40,.05);
}

.badge-purple{
  background:rgba(124,58,237,.12);
  color:var(--purple-800);
  border:1px solid rgba(124,58,237,.20);
}

.admin-shell{
  min-height:100vh;
  background:linear-gradient(180deg, #ffffff, #faf5ff);
}
.admin-sidebar{
  background:linear-gradient(180deg, var(--purple-900), var(--purple-700));
  color:#fff;
}
.admin-sidebar a{ color:rgba(255,255,255,.9); text-decoration:none; }
.admin-sidebar a:hover{ color:#fff; text-decoration:underline; }
.admin-topbar{
  background:#fff;
  border-bottom:1px solid rgba(124,58,237,.18);
}


/* Home blog thumbnails */
.post-thumb{height:140px; object-fit:cover; border-top-left-radius:18px; border-top-right-radius:18px;}
.placeholder-thumb{background:linear-gradient(135deg, rgba(124,58,237,.18), rgba(43,10,87,.10));}
.card-soft img.post-thumb{border-bottom:1px solid rgba(43,10,87,.10);}
