/* Shared CLG contrast fixes. Pair text with the surface that actually paints it. */
body.clg-professional :is(#center > .inner, #right .tck-module, .clg-resources details) {
  --bs-secondary-color: var(--clg-muted);
  --bs-tertiary-color: var(--clg-muted);
}
body.clg-professional :is(#center, #right, .clg-resources) :is(.form-text,.article-info.text-muted) {
  color:var(--clg-muted) !important;
}
body.clg-professional .clg-resources a.rsfl_item,
body.clg-professional .clg-resources a.rsfl_item span { color:var(--clg-accent) !important; }
body.clg-professional .clg-resources a.rsfl_item:is(:hover,:focus-visible) { text-decoration:underline; }

/* Membership cards are Bootstrap surfaces; keep headings, prices and text on one palette. */
body.clg-professional .card:has(.rsm_title) {
  --bs-card-bg:var(--clg-panel); --bs-card-color:var(--clg-text);
  color:var(--clg-text); background-color:var(--clg-panel); border-color:var(--clg-border);
}
body.clg-professional .rsm_title small { color:var(--clg-text); }
body.clg-professional #center .rsm_title a { color:var(--clg-accent); }

/* RSForm's default green button and cyan progress fill were too light for white type. */
body.clg-professional #center .formResponsive:not(:has(.clg-intake)) :is(.rsform-button-next,.rsform-button-prev) {
  background:#204a8c !important; color:#fff !important; text-shadow:none;
}
body.clg-professional #center .formResponsive:not(:has(.clg-intake)) :is(.rsform-button-next,.rsform-button-prev):is(:hover,:focus-visible) {
  background:#163869 !important; color:#fff !important;
}
body.clg-professional #center .rsformProgressBar { background:#20559a !important; color:#fff; }
body.clg-professional #center .rsformProgressBar :is(em,strong,span) { color:inherit !important; }
body.clg-professional #center .clg-page-banner :is(h1,h2,p,span,strong,em,font)[style*="color"], body.clg-professional #center .clg-page-banner font[color] { color:var(--clg-text) !important; }

/* Keep the legacy date picker light, including adjacent-month dates and navigation. */
body.clg-professional #center .yui-calcontainer { color-scheme:light; background-color:#f7f9fb; color:#202d3d; }
body.clg-professional #center .yui-calcontainer :is(table,th,td,.calheader) { color:#202d3d !important; }
body.clg-professional #center .yui-calcontainer :is(.oom,.previous,.restricted) { color:#536171 !important; }
body.clg-professional #center .yui-calcontainer a { color:#194f92 !important; }
body.clg-professional #center .yui-calcontainer td:is(.selected,.selector,.calcellhover,.today):not(.oom) { background-color:#194f92 !important; color:white !important; }
body.clg-professional #center .yui-calcontainer td:is(.selected,.selector,.calcellhover,.today):not(.oom) a { background-color:#194f92 !important; color:white !important; }

/* Sale labels can sit on either a dark listing or a light product photograph. */
body.clg-professional #center .easystore-badge.is-sale { background:#19683b !important; color:white !important; }

/* Retain the forum role distinctions while making the labels legible on themed panels. */
body.clg-professional #center :is(.kwho-admin,.kwho-globalmoderator) { color:color-mix(in srgb,var(--clg-text) 65%,#f15369) !important; }
body.clg-professional #center :is(.kwho-moderator,.kwho-user) { color:var(--clg-accent) !important; }
body.clg-professional #center .kwho-guest { color:var(--clg-muted) !important; }


/* Country lists may be mounted outside the form on phones. */
body.clg-professional .iti__dropdown-content {
  background-color:var(--clg-panel); color:var(--clg-text);
  --iti-text-gray:var(--clg-muted); --iti-border-gray:var(--clg-border);
  --iti-hover-color:var(--clg-raised);
}
body.clg-professional .iti__dropdown-content .iti__country-name { color:var(--clg-text); }
body.clg-professional .iti__dropdown-content .iti__dial-code { color:var(--clg-muted); }
body.clg-professional .iti__dropdown-content .iti__search-input { background:var(--clg-input,var(--clg-panel)); color:var(--clg-text); }/* Joomla account screens include light Bootstrap cards inside the dark site theme.
   Keep this palette scoped to com_users content, including cards outside the MFA form. */
