/* Explicit foreground/background pairs for all questionnaire states. */
html[data-theme="light"]{color-scheme:light;--form-selected:#e7f3cc;--form-selected-border:#587c21;--form-text:#182c20;--form-secondary:#4b6253;--form-focus:#426d20}
html[data-theme="light"] #joinOverlay .sheet{background:#f7faf7;color:var(--form-text);border-color:#cbd7ce}
html[data-theme="light"] #joinForm :is(.answer-card,.avatar-choice,.plan-mode-option,.wizard-more,.wizard-avatar){background:#fff;color:var(--form-text);border-color:#c5d2c8}
html[data-theme="light"] #joinForm .answer-card:hover{background:#f1f6e9;border-color:#728c4d}
html[data-theme="light"] #joinForm :is(.answer-card[aria-checked="true"],.answer-card[aria-pressed="true"],.avatar-choice.selected,.plan-mode-option:has(input:checked)){background:var(--form-selected);color:var(--form-text);border-color:var(--form-selected-border);box-shadow:inset 0 0 0 1px var(--form-selected-border)}
html[data-theme="light"] #joinForm :is(.answer-card strong,.avatar-choice strong,.plan-mode-option b){color:var(--form-text)}
html[data-theme="light"] #joinForm :is(.answer-card small,.avatar-choice small,.plan-mode-option small,.wizard-help,.wizard-more summary){color:var(--form-secondary)}
html[data-theme="light"] #joinForm .day-choice span{background:#fff;color:var(--form-secondary);border-color:#a9bcae;min-height:44px}
html[data-theme="light"] #joinForm .day-choice input:checked+span{background:var(--form-selected);color:var(--form-text);border-color:var(--form-selected-border);box-shadow:inset 0 0 0 1px var(--form-selected-border)}
html[data-theme="light"] #joinForm :is(.wizard-preview,.wizard-preview-item){background:#edf4e6;color:var(--form-text);border-color:#bdcdb4}
html[data-theme="light"] #joinForm .wizard-preview-item{background:#fff}
html[data-theme="light"] #joinForm :is(.wizard-preview-item strong,.wizard-step-label){color:#42631d}
html[data-theme="light"] #joinForm .wizard-preview-item span{color:var(--form-text)}
html[data-theme="light"] #joinForm .wizard-error{color:#a52820}
html[data-theme="light"] #joinForm .wizard-progress span{background:#c9d5ca}
html[data-theme="light"] #joinForm .wizard-progress span.is-active{background:#587c21}
html[data-theme="light"] #joinForm :is(.question-select,.question-textarea,input[type="text"],input[type="number"]){background:#fff;color:var(--form-text);border-color:#a9bcae}
html[data-theme="light"] #joinForm :is(input,textarea)::placeholder{color:#64756a;opacity:1}
html[data-theme="light"] #joinForm :is(input,textarea,select){accent-color:#587c21;color-scheme:light}
html[data-theme="light"] #joinForm .wizard-nav button{background:#fff;color:var(--form-text);border-color:#a9bcae}
html[data-theme="light"] #joinForm .wizard-nav button:last-child,html[data-theme="light"] #joinForm .finish{background:#ccef80;color:#17231b;border-color:#87a94a}
html[data-theme="light"] #joinForm :is(button,input,textarea,select):focus-visible{outline:3px solid var(--form-focus);outline-offset:2px}
html[data-theme="light"] #joinForm .day-choice input:focus-visible+span{outline:3px solid var(--form-focus);outline-offset:2px}
html[data-theme="light"] #joinForm :is(button,input,textarea,select):disabled{background:#e9ede9;color:#5d6b61;border-color:#cbd4cc;opacity:1;cursor:not-allowed}
html[data-theme="light"] #joinForm .avatar-choice.locked{background:#eff2ef;color:#5d6b61;border-color:#cbd4cc}
html[data-theme="light"] #joinForm .avatar-choice-mark{background:#e1eae1}
html[data-theme="light"] #joinOverlay :is(.sheet-sub,.small){color:var(--form-secondary)}
html[data-theme="light"] #joinOverlay :is(.close,.sheet-close){background:#e7eee7;color:var(--form-text);border-color:#bdcbbf}
html[data-theme="light"] #login .login-message{color:#9d3024}
@media(max-width:380px){#joinForm .wizard-preview-grid{grid-template-columns:1fr}#joinForm .wizard-nav{min-width:0}#joinForm .wizard-nav button{white-space:normal;overflow-wrap:anywhere}#joinForm .plan-days-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Older setup labels contain !important dark-theme colors. */
html[data-theme="light"] #joinForm label.small,html[data-theme="light"] #joinForm legend,html[data-theme="light"] #joinForm .feedback-label{color:var(--form-text)!important}
html[data-theme="light"] #joinOverlay .eyebrow{color:#42631d}
