/* Coach OS v3.30 • Session Planner contrast and interaction audit */
#sessions{
  --sp-text:#201a20;
  --sp-heading:#123f35;
  --sp-muted:#655a61;
  --sp-faint:#786c73;
  --sp-surface:#fffdf9;
  --sp-control:#ffffff;
  --sp-border:#d9cfd4;
  --sp-soft-pink:#fff1f6;
  --sp-pink-border:#efadc5;
  --sp-pink-text:#49373f;
  --sp-pink-heading:#c72f67;
}

/* Page hierarchy */
#sessions .v313c-hero-copy :is(h1,h2,h3){color:var(--sp-heading)!important}
#sessions .v313c-hero-copy p{color:#584d54!important}
#sessions .v313c-progress-step{color:var(--sp-text)!important}
#sessions .v313c-progress-step b{color:var(--sp-text)!important}
#sessions .v313c-progress-step span{color:var(--sp-muted)!important}
#sessions .v313c-planner-section{background:var(--sp-surface)!important;border-color:var(--sp-border)!important;color:var(--sp-text)!important}
#sessions .v313c-planner-section[open]{background:var(--sp-surface)!important}
#sessions .v313c-planner-section[open] summary{background:#fffaf7!important}
#sessions .v313c-planner-section[open] .v313c-planner-body{background:#fffdfb!important;border-top-color:var(--sp-border)!important}
#sessions .v313c-section-copy b{color:var(--sp-heading)!important;font-weight:850}
#sessions .v313c-section-copy span{color:var(--sp-muted)!important;font-size:8.5px}
#sessions .v313c-planner-section summary:hover{background:#fff7fa!important}
#sessions .v313c-planner-section summary:focus-visible{outline:3px solid rgba(240,79,135,.28);outline-offset:-3px}

/* Labels and instructional copy */
#sessions .v313c-planner-body label{color:#443a40!important;font-weight:800;font-size:9.5px}
#sessions .v313c-planner-body :is(.structured-select-note,.junior-plan-note,.cohort-help,.cohort-feasibility,.builder-counter,.cohort-linked-note){color:var(--sp-muted)!important;font-size:9px;line-height:1.52}
#sessions .small-muted{color:var(--sp-muted)!important}
#sessions .v313c-generate-bar p{color:var(--sp-muted)!important;font-size:9px;line-height:1.5}

/* Inputs, dropdowns and every interaction state */
#sessions .v313c-planner-body :is(input,select,textarea){
  background:var(--sp-control)!important;
  color:var(--sp-text)!important;
  -webkit-text-fill-color:var(--sp-text)!important;
  border:1px solid var(--sp-border)!important;
  color-scheme:light!important;
  opacity:1!important;
}
#sessions .v313c-planner-body select option{background:#fff!important;color:#201a20!important}
#sessions .v313c-planner-body :is(input,textarea)::placeholder{color:#746870!important;-webkit-text-fill-color:#746870!important;opacity:1!important}
#sessions .v313c-planner-body :is(input,select,textarea):hover{border-color:#b9aab2!important}
#sessions .v313c-planner-body :is(input,select,textarea):focus,
#sessions .v313c-planner-body :is(input,select,textarea):focus-visible{border-color:#e54079!important;box-shadow:0 0 0 3px rgba(240,79,135,.16)!important;outline:none!important}
#sessions .v313c-planner-body :is(input,select,textarea):disabled{background:#eee9ec!important;color:#62565e!important;-webkit-text-fill-color:#62565e!important;border-color:#d8cfd4!important;opacity:1!important;cursor:not-allowed}

/* The explanation cards shown in the screenshot */
#sessions .session-choice-description{
  min-height:38px!important;
  padding:9px 11px!important;
  background:#f7f2f4!important;
  border:1px solid #d9cfd4!important;
  border-left:3px solid #9f8d96!important;
  color:#51454c!important;
  font-size:9.5px!important;
  line-height:1.52!important;
}
#sessions .session-choice-description.has-value{
  background:var(--sp-soft-pink)!important;
  border-color:var(--sp-pink-border)!important;
  border-left-color:#f04f87!important;
  color:var(--sp-pink-text)!important;
}
#sessions .session-choice-description .choice-description-kicker{
  color:var(--sp-pink-heading)!important;
  font-size:8.5px!important;
  font-weight:950!important;
}
#sessions .session-choice-description .choice-description-placeholder{color:#62565e!important}

/* Supporting planner surfaces */
#sessions :is(.planner-support-card,.v313c-reference){color:var(--sp-text)!important}
#sessions :is(.planner-support-card,.v313c-reference) :is(h2,h3,h4,b,strong){color:var(--sp-heading)!important}
#sessions :is(.planner-support-card,.v313c-reference) :is(p,span,small,li){color:var(--sp-muted)!important}
#sessions .builder-prefill.show{background:#f2f9d9!important;border-color:#c6d878!important;color:#394419!important}
#sessions .builder-prefill.show b{color:#26330a!important}
#sessions .v313c-generate-bar .btn:focus-visible,#sessions button:focus-visible{outline:3px solid rgba(240,79,135,.32);outline-offset:2px}

