:root{--ab-bg:#fbf8f3;--ab-card:#fff;--ab-ink:#17201d;--ab-muted:#66716d;--ab-line:rgba(23,32,29,.10);--ab-green:#1f5e50;--ab-soft:#f3eee7;--ab-orange:#ef7d32}
*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden;margin:0;background:var(--ab-bg);color:var(--ab-ink);font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{min-height:100vh}.ab-app{max-width:760px;margin:0 auto;padding:0 14px calc(118px + env(safe-area-inset-bottom))}.ab-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;min-height:70px;padding:10px 0;background:color-mix(in srgb,var(--ab-bg) 90%,transparent);backdrop-filter:blur(18px)}.ab-icon-btn{width:42px;height:42px;border:0;border-radius:14px;background:#fff;display:grid;place-items:center;color:var(--ab-ink);box-shadow:0 5px 18px rgba(22,31,28,.07);text-decoration:none}.ab-icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ab-brand{flex:1;display:flex;align-items:center;gap:9px;min-width:0}.ab-brand img{width:38px;height:38px;object-fit:contain}.ab-brand strong{display:block;font-family:"Protest Strike",Manrope,sans-serif;font-size:18px;letter-spacing:.02em}.ab-brand small{display:flex;align-items:center;gap:5px;color:var(--ab-muted);font-size:11px}.ab-brand i{width:7px;height:7px;border-radius:50%;background:#39a86b}.ab-main{padding:14px 0 40px}.ab-chat{display:flex;flex-direction:column;gap:12px}.ab-message{opacity:0;transform:translateY(8px);transition:.3s ease;display:flex;gap:9px;align-items:flex-end}.ab-message.is-visible{opacity:1;transform:none}.ab-message-bot>div{max-width:min(88%,560px);padding:13px 15px;border:1px solid var(--ab-line);border-radius:18px 18px 18px 6px;background:#fff}.ab-message-bot small{display:block;margin-bottom:4px;color:var(--ab-green);font-size:9px;font-weight:800;letter-spacing:.09em}.ab-message p{margin:0;font-size:15px;line-height:1.45;font-weight:650}.ab-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--ab-green);color:white;font-size:13px}.ab-message-user{justify-content:flex-end}.ab-message-user>div{max-width:80%;padding:11px 14px;border-radius:18px 18px 6px 18px;background:var(--ab-green);color:#fff}.ab-quick{margin-top:16px}.ab-choice-block{padding:4px 0}.ab-date-choices,.ab-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ab-date-choice{opacity:0;transform:translateY(10px);transition:.3s ease}.ab-date-choice.is-visible{opacity:1;transform:none}.ab-choice{min-width:0;border:1px solid var(--ab-line);border-radius:18px;background:#fff;padding:15px;text-align:left;color:var(--ab-ink);box-shadow:0 7px 22px rgba(22,31,28,.05)}.ab-choice:active{transform:scale(.985)}.ab-choice span{display:block;font-size:24px;margin-bottom:8px}.ab-choice strong{display:block;font-size:15px;line-height:1.2}.ab-choice small{display:block;margin-top:4px;color:var(--ab-muted);font-size:11px;line-height:1.35}.ab-choice.is-disabled{opacity:.48}.ab-calendar{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:9px;padding:10px;border:1px solid var(--ab-line);border-radius:18px;background:#fff}.ab-calendar input{min-width:0;border:0;background:var(--ab-soft);padding:13px;border-radius:12px;font:inherit}.ab-calendar button{border:0;border-radius:12px;padding:0 16px;background:var(--ab-green);color:#fff;font-weight:800}.ab-results{margin-top:24px}.ab-results-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:11px}.ab-results-head small{color:var(--ab-green);font-size:9px;font-weight:900;letter-spacing:.1em}.ab-results-head h1{margin:2px 0 0;font-size:24px;line-height:1.1}.ab-results-head p{margin:4px 0 0;color:var(--ab-muted);font-size:11px}.ab-results-head button{border:0;border-radius:999px;background:#fff;padding:9px 12px;font-weight:800;color:var(--ab-green)}.ab-filter-row{display:flex;gap:7px;overflow-x:auto;padding:3px 1px 9px;scrollbar-width:none}.ab-filter-row::-webkit-scrollbar{display:none}.ab-filter-pill{flex:0 0 auto;border:1px solid var(--ab-line);border-radius:999px;background:#fff;padding:9px 12px;font:700 11px/1 Manrope;color:var(--ab-ink)}.ab-filter-pill.is-active{background:var(--ab-green);border-color:var(--ab-green);color:#fff}.ab-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ab-product{border:0;border-radius:18px;background:#fff;padding:0;overflow:hidden;color:var(--ab-ink);text-align:left;box-shadow:0 6px 20px rgba(22,31,28,.06)}.ab-product:active{transform:scale(.985)}.ab-product-photo{display:block;position:relative;aspect-ratio:1/1;background:#f4f2ee;overflow:hidden}.ab-product img{display:block;width:100%;height:100%;object-fit:contain;padding:5%;transition:opacity .2s ease,transform .2s ease}.ab-product img.is-fallback{object-fit:contain;padding:18%}.ab-product>strong{display:block;padding:11px 12px 13px;font-size:16px}.ab-more{display:block;width:100%;margin:13px 0 0;border:1px solid var(--ab-line);border-radius:15px;background:#fff;padding:13px;color:var(--ab-green);font:800 13px Manrope}.ab-empty{padding:22px;text-align:center;color:var(--ab-muted);background:#fff;border-radius:18px}.bonito-has-unified-dock .bonito-help-fab{display:none!important}
@media(min-width:680px){.ab-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ab-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ab-app{padding-left:20px;padding-right:20px}}


/* v1.6.5 · filtro local por contenido */
.ab-content-card{margin:4px 0 10px;border:1px solid rgba(31,94,80,.15);border-radius:20px;background:linear-gradient(180deg,#fff,#fbfdfc);overflow:hidden;box-shadow:0 8px 24px rgba(31,94,80,.06)}
.ab-content-toggle{width:100%;display:grid;grid-template-columns:44px 1fr 24px;gap:10px;align-items:center;border:0;background:transparent;padding:14px;text-align:left;color:var(--ab-ink)}
.ab-content-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#eaf4ef;color:var(--ab-green);font-size:18px}
.ab-content-toggle strong{display:block;font-size:14px;line-height:1.2}.ab-content-toggle small{display:block;margin-top:3px;color:var(--ab-muted);font-size:11px;line-height:1.35}.ab-content-toggle em{display:block;margin-top:5px;color:var(--ab-green);font-style:normal;font-size:10px;font-weight:800}
.ab-content-toggle>b{font-size:20px;color:var(--ab-green);transition:transform .2s ease}.ab-content-card.is-open .ab-content-toggle>b{transform:rotate(180deg)}
.ab-content-panel{padding:0 14px 14px}.ab-element-grid{display:flex;flex-wrap:wrap;gap:7px;padding-top:2px}.ab-element-pill{border:1px solid var(--ab-line);border-radius:999px;background:#fff;padding:9px 11px;color:var(--ab-ink);font:800 11px/1 Manrope}.ab-element-pill span{margin-right:5px}.ab-element-pill.is-active{background:var(--ab-green);border-color:var(--ab-green);color:#fff}.ab-content-clear{margin-top:10px;border:0;background:transparent;color:var(--ab-green);font:800 11px Manrope;padding:5px 1px}
.ab-missing-card{margin:15px 0 2px;padding:17px;border:1px solid rgba(239,125,50,.22);border-radius:20px;background:#fff8f2}.ab-missing-kicker{display:block;color:var(--ab-orange);font-size:9px;font-weight:900;letter-spacing:.1em}.ab-missing-card h2{margin:4px 0 7px;font-size:17px;line-height:1.2}.ab-missing-card>p{margin:0;color:var(--ab-muted);font-size:11px;line-height:1.5}.ab-missing-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.ab-missing-pill{border:1px solid rgba(239,125,50,.24);border-radius:999px;background:#fff;padding:8px 10px;color:#8b4a20;font:800 11px/1 Manrope}.ab-missing-pill.is-active{background:var(--ab-orange);border-color:var(--ab-orange);color:#fff}.ab-builder-message{margin-top:11px!important;color:var(--ab-ink)!important;font-weight:700}.ab-builder-link{margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:15px;background:var(--ab-orange);color:#fff;text-decoration:none;padding:13px 14px;font:800 13px Manrope}.ab-builder-link span{font-size:18px}.ab-builder-link[hidden]{display:none!important}
@media(max-width:430px){.ab-content-toggle{grid-template-columns:40px 1fr 20px;padding:13px}.ab-content-icon{width:38px;height:38px}.ab-missing-card{padding:15px}.ab-element-pill,.ab-missing-pill{font-size:10.5px}}

/* v1.6.6 · paginación local real */
.ab-page-status{margin:11px 2px 0;text-align:center;color:var(--ab-muted);font-size:11px;font-weight:800;min-height:16px}
.ab-more{position:relative;z-index:5;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;user-select:none;min-height:48px}
.ab-more:active{transform:scale(.99);background:#f2f7f4}

/* v1.6.7 · foto completa + complemento */
.ab-product-badge{position:absolute;left:7px;bottom:7px;z-index:2;display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:#173a40;color:#fff;font-style:normal;font-size:9px;font-weight:900;letter-spacing:.03em;box-shadow:0 3px 10px rgba(23,58,64,.16)}
.ab-choice.is-disabled{opacity:.45;filter:saturate(.45)}


/* v1.6.9 · disponibilidad visible desde la fecha elegida */
.ab-weekend-hint{grid-column:1/-1;margin:0 0 10px;padding:9px 11px;border:1px solid rgba(173,124,26,.18);border-radius:13px;background:#fff8df;color:#665321;font-size:11px;font-weight:750;line-height:1.4}
.ab-category-choice{position:relative}
.ab-category-choice.has-weekend-status{padding-bottom:42px}
.ab-weekend-badge{position:absolute;left:12px;right:12px;bottom:11px;display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:4px 7px;border-radius:999px;background:#fff4cc;color:#72580d;font-style:normal;font-size:9px;font-weight:900;line-height:1.15;text-align:center;letter-spacing:.01em}
.ab-category-choice.is-weekend-unavailable{opacity:.72;border-color:rgba(173,124,26,.2);background:#fffdf6}
.ab-category-choice.is-weekend-unavailable>span,.ab-category-choice.is-weekend-unavailable>strong,.ab-category-choice.is-weekend-unavailable>small{opacity:.68}
.ab-filter-pill.is-weekend-unavailable{border-color:#e3c66c;background:#fff8df;color:#72580d}
.ab-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}
