:root{
  --card-radius:24px;
  --soft-border:rgba(15,61,122,.08);
  --soft-shadow:0 16px 40px rgba(15,23,42,.06);
  --hero-shadow:0 25px 60px rgba(15,23,42,.08);
}
html,body{min-height:100%;}
.page-wrap{min-height:100vh;display:flex;flex-direction:column;}
main{flex:1 0 auto;}
.topbar{background:#071321;color:#dce7f4;font-size:.9rem;}
.topbar a{color:#fff;text-decoration:none;}
.navbar{background:linear-gradient(135deg,var(--header-bg), color-mix(in srgb, var(--brand-primary) 68%, #04101f));box-shadow:0 10px 30px rgba(0,0,0,.10);}
.navbar .nav-link,.navbar .navbar-brand{color:#fff!important;}
.navbar .nav-link{font-weight:600;letter-spacing:.1px;opacity:.92;}
.navbar .nav-link.active,.navbar .nav-link:hover{opacity:1;}
.navbar-toggler{border-color:rgba(255,255,255,.2)!important;}
.brand-logo{height:46px;width:auto;display:block;filter:drop-shadow(0 4px 10px rgba(0,0,0,.18));}
.brand-mark{width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.14);display:inline-flex;align-items:center;justify-content:center;}
.hero-soft{background:linear-gradient(135deg, rgba(255,255,255,.95), rgba(247,250,255,.92));border:1px solid var(--soft-border);border-radius:32px;box-shadow:var(--hero-shadow);}
.hero-surface{position:relative;overflow:hidden;}
.hero-surface:before{content:'';position:absolute;inset:auto -80px -120px auto;width:280px;height:280px;background:radial-gradient(circle, color-mix(in srgb, var(--brand-accent) 30%, transparent), transparent 68%);opacity:.4;border-radius:50%;}
.section-heading{font-size:1.8rem;font-weight:800;line-height:1.2;}
.section-kicker{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:#667085;font-weight:700;}
.card-clean{border:0;border-radius:var(--card-radius);box-shadow:var(--soft-shadow);background:#fff;}
.icon-box{width:60px;height:60px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg, color-mix(in srgb, var(--brand-primary) 15%, white), color-mix(in srgb, var(--brand-accent) 18%, white));color:var(--brand-primary);font-size:1.45rem;box-shadow:0 14px 26px rgba(15,61,122,.08);}
.mini-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:999px;background:#fff;border:1px solid rgba(15,61,122,.08);font-size:.92rem;box-shadow:0 12px 22px rgba(15,23,42,.04);font-weight:600;}
.kpi-box{padding:1.2rem 1.15rem;border-radius:22px;background:#fff;border:1px solid rgba(15,61,122,.08);box-shadow:var(--soft-shadow);}
.kpi-num{font-size:2rem;font-weight:800;line-height:1;}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.surface-muted{background:linear-gradient(135deg, rgba(15,61,122,.06), rgba(200,155,60,.08));border:1px solid rgba(15,61,122,.06);border-radius:22px;}
.btn-primary,.btn-primary:disabled{background:var(--brand-primary)!important;border-color:var(--brand-primary)!important;box-shadow:0 14px 28px rgba(15,61,122,.18);}
.btn-outline-primary{color:var(--brand-primary)!important;border-color:var(--brand-primary)!important;font-weight:600;}
.btn-outline-primary:hover{background:var(--brand-primary)!important;color:#fff!important;}
.btn-outline-light:hover{color:#0b274c!important;}
.official-divider{height:1px;background:linear-gradient(90deg, transparent, rgba(15,61,122,.12), transparent);}
.content-body{font-size:1rem;line-height:1.9;color:#344054;}
.content-body h2,.content-body h3,.content-body h4{color:#101828;font-weight:800;margin-top:1.2rem;}
.content-body p:last-child{margin-bottom:0;}
.admin-chip{font-size:.78rem;background:rgba(255,255,255,.12);padding:.35rem .7rem;border-radius:999px;color:#fff;}
.site-footer{background:linear-gradient(135deg,#071321,#0d2344);}
.footer-link{text-decoration:none;color:rgba(255,255,255,.88);font-size:.95rem;}
.footer-link:hover{color:#fff;}
.social-circle{width:42px;height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.10);color:#fff;text-decoration:none;transition:.2s ease;}
.social-circle:hover{background:rgba(255,255,255,.18);color:#fff;transform:translateY(-1px);}
.page-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.5rem;}
.page-aside .card-clean{position:sticky;top:100px;}
.table thead th{font-weight:700;}
.form-control,.form-select{border-radius:14px;padding:.76rem .95rem;border-color:#d0d5dd;}
.form-control:focus,.form-select:focus{box-shadow:0 0 0 .2rem rgba(15,61,122,.12);border-color:color-mix(in srgb, var(--brand-primary) 55%, white);}
.alert{border:0;box-shadow:var(--soft-shadow);}
.stat-strip{display:flex;flex-wrap:wrap;gap:1rem;}
.stat-badge{display:flex;gap:.7rem;align-items:center;padding:1rem 1.1rem;background:#fff;border:1px solid rgba(15,61,122,.08);border-radius:18px;box-shadow:var(--soft-shadow);}
.stat-badge .num{font-size:1.3rem;font-weight:800;line-height:1;}
@media (max-width: 991.98px){
  .page-shell{grid-template-columns:1fr;}
  .page-aside .card-clean{position:static;}
}
@media (max-width: 767.98px){
  .section-heading{font-size:1.55rem;}
  .kpi-num{font-size:1.6rem;}
  .metric-grid{grid-template-columns:1fr;}
}


/* vFinal Elite Content Studio */
.admin-quickbar{display:flex;flex-wrap:wrap;gap:.75rem;padding:.85rem 1rem;border:1px solid rgba(15,61,122,.12);border-radius:1rem;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(247,249,252,.92));box-shadow:0 12px 30px rgba(13,23,44,.06)}
.admin-quickbar a{display:inline-flex;align-items:center;gap:.35rem;padding:.6rem .95rem;border-radius:999px;text-decoration:none;color:#0f3d7a;background:#eef4ff;font-weight:600}.admin-quickbar a:hover{background:#dfeafd}
.studio-card-link{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;border:1px solid rgba(15,61,122,.10);border-radius:1rem;background:linear-gradient(180deg,#fff,#fbfdff);text-decoration:none;color:inherit;transition:.18s ease;box-shadow:0 10px 24px rgba(13,23,44,.04)}
.studio-card-link:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(13,23,44,.08)}
.studio-icon{width:3rem;height:3rem;border-radius:1rem;display:grid;place-items:center;background:linear-gradient(135deg,#0f3d7a,#1e5ab3);color:#fff;font-size:1.1rem;flex:0 0 auto}
.studio-stat .studio-stat-label,.studio-mini .studio-stat-label{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#667085;margin-bottom:.4rem}.studio-stat .studio-stat-num{font-size:2rem;font-weight:800;color:#0f1728;line-height:1}
.studio-steps{display:grid;gap:1rem;padding-left:1rem}.studio-steps li span{display:block;color:#667085;font-size:.92rem;margin-top:.25rem}.dashboard-quick{height:100%}
.page-cover-wrap{border-radius:1.5rem;overflow:hidden;background:linear-gradient(180deg,#f4f7fb,#eef3fb);border:1px solid rgba(15,61,122,.12)}
.page-cover-img{display:block;width:100%;height:320px;object-fit:cover}.shadow-soft{box-shadow:0 18px 44px rgba(13,23,44,.10)}.page-hero-pro{overflow:hidden}
.editor-pro-card{position:relative}.editor-media-box{padding:1rem;border:1px solid rgba(15,61,122,.10);border-radius:1rem;background:linear-gradient(180deg,#fff,#fbfdff)}
.page-image-placeholder{display:grid;place-items:center;text-align:center;min-height:220px;border:1px dashed rgba(15,61,122,.18);border-radius:1rem;background:#f8fbff;gap:.6rem}.page-image-placeholder i{font-size:2rem;color:#1e5ab3}
.editor-toolbar-pro{display:flex;flex-wrap:wrap;gap:.5rem}.code-editor-pro{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;min-height:520px;background:#0f1720;color:#e6edf3;border:1px solid rgba(15,61,122,.18);border-radius:1rem;padding:1rem 1.1rem;line-height:1.55}.page-quick-card{background:linear-gradient(180deg,#ffffff,#f7f9fc)}
.live-preview-wrap{border:1px solid rgba(15,61,122,.12);border-radius:1rem;overflow:hidden;background:#fff}.live-preview-head{padding:.9rem 1rem;background:#f8fbff;border-bottom:1px solid rgba(15,61,122,.10);font-weight:700}.live-preview-body{padding:1rem 1rem 1.25rem;background:#fff;min-height:180px}
.media-tile{border:1px solid rgba(15,61,122,.10);border-radius:1rem;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(13,23,44,.04)}.media-thumb-wrap{aspect-ratio:4/3;background:#f7f9fc;overflow:hidden}.media-thumb{width:100%;height:100%;object-fit:cover}
@media (max-width:991.98px){.page-cover-img{height:250px}.code-editor-pro{min-height:380px}}


/* Global font inheritance patch */
html,body,body *,button,input,textarea,select,.btn,.form-control,.form-select,.navbar,.dropdown-menu,.card,.table,.modal,.page-builder-content{font-family:var(--site-font, inherit)!important;}
