/* Three palette choices: neutral default plus sand and navy alternatives. */
:root[data-palette="sand"] {
  --ground: #f8f3ea;
  --ink: #292b2d;
  --muted: #61635f;
  --accent: #2a2d30;
  --accent-hover: #42474b;
  --button-ink: #ffffff;
  --focus: #5a6267;
  --deep: #202427;
  --surface: #efe6d9;
  --panel: #e5d8c8;
  --line: #d4c3af;
  --nav: #ede2d2;
  --contact: #2b3033;
  --footer: #181b1d;
  --practice: #202427;
  --control-line: #8c908d;
  --scroll-thumb: #8c908d;
  --reading-ground: #f1e7d8;
  --reading-ink: #292b2d;
  --reading-muted: #61635f;
  --reading-accent: #2a2d30;
  --reading-hover: #42474b;
  --reading-surface: #fffaf3;
  --reading-panel: #e8dccb;
  --reading-line: #cebaa2;
  --reading-focus: #5a6267;
  --form-ground: #fffaf3;
  --field-ground: #fffdf9;
  --field-border: #8c908d;
  --field-placeholder: #6b6e68;
  --note-ground: #e3dbce;
  --note-ink: #292b2d;
  --note-muted: #565c57;
  --card-ground: #f1e7d8;
  --dark-ink: #f4f2ed;
  --dark-muted: #c2c4c1;
  --dark-action: #f0eee7;
  --dark-hover: #fffdf7;
  --dark-button-ink: #202427;
  --dark-line: #626967;
  --dark-focus: #d0d5d1;
  --dark-surface: #2b3033;
  --dark-panel: #353d41;
  --shade: 29,32,34;
  --selection-bg: var(--accent);
  --selection-ink: var(--button-ink);
  --reading-button-ink: #ffffff;
  --reading-scheme: light;
  --error: #9f2331;
  color-scheme: light;
}
:root[data-palette="navy"] {
  --ground: #14212a;
  --ink: #edf4f6;
  --muted: #b4c7d0;
  --accent: #bdd8e2;
  --accent-hover: #d9edf3;
  --button-ink: #142c38;
  --focus: #bed7e0;
  --deep: #0d1c25;
  --surface: #1c303d;
  --panel: #253e4d;
  --line: #486372;
  --nav: #213643;
  --contact: #223b49;
  --footer: #0d1c25;
  --practice: #102631;
  --control-line: #7c96a4;
  --scroll-thumb: #7c96a4;
  --reading-ground: #edf3f5;
  --reading-ink: #1b303c;
  --reading-muted: #506672;
  --reading-accent: #2d586c;
  --reading-hover: #1c4255;
  --reading-surface: #fbfdfe;
  --reading-panel: #dce7ec;
  --reading-line: #bdcfd7;
  --reading-focus: #426d80;
  --form-ground: #fbfdfe;
  --field-ground: #ffffff;
  --field-border: #80939c;
  --field-placeholder: #536c77;
  --note-ground: #cbdde3;
  --note-ink: #254552;
  --note-muted: #3d5c69;
  --card-ground: #edf3f5;
  --dark-ink: #edf5f7;
  --dark-muted: #b7cbd5;
  --dark-action: #bdd8e2;
  --dark-hover: #d9edf3;
  --dark-button-ink: #142c38;
  --dark-line: #486372;
  --dark-focus: #bed7e0;
  --dark-surface: #1c303d;
  --dark-panel: #253e4d;
  --shade: 16,35,47;
  --selection-bg: var(--accent);
  --selection-ink: var(--button-ink);
  --reading-button-ink: #ffffff;
  --reading-scheme: light;
  --error: #9f2331;
  color-scheme: dark;
}

