/* ==========================================================================
   Website colour themes. A visitor picks one in the "Select theme" panel (palette button, bottom corner);
   it is remembered in their browser and applied to every public page before it is drawn (sz-theme.js).
   Each theme re-points the shared colour tokens from sz-tokens.css, so the page background, section bands, headers,
   buttons, the offerings stripe and the footer all change together (cards stay white so they stand out). "Navy Gold" is the default (no overrides).
   ========================================================================== */

/* 2 · Indigo Saffron */
html[data-sz-theme="indigo-saffron"] {
  --sz-navy-950: #14123a; --sz-navy-900: #1e1b4b; --sz-navy-800: #29266a; --sz-navy-700: #353287; --sz-navy-600: #4440a8;
  --sz-blue-700: #14123a; --sz-blue-600: #1e1b4b; --sz-blue-500: #353287; --sz-blue-300: #c9c8e6; --sz-blue-100: #e6e5f5; --sz-blue-50: #f4f4fb;
  --sz-teal-600: #b4480a; --sz-teal-500: #f97316; --sz-teal-400: #fb923c; --sz-teal-100: #ffe4cc; --sz-teal-50: #fff5ec;
  --sz-accent-soft: #fdba74; --sz-highlight: #4f46e5; --sz-highlight-2: #818cf8; --sz-eyebrow: #c2410c;
  --sz-glow: #fb923c; --sz-glow-soft: #fed7aa; --sz-cta-1: #fdba74; --sz-cta-2: #f97316;
  --sz-page-bg: #f6f5fd; --sz-paper-2: #ebe9f8; --sz-paper-3: #dcd9f1;
}
/* 3 · Forest Emerald */
html[data-sz-theme="forest-emerald"] {
  --sz-navy-950: #062a20; --sz-navy-900: #0b3b2e; --sz-navy-800: #11503e; --sz-navy-700: #17654f; --sz-navy-600: #1f7a60;
  --sz-blue-700: #062a20; --sz-blue-600: #0b3b2e; --sz-blue-500: #17654f; --sz-blue-300: #c3dbd2; --sz-blue-100: #e0efe9; --sz-blue-50: #f2f8f5;
  --sz-teal-600: #0d7a52; --sz-teal-500: #1fae7a; --sz-teal-400: #34d399; --sz-teal-100: #d1fae5; --sz-teal-50: #ecfdf5;
  --sz-accent-soft: #6ee7b7; --sz-highlight: #0f8a5f; --sz-highlight-2: #34d399; --sz-eyebrow: #0d7a52;
  --sz-glow: #34d399; --sz-glow-soft: #a7f3d0; --sz-cta-1: #6ee7b7; --sz-cta-2: #1fae7a;
  --sz-page-bg: #f3f9f6; --sz-paper-2: #e2f1ea; --sz-paper-3: #cfe6db;
}
/* 4 · Maroon Sand */
html[data-sz-theme="maroon-sand"] {
  --sz-navy-950: #2e0812; --sz-navy-900: #4a0f1d; --sz-navy-800: #5f1627; --sz-navy-700: #761e33; --sz-navy-600: #8e2a41;
  --sz-blue-700: #2e0812; --sz-blue-600: #4a0f1d; --sz-blue-500: #761e33; --sz-blue-300: #e2c8cd; --sz-blue-100: #f3e4e7; --sz-blue-50: #faf3f4;
  --sz-teal-600: #8a6a2c; --sz-teal-500: #c9a46a; --sz-teal-400: #dcbf8c; --sz-teal-100: #f3e9d6; --sz-teal-50: #faf6ee;
  --sz-accent-soft: #ead3a8; --sz-highlight: #8e2a41; --sz-highlight-2: #c9a46a; --sz-eyebrow: #8e2a41;
  --sz-glow: #dcbf8c; --sz-glow-soft: #f3e9d6; --sz-cta-1: #ead3a8; --sz-cta-2: #c9a46a;
  --sz-page-bg: #fcf7f4; --sz-paper-2: #f4e8de; --sz-paper-3: #eadac9;
}
/* 5 · Midnight Cyan */
html[data-sz-theme="midnight-cyan"] {
  --sz-navy-950: #05080c; --sz-navy-900: #0b0f14; --sz-navy-800: #151b23; --sz-navy-700: #1f2731; --sz-navy-600: #2b3541;
  --sz-blue-700: #05080c; --sz-blue-600: #0b0f14; --sz-blue-500: #1f2731; --sz-blue-300: #c9cfd6; --sz-blue-100: #e5e8ec; --sz-blue-50: #f4f5f7;
  --sz-teal-600: #0e7490; --sz-teal-500: #22d3ee; --sz-teal-400: #67e8f9; --sz-teal-100: #cffafe; --sz-teal-50: #ecfeff;
  --sz-accent-soft: #67e8f9; --sz-highlight: #0e7490; --sz-highlight-2: #22d3ee; --sz-eyebrow: #0e7490;
  --sz-glow: #22d3ee; --sz-glow-soft: #a5f3fc; --sz-cta-1: #67e8f9; --sz-cta-2: #22d3ee;
  --sz-page-bg: #f3f6f9; --sz-paper-2: #e5ebf1; --sz-paper-3: #d5dde7;
}
/* 6 · Teal Amber */
html[data-sz-theme="teal-amber"] {
  --sz-navy-950: #08313c; --sz-navy-900: #0f4c5c; --sz-navy-800: #135e71; --sz-navy-700: #187287; --sz-navy-600: #1e879f;
  --sz-blue-700: #08313c; --sz-blue-600: #0f4c5c; --sz-blue-500: #187287; --sz-blue-300: #c4dde3; --sz-blue-100: #e1eff2; --sz-blue-50: #f2f8fa;
  --sz-teal-600: #a35f05; --sz-teal-500: #f59e0b; --sz-teal-400: #fbbf24; --sz-teal-100: #fdecc8; --sz-teal-50: #fff8e8;
  --sz-accent-soft: #fcd34d; --sz-highlight: #0f6e85; --sz-highlight-2: #22a3c2; --sz-eyebrow: #a35f05;
  --sz-glow: #fbbf24; --sz-glow-soft: #fde68a; --sz-cta-1: #fcd34d; --sz-cta-2: #f59e0b;
  --sz-page-bg: #f2f8fa; --sz-paper-2: #dff0f4; --sz-paper-3: #cae3ea;
}
/* 7 · Charcoal Lime */
html[data-sz-theme="charcoal-lime"] {
  --sz-navy-950: #0e100e; --sz-navy-900: #1a1d1a; --sz-navy-800: #262a26; --sz-navy-700: #333833; --sz-navy-600: #424842;
  --sz-blue-700: #0e100e; --sz-blue-600: #1a1d1a; --sz-blue-500: #333833; --sz-blue-300: #cfd2cf; --sz-blue-100: #e8eae8; --sz-blue-50: #f5f6f5;
  --sz-teal-600: #4d7c0f; --sz-teal-500: #84cc16; --sz-teal-400: #a3e635; --sz-teal-100: #ecfccb; --sz-teal-50: #f7fee7;
  --sz-accent-soft: #bef264; --sz-highlight: #4d7c0f; --sz-highlight-2: #84cc16; --sz-eyebrow: #4d7c0f;
  --sz-glow: #a3e635; --sz-glow-soft: #d9f99d; --sz-cta-1: #bef264; --sz-cta-2: #84cc16;
  --sz-page-bg: #f5f7f2; --sz-paper-2: #e9eee1; --sz-paper-3: #dbe3cf;
}
/* 8 · Royal Plum */
html[data-sz-theme="royal-plum"] {
  --sz-navy-950: #250536; --sz-navy-900: #3b0a57; --sz-navy-800: #4e1173; --sz-navy-700: #621a8f; --sz-navy-600: #7627ab;
  --sz-blue-700: #250536; --sz-blue-600: #3b0a57; --sz-blue-500: #621a8f; --sz-blue-300: #dccbe8; --sz-blue-100: #efe5f6; --sz-blue-50: #f8f3fb;
  --sz-teal-600: #8a6a00; --sz-teal-500: #eab308; --sz-teal-400: #facc15; --sz-teal-100: #fef3c7; --sz-teal-50: #fefce8;
  --sz-accent-soft: #fde047; --sz-highlight: #7627ab; --sz-highlight-2: #a855f7; --sz-eyebrow: #7627ab;
  --sz-glow: #facc15; --sz-glow-soft: #fef08a; --sz-cta-1: #fde047; --sz-cta-2: #eab308;
  --sz-page-bg: #faf5fc; --sz-paper-2: #efe4f6; --sz-paper-3: #e1d0ee;
}
/* 9 · Navy Rose */
html[data-sz-theme="navy-rose"] {
  --sz-navy-950: #0e1a2e; --sz-navy-900: #172a46; --sz-navy-800: #1f385d; --sz-navy-700: #284775; --sz-navy-600: #33578d;
  --sz-blue-700: #0e1a2e; --sz-blue-600: #172a46; --sz-blue-500: #284775; --sz-blue-300: #c8d1df; --sz-blue-100: #e4e9f1; --sz-blue-50: #f3f6f9;
  --sz-teal-600: #be123c; --sz-teal-500: #f43f5e; --sz-teal-400: #fb7185; --sz-teal-100: #ffe4e6; --sz-teal-50: #fff1f2;
  --sz-accent-soft: #fda4af; --sz-highlight: #be123c; --sz-highlight-2: #fb7185; --sz-eyebrow: #be123c;
  --sz-glow: #fb7185; --sz-glow-soft: #fecdd3; --sz-cta-1: #fda4af; --sz-cta-2: #f43f5e;
  --sz-page-bg: #f5f7fb; --sz-paper-2: #fcebee; --sz-paper-3: #f6d6dc;
}
/* 10 · Graphite Tangerine */
html[data-sz-theme="graphite-tangerine"] {
  --sz-navy-950: #121417; --sz-navy-900: #1f2226; --sz-navy-800: #2b2f35; --sz-navy-700: #383d44; --sz-navy-600: #474d55;
  --sz-blue-700: #121417; --sz-blue-600: #1f2226; --sz-blue-500: #383d44; --sz-blue-300: #d0d3d7; --sz-blue-100: #e9eaec; --sz-blue-50: #f5f6f7;
  --sz-teal-600: #c2410c; --sz-teal-500: #ff7a1a; --sz-teal-400: #ff9a4d; --sz-teal-100: #ffe6d1; --sz-teal-50: #fff5ec;
  --sz-accent-soft: #ffb380; --sz-highlight: #c2410c; --sz-highlight-2: #ff7a1a; --sz-eyebrow: #c2410c;
  --sz-glow: #ff9a4d; --sz-glow-soft: #ffd4b3; --sz-cta-1: #ffb380; --sz-cta-2: #ff7a1a;
  --sz-page-bg: #f6f6f7; --sz-paper-2: #fff1e6; --sz-paper-3: #ffe0c7;
}

