.aip-forms-box { position:relative; background:#FFFFFF; border:solid 1px #FFFFFF; box-shadow:2px 2px 5px rgba(168,168,168,0.34); border-radius:10px; }
.aip-forms-box.pill { border-radius:100px; }

.aip-forms-floating-label { position:absolute; left:22px; top:50%; transform:translateY(-50%); font-size:14px; line-height:16px; color:#808080; transition:all 0.12s; }

/* Forms > Input Text */
.aip-forms-input { position:relative; display:flex; flex-direction:row; column-gap:5px; padding:12px 18px; }
.aip-forms-input:hover { cursor:text; }
.aip-forms-input:focus-within { border:solid 1px var(--color-accent); }
.aip-forms-input-field-cell { flex-grow:1; }
.aip-forms-input-field { width:100%; font-family:Montserrat; font-size:16px; line-height:18px; font-weight:700; margin:0; padding:0; background:transparent; border:none; outline:none; }
.aip-forms-input.with-label { padding:30px 22px 12px 22px; }
.aip-forms-input.with-label:focus-within .aip-forms-floating-label { top:9px; transform:translateY(0); }
.aip-forms-input.with-label:has(input:placeholder-shown):not(:focus-within) .aip-forms-floating-label { top:50%; transform:translateY(-50%); }
.aip-forms-input.with-label:has(input:not(:placeholder-shown)) .aip-forms-floating-label { top:9px; transform:translateY(0); }

/* Forms > Buttons */
.aip-forms-button { position:relative; display:flex; flex-direction:row; align-items:center; justify-content:center; column-gap:5px; background:green; box-shadow:2px 2px 5px rgba(128,128,128,0.50); border:0; border-radius:100px; outline:0; font-family:Montserrat; font-size:18px; line-height:24px; font-weight:700; color:#FFFFFF; padding:12px 30px; margin:0; }
.aip-forms-button:hover { cursor:pointer; }