/* ========================================================================
   KingsAdmin Stage 7.20 — Royal Purple Brand System
   Final visual override layer. No database, permission, or business changes.
   ======================================================================== */

:root{
  /* Core product identity */
  --ka-bg:#F8F7FA;
  --ka-surface:#FFFFFF;
  --ka-surface-soft:#FBFAFD;
  --ka-surface-muted:#F3F1F7;
  --ka-text:#18171C;
  --ka-text-2:#66636D;
  --ka-text-3:#AAA7B0;
  --ka-border:#E9E6EE;
  --ka-border-strong:#DCD7E5;

  --ka-primary:#5B4B9A;
  --ka-primary-2:#7564B8;
  --ka-primary-deep:#3E336F;
  --ka-primary-darker:#2D254F;
  --ka-primary-soft:#F1EEFA;
  --ka-primary-faint:#F8F6FD;

  --ka-gold:#D9A441;
  --ka-gold-deep:#A87922;
  --ka-gold-soft:#FFF7E5;

  /* Semantic/data accents */
  --ka-teal:#45B8A9;
  --ka-teal-soft:#E9F8F5;
  --ka-coral:#E86464;
  --ka-coral-soft:#FFF0F0;
  --ka-success:#3E8A68;
  --ka-warning:#B98128;
  --ka-danger:#D4555C;
  --ka-info:#527FBA;

  /* Typography — modern, clean, and ministry-professional */
  --ka-font-ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ka-font-display:"Manrope","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

  --ka-focus:rgba(91,75,154,.20);
  --ka-shadow-1:0 1px 2px rgba(42,35,73,.025),0 10px 30px rgba(42,35,73,.055);
  --ka-shadow-2:0 22px 58px rgba(42,35,73,.11);

  /* Legacy token bridge: older screens inherit the new identity. */
  --burgundy:var(--ka-primary);
  --burgundy-bright:var(--ka-primary-2);
  --burgundy-deep:var(--ka-primary-deep);
  --wine-900:var(--ka-primary-darker);
  --wine-950:#211A3A;
  --sidebar:var(--ka-primary-darker);
  --sidebar-muted:#C8C1E0;
  --canvas:var(--ka-bg);
  --canvas-warm:#FBFAFD;
  --surface:var(--ka-surface);
  --ink:var(--ka-text);
  --ink-soft:var(--ka-text-2);
  --muted:var(--ka-text-2);
  --line:var(--ka-border);

  --ka-wine:var(--ka-primary);
  --ka-wine-2:var(--ka-primary-2);
  --ka-wine-deep:var(--ka-primary-deep);
  --ka-wine-black:var(--ka-primary-darker);
  --ka-rose:var(--ka-primary-soft);
  --ka-rose-2:var(--ka-primary-faint);
  --ka-canvas:var(--ka-bg);
  --ka-paper:var(--ka-surface);
  --ka-ink:var(--ka-text);
  --ka-ink-2:var(--ka-text-2);
  --ka-muted:var(--ka-text-2);
  --ka-soft:var(--ka-text-3);
  --ka-line:var(--ka-border);
  --ka-line-2:#F1EEF5;

  /* Standalone module bridges */
  --disc:var(--ka-primary);
  --disc-dark:var(--ka-primary-deep);
  --disc-deep:var(--ka-primary-darker);
  --disc-light:#8C7BC7;
  --paper:var(--ka-surface);
  --wash:var(--ka-surface-soft);
  --green:var(--ka-success);
  --green-soft:#EAF5EF;

  --fc:var(--ka-primary);
  --fc2:var(--ka-primary-2);
  --fcdeep:var(--ka-primary-darker);
  --fcink:var(--ka-text);
  --fcmuted:var(--ka-text-2);
  --fcsoft:var(--ka-text-3);
  --fcline:var(--ka-border);
  --fcwash:var(--ka-surface-soft);
  --fcwash2:#FCFBFE;
  --gold:var(--ka-gold);

  /* Login token bridge */
  --ka-login-primary:var(--ka-primary);
  --ka-login-primary-deep:var(--ka-primary-darker);
  --ka-login-primary-2:var(--ka-primary-2);
  --ka-login-gold:var(--ka-gold);
  --ka-login-gold-soft:var(--ka-gold-soft);
  --ka-login-ink:var(--ka-text);
  --ka-login-muted:var(--ka-text-2);
  --ka-login-line:var(--ka-border);
}

