.aido-search-form-widget{
    --aido-search-display-mode:inline;
    --aido-search-button-action:dropdown;
    --aido-search-side-button-max:45%;
    --aido-search-animation-duration:260ms;
    position:relative;
    display:flex;
    width:100%;
    min-width:0;
}

.aido-search-launcher,
.aido-search-inline{
    display:none;
    min-width:0;
    max-width:100%;
}

.aido-search-form-widget.is-mode-button .aido-search-launcher,
.aido-search-form-widget.is-mode-inline .aido-search-inline,
.aido-search-form-widget.is-mode-field .aido-search-inline{
    display:block;
}

.aido-search-form-widget.is-mode-field .aido-search-form--inline .aido-search-submit{
    display:none!important;
}

.aido-search-form{
    --aido-search-form-direction:row;
    display:flex;
    flex-direction:var(--aido-search-form-direction);
    align-items:stretch;
    width:100%;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
    gap:0;
}

.aido-search-field-wrap{
    display:block;
    flex:1 1 0%;
    min-width:0;
    max-width:100%;
}

.aido-search-input{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    outline:none;
    line-height:1.2;
}

.aido-search-submit,
.aido-search-trigger,
.aido-search-fullscreen__close{
    appearance:none;
    -webkit-appearance:none;
    border:0;
    font:inherit;
    cursor:pointer;
    box-sizing:border-box;
}

.aido-search-submit,
.aido-search-trigger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 1 auto;
    min-width:0;
    min-height:0;
    max-width:100%;
    height:auto;
    padding:0;
    gap:0;
    white-space:nowrap;
    line-height:1;
}

.aido-search-form:not([style*="column"]) .aido-search-submit,
.aido-search-form--inline .aido-search-submit,
.aido-search-form--fullscreen .aido-search-submit{
    max-width:var(--aido-search-side-button-max,45%);
}

.aido-search-form--dropdown{
    max-width:100%;
}

.aido-search-form--dropdown[style*="column"] .aido-search-submit,
.aido-search-form--dropdown{
    /* La clase JS añade is-direction-column cuando corresponde. */
}

.aido-search-form.is-direction-column .aido-search-submit{
    width:100%;
    max-width:100%;
}

.aido-search-button__icon{
    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    line-height:1;
}

.aido-search-button__icon svg{
    display:block;
    width:1em;
    height:1em;
    fill:currentColor;
}

.aido-search-button__text{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.aido-search-trigger{
    max-width:100%;
}

/* Glow Alto Energy opcional para el modo Botón solo.
   No crea bordes ni encuadres y mantiene nítido el icono/texto. */
.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger .aido-search-button__icon,
.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger .aido-search-button__text{
    transition:filter .22s ease,text-shadow .22s ease,color .22s ease;
}

.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger:hover .aido-search-button__icon,
.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger:focus-visible .aido-search-button__icon{
    filter:
        drop-shadow(0 0 .6px rgba(255,255,255,1))
        drop-shadow(0 0 1.5px rgba(255,255,255,.90))
        drop-shadow(0 0 3.2px rgba(120,170,255,.72))
        drop-shadow(0 0 6px rgba(70,135,255,.38));
}

.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger:hover .aido-search-button__text,
.aido-search-form-widget.has-button-glow.is-mode-button .aido-search-trigger:focus-visible .aido-search-button__text{
    text-shadow:
        0 0 .6px rgba(255,255,255,1),
        0 0 1.5px rgba(255,255,255,.90),
        0 0 3.2px rgba(120,170,255,.72),
        0 0 6px rgba(70,135,255,.38);
}

.aido-search-dropdown{
    --aido-search-dropdown-width:420px;
    position:absolute;
    z-index:9998;
    top:calc(100% + 8px);
    width:min(var(--aido-search-dropdown-width),calc(100vw - 24px));
    max-width:calc(100vw - 24px);
    box-sizing:border-box;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:
        opacity var(--aido-search-animation-duration) ease,
        transform var(--aido-search-animation-duration) cubic-bezier(.22,.61,.36,1),
        visibility 0s linear var(--aido-search-animation-duration);
}


.aido-search-dropdown-align-left .aido-search-dropdown{left:0;right:auto;}
.aido-search-dropdown-align-right .aido-search-dropdown{right:0;left:auto;}
.aido-search-dropdown-align-center .aido-search-dropdown{left:50%;right:auto;}

.aido-search-dropdown-animation-slide .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),-8px);}
.aido-search-dropdown-animation-fade .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),0);}
.aido-search-dropdown-animation-scale .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),0) scale(.96);transform-origin:top center;}
.aido-search-dropdown-align-center.aido-search-dropdown-animation-slide .aido-search-dropdown{transform:translate(calc(-50% + var(--aido-search-dropdown-shift-x,0px)),-8px);}
.aido-search-dropdown-align-center.aido-search-dropdown-animation-fade .aido-search-dropdown{transform:translate(calc(-50% + var(--aido-search-dropdown-shift-x,0px)),0);}
.aido-search-dropdown-align-center.aido-search-dropdown-animation-scale .aido-search-dropdown{transform:translate(calc(-50% + var(--aido-search-dropdown-shift-x,0px)),0) scale(.96);}

