.labeled-field-group {
    width: 100%;
}

.labeled-field {
    display: flex;
    width: 100%;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px dashed #eee;
}

.labeled-field__label{
    font-size: 14px !important;
    font-weight: 600;
    color: var(--text);
    letter-spacing: 0.2px;
    width: 250px;
    margin: 0 !important;
}

.labeled-field__input-group--vertical {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 6px;
}

.labeled-field__input-group--horizontal {
    display: flex;
    gap: 6px;
}

.labeled-field__input-wrap{
    width: 100%;
    background: var(--card);
    border: 1px solid var(--stroke);
    border-radius: var(--radius-md);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.labeled-field__input{
    width: 100%;
    border: 0;
    border-radius: var(--radius-md);
    outline: none;
    background: transparent;

    padding: 12px 14px;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.25;
    color: var(--text);

    /* nice on macOS/iOS */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.labeled-field select {
    cursor: pointer;
    background-image: url('../../assets/img/down-arrow_50x31.png');
    background-repeat: no-repeat;
    background-position: right 10px center; /* Position the arrow (e.g., 10px from the right, centered vertically) */
    background-size: 16px 16px;
}

.labeled-field__input::placeholder{
    color: var(--placeholder-text);
}

.labeled-field__input-wrap:hover{
    border-color: var(--stroke-hover);
}

/* Focus style: use :focus-within so wrapper gets the ring */
.labeled-field__input-wrap:focus-within{
    border-color: var(--focus-stroke);
    box-shadow: 0 0 0 4px var(--focus-stroke-outer);
}

/* Disabled */
.labeled-field__input:disabled{
    cursor: not-allowed;
    color: rgba(31, 41, 55, 0.55);
}
.labeled-field__input:disabled::placeholder{
    color: rgba(107, 114, 128, 0.45);
}
.labeled-field__input:disabled + * { pointer-events: none; }
.labeled-field.is-disabled .labeled-field__input-wrap{
    background: #f7f8fa;
    border-color: #e3e7ee;
}

/* Error state (toggle by adding .is-error on .cookn-field) */
.labeled-field.is-error .labeled-field__input-wrap{
    border-color: rgba(180, 35, 24, 0.55);
    box-shadow: 0 0 0 4px var(--danger-soft);
}

.labeled-field.is-error .labeled-field__input-wrap:focus-within{
    border-color: var(--danger);
    box-shadow: 0 0 0 4px var(--danger-soft);
}

.field-error {
    border-color: var(--danger);
}

@media (max-width: 720px) {
    .labeled-field {
        flex-direction: column;
    }
}