/* Our Journey eight official palettes — shared tokens, no theme-specific layout stacks. */
[data-oj-theme="navy"]{--oj-bg:#081b35;--oj-panel:#12395e;--oj-surface:#174b78;--oj-accent:#35adff;--oj-border:#3989c5;--oj-ink:#f1f7ff;--oj-subtle:#c4dff3;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
:root,[data-oj-theme="midnight"]{--oj-bg:#030b17;--oj-panel:#0b1b30;--oj-surface:#102b45;--oj-accent:#28d7f5;--oj-border:#266b92;--oj-ink:#f1f7ff;--oj-subtle:#b7d5e5;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="obsidian"]{--oj-bg:#060510;--oj-panel:#171025;--oj-surface:#251336;--oj-accent:#e653f5;--oj-border:#8d3eaa;--oj-ink:#f9edff;--oj-subtle:#e3c7ef;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="aurora"]{--oj-bg:#041b1e;--oj-panel:#0c3035;--oj-surface:#16484b;--oj-accent:#32e0bc;--oj-border:#278e8a;--oj-ink:#f1fffb;--oj-subtle:#b7e8df;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="royal"]{--oj-bg:#080f2c;--oj-panel:#15244d;--oj-surface:#203b70;--oj-accent:#829bff;--oj-border:#576fc4;--oj-ink:#f5f6ff;--oj-subtle:#c9d5fc;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="rose"]{--oj-bg:#21111f;--oj-panel:#382039;--oj-surface:#4c2b4a;--oj-accent:#ffa4d0;--oj-border:#ad608c;--oj-ink:#fff2fa;--oj-subtle:#efd1e2;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="forest"]{--oj-bg:#081b14;--oj-panel:#122e24;--oj-surface:#1d4535;--oj-accent:#6ee7a0;--oj-border:#418c69;--oj-ink:#f1fff6;--oj-subtle:#c5e9d2;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
[data-oj-theme="sunset"]{--oj-bg:#20110d;--oj-panel:#392118;--oj-surface:#523020;--oj-accent:#ffac68;--oj-border:#ad6944;--oj-ink:#fff6ef;--oj-subtle:#f0d3bb;--oj-glow:color-mix(in srgb,var(--oj-accent) 22%,transparent);--oj-field:color-mix(in srgb,var(--oj-bg) 70%,var(--oj-panel));--oj-hover:color-mix(in srgb,var(--oj-surface) 70%,var(--oj-accent));color-scheme:dark}
html{background:var(--oj-bg)}
body{background-color:var(--oj-bg);color:var(--oj-ink)}
/* Palette-only changes; existing page layout and interactive behavior remain authoritative. */
body[data-oj-theme] :is(.ojfresh-sidebar,.ojfresh-panel,.ojfresh-box,.oj14-workspace,.ojr-card,.ojr-composer,.oj-app-sidebar,.demo-panel,.demo-stats article){background:var(--oj-panel);border-color:var(--oj-border);color:var(--oj-ink)}
body[data-oj-theme] :is(.ojfresh-card,.oj14-feature,.ojfresh-user,.ojr-upload,.demo-tabs a){background:var(--oj-surface);border-color:var(--oj-border);color:var(--oj-ink)}
body[data-oj-theme] :is(.ojfresh-nav[aria-selected="true"],.demo-tabs a[aria-current="page"]){border-color:var(--oj-accent);box-shadow:inset 0 0 10px var(--oj-glow)}
/* Theme picker: each card is a vertically stacked, self-contained choice. */
.oj-theme-picker{width:100%;min-width:0;max-width:100%;overflow:visible}
.oj-theme-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;width:100%;min-width:0}
.oj-theme-choice{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;max-width:100%;width:100%;overflow:hidden;padding:12px;background:var(--oj-panel);color:var(--oj-ink);border:1px solid var(--oj-border);border-radius:14px;cursor:pointer;text-align:left;white-space:normal;overflow-wrap:anywhere;box-shadow:none}
.oj-theme-choice[aria-pressed="true"]{border-color:var(--oj-accent);outline:2px solid var(--oj-accent);outline-offset:-3px;box-shadow:0 0 0 3px var(--oj-glow)}
.oj-theme-choice strong{display:block;font-size:15px;line-height:1.3;margin:0;color:var(--oj-ink)}
.oj-theme-choice small{display:block;font-size:12px;line-height:1.4;color:var(--oj-subtle);margin:0}
.oj-theme-swatch{display:block;flex:0 0 auto;width:100%;height:76px;border-radius:10px;border:1px solid var(--swatch-accent);background:linear-gradient(145deg,var(--swatch-bg) 30%,var(--swatch-panel))}
.oj-theme-swatch:after{content:"";display:block;width:55%;height:27px;margin:23px auto;border:1px solid var(--swatch-accent);border-radius:8px;background:var(--swatch-panel)}
.oj-theme-status{min-height:22px;color:var(--oj-subtle)}
@media(min-width:1150px){.oj-theme-choices{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:480px){.oj-theme-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.oj-theme-choice{padding:9px}.oj-theme-swatch{height:66px}.oj-theme-swatch:after{margin:18px auto}}
@media(max-width:340px){.oj-theme-choices{grid-template-columns:minmax(0,1fr)}}

html[data-oj-theme] body.oj-demo-themed{--demo-bg:var(--oj-bg);--demo-accent:var(--oj-accent);background:var(--oj-bg)!important}
html[data-oj-theme] body.oj-demo-themed :is(.oj-app-sidebar,.demo-panel,.demo-stats article,.feature){background:var(--oj-panel)!important;border-color:var(--oj-border)!important}
html[data-oj-theme] body.oj-demo-themed .demo-tabs a[aria-current="page"]{background:var(--oj-surface)!important;border-color:var(--oj-accent)!important}
html[data-oj-theme] body.oj792-login .oj792-auth-box{border-color:var(--oj-accent);background:linear-gradient(145deg,var(--oj-panel),var(--oj-bg));box-shadow:0 0 28px var(--oj-glow)}
html[data-oj-theme] body.oj792-login .oj792-tabs a[aria-current="page"]{background:var(--oj-surface);border:1px solid var(--oj-accent)}
html[data-oj-theme] body.oj792-login .oj792-submit{background:var(--oj-surface);border-color:var(--oj-accent);box-shadow:0 0 15px var(--oj-glow)}
html[data-oj-theme] body :is(.ojah-card,.ojah-panel,.ojah-sidebar,.ojfresh-panel,.ojfresh-sidebar){border-color:var(--oj-border)}

/* Unified palette for existing controls. Layout, spacing and behavior remain owned by each page. */
html[data-oj-theme] body :is(.ojfresh-panel,.ojfresh-box,.ojfresh-card,.ojah-card,.ojah-panel,.ojah-sidebar,.ojr-card,.ojr-composer,.oj-app-house,.oj-app-sidebar,.demo-panel,.demo-banner,.demo-stats article,.oj-modal,.oj-modal-content,.modal-content,.oj-dropdown-menu,.oj-custom-select-menu,[role="listbox"],.oj-calendar,.calendar-panel,.fc-view-harness,.fc-scrollgrid){background-color:var(--oj-panel);border-color:var(--oj-border);color:var(--oj-ink)}
html[data-oj-theme] body :is(.ojfresh-nav,.ojah-tab,.ojah-nav,.ojr-upload,.oj-custom-select,.oj-select,.oj-tabs button,.demo-tabs a,.fc-button,.fc-button-primary,.oj-theme-choice){background-color:var(--oj-surface);border-color:var(--oj-border);color:var(--oj-ink)}
html[data-oj-theme] body :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select,.oj-input,.oj-textarea,.oj-datepicker-input,.flatpickr-input){border-color:var(--oj-border);color:var(--oj-ink);accent-color:var(--oj-accent)}
html[data-oj-theme] body :is(input,textarea,select):focus-visible{outline:2px solid var(--oj-accent);outline-offset:1px}
html[data-oj-theme] body :is(input[type="checkbox"],input[type="radio"],input[type="range"]){accent-color:var(--oj-accent)}
html[data-oj-theme] body :is(button,a,[role="option"],[role="tab"],.oj-custom-select-option):focus-visible{outline:2px solid var(--oj-accent);outline-offset:2px}
html[data-oj-theme] body :is(.ojfresh-nav,.ojah-tab,.ojah-nav,.ojr-upload,.oj-custom-select,.oj-select,.demo-tabs a,.fc-button):hover{border-color:var(--oj-accent);background-color:var(--oj-hover)}
html[data-oj-theme] body :is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active,.is-active,.selected,.oj-selected):is(.ojfresh-nav,.ojah-tab,.ojah-nav,.oj-custom-select-option,.oj-select-option,.demo-tabs a,.fc-button,.oj-theme-choice){background-color:var(--oj-surface);border-color:var(--oj-accent);box-shadow:inset 0 0 0 1px var(--oj-accent)}
html[data-oj-theme] body :is(.oj-custom-select-menu,[role="listbox"],.flatpickr-calendar,.ui-datepicker,.datepicker-dropdown){background:var(--oj-panel);border-color:var(--oj-border);color:var(--oj-ink)}
html[data-oj-theme] body :is(.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.ui-datepicker-current-day a,.fc-day-today){background:var(--oj-surface);border-color:var(--oj-accent);color:var(--oj-ink)}
html[data-oj-theme] body :is(.flatpickr-day:hover,.ui-datepicker-calendar a:hover,.fc-button:hover){background:var(--oj-hover);border-color:var(--oj-accent)}
html[data-oj-theme] body :is(.fc-scrollgrid,.fc-theme-standard td,.fc-theme-standard th,.fc-col-header,.fc-daygrid-day,.fc-timegrid-slot){border-color:var(--oj-border)}
html[data-oj-theme] body :is(.oj-theme-choices,.oj-theme-picker){color:var(--oj-ink)}
/* Do not recolor validation, warning, destructive or disabled states: their semantic meaning matters. */