.aido-search-form-widget.is-dropdown-open .aido-search-dropdown{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
}
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-animation-slide .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),0);}
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-animation-fade .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),0);}
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-animation-scale .aido-search-dropdown{transform:translate(var(--aido-search-dropdown-shift-x,0px),0) scale(1);}
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-align-center.aido-search-dropdown-animation-slide .aido-search-dropdown,
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-align-center.aido-search-dropdown-animation-fade .aido-search-dropdown,
.aido-search-form-widget.is-dropdown-open.aido-search-dropdown-align-center.aido-search-dropdown-animation-scale .aido-search-dropdown{
    transform:translate(calc(-50% + var(--aido-search-dropdown-shift-x,0px)),0) scale(1);
}

.aido-search-fullscreen{
    position:fixed;
    z-index:99999;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    padding:24px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:
        opacity var(--aido-search-animation-duration) ease,
        visibility 0s linear var(--aido-search-animation-duration);
}


.aido-search-form-widget.is-fullscreen-open .aido-search-fullscreen{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
}

.aido-search-fullscreen__content{
    --aido-search-fullscreen-width:760px;
    position:relative;
    width:min(var(--aido-search-fullscreen-width),100%);
    max-width:100%;
    box-sizing:border-box;
    transform:translateY(10px) scale(.985);
    transition:transform var(--aido-search-animation-duration) cubic-bezier(.22,.61,.36,1);
}

.aido-search-form-widget.is-fullscreen-open .aido-search-fullscreen__content{
    transform:translateY(0) scale(1);
}

.aido-search-fullscreen__close{
    position:absolute;
    right:0;
    bottom:calc(100% + 18px);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    padding:0;
    background:transparent;
    color:inherit;
}

.aido-search-fullscreen__close svg{
    display:block;
    width:1em;
    height:1em;
    fill:currentColor;
}

.aido-search-sr-only{
    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;
    white-space:nowrap!important;
    border:0!important;
}

body.aido-search-overlay-open{
    overflow:hidden!important;
}

@media (prefers-reduced-motion:reduce){
    .aido-search-dropdown,
    .aido-search-fullscreen,
    .aido-search-fullscreen__content{
        transition:none!important;
    }
}

/* 2.9.2: estados interactivos robustos. */
.aido-search-dropdown[hidden],
.aido-search-fullscreen[hidden]{
    display:none!important;
}

.aido-search-fullscreen-portal{
    position:static!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
}

.aido-search-fullscreen-portal.is-fullscreen-open .aido-search-fullscreen{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
}

.aido-search-fullscreen-portal.is-fullscreen-open .aido-search-fullscreen__content{
    transform:translateY(0) scale(1);
}
