/* THERAPY SETTINGS FORM -- 18 Oct 2026 (Chris, CBT-I Stage 1)
   The one form per sleep therapy (js/therapySettings.js): CBT-I course pop-up + inside Sleep Planner's therapy pop-up.
   bsm3 vars only (css/brand.css). Day look first, then Sleep (night) look via [data-theme="sleep"]. */
@layer bsm-sleep-mode {
.bsm-tf-ov:not(#bsm-tf-w1) { position: fixed !important; inset: 0 !important; z-index: 2147483000 !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: var(--bsm3-space-md) !important; background: color-mix(in srgb, var(--bsm3-color-ink-navy-1E1B48-use-on-primary-text) 55%, var(--bsm3-transparent)) !important; }
.bsm-tf-box:not(#bsm-tf-w1) { width: 100% !important; max-width: 520px !important; max-height: 90vh !important; overflow-y: auto !important; padding: var(--bsm3-space-lg) !important; border-radius: var(--bsm3-radius-primary-cards) !important; background: var(--bsm3-color-white-FFFFFF-use-on-bg-day-general) !important; color: var(--bsm3-color-ink-navy-1E1B48-use-on-primary-text) !important; font-family: var(--bsm3-font-body) !important; }
.bsm-tf-head:not(#bsm-tf-w1) { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: var(--bsm3-space-sm) !important; }
.bsm-tf-title:not(#bsm-tf-w1) { margin: 0 !important; font-size: var(--bsm3-size-card-list-title-15px-use-on-h4) !important; font-weight: var(--bsm3-weight-bold-700-use-on-h1) !important; color: inherit !important; }
.bsm-tf-close:not(#bsm-tf-w1) { padding: var(--bsm3-space-xs) !important; border: 0 !important; background: var(--bsm3-transparent) !important; color: inherit !important; cursor: pointer !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; }
.bsm-tf-intro:not(#bsm-tf-w1) { margin: var(--bsm3-space-xs) 0 var(--bsm3-space-md) !important; font-size: var(--bsm3-text-small-12px-use-on-text) !important; }
.bsm-tf:not(#bsm-tf-w1) { display: flex !important; flex-direction: column !important; gap: var(--bsm3-space-md) !important; text-align: left !important; }
.bsm-tf-q:not(#bsm-tf-w1) { display: flex !important; flex-direction: column !important; gap: var(--bsm3-space-xs) !important; margin: 0 !important; padding: var(--bsm3-space-sm) var(--bsm3-space-md) !important; border: var(--bsm3-border-thin) solid var(--bsm3-color-divider-lavender-gray-C8C6E0-use-on-dividers) !important; border-radius: var(--bsm3-radius-primary-cards) !important; background: var(--bsm3-transparent) !important; }
.bsm-tf-ql:not(#bsm-tf-w1) { padding: 0 var(--bsm3-space-xs) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; font-weight: var(--bsm3-weight-bold-700-use-on-h1) !important; color: inherit !important; }
.bsm-tf-opt:not(#bsm-tf-w1) { display: flex !important; align-items: center !important; gap: var(--bsm3-space-sm) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; cursor: pointer !important; }
.bsm-tf-opt input:not(#bsm-tf-w1) { flex: 0 0 auto !important; accent-color: var(--bsm3-color-sleep-core-purple-7C3AED-use-on-sleep-pillar-accent-icon) !important; }
.bsm-tf-row:not(#bsm-tf-w1) { display: flex !important; align-items: center !important; gap: var(--bsm3-space-sm) !important; flex-wrap: wrap !important; }
.bsm-tf-rl:not(#bsm-tf-w1) { min-width: 80px !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; }
.bsm-tf-text:not(#bsm-tf-w1), .bsm-tf-time:not(#bsm-tf-w1), .bsm-tf-mins:not(#bsm-tf-w1) { flex: 1 1 auto !important; min-width: 0 !important; padding: var(--bsm3-space-xs) var(--bsm3-space-sm) !important; border: var(--bsm3-border-thin) solid var(--bsm3-color-divider-lavender-gray-C8C6E0-use-on-dividers) !important; border-radius: var(--bsm3-radius-primary-cards) !important; background: var(--bsm3-color-white-FFFFFF-use-on-bg-day-general) !important; color: var(--bsm3-color-ink-navy-1E1B48-use-on-primary-text) !important; font-family: var(--bsm3-font-body) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; }
.bsm-tf-mins:not(#bsm-tf-w1) { flex: 0 0 90px !important; }
.bsm-tf-x:not(#bsm-tf-w1), .bsm-tf-more:not(#bsm-tf-w1) { padding: var(--bsm3-space-xs) var(--bsm3-space-sm) !important; border: 0 !important; background: var(--bsm3-transparent) !important; color: var(--bsm3-color-sleep-core-purple-7C3AED-use-on-sleep-pillar-accent-icon) !important; font-family: var(--bsm3-font-body) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; font-weight: var(--bsm3-weight-bold-700-use-on-h1) !important; cursor: pointer !important; text-align: left !important; }
/* 20 Oct 2026 (Chris): how you use it -- two ticks, our suggestion, the "Are you sure?" warning, the time-of-day box */
.bsm-tf-warn:not(#bsm-tf-w1) { margin: 0 !important; padding: var(--bsm3-space-sm) var(--bsm3-space-md) !important; border: var(--bsm3-border-thin) solid var(--bsm3-color-status-high-orange-F2994A-use-on-status-high) !important; border-radius: var(--bsm3-radius-status-cards) !important; background: var(--bsm3-color-caution-cream-FEF3C7-use-on-status-warning-background) !important; color: var(--bsm3-color-ink-navy-1E1B48-use-on-primary-text) !important; font-size: var(--bsm3-text-small-12px-use-on-text) !important; line-height: 1.45 !important; }
.bsm-tf-pbox:not(#bsm-tf-w1) { display: flex !important; flex-direction: column !important; gap: var(--bsm3-space-xs) !important; }
:is(.bsm-tf-warn, .bsm-tf-pbox)[hidden]:not(#bsm-tf-w1) { display: none !important; }
.bsm-tf-note:not(#bsm-tf-w1), .bsm-tf-msg:not(#bsm-tf-w1) { margin: 0 !important; font-size: var(--bsm3-text-small-12px-use-on-text) !important; }
.bsm-tf-btns:not(#bsm-tf-w1) { display: flex !important; flex-wrap: wrap !important; gap: var(--bsm3-space-sm) !important; margin-top: var(--bsm3-space-md) !important; }
.bsm-tf-save:not(#bsm-tf-w1) { flex: 1 1 auto !important; padding: var(--bsm3-space-sm) var(--bsm3-space-md) !important; border: 0 !important; border-radius: var(--bsm3-radius-pills) !important; background: var(--bsm3-color-sleep-core-purple-7C3AED-use-on-sleep-pillar-accent-icon) !important; color: var(--bsm3-color-white-FFFFFF-use-on-bg-day-general) !important; font-family: var(--bsm3-font-body) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; font-weight: var(--bsm3-weight-bold-700-use-on-h1) !important; cursor: pointer !important; }
.bsm-tf-save:disabled:not(#bsm-tf-w1) { opacity: 0.6 !important; cursor: default !important; }
.bsm-tf-cancel:not(#bsm-tf-w1) { padding: var(--bsm3-space-sm) var(--bsm3-space-md) !important; border: var(--bsm3-border-thin) solid var(--bsm3-color-sleep-core-purple-7C3AED-use-on-sleep-pillar-accent-icon) !important; border-radius: var(--bsm3-radius-pills) !important; background: var(--bsm3-transparent) !important; color: var(--bsm3-color-sleep-core-purple-7C3AED-use-on-sleep-pillar-accent-icon) !important; font-family: var(--bsm3-font-body) !important; font-size: var(--bsm3-text-medium-14px-use-on-text) !important; cursor: pointer !important; }
/* Sleep Planner: the form sits inside its own pop-up, under a line */
.np-tf-wrap:not(#bsm-tf-w1) { margin: var(--bsm3-space-md) 0 !important; padding-top: var(--bsm3-space-md) !important; border-top: var(--bsm3-border-thin) solid var(--bsm3-color-divider-lavender-gray-C8C6E0-use-on-dividers) !important; }
.np-tf-wrap-h:not(#bsm-tf-w1) { margin: 0 0 var(--bsm3-space-sm) !important; font-size: var(--bsm3-size-card-list-title-15px-use-on-h4) !important; font-weight: var(--bsm3-weight-bold-700-use-on-h1) !important; }
/* Sleep (night) look */
[data-theme="sleep"] .bsm-tf-box:not(#bsm-tf-w1):not(#bsm-tf-w2) { background: var(--bsm3-color-black-000000-use-on-bg-sleep) !important; color: var(--bsm3-sleep-text-muted-sleep) !important; border: var(--bsm3-border-thin) solid var(--bsm3-sleep-border-sleep) !important; }
[data-theme="sleep"] :is(.bsm-tf-text, .bsm-tf-time, .bsm-tf-mins):not(#bsm-tf-w1):not(#bsm-tf-w2) { background: var(--bsm3-color-black-000000-use-on-bg-sleep) !important; color: var(--bsm3-sleep-text-muted-sleep) !important; border-color: var(--bsm3-sleep-border-sleep) !important; }
[data-theme="sleep"] .bsm-tf-q:not(#bsm-tf-w1):not(#bsm-tf-w2) { border-color: var(--bsm3-sleep-border-sleep) !important; }
[data-theme="sleep"] .bsm-tf-save:not(#bsm-tf-w1):not(#bsm-tf-w2) { background: var(--bsm3-sleep-border-sleep) !important; color: var(--bsm3-color-black-000000-use-on-bg-sleep) !important; }
[data-theme="sleep"] :is(.bsm-tf-cancel, .bsm-tf-x, .bsm-tf-more):not(#bsm-tf-w1):not(#bsm-tf-w2) { color: var(--bsm3-sleep-border-sleep) !important; border-color: var(--bsm3-sleep-border-sleep) !important; }
} /* end @layer bsm-sleep-mode (therapy settings form) */
