/* WSL intake form. Uses theme.json color/spacing variables, so it follows the brand system. */
.wsl-form{display:grid;gap:1.25rem}
.wsl-field{display:grid;gap:.4rem}
.wsl-field label,.wsl-field legend{font-weight:600}
.wsl-req{color:var(--wp--preset--color--orange)}
.wsl-field fieldset{border:1px solid rgba(185,178,214,.3);border-radius:10px;padding:1rem 1.1rem;margin:0}
.wsl-field legend{padding:0 .4rem}
.wsl-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem 1rem}
.wsl-check{display:flex;gap:.6rem;align-items:center;font-weight:400!important;cursor:pointer}
.wsl-check input{width:1.25rem;height:1.25rem;accent-color:var(--wp--preset--color--teal);flex:none}
.wsl-field select{appearance:auto}
.wsl-field.has-error input,.wsl-field.has-error textarea,.wsl-field.has-error select,.wsl-field.has-error fieldset{border-color:#ff7a7a}
.wsl-field__err{color:#ffb0b0;margin:0;font-size:.9rem}
.wsl-form-notice{border-radius:12px;padding:1rem 1.25rem;border:1px solid}
.wsl-form-notice h3{margin:0 0 .25rem}
.wsl-form-notice--ok{border-color:var(--wp--preset--color--teal);background:rgba(0,229,204,.08)}
.wsl-form-notice--err{border-color:#ff7a7a;background:rgba(255,122,122,.08)}
.wsl-form-notice--err ul{margin:.5rem 0 0 1.1rem}
.wsl-form-notice--err a{color:#ffd0d0}
.wsl-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.wsl-form__fine{color:var(--wp--preset--color--muted);font-size:.875rem;margin:0}
.wsl-form button.wp-block-button__link{cursor:pointer;border:0}
