/* Progressive enhancement: original labels remain available without JavaScript. */
.cf-input-original-label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.cf-input-shell {
    position: relative !important;
    display: block !important;
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
    text-transform: none !important;
    letter-spacing: normal !important;
    font: inherit !important;
    color: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
}
.cf-input-shell > :is(input, textarea)[data-cf-compact-field] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    padding-left: 14px !important;
    line-height: 1.35 !important;
}
.cf-input-shell > :is(input, textarea)[data-cf-compact-field]::placeholder {
    color: var(--cf-input-ink, currentColor) !important;
    opacity: .75 !important;
    font-weight: 400 !important;
}
.cf-input-shell > input[data-cf-compact-field] { height: 52px !important; }
.cf-input-shell > textarea[data-cf-compact-field] { min-height: 100px !important; }
.cf-input-shell--single-line > textarea[data-cf-compact-field] { min-height: 52px !important; }
.cf-input-shell > .cf-input-caption {
    position: absolute !important;
    z-index: 1;
    top: 6px;
    left: 14px;
    right: 30px;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--cf-input-ink, currentColor) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
    opacity: 0;
}
.cf-input-shell:focus-within > .cf-input-caption,
.cf-input-shell:has(> :is(input, textarea):not(:placeholder-shown)) > .cf-input-caption { opacity: .8; }
.cf-input-shell:focus-within > :is(input, textarea)[data-cf-compact-field],
.cf-input-shell > :is(input, textarea)[data-cf-compact-field]:not(:placeholder-shown) {
    padding-top: 22px !important;
    padding-bottom: 6px !important;
}
.cf-input-shell:focus-within > :is(input, textarea)::placeholder { color: transparent !important; }
.cf-input-shell.um-field-area-password > .cf-input-caption { right: 48px; }
.cf-auth__form .cf-input-shell .um-toggle-password { top: 0 !important; }
/* Settings field captions no longer need a separate grid row. */
:is(.cfcc-field, .am-field, .kmumt-field):has(> .cf-input-shell) { gap: 0 !important; }
@media (max-width: 600px) {
    .cf-input-shell > :is(input, textarea)[data-cf-compact-field] { font-size: 16px !important; }
}

.am-plan-form > .am-field:has(> .cf-input-shell) { align-self: end; }
