/* V25 — theme-safe semantic color system and smart digital layer */
.systemV25{--ui-bg:#f3f6f8;--ui-surface:#fff;--ui-surface-2:#f7f9fa;--ui-surface-3:#edf2f4;--ui-text:#102531;--ui-heading:#071c28;--ui-muted:#687b86;--ui-faint:#84949d;--ui-border:#dce5e9;--ui-accent:#ed3040;--ui-accent-hover:#d71c2c;--ui-accent-soft:#fff0f2;--ui-on-accent:#fff;--ui-success:#16865e;--ui-success-soft:#e8f7f0;--ui-warning:#a86d10;--ui-warning-soft:#fff6df;--ui-danger:#c51e2d;--ui-danger-soft:#fff0f2;--ui-shadow:0 22px 60px rgba(6,28,40,.1);background:var(--ui-bg);color:var(--ui-text)}html[data-ui-accent="navy"] .systemV25{--ui-accent:#216a8c;--ui-accent-hover:#15536f;--ui-accent-soft:#e8f3f7;--ui-on-accent:#fff}html[data-ui-accent="gold"] .systemV25{--ui-accent:#c4922e;--ui-accent-hover:#a8781d;--ui-accent-soft:#fff6df;--ui-on-accent:#1d170a}html[data-ui-accent="maras"] .systemV25{--ui-accent:#ed3040;--ui-accent-hover:#d71c2c;--ui-accent-soft:#fff0f2;--ui-on-accent:#fff}
html[data-theme="dark"] .systemV25{--ui-bg:#07151c;--ui-surface:#0f212a;--ui-surface-2:#142832;--ui-surface-3:#19303b;--ui-text:#eaf2f5;--ui-heading:#f7fafb;--ui-muted:#9babb3;--ui-faint:#82959f;--ui-border:#2a404b;--ui-accent-soft:#3d2028;--ui-success:#63d9a8;--ui-success-soft:#15382c;--ui-warning:#efbe61;--ui-warning-soft:#3b301c;--ui-danger:#ff7580;--ui-danger-soft:#442029;--ui-shadow:0 24px 70px rgba(0,0,0,.28)}html[data-theme="dark"][data-ui-accent="navy"] .systemV25{--ui-accent:#58a8ca;--ui-accent-hover:#75bddb;--ui-accent-soft:#173746;--ui-on-accent:#061820}html[data-theme="dark"][data-ui-accent="gold"] .systemV25{--ui-accent:#e6b85b;--ui-accent-hover:#f1cb7b;--ui-accent-soft:#3c301b;--ui-on-accent:#201705}
/* universal typography and contrast */
.systemV25 :is(h1,h2,h3,h4,.proWelcome h1,.moduleHeader h1,.v13PageHead h1,.proCard h2,.newModules h3,.dataTable b,.userTable b,.permRow b){color:var(--ui-heading)}.systemV25 :is(p,small,.proWelcome p,.moduleHeader p,.v13PageHead p,.dataTable small,.userTable small,.newModules p,.actionGrid small,.recentCard small){color:var(--ui-muted)}.systemV25 :is(input,textarea,select){background:var(--ui-surface-2);border-color:var(--ui-border);color:var(--ui-text)}.systemV25 :is(input,textarea)::placeholder{color:var(--ui-faint);opacity:1}.systemV25 :is(input,textarea,select):focus{background:var(--ui-surface);border-color:var(--ui-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-accent) 14%,transparent)}.systemV25 :is(a,button):focus-visible{outline:3px solid color-mix(in srgb,var(--ui-accent) 30%,transparent);outline-offset:2px}.systemV25 :is(.contextLine,.sectionLabel,.breadcrumb b,.moduleSummary b,.newModules small,.modalStep,.v13PageHead>span){color:var(--ui-accent)}
/* public pages */
.systemV25 .portalHeader{background:color-mix(in srgb,var(--ui-surface) 94%,transparent);border-color:var(--ui-border)}.systemV25 .portalLogo span,.systemV25 .portalHeader nav a{color:var(--ui-heading)}.systemV25 .portalLogo small{color:var(--ui-muted)}.systemV25 .portalHeader nav{background:var(--ui-surface-2);border-color:var(--ui-border)}.systemV25 .portalHeader nav a:hover,.systemV25 .portalHeader nav a.active{background:var(--ui-surface);color:var(--ui-accent);box-shadow:0 5px 15px color-mix(in srgb,var(--ui-heading) 8%,transparent)}.systemV25 .portalLogin,.systemV25 .portalPrimary{background:linear-gradient(135deg,var(--ui-accent),var(--ui-accent-hover));color:var(--ui-on-accent)}.systemV25 .listingSection,.systemV25 .contactArea{background:linear-gradient(var(--ui-bg),var(--ui-surface))}.systemV25 .filterBar{background:color-mix(in srgb,var(--ui-surface) 94%,transparent);border-color:var(--ui-border)}.systemV25 .filterBar>b{color:var(--ui-heading)}.systemV25 .filterBar button{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.systemV25 .filterBar button:hover,.systemV25 .filterBar button.selected{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent)}.systemV25 :is(.clubGrid,.athleteGrid,.achievementGrid,.valuesGrid)>article,.systemV25 .eventList article,.systemV25 .contactArea>div>article,.systemV25 .contactArea form{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.systemV25 :is(.clubGrid,.athleteGrid,.achievementGrid,.valuesGrid)>article:before{background:linear-gradient(90deg,var(--ui-accent),color-mix(in srgb,var(--ui-accent) 60%,#fff))}.systemV25 .clubGrid p,.systemV25 .achievementGrid p,.systemV25 .eventList p{color:var(--ui-muted)}.systemV25 .clubGrid a,.systemV25 .athleteGrid a{border-color:var(--ui-border);color:var(--ui-heading)}.systemV25 .clubGrid a:hover,.systemV25 .athleteGrid a:hover{color:var(--ui-accent)}.systemV25 .eventList article>a{background:var(--ui-surface-3);color:var(--ui-heading)}.systemV25 .eventList article>a:hover{background:var(--ui-accent);color:var(--ui-on-accent)}.systemV25 :is(.profileDetail,.eventDetail)>article,.systemV25 .athleteDetail{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.systemV25 .athleteDetail{background:linear-gradient(130deg,#071c28 0 34%,var(--ui-surface) 34%)}.systemV25 .contactArea>div>article b{color:var(--ui-heading)}.systemV25 .contactArea>div>article small{color:var(--ui-muted)}.systemV25 .emptyState{background:var(--ui-surface-2)!important;border-color:var(--ui-border)!important;color:var(--ui-text)}.systemV25 .mobilePortalMenu{background:var(--ui-surface);border-color:var(--ui-border)}.systemV25 .mobilePortalMenu i{background:var(--ui-heading)}
/* home page theme repair */
.systemV25 .v11Section,.systemV25 .clubShowcase,.systemV25 .marasAtlas{background:var(--ui-bg)}.systemV25 :is(.v11SectionHead h2,.clubShowcase h2,.atlasIntro h2){color:var(--ui-heading)}.systemV25 :is(.v11SectionHead p,.atlasIntro>p,.clubRail p){color:var(--ui-muted)}.systemV25 .v11Service,.systemV25 .clubRail>a,.systemV25 .atlasSignals div,.systemV25 .districtOrbit button{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.systemV25 .v11Service:not(.featured) h3,.systemV25 .clubRail h3{color:var(--ui-heading)}.systemV25 .v11Service.featured{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent)}.systemV25 .v11Service.featured :is(h3,p,b,span){color:var(--ui-on-accent)}.systemV25 .atlasIntro>span,.systemV25 .clubShowcase header span{color:var(--ui-accent)}
/* administration theme repair */
.systemV25.v13Admin{--a-bg:var(--ui-bg);--a-panel:var(--ui-surface);--a-soft:var(--ui-surface-2);--a-line:var(--ui-border);--a-text:var(--ui-text);--a-muted:var(--ui-muted);--a-blue:var(--ui-accent);background:radial-gradient(circle at 85% 0,color-mix(in srgb,var(--ui-accent) 8%,var(--ui-bg)),transparent 34%),var(--ui-bg)!important;color:var(--ui-text)}.systemV25.v13Admin .proTop{background:color-mix(in srgb,var(--ui-surface) 92%,transparent);border-color:var(--ui-border)}.systemV25.v13Admin .topIdentity b,.systemV25.v13Admin .globalSearch input{color:var(--ui-heading)}.systemV25.v13Admin .globalSearch,.systemV25.v13Admin .moduleSearch{background:var(--ui-surface-2);border-color:var(--ui-border)}.systemV25.v13Admin .globalSearch kbd{background:var(--ui-surface-3);color:var(--ui-muted)}.systemV25.v13Admin :is(.metricCards article,.proCard,.v13Insight,.moduleToolbar,.newModules article,.v13Table,.permissionMatrix,.roleList,.profileGrid>*,.noticeLayout>*,.editUserLayout>*,.searchPageForm,.searchResults,.helpHero,.supportCard){background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text);box-shadow:0 7px 24px color-mix(in srgb,var(--ui-heading) 6%,transparent)}.systemV25.v13Admin :is(.dataTable article,.userTable article,.permRow,.recentCard>a,.newModules footer){border-color:var(--ui-border)}.systemV25.v13Admin .dataTable article:hover,.systemV25.v13Admin .userTable article:hover,.systemV25.v13Admin .notificationFeed article:hover{background:var(--ui-surface-2)}.systemV25.v13Admin :is(.mainAction,.quickCreate,.searchPageForm button,.helpHero button){background:linear-gradient(135deg,var(--ui-accent),var(--ui-accent-hover));border-color:var(--ui-accent);color:var(--ui-on-accent);box-shadow:0 10px 24px color-mix(in srgb,var(--ui-accent) 24%,transparent)}.systemV25.v13Admin :is(.outlineAction,.modalCancel,.rowActions a,.rowActions button,.userActions a,.userActions button,.protocolActions a,.protocolActions button,.filterBar button,.notificationFeed button,.topIcon,.themePicker>button){background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-heading)}.systemV25.v13Admin .deleteEntity{background:var(--ui-danger-soft)!important;border-color:color-mix(in srgb,var(--ui-danger) 25%,var(--ui-border))!important;color:var(--ui-danger)!important}.systemV25.v13Admin :is(.quickMenu,.themeMenu,.v13Modal,.v13Modal>form,.v13Modal.createPanel,.v13Modal footer){background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.systemV25.v13Admin .v13Modal header{background:linear-gradient(var(--ui-surface),var(--ui-surface-2));border-color:var(--ui-border)}.systemV25.v13Admin .v13Modal header>button{background:var(--ui-surface-2);border-color:var(--ui-border);color:var(--ui-heading)}.systemV25.v13Admin .permHead,.systemV25.v13Admin .activeCheck,.systemV25.v13Admin .insightPulse{background:var(--ui-surface-2);border-color:var(--ui-border)}.systemV25.v13Admin .status,.systemV25.v13Admin .isRead{background:var(--ui-success-soft);color:var(--ui-success)}.systemV25.v13Admin .uiCustomize{border-color:var(--ui-border)}.systemV25.v13Admin .uiCustomize button{background:var(--ui-surface-2);border-color:var(--ui-border);color:var(--ui-text)}.systemV25.v13Admin .uiCustomize button.selected{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent)}.systemV25.v13Admin .proSide nav a.active i{color:var(--ui-accent)}.systemV25.v13Admin .proSide nav a.active:before{background:var(--ui-accent)}
/* Smart digital guide */
.aiGuideV25{position:fixed;z-index:180;right:24px;bottom:24px}.aiGuideTriggerV25{min-width:185px;height:58px;padding:0 15px;border:1px solid color-mix(in srgb,var(--ui-accent) 30%,var(--ui-border));border-radius:18px;background:color-mix(in srgb,var(--ui-surface) 94%,transparent);color:var(--ui-heading);display:grid;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;box-shadow:var(--ui-shadow);backdrop-filter:blur(18px);cursor:pointer}.aiGuideTriggerV25>i{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--ui-accent),var(--ui-accent-hover));color:var(--ui-on-accent);display:grid;place-items:center;font-style:normal;box-shadow:0 8px 18px color-mix(in srgb,var(--ui-accent) 25%,transparent)}.aiGuideTriggerV25>span{display:grid;text-align:left}.aiGuideTriggerV25 b{font-size:11px;color:var(--ui-heading)}.aiGuideTriggerV25 small{font-size:8px;color:var(--ui-muted);margin-top:2px}.aiGuideTriggerV25 em{font-style:normal;transition:.25s}.aiGuideV25.open .aiGuideTriggerV25 em{transform:rotate(180deg)}.aiGuidePanelV25{position:absolute;right:0;bottom:70px;width:365px;border:1px solid var(--ui-border);border-radius:22px;background:var(--ui-surface);color:var(--ui-text);box-shadow:0 30px 90px rgba(3,19,28,.25);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(12px) scale(.97);transform-origin:bottom right;transition:.25s}.aiGuideV25.open .aiGuidePanelV25{opacity:1;visibility:visible;transform:none}.aiGuidePanelV25 header{padding:18px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--ui-heading),color-mix(in srgb,var(--ui-heading) 78%,#24718d));color:#fff}.aiGuidePanelV25 header>div{display:flex;gap:11px;align-items:center}.aiGuidePanelV25 header i{width:37px;height:37px;border-radius:12px;background:var(--ui-accent);color:var(--ui-on-accent);display:grid;place-items:center;font-style:normal}.aiGuidePanelV25 header span{display:grid}.aiGuidePanelV25 header b{font-size:12px;color:#fff}.aiGuidePanelV25 header small{font-size:8px;color:#b7c8cf}.aiGuidePanelV25 header button{width:34px;height:34px;border:1px solid #ffffff20;border-radius:10px;background:#ffffff10;color:#fff;font-size:20px;cursor:pointer}.aiGuidePanelV25 main{padding:15px}.aiGuidePanelV25 main>span{display:block;padding:3px 4px 10px;font-size:7px;letter-spacing:1.4px;font-weight:900;color:var(--ui-accent)}.aiGuidePanelV25 main>a{min-height:66px;padding:10px;border-radius:13px;display:grid;grid-template-columns:32px 1fr 18px;align-items:center;gap:10px;color:var(--ui-text);transition:.18s}.aiGuidePanelV25 main>a:hover{background:var(--ui-accent-soft);transform:translateX(3px)}.aiGuidePanelV25 main>a>i{width:32px;height:32px;border-radius:10px;background:var(--ui-surface-3);color:var(--ui-accent);display:grid;place-items:center;font-size:8px;font-style:normal;font-weight:900}.aiGuidePanelV25 main>a>span{display:grid}.aiGuidePanelV25 main>a b{font-size:10px;color:var(--ui-heading)}.aiGuidePanelV25 main>a small{font-size:8px;color:var(--ui-muted);margin-top:3px}.aiGuidePanelV25 main>a>em{font-style:normal;color:var(--ui-accent)}.aiGuidePanelV25 footer{padding:12px 18px;border-top:1px solid var(--ui-border);background:var(--ui-surface-2);display:flex;align-items:center;gap:8px}.aiGuidePanelV25 footer i{width:6px;height:6px;border-radius:50%;background:var(--ui-success)}.aiGuidePanelV25 footer span{font-size:8px;color:var(--ui-muted)}.systemV25 .backTopV24{right:24px;bottom:96px;background:var(--ui-heading);color:var(--ui-surface)}
/* fixed-contrast regions stay legible in every theme */
.systemV25 :is(.pageHero,.commandHero,.cityDiscover,.marasStory,.v11Platform,.v11CTA) :is(h1,h2,h3){color:#fff}.systemV25 .commandHero :is(p,small,span){color:#a9bbc4}.systemV25 .commandHero h2 em{color:#67e0ad}.aiGuidePanelV25 header{background:linear-gradient(135deg,#061c28,#15465a)}.systemV25 .backTopV24{background:#061c28;color:#fff}.systemV25 :is(.profileDetail,.eventDetail)>aside :is(h2,h3,b,dt,dd,span,em){color:#fff}.systemV25 .proSide .proBrand span,.systemV25 .proSide .proUser b{color:#fff}.systemV25 .proSide .proBrand small,.systemV25 .proSide .proUser small{color:#88a0ad}
@media(max-width:700px){.aiGuideV25{right:14px;bottom:14px}.aiGuideTriggerV25{min-width:56px;width:56px;padding:0;grid-template-columns:1fr}.aiGuideTriggerV25>span,.aiGuideTriggerV25>em{display:none}.aiGuideTriggerV25>i{margin:auto}.aiGuidePanelV25{position:fixed;left:12px;right:12px;bottom:82px;width:auto}.systemV25 .backTopV24{right:14px;bottom:82px}.systemV25 .athleteDetail{background:var(--ui-surface)}}