:root:is([data-palette="sand"],[data-palette="navy"]) *{scrollbar-color:var(--scroll-thumb) var(--ground)}
:root:is([data-palette="sand"],[data-palette="navy"]) .site-header{background:var(--ground);border-color:var(--line)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.desktop-nav,.page-nav){background:var(--nav)}
:root:is([data-palette="sand"],[data-palette="navy"]) .mobile-nav{background:var(--ground);box-shadow:0 15px 25px #00000025}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.header-contact,.button-outline,.goal-links a){border-color:var(--control-line)}
:root:is([data-palette="sand"],[data-palette="navy"]) .button-outline:hover{border-color:var(--accent);background:var(--panel)}
:root:is([data-palette="sand"],[data-palette="navy"]) .button-white:hover{background:var(--dark-hover);border-color:var(--dark-hover)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.light-section,.language-card,.language-choice,.calculator-box,.application-form){
  --ink:var(--reading-ink);--muted:var(--reading-muted);--accent:var(--reading-accent);--accent-hover:var(--reading-hover);--button-ink:var(--reading-button-ink);--focus:var(--reading-focus);--surface:var(--reading-surface);--panel:var(--reading-panel);--line:var(--reading-line);--selection-bg:var(--reading-accent);--selection-ink:var(--reading-button-ink);color:var(--ink);color-scheme:var(--reading-scheme)
}
:root:is([data-palette="sand"],[data-palette="navy"]) .light-section{background:var(--reading-ground)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.world-hero,.blue-section,.site-footer,.graphite-section,.graphite-card){
  --ink:var(--dark-ink);--muted:var(--dark-muted);--accent:var(--dark-action);--accent-hover:var(--dark-hover);--button-ink:var(--dark-button-ink);--deep:var(--practice);--line:var(--dark-line);--focus:var(--dark-focus);--selection-bg:var(--dark-action);--selection-ink:var(--dark-button-ink);color:var(--ink);color-scheme:dark
}
:root:is([data-palette="sand"],[data-palette="navy"]) .world-sky{background:linear-gradient(180deg,rgba(var(--shade),.91) 0%,rgba(var(--shade),.76) 30%,rgba(var(--shade),.19) 62%,rgba(var(--shade),.72) 85%,rgb(var(--shade)) 100%)}
:root:is([data-palette="sand"],[data-palette="navy"]) .hero-bottom>p span{color:var(--dark-muted)}
:root:is([data-palette="sand"],[data-palette="navy"]) .blue-section{background:var(--practice)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.feature-heading p,.practice-content>p){color:var(--muted)}
:root:is([data-palette="sand"],[data-palette="navy"]) .site-footer{background:var(--footer)}
:root:is([data-palette="sand"],[data-palette="navy"]) .contact-section{background:var(--contact);border-color:var(--line)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.intro-note,.language-choice){background:var(--note-ground);color:var(--note-ink);--selection-bg:var(--reading-accent);--selection-ink:var(--reading-button-ink)}
:root:is([data-palette="sand"],[data-palette="navy"]) .intro-note p{color:var(--note-muted)!important}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.intro-note .text-link,.language-choice .card-link){color:var(--reading-hover)}
:root:is([data-palette="sand"],[data-palette="navy"]) .language-choice p{color:var(--note-muted)}
:root:is([data-palette="sand"],[data-palette="navy"]) .language-choice .card-link{border-color:var(--reading-line)}
:root:is([data-palette="sand"],[data-palette="navy"]) .language-card{background:var(--card-ground)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.calculator-box,.application-form),:root:is([data-palette="sand"],[data-palette="navy"]) .light-section .calculator-box{background:var(--form-ground);border:1px solid var(--reading-line)}
:root:is([data-palette="sand"],[data-palette="navy"]) .cadence-controls{background:var(--reading-panel)}
:root:is([data-palette="sand"],[data-palette="navy"]) .cadence-button[aria-pressed=true]{background:var(--reading-accent);color:var(--reading-button-ink)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.field input,.field select,.field textarea){background:var(--field-ground);border-color:var(--field-border);color:var(--reading-ink);scrollbar-color:var(--field-border) var(--field-ground)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.field input,.field textarea)::placeholder{color:var(--field-placeholder)}
:root:is([data-palette="sand"],[data-palette="navy"]) .field label span{color:var(--reading-muted)}
:root:is([data-palette="sand"],[data-palette="navy"]) .clear-selection{color:var(--reading-accent)}
:root:is([data-palette="sand"],[data-palette="navy"]) .form-error{color:var(--error)}
:root:is([data-palette="sand"],[data-palette="navy"]) .field [aria-invalid=true]{border-color:var(--error)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.step-number,.check-list svg){color:var(--accent)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.admission-steps article,.admission-detail){border-color:var(--line)}
:root:is([data-palette="sand"],[data-palette="navy"]) .pair-diagram>span{border-color:var(--reading-line);color:var(--reading-accent)}
:root:is([data-palette="sand"],[data-palette="navy"]) .pair-diagram svg+svg{color:var(--reading-muted)}
:root:is([data-palette="sand"],[data-palette="navy"]) .lesson-flow li:before{border-color:var(--reading-line)}
:root:is([data-palette="sand"],[data-palette="navy"]) .related-cta{background:var(--panel)}
:root:is([data-palette="sand"],[data-palette="navy"]) .age-panels article{background:var(--surface)}
:root:is([data-palette="sand"],[data-palette="navy"]) .age-panels article:first-child{background:var(--panel)}
:root:is([data-palette="sand"],[data-palette="navy"]) :is(.calculator-box a,.calculator-box button,.application-form button):focus-visible{outline-color:var(--reading-focus)}
:root:is([data-palette="sand"],[data-palette="navy"]) .time-card:after{background:linear-gradient(90deg,rgba(var(--shade),.84),rgba(var(--shade),.35)),linear-gradient(0deg,rgba(var(--shade),.88),transparent 80%)}
:root:is([data-palette="sand"],[data-palette="navy"]) .contact-photo:after{background:linear-gradient(transparent,rgba(var(--shade),.8))}
@media(max-width:560px){:root:is([data-palette="sand"],[data-palette="navy"]) .world-sky{background:linear-gradient(180deg,rgba(var(--shade),.94) 0%,rgba(var(--shade),.78) 35%,rgba(var(--shade),.17) 64%,rgba(var(--shade),.87) 90%,rgb(var(--shade)) 100%)}}

:root:is([data-palette="sand"],[data-palette="navy"]) :is(.light-section,.calculator-box,.application-form) .button:not(.button-outline):not(.button-white){color:var(--reading-button-ink)}
