/* Native text-entry geometry. Names/constraints/value remain owned by each form. */
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind] {
    box-sizing: border-box;
    min-inline-size: 0;
    max-inline-size: 100%;
    min-block-size: var(--zds-field-height);
    padding-block: var(--zds-field-padding-block);
    padding-inline: var(--zds-field-padding-start, var(--zds-field-padding-inline)) var(--zds-field-padding-end, var(--zds-field-padding-inline));
    border: 1px solid var(--zds-border);
    border-radius: var(--zds-field-radius);
    background-color: var(--zds-field-surface);
    color: var(--zds-ink);
    font-family: var(--zds-font-family);
    font-size: calc(var(--zds-field-font-size) * var(--font-scale, 1));
    font-weight: 400;
    line-height: 1.45;
    outline: none;
    box-shadow: none;
}
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind="input"] { block-size: auto; }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind="textarea"] { min-block-size: var(--zds-textarea-min-height); }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind]::placeholder { color: var(--zds-muted); opacity: 1; }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind]:is(:focus,:focus-visible) { outline: none; box-shadow: none; }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind]:disabled { opacity: .55; cursor: default; }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind][readonly] { color: var(--zds-muted); }
:is([data-zevs-ui].ui-input, [data-zevs-ui] .ui-input).zds-field[data-zds-component="field"][data-zds-field-kind][aria-invalid="true"] { border-color: var(--zds-danger); }
/* Existing absolute search glyphs retain their reserved text space. */
[data-zevs-ui] :is(.company-search,.wiki-search) .zds-field { --zds-field-padding-start: 36px; }
[data-zevs-ui] .ui-input-action .zds-field { --zds-field-padding-end: 88px; }
/* The studio's former fixed 60px textarea must use the shared row-aware size. */
[data-zevs-ui] .fb #fb-description.zds-field { block-size: auto; min-block-size: var(--zds-textarea-min-height); line-height: 1.45; }

/* Field names remain programmatically associated after the field is filled. */
[data-zevs-ui] .zds-field-label {
    position:absolute; inline-size:1px; block-size:1px; padding:0; margin:-1px;
    overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0;
}
[data-zevs-ui] .zds-field-help {
    display:block; margin-block:var(--zds-field-help-gap) 0; margin-inline:0;
    padding:0; font-size:calc(13px * var(--font-scale,1)); line-height:1.5; color:var(--zds-muted);
}
[data-zevs-ui] .zds-field-help:is(.field-error,.ui-field-error,.errorlist,.fp-error) { color:var(--zds-danger); }
[data-zevs-ui] .zds-field-help > :is(ul,li,p):first-child { margin-block-start:0; }
[data-zevs-ui] .zds-field-wrap > .zds-field { margin-block-start:0; }
[data-zevs-ui] .fb-editor-grid>div>.fb-fields>label.zds-field-wrap:first-child { display:block; }
[data-zevs-ui] .fp-question[data-zds-text-question] > .zds-field-help { margin-block:var(--zds-field-help-gap) 0; }

[data-zevs-ui] .zds-field-help[hidden] { display:none; }

/* Remove legacy inline baseline/bottom spacing inside a single field group. */
[data-zevs-ui] .field > .zds-field,
[data-zevs-ui] .zds-field-wrap > .zds-field,
[data-zevs-ui] .fp-question[data-zds-text-question] > .zds-field { display:block; margin-block:0; }

[data-zevs-ui] .zds-field-help > :is(ul,li,p):last-child { margin-block-end:0; }
[data-zevs-ui] .zds-field-help.errorlist,
[data-zevs-ui] .zds-field-help > .errorlist { padding-inline:0; list-style:none; }

[data-zevs-ui] .ui-field > .zds-field { display:block; margin-block:0; }

[data-zevs-ui] .zds-field-group { row-gap:0; }

[data-zevs-ui] .zds-field-group > .zds-field-help { margin-block:var(--zds-field-help-gap) 0; margin-inline:0; }
