/* Shared field contrast, kept separate from card and read-only summary styling. */
:is(input:not([type=checkbox],[type=radio],[type=hidden],[type=submit],[type=button],[type=range],[type=color]),select,textarea){
 border:2px solid #8d91aa;
 background:#fff;
 color:#1a2237;
 box-shadow:0 2px 4px #1a223708;
 caret-color:#5d43ed;
 transition:border-color .15s,box-shadow .15s,background-color .15s;
}
:is(input:not([type=checkbox],[type=radio],[type=hidden],[type=submit],[type=button],[type=range],[type=color]),select){min-height:56px}
input::placeholder,textarea::placeholder{color:#747a91;opacity:1}
.field>span{color:#27334d;font-size:14px;font-weight:650;line-height:1.5;margin-bottom:9px}
.field em{font-size:11px;font-weight:500;color:#626a80;background:#edecf5;border:1px solid #d9d9e6;border-radius:6px;padding:2px 7px;line-height:1.4}
.field:focus-within>span{color:#4f35d5}
@media(hover:hover){
 :is(input:not([type=checkbox],[type=radio],[type=hidden],[type=submit],[type=button],[type=range],[type=color]),select,textarea):not(:disabled):not([readonly]):not(:focus):hover{border-color:#665b92}
}
:is(input:not([type=checkbox],[type=radio],[type=hidden],[type=submit],[type=button],[type=range],[type=color]),select,textarea):focus{
 border-color:#5d43ed;
 background:#fff;
 outline:2px solid #5d43ed;
 outline-offset:2px;
 box-shadow:0 0 0 6px #5d43ed1c;
}
:is(input,select,textarea):disabled{background:#edeef4;color:#7e8395;border-color:#c4c7d3;box-shadow:none;cursor:not-allowed}
:is(input,textarea)[readonly]{background:#f0f2f7;border-color:#b3b8ca;border-style:dashed;box-shadow:none}
.field:has(.field-error) :is(input,select,textarea),:is(input,select,textarea)[aria-invalid=true]{border-color:#b83c38;background:#fffafa}
.field:has(.field-error) :is(input,select,textarea):focus,:is(input,select,textarea)[aria-invalid=true]:focus{outline-color:#b83c38;box-shadow:0 0 0 6px #b83c381a}
.field-error{font-size:12px;font-weight:550;color:#a73030}
input[type=checkbox],input[type=radio]{accent-color:#5d43ed;outline-offset:3px}
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:3px solid #5d43ed}
.chat-input{border:2px solid #8d91aa}
.chat-input:focus-within{border-color:#5d43ed;outline:2px solid #5d43ed;outline-offset:2px;box-shadow:0 0 0 6px #5d43ed1c}
.chat-input textarea,.chat-input textarea:focus{border:0;outline:0;box-shadow:none;background:transparent}
@media(forced-colors:active){
 :is(input,select,textarea):focus{outline:3px solid Highlight}
}
@media(prefers-reduced-motion:reduce){input,select,textarea{transition:none}}
.state-conditional-fields{display:grid;gap:18px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
/* Intake layout fixes: question cards, optional sections and small alignment issues. */
.guided-question>legend{float:left;margin:0 0 13px}
.guided-question>legend+*{clear:both;margin-top:0}
.guided-question:not(fieldset){display:grid;grid-template-columns:minmax(0,1fr)}
.guided-question:not(fieldset)>.guided-question-number,.guided-question:not(fieldset)>.guided-question-content{grid-area:1/1}
.guided-question:not(fieldset)>.guided-question-number{position:relative;z-index:1;align-self:start}
.guided-question:not(fieldset)>.guided-question-number:not(:empty)+.guided-question-content>.field>span,.guided-question:not(fieldset)>.guided-question-number:not(:empty)+.guided-question-content>.activity-answer:first-child>.field>span{padding-left:34px}
.guided-question>.guided-question-content>.field{margin:0}
.simple-form-section.guided-section>div>.guided-question:last-child{margin-bottom:0}
.simple-form-section>div>.helper:last-child{margin-bottom:18px}
.guided-question>legend em,.optional-fields>summary>span{padding:2px 7px;border:1px solid #d9d9e6;border-radius:6px;background:#edecf5;color:#626a80;font-size:11px;font-style:normal;font-weight:500;letter-spacing:0;line-height:1.4}
.input-suffix>span{top:50%;transform:translateY(-50%);line-height:1}
.phone-number-control{border-color:#8d91aa;box-shadow:0 2px 4px #1a223708}
.phone-number-control:focus-within{border-color:#5d43ed;outline:2px solid #5d43ed;outline-offset:2px;box-shadow:0 0 0 6px #5d43ed1c}
.phone-field.has-error .phone-number-control,.phone-field.has-error .phone-number-control:focus-within{border-color:#b83c38;outline-color:#b83c38}
.auth-method-label{margin:0 0 14px}
@media(min-width:761px){
 .intake-single.planning-flow .intake-main{margin-inline:auto}
 .planning-flow .flow-actions>.primary{margin-left:auto}
 .optional-fields>summary,.optional-fields>div{padding-inline:20px}
 .phone-number-control{min-height:56px}
 .phone-number-control input{min-height:52px}
}
@media(max-width:760px){
 .guided-question:not(fieldset)>.guided-question-number:not(:empty)+.guided-question-content>.field>span,.guided-question:not(fieldset)>.guided-question-number:not(:empty)+.guided-question-content>.activity-answer:first-child>.field>span{padding-left:35px}
 .simple-form-section.guided-section>div>.guided-question:last-child{margin-bottom:0}
}
