/* The default palette; keep selectors scoped for future themes. */
html[data-theme="jw-inspired"]{
 --theme-paper:light-dark(#fff,#121212);--theme-ink:light-dark(#292929,#f1f1f1);
 --theme-quiet:light-dark(#616161,#bdbdbd);--theme-line:light-dark(#d6d6d6,#444);
 --theme-cell:light-dark(#f1f1f1,#252525);--theme-nav:light-dark(#4a6da7,#304c78);
 --theme-accent:light-dark(#4a6da7,#587db5);--theme-label:light-dark(#373d48,#24282f);
 --theme-detail:light-dark(#f5f5f5,#202328);--theme-secondary:light-dark(#667589,#3b4656);
 --theme-date:light-dark(#405c86,#31466a);--theme-outside:light-dark(#e9e9e9,#000);
 --theme-current:light-dark(#3b597e,#304c68);--theme-meeting-heading:#BD601C;
}

html[data-theme="jw-inspired"],
html[data-theme="jw-inspired"] .editor-page #service-week-grid{
 --paper:var(--theme-paper);--ink:var(--theme-ink);--quiet:var(--theme-quiet);--line:var(--theme-line);
 --cell:var(--theme-cell);--nav:var(--theme-nav);--teal:var(--theme-accent);--label:var(--theme-label);
}
html[data-theme="jw-inspired"] body:has(.public-programme){background:var(--theme-outside)}
html[data-theme="jw-inspired"] :is(.public-midweek,.public-weekend,.public-service)>header{background:var(--theme-accent)}
html[data-theme="jw-inspired"] :is(.public-midweek,.public-weekend,.public-service)>header>h3{background:transparent}
html[data-theme="jw-inspired"] :is(.programme-part dt,.message-rows>dt){background:var(--theme-label)}
html[data-theme="jw-inspired"] :is(.programme-part dd,.message-rows>dd){background:var(--theme-detail)}
html[data-theme="jw-inspired"] .public-messages .message-copy{background:var(--theme-label)}
html[data-theme="jw-inspired"] .public-messages .message-copy:hover{background:var(--theme-accent)}
html[data-theme="jw-inspired"] .public-programme .service-meeting>h4{background:var(--theme-date)}
html[data-theme="jw-inspired"] .public-programme :is(.remote-connection-part>h4,.public-messages>h4,.service-meeting>.service-subsection>h5){background:var(--theme-secondary);color:#fff}
html[data-theme="jw-inspired"] .public-programme .programme-assignment>h5{background:var(--theme-date)}
html[data-theme="jw-inspired"] .editor-page #service-week-grid :is(thead th,.slothead th){background:var(--theme-nav);color:#fff}
html[data-theme="jw-inspired"] .editor-page #service-week-grid thead th.current-week{background:var(--theme-current)}
html[data-theme="jw-inspired"] .editor-page #service-week-grid .meetingtop{color:var(--theme-ink)}
.theme-settings{margin-top:28px;border-top:1px solid var(--line);padding-top:16px}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.theme-option{display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;gap:8px;text-align:left;padding:14px;background:var(--paper);color:var(--ink);border:2px solid var(--line);border-radius:8px;min-width:0}
.theme-option[aria-pressed="true"]{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}
.theme-option>strong{font-size:15px}.theme-option>span:not(.theme-swatches){font-size:12px}.theme-option>small{font-size:12px;color:var(--quiet);margin-top:auto}
.theme-swatches{display:flex;height:38px;overflow:hidden;border-radius:4px}.theme-swatches>span{flex:1}
@media(max-width:640px){.theme-options{grid-template-columns:1fr}.theme-swatches{height:28px}}

/* JW-inspired Programme headings keep a consistent hierarchy in either appearance. */
html[data-theme="jw-inspired"] .public-programme .week-top{background:#304c78}
html[data-theme="jw-inspired"] :is(.public-midweek,.public-weekend,.public-service)>header{background:var(--theme-meeting-heading)}

/* Match the full programme section rows to the public meeting headings. */
html[data-theme="jw-inspired"] .editor-page #service-week-grid #combined-programme :is(.slothead,.heading)>:is(th,td){background:var(--theme-meeting-heading);color:#fff}
