/* Simple button surfaces: soft, purple, and deep purple. */
:root{--control-soft:#f1eefc;--control-main:#6e56cf;--control-deep:#5b45c4}
button,.button,.text-button,.nav-contact,.report-link,.demo-contact-button,.app-card-heading>a{
  background:var(--control-soft)!important;
  background-image:none!important;
  color:var(--control-deep)!important;
  border-color:var(--control-soft)!important;
  box-shadow:none!important;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease;
}
button:not(:disabled):hover,.button:not(:disabled):hover,.text-button:hover,.nav-contact:hover,.report-link:hover,.demo-contact-button:hover,.app-card-heading>a:hover{
  background:var(--control-main)!important;color:#fff!important;border-color:var(--control-main)!important;text-decoration:none;
}
button:not(:disabled):active,.button:not(:disabled):active,.text-button:active,.nav-contact:active,.report-link:active,.demo-contact-button:active{
  background:var(--control-deep)!important;color:#fff!important;border-color:var(--control-deep)!important;
}
.button.primary,.button-primary,.module-primary,.sms-composer button,button[aria-pressed=true],button[aria-expanded=true]:not(.nd-nav-link){
  background:var(--control-main)!important;color:#fff!important;border-color:var(--control-main)!important;
}
.button.primary:not(:disabled):hover,.button-primary:not(:disabled):hover,.module-primary:not(:disabled):hover,.sms-composer button:hover,button[aria-pressed=true]:hover{
  background:var(--control-deep)!important;color:#fff!important;border-color:var(--control-deep)!important;
}
button:disabled,.button:disabled{background:var(--control-soft)!important;color:#6b6285!important;border-color:var(--control-soft)!important;cursor:not-allowed}
button:focus-visible,.button:focus-visible,.text-button:focus-visible,.nav-contact:focus-visible,.demo-contact-button:focus-visible{outline:3px solid var(--control-deep);outline-offset:3px}
/* Keep navigation within its existing three navy shades. */
.nd-nav-link,#app-module-nav>.nd-nav-link{background:#1f2533!important;color:#d8d9e2!important;border-color:#1f2533!important}
.nd-nav-link:hover:not(.nd-unavailable),#app-module-nav>.nd-nav-link:hover{background:#2d3344!important;color:#fff!important;border-color:#2d3344!important}
.nd-nav-link.is-active,#app-module-nav>.nd-nav-link.is-active{background:#423b68!important;color:#fff!important;border-color:#423b68!important}
.nd-group-toggle[aria-expanded=true]>svg:last-child{transform:none}
.nd-nav-link>svg:first-child{width:18px!important;color:inherit!important}
.text-button,.report-link{padding:9px 14px;border-radius:7px}
.button,.text-button,.nav-contact{gap:8px}
.nd-tabs>button[aria-pressed=true]{border-bottom-color:var(--control-deep)!important}
.nd-expand,.module-reset.nd-icon-button{width:auto;min-width:44px;padding:6px 9px;font-size:11px}
.sms-composer button{width:auto;min-width:70px;padding:8px 10px;border-radius:8px;font-size:12px}
.sample-site-header .button{flex:0 0 auto;padding:10px 12px}.sample-back-label{display:inline!important}
.learn-book:hover h3,.learn-book:hover p,.learn-book:hover .learn-book-link{color:inherit!important}.learn-book:hover .learn-book-icon{background:var(--control-soft)}
.team-game-answers button:hover>span{background:var(--control-deep);color:#fff}
@media(prefers-reduced-motion:reduce){button,.button,.text-button,.nav-contact,.report-link,.demo-contact-button{transition:none}}