body.clg-professional.com_users #center .clg-page-content {
  --clg-text:#172b43; --clg-muted:#526477; --clg-panel:#ffffff;
  --clg-raised:#e9f0f7; --clg-input:#ffffff; --clg-border:#71839a; --clg-accent:#174e80;
  --bs-body-color:#172b43; --bs-body-color-rgb:23,43,67; --bs-body-bg:#f4f7fb;
  --bs-secondary-color:#526477; --bs-secondary-color-rgb:82,100,119;
  --bs-tertiary-color:#526477; --bs-tertiary-color-rgb:82,100,119;
  --bs-emphasis-color:#172b43; --bs-emphasis-color-rgb:23,43,67;
  --bs-link-color:#174e80; --bs-link-color-rgb:23,78,128;
  --bs-link-hover-color:#103b64; --bs-link-hover-color-rgb:16,59,100;
  color-scheme:light; background:#f4f7fb; color:#172b43;
  padding:clamp(14px,3vw,28px); min-width:0; overflow-wrap:anywhere;
}
body.clg-professional.com_users #center .clg-page-content :is(h1,h2,h3,h4,h5,h6,label,legend,.card-title,.com-users-methods-list-method-title) {
  color:#172b43 !important;
}
body.clg-professional.com_users #center .clg-page-content :is(.card,.com-users-login__form,fieldset) {
  --bs-card-color:#172b43; --bs-card-bg:#ffffff; --bs-card-cap-color:#172b43;
  --bs-card-cap-bg:#e9f0f7; color:#172b43; background-color:#ffffff;
  border-color:#71839a; min-width:0; max-width:100%;
}
body.clg-professional.com_users #center .clg-page-content :is(.card-header,.card-footer,.bg-light) {
  color:#172b43 !important; background-color:#e9f0f7 !important;
}
body.clg-professional.com_users #center .clg-page-content :is(.card-body,.card-text,.com-users-methods-list-method-title span,.com-users-methods-list-method-title strong) {
  color:#172b43;
}
body.clg-professional.com_users #center .clg-page-content :is(.text-muted,.text-body-secondary,.text-body-tertiary,.form-text,.form-text p,.small,.text-body) {
  color:#526477 !important;
}
body.clg-professional.com_users #center .clg-page-content :is(a:not(.btn)) {
  color:#174e80; text-decoration:underline; text-underline-offset:2px;
}
body.clg-professional.com_users #center .clg-page-content a:not(.btn):is(:hover,:focus-visible) { color:#103b64; }
body.clg-professional.com_users #center .clg-page-content .alert {
  --bs-alert-color:#172b43; --bs-alert-bg:#e4eef8; --bs-alert-border-color:#71839a;
  color:#172b43; background-color:#e4eef8; border-color:#71839a;
}
body.clg-professional.com_users #center .clg-page-content :is(.alert-success,.alert-warning,.alert-danger) {
  color:#172b43; background-color:#e4eef8;
}
body.clg-professional.com_users #center .clg-page-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) {
  color:#172b43 !important; -webkit-text-fill-color:#172b43;
  background-color:#ffffff !important; border-color:#71839a !important;
  min-width:0; max-width:100%;
}
body.clg-professional.com_users #center .clg-page-content :is(input,textarea)::placeholder {
  color:#526477 !important; opacity:1;
}
body.clg-professional.com_users #center .clg-page-content :is(input[type=checkbox],input[type=radio]) { accent-color:#174e80; }
body.clg-professional.com_users #center .clg-page-content :is(code,kbd,pre) {
  color:#172b43; background-color:#e9f0f7; white-space:pre-wrap; overflow-wrap:anywhere;
}
body.clg-professional.com_users #center .clg-page-content :is(.btn,button[type=submit],input[type=submit]) {
  --bs-btn-color:#ffffff; --bs-btn-bg:#174e80; --bs-btn-border-color:#174e80;
  --bs-btn-hover-color:#ffffff; --bs-btn-hover-bg:#103b64; --bs-btn-hover-border-color:#103b64;
  --bs-btn-active-color:#ffffff; --bs-btn-active-bg:#103b64; --bs-btn-active-border-color:#103b64;
  --bs-btn-disabled-color:#ffffff; --bs-btn-disabled-bg:#526477; --bs-btn-disabled-border-color:#526477;
  color:#ffffff !important; background-color:#174e80 !important; border-color:#174e80 !important;
  text-shadow:none; white-space:normal; overflow-wrap:anywhere;
}
body.clg-professional.com_users #center .clg-page-content :is(.btn,button[type=submit],input[type=submit]):is(:hover,:focus-visible,:active) {
  color:#ffffff !important; background-color:#103b64 !important; border-color:#103b64 !important;
}
body.clg-professional.com_users #center .clg-page-content .btn :is(span,strong,small,[class*=icon],svg) { color:inherit !important; }
body.clg-professional.com_users #center .clg-page-content :is(.btn-link,.btn-outline-secondary,.btn-outline-primary) {
  color:#174e80 !important; background-color:#ffffff !important; border-color:#174e80 !important;
}
body.clg-professional.com_users #center .clg-page-content :is(.btn-link,.btn-outline-secondary,.btn-outline-primary):is(:hover,:focus-visible,:active) {
  color:#ffffff !important; background-color:#174e80 !important;
}
body.clg-professional.com_users #center .clg-page-content .badge {
  color:#ffffff !important; background-color:#174e80 !important;
}
body.clg-professional.com_users #center .clg-page-content .badge * { color:inherit !important; }
body.clg-professional.com_users #center .clg-page-content :is(.list-group-item.active,.bg-primary,.bg-success,.bg-danger) {
  color:#ffffff !important; background-color:#174e80 !important;
}
body.clg-professional.com_users #center .clg-page-content :is(.list-group-item.active,.bg-primary,.bg-success,.bg-danger) :is(span,strong,small) { color:inherit !important; }
body.clg-professional.com_users #center .clg-page-content :is(a,button,input,select,textarea):focus-visible {
  outline:3px solid #174e80 !important; outline-offset:3px; box-shadow:none !important;
}
body.clg-professional.com_users #center .clg-page-content :is(.btn:disabled,.btn.disabled,button:disabled) { opacity:1; }
body.clg-professional.com_users #center .clg-page-content :is(.control-group,.controls,.input-group,.com-users-method) { min-width:0; max-width:100%; }
body.clg-professional.com_users #center .clg-page-content .card-header.bg-secondary.text-white { color:#172b43 !important; background-color:#e9f0f7 !important; }
body.clg-professional.com_users #center .clg-page-content .text-warning { color:#805100 !important; }
body.clg-professional.com_users #center .clg-page-content :is(.text-danger,.invalid,.form-control-feedback) { color:#a52034 !important; }
body.clg-professional.com_users #center .clg-page-content .text-success { color:#236040 !important; }
body.clg-professional.com_users #center .clg-page-content .text-info { color:#174e80 !important; }
body.clg-professional.com_users #center .clg-page-content :is(.btn-danger,.btn-danger:is(:hover,:focus-visible,:active)) { color:#fff !important; background-color:#9b2537 !important; border-color:#9b2537 !important; }
body.clg-professional.com_users #center .clg-page-content :is(.btn-success,.btn-success:is(:hover,:focus-visible,:active)) { color:#fff !important; background-color:#236040 !important; border-color:#236040 !important; }
body.clg-professional.com_users #center .clg-page-content :is(.btn-secondary,.btn-secondary:is(:hover,:focus-visible,:active)) { color:#fff !important; background-color:#46586c !important; border-color:#46586c !important; }

/* The legacy template adds 5px to full-width inputs on account forms. */
body.clg-professional.com_users #center .clg-page-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) { margin-left:0 !important; margin-right:0 !important; }
/* Joomla's native passkey SVG defaults to black; use each button's readable ink. */
body.clg-professional.com_users #center .clg-page-content .btn svg,
body.clg-professional form.mod-login .mod-login__submit .btn svg { fill:currentColor; }
