/* Inputs, selects, choice controls, quantity, coupon */
.lmn-field{display:flex;flex-direction:column;gap:var(--space-2);width:100%}
.lmn-field__label{font:var(--text-label);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--ink-700)}
.lmn-field__req{color:var(--color-error)}
.lmn-field__hint{font:var(--text-caption);color:var(--color-text-muted)}
.lmn-field__error{font:var(--text-caption);color:var(--color-error);display:flex;align-items:center;gap:6px}
.lmn-input,.lmn-select__control{width:100%;min-height:48px;padding:0 var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font:var(--text-body);color:var(--color-text);transition:var(--transition-color),box-shadow var(--duration-fast) var(--ease-standard)}
.lmn-input::placeholder{color:var(--ink-400)}
.lmn-input:hover,.lmn-select__control:hover{border-color:var(--ink-500)}
.lmn-input:focus,.lmn-select__control:focus{outline:none;border-color:var(--ink-1000);box-shadow:0 0 0 3px rgba(11,11,12,.08)}
.lmn-input--error{border-color:var(--color-error)}
.lmn-input--error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px rgba(200,40,31,.12)}
.lmn-input[disabled],.lmn-select__control[disabled]{background:var(--ink-100);color:var(--ink-400);cursor:not-allowed}
.lmn-input--sm{min-height:40px;font-size:var(--fs-body-sm)}
.lmn-input-wrap{position:relative;display:flex;align-items:center;width:100%}
.lmn-input-wrap .lmn-input{padding-left:var(--space-10)}
.lmn-input-wrap__icon{position:absolute;left:var(--space-4);color:var(--ink-500);pointer-events:none}
.lmn-input-wrap__suffix{position:absolute;right:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}
.lmn-select{position:relative;display:block;width:100%}
.lmn-select__control{appearance:none;padding-right:var(--space-10);cursor:pointer;font:var(--fw-semibold) var(--fs-body-sm)/1 var(--font-body);display:flex;align-items:center}
.lmn-select__chev{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ink-600)}

.lmn-choice{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;font:var(--text-body-sm);color:var(--ink-800);min-height:var(--tap-min);align-items:center}
.lmn-choice input{position:absolute;opacity:0;width:1px;height:1px}
.lmn-choice__box{width:20px;height:20px;flex:none;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--white);display:flex;align-items:center;justify-content:center;transition:var(--transition-color)}
.lmn-choice__box--radio{border-radius:var(--radius-circle)}
.lmn-choice:hover .lmn-choice__box{border-color:var(--ink-700)}
.lmn-choice input:checked+.lmn-choice__box{background:var(--ink-1000);border-color:var(--ink-1000)}
.lmn-choice input:checked+.lmn-choice__box--radio{background:var(--white);border:6px solid var(--ink-1000)}
.lmn-choice input:focus-visible+.lmn-choice__box{box-shadow:var(--focus-ring)}
.lmn-choice input:disabled+.lmn-choice__box{background:var(--ink-100);border-color:var(--ink-200)}
.lmn-choice__tick{color:var(--white)}
.lmn-choice__count{margin-left:auto;color:var(--ink-400);font-size:var(--fs-caption)}

.lmn-qty{display:inline-flex;align-items:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);height:44px;overflow:hidden}
.lmn-qty--sm{height:36px}
.lmn-qty__btn{width:44px;height:100%;border:none;background:var(--white);color:var(--ink-1000);font:var(--fw-bold) 18px/1 var(--font-display);cursor:pointer;transition:var(--transition-color)}
.lmn-qty--sm .lmn-qty__btn{width:34px;font-size:15px}
.lmn-qty__btn:hover{background:var(--ink-100)}
.lmn-qty__btn:disabled{color:var(--ink-300);cursor:not-allowed;background:var(--white)}
.lmn-qty__value{min-width:44px;text-align:center;font:var(--fw-bold) var(--fs-body-sm)/1 var(--font-numeric);font-variant-numeric:tabular-nums;color:var(--ink-1000)}

.lmn-coupon{display:flex;gap:var(--space-2);width:100%}
.lmn-coupon .lmn-input{text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:var(--fw-semibold)}
.lmn-coupon__applied{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:1px dashed var(--color-success);background:var(--color-success-soft);border-radius:var(--radius-sm);font:var(--text-body-sm);color:var(--ink-900)}
.lmn-coupon__code{font:var(--fw-bold) var(--fs-body-sm)/1 var(--font-display);letter-spacing:var(--tracking-wide)}