/* Typography --------------------------------------------------------- */
html{
  font-family:var(--ka-font-ui);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body,button,input,select,textarea{font-family:var(--ka-font-ui)!important}
h1,h2,h3,h4,h5,h6,
.ka-brand-context strong,.ka-module-name,.ka-fc-module strong,
.faith-hero h1,.report-hero h1,.pcs-hero h1,.profile-hero h1,.pulse-hero h1,
.ev-hero h1,.calendar-hero h1,.platform-hero h1,.disc-hero h1,.fc-hero h1,
.fc-page-hero h1,.ks-login-card h1,.ks-media-panel h1,
[class*="metric"] strong,[class*="stat"] b,[class*="score"] strong{
  font-family:var(--ka-font-display)!important;
  letter-spacing:-.025em;
}
h1{font-weight:800}
h2,h3{font-weight:700}
.nav-link,.subnav-link,.disc-links a,.fc-nav-links a,button,.btn-primary,.platform-button,.pcs-btn,.disc-btn,.fc-btn,.ev-btn{
  font-weight:600;
  letter-spacing:-.01em;
}
.eyebrow,.report-kicker,.panel-kicker,.pcs-kicker,.faith-kicker,.faith-section-kicker,
.ac-kicker,.mp-kicker,.mp-panel-kicker,.ev-kicker,.profile-kicker,.disc-kicker,.fc-kicker,[class*="-kicker"]{
  font-family:var(--ka-font-ui)!important;
  font-weight:700!important;
  letter-spacing:.075em;
}

html{background:var(--ka-bg)!important}
body:not(.ks-login-body),.disc-body,.disc-main,.fc-body{
  color:var(--ka-text)!important;
}
body:not(.ks-login-body){
  background:
    radial-gradient(circle at 94% -10%,rgba(91,75,154,.075),transparent 29rem),
    radial-gradient(circle at 6% 100%,rgba(217,164,65,.045),transparent 24rem),
    linear-gradient(180deg,#FCFBFD 0%,var(--ka-bg) 62%,#FAF9FC 100%)!important;
}

/* Product shell ------------------------------------------------------ */
.topbar,.disc-nav,.fc-nav{
  background:rgba(255,255,255,.965)!important;
  border-color:rgba(233,230,238,.96)!important;
  box-shadow:0 5px 24px rgba(45,37,79,.04)!important;
}
.sidebar{
  background:
    radial-gradient(circle at 8% -8%,rgba(217,164,65,.13),transparent 18rem),
    linear-gradient(180deg,#2D254F 0%,#362C60 55%,#251E43 100%)!important;
}
.sidebar-section-label{color:#BEB7D2!important}
.nav-link{color:#EEEAF7!important}
.nav-link:hover{background:rgba(255,255,255,.075)!important;color:#fff!important}
.nav-link.active,.nav-link.active-parent{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(217,164,65,.19),rgba(117,100,184,.19))!important;
  box-shadow:inset 3px 0 0 var(--ka-gold)!important;
}
.nav-link.active .nav-symbol,.nav-link.active-parent .nav-symbol{
  background:rgba(217,164,65,.16)!important;
  color:#FFE6A7!important;
}
.subnav-link{color:#D7D1E7!important}
.subnav-link.active{color:#FFE4A2!important}
.church-pill{background:#fff!important;border-color:var(--ka-border)!important;color:var(--ka-text)!important}
.topbar-user,.notification-button,.topbar-signout,.menu-button{
  background:#fff!important;border-color:var(--ka-border)!important;color:var(--ka-primary-deep)!important;
}

/* KingsAdmin master brand ------------------------------------------- */
.ka-brand-context{border-left-color:var(--ka-border)!important}
.ka-brand-context strong,.disc-brand .ka-module-name,.fc-brand .ka-fc-module strong{color:var(--ka-primary-deep)!important}
.ka-brand-context small,.fc-brand .ka-fc-module small{color:var(--ka-text-3)!important}
.disc-brand .ka-module-name,.fc-brand .ka-fc-module{border-left-color:var(--ka-border)!important}
.church-pill-logo{border-color:var(--ka-border)!important}

/* Cards / surfaces --------------------------------------------------- */
.card,.table-card,.form-card,.enterprise-panel,.report-panel,.faith-panel,.pcs-panel,
.pcs-detail-main,.pcs-detail-side,.pcs-form-card,.platform-card,.platform-table-card,
.ac-panel,.member-stats article,.prayer-table-card,.prayer-form-card,.current-rating-card,
.profile-identity-card,.profile-form-card,.pulse-card,.completed-item,.ev-panel,.ev-form-card,
.calendar-card,.pulse-section,.profile-panel{
  background:var(--ka-surface)!important;
  border-color:var(--ka-border)!important;
  box-shadow:var(--ka-shadow-1)!important;
}

/* Buttons / controls ------------------------------------------------- */
.btn-primary,.platform-button.primary,.pcs-btn.wine,.disc-btn,.fc-btn.primary,.ev-btn.primary,
input[type="submit"],button[type="submit"],.ks-login-button{
  background:linear-gradient(135deg,var(--ka-primary-deep),var(--ka-primary))!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 10px 24px rgba(62,51,111,.18)!important;
}
.btn-primary:hover,.platform-button.primary:hover,.pcs-btn.wine:hover,.disc-btn:hover,.ev-btn.primary:hover,
input[type="submit"]:hover,button[type="submit"]:hover,.ks-login-button:hover{
  background:linear-gradient(135deg,#342A5E,#6655A8)!important;
}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  background:#fff!important;border-color:var(--ka-border-strong)!important;
}
input:focus,select:focus,textarea:focus,.ks-field input:focus{
  border-color:var(--ka-primary)!important;
  box-shadow:0 0 0 3px var(--ka-focus)!important;
}

/* Brand accents / kickers ------------------------------------------- */
:where(.eyebrow,.report-kicker,.panel-kicker,.pcs-kicker,.faith-kicker,.faith-section-kicker,
.ac-kicker,.mp-kicker,.mp-panel-kicker,.ev-kicker,.profile-kicker,.disc-kicker,.fc-kicker,[class*="-kicker"]){
  color:var(--ka-primary)!important;
}
a{accent-color:var(--ka-primary)}

/* Dark hero system --------------------------------------------------- */
.report-hero,.pcs-hero,.profile-hero,.pulse-hero,.ev-hero,.ev-detail-hero,.calendar-hero,
.platform-hero,.church-detail-hero,.cs-hero,.member-hero,.mp-hero,.mp-detail-hero,.mp-form-hero,
.mp-wall-hero,.mp-answered-hero,.disc-hero,.my-hero,.studio-hero,.studio-course-hero,.form-hero,
.assessment-hero,.course-hero,.spx-hero,.spx-studio-hero,.spx-builder-hero,.spx-form-hero,
.spx-day-hero,.spx-detail-hero,.fc-hero,.fc-page-hero,.fc-form-hero,.fc-share-hero,.fc-group-hero{
  background:
    radial-gradient(circle at 92% 7%,rgba(217,164,65,.22),transparent 25rem),
    radial-gradient(circle at 8% 96%,rgba(117,100,184,.22),transparent 22rem),
    linear-gradient(126deg,#2D254F 0%,#45387A 53%,#5B4B9A 100%)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 22px 56px rgba(45,37,79,.17)!important;
}
.report-kicker,.pcs-kicker,.ev-hero .ev-kicker,.calendar-hero>div>small,.profile-kicker,
.pulse-hero>div>small,.cs-hero>div:first-child>span,.disc-kicker.light,.fc-hero-kicker,
.fc-page-hero>div>small,.fc-form-hero>div>small,.fc-share-hero>div>small{
  color:#FFE2A0!important;
}

/* Member dashboard: replace legacy wine hard-coding ---------------- */
.faith-hero{
  background:
    radial-gradient(circle at 94% 8%,rgba(217,164,65,.24),transparent 27%),
    radial-gradient(circle at 8% 94%,rgba(69,184,169,.15),transparent 29%),
    linear-gradient(125deg,#2D254F 0%,#3C306A 35%,#51428B 70%,#6858A8 100%)!important;
  box-shadow:0 25px 60px rgba(45,37,79,.18)!important;
}
.faith-kicker{color:#F6D78C!important}
.faith-hero h1 em{color:#E1D9FF!important}
.faith-btn.primary{color:var(--ka-primary-deep)!important}
.faith-rating,.faith-mini-signal,.faith-panel,.faith-explore-grid>a,.faith-explore-grid>article{
  border-color:var(--ka-border)!important;background:#fff!important;box-shadow:var(--ka-shadow-1)!important;
}
.rating-symbol,.mini-icon,.action-icon,.connect-icon,.faith-explore-grid>*>span:first-child{
  background:var(--ka-primary-soft)!important;color:var(--ka-primary)!important;
}
.action-icon.prayer{background:var(--ka-gold-soft)!important;color:var(--ka-gold-deep)!important}
.action-icon.learn{background:var(--ka-primary-soft)!important;color:var(--ka-primary)!important}
.faith-rating>a,.faith-action>b,.faith-connect-card>b,.faith-explore-grid b{color:var(--ka-primary)!important}
.faith-section-kicker{color:var(--ka-primary)!important}
.faith-action:hover{border-color:#D9D2E8!important;background:#FCFBFE!important}
.faith-connect-card{border-top-color:#F0EDF4!important}

/* Status semantics --------------------------------------------------- */
.status-success,.status-complete,.is-complete,.chip-success{color:var(--ka-success)!important}
.status-warning,.status-pending,.chip-warning{color:var(--ka-warning)!important}
.status-danger,.status-overdue,.chip-danger{color:var(--ka-danger)!important}

/* Events / calendar -------------------------------------------------- */
.ev-suite-nav a.active{
  border-color:#E6D19D!important;background:var(--ka-gold-soft)!important;color:var(--ka-primary-deep)!important;
}
.ev-btn.light,.ev-btn.secondary{color:var(--ka-primary)!important}
.ev-open{color:var(--ka-primary)!important}
.calendar-weekdays div{background:var(--ka-gold-soft)!important;color:var(--ka-primary-deep)!important}
.calendar-day.today{box-shadow:inset 0 0 0 2px var(--ka-gold)!important;background:#FFFDF8!important}
.calendar-entry{background:var(--ka-primary-faint)!important;color:var(--ka-primary-deep)!important}
.calendar-entry.event{background:var(--ka-primary-soft)!important;color:var(--ka-primary)!important}

/* Standalone Discipleship / Faith Community ------------------------- */
.disc-links a,.fc-nav-links a{color:var(--ka-text-2)!important}
.disc-links a.active,.fc-nav-links a.active{color:var(--ka-primary)!important}
.disc-links a.active:after,.fc-nav-links a.active:after{background:var(--ka-gold)!important}

/* Login -------------------------------------------------------------- */
body.ks-login-body{
  color:var(--ka-text)!important;
  background:
    radial-gradient(circle at 84% 8%,rgba(217,164,65,.19),transparent 27rem),
    radial-gradient(circle at 8% 92%,rgba(117,100,184,.22),transparent 24rem),
    linear-gradient(135deg,#251E43 0%,#3E336F 52%,#2D254F 100%)!important;
}
.ks-login-card,.ks-media-panel{box-shadow:0 25px 72px rgba(31,25,56,.26)!important}
.ks-login-main:before,.ks-brand small{color:var(--ka-primary)!important}
.ks-field label{color:#514E59!important}
.ks-field input{border-color:var(--ka-border)!important;background:#fff!important}
.ks-login-help{background:#FBFAFD!important;border-color:var(--ka-border)!important}
.ks-login-footer{background:#F7F5FA!important;border-color:var(--ka-border)!important}
.ks-banner-copy small,.ks-event-copy small,.ks-media-label{color:#FFE0A0!important}

/* Focus visibility --------------------------------------------------- */
:where(a,button,input,select,textarea):focus-visible{
  outline-color:var(--ka-primary)!important;
}

/* Small-screen polish ------------------------------------------------ */
@media(max-width:760px){
  .sidebar{background:linear-gradient(180deg,#2D254F 0%,#251E43 100%)!important}
}
