@import url("global-contrast-v2.css?v=20260808-1");

:root{--nf-bg:#f4f8fb;--nf-panel:#ffffff;--nf-panel-2:#edf4f7;--nf-text:#10233b;--nf-muted:#4f6573;--nf-border:#cbdce3;--nf-accent:#10bdb4;--nf-accent-2:#006f68;--nf-input:#fff;--nf-shadow:0 16px 45px rgba(18,48,68,.12);color-scheme:light}
:root[data-theme="dark"]{--nf-bg:#03080d;--nf-panel:#08121c;--nf-panel-2:#0d1a25;--nf-text:#f3f9fc;--nf-muted:#bfd0db;--nf-border:#294150;--nf-accent:#62eee4;--nf-accent-2:#7af7ed;--nf-input:#0a1620;--nf-shadow:0 18px 58px rgba(0,0,0,.48);color-scheme:dark}
html,body{background:var(--nf-bg)!important;color:var(--nf-text)!important}
body,main,.page,.app,.app-shell,.portal-page,.portal-shell,.institution-page,.particular-page,.auth-page,.user-page,.center-page,.game-page,.therapeutic-page{background-color:var(--nf-bg)!important;color:var(--nf-text)!important}
header,nav,aside,footer,.card,.panel,.modal,.dialog,.widget,.surface,.section-card,.dashboard-card,.patient-card,.session-card,.report-card,.program-card,.form-card,.game-shell,.game-panel,.result-panel,.settings-panel,.center-card,.timeline-card,.calendar-card,.table-wrap,.auth-card,.profile-card{background-color:var(--nf-panel)!important;color:var(--nf-text)!important;border-color:var(--nf-border)!important}
input,select,textarea,button:not(.primary):not(.home-login):not(.home-button):not(.btn-primary){background-color:var(--nf-input);color:var(--nf-text);border-color:var(--nf-border)}
h1,h2,h3,h4,h5,h6,strong,b,label,legend,th,td{color:var(--nf-text)}
p,small,.muted,.hint,.subtitle,.description,.meta,.secondary-text{color:var(--nf-muted)!important}
a{color:var(--nf-accent-2)}
table{color:var(--nf-text);border-color:var(--nf-border)}
tr,td,th{border-color:var(--nf-border)!important}
hr{border-color:var(--nf-border)}
[data-theme="dark"] img:not([src*="game-covers"]):not(.game-cover):not(.mass-game-cover img){color-scheme:dark}
.theme-toggle-compact,.global-theme-toggle{background:var(--nf-panel)!important;border:1px solid var(--nf-border)!important;color:var(--nf-text)!important}

/* Self-guided personal portal readability guard.
   The personal area intentionally uses light clinical surfaces, so it must keep
   dark readable typography even when the global UI/browser theme is dark. */
.self-body{background:#f4f8f8!important;color:#10233b!important}
.self-body main,.self-body .section,.self-body .personal-link-section,.self-body .personal-assignments-section,.self-body #juegos{background:#f7fbfa!important;color:#10233b!important;opacity:1!important;filter:none!important}
.self-body .self-hero,.self-body .self-hero *,.self-body main *{opacity:1!important;filter:none!important}
.self-body .self-hero{background:linear-gradient(145deg,#eafbf8 0%,#f7fbfa 100%)!important;color:#10233b!important}
.self-body .self-hero .kicker,.self-body .section .kicker,.self-body .section-intro .kicker,.self-body .personal-link-card .kicker{color:#006f68!important}
.self-body h1,.self-body h2,.self-body h3,.self-body h4,.self-body strong,.self-body b,.self-body label{color:#10233b!important}
.self-body p,.self-body small,.self-body span,.self-body li,.self-body .section-intro p,.self-body .description,.self-body .meta{color:#4d6470!important}
.self-body a:not(.button):not(.self-game-link){color:#006f68!important}
.self-body .button.primary,.self-body .portal-primary,.self-body .self-game-link{background:#42d6c4!important;color:#07302d!important;border:0!important}
.self-body input,.self-body select,.self-body textarea{background:#ffffff!important;color:#10233b!important;border-color:#cfe0df!important}

.self-body .today-card,.self-body .personal-link-card,.self-body .connections-card,.self-body .consent-rights,.self-body .personal-assignment-card,.self-body .featured-clinical-game,.self-body .self-game-grid article,.self-body .game-lab,.self-body .self-metrics article,.self-body .history-card,.self-body .self-config-card{background:#ffffff!important;border-color:#dfe8e8!important;color:#10233b!important;box-shadow:0 12px 35px rgba(19,45,53,.08)!important}
.self-body .today-card h3,.self-body .today-card b,.self-body .personal-link-card h3,.self-body .connections-card h3,.self-body .featured-clinical-game h3,.self-body .self-game-grid h3,.self-body .history-card h3,.self-body .self-metrics strong{color:#10233b!important}
.self-body .today-card small,.self-body .today-card p,.self-body .today-card span,.self-body .personal-link-card p,.self-body .personal-link-card span,.self-body .personal-link-card small,.self-body .connections-card p,.self-body .connections-card span,.self-body .sharing-explanation p,.self-body .featured-clinical-game p,.self-body .featured-clinical-game span,.self-body .self-game-grid article>p,.self-body .self-game-grid article>span,.self-body .history-row small,.self-body .history-row em,.self-body .self-metrics small,.self-body .self-metrics span{color:#4d6470!important}
.self-body .today-card #today-completion,.self-body .connections-head>span,.self-body .personal-link-icon,.self-body .history-row>span,.self-body .self-boundary span{background:#e9fbf8!important;color:#006f68!important}
.self-body .today-task,.self-body .history-row,.self-body .sharing-explanation,.self-body .connections-head,.self-body .game-lab-head{border-color:#dfe8e8!important}
.self-body .today-task b{color:#526976!important}
.self-body .personal-empty{color:#526b77!important;background:transparent!important}

.self-body .self-progress-section{background:#edf4f3!important;color:#10233b!important}
.self-body .self-boundary,.self-body .self-boundary .shell{background:#ffffff!important;color:#10233b!important}
.self-body .self-boundary p,.self-body .self-boundary b{color:#4d6470!important}
.self-body .self-professional-cta{background:#10233b!important;color:#ffffff!important}
.self-body .self-professional-cta h2,.self-body .self-professional-cta strong,.self-body .self-professional-cta b{color:#ffffff!important}
.self-body .self-professional-cta p,.self-body .self-professional-cta .kicker{color:#c9f5ee!important}

@media print{:root,:root[data-theme="dark"]{--nf-bg:#fff;--nf-panel:#fff;--nf-panel-2:#f5f5f5;--nf-text:#111;--nf-muted:#555;--nf-border:#ccc;color-scheme:light}body{background:#fff!important;color:#111!important}}