/* True dark mode: dark surfaces with light text, rather than mixed light/dark inheritance. */
body[data-coach-theme="dark"] #sessions{
  --sp-text:#fff8f1;
  --sp-heading:#f4fff9;
  --sp-muted:#cfc2c9;
  --sp-faint:#b7a9b1;
  --sp-surface:#211c21;
  --sp-control:#2b242a;
  --sp-border:#574a52;
  --sp-soft-pink:#38252e;
  --sp-pink-border:#7d465c;
  --sp-pink-text:#f3e4ea;
  --sp-pink-heading:#ff8db5;
}
body[data-coach-theme="dark"] #sessions .v313c-hero{background:#211c21!important;border-color:#574a52!important}
body[data-coach-theme="dark"] #sessions .v313c-hero:after{background:linear-gradient(90deg,#211c21 0%,rgba(33,28,33,.98) 22%,rgba(33,28,33,.73) 58%,rgba(33,28,33,0) 100%)!important}
body[data-coach-theme="dark"] #sessions .v313c-hero-copy :is(h1,h2,h3){color:var(--sp-heading)!important}
body[data-coach-theme="dark"] #sessions .v313c-hero-copy p{color:var(--sp-muted)!important}
body[data-coach-theme="dark"] #sessions .v313c-progress-step{background:#251f25!important;border-color:var(--sp-border)!important}
body[data-coach-theme="dark"] #sessions .v313c-progress-step :is(b,span){color:var(--sp-text)!important}
body[data-coach-theme="dark"] #sessions .v313c-progress-step span{color:var(--sp-muted)!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-section,
body[data-coach-theme="dark"] #sessions .v313c-planner-section[open]{background:var(--sp-surface)!important;border-color:var(--sp-border)!important;color:var(--sp-text)!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-section summary,
body[data-coach-theme="dark"] #sessions .v313c-planner-section[open] summary{background:#251f25!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-section summary:hover{background:#30262d!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-section[open] .v313c-planner-body{background:#211c21!important;border-color:var(--sp-border)!important}
body[data-coach-theme="dark"] #sessions .v313c-section-copy b{color:var(--sp-heading)!important}
body[data-coach-theme="dark"] #sessions .v313c-section-copy span{color:var(--sp-muted)!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body label{color:#f0e6eb!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(.structured-select-note,.junior-plan-note,.cohort-help,.cohort-feasibility,.builder-counter,.cohort-linked-note),
body[data-coach-theme="dark"] #sessions .small-muted,
body[data-coach-theme="dark"] #sessions .v313c-generate-bar p{color:var(--sp-muted)!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,select,textarea){background:var(--sp-control)!important;color:var(--sp-text)!important;-webkit-text-fill-color:var(--sp-text)!important;border-color:var(--sp-border)!important;color-scheme:dark!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body select option{background:#2b242a!important;color:#fff8f1!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,textarea)::placeholder{color:#bfb2ba!important;-webkit-text-fill-color:#bfb2ba!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,select,textarea):hover{border-color:#887582!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,select,textarea):focus,
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,select,textarea):focus-visible{border-color:#ff77a7!important;box-shadow:0 0 0 3px rgba(240,79,135,.24)!important}
body[data-coach-theme="dark"] #sessions .v313c-planner-body :is(input,select,textarea):disabled{background:#332c32!important;color:#bfb2ba!important;-webkit-text-fill-color:#bfb2ba!important;border-color:#4d4249!important}
body[data-coach-theme="dark"] #sessions .session-choice-description{background:#2b252a!important;border-color:#5e5058!important;border-left-color:#9a8791!important;color:#ddd1d7!important}
body[data-coach-theme="dark"] #sessions .session-choice-description.has-value{background:var(--sp-soft-pink)!important;border-color:var(--sp-pink-border)!important;border-left-color:#ff699e!important;color:var(--sp-pink-text)!important}
body[data-coach-theme="dark"] #sessions .session-choice-description .choice-description-kicker{color:var(--sp-pink-heading)!important}
body[data-coach-theme="dark"] #sessions .session-choice-description .choice-description-placeholder{color:#c4b7be!important}
body[data-coach-theme="dark"] #sessions :is(.planner-support-card,.v313c-reference){background:#251f25!important;border-color:var(--sp-border)!important;color:var(--sp-text)!important}
body[data-coach-theme="dark"] #sessions :is(.planner-support-card,.v313c-reference) :is(h2,h3,h4,b,strong){color:var(--sp-heading)!important}
body[data-coach-theme="dark"] #sessions :is(.planner-support-card,.v313c-reference) :is(p,span,small,li){color:var(--sp-muted)!important}
body[data-coach-theme="dark"] #sessions .builder-prefill.show{background:#30391f!important;border-color:#647541!important;color:#e4f0c5!important}

@media(max-width:760px){
  #sessions .v313c-section-copy span{font-size:8.5px!important;line-height:1.4}
  #sessions .v313c-planner-body label{font-size:10px!important}
  #sessions .v313c-planner-body :is(.structured-select-note,.junior-plan-note,.cohort-help,.cohort-feasibility,.builder-counter,.cohort-linked-note){font-size:9.25px!important}
  #sessions .session-choice-description{font-size:9.75px!important;line-height:1.55!important;padding:10px 11px!important}
  #sessions .session-choice-description .choice-description-kicker{font-size:8.5px!important;margin-bottom:3px!important}
}
