/* Sabbath School theme overrides extracted from root shell host. */
body.theme-dark .sabbath-school-launch-btn {
  border-color: transparent;
  background: transparent;
}

body.theme-dark .sabbath-school-launch-reflection,
body.theme-dark .sabbath-school-demo-help {
  color: #cfbc96;
}

body.theme-dark .sabbath-school-reflection-chip.is-muted,
body.theme-dark .sabbath-school-reflection-cell.is-not_started .sabbath-school-reflection-cell-button,
body.theme-dark .sabbath-school-reflection-cell.is-not_started .sabbath-school-reflection-cell-indicator {
  border-color: rgba(183, 156, 102, 0.16);
  background: rgba(47, 37, 19, 0.72);
  color: #cfbc96;
}

body.theme-dark .sabbath-school-reflection-chip.is-in_progress,
body.theme-dark .sabbath-school-reflection-cell.is-in_progress .sabbath-school-reflection-cell-button,
body.theme-dark .sabbath-school-reflection-cell.is-in_progress .sabbath-school-reflection-cell-indicator {
  border-color: rgba(214, 175, 84, 0.26);
  background: rgba(86, 65, 22, 0.86);
  color: #ffd98a;
}

body.theme-dark .sabbath-school-reflection-chip.is-completed,
body.theme-dark .sabbath-school-reflection-cell.is-completed .sabbath-school-reflection-cell-button,
body.theme-dark .sabbath-school-reflection-cell.is-completed .sabbath-school-reflection-cell-indicator {
  border-color: rgba(112, 188, 126, 0.26);
  background: rgba(27, 62, 35, 0.86);
  color: #bfe7c7;
}

body.theme-dark .sabbath-school-edu-reminder-home {
  border-color: rgba(190, 154, 79, 0.18);
  background:
    radial-gradient(circle at top right, rgba(222, 179, 79, 0.14), transparent 34%),
    linear-gradient(180deg, rgba(36, 29, 16, 0.95), rgba(24, 20, 11, 0.94));
}

body.theme-dark .sabbath-school-edu-reminder-home-eyebrow {
  color: #e2c278;
}

body.theme-dark .sabbath-school-edu-reminder-home-title {
  color: #f5e9cd;
}

body.theme-dark .sabbath-school-edu-reminder-home-meta {
  color: #d5c39b;
}

body.theme-dark .sabbath-school-reflection-cell-date {
  color: #bdaa84;
}

body.theme-dark .sabbath-school-reader-day-tab.is-in_progress {
  border-color: rgba(214, 175, 84, 0.26);
  background: rgba(74, 57, 20, 0.88);
}

body.theme-dark .sabbath-school-reader-day-tab.is-completed {
  border-color: rgba(112, 188, 126, 0.26);
  background: rgba(27, 59, 34, 0.88);
}

body.theme-dark .sabbath-school-reader-reflection-panel {
  border-color: rgba(190, 154, 79, 0.22);
  background: transparent;
}

