.text-input-wrapper{display:flex;flex-direction:column;width:100%;position:relative;margin-bottom:clamp(1.75rem,4vw,3rem)}.input-stack>.text-input-wrapper+.text-input-wrapper{margin-top:clamp(1.75rem,4vw,3rem)}.text-input-wrapper:first-child{margin-top:0}.text-input-wrapper:last-child,.text-input-wrapper:last-of-type{margin-bottom:0}.input-container{position:relative;width:100%}.text-label{display:block;font-family:var(--font-family-lato, "Lato", sans-serif);font-size:1.125rem;font-weight:700;color:var(--color-brand-blue-01);line-height:164%;margin-bottom:clamp(.25rem,1vw,.5rem);cursor:pointer;transition:color .2s ease}.text-label:hover{color:var(--color-brand-blue-medium, #57789F)}.text-input{width:100%;min-height:4rem;padding:1.25rem 1.5rem;border:2px solid var(--color-brand-blue-03);border-radius:.5rem;background-color:var(--color-white, #FDFDFD);font-family:var(--font-family-lato, "Lato", sans-serif);font-size:1.125rem;font-weight:500;color:var(--color-brand-blue-dark, #34547A);line-height:normal;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.text-input:hover:not(:focus):not(.error){border-color:var(--color-brand-blue-dark, #34547A);cursor:text}.text-input:focus{outline:none;border-color:var(--color-brand-blue-01);box-shadow:0 0 0 3px #34547a26}.text-input:not(:placeholder-shown){border-color:var(--color-brand-blue-03);color:var(--color-brand-blue-01)}.text-input.error{border-color:var(--banner-error, #E6492D);background-color:#fff}.text-input.error:focus{box-shadow:0 0 0 3px #e6492d26}.text-input:disabled{background-color:var(--color-bg-subtle, #F3F4F6);border-color:var(--color-border-gentle, #E9EEF2);color:var(--color-text-supportive, #6B7280);cursor:not-allowed;opacity:.6}.text-input::placeholder{color:var(--color-brand-blue-medium, #57789F);font-family:var(--font-family-lato);font-size:clamp(.875rem,1vw + .25rem,1rem);font-weight:400;line-height:normal;opacity:1;font-style:normal}.text-input:focus::placeholder{opacity:.5}textarea.text-input::placeholder{line-height:1.6;padding-top:.125rem}textarea.text-input{min-height:8rem;resize:vertical;padding:1rem 1.25rem;line-height:1.6;border:2px solid var(--color-brand-blue-03)}textarea.text-input:focus{outline:none;border-color:var(--color-brand-blue-01);box-shadow:0 0 0 3px #34547a26}textarea.text-input:not(:placeholder-shown),textarea.text-input.filled{border-color:var(--color-brand-blue-03);color:var(--color-brand-blue-01)}textarea.text-input.error{border-color:var(--banner-error, #E6492D);background-color:#fff}textarea.text-input.error:focus{box-shadow:0 0 0 3px #e6492d26}@media(max-width:768px){textarea.text-input{min-height:7rem;font-size:clamp(1rem,2.5vw,1.125rem)}}select.text-input{min-height:4rem;height:4rem;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2357789F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3rem;cursor:pointer}@media(max-width:768px){select.text-input{min-height:4rem;height:4rem}}.password-input-container{position:relative;width:100%}.icon-button,.password-toggle,.right-icon-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:.5rem;cursor:pointer;color:var(--color-brand-blue-medium, #57789F);display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;transition:color .2s ease,opacity .3s ease;will-change:color,opacity}.right-icon-button{width:var(--touch-elderly-sm);height:var(--touch-elderly-sm);border-radius:50%;background:transparent;border:clamp(2px,.2vw,3px) solid var(--color-error);padding:0;min-width:unset;min-height:unset;transition:all .2s ease;position:absolute;right:clamp(.75rem,2vw,1rem);top:50%;transform:translateY(-50%);cursor:pointer;box-shadow:0 .125rem .25rem #00000014;z-index:2}.right-icon-button svg,.right-icon-button .icon,.right-icon-button .ff-icon-custom,.right-icon-button img{display:none}.directory-location-input .right-icon-button svg,.directory-location-input .right-icon-button .icon,.directory-location-input .right-icon-button .ff-icon-custom,.directory-location-input .right-icon-button img{display:block;color:var(--color-brand-blue-dark)}.right-icon-button:before,.right-icon-button:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--color-error);transition:background-color .2s ease;border-radius:1px}.directory-location-input .right-icon-button:before,.directory-location-input .right-icon-button:after{display:none}.right-icon-button:before{width:clamp(2px,.3vw,3px);height:clamp(.75rem,1.5vw,1rem)}.right-icon-button:after{width:clamp(.75rem,1.5vw,1rem);height:clamp(2px,.3vw,3px)}.input-container.has-right-icon input:not(:placeholder-shown)~.right-icon-button{border-color:var(--color-success);background:var(--color-white)}.input-container.has-right-icon input:not(:placeholder-shown)~.right-icon-button:before,.input-container.has-right-icon input:not(:placeholder-shown)~.right-icon-button:after{background-color:var(--color-success)}.directory-location-input .right-icon-button{border-color:var(--color-brand-blue-dark);background:var(--color-background-light)}.directory-location-input--active .right-icon-button{border-color:var(--color-success);background:#4caf501a}.directory-location-input--active .right-icon-button svg{color:var(--color-success)}.right-icon-button:hover{transform:translateY(-50%) scale(1.08);box-shadow:0 .25rem .75rem #0000001f}.right-icon-button:active{transform:translateY(-50%) scale(.96);box-shadow:0 .125rem .375rem #0000001a}.icon-button svg,.icon-button .icon,.password-toggle svg,.right-icon-button svg,.right-icon-button .icon{transition:transform .4s ease,opacity .3s ease}.icon-button:hover,.password-toggle:hover,.right-icon-button:hover{color:var(--color-brand-blue-dark, #34547A);transform:translateY(-50%) scale(1.05)}.icon-button:focus-visible,.password-toggle:focus-visible,.right-icon-button:focus-visible{outline:2px solid var(--color-brand-blue-medium, #57789F);outline-offset:2px;border-radius:.25rem;transform:translateY(-50%)}.icon-button:disabled,.right-icon-button:disabled{opacity:.5;cursor:not-allowed}.has-right-icon input,.has-right-icon .text-input,.input-container.has-right-icon input{padding-right:clamp(4.25rem,6vw,4.75rem)}.helper-text,.input-helper-text,.error-helper,.error-message{font-family:var(--font-family-lato, "Lato", sans-serif);font-size:clamp(.875rem,1.5vw,1rem);line-height:1.4;margin-top:.5rem;margin-bottom:0}.helper-text,.input-helper-text{color:var(--color-text-supportive, #6B7280)}.error-helper,.error-message{color:var(--color-error, #A22607);background-color:#a226070d;border-radius:.25rem;padding:.5rem;display:flex;align-items:flex-start}.error-helper:before,.error-message:before{content:"⚠ ";margin-right:.5rem;flex-shrink:0;font-size:1rem}.error-message{padding:.75rem 1rem;border-radius:.5rem;font-weight:500;text-align:center;justify-content:center;margin:.5rem 0 1.5rem}@media(prefers-contrast:high){.text-input{border-width:3px}.text-input:focus{outline:3px solid currentColor;outline-offset:2px}.error-helper,.error-message{border:2px solid var(--color-error, #A22607)}}@media(prefers-reduced-motion:reduce){.text-input,.text-label,.password-toggle,.icon-button,.right-icon-button{transition:none}}.text-input:focus-visible{outline:3px solid var(--color-brand-blue-medium, #57789F);outline-offset:2px}@media(pointer:coarse){.icon-button,.password-toggle{min-width:56px;min-height:56px;padding:.75rem}textarea.text-input{min-height:9rem}}@media print{.text-input-wrapper{margin-bottom:1rem;page-break-inside:avoid}.text-input{border:1px solid #000;background:#fff}.password-toggle,.icon-button,.right-icon-button{display:none}}.auto-expand-container{position:relative}.auto-expand-single-line input{transition:all .2s ease}.expand-toggle-button{position:absolute;right:clamp(.75rem,2vw,1rem);top:clamp(.75rem,2vw,1rem);width:clamp(2.75rem,3vw,3rem);height:clamp(2.75rem,3vw,3rem);border:none;border-radius:50%;background-color:transparent;color:var(--color-error);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:2;padding:0}.expand-toggle-button:hover:not(:disabled){background-color:var(--color-neutral-light);transform:scale(1.1)}.expand-toggle-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.expand-toggle-button.expanded{color:var(--color-error);transform:rotate(180deg)}.expand-toggle-button:disabled{cursor:not-allowed;opacity:.5}.auto-expand-container textarea{transition:height .3s ease,border-color .2s ease,box-shadow .2s ease}.auto-expand-container textarea:focus{border-color:var(--color-brand-blue-01);box-shadow:0 0 0 3px #34547a26}@media(max-width:640px){.expand-toggle-button{width:2rem;height:2rem;right:.75rem}}.input-container.location-input{position:relative}.input-container.location-input .text-input{padding-right:3.5rem}.location-icon-wrapper{position:absolute;right:1rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2}.location-icon-wrapper>button,.location-icon-wrapper>span{pointer-events:auto}.location-icon-wrapper button{background:none;border:none;cursor:pointer;color:var(--color-brand-blue-dark, #34547A);transition:color .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;min-width:var(--touch-elderly-sm, 48px);min-height:var(--touch-elderly-sm, 48px);padding:.75rem;border-radius:.25rem}.location-icon-wrapper .location-gps-btn:hover{color:var(--color-brand-blue-medium, #57789F);transform:scale(1.05)}.location-icon-wrapper .location-clear-btn:hover{color:var(--color-error, #A22607);transform:scale(1.1)}.location-icon-wrapper button:active{transform:scale(.95)}.location-icon-wrapper button:focus-visible{outline:2px solid var(--color-brand-blue-medium, #57789F);outline-offset:2px}.text-input-group{display:flex;align-items:center;background:var(--color-white, #FDFDFD);border:2px solid var(--color-brand-blue-03);border-radius:.5rem;box-shadow:var(--shadow-card-sm);transition:border-color .2s ease,box-shadow .2s ease}.text-input-group:focus-within{border-color:var(--color-brand-blue-01);box-shadow:0 0 0 3px #34547a26}.text-input-group .text-input{border:none;border-radius:0;box-shadow:none;min-height:4rem;flex:1;transition:background-color .2s ease}.text-input-group .text-input:focus{box-shadow:none;background-color:#34547a0a;outline:none}.text-input-group .text-input:hover:not(:focus):not(:disabled){background-color:#34547a05}.text-input-group-divider{width:2px;height:var(--spacing-xxl);background-color:var(--color-brand-blue-03);flex-shrink:0}@media(max-width:48rem){.text-input-group{flex-direction:column;border:none;background:transparent;box-shadow:none;gap:var(--spacing-sm)}.text-input-group:focus-within{box-shadow:none}.text-input-group .text-input{border:2px solid var(--color-brand-blue-03);border-radius:.5rem;background:var(--color-white, #FDFDFD)}.text-input-group .text-input:focus{border-color:var(--color-brand-blue-01);box-shadow:0 0 0 3px #34547a26}.text-input-group-divider{display:none}}
