body.ninja-theme-pro,body.ninja-component-only{font-family:var(--ninja-font-body-family,var(--ninja-font-body-font,system-ui,sans-serif));font-size:var(--ninja-font-base-size);line-height:var(--ninja-font-line-height);color:var(--ninja-color-body-text);background:var(--ninja-color-body-background,var(--ninja-color-section-background,#fff));margin:0}*,*::before,*::after{box-sizing:border-box}a{color:var(--ninja-color-primary)}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6,.ninja-brand{font-family:var(--ninja-font-heading-font);font-weight:var(--ninja-font-heading-weight);color:var(--ninja-color-heading-text);line-height:1.15}.ninja-container{width:min(100% - 2rem,var(--ninja-layout-container));margin-inline:auto}.ninja-topbar{font-size:.9rem;border-bottom:var(--ninja-effect-border-width,1px) solid var(--ninja-color-border,#d9e2ec);background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430)}.ninja-toolbar-grid{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.45rem 0}.ninja-header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem 0}.ninja-header-left,.ninja-header-right{display:flex;align-items:center;gap:1rem}.ninja-header-centered .ninja-header-inner{flex-direction:column}.ninja-header-split .ninja-primary-nav{order:-1}.ninja-brand a{font-weight:800;color:var(--ninja-color-secondary);text-decoration:none}.ninja-site-header{border-bottom:var(--ninja-effect-border-width,1px) solid var(--ninja-color-border,#d9e2ec);background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430);z-index:1000}.ninja-header-sticky{position:sticky;top:0}.ninja-primary-nav ul,.ninja-mobile-panel ul{display:flex;gap:1rem;align-items:center;list-style:none;margin:0;padding:0}.ninja-primary-nav a,.ninja-mobile-panel a{text-decoration:none;color:inherit;font-weight:700}.ninja-menu-toggle{display:none;border:var(--ninja-component-buttons-border-width,1px) solid var(--ninja-component-buttons-border,var(--ninja-color-border,#d9e2ec));background:var(--ninja-component-buttons-default-background,var(--ninja-color-section-background,#fff));color:var(--ninja-component-buttons-default-color,var(--ninja-color-body-text,#1b2430));border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px));padding:var(--ninja-component-buttons-padding-y,.6rem) var(--ninja-component-buttons-padding-x,.85rem);box-shadow:var(--ninja-component-buttons-shadow,none);font-family:var(--ninja-font-button-family,inherit);font-size:calc(var(--ninja-font-button-size,15) * 1px);font-weight:var(--ninja-font-button-weight,800)}.ninja-mobile-panel{border-top:var(--ninja-effect-border-width,1px) solid var(--ninja-color-border,#d9e2ec);padding:var(--ninja-space-md,1rem) 0;background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430)}.ninja-mobile-panel ul{display:grid;gap:.75rem}.ninja-layout-single{padding:var(--ninja-space-section) 0}.ninja-layout-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;padding:var(--ninja-space-section) 0}.ninja-layout-grid:has(.ninja-sidebar-left){grid-template-columns:minmax(220px,280px) minmax(0,1fr)}.ninja-layout-grid:has(.ninja-sidebar-right){grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.ninja-layout-grid:has(.ninja-sidebar-left):has(.ninja-sidebar-right){grid-template-columns:minmax(180px,260px) minmax(0,1fr) minmax(180px,260px)}.ninja-main-column{min-width:0}.ninja-site-footer{margin-top:4rem;padding:var(--ninja-space-section) 0;background:var(--ninja-color-section-background,#f6f8fb)}.ninja-footer-centered .ninja-footer-inner{text-align:center}.ninja-footer-simple{padding:2rem 0}.ninja-component-wrap{padding:var(--ninja-space-section) 0}.ninja-skip-link{position:absolute;top:-100px;left:50%;transform:translateX(-50%);z-index:10000;background:var(--ninja-color-section-background,#fff);color:#000;padding:.75rem 1rem;border-radius:var(--ninja-component-buttons-border-radius);box-shadow:0 8px 24px rgba(0,0,0,.18)}.ninja-skip-link:focus{top:1rem}.ninja-button,.uk-button{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ninja-component-buttons-border-radius);padding:var(--ninja-component-buttons-padding-y,.75rem) var(--ninja-component-buttons-padding-x,1.15rem);border:var(--ninja-component-buttons-border-width,1px) solid transparent;text-decoration:none;font-family:var(--ninja-component-buttons-font-family,inherit);font-size:var(--ninja-component-buttons-font-size,inherit);font-weight:var(--ninja-component-buttons-font-weight,700);cursor:pointer}.ninja-button-primary,.uk-button-primary{background:var(--ninja-component-buttons-primary-background,var(--ninja-color-primary));color:var(--ninja-component-buttons-primary-color,#fff)}.ninja-card,.uk-card,.ninja-module,.ninja-module-panel{border:var(--ninja-component-cards-border-width,var(--ninja-effect-border-width,1px)) solid var(--ninja-component-cards-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-cards-radius);background:var(--ninja-component-cards-background,var(--ninja-color-card-background,#fff));color:var(--ninja-component-cards-color,var(--ninja-color-body-text));box-shadow:var(--ninja-component-cards-shadow,var(--ninja-shadow-sm));padding:var(--ninja-component-cards-padding,1.5rem)}.ninja-module-title,.ninja-card-title,.uk-card-title{color:var(--ninja-component-cards-title-color,var(--ninja-color-heading-text))}.ninja-back-to-top{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:5000;isolation:isolate;width:3rem;height:3rem;border-radius:999px;border:0;background:var(--ninja-color-primary);color:#fff;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.2);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s}.ninja-back-to-top.is-visible{opacity:1;pointer-events:auto}.ninja-error-wrap{padding:12vh 0;text-align:center}@media (max-width:960px){.ninja-primary-nav{display:none}.ninja-menu-toggle{display:inline-flex}.ninja-header-inner{gap:1rem}.ninja-layout-grid,.ninja-layout-grid:has(.ninja-sidebar-left),.ninja-layout-grid:has(.ninja-sidebar-right),.ninja-layout-grid:has(.ninja-sidebar-left):has(.ninja-sidebar-right){grid-template-columns:1fr}.ninja-sidebar-left{order:2}.ninja-main-column{order:1}.ninja-sidebar-right{order:3}}.nb-section{padding-block:var(--ninja-space-section)}.nb-padding-none{padding-block:0}.nb-padding-small{padding-block:calc(var(--ninja-space-section) * .5)}.nb-padding-medium{padding-block:var(--ninja-space-section)}.nb-padding-large{padding-block:calc(var(--ninja-space-section) * 1.5)}.nb-container-full{width:100%;max-width:none}.nb-row{margin-bottom:1.5rem}.nb-column>.nb-widget+ .nb-widget{margin-top:1rem}.nb-widget figure{margin:0}.nb-widget figcaption{font-size:.9rem;color:#667085;margin-top:.5rem}.nb-joomla-search{display:flex;gap:.5rem;align-items:center}.nb-joomla-search .uk-search-input{min-width:220px}.nb-joomla-login{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.nb-breadcrumbs{margin-block:1rem}.nb-joomla-position>.moduletable+ .moduletable,.nb-joomla-position>.ninja-module+ .ninja-module{margin-top:1rem}@media(max-width:768px){.nb-joomla-search{flex-direction:column;align-items:stretch}.nb-joomla-search .uk-search-input{min-width:0;width:100%}}

/* Ninja Builder frontend grid fallback */
.ninja-builder-render .nb-row{display:flex;flex-wrap:wrap;align-items:flex-start;width:100%}
.ninja-builder-render .nb-column{box-sizing:border-box;min-width:0}
@media (max-width:960px){.ninja-builder-render .nb-column{flex-basis:100%!important;max-width:100%!important}}

/* Joomla 6 native breadcrumbs: horizontal/unstyled navigation, never numbered. */
.mod-breadcrumbs,.mod-breadcrumbs.breadcrumb,.breadcrumb,.ninja-site-header .breadcrumb,.ninja-component-wrap .breadcrumb{list-style:none!important;margin:0;padding-left:0}.mod-breadcrumbs>li,.breadcrumb>li{list-style:none!important}.mod-breadcrumbs>li::marker,.breadcrumb>li::marker{content:""}.mod-breadcrumbs{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.mod-breadcrumbs .divider{opacity:.55}
/* Builder live-preview image placeholder remains selectable when an old layout has no media path. */
.ntp-builder-preview-active .ntp-widget-image-empty{min-height:140px;display:grid;place-items:center;border:1px dashed rgba(100,116,139,.45);background:rgba(248,250,252,.72);color:#64748b}

/* Ninja Theme Pro live visual-surface runtime (8.20.39). */
.nb-site-header,.nb-site-footer{width:100%;position:relative;z-index:20}.nb-site-header{background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430)}.nb-site-footer{background:var(--ninja-color-section-background,#081120);color:#fff;margin-top:auto}.nb-site-header .uk-container,.nb-site-footer .uk-container{width:min(100% - 2rem,var(--ninja-layout-container,1200px));margin-inline:auto}.nb-site-header .uk-container-expand,.nb-site-footer .uk-container-expand{width:100%;padding-inline:1rem}.nb-surface-grid{display:flex;flex-wrap:wrap;align-items:center;width:100%}.nb-header-row{background:inherit;border:0}.nb-header-row--sticky{position:sticky;top:0;z-index:1000}.nb-header-row--transparent{background:transparent}.nb-header-column,.nb-footer-column{box-sizing:border-box;min-width:0;padding:.75rem;display:flex;align-items:center;gap:.75rem}.nb-footer-column{align-items:flex-start;flex-direction:column}.nb-header-column--center,.nb-footer-column--center{justify-content:center;text-align:center}.nb-header-column--right,.nb-footer-column--right{justify-content:flex-end;text-align:right}.nb-header-logo{display:inline-flex;align-items:center;color:inherit;text-decoration:none;font-weight:800}.nb-header-logo img,.nb-footer-logo img{display:block;max-height:64px;width:auto}.nb-header-search,.nb-header-login,.nb-header-button,.nb-footer-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:var(--ninja-component-buttons-padding-y,.55rem) var(--ninja-component-buttons-padding-x,.9rem);border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px));text-decoration:none;border:var(--ninja-component-buttons-border-width,1px) solid var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff));background:var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff));color:var(--ninja-component-buttons-primary-color,#fff);font-family:var(--ninja-font-button-family,inherit);font-weight:var(--ninja-font-button-weight,700);box-shadow:var(--ninja-component-buttons-shadow,none);cursor:pointer}.nb-footer-row{padding:1rem 0}.nb-footer-row--contrast{background:rgba(0,0,0,.12)}.nb-footer-social,.nb-footer-legal{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;margin:0;padding:0}.nb-footer-social a,.nb-footer-legal a,.nb-site-footer a{color:inherit}.nb-footer-newsletter{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end}.nb-footer-newsletter label{display:grid;gap:.25rem}.nb-footer-newsletter input{min-height:40px;padding:.5rem .65rem}.nb-nav{display:flex;align-items:center;gap:1rem;position:relative}.nb-nav__list,.nb-nav__sublist{list-style:none;margin:0;padding:0}.nb-nav__list{display:flex;align-items:center;gap:.25rem}.nb-nav__item{position:relative}.nb-nav__link{display:flex;align-items:center;gap:.45rem;padding:.65rem .85rem;color:inherit;text-decoration:none}.nb-nav__toggle{border:0;background:transparent;min-width:2rem;min-height:2rem}.nb-nav__panel{display:none;position:absolute;z-index:1000;min-width:14rem;background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430);box-shadow:var(--ninja-shadow-md,0 8px 24px rgba(0,0,0,.14));border-radius:var(--ninja-radius-md,8px);padding:.5rem}.nb-nav__item:hover>.nb-nav__panel,.nb-nav__item:focus-within>.nb-nav__panel,.nb-nav__item.is-open>.nb-nav__panel{display:block}.ntp-article-collection{display:grid;grid-template-columns:repeat(var(--ntp-article-columns,3),minmax(0,1fr));gap:var(--ninja-space-lg,1.5rem)}.ntp-article-card{min-width:0}.ntp-article-card__media img{display:block;width:100%;height:auto}.ntp-article-card__title{margin:.75rem 0 .35rem}.ntp-article-card__meta{font-size:.875rem;opacity:.72}.ntp-article-pagination{display:flex;flex-wrap:wrap;gap:.35rem;margin:1.5rem 0}.ntp-article-pagination a{display:inline-flex;min-width:2.25rem;min-height:2.25rem;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:.35rem;text-decoration:none}.ntp-article-pagination [aria-current="page"]{font-weight:800;background:var(--ninja-color-primary,#1473ff);color:#fff}@media(max-width:960px){.nb-header-column,.nb-footer-column{flex-basis:100%!important;max-width:100%!important}.nb-nav__list{flex-direction:column;align-items:stretch}.ntp-article-collection{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ntp-article-collection{grid-template-columns:1fr}}

/* Joomla-native module/form presentation bridge. Core modules may be rendered with style=none, so their internal form markup must still inherit Design Center tokens. */
body.ninja-theme-pro .mod-login,body.ninja-theme-pro .login,body.ninja-theme-pro form.mod-login{display:grid;gap:var(--ninja-component-forms-gap,.85rem);max-width:32rem}
body.ninja-theme-pro .mod-login__username,body.ninja-theme-pro .mod-login__password,body.ninja-theme-pro .mod-login__remember,body.ninja-theme-pro .mod-login__submit{display:grid;gap:.35rem;margin:0}body.ninja-theme-pro .mod-login__submit{gap:var(--ninja-component-buttons-gap,.7rem)}body.ninja-theme-pro .mod-login button[id*=webauthn],body.ninja-theme-pro .mod-login button[class*=webauthn],body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button{margin-bottom:var(--ninja-component-buttons-gap,.7rem)}
body.ninja-theme-pro input[type=text],body.ninja-theme-pro input[type=email],body.ninja-theme-pro input[type=password],body.ninja-theme-pro input[type=search],body.ninja-theme-pro input[type=tel],body.ninja-theme-pro input[type=url],body.ninja-theme-pro select,body.ninja-theme-pro textarea{width:100%;min-height:44px;padding:var(--ninja-component-forms-field-padding-y,.65rem) var(--ninja-component-forms-field-padding-x,.8rem);border:var(--ninja-component-forms-field-border-width,1px) solid var(--ninja-component-forms-field-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-forms-field-radius,var(--ninja-radius-md,8px));background:var(--ninja-component-forms-field-background,#fff);color:var(--ninja-component-forms-field-color,var(--ninja-color-body-text,#1b2430));box-shadow:var(--ninja-component-forms-field-shadow,none);font-family:var(--ninja-font-form-family,inherit);font-size:calc(var(--ninja-font-form-size,15) * 1px);font-weight:var(--ninja-font-form-weight,500);line-height:var(--ninja-font-form-line-height,1.4)}
body.ninja-theme-pro button:not(.ninja-menu-toggle):not(.ninja-back-to-top),body.ninja-theme-pro input[type=button]{min-height:42px;padding:var(--ninja-component-buttons-padding-y,.6rem) var(--ninja-component-buttons-padding-x,.95rem);border:var(--ninja-component-buttons-border-width,1px) solid var(--ninja-color-border,#d9e2ec);border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px));background:var(--ninja-component-buttons-default-background,#f3f6f9);color:var(--ninja-component-buttons-default-color,var(--ninja-color-body-text,#1b2430));font-family:var(--ninja-font-button-family,inherit);font-size:calc(var(--ninja-font-button-size,15) * 1px);font-weight:var(--ninja-font-button-weight,700);box-shadow:var(--ninja-component-buttons-shadow,none);cursor:pointer}body.ninja-theme-pro input[type=submit]{min-height:42px;padding:var(--ninja-component-buttons-padding-y,.6rem) var(--ninja-component-buttons-padding-x,.95rem);border:var(--ninja-component-buttons-border-width,1px) solid var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff));border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px));background:var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff));color:var(--ninja-component-buttons-primary-color,#fff);font-family:var(--ninja-font-button-family,inherit);font-size:calc(var(--ninja-font-button-size,15) * 1px);font-weight:var(--ninja-font-button-weight,700);box-shadow:var(--ninja-component-buttons-shadow,none);cursor:pointer}
body.ninja-theme-pro .mod-login__options,body.ninja-theme-pro .mod-menu{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
body.ninja-theme-pro .mod-login__options a,body.ninja-theme-pro .mod-menu a{color:var(--ninja-color-primary,#1473ff)}
body.ninja-theme-pro .mod-login__remember label{display:flex;align-items:center;gap:.5rem}
body.ninja-theme-pro input[type=checkbox],body.ninja-theme-pro input[type=radio]{width:1.1rem;height:1.1rem}

/* 8.20.69 Design Center login-card authority: keep Joomla authentication usable and proportional. */
body.ninja-theme-pro .mod-login,body.ninja-theme-pro form.mod-login{max-width:28rem;padding:clamp(.85rem,2vw,1.15rem);background:var(--ninja-component-cards-background,var(--ninja-color-card-background,#fff));color:var(--ninja-component-cards-color,var(--ninja-color-body-text,#1b2430));border:1px solid var(--ninja-component-cards-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-cards-radius,var(--ninja-radius-lg,16px));box-shadow:var(--ninja-component-cards-shadow,var(--ninja-shadow-sm,0 1px 2px rgba(0,0,0,.08)))}
body.ninja-theme-pro .mod-login__submit button,body.ninja-theme-pro .mod-login__submit input[type=submit]{width:100%;min-height:44px;padding:.55rem .85rem;background:var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff));color:var(--ninja-component-buttons-primary-color,#fff);border-color:var(--ninja-component-buttons-primary-background,var(--ninja-color-primary,#1473ff))}
body.ninja-theme-pro .mod-login button:not([type=submit]){width:auto;max-width:100%;min-height:38px;padding:.45rem .7rem;background:var(--ninja-component-buttons-default-background,#f3f6f9);color:var(--ninja-component-buttons-default-color,var(--ninja-color-body-text,#1b2430));border-color:var(--ninja-component-forms-field-border,var(--ninja-color-border,#d9e2ec));box-shadow:none}
body.ninja-theme-pro .mod-login button[id*=webauthn],body.ninja-theme-pro .mod-login button[class*=webauthn],body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;min-height:44px;padding:.5rem .75rem;background:var(--ninja-component-buttons-default-background,#f3f6f9);color:var(--ninja-component-buttons-default-color,var(--ninja-color-body-text,#1b2430));border:1px solid var(--ninja-component-forms-field-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px));box-shadow:none}
body.ninja-theme-pro .mod-login button[id*=webauthn] svg,body.ninja-theme-pro .mod-login button[id*=webauthn] img,body.ninja-theme-pro .mod-login button[class*=webauthn] svg,body.ninja-theme-pro .mod-login button[class*=webauthn] img,body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button svg,body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button img{width:36px!important;height:36px!important;max-width:36px!important;max-height:36px!important;object-fit:contain}
@media(max-width:640px){body.ninja-theme-pro .mod-login,body.ninja-theme-pro form.mod-login{padding:.9rem}body.ninja-theme-pro .mod-login button[id*=webauthn],body.ninja-theme-pro .mod-login button[class*=webauthn],body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button{padding:.45rem .65rem}}

/* 8.20.69 Design Center semantic surface authority */
.ntp-section.ntp-section-style-card{background:var(--ninja-component-cards-background,var(--ninja-color-card-background,#fff));color:var(--ninja-component-cards-color,var(--ninja-color-body-text,#1b2430));border:1px solid var(--ninja-component-cards-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-cards-radius,var(--ninja-radius-lg,18px));box-shadow:var(--ninja-component-cards-shadow,var(--ninja-shadow-sm));padding:var(--ninja-component-cards-padding,1.5rem)}
.ntp-section.ntp-section-style-card-alt{background:var(--ninja-color-body-background,#f7f9fc);border:1px solid var(--ninja-component-cards-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-cards-radius,var(--ninja-radius-lg,18px));box-shadow:var(--ninja-shadow-sm)}
.ntp-section.ntp-section-style-surface{background:var(--ninja-color-card-background,#fff)}.ntp-section.ntp-section-style-surface-alt{background:var(--ninja-color-body-background,#f7f9fc)}.ntp-section.ntp-section-style-muted{background:var(--ninja-color-section-background,#fff)}
.ntp-section.ntp-section-style-primary{background:var(--ninja-color-primary,#1473ff);color:#fff}.ntp-section.ntp-section-style-secondary{background:var(--ninja-color-secondary,#061c3f);color:#fff}.ntp-section.ntp-section-style-accent{background:var(--ninja-color-accent,#35a7ff);color:var(--ninja-color-secondary,#061c3f)}
.ntp-section.ntp-section-style-primary :is(h1,h2,h3,h4,h5,h6),.ntp-section.ntp-section-style-secondary :is(h1,h2,h3,h4,h5,h6){color:inherit}
.ntp-section.ntp-section-style-hero{background:linear-gradient(135deg,var(--ninja-color-secondary,#061c3f),var(--ninja-color-primary,#1473ff));color:#fff}.ntp-section.ntp-section-style-hero :is(h1,h2,h3,h4,h5,h6){color:inherit}
.ntp-section.ntp-section-style-highlight{background:color-mix(in srgb,var(--ninja-color-accent,#35a7ff) 14%,var(--ninja-component-cards-background,#fff));border-left:4px solid var(--ninja-color-accent,#35a7ff)}
.ntp-section.ntp-section-style-transparent{background:transparent;box-shadow:none}
.ntp-column.ntp-column-style-card{background:var(--ninja-component-cards-background,#fff);color:var(--ninja-component-cards-color,var(--ninja-color-body-text,#1b2430));border:1px solid var(--ninja-component-cards-border,var(--ninja-color-border,#d9e2ec));border-radius:var(--ninja-component-cards-radius,var(--ninja-radius-lg,18px));box-shadow:var(--ninja-component-cards-shadow,var(--ninja-shadow-sm));padding:var(--ninja-component-cards-padding,1.5rem)}
.nb-card-widget.uk-card-primary{background:var(--ninja-color-primary,#1473ff);color:#fff;border-color:var(--ninja-color-primary,#1473ff)}.nb-card-widget.uk-card-secondary{background:var(--ninja-color-secondary,#061c3f);color:#fff;border-color:var(--ninja-color-secondary,#061c3f)}.nb-card-widget.uk-card-muted{background:var(--ninja-color-section-background,#fff);color:var(--ninja-color-body-text,#1b2430)}

body.ninja-theme-pro .mod-login button[id*=webauthn]+.mod-login__submit,body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button+.mod-login__submit{margin-top:0}
/* 8.20.69 Design Center authentication spacing authority. */
body.ninja-theme-pro .mod-login__submit{margin-top:var(--ninja-component-buttons-gap,.7rem)!important}
body.ninja-theme-pro .mod-login button[id*=webauthn],body.ninja-theme-pro .mod-login button[class*=webauthn],body.ninja-theme-pro .mod-login .plg_system_webauthn_login_button{margin-bottom:var(--ninja-component-buttons-gap,.7rem)!important}

/* NTP 8.20.69 semantic foreground authority: explicit background choices also own readable foregrounds. */
.ntp-auto-contrast.ntp-background-override-primary,.ntp-auto-contrast.ntp-section-style-primary,.ntp-auto-contrast.ntp-column-style-primary,.ntp-auto-contrast.ntp-section-style-secondary,.ntp-auto-contrast.ntp-column-style-secondary,.ntp-auto-contrast.ntp-section-style-hero{color:var(--ninja-color-on-primary,#fff)!important}
.ntp-auto-contrast.ntp-background-override-secondary{color:var(--ninja-color-on-secondary,#fff)!important}
.ntp-auto-contrast.ntp-background-override-accent,.ntp-auto-contrast.ntp-section-style-accent,.ntp-auto-contrast.ntp-column-style-accent{color:var(--ninja-color-on-accent,var(--ninja-color-secondary,#061c3f))!important}
.ntp-auto-contrast.ntp-background-override-default,.ntp-auto-contrast.ntp-background-override-surface,.ntp-auto-contrast.ntp-background-override-surface-alt,.ntp-auto-contrast.ntp-background-override-muted{color:var(--ninja-color-body-text,#1b2430)!important}
.ntp-auto-contrast:is(.ntp-background-override-primary,.ntp-background-override-secondary,.ntp-background-override-accent,.ntp-section-style-primary,.ntp-section-style-secondary,.ntp-section-style-accent,.ntp-column-style-primary,.ntp-column-style-secondary,.ntp-column-style-accent,.ntp-section-style-hero) :is(h1,h2,h3,h4,h5,h6,p,li,span,small,strong,em,label,figcaption){color:inherit!important}
.ntp-auto-contrast:is(.ntp-background-override-primary,.ntp-background-override-secondary,.ntp-section-style-primary,.ntp-section-style-secondary,.ntp-column-style-primary,.ntp-column-style-secondary,.ntp-section-style-hero) a{color:inherit!important;text-decoration-color:currentColor}

/* Joomla password visibility control: accessible text remains for screen readers; visual control is a compact eye icon. */
body.ninja-theme-pro .visually-hidden,body.ninja-component-only .visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.ninja-theme-pro .input-password-toggle,body.ninja-component-only .input-password-toggle{inline-size:44px!important;min-inline-size:44px!important;block-size:44px!important;min-block-size:44px!important;padding:0!important;display:inline-grid!important;place-items:center!important;flex:0 0 44px!important;font-size:0!important;line-height:1!important;border-radius:var(--ninja-component-buttons-border-radius,var(--ninja-radius-md,8px))!important;background:var(--ninja-component-buttons-default-background,var(--ninja-color-card-background,#fff))!important;color:var(--ninja-component-buttons-default-color,var(--ninja-color-secondary,#061c3f))!important;border:var(--ninja-component-buttons-border-width,1px) solid var(--ninja-component-buttons-border,var(--ninja-color-border,#d9e2ec))!important}
body.ninja-theme-pro .input-password-toggle::before,body.ninja-component-only .input-password-toggle::before{content:"";width:21px;height:21px;background:currentColor;display:block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5c5.5 0 9.5 5.1 9.7 5.3a1.1 1.1 0 0 1 0 1.4C21.5 11.9 17.5 17 12 17S2.5 11.9 2.3 11.7a1.1 1.1 0 0 1 0-1.4C2.5 10.1 6.5 5 12 5Zm0 2c-3.7 0-6.8 3.1-7.6 4 .8.9 3.9 4 7.6 4s6.8-3.1 7.6-4c-.8-.9-3.9-4-7.6-4Zm0 1.5A2.5 2.5 0 1 1 12 13a2.5 2.5 0 0 1 0-5Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5c5.5 0 9.5 5.1 9.7 5.3a1.1 1.1 0 0 1 0 1.4C21.5 11.9 17.5 17 12 17S2.5 11.9 2.3 11.7a1.1 1.1 0 0 1 0-1.4C2.5 10.1 6.5 5 12 5Zm0 2c-3.7 0-6.8 3.1-7.6 4 .8.9 3.9 4 7.6 4s6.8-3.1 7.6-4c-.8-.9-3.9-4-7.6-4Zm0 1.5A2.5 2.5 0 1 1 12 13a2.5 2.5 0 0 1 0-5Z'/%3E%3C/svg%3E") center/contain no-repeat}
body.ninja-theme-pro .mod-login__password.input-group,body.ninja-component-only .mod-login__password.input-group{display:flex!important;align-items:stretch!important;gap:var(--ninja-component-buttons-gap,.5rem)!important}
body.ninja-theme-pro .mod-login__password.input-group>input,body.ninja-component-only .mod-login__password.input-group>input{flex:1 1 auto!important;min-width:0!important}

/* 8.20.71 Joomla password input-group authority: the input-group is nested inside .mod-login__password. */
body.ninja-theme-pro .mod-login__password .input-group,body.ninja-component-only .mod-login__password .input-group{position:relative!important;display:block!important;width:100%!important}
body.ninja-theme-pro .mod-login__password .input-group>input[type=password],body.ninja-theme-pro .mod-login__password .input-group>input[type=text],body.ninja-component-only .mod-login__password .input-group>input[type=password],body.ninja-component-only .mod-login__password .input-group>input[type=text]{width:100%!important;padding-right:56px!important}
body.ninja-theme-pro .mod-login__password .input-group>.input-password-toggle,body.ninja-component-only .mod-login__password .input-group>.input-password-toggle{position:absolute!important;right:4px!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;margin:0!important;inline-size:40px!important;min-inline-size:40px!important;block-size:40px!important;min-block-size:40px!important;border:0!important;background:transparent!important;box-shadow:none!important}


/* 8.20.73 Joomla login compact field/remember authority. */
body.ninja-theme-pro .mod-login__username,body.ninja-component-only .mod-login__username{margin-bottom:.55rem!important}
body.ninja-theme-pro .mod-login__password,body.ninja-component-only .mod-login__password{margin-bottom:.45rem!important}
body.ninja-theme-pro .mod-login__username input,body.ninja-theme-pro .mod-login__password input,body.ninja-component-only .mod-login__username input,body.ninja-component-only .mod-login__password input{box-sizing:border-box!important;min-height:48px!important;padding:.72rem 1rem!important}
body.ninja-theme-pro .mod-login__password .input-group>input[type=password],body.ninja-theme-pro .mod-login__password .input-group>input[type=text],body.ninja-component-only .mod-login__password .input-group>input[type=password],body.ninja-component-only .mod-login__password .input-group>input[type=text]{padding-right:52px!important}
body.ninja-theme-pro .mod-login__password .input-group>.input-password-toggle,body.ninja-component-only .mod-login__password .input-group>.input-password-toggle{right:8px!important;inline-size:34px!important;min-inline-size:34px!important;block-size:34px!important;min-block-size:34px!important}
body.ninja-theme-pro .mod-login__password .input-group>.input-password-toggle::before,body.ninja-component-only .mod-login__password .input-group>.input-password-toggle::before{width:20px!important;height:20px!important}
body.ninja-theme-pro .mod-login__remember,body.ninja-component-only .mod-login__remember{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:.6rem!important;margin:.15rem 0 .35rem!important}
body.ninja-theme-pro .mod-login__remember input[type=checkbox],body.ninja-component-only .mod-login__remember input[type=checkbox]{flex:0 0 auto!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important}
body.ninja-theme-pro .mod-login__remember label,body.ninja-component-only .mod-login__remember label{display:inline-flex!important;align-items:center!important;margin:0!important;padding:0!important;line-height:1.25!important}


/* 8.20.110 frontend mobile-navigation and breadcrumb runtime authority. */
.ninja-mobile-menu-position{display:none;align-items:center;justify-content:flex-end}
.ninja-breadcrumb-position{margin-block:var(--ninja-space-sm,.75rem);border:var(--ninja-component-breadcrumbs-border-width,0) solid var(--ninja-color-border,#d9e2ec);border-radius:var(--ninja-component-breadcrumbs-radius,0);padding:var(--ninja-component-breadcrumbs-padding-y,0) var(--ninja-component-breadcrumbs-padding-x,0);box-shadow:var(--ninja-component-breadcrumbs-shadow,none);background:transparent;color:var(--ninja-color-muted-text,var(--ninja-color-body-text,#1b2430))}
.ninja-breadcrumb-position:empty{display:none}
.ninja-breadcrumb-position nav,.ninja-breadcrumb-position .mod-breadcrumbs,.ninja-breadcrumb-position .breadcrumb{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;min-height:0!important}
.ninja-breadcrumb-position .mod-breadcrumbs,.ninja-breadcrumb-position .breadcrumb{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:.45rem!important;list-style:none!important}
.ninja-breadcrumb-position .mod-breadcrumbs>li,.ninja-breadcrumb-position .breadcrumb>li{margin:0!important;padding:0!important;list-style:none!important}
@media(max-width:960px){
 .ninja-mobile-menu-authority-active .ninja-menu-toggle,.ninja-mobile-menu-authority-active .ninja-mobile-panel{display:none!important}
 .ninja-mobile-menu-position{display:flex}
 .ninja-mobile-menu-position .nb-mobile-menu{display:inline-flex}
}
@media(min-width:961px){.ninja-mobile-menu-position{display:none!important}}


/* 8.20.112 Mobile Menu Builder trigger */
.ninja-mobile-menu-position .nb-mobile-menu__toggle--icon-only{
  width:48px;
  min-width:48px;
  padding:0;
}


/* 8.20.114 compact frontend component shell spacing.
   Preset section spacing remains authoritative inside builder sections. */
#main-content>.ninja-container.ninja-layout-single,
#main-content>.ninja-container.ninja-layout-grid{padding-block-start:var(--ninja-space-md,1.5rem);padding-block-end:var(--ninja-space-lg,3rem)}
#main-content>.ninja-container:has(.ninja-breadcrumb-position){margin-bottom:0}
.ninja-breadcrumb-position{margin-block:var(--ninja-space-sm,.75rem) var(--ninja-component-breadcrumbs-content-gap,2rem)}
.ninja-main-column>:first-child{margin-top:0}
@media(max-width:960px){
 #main-content>.ninja-container.ninja-layout-single,
 #main-content>.ninja-container.ninja-layout-grid{padding-block-start:var(--ninja-space-sm,.75rem);padding-block-end:var(--ninja-space-lg,3rem)}
}


/* 8.20.116 breadcrumb-to-content spacing authority — shared by every preset. */
#main-content .ninja-breadcrumb-position{margin-block-end:var(--ninja-component-breadcrumbs-content-gap,2rem)}
#main-content .ninja-breadcrumb-position:empty{margin-block-end:0}
