/* Búsqueda contextual y panel de filtros, adaptados de la experiencia ZonaTronik. */
.zti-catalog-search { display:flex; align-items:center; gap:12px; min-width:0; margin:16px 0 12px; padding-left:18px; overflow:hidden; border:1px solid #e4e4df; border-radius:16px; background:#fff; box-shadow:0 6px 18px #00000006; }
.zti-catalog-search>.zti-icon { width:19px; height:19px; color:#777; }
body.zti-experience .zti-catalog-search input[type=search] { flex:1; min-width:0; width:100%; height:54px; margin:0; padding:10px 0; border:0; border-radius:0; background:transparent; box-shadow:none; font:inherit; font-size:16px; color:#222; }
.zti-catalog-search:focus-within { outline:2px solid #b49e00; outline-offset:2px; }
body.zti-experience .zti-catalog-search input:focus-visible { outline:none!important; }
body.zti-experience .zti-catalog-search button { display:flex; align-items:center; justify-content:center; gap:8px; align-self:stretch; min-width:100px; min-height:54px; margin:0; padding:12px 18px; border:0; border-left:1px solid #dac000; border-radius:0; background:var(--zti-yellow); color:#111; font-weight:800; }
body.zti-experience .zti-filter-trigger { display:inline-flex; align-items:center; justify-content:center; gap:8px; flex-shrink:0; min-height:44px; padding:10px 18px; border:1px solid #c5ac00; border-radius:24px; background:var(--zti-yellow); color:#181818; font-size:13px; font-weight:850; line-height:1.2; }
.zti-filter-trigger>.zti-icon { width:17px; height:17px; }
.zti-filter-trigger>b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#111; color:#ffe000; font-size:11px; }
.zti-catalog-tools.is-dialog-ready { flex-wrap:wrap; }
.zti-catalog-tools.is-dialog-ready .zt-shop-loopbar { flex-basis:600px; }
body.zti-experience .zti-filter-dialog { inset:16px 16px 16px auto; width:min(460px,calc(100% - 32px)); max-width:none; max-height:calc(100dvh - 32px); margin:0; padding:26px; border:1px solid #e4dfc3; border-top:4px solid var(--zti-yellow); border-radius:22px; background:#fff; box-shadow:0 24px 80px #0004; }
.zti-filter-dialog .zti-dialog-head { align-items:flex-start; }
.zti-filter-dialog .zti-dialog-head h2 { font-size:28px; }
.zti-filter-dialog>p { color:#65655e; font-size:13px; line-height:1.6; }
.zti-filter-dialog .zti-catalog-filter-form { display:flex; flex-direction:column; align-items:stretch; gap:22px; margin:24px 0 16px; padding:0; border:0; background:none; }
.zti-filter-dialog .zti-catalog-filter-form fieldset { flex:none; max-width:none; }
.zti-filter-dialog .zti-catalog-filter-form legend { margin-bottom:12px; font-size:14px; }
.zti-filter-dialog .zti-filter-prices { gap:12px; }
.zti-filter-dialog .zti-filter-prices label { margin:0; font-size:12px; }
.zti-filter-dialog .zti-filter-prices input { margin-top:7px; border-color:#c9c9c3; min-height:48px; padding:12px; }
.zti-filter-dialog .zti-filter-stock { display:flex; align-items:center; gap:12px; padding:16px; margin:0; border:1px solid #e5e5df; border-radius:14px; background:#fafaf8; }
.zti-filter-dialog .zti-filter-stock input { width:22px; height:22px; min-height:22px; margin:0; padding:0; accent-color:#111; }
.zti-filter-dialog .zti-filter-stock small { max-width:none; margin-top:4px; font-size:12px; }
.zti-filter-dialog .zti-catalog-filter-form .zti-button { width:100%; min-height:50px; margin:0; font-size:14px; }
.zti-filter-dialog .zti-filter-currency { padding:14px; border-radius:12px; background:#fffbe4; color:#615724; font-size:12px; }
.zti-filter-dialog .zti-text-link { white-space:normal; text-align:left; }
@media(min-width:1200px) {
    .zti-catalog-tools.is-dialog-ready { flex-wrap:nowrap; }
    .zti-catalog-tools.is-dialog-ready:has(.zti-filter-chips) { flex-wrap:wrap; }
}
@media(max-width:767px) {
    .zti-catalog-search { padding-left:13px; gap:9px; border-radius:14px; }
    body.zti-experience .zti-catalog-search button { min-width:54px; padding:12px; }
    .zti-catalog-search button span { display:none; }
    .zti-catalog-tools.is-dialog-ready { grid-template-columns:minmax(0,1fr) auto; }
    .zti-catalog-tools.is-dialog-ready .zti-filter-trigger { grid-column:1; justify-self:start; padding:10px 16px; }
    .zt-shop-archive .zti-catalog-tools.is-dialog-ready .woocommerce-result-count { grid-column:2; grid-row:1; text-align:right; max-width:160px; }
    body.zti-experience .zti-filter-dialog { inset:auto 0 0; width:100%; max-height:calc(100dvh - 16px); margin:0; padding:22px 20px calc(22px + env(safe-area-inset-bottom)); border-radius:22px 22px 0 0; }
    .zti-filter-dialog .zti-dialog-head h2 { font-size:25px; }
}
@media(max-width:359px) { body.zti-experience .zti-filter-dialog { padding-inline:14px; } .zti-filter-dialog .zti-filter-prices { gap:8px; } }
@media(max-height:500px) { body.zti-experience .zti-filter-dialog { max-height:calc(100dvh - 12px); } .zti-filter-dialog .zti-catalog-filter-form { gap:14px; margin-top:14px; } }
