/* KRYPTA control theme: midnight-indigo fills, violet edges. Primary = blue-violet gradient, everything else = navy with violet hairline.
   Scoped to lobby and analysis pages; one rule set covers real buttons, .btn and role=button, including dynamically mounted ones. */
body{
  --k-brand:#6972FF;--k-hi-hi:#B7BFFF;--k-hi-lo:#5740B8;--k-ink:#F4F6FF;--k-text:#F1F3FF;
  --k-edge:rgba(105,114,255,.42);--k-char:linear-gradient(180deg,#1B2150,#0D1230 60%,#050818);
  --k-char-hover:linear-gradient(180deg,#272E70,#12183F 60%,#0C1030);
  --k-fill:linear-gradient(180deg,#5661DE,#515BE3 55%,#5740B8);
  --k-shadow:0 1px 0 rgba(183,191,255,.1) inset,0 3px 0 #050818,0 12px 24px -12px rgba(0,0,0,.85)}
body :is(button,.btn,[role="button"]){
  background:var(--k-char)!important;color:var(--k-text)!important;border:1px solid var(--k-edge);border-color:var(--k-edge)!important;box-shadow:var(--k-shadow);text-shadow:none}
body :is(.btn-primary,.hs-face,.plan-button,.onboarding-next,.vcta,.ai-send,.hero-search-go,.mock-go){
  background:var(--k-fill)!important;color:var(--k-ink)!important;border-color:var(--k-hi-hi)!important;box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 3px 0 var(--k-hi-lo),0 14px 26px -12px rgba(105,114,255,.55)}
body :is(button,.btn,[role="button"]):hover:not(:disabled){background:var(--k-char-hover)!important;border-color:var(--k-hi-hi)!important;color:#fff!important}
body :is(.btn-primary,.hs-face,.plan-button,.onboarding-next,.vcta,.ai-send):hover:not(:disabled){background:linear-gradient(180deg,#5862DE,#5E4DE6 55%,#5740B8)!important;color:var(--k-ink)!important}
/* selected state: brand fill for tabs/toggles/segments */
body :is(button,.btn,[role="button"]):is(.active,[aria-selected="true"],[aria-pressed="true"],[aria-current="page"],[aria-current="location"]){
  background:linear-gradient(180deg,rgba(160,170,255,.22),rgba(105,114,255,.12))!important;border-color:var(--k-hi-hi)!important;color:var(--k-hi-hi)!important;box-shadow:inset 0 0 0 1px var(--k-hi-hi),var(--k-shadow)}
body .billing-toggle button[aria-pressed="true"]{background:var(--k-fill)!important;color:var(--k-ink)!important}
body :is(button,.btn,[role="button"]):focus-visible{outline:2px solid var(--k-hi-hi);outline-offset:3px}
body :is(button,.btn,[role="button"]):disabled{background:#0D1230!important;color:#A9B0D8!important;border-color:rgba(105,114,255,.15)!important;box-shadow:none;opacity:.55}
.disc-card .btn{background:var(--k-char,linear-gradient(180deg,#1B2150,#0D1230));border:1px solid rgba(105,114,255,.42);color:#F1F3FF}
.disc-card .btn-primary{background:linear-gradient(180deg,#5661DE,#515BE3 55%,#5740B8);color:#F4F6FF}
/* exceptions: the hero search shell and tab ink stay as designed */
body.lobby-bg .hero-copy .hero-search{background:none!important;border:0;box-shadow:none}
body.analysis-page .tabs button,body.analysis-page .deck-dots button{box-shadow:none}
body.analysis-page .tabs button:not([aria-selected="true"]){background:transparent!important;border-color:transparent!important}
body.analysis-page .tabs-ink{background:var(--k-fill);border:0}
body.analysis-page .tabs button[aria-selected="true"]{background:var(--k-fill)!important;border-color:transparent!important;color:var(--k-ink)!important;box-shadow:none}
body.analysis-page .bottombar button[aria-current="page"]{color:var(--k-hi-hi)}
/* questionnaire */
body.onboarding-page .onboarding-option{background:linear-gradient(160deg,#171C48,#0D1230);border-color:rgba(105,114,255,.25);box-shadow:0 4px 0 #050818,0 12px 22px -14px #000;color:var(--k-text)}
body.onboarding-page .onboarding-option:hover{border-color:var(--k-hi-hi);background:linear-gradient(160deg,#232A68,#10153A)}
body.onboarding-page .onboarding-option:has(input:checked){border-color:var(--k-hi-hi);background:linear-gradient(160deg,#2D2C8A,#1A1E5E 60%,#0E1236);box-shadow:0 5px 0 #050818,0 0 0 1px var(--k-hi-hi),0 14px 26px -14px #000}
body.onboarding-page .onboarding-option:has(input:checked) .onboarding-option-title{color:#fff}
body.onboarding-page .onboarding-option input{accent-color:#6972FF}
body.onboarding-page .onboarding-range::-webkit-slider-runnable-track{background:#0D1230}
body.onboarding-page .onboarding-range::-moz-range-track{background:#0D1230}
body.onboarding-page .onboarding-range::-webkit-slider-thumb{background:var(--k-fill);border:2px solid var(--k-hi-hi);box-shadow:0 4px 0 #050818}
body.onboarding-page .onboarding-range::-moz-range-thumb{background:var(--k-fill);border:2px solid var(--k-hi-hi);box-shadow:0 4px 0 #050818}
body.onboarding-page .onboarding-range:focus-visible{outline:3px solid var(--k-hi-hi)}
body.onboarding-page .onboarding-amount output{color:#D2D3FF;text-shadow:.02em .02em 0 #5740B8,.05em .05em 0 #1B1D5E,0 .14em .3em rgba(0,0,0,.55)}
body.onboarding-page .onboarding-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#5740B8,#B7BFFF)}
body.onboarding-page .onboarding-progress progress::-moz-progress-bar{background:linear-gradient(90deg,#5740B8,#B7BFFF)}
body.onboarding-page .onboarding-eyebrow{color:var(--k-hi-hi)}
/* pricing */
body.lobby-bg .billing-toggle,body.offers-cinematic .offers-main .billing-toggle{background:#0D1230;border-color:var(--k-edge)}
body.offers-cinematic .offers-main .pricing-card{background:linear-gradient(160deg,rgba(24,28,82,.92),rgba(8,12,36,.96) 70%);border-color:var(--k-edge)}
body.offers-cinematic .offers-main .pricing-card.is-featured{background:linear-gradient(160deg,#2D2C8A,#161A52 55%,#0B0F2E);border-color:var(--k-hi-hi);box-shadow:0 0 0 1px rgba(160,170,255,.2),0 12px 0 -2px #050818,0 40px 90px -24px rgba(105,114,255,.35)}
body.offers-cinematic .offers-main .pricing-card.is-featured .plan-label{background:var(--k-hi-hi);color:#0B1030}
/* controls that are structural, not CTAs: keep them flat */
body :is(.seg button,.account-menu button,.donut-legend button,.deck-dots button,.examples button,.account-chip,.tabs button,.result){box-shadow:none}
body :is(.account-menu button,.donut-legend button,.seg button,.tabs button):not(:hover):not([aria-pressed="true"]):not([aria-selected="true"]){background:transparent!important;border-color:transparent!important}
body .deck-dots button{background:rgba(150,160,255,.18)!important;border:0}
body .deck-dots button[aria-selected="true"]{background:var(--k-fill)!important}
