/* Phase 3: preserve the existing visual language and reserve control geometry. */
.ah-complete-catalog [hidden],.ah-suggestions[hidden],.ah-search-summary [hidden],.ah-no-results[hidden]{display:none!important}
.product-card{box-sizing:border-box;display:flex;flex-direction:column;min-width:0}
.product-card .product-picture{aspect-ratio:1;flex-shrink:0;overflow:hidden}
.product-card .product-picture img{width:100%;height:100%;object-fit:contain}
.product-card .product-name{min-height:2.8em;height:2.8em;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-card .ah-unit-grid{height:44px;min-height:44px;grid-auto-rows:44px;align-content:center}
.product-card .ah-unit-grid[data-count="4"]{height:94px;min-height:94px}
.ah-store .product-card .ah-unit-grid button{position:relative;box-sizing:border-box;height:44px;min-height:44px;padding:2px 3px 2px 13px!important;border-width:1px;overflow:hidden;font-size:11px}
.product-card .ah-unit-grid button::before{content:'✓';position:absolute;left:3px;top:50%;transform:translateY(-50%);font-size:9px;visibility:hidden;width:9px}
.product-card .ah-unit-grid button.selected::before{visibility:visible}
.product-card .price{height:3.2em;min-height:3.2em;line-height:1.4;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:0 3px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.product-card .quantity{height:34px;min-height:34px;flex-shrink:0}
.product-card>.button{min-height:40px;margin-top:auto}
.ah-smart-search{position:relative;overflow:visible!important}
.ah-suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;background:#fffef9;border:1px solid #d6dfd3;border-radius:10px;box-shadow:0 8px 24px #17382826;max-height:min(350px,42dvh);overflow-y:auto;overscroll-behavior:contain;z-index:1000}
.ah-suggestions a{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px;color:#173b2e;text-decoration:none;border-bottom:1px solid #edf0e7;font-size:14px}
.ah-suggestions a[aria-selected=true],.ah-suggestions a:hover{background:#e7f1e9}
.ah-suggestions img{width:40px;height:40px;object-fit:contain;flex-shrink:0}
.ah-suggestions mark{background:#f6e6ac;color:inherit}.ah-suggestions p{padding:12px;font-size:14px}
.ah-search-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;font-size:14px}
.ah-reset-search{background:transparent;color:#075541;border:1px solid #cad9ce;border-radius:8px;min-height:40px;padding:8px 12px;cursor:pointer}
.ah-no-results{padding:24px;background:#f4f6ed;border-radius:12px}
.ah-complete-catalog{scroll-margin-top:calc(var(--ah-header-height,100px) + 16px)}
.ah-swatches{display:none;flex-wrap:wrap;gap:8px;margin:5px 0 12px}
.ah-swatch-native{display:none!important}.ah-swatch-native~.ah-swatches{display:flex}
.ah-swatch{flex:0 1 auto;min-width:64px;max-width:100%;overflow-wrap:anywhere;min-height:44px;padding:9px 14px;background:#fffef9;color:#173b2e;border:1px solid #d4ded2;border-radius:8px;font:inherit;font-size:14px;cursor:pointer;box-sizing:border-box}
.ah-swatch.selected{background:#075541;color:white;border-color:#075541}.ah-swatch:disabled{opacity:.45;text-decoration:line-through;cursor:not-allowed}
.ah-phone-login{max-width:440px;margin:20px auto;padding:24px;background:#fffef9;border:1px solid #dae3d6;border-radius:14px}
.ah-phone-login input{min-height:46px;width:100%;box-sizing:border-box}.ah-phone-login button{min-height:46px;width:100%}.ah-phone-login [hidden]{display:none!important}
.ah-phone-secondary{margin:12px auto;max-width:440px}.ah-phone-secondary summary{padding:12px;cursor:pointer;color:#075541}
.ah-login-primary .woocommerce-form-login{margin-top:12px}.ah-login-primary .u-columns{display:block}
@media(max-width:400px){.ah-store .product-card .ah-unit-grid button{font-size:10px;padding-left:12px!important;padding-right:3px!important}.ah-swatch{min-width:54px;padding:8px 10px}}

.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
a.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:8px;top:8px;padding:12px;background:white;z-index:99999}
