:root{
  --cb-indigo:#13005A; --cb-purple:#5B1FD1; --cb-gold:#F4B400; --cb-ink:#1b1630; --cb-muted:#5d5a73; --cb-bg:#f6f4fb; --cb-line:#e4e0f0;
  --bs-primary:#5B1FD1; --bs-primary-rgb:91,31,209; --bs-link-color:#5B1FD1; --bs-link-hover-color:#13005A;
  --bs-body-font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif; --bs-body-color:#1b1630; --bs-body-bg:#fff;
  --bs-border-radius:.6rem;
}
body{font-size:1rem;line-height:1.6;color:var(--cb-ink)}
h1,h2,h3,h4,h5,.brand-word,.btn,.badge,.section-title{font-family:'Poppins',var(--bs-body-font-family)}
h1,h2,h3{color:var(--cb-indigo);letter-spacing:-.01em}
a{text-underline-offset:.15em}
:focus-visible{outline:3px solid var(--cb-gold);outline-offset:2px}
.skip-link{position:absolute;left:.5rem;top:.5rem;z-index:2000;background:#fff;padding:.5rem 1rem;border-radius:.5rem}

/* buttons */
.btn{font-weight:600;border-radius:.6rem}
.btn-primary{--bs-btn-bg:var(--cb-purple);--bs-btn-border-color:var(--cb-purple);--bs-btn-hover-bg:var(--cb-indigo);--bs-btn-hover-border-color:var(--cb-indigo);--bs-btn-active-bg:var(--cb-indigo);--bs-btn-active-border-color:var(--cb-indigo);--bs-btn-disabled-bg:var(--cb-purple);--bs-btn-disabled-border-color:var(--cb-purple)}
.btn-outline-primary{--bs-btn-color:var(--cb-purple);--bs-btn-border-color:var(--cb-purple);--bs-btn-hover-bg:var(--cb-purple);--bs-btn-hover-border-color:var(--cb-purple);--bs-btn-active-bg:var(--cb-indigo)}
.btn-gold{background:var(--cb-gold);border-color:var(--cb-gold);color:var(--cb-indigo)}
.btn-gold:hover,.btn-gold:focus{background:#dfa300;border-color:#dfa300;color:var(--cb-indigo)}
.btn.is-loading{position:relative;opacity:.7;cursor:progress}
.form-control:focus,.form-select:focus{border-color:var(--cb-purple);box-shadow:0 0 0 .2rem rgba(91,31,209,.18)}

/* nav */
.site-nav{background:#fff;border-bottom:3px solid var(--cb-gold)}
.brand-word{font-weight:700;color:var(--cb-indigo);font-size:1.15rem}
.site-nav .nav-link{font-weight:500;color:var(--cb-indigo)}
.site-nav .nav-link:hover{color:var(--cb-purple)}
.notif-badge{position:absolute;top:0;right:-4px;font-size:.65rem}

/* hero */
.hero{background:var(--cb-bg);padding:3rem 0;border-bottom:1px solid var(--cb-line)}
.hero h1{max-width:18ch}
.hero-logo{max-width:100%;height:auto}
.hero-search .form-control{border-color:var(--cb-indigo)}

/* cards */
.section-title{font-size:1.35rem;font-weight:700;padding-bottom:.5rem;margin-bottom:1.25rem;border-bottom:2px solid var(--cb-line);position:relative}
.section-title::after{content:"";position:absolute;left:0;bottom:-2px;width:64px;height:2px;background:var(--cb-gold)}
.article-card{background:#fff;border:1px solid var(--cb-line);border-radius:.8rem;overflow:hidden;display:flex;flex-direction:column}
.cover-wrap{display:block;aspect-ratio:16/9;background:var(--cb-indigo);overflow:hidden}
.cover-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.cover-fallback{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:var(--cb-indigo)}
.cover-badge{display:flex;width:96px;height:96px;border-radius:50%;background:#fff;align-items:center;justify-content:center}
.card-title-lg{font-size:1.1rem;font-weight:600;line-height:1.35}
.card-title-lg a{color:var(--cb-indigo);text-decoration:none}
.card-title-lg a:hover{color:var(--cb-purple);text-decoration:underline}
.meta a{color:inherit;font-weight:500}
.meta{color:var(--cb-muted)}
.badge-cat{background:rgba(91,31,209,.1);color:var(--cb-purple);font-weight:600;text-decoration:none}
.badge-cat:hover{background:var(--cb-purple);color:#fff}
.badge-community{background:var(--cb-gold);color:var(--cb-indigo);font-weight:600}
.badge-tag{background:var(--cb-bg);color:var(--cb-indigo);border:1px solid var(--cb-line);text-decoration:none;font-weight:500}
.side-block{background:var(--cb-bg);border-radius:.8rem;padding:1.25rem;margin-bottom:1.25rem}
.side-block h2{font-size:1.05rem}
.side-list{padding-left:1.1rem;margin:0}
.side-list li{margin-bottom:.75rem}
.side-list a{font-weight:600;color:var(--cb-indigo);text-decoration:none}
.side-list a:hover{color:var(--cb-purple)}
.cta-band{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;background:var(--cb-indigo);color:#fff;border-radius:1rem;padding:1.75rem}
.cta-band h2{color:#fff}
.empty-state{text-align:center;padding:2.5rem 1rem;border:2px dashed var(--cb-line);border-radius:1rem;background:#fff}
.empty-state>i{font-size:2.2rem;color:var(--cb-purple)}
.pagination{--bs-pagination-active-bg:var(--cb-purple);--bs-pagination-active-border-color:var(--cb-purple);--bs-pagination-color:var(--cb-purple)}

/* article */
.article-title{font-size:clamp(1.8rem,4.5vw,2.7rem);font-weight:700;line-height:1.2}
.article-sub{font-size:1.2rem;color:var(--cb-muted)}
.article-cover{width:100%;border-radius:.8rem;margin:1rem 0 1.5rem}
.prose{font-family:'Source Serif 4',Georgia,serif;font-size:1.15rem;line-height:1.8;max-width:70ch;overflow-wrap:break-word}
.prose h2,.prose h3,.prose h4{font-family:'Poppins',sans-serif;margin:2rem 0 .75rem;scroll-margin-top:90px}
.prose h2{font-size:1.5rem}.prose h3{font-size:1.25rem}
.prose img{max-width:100%;height:auto;border-radius:.5rem}
.prose blockquote{border-left:4px solid var(--cb-gold);padding:.25rem 1.1rem;color:var(--cb-muted);font-style:italic;margin:1.5rem 0}
.prose pre{background:#1b1630;color:#f3f0ff;padding:1rem;border-radius:.6rem;overflow-x:auto}
.prose table{display:block;overflow-x:auto;max-width:100%}
.static-page.prose{font-family:var(--bs-body-font-family);font-size:1.02rem;line-height:1.7}
.toc{background:var(--cb-bg);border-left:4px solid var(--cb-gold);padding:1rem 1.25rem;border-radius:.5rem;margin:1.5rem 0;font-size:.95rem}
.toc ul{list-style:none;padding-left:0;margin:.5rem 0 0}.toc .lvl-3{padding-left:1rem}
.engage-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:2rem;padding:1rem 0;border-top:1px solid var(--cb-line);border-bottom:1px solid var(--cb-line)}
.btn-engage{border:1px solid var(--cb-line);background:#fff;color:var(--cb-indigo)}
.btn-engage:hover{border-color:var(--cb-purple);color:var(--cb-purple)}
.btn-engage.active{background:var(--cb-purple);border-color:var(--cb-purple);color:#fff}
.prevnext{flex:1;max-width:48%;padding:1rem;border:1px solid var(--cb-line);border-radius:.8rem;text-decoration:none;font-weight:600;color:var(--cb-indigo)}
.prevnext:hover{border-color:var(--cb-purple)}
.breadcrumb{font-size:.9rem}

/* avatars */
.avatar{border-radius:50%;object-fit:cover;flex:none}
.avatar-initials{display:inline-flex;align-items:center;justify-content:center;background:var(--cb-purple);color:#fff;font-weight:600;font-family:'Poppins',sans-serif}

/* comments */
.login-prompt{display:flex;gap:.75rem;align-items:center;background:var(--cb-bg);border:1px solid var(--cb-line);border-radius:.8rem;padding:1rem}
.login-prompt>i{font-size:1.5rem;color:var(--cb-purple)}
.comment{margin-top:1.1rem}
.comment-main{padding:.1rem 0}
.comment-body{margin:.4rem 0 .1rem;overflow-wrap:anywhere}
.comment-placeholder{font-style:italic;color:var(--cb-muted)}
.comment-actions .btn-link{padding:.1rem .5rem .1rem 0;text-decoration:none;font-size:.85rem}
.replies{margin-left:.9rem;padding-left:1rem;border-left:2px solid var(--cb-line)}
.replies .replies{border-left-color:rgba(91,31,209,.25)}
.depth-capped>.replies{margin-left:0;padding-left:.6rem}   /* keeps very deep threads readable on phones; depth itself is unlimited */
.replies-toggle,.replies-more{font-size:.85rem;text-decoration:none;padding-left:0;font-weight:600}
@media (max-width:575.98px){.replies{margin-left:.35rem;padding-left:.65rem}}
.composer textarea{resize:vertical}

/* account & admin */
.account-nav .list-group-item{font-weight:500;color:var(--cb-indigo)}
.account-nav .list-group-item.active{background:var(--cb-purple);border-color:var(--cb-purple);color:#fff}
.account-nav i{margin-right:.4rem}
.stat-tile{background:#fff;border:1px solid var(--cb-line);border-radius:.8rem;padding:1rem}
.stat-tile>i{color:var(--cb-purple);font-size:1.3rem}
.stat-num{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.8rem;color:var(--cb-indigo);line-height:1.1}
.sub-card{background:#fff;border:1px solid var(--cb-line);border-radius:.8rem;padding:1rem}
.feedback{background:#fff8e1;border-left:4px solid var(--cb-gold);padding:.6rem .9rem;border-radius:.4rem;font-size:.95rem}
.auth-card{max-width:440px;background:#fff;border:1px solid var(--cb-line);border-radius:1rem;padding:2rem}
.author-head .avatar{flex:none}
#editor{min-height:340px;background:#fff;font-family:'Source Serif 4',Georgia,serif;font-size:1.05rem}
.ql-toolbar.ql-snow{border-radius:.5rem .5rem 0 0}.ql-container.ql-snow{border-radius:0 0 .5rem .5rem}
.admin-body{background:var(--cb-bg)}
.admin-top{background:var(--cb-indigo);position:sticky;top:0;z-index:1030}
.admin-logo-chip{display:inline-flex;background:#fff;border-radius:.6rem;padding:.2rem}
.admin-top .brand-word{color:#fff}
.admin-side{width:240px;flex:none;background:#fff;border-right:1px solid var(--cb-line);min-height:calc(100vh - 56px)}
@media (max-width:991.98px){.admin-side{width:280px;min-height:0}}
.admin-side .nav-link{color:var(--cb-indigo);font-weight:500;border-radius:.5rem}
.admin-side .nav-link.active{background:var(--cb-purple);color:#fff}
.admin-side .nav-link i{margin-right:.5rem}
.admin-main{min-width:0}

/* footer */
.site-footer{background:var(--cb-bg);border-top:3px solid var(--cb-gold)}
.site-footer h2{font-size:.95rem;color:var(--cb-indigo)}
.site-footer a{color:var(--cb-indigo);text-decoration:none}.site-footer a:hover{color:var(--cb-purple);text-decoration:underline}
.footer-logo{max-width:100%;height:auto}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
img{max-width:100%}

.comment-main.comment-highlight{background:rgba(244,180,0,.18);outline:2px solid var(--cb-gold);border-radius:.5rem;padding:.5rem;transition:background .3s}

/* ---------- Member dashboard ---------- */
.dash-body{background:var(--cb-bg)}
.dash-top{position:sticky;top:0;z-index:1030;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;background:#fff;border-bottom:3px solid var(--cb-gold)}
.dash-bell{border:1px solid var(--cb-line);color:var(--cb-indigo)}
.dash-bell .notif-badge{top:-6px;right:-6px}
.dash-user{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--cb-indigo);border:1px solid var(--cb-line);padding:.2rem .6rem .2rem .25rem;border-radius:2rem}
.dash-shell{display:flex;min-height:calc(100vh - 64px)}
.dash-side{width:264px;flex:none;background:#fff;border-right:1px solid var(--cb-line)}
@media (min-width:992px){.dash-side{position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto}}
@media (max-width:991.98px){.dash-side{width:290px}}
.dash-profile{display:flex;gap:.75rem;align-items:center;padding:.75rem;background:var(--cb-bg);border-radius:.8rem}
.min-w-0{min-width:0}
.dash-nav{display:flex;flex-direction:column;gap:.15rem}
.dash-nav a{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;border-radius:.6rem;color:var(--cb-indigo);font-weight:500;text-decoration:none}
.dash-nav a i{font-size:1.1rem;color:var(--cb-purple)}
.dash-nav a:hover{background:var(--cb-bg)}
.dash-nav a.active{background:var(--cb-purple);color:#fff}.dash-nav a.active i{color:#fff}
.dash-content{flex:1;min-width:0;display:flex;flex-direction:column}
.dash-main{flex:1;padding:1.5rem;max-width:1180px;width:100%;margin:0 auto}
@media (max-width:575.98px){.dash-main{padding:1rem}}
.dash-hero{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;background:var(--cb-indigo);color:#fff;border-radius:1rem;padding:1.6rem 1.75rem;border-bottom:4px solid var(--cb-gold)}
.dash-hero h1{color:#fff}
.dash-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:600;color:var(--cb-gold)}
.dash-stat{display:flex;align-items:center;gap:.9rem;background:#fff;border:1px solid var(--cb-line);border-radius:.9rem;padding:1rem}
.dash-stat-ic{display:inline-flex;width:46px;height:46px;border-radius:.8rem;align-items:center;justify-content:center;font-size:1.3rem}
.dash-stat-purple .dash-stat-ic{background:rgba(91,31,209,.12);color:var(--cb-purple)}
.dash-stat-green .dash-stat-ic{background:rgba(25,135,84,.12);color:#198754}
.dash-stat-gold .dash-stat-ic{background:rgba(244,180,0,.2);color:#8a6500}
.dash-stat-indigo .dash-stat-ic{background:rgba(19,0,90,.1);color:var(--cb-indigo)}
.dash-card{background:#fff;border:1px solid var(--cb-line);border-radius:.9rem;overflow:hidden}
.dash-card-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--cb-line)}
.dash-card-head h2{color:var(--cb-indigo);font-family:'Poppins',sans-serif;font-weight:600}
.dash-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cb-muted);font-weight:600;background:var(--cb-bg)}
.dash-note{display:flex;gap:.75rem;padding:.8rem 1rem;border-bottom:1px solid var(--cb-line)}
.dash-note:last-child{border-bottom:0}
.dash-dot{flex:none;width:9px;height:9px;border-radius:50%;margin-top:.5rem;background:var(--cb-line)}
.dash-note.unread{background:rgba(91,31,209,.05)}.dash-note.unread .dash-dot{background:var(--cb-purple)}
.progress{height:8px}.progress-bar{background:var(--cb-purple)}
.dash-foot{background:#fff;border-top:1px solid var(--cb-line);padding:1rem 1.5rem}
.dash-foot a{color:var(--cb-indigo);text-decoration:none}.dash-foot a:hover{color:var(--cb-purple);text-decoration:underline}
.dash-main h1.h3{color:var(--cb-indigo);margin-bottom:1rem}

/* ---------- Administration (distinct dark theme) ---------- */
.adm-body{background:#eceef6}
.adm-top{position:sticky;top:0;z-index:1030;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;background:#0c0040;border-bottom:3px solid var(--cb-gold)}
.adm-title{color:#fff;font-family:'Poppins',sans-serif;font-weight:600;letter-spacing:.01em}
.adm-role{background:var(--cb-gold);color:var(--cb-indigo);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .55rem;border-radius:2rem}
.adm-shell{display:flex;min-height:calc(100vh - 60px)}
.adm-side{width:252px;flex:none;background:var(--cb-indigo);color:#fff}
@media (min-width:992px){.adm-side{position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto}}
@media (max-width:991.98px){.adm-side{width:280px;background:var(--cb-indigo)}}
.adm-group{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--cb-gold);margin:1rem .5rem .4rem}
.adm-group:first-child{margin-top:.2rem}
.adm-nav{display:flex;flex-direction:column;gap:.1rem}
.adm-nav a{display:flex;align-items:center;gap:.7rem;padding:.55rem .75rem;border-radius:.5rem;color:rgba(255,255,255,.82);text-decoration:none;font-weight:500;font-size:.95rem;border-left:3px solid transparent}
.adm-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.adm-nav a.active{background:rgba(255,255,255,.14);color:#fff;border-left-color:var(--cb-gold)}
.adm-nav a i{font-size:1.05rem;color:var(--cb-gold)}
.adm-content{flex:1;min-width:0;display:flex;flex-direction:column}
.adm-main{flex:1;padding:1.5rem;max-width:1280px;width:100%;margin:0 auto}
@media (max-width:575.98px){.adm-main{padding:1rem}}
.adm-foot{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:.8rem 1.5rem;font-size:.8rem;color:var(--cb-muted);border-top:1px solid #d9dcec;background:#fff}
.adm-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.9rem;border-bottom:2px solid #d9dcec}
.adm-head h1{color:var(--cb-indigo)}
.adm-eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--cb-purple)}
.adm-card{background:#fff;border:1px solid #d9dcec;border-top:3px solid var(--cb-purple);border-radius:.6rem;overflow:hidden}
.adm-card-head{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-bottom:1px solid #eceef6}
.adm-card-head h2{font-family:'Poppins',sans-serif;font-weight:600;color:var(--cb-indigo)}
.adm-alert{display:flex;align-items:center;gap:.9rem;padding:1rem;background:#fff;border:1px solid #d9dcec;border-left:5px solid #c9ccdf;border-radius:.6rem;text-decoration:none;color:var(--cb-indigo)}
.adm-alert>i{font-size:1.6rem;color:var(--cb-muted)}
.adm-alert.has-items{border-left-color:var(--cb-gold);background:#fffaf0}.adm-alert.has-items>i{color:#b88700}
.adm-alert:hover{border-color:var(--cb-purple)}
.adm-alert-n{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.7rem;line-height:1}
.adm-quick{display:flex;flex-wrap:wrap;gap:.5rem}
.adm-kpi{background:#fff;border:1px solid #d9dcec;border-radius:.6rem;padding:.9rem 1rem}
.adm-kpi-n{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.5rem;color:var(--cb-indigo);line-height:1.1}
.adm-kv th{width:38%;font-weight:600;color:var(--cb-muted);padding-left:1rem}
.adm-body .table{--bs-table-bg:transparent}
.adm-body .table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cb-muted)}

/* ---------- Hover / focus states (all buttons & nav links) ---------- */
.btn,.dash-nav a,.dash-bell,.dash-user,.adm-nav a,.adm-alert,.dropdown-item,.list-group-item-action,.page-link,.btn-engage,.prevnext,.badge-cat,.dash-stat,.dash-card,.stat-tile,.sub-card{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.btn:not(:disabled):not(.disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(19,0,90,.18)}
.btn:not(:disabled):not(.disabled):active{transform:translateY(0);box-shadow:none}
.btn-primary:hover,.btn-primary:focus{background:var(--cb-indigo);border-color:var(--cb-indigo);color:#fff}
.btn-outline-primary:hover,.btn-outline-primary:focus{background:var(--cb-purple);border-color:var(--cb-purple);color:#fff}
.btn-gold:hover,.btn-gold:focus{background:#dfa300;border-color:#dfa300;color:var(--cb-indigo)}
.btn-light:hover,.btn-light:focus{background:#ece6fb;border-color:var(--cb-purple);color:var(--cb-purple)}
.btn-outline-light:hover,.btn-outline-light:focus{background:var(--cb-gold);border-color:var(--cb-gold);color:var(--cb-indigo)}
.btn-outline-secondary:hover,.btn-outline-danger:hover,.btn-outline-success:hover{box-shadow:0 4px 12px rgba(19,0,90,.18)}
.btn-link:hover{color:var(--cb-indigo);text-decoration:underline}
.btn-engage:hover{background:rgba(91,31,209,.08)}
.dash-bell:hover,.dash-user:hover{background:#ece6fb;border-color:var(--cb-purple);color:var(--cb-purple)}
.dash-nav a:hover{background:#ece6fb;color:var(--cb-purple);transform:translateX(3px)}
.dash-nav a.active:hover{background:var(--cb-indigo);color:#fff;transform:none}
.dash-nav a.active:hover i{color:#fff}
.dash-side .btn-outline-primary:hover{background:var(--cb-purple);color:#fff}
.dash-side .btn-light:hover{background:#ece6fb}
.adm-nav a:hover{background:rgba(255,255,255,.14);color:#fff;transform:translateX(3px)}
.adm-nav a.active:hover{transform:none}
.adm-alert:hover{border-color:var(--cb-purple);box-shadow:0 4px 12px rgba(19,0,90,.12);transform:translateY(-1px)}
.dropdown-item:hover,.dropdown-item:focus{background:#ece6fb;color:var(--cb-purple)}
.list-group-item-action:hover{background:#ece6fb;color:var(--cb-purple)}
.page-link:hover{background:#ece6fb;color:var(--cb-purple);border-color:var(--cb-purple)}
.dash-stat:hover,.stat-tile:hover,.sub-card:hover{border-color:var(--cb-purple);box-shadow:0 4px 12px rgba(19,0,90,.1)}
.dash-table tbody tr:hover>*{background:rgba(91,31,209,.05)}
.dash-note:hover{background:rgba(91,31,209,.04)}
.card a.stretched-link:hover,.card-title-lg a:hover{color:var(--cb-purple)}
.btn,.dash-nav a,.adm-nav a,.dropdown-item,.page-link{cursor:pointer}

/* Bootstrap's .offcanvas-lg forces a transparent background on desktop, which made the admin sidebar
   (white text) invisible on a light page. Re-assert the sidebar backgrounds and widths. */
.adm-side{background-color:var(--cb-indigo)!important}
.dash-side{background-color:#fff!important}
@media (min-width:992px){.adm-side{width:252px!important;flex:none}.dash-side{width:264px!important;flex:none}}

/* ---------- Admin readability upgrade ---------- */
.adm-side{background-color:#13005A!important;color:#fff}
.adm-side .offcanvas-body{background-color:#13005A!important}
.adm-group{color:#FFD65A;font-size:.72rem;letter-spacing:.14em;margin:1.2rem .5rem .45rem;opacity:1}
.adm-nav a{color:#fff!important;font-size:1rem;font-weight:500;padding:.65rem .85rem;border-radius:.6rem;opacity:1}
.adm-nav a i{color:#FFD65A!important;font-size:1.15rem}
.adm-nav a:hover{background:rgba(255,255,255,.16)!important;color:#fff!important}
.adm-nav a.active{background:#5B1FD1!important;color:#fff!important;border-left-color:#F4B400;font-weight:600}
.adm-nav a.active i{color:#fff!important}
.adm-nav a.active:hover{background:#6f38e0!important}
/* quick-action buttons: solid, larger, clearly legible */
.adm-quick .btn{background:#fff;color:#13005A;border:1.5px solid #5B1FD1;font-weight:600;font-size:.92rem;padding:.5rem .9rem;display:inline-flex;align-items:center;gap:.4rem}
.adm-quick .btn i{color:#5B1FD1}
.adm-quick .btn:hover,.adm-quick .btn:focus{background:#5B1FD1;color:#fff;border-color:#5B1FD1}
.adm-quick .btn:hover i,.adm-quick .btn:focus i{color:#fff}
/* top-bar buttons */
.adm-top .btn-outline-light{border-width:1.5px;font-weight:600;color:#fff}
.adm-top .btn-outline-light:hover{background:#fff;color:#13005A;border-color:#fff}
.adm-top .btn-gold{font-weight:700}
/* links inside admin cards */
.adm-card-head a,.adm-main a:not(.btn):not(.adm-alert){font-weight:600}

/* ---------- Public header (professional) ---------- */
.topbar{background:var(--cb-indigo);color:rgba(255,255,255,.85);font-size:.8rem;padding:.42rem 0}
.topbar i{color:var(--cb-gold);margin-right:.35rem}
.topbar-links{display:flex;gap:1.4rem}
.topbar-links a{color:rgba(255,255,255,.85);text-decoration:none;font-weight:500}
.topbar-links a:hover{color:var(--cb-gold)}
.topbar-links i{margin:0 0 0 .25rem;font-size:.7rem}
.site-nav{background:#fff;border-bottom:1px solid var(--cb-line);padding:.55rem 0;transition:box-shadow .2s ease}
.site-nav.scrolled{box-shadow:0 6px 18px rgba(19,0,90,.10)}
.site-nav .navbar-brand{margin-right:1.5rem}
.brand-text{display:flex;flex-direction:column;line-height:1.1}
.brand-sub{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cb-muted);font-weight:600;margin-top:.15rem}
.nav-main .nav-link{position:relative;font-family:'Poppins',sans-serif;font-weight:500;font-size:.95rem;color:var(--cb-indigo);padding:.6rem .95rem}
.nav-main .nav-link:hover,.nav-main .nav-link:focus{color:var(--cb-purple)}
.nav-main .nav-link.active{color:var(--cb-purple);font-weight:600}
@media (min-width:992px){
  .nav-main .nav-link::after{content:"";position:absolute;left:.95rem;right:.95rem;bottom:.1rem;height:3px;border-radius:3px;background:var(--cb-gold);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
  .nav-main .nav-link:hover::after,.nav-main .nav-link.active::after{transform:scaleX(1)}
  .nav-main .dropdown-toggle::after{position:static;display:inline-block;height:auto;background:none;border-radius:0;transform:none;margin-left:.4em;vertical-align:.2em;border-top:.3em solid;border-right:.3em solid transparent;border-left:.3em solid transparent}
}
.site-nav .dropdown-menu{border:1px solid var(--cb-line);border-radius:.8rem;padding:.4rem;margin-top:.6rem}
.site-nav .dropdown-item{border-radius:.5rem;font-weight:500;padding:.5rem .8rem}
.nav-search{position:relative;width:100%}
.nav-search>i{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);color:var(--cb-muted);pointer-events:none}
.nav-search .form-control{border-radius:2rem;background:var(--cb-bg);border:1px solid var(--cb-line);padding:.5rem 1rem .5rem 2.5rem;font-size:.92rem;transition:width .2s ease,border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.nav-search .form-control:focus{background:#fff;border-color:var(--cb-purple);box-shadow:0 0 0 .2rem rgba(91,31,209,.15)}
@media (min-width:992px){.nav-search{width:210px}.nav-search:focus-within{width:270px}.nav-search .form-control{width:100%}}
.nav-auth .nav-login{font-family:'Poppins',sans-serif;font-weight:600;font-size:.92rem;color:var(--cb-indigo);text-decoration:none;padding:.4rem .75rem;border-radius:2rem;transition:background-color .18s ease,color .18s ease}
.nav-auth .nav-login:hover{background:#ece6fb;color:var(--cb-purple)}
@media (max-width:991.98px){.nav-main{margin-bottom:.5rem}.nav-main .nav-link{padding:.7rem 0;border-bottom:1px solid var(--cb-line)}.nav-main .nav-link.active{border-left:3px solid var(--cb-gold);padding-left:.7rem}.nav-auth{margin-top:.5rem}.nav-auth .btn{flex:1}.nav-auth .nav-login{flex:1;text-align:center;border:1.5px solid var(--cb-purple)}}

/* ---------- Hero ---------- */
.hero{background:linear-gradient(135deg,#f8f6fe 0%,#ece6fb 100%);padding:3.5rem 0 4rem;border-bottom:1px solid var(--cb-line);overflow:hidden}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--cb-line);color:var(--cb-purple);font-family:'Poppins',sans-serif;font-weight:600;font-size:.8rem;padding:.3rem .8rem;border-radius:2rem;margin-bottom:1rem}
.hero-eyebrow i{color:var(--cb-gold)}
.hero h1 .hl{color:var(--cb-purple)}
.hero-art{max-width:100%;height:auto;display:block;margin:0 auto}
@media (max-width:991.98px){.hero{padding:2.25rem 0 2.5rem}.hero-art{max-width:380px}}
