/* EduCore Experience — welcome card, learner widgets, preferences, tour, and the eight time-of-day appearances.
   Logical properties only (RTL). One token set per state drives the theme (--wp--preset--color--*), core (--ec-*)
   and the workspace shell (--ws-*). Text/background pairs are chosen for WCAG 2.2 AA and verified in E2E (XP-T*). */

/* ---------- Time-of-day tokens ---------- */
html[data-educore-time-theme="dawn"]      { --xp-bg:#F5F1FA; --xp-surface:#FFFFFF; --xp-text:#1E2240; --xp-heading:#1E2240; --xp-muted:#4F4E6B; --xp-border:#DCD3EA; --xp-accent:#6A4C93; --xp-accent-strong:#533A75; --xp-gold:#8F4F25; --xp-glow:linear-gradient(135deg,#ECE4F8 0%,#FBE6DC 55%,#E1EEFA 100%); --xp-hero:linear-gradient(135deg,#2E2650 0%,#4A3A6E 55%,#6B4A72 100%); }
html[data-educore-time-theme="morning"]   { --xp-bg:#F2F8FC; --xp-surface:#FFFFFF; --xp-text:#102A43; --xp-heading:#102A43; --xp-muted:#455B71; --xp-border:#D2E3EE; --xp-accent:#0E6A87; --xp-accent-strong:#0A5269; --xp-gold:#7D6210; --xp-glow:linear-gradient(135deg,#E2F2FB 0%,#F6FBFE 55%,#FBF6EA 100%); --xp-hero:linear-gradient(135deg,#0F3557 0%,#125E7A 55%,#167C86 100%); }
html[data-educore-time-theme="noon"]      { --xp-bg:#FBFAF5; --xp-surface:#FFFFFF; --xp-text:#13213A; --xp-heading:#0B1F3A; --xp-muted:#4F5B6E; --xp-border:#E4E0D2; --xp-accent:#0B7F7A; --xp-accent-strong:#075F5B; --xp-gold:#7A600F; --xp-glow:linear-gradient(135deg,#FFFFFF 0%,#EEF9F8 60%,#FBF4DF 100%); --xp-hero:linear-gradient(135deg,#0B1F3A 0%,#0B4F5F 55%,#0B7F7A 100%); }
html[data-educore-time-theme="afternoon"] { --xp-bg:#FBF6EA; --xp-surface:#FFFDF8; --xp-text:#1F2A3C; --xp-heading:#1A2A44; --xp-muted:#565C66; --xp-border:#E8DDC3; --xp-accent:#1E5F8C; --xp-accent-strong:#174A6E; --xp-gold:#835500; --xp-glow:linear-gradient(135deg,#FBEFD2 0%,#FFF9EC 55%,#E9F1F8 100%); --xp-hero:linear-gradient(135deg,#1E3550 0%,#2F4A63 55%,#5C4A2A 100%); }
html[data-educore-time-theme="dusk"]      { --xp-bg:#F6F0F3; --xp-surface:#FFFFFF; --xp-text:#2A2238; --xp-heading:#2A2238; --xp-muted:#5C5266; --xp-border:#E3D6DE; --xp-accent:#8A3A5C; --xp-accent-strong:#6E2C48; --xp-gold:#9A452B; --xp-glow:linear-gradient(135deg,#EFDDE8 0%,#FAE3DA 50%,#DDE3F2 100%); --xp-hero:linear-gradient(135deg,#2D2340 0%,#52304E 55%,#753A49 100%); }
html[data-educore-time-theme="evening"]   { --xp-bg:#0E2430; --xp-surface:#133243; --xp-text:#F1F5F7; --xp-heading:#FFFFFF; --xp-muted:#B9CBD3; --xp-border:#2A5168; --xp-accent:#E9B872; --xp-accent-strong:#F3CC92; --xp-gold:#E9B872; --xp-glow:linear-gradient(135deg,#123446 0%,#16384E 50%,#262A52 100%); --xp-hero:linear-gradient(135deg,#0E2430 0%,#163E52 55%,#2B2A55 100%); }
html[data-educore-time-theme="midnight"]  { --xp-bg:#0A1024; --xp-surface:#121A36; --xp-text:#EEF0F8; --xp-heading:#FFFFFF; --xp-muted:#B3B9D3; --xp-border:#2A3358; --xp-accent:#7FD6E0; --xp-accent-strong:#A6E6EC; --xp-gold:#E6C77A; --xp-glow:radial-gradient(1px 1px at 20% 30%,rgba(255,255,255,.7),transparent 2px),radial-gradient(1px 1px at 70% 20%,rgba(255,255,255,.5),transparent 2px),radial-gradient(1px 1px at 85% 65%,rgba(255,255,255,.45),transparent 2px),linear-gradient(135deg,#111938 0%,#141C40 60%,#1A1F4A 100%); --xp-hero:linear-gradient(135deg,#070B1A 0%,#111A3A 55%,#1B2450 100%); }
html[data-educore-time-theme="night"]     { --xp-bg:#0F1720; --xp-surface:#18222E; --xp-text:#E6EAEE; --xp-heading:#F4F6F8; --xp-muted:#AEB8C2; --xp-border:#2C3946; --xp-accent:#6FC2B8; --xp-accent-strong:#93D5CC; --xp-gold:#D9C27E; --xp-glow:linear-gradient(135deg,#17222E 0%,#1A2632 60%,#1B2A30 100%); --xp-hero:linear-gradient(135deg,#0B1118 0%,#13202C 55%,#1A2E36 100%); }

/* High contrast always wins over the time of day. */
html[data-ec-contrast="high"] { --xp-bg:#FFFFFF; --xp-surface:#FFFFFF; --xp-text:#000000; --xp-heading:#000000; --xp-muted:#1F1F1F; --xp-border:#000000; --xp-accent:#00398A; --xp-accent-strong:#002A66; --xp-gold:#5C3D00; --xp-glow:none; --xp-hero:linear-gradient(#0A0A0A,#0A0A0A); }
html[data-ec-contrast="high"][data-theme="dark"] { --xp-bg:#000000; --xp-surface:#000000; --xp-text:#FFFFFF; --xp-heading:#FFFFFF; --xp-muted:#E8E8E8; --xp-border:#FFFFFF; --xp-accent:#9CD8FF; --xp-accent-strong:#C6E9FF; --xp-gold:#FFD970; }

/* Map onto the three existing token families. */
html[data-educore-time-theme], html[data-ec-contrast="high"] {
	--wp--preset--color--cream: var(--xp-bg);
	--wp--preset--color--surface: var(--xp-surface);
	--wp--preset--color--ink: var(--xp-text);
	--wp--preset--color--navy: var(--xp-heading);
	--wp--preset--color--muted: var(--xp-muted);
	--wp--preset--color--line: var(--xp-border);
	--wp--preset--color--teal: var(--xp-accent);
	--wp--preset--color--teal-strong: var(--xp-accent-strong);
	--wp--preset--color--gold: var(--xp-gold);
	--wp--preset--gradient--hero: var(--xp-hero);
	--ec-cream: var(--xp-bg); --ec-surface: var(--xp-surface); --ec-text: var(--xp-text); --ec-navy: var(--xp-heading);
	--ec-muted: var(--xp-muted); --ec-border: var(--xp-border); --ec-teal: var(--xp-accent); --ec-teal-strong: var(--xp-accent-strong); --ec-gold: var(--xp-gold);
}
html[data-educore-time-theme] .ec-app, html[data-educore-time-theme].ec-app, html[data-ec-contrast="high"] .ec-app {
	--ws-bg: var(--xp-bg); --ws-surface: var(--xp-surface); --ws-text: var(--xp-text); --ws-muted: var(--xp-muted); --ws-border: var(--xp-border); --ws-teal: var(--xp-accent);
}
html[data-educore-time-theme] body { background-color: var(--xp-bg); }
html[data-educore-time-theme] .ect-hero { background: var(--xp-hero) !important; }
html[data-theme="dark"][data-educore-time-theme] .ect-hero { background: var(--xp-hero) !important; }
/* Dark states: primary buttons carry dark text on the light accent (same rule the theme uses in dark mode). */
html[data-theme="dark"][data-educore-time-theme] :is(.wp-element-button, .wp-block-button__link, .ec-btn--primary, .login .button-primary, #wp-submit) { background-color: var(--xp-accent); color: #0A1220; border-color: var(--xp-accent); }
html[data-theme="dark"][data-educore-time-theme] :is(.wp-element-button, .wp-block-button__link, .ec-btn--primary, .login .button-primary, #wp-submit):hover { background-color: var(--xp-accent-strong); color: #0A1220; }
html[data-ec-contrast="high"] a:not(.wp-block-button__link):not(.ec-btn) { text-decoration: underline; }
html[data-ec-contrast="high"] :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }

/* Gentle transition between states (never with reduced motion). */
@media (prefers-reduced-motion: no-preference) {
	html.ec-xp-transition:not([data-ec-motion="reduce"]),
	html.ec-xp-transition:not([data-ec-motion="reduce"]) :is(body, .ec-app, .ec-card, .ect-header, .ect-hero, .ec-app-side, .ec-app-top, .ec-xp-welcome) {
		transition: background-color 1.2s ease, color 1.2s ease, border-color 1.2s ease, background 1.2s ease;
	}
}

/* ---------- Personal accessibility preferences ---------- */
html[data-ec-font="90"] { font-size: 90%; }
html[data-ec-font="110"] { font-size: 110%; }
html[data-ec-font="125"] { font-size: 125%; }
html[data-ec-font="150"] { font-size: 150%; }
html[data-ec-font] .ec-app { font-size: 1rem; }
html[data-ec-motion="reduce"] *, html[data-ec-motion="reduce"] *::before, html[data-ec-motion="reduce"] *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
html[data-ec-motion="reduce"] .ect-reveal { opacity: 1 !important; transform: none !important; }
html[data-ec-density="compact"] :is(.ec-card, .ec-ws-section) { padding: .8rem 1rem; }
html[data-ec-density="compact"] .ec-app-main { padding-block: .75rem; }
html[data-ec-density="compact"] :is(.ec-app, body) { line-height: 1.4; }
html[data-ec-reading="spacious"] :is(.ec-prose, .ec-reader, .ec-lesson-content, .wp-block-post-content) { line-height: 2; letter-spacing: .01em; word-spacing: .05em; }
html[data-ec-reading="spacious"] :is(.ec-prose, .ec-reader) p { margin-block: 0 1.2em; }

/* ---------- Welcome stack ---------- */
.ec-xp-stack { display: grid; gap: 1rem; margin-block-end: 1.25rem; }
.ec-xp-welcome, .ec-app .ec-xp-welcome.ec-card { display: flex; gap: 1.25rem; align-items: center; padding: 1.4rem 1.6rem; border-radius: 18px; background: var(--xp-glow, linear-gradient(135deg, #EEF6F8 0%, #FBF6EA 100%)); border: 1px solid var(--ec-border, #dcd6c8); position: relative; overflow: hidden; }
html[data-theme="dark"]:not([data-educore-time-theme]) :is(.ec-xp-welcome, .ec-app .ec-xp-welcome.ec-card) { background: linear-gradient(135deg, #12304b 0%, #0f2a3f 100%); }
.ec-xp-welcome__art { flex: 0 0 auto; inline-size: 64px; block-size: 64px; color: var(--xp-gold, #8a6d12); }
html[data-theme="dark"]:not([data-educore-time-theme]) .ec-xp-welcome__art { color: #EBC16D; }
.ec-xp-welcome__date { margin: 0 0 .2rem; font-size: .85rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--ec-muted, #4f5b6e); }
:lang(ar) .ec-xp-welcome__date { letter-spacing: 0; text-transform: none; }
.ec-xp-welcome__title { margin: 0 0 .5rem; font-size: clamp(1.3rem, 2.4vw, 1.7rem); line-height: 1.25; color: var(--ec-navy, #0b1f3a); text-wrap: balance; }
.ec-xp-facts { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; }
.ec-xp-fact { position: relative; padding-inline-start: 1.1rem; color: var(--ec-text, #13213a); }
.ec-xp-fact::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .6em; inline-size: 7px; block-size: 7px; border-radius: 50%; background: var(--ec-teal, #0b7f7a); }
.ec-xp-fact a { color: inherit; font-weight: 600; text-decoration-color: var(--ec-teal, #0b7f7a); text-underline-offset: 3px; }
.ec-xp-fact--tour a { color: var(--ec-teal-strong, #075f5b); }
/* The welcome card replaces the core "Welcome back" heading on My learning; the consent notice stays. */
.ec-app:has(.ec-xp-welcome) .ec-dashboard__head > h2 { display: none; }

.ec-xp-suggest h2, .ec-xp-goals h2 { margin: 0 0 .75rem; font-size: 1.15rem; }
.ec-xp-suggest__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.ec-xp-suggest__item { border: 1px solid var(--ec-border, #dcd6c8); border-radius: 12px; padding: .8rem .9rem; background: var(--ec-surface, #fff); border-inline-start: 4px solid var(--ec-teal, #0b7f7a); }
.ec-xp-suggest__item--assessment { border-inline-start-color: var(--ec-gold, #8a6d12); }
.ec-xp-suggest__item--feedback { border-inline-start-color: var(--xp-accent-strong, #075f5b); }
.ec-xp-suggest__item a { display: grid; gap: .1rem; text-decoration: none; color: var(--ec-text, #13213a); }
.ec-xp-suggest__title { font-weight: 700; color: var(--ec-navy, #0b1f3a); }
.ec-xp-suggest__item a:hover .ec-xp-suggest__title, .ec-xp-suggest__item a:focus-visible .ec-xp-suggest__title { text-decoration: underline; }
.ec-xp-suggest__ctx { font-size: .88rem; color: var(--ec-muted, #4f5b6e); }
.ec-xp-suggest__why { margin: .45rem 0 0; font-size: .88rem; color: var(--ec-muted, #4f5b6e); }
.ec-xp-empty { margin: 0; color: var(--ec-muted, #4f5b6e); }
.ec-xp-goals__list { list-style: none; margin: 0 0 .5rem; padding: 0; display: grid; gap: .7rem; }
.ec-xp-meter { display: grid; grid-template-columns: 1fr auto; gap: .25rem .75rem; align-items: center; }
.ec-xp-meter__value { font-weight: 700; font-variant-numeric: tabular-nums; }
.ec-xp-meter__bar { grid-column: 1 / -1; block-size: 10px; border-radius: 999px; background: color-mix(in srgb, var(--ec-teal, #0b7f7a) 14%, transparent); overflow: hidden; }
.ec-xp-meter__bar > span { display: block; block-size: 100%; border-radius: inherit; background: var(--ec-teal, #0b7f7a); }
.ec-xp-meter.is-met .ec-xp-meter__value::after { content: " ✓"; color: var(--ec-teal-strong, #075f5b); }

/* ---------- Preferences ---------- */
.ec-xp-prefs { display: grid; gap: 1rem; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); align-items: start; }
.ec-xp-prefs > .ec-notice { grid-column: 1 / -1; }
.ec-xp-prefs__toc { position: sticky; inset-block-start: 1rem; }
.ec-xp-prefs__toc ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .2rem; }
.ec-xp-prefs__toc a { display: block; padding: .5rem .75rem; border-radius: 10px; color: var(--ec-text, #13213a); text-decoration: none; font-weight: 600; }
.ec-xp-prefs__toc a:hover, .ec-xp-prefs__toc a:focus-visible { background: color-mix(in srgb, var(--ec-teal, #0b7f7a) 12%, transparent); }
.ec-xp-prefs__form { display: grid; gap: 1rem; }
.ec-xp-prefs__extra { grid-column: 2; display: grid; gap: 1rem; }
@media (max-width: 860px) { .ec-xp-prefs__extra { grid-column: 1; } }
.ec-xp-prefs__sec { border: 1px solid var(--ec-border, #dcd6c8); margin: 0; min-inline-size: 0; }
.ec-xp-prefs__sec > h2 { margin: 0 0 .4rem; font-size: 1.2rem; }
.ec-xp-sub { border: 0; padding: 0; margin: .75rem 0; }
.ec-xp-sub > legend { font-weight: 700; margin-block-end: .4rem; }
.ec-xp-check { display: flex; align-items: center; gap: .5rem; margin: .35rem 0; min-block-size: 32px; }
.ec-xp-check input { inline-size: 20px; block-size: 20px; margin: 0; }
.ec-xp-days { display: flex; flex-wrap: wrap; gap: .25rem 1rem; }
.ec-field--inline { display: flex; align-items: center; gap: .75rem; }
.ec-xp-prefs__save { position: sticky; inset-block-end: 0; padding-block: .75rem; background: linear-gradient(transparent, var(--ec-cream, #faf6ee) 35%); margin: 0; }
.ec-xp-modes { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .5rem; margin-block: .5rem 1rem; }
.ec-xp-mode { display: flex; align-items: center; gap: .6rem; padding: .55rem .7rem; border: 1.5px solid var(--ec-border, #dcd6c8); border-radius: 12px; cursor: pointer; background: var(--ec-surface, #fff); min-block-size: 44px; }
.ec-xp-mode:has(input:checked) { border-color: var(--ec-teal, #0b7f7a); box-shadow: 0 0 0 2px color-mix(in srgb, var(--ec-teal, #0b7f7a) 35%, transparent); }
.ec-xp-mode:has(input:focus-visible) { outline: 3px solid var(--ec-teal, #0b7f7a); outline-offset: 2px; }
.ec-xp-mode input { inline-size: 18px; block-size: 18px; margin: 0; }
.ec-xp-mode__chip { inline-size: 28px; block-size: 28px; border-radius: 8px; flex: 0 0 auto; border: 1px solid rgba(0,0,0,.15); background: linear-gradient(135deg, #faf6ee, #0b7f7a); }
[data-ec-xp-swatch="auto"] .ec-xp-mode__chip { background: conic-gradient(#0A1024 0 12%, #F5F1FA 12% 25%, #F2F8FC 25% 45%, #FBF6EA 45% 65%, #F6F0F3 65% 75%, #0E2430 75% 88%, #0F1720 88%); }
[data-ec-xp-swatch="solar"] .ec-xp-mode__chip { background: radial-gradient(circle at 50% 70%, #EBC16D 0 30%, transparent 32%), linear-gradient(#6A4C93, #F6F0F3); }
[data-ec-xp-swatch="system"] .ec-xp-mode__chip { background: linear-gradient(90deg, #faf6ee 50%, #0b1628 50%); }
[data-ec-xp-swatch="light"] .ec-xp-mode__chip { background: #faf6ee; }
[data-ec-xp-swatch="dark"] .ec-xp-mode__chip { background: #0b1628; }
[data-ec-xp-swatch="midnight"] .ec-xp-mode__chip { background: linear-gradient(135deg, #0A1024, #1B2450); }
[data-ec-xp-swatch="dawn"] .ec-xp-mode__chip { background: linear-gradient(135deg, #ECE4F8, #FBE6DC); }
[data-ec-xp-swatch="morning"] .ec-xp-mode__chip { background: linear-gradient(135deg, #E2F2FB, #FFFFFF); }
[data-ec-xp-swatch="noon"] .ec-xp-mode__chip { background: linear-gradient(135deg, #FFFFFF, #EEF9F8); }
[data-ec-xp-swatch="afternoon"] .ec-xp-mode__chip { background: linear-gradient(135deg, #FBEFD2, #E9F1F8); }
[data-ec-xp-swatch="dusk"] .ec-xp-mode__chip { background: linear-gradient(135deg, #EFDDE8, #FAE3DA); }
[data-ec-xp-swatch="evening"] .ec-xp-mode__chip { background: linear-gradient(135deg, #0E2430, #2B2A55); }
[data-ec-xp-swatch="night"] .ec-xp-mode__chip { background: linear-gradient(135deg, #0F1720, #1A2E36); }
.ec-xp-solar { padding: .75rem 1rem; border-radius: 12px; background: color-mix(in srgb, var(--ec-teal, #0b7f7a) 6%, transparent); }
@media (max-width: 860px) { .ec-xp-prefs { grid-template-columns: 1fr; } .ec-xp-prefs__toc { position: static; } .ec-xp-prefs__toc ul { display: flex; flex-wrap: wrap; } }

/* ---------- First-visit banner ---------- */
.ec-xp-firstrun { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; border: 2px solid var(--ec-teal, #0b7f7a); }
.ec-xp-firstrun h2 { margin: 0 0 .25rem; font-size: 1.2rem; }
.ec-xp-firstrun p { margin: 0; color: var(--ec-muted, #4f5b6e); }
.ec-xp-firstrun__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; }

/* ---------- Welcome tour ---------- */
.ec-xp-tour { max-inline-size: 720px; margin-inline: auto; padding: 1.6rem 1.8rem; }
.ec-xp-tour__progress { margin: 0; font-weight: 700; color: var(--ec-muted, #4f5b6e); font-size: .9rem; }
.ec-xp-tour__steps { list-style: none; display: flex; flex-wrap: wrap; gap: .35rem; margin: .6rem 0 1.2rem; padding: 0; }
.ec-xp-tour__steps li { padding: .25rem .7rem; border-radius: 999px; font-size: .85rem; border: 1px solid var(--ec-border, #dcd6c8); color: var(--ec-muted, #4f5b6e); }
.ec-xp-tour__steps li.is-done { border-color: var(--ec-teal, #0b7f7a); color: var(--ec-teal-strong, #075f5b); }
.ec-xp-tour__steps li.is-current { background: var(--ec-teal, #0b7f7a); border-color: var(--ec-teal, #0b7f7a); color: #fff; font-weight: 700; }
html[data-theme="dark"] .ec-xp-tour__steps li.is-current { color: #0A1220; }
.ec-xp-tour__title { margin: 0 0 .6rem; }
.ec-xp-tour__nav { display: flex; flex-wrap: wrap; gap: .5rem; margin-block-start: 1.4rem; }
.ec-xp-tour__exit { margin: 1rem 0 0; }
.ec-link { background: none; border: 0; padding: .4rem 0; color: var(--ec-teal-strong, #075f5b); text-decoration: underline; cursor: pointer; font: inherit; min-block-size: 44px; }
html[data-theme="dark"] .ec-link { color: var(--ec-teal, #3cc6bf); }
.ec-xp-resume { display: inline-flex; align-items: center; gap: .5rem; margin-block: .5rem 1rem; }
@media (max-width: 600px) { .ec-xp-welcome { flex-direction: column; align-items: flex-start; padding: 1.1rem; } .ec-xp-welcome__art { inline-size: 44px; block-size: 44px; } }

/* Dark-state component contrast (1.5 regression fixes: chips, Teaching Hub tiles, editor media button). */
[data-theme="dark"] .ec-chip { color: var(--xp-text, #e8eef6); background: color-mix(in srgb, var(--xp-accent, #5fd4d0) 22%, transparent); }
[data-theme="dark"] .ec-chip--publish { background: #123d2a; color: #c9f2d8; }
[data-theme="dark"] .ec-th { --th-muted: var(--xp-muted, #aab6c6); --th-line: var(--xp-border, #2c3a4c); --th-bg: var(--xp-surface, #142030); }
[data-theme="dark"] .wp-media-buttons .button, [data-theme="dark"] #insert-media-button { background: #f6f7f7; color: #1d2327; border-color: #8c8f94; }
[data-theme="dark"] .ec-th-widget { background: var(--xp-surface, #142030); color: var(--xp-text, #e8eef6); }
[data-theme="dark"] .ec-th-tile { background: var(--xp-bg, #0f1720); }

/* DEF-15-07: sign-in page in time-of-day states. --ec-navy is remapped to a light heading colour in dark states, but the
   sign-in brand panel and the active language pill use it as a BACKGROUND. Pin the brand panel to the brand navy (it is
   already dark in every state) and draw the language switcher from the state tokens. */
html[data-educore-time-theme] body.ec-auth .ec-auth-brand { background: radial-gradient(120% 90% at 0% 0%, #17406a 0%, #102A43 45%, #0B1E31 100%); color: #F6F3E9; }
html[data-educore-time-theme] body.ec-auth .ec-auth-brand__tagline { color: #43D4DA; }
html[data-educore-time-theme] body.ec-auth .ec-auth-lang ul { background: var(--xp-surface); box-shadow: 0 0 0 1px var(--xp-border); }
html[data-educore-time-theme] body.ec-auth .ec-auth-lang a { color: var(--xp-text); }
html[data-educore-time-theme] body.ec-auth .ec-auth-lang a:hover { background: color-mix(in srgb, var(--xp-accent) 16%, transparent); }
html[data-educore-time-theme] body.ec-auth .ec-auth-lang a[aria-current="true"],
html[data-educore-time-theme] body.ec-auth .ec-auth-lang a[aria-current="true"]:hover { background: var(--xp-heading); color: var(--xp-surface); }
