/* Controles compartidos: formularios, filtros y accesos con superficies del tema. */
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form,.garden-menu-sesion){
    --garden-control-panel:var(--garden-panel,var(--panel,#fff));
    --garden-control-soft:var(--garden-soft,var(--panel2,#edf4ed));
    --garden-control-text:var(--garden-text,var(--texto,#20372a));
    --garden-control-muted:var(--garden-muted,var(--muted,#536c5b));
    --garden-control-border:var(--garden-line,var(--borde,#cddbcf));
}
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) :is(input:not([type]),input[type=text],input[type=search],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=time],input[type=datetime-local],select,textarea){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
    min-height:44px;
    padding:11px 13px;
    border:1px solid var(--garden-control-border);
    border-radius:10px;
    background-color:var(--garden-control-panel);
    color:var(--garden-control-text);
    font:inherit;
    font-size:14px;
    line-height:1.4;
    box-shadow:0 1px 2px #102c1b05;
    transition:border-color .16s ease,box-shadow .16s ease;
}
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) :is(input,textarea)::placeholder{
    color:var(--garden-control-muted);
    opacity:1;
}
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) select:not([multiple]){
    appearance:none;
    padding-right:38px;
    background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
    background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;
    background-size:5px 5px;
    background-repeat:no-repeat;
    cursor:pointer;
}
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) textarea{
    min-height:112px;
    resize:vertical;
}
:is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) :is(input,select,textarea):focus-visible{
    border-color:var(--primario,#0e8f51);
    outline:2px solid color-mix(in srgb,var(--primario,#0e8f51) 32%,transparent);
    outline-offset:2px;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--primario,#0e8f51) 10%,transparent);
}
:is(.admin-main,.formulario) input[type=file]{
    box-sizing:border-box;
    max-width:100%;
    min-width:0;
    min-height:44px;
    padding:7px;
    border:1px solid var(--garden-control-border);
    border-radius:10px;
    color:var(--garden-control-text);
    background:var(--garden-control-panel);
    font:inherit;
    font-size:13px;
}
:is(.admin-main,.formulario) input[type=file]::file-selector-button{
    margin-right:10px;
    padding:9px 12px;
    border:1px solid var(--garden-control-border);
    border-radius:7px;
    background:var(--garden-control-soft);
    color:var(--garden-control-text);
    font:inherit;
    font-weight:600;
    cursor:pointer;
}
:is(.admin-main,.formulario,.perfil-grid,.checkout-layout,.entrega-buscador,.garden-contact-form) .boton,
.admin-main .acciones-tabla :is(a,button),
.admin-main .filtros>button,
.admin-main .formulario>button,
.menu-perfil:not(.garden-guest-menu) .perfil-desplegable :is(a,button){
    box-sizing:border-box;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:11px 16px;
    border-radius:9px;
    font:inherit;
    font-size:14px;
    line-height:1.4;
    font-weight:650;
    text-align:center;
    text-decoration:none;
    cursor:pointer;
    touch-action:manipulation;
}
.admin-main .acciones-tabla :is(a,button){font-size:12px;padding-inline:12px;white-space:normal}
.admin-main .editor-bar :is(input:not([type=color]):not([type=range]):not([type=checkbox]):not([type=radio]),select){width:auto;max-width:180px;min-height:44px;padding:8px 10px;font-size:12px}
.auth-card .codigo-input{font-size:28px;line-height:1.3;padding:12px 10px;text-align:center}
.menu-perfil:not(.garden-guest-menu) .perfil-desplegable :is(a,button){
    width:100%;
    border:1px solid var(--garden-line,var(--borde,#cddbcf));
    background:var(--garden-soft,var(--panel2,#edf4ed));
    color:var(--garden-text,var(--texto,#20372a));
    justify-content:flex-start;
}
.menu-perfil:not(.garden-guest-menu) .perfil-desplegable{gap:8px;padding:12px}
.menu-perfil:not(.garden-guest-menu) .perfil-desplegable form{margin:0;width:100%}
.menu-perfil:not(.garden-guest-menu) .perfil-desplegable :is(a,button):hover{border-color:var(--primario);background:var(--garden-selected,var(--panel2))}
.admin-main .filtros{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.admin-main .filtros>label{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1 1 200px;font-size:12px}
.admin-main :is(.entrega-filtros,.gc-filters){
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto;
    align-items:end;
    gap:14px;
    padding:20px;
}
.admin-main :is(.entrega-filtros,.gc-filters)>label{
    display:flex;
    flex-direction:column;
    gap:8px;
    min-width:0;
    margin:0;
    font-size:12px;
    font-weight:600;
    line-height:1.5;
    color:var(--garden-control-muted);
}
.admin-main :is(.entrega-filtros,.gc-filters) .boton{
    min-width:96px;
    margin:0;
    padding:11px 16px;
    white-space:nowrap;
}
.admin-main :is(.entrega-filtros,.gc-filters) .boton.secundario{
    border:1px solid var(--garden-control-border);
    background:var(--garden-control-soft);
    color:var(--garden-control-text);
}
.admin-main :is(.entrega-filtros,.gc-filters) .boton.secundario:hover{border-color:var(--primario);background:var(--garden-seleccion,var(--garden-control-panel))}
.entrega-filtros .boton svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.entrega-estadisticas>a{border-radius:12px;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}
.entrega-estadisticas>a:hover,.entrega-estadisticas>a[aria-current=true]{
    border-color:var(--primario);
    background:color-mix(in srgb,var(--primario) 9%,var(--garden-control-panel,var(--panel)));
    box-shadow:0 2px 9px color-mix(in srgb,var(--primario) 9%,transparent);
}
.entrega-ir-pedido{margin-top:16px}
.admin-main .gc-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;text-decoration:none}
.admin-main .garden-popup-list-heading{flex-wrap:wrap}
.admin-main .garden-inline-filter{display:flex;gap:10px;align-items:flex-end;max-width:100%;flex-wrap:wrap}
.admin-main .garden-inline-filter .campo{min-width:170px;flex:1}
.admin-main .garden-inline-filter .campo label{font-size:12px;color:var(--garden-control-muted)}
.admin-main .garden-inline-filter .boton{white-space:nowrap}
.menu-lateral .garden-menu-sesion{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    padding-top:18px;
    padding-bottom:2px;
    margin-top:auto;
    border-top:1px solid var(--garden-control-border);
}
.menu-lateral .garden-menu-sesion form{display:flex;flex-direction:column;gap:10px;margin:0;width:100%;min-width:0}
.menu-lateral .garden-menu-sesion .garden-menu-action{
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:11px;
    width:100%;
    min-height:46px;
    padding:12px 14px;
    margin:0;
    border:1px solid var(--garden-control-border);
    border-radius:10px;
    background:var(--garden-control-soft);
    color:var(--garden-control-text);
    font:inherit;
    font-size:14px;
    font-weight:650;
    line-height:1.4;
    text-align:left;
    text-decoration:none;
    cursor:pointer;
}
.menu-lateral .garden-menu-sesion .garden-menu-action-primaria{
    border-color:var(--primario);
    background:var(--primario);
    color:var(--texto-sobre-primario,#fff);
}
.menu-lateral .garden-menu-sesion .garden-menu-action svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.menu-lateral .garden-menu-sesion .garden-menu-action:hover{border-color:var(--primario);box-shadow:0 0 0 1px color-mix(in srgb,var(--primario) 12%,transparent)}
.menu-lateral .garden-menu-sesion .garden-menu-action-primaria:hover{background:color-mix(in srgb,var(--primario) 88%,#000)}
.menu-lateral .garden-menu-sesion .garden-menu-action:focus-visible{outline:2px solid var(--primario);outline-offset:3px}
.whatsapp>.garden-whatsapp-svg{display:block;width:60%!important;height:60%!important;fill:currentColor;stroke:none;filter:none;shape-rendering:geometricPrecision;image-rendering:auto;overflow:visible}
.whatsapp>.garden-whatsapp-svg path{fill:currentColor;stroke:none}
@media(max-width:1000px){
    .admin-main :is(.entrega-filtros,.gc-filters){grid-template-columns:repeat(2,minmax(0,1fr))}
    .admin-main :is(.entrega-filtros,.gc-filters) .boton{width:100%}
}
@media(max-width:700px){
    .admin-main :is(.entrega-filtros,.gc-filters){grid-template-columns:1fr;padding:16px;gap:12px}
    .admin-main :is(.entrega-filtros,.gc-filters)>label{min-width:0;width:100%}
    .admin-main .garden-inline-filter{width:100%;align-items:stretch}
    .admin-main .garden-inline-filter .campo{min-width:0}
    .admin-main .garden-inline-filter .boton{align-self:flex-end}
    .menu-lateral .garden-menu-sesion .garden-menu-action{min-height:48px}
}
@media(prefers-reduced-motion:reduce){
    .entrega-estadisticas>a,
    :is(.admin-main,.formulario,.auth-card,.perfil-grid,.checkout-layout,.contenido-pagina,.entrega-buscador,.garden-contact-form) :is(input,select,textarea){transition:none}
}