/* ---- In a chosen theme, the parts that keep their own fixed colours in the default look follow the theme too.
   (Only under html[data-sz-theme], so the approved Navy Gold look is unchanged.) Kept on purpose in every theme:
   WhatsApp green buttons and the green "Enrolment open" status badge, which visitors recognise by colour. ---- */

/* "Latur · Solapur" pill next to the logo */
html[data-sz-theme] .sz-brand:not(.sz-brand--light) .sz-brand__loc {
  background: var(--sz-teal-50); border-color: color-mix(in srgb, var(--sz-teal-500) 40%, transparent); }

/* "Choose your field" cards, course groups and course covers: shades of the theme's dark colour + its accent */
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover) { --c1: var(--sz-navy-950); --c2: var(--sz-navy-700); --ca: var(--sz-cta-1); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="mech"]     { --c1: var(--sz-navy-950); --c2: var(--sz-navy-600); --ca: var(--sz-cta-1); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="civil"]    { --c1: var(--sz-navy-900); --c2: var(--sz-navy-600); --ca: var(--sz-accent-soft); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="elec"]     { --c1: var(--sz-navy-950); --c2: var(--sz-navy-800); --ca: var(--sz-cta-1); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="program"]  { --c1: var(--sz-navy-900); --c2: var(--sz-navy-700); --ca: var(--sz-accent-soft); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="code"]     { --c1: var(--sz-navy-950); --c2: var(--sz-navy-600); --ca: var(--sz-cta-1); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="data"]     { --c1: var(--sz-navy-800); --c2: var(--sz-navy-600); --ca: var(--sz-accent-soft); }
html[data-sz-theme] :is(.sz-field, .sz-group, .sz-course__cover)[data-theme="creative"] { --c1: var(--sz-navy-900); --c2: var(--sz-navy-600); --ca: var(--sz-cta-1); }