body.theme-dark .sabbath-school-reader-reflection-card {
  border-color: rgba(190, 154, 79, 0.22);
  background:
    radial-gradient(circle at top right, rgba(222, 179, 79, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(35, 28, 14, 0.95), rgba(27, 22, 11, 0.94));
}

body.theme-dark .sabbath-school-reader-reflection-toggle {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(41, 32, 16, 0.74);
}

body.theme-dark .sabbath-school-reader-reflection-toggle.is-in_progress {
  border-color: rgba(214, 175, 84, 0.28);
  background: linear-gradient(180deg, rgba(82, 62, 20, 0.94), rgba(69, 52, 18, 0.9));
}

body.theme-dark .sabbath-school-reader-reflection-toggle.is-completed {
  border-color: rgba(112, 188, 126, 0.28);
  background: linear-gradient(180deg, rgba(32, 69, 40, 0.94), rgba(25, 57, 33, 0.9));
}

body.theme-dark .sabbath-school-reader-reflection-toggle-label {
  color: #f0c86f;
}

body.theme-dark .sabbath-school-reader-reflection-toggle-meta {
  color: #cfbc96;
}

body.theme-dark .sabbath-school-reader-reflection-toggle-chevron {
  color: #ffd98a;
}

body.theme-dark .sabbath-school-reader-reflection-eyebrow,
body.theme-dark .sabbath-school-reader-reflection-field-label,
body.theme-dark .sabbath-school-reflection-cell-token {
  color: #f0c86f;
}

body.theme-dark .sabbath-school-reader-reflection-title,
body.theme-dark .sabbath-school-reader-reflection-prompt-title {
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-reflection-meta,
body.theme-dark .sabbath-school-reader-reflection-status-text,
body.theme-dark .sabbath-school-reader-reflection-prompt-note,
body.theme-dark .sabbath-school-reader-reflection-sync {
  color: #cfbc96;
}

body.theme-dark .sabbath-school-reader-reflection-prompt {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(41, 32, 16, 0.74);
}

body.theme-dark .sabbath-school-reader-reflection-prompt.is-checked {
  border-color: rgba(112, 188, 126, 0.24);
  background: rgba(28, 58, 34, 0.78);
}

body.theme-dark .sabbath-school-reader-reflection-checkbox {
  border-color: rgba(201, 169, 98, 0.36);
  background: rgba(19, 16, 10, 0.9);
}

body.theme-dark .sabbath-school-reader-reflection-prompt.is-checked .sabbath-school-reader-reflection-checkbox {
  border-color: rgba(112, 188, 126, 0.78);
  background: rgba(74, 145, 88, 0.92);
}

body.theme-dark .sabbath-school-reader-reflection-note-input,
body.theme-dark .sabbath-school-reader-reflection-select {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(19, 16, 10, 0.92);
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-reflection-action.is-finished {
  border-color: rgba(112, 188, 126, 0.24);
  background: rgba(28, 58, 34, 0.78);
  color: #bfe7c7;
}

body.theme-dark .sabbath-school-reader-reflection-detail-card {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(28, 22, 11, 0.72);
}

body.theme-dark .sabbath-school-reader-reflection-detail-eyebrow {
  color: #f0c86f;
}

body.theme-dark .sabbath-school-reader-reflection-detail-meta,
body.theme-dark .sabbath-school-reader-reflection-history-date,
body.theme-dark .sabbath-school-reader-reflection-detail-empty {
  color: #cfbc96;
}

body.theme-dark .sabbath-school-reader-reflection-detail-toggle,
body.theme-dark .sabbath-school-reader-reflection-reminder-day,
body.theme-dark .sabbath-school-reader-reflection-reminder-toggle,
body.theme-dark .sabbath-school-reader-reflection-time-input {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(19, 16, 10, 0.92);
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-reflection-history-card {
  border-color: rgba(190, 154, 79, 0.18);
  background: rgba(37, 29, 14, 0.82);
}

body.theme-dark .sabbath-school-reader-reflection-history-card.is-active-week:not(.is-in_progress):not(.is-completed) {
  box-shadow: inset 0 0 0 1px rgba(214, 175, 84, 0.12);
}

body.theme-dark .sabbath-school-reader-reflection-history-card.is-quarter-overview:not(.is-in_progress):not(.is-completed) {
  border-color: rgba(168, 184, 150, 0.18);
  background: linear-gradient(180deg, rgba(38, 34, 24, 0.9), rgba(29, 27, 19, 0.86));
}

body.theme-dark .sabbath-school-reader-reflection-history-card.is-in_progress {
  border-color: rgba(214, 175, 84, 0.28);
  background: linear-gradient(180deg, rgba(74, 58, 20, 0.94), rgba(60, 47, 18, 0.9));
}

body.theme-dark .sabbath-school-reader-reflection-history-card.is-completed {
  border-color: rgba(112, 188, 126, 0.28);
  background: linear-gradient(180deg, rgba(33, 68, 40, 0.94), rgba(26, 57, 34, 0.9));
}

body.theme-dark .sabbath-school-reader-reflection-history-title {
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-reflection-reminder-day.is-active {
  border-color: rgba(112, 188, 126, 0.24);
  background: rgba(28, 58, 34, 0.78);
  color: #bfe7c7;
}

body.theme-dark .sabbath-school-launch-hero-icon {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 16px 28px rgba(3, 10, 19, 0.26);
}

body.theme-dark .sabbath-school-launch-hero-icon {
  border-color: rgba(190, 154, 79, 0.24);
  background:
    radial-gradient(circle at 82% 20%, rgba(242, 192, 85, 0.24), transparent 30%),
    linear-gradient(160deg, rgba(50, 39, 18, 0.96), rgba(32, 25, 11, 0.94));
}

body.theme-dark .school-hero-shadow {
  fill: rgba(0, 0, 0, 0.26);
}

body.theme-dark .school-hero-plate {
  fill: rgba(242, 192, 85, 0.18);
}

body.theme-dark .school-hero-ring {
  stroke: rgba(236, 191, 83, 0.42);
}

body.theme-dark .school-hero-card-back {
  fill: rgba(72, 58, 28, 0.92);
  stroke: rgba(216, 177, 92, 0.24);
}

body.theme-dark .school-hero-card-front {
  fill: rgba(92, 72, 34, 0.98);
  stroke: rgba(228, 186, 96, 0.28);
}

body.theme-dark .school-hero-bookmark,
body.theme-dark .school-hero-dot {
  fill: rgba(119, 168, 248, 0.96);
}

body.theme-dark .school-hero-pill,
body.theme-dark .school-hero-seal {
  fill: rgba(236, 191, 83, 0.94);
}

body.theme-dark .school-hero-seal {
  stroke: rgba(255, 244, 217, 0.42);
}

body.theme-dark .school-hero-line {
  stroke: rgba(245, 231, 195, 0.84);
}

body.theme-dark .sabbath-school-reader-font-scale-btn {
  border-color: rgba(190, 154, 79, 0.22);
  background: rgba(34, 27, 13, 0.72);
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-font-scale-value {
  border-color: rgba(214, 169, 78, 0.28);
  background: linear-gradient(135deg, rgba(104, 74, 13, 0.9), rgba(156, 113, 21, 0.82));
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-share-trigger.ghost-btn,
body.theme-dark .sabbath-school-reader-share-action.ghost-btn {
  border-color: rgba(190, 154, 79, 0.22);
  background: rgba(24, 19, 10, 0.86);
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-share-trigger.ghost-btn[aria-expanded="true"] {
  background: rgba(74, 55, 19, 0.96);
}

body.theme-dark .sabbath-school-reader-share-panel {
  border-color: rgba(190, 154, 79, 0.24);
  background: linear-gradient(180deg, rgba(34, 27, 13, 0.96), rgba(50, 37, 16, 0.94));
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.32);
}

body.theme-dark .sabbath-school-reader-share-panel-title {
  color: #eac97a;
}

body.theme-dark .sabbath-school-reader-share-help {
  color: #cfbc96;
}

body.theme-dark .home-sabbath-school-queue-card {
  background: linear-gradient(160deg, rgba(38, 28, 17, 0.96), rgba(64, 44, 20, 0.9));
  border-color: rgba(212, 164, 95, 0.3);
}

body.theme-dark .home-sabbath-school-queue-toggle .home-topic-request-head-icon {
  color: #efca92;
  background: rgba(177, 125, 49, 0.18);
  border-color: rgba(212, 164, 95, 0.24);
}

body.theme-dark .home-sabbath-school-queue-item {
  background: rgba(61, 45, 24, 0.78);
  border-color: rgba(212, 164, 95, 0.24);
}

body.theme-dark .home-sabbath-school-queue-context {
  color: #efcf9f;
}

body.theme-business .sabbath-school-launch-card {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}

body.theme-business #sabbathSchoolDemoCard {
  grid-column: span 1;
}

body.theme-business .sabbath-school-launch-btn {
  border-radius: 18px;
  border-color: rgba(16, 66, 83, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(243, 248, 249, 0.94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

body.theme-business .sabbath-school-launch-hero-icon {
  border-radius: 20px;
  background:
    linear-gradient(145deg, rgba(250, 253, 253, 0.98), rgba(223, 237, 237, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 28px rgba(12, 44, 55, 0.12);
}

body.theme-business .sabbath-school-demo-title {
  overflow-wrap: anywhere;
  hyphens: auto;
}

body.theme-business .sabbath-school-demo-help {
  color: #5a7481;
}

body.theme-business .sabbath-school-launch-btn {
  padding: 16px;
}

body.theme-business .sabbath-school-launch-hero-icon {
  justify-self: start;
  align-self: center;
}

body.theme-business .sabbath-school-launch-btn {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
}

body.theme-business .sabbath-school-launch-hero-icon {
  width: 58px;
  height: 58px;
  grid-column: 1;
  grid-row: 1 / span 2;
}

body.theme-business .sabbath-school-launch-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

body.theme-business .sabbath-school-launch-head {
  display: contents;
}

body.theme-business .sabbath-school-launch-title-wrap {
  min-width: 0;
}

body.theme-business .sabbath-school-demo-badge {
  justify-self: end;
}

body.theme-business .sabbath-school-launch-btn > .home-calendar-chevron {
  justify-self: end;
}

body.theme-business .sabbath-school-demo-badge {
  align-self: start;
}

body.theme-kids .home-sabbath-school-queue-card {
  border-color: rgba(220, 161, 70, 0.24);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.98), rgba(255, 247, 228, 0.94));
}

body.theme-kids .home-sabbath-school-queue-toggle .home-topic-request-head-icon {
  color: #a26a18;
  background: rgba(255, 196, 92, 0.2);
  border-color: rgba(220, 161, 70, 0.24);
}

body.theme-kids .home-sabbath-school-queue-item {
  background: rgba(255, 250, 238, 0.95);
  border-color: rgba(220, 161, 70, 0.22);
}

body.theme-kids .home-sabbath-school-queue-context {
  color: #875d1f;
}

body.theme-dark .sabbath-school-reader-intro-overlay {
  background: linear-gradient(180deg, rgba(6, 10, 17, 0.42), rgba(6, 10, 17, 0.82));
}

body.theme-dark .sabbath-school-reader-intro-panel {
  border-color: rgba(204, 170, 101, 0.22);
  background:
    radial-gradient(circle at 18% 0%, rgba(153, 116, 42, 0.32) 0%, rgba(153, 116, 42, 0) 30%),
    linear-gradient(180deg, rgba(16, 22, 34, 0.98), rgba(16, 22, 34, 0.96) 52%, rgba(12, 17, 28, 0.98) 100%);
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.52),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.theme-dark .sabbath-school-reader-intro-feature-card {
  border-color: rgba(189, 158, 95, 0.16);
  background:
    linear-gradient(180deg, rgba(22, 30, 44, 0.94), rgba(16, 22, 34, 0.9)),
    radial-gradient(circle at top right, rgba(226, 189, 94, 0.14), transparent 42%);
  box-shadow:
    0 18px 32px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.theme-dark .sabbath-school-reader-intro-feature-badge {
  color: #5b3909;
}

body.theme-dark .sabbath-school-reader-intro-section-eyebrow {
  color: #e7c67d;
}

body.theme-dark .sabbath-school-reader-intro-section-help {
  color: #d7c59d;
}

body.theme-dark .sabbath-school-reader-intro-feature-title {
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-intro-feature-body,
body.theme-dark .sabbath-school-reader-intro-option {
  color: #d8c79f;
}

body.theme-dark .sabbath-school-reader-intro-actions {
  border-top-color: rgba(189, 158, 95, 0.14);
  background: linear-gradient(180deg, rgba(14, 19, 30, 0.92), rgba(10, 15, 24, 0.98));
}

body.theme-dark .sabbath-school-reader-intro-option {
  border-color: rgba(189, 158, 95, 0.16);
  background: rgba(20, 27, 40, 0.82);
}

body.theme-dark .sabbath-school-reader-intro-option input {
  accent-color: #e8ba57;
}


body.theme-kids .sabbath-school-reader-intro-panel {
  border-radius: 38px;
}

body.theme-dark .sabbath-school-launch-card {
  border-color: rgba(169, 146, 98, 0.24);
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.34);
}

body.theme-dark .sabbath-school-launch-btn {
  background: linear-gradient(180deg, rgba(13, 18, 28, 0.78), rgba(13, 18, 28, 0.36));
}

body.theme-dark .sabbath-school-launch-card::before {
  background:
    radial-gradient(circle at 82% 34%, rgba(235, 188, 94, 0.18), rgba(235, 188, 94, 0) 58%),
    url("home-sabbath-school.webp");
}

body.theme-dark .sabbath-school-launch-btn::before {
  background:
    radial-gradient(circle at 84% 34%, rgba(235, 188, 94, 0.28), rgba(235, 188, 94, 0) 58%);
}

body.theme-dark .sabbath-school-launch-btn::after {
  background:
    linear-gradient(
      90deg,
      rgba(13, 18, 28, 0.98) 0%,
      rgba(13, 18, 28, 0.965) 22%,
      rgba(13, 18, 28, 0.9) 34%,
      rgba(13, 18, 28, 0.62) 46%,
      rgba(13, 18, 28, 0.28) 60%,
      rgba(13, 18, 28, 0.08) 100%
    ),
    radial-gradient(
      ellipse at 28% 50%,
      rgba(13, 18, 28, 0.97) 0%,
      rgba(13, 18, 28, 0.9) 16%,
      rgba(13, 18, 28, 0.64) 24%,
      rgba(13, 18, 28, 0.3) 36%,
      rgba(13, 18, 28, 0.1) 48%,
      rgba(13, 18, 28, 0) 62%
    );
}

body.theme-dark .sabbath-school-launch-copy {
  background: linear-gradient(
    90deg,
    rgba(18, 24, 36, 0.992) 0%,
    rgba(18, 24, 36, 0.96) 34%,
    rgba(18, 24, 36, 0.82) 48%,
    rgba(18, 24, 36, 0.34) 62%,
    rgba(18, 24, 36, 0.08) 100%
  );
}

body.theme-dark .sabbath-school-reader-head-row {
  border-color: rgba(190, 154, 79, 0.24);
  background: linear-gradient(180deg, rgba(18, 24, 36, 0.96), rgba(18, 24, 36, 0.86));
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
}

body.theme-dark .sabbath-school-reader-head-row::before {
  background:
    radial-gradient(circle at 84% 78%, rgba(235, 188, 94, 0.16), rgba(235, 188, 94, 0) 58%),
    url("home-sabbath-school.webp");
  background-size: auto, 252px auto;
  background-repeat: no-repeat;
  background-position: center, calc(100% + 18px) 30%;
}

body.theme-dark .sabbath-school-reader-head-row::after {
  background:
    linear-gradient(
      90deg,
      rgba(18, 24, 36, 0.998) 0%,
      rgba(18, 24, 36, 0.992) 14%,
      rgba(18, 24, 36, 0.95) 26%,
      rgba(18, 24, 36, 0.8) 38%,
      rgba(18, 24, 36, 0.5) 50%,
      rgba(18, 24, 36, 0.22) 62%,
      rgba(18, 24, 36, 0.05) 100%
    ),
    radial-gradient(
      ellipse at 30% 50%,
      rgba(18, 24, 36, 0.985) 0%,
      rgba(18, 24, 36, 0.94) 14%,
      rgba(18, 24, 36, 0.68) 22%,
      rgba(18, 24, 36, 0.32) 34%,
      rgba(18, 24, 36, 0.12) 46%,
      rgba(18, 24, 36, 0) 60%
    );
}

body.theme-dark .sabbath-school-reader-head-copy {
  background: linear-gradient(
    90deg,
    rgba(18, 24, 36, 0.994) 0%,
    rgba(18, 24, 36, 0.968) 32%,
    rgba(18, 24, 36, 0.84) 46%,
    rgba(18, 24, 36, 0.36) 60%,
    rgba(18, 24, 36, 0.1) 100%
  );
}

body.theme-dark .sabbath-school-reader-eyebrow,
body.theme-dark .sabbath-school-reader-toolbar-label {
  color: #eac97a;
}

body.theme-dark .sabbath-school-reader-title {
  color: #f7edd4;
}

body.theme-dark .sabbath-school-reader-status {
  color: #d3c4a4;
}

body.theme-dark .sabbath-school-reader-back-btn.ghost-btn {
  border-color: rgba(190, 154, 79, 0.22);
  background: rgba(24, 19, 10, 0.78);
  color: #f7edd4;
}

body.theme-dark .sabbath-school-launch-hero-icon,
body.theme-dark .sabbath-school-demo-badge,
body.theme-dark .sabbath-school-reflection-chip,
body.theme-dark .sabbath-school-reflection-cell-button,
body.theme-dark .sabbath-school-reflection-cell-indicator {
  background: rgba(15, 22, 34, 0.76);
  border-color: rgba(177, 155, 110, 0.18);
}

body.theme-dark .sabbath-school-demo-title,
body.theme-dark .sabbath-school-reflection-cell-date {
  color: #f4ead4;
}

body.theme-dark .sabbath-school-demo-help,
body.theme-dark .sabbath-school-demo-badge,
body.theme-dark .sabbath-school-reflection-chip,
body.theme-dark .sabbath-school-reflection-cell-token,
body.theme-dark .sabbath-school-launch-cta,
body.theme-dark .sabbath-school-reader-edu-progress-label {
  color: #d8c79f;
}

body.theme-dark .sabbath-school-launch-footer .home-calendar-chevron {
  border-top-color: #d8c79f;
  border-right-color: #d8c79f;
}

body.theme-kids .sabbath-school-launch-card {
  border-radius: 30px;
  overflow: hidden;
}