/* "Programs & Services for Colleges": the five cards alternate two light tints of the theme */
html[data-sz-theme] .sz-offer { --tint: var(--sz-paper-2); --icbg: var(--sz-paper); --ink: var(--sz-highlight); }
html[data-sz-theme] .sz-offer:nth-child(even) { --tint: var(--sz-teal-50); --icbg: var(--sz-paper); --ink: var(--sz-teal-600); }

/* Documentation support block */
html[data-sz-theme] .sz-docsupport { background: linear-gradient(110deg, var(--sz-paper-2), var(--sz-teal-50) 60%, var(--sz-paper-2));
  border-color: color-mix(in srgb, var(--sz-navy-700) 18%, transparent); }
html[data-sz-theme] .sz-docsupport__list .bi { background: var(--sz-teal-100); color: var(--sz-teal-600); }
html[data-sz-theme] .sz-docsupport__list { border-color: color-mix(in srgb, var(--sz-navy-700) 22%, transparent); }

/* Upcoming batches table: number circle, date and time chips, Enroll button */
html[data-sz-theme] .sz-schedule__no span { background: var(--sz-blue-100); }
html[data-sz-theme] .sz-schedule__chip { background: var(--sz-blue-50); }
html[data-sz-theme] .sz-schedule__chip--time { background: var(--sz-teal-50); }
html[data-sz-theme] .sz-schedule__chip--time .bi { color: var(--sz-teal-600); }
html[data-sz-theme] .sz-schedule__btn--enroll { background: linear-gradient(135deg, var(--sz-cta-1), var(--sz-cta-2));
  box-shadow: 0 8px 18px -10px color-mix(in srgb, var(--sz-cta-2) 80%, transparent); }

/* ---- The theme picker: a round palette button and a small panel with ten two-colour swatches ---- */
.sz-themer { position: fixed; z-index: 1040; left: 1.25rem; bottom: 1.25rem; font-family: var(--sz-font-body); }
@media (max-width: 1199.98px) { .sz-themer { left: .85rem; bottom: calc(5.1rem + env(safe-area-inset-bottom)); } }
.sz-themer__toggle { display: grid; place-items: center; width: 3.1rem; height: 3.1rem; padding: 0; border-radius: 50%;
  border: 2px solid var(--sz-teal-500); background: var(--sz-navy-900); color: var(--sz-accent-soft); font-size: 1.3rem;
  box-shadow: 0 10px 26px -10px rgba(0,0,0,.55); transition: transform .2s; }
.sz-themer__toggle:hover { transform: scale(1.06); }
.sz-themer__toggle:focus-visible { outline: 3px solid var(--sz-highlight); outline-offset: 3px; }
@media (max-width: 1199.98px) { .sz-themer__toggle { width: 2.7rem; height: 2.7rem; font-size: 1.1rem; } }
.sz-themer__panel { position: absolute; left: 0; bottom: calc(100% + .7rem); width: 16.5rem; padding: .9rem .9rem .8rem; border-radius: 16px;
  background: #fff; border: 1px solid var(--sz-ink-200); box-shadow: 0 22px 50px -18px rgba(0,0,0,.45); }
.sz-themer__panel[hidden] { display: none; }
.sz-themer__title { display: flex; align-items: center; gap: .4rem; margin: 0 0 .7rem; font-size: .7rem; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--sz-ink-500); }
.sz-themer__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: .55rem; }
.sz-themer__swatch { --a: #0d2352; --b: #c4922e; width: 2.3rem; height: 2.3rem; padding: 0; border-radius: 50%;
  border: 2px solid #fff; box-shadow: 0 0 0 1px var(--sz-ink-200); background: linear-gradient(135deg, var(--a) 50%, var(--b) 50%);
  transition: transform .15s, box-shadow .15s; }
.sz-themer__swatch:hover { transform: scale(1.08); }
.sz-themer__swatch:focus-visible { outline: 3px solid var(--sz-highlight); outline-offset: 2px; }
.sz-themer__swatch[aria-checked="true"] { box-shadow: 0 0 0 2px var(--a), 0 0 0 4px #fff, 0 0 0 5px var(--sz-ink-300); transform: scale(1.06); }
.sz-themer__swatch[data-theme="navy-gold"]          { --a: #0d2352; --b: #c4922e; }
.sz-themer__swatch[data-theme="indigo-saffron"]     { --a: #1e1b4b; --b: #f97316; }
.sz-themer__swatch[data-theme="forest-emerald"]     { --a: #0b3b2e; --b: #1fae7a; }
.sz-themer__swatch[data-theme="maroon-sand"]        { --a: #4a0f1d; --b: #c9a46a; }
.sz-themer__swatch[data-theme="midnight-cyan"]      { --a: #0b0f14; --b: #22d3ee; }
.sz-themer__swatch[data-theme="teal-amber"]         { --a: #0f4c5c; --b: #f59e0b; }
.sz-themer__swatch[data-theme="charcoal-lime"]      { --a: #1a1d1a; --b: #84cc16; }
.sz-themer__swatch[data-theme="royal-plum"]         { --a: #3b0a57; --b: #eab308; }
.sz-themer__swatch[data-theme="navy-rose"]          { --a: #172a46; --b: #f43f5e; }
.sz-themer__swatch[data-theme="graphite-tangerine"] { --a: #1f2226; --b: #ff7a1a; }
.sz-themer__name { display: flex; align-items: center; justify-content: center; gap: .4rem; margin: .8rem 0 0; padding: .45rem .6rem; border-radius: 10px;
  background: var(--sz-ink-100); font-size: .84rem; font-weight: 600; color: var(--sz-ink-900); }
@media (prefers-reduced-motion: reduce) { .sz-themer__toggle, .sz-themer__swatch { transition: none; } }
@media print { .sz-themer { display: none; } }
