
  /* DIRECTORIO RESTAURANTES / TIENDAS · BUSCADOR + CATEGORÍAS + FILTROS */
  .pyl2-directory-shell{display:grid;gap:14px;}
  .pyl2-search-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;}
  .pyl2-search-box{display:flex;align-items:center;gap:10px;background:#f4f4f6;border:1px solid #ececf0;border-radius:22px;padding:0 15px;min-height:54px;}
  .pyl2-search-box span{font-size:19px;opacity:.72;}
  .pyl2-search-box input{width:100%;border:0;outline:0;background:transparent;font-size:16px;color:#111;padding:15px 0;min-width:0;}
  .pyl2-cart-top-button{width:54px;height:54px;border:1px solid #e7e7e7;border-radius:18px;background:#fff;font-size:22px;cursor:pointer;position:relative;}
  .pyl2-cart-top-count{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ffd400;color:#111;font-size:11px;font-weight:950;display:flex;align-items:center;justify-content:center;border:2px solid #fff;}

  .pyl2-category-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 1px 7px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .pyl2-category-strip::-webkit-scrollbar{display:none;}
  .pyl2-category-card{flex:0 0 104px;border:1px solid #ececec;background:#fff;border-radius:18px;padding:10px 8px 11px;cursor:pointer;text-align:center;transition:.16s ease;}
  .pyl2-category-card.is-active{border-color:#111;background:#111;color:#fff;transform:translateY(-1px);}
  .pyl2-category-icon{height:60px;border-radius:15px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;font-size:34px;margin-bottom:8px;}
  .pyl2-category-card.is-active .pyl2-category-icon{background:#ffd400;}
  .pyl2-category-label{font-size:12px;font-weight:900;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

  .pyl2-actions{display:flex;gap:8px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .pyl2-actions::-webkit-scrollbar{display:none;}
  .pyl2-action{flex:0 0 auto;border:1px solid #e7e7e7;background:#f6f6f7;color:#111;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:900;cursor:pointer;white-space:nowrap;}
  .pyl2-action.is-active{background:#111;color:#fff;border-color:#111;}
  .pyl2-action .pyl2-action-count{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;padding:0 5px;margin-left:4px;border-radius:999px;background:#ffd400;color:#111;font-size:10px;}

  .pyl2-options-panel{border:1px solid #e8e8e8;border-radius:18px;background:#fff;padding:14px;box-shadow:0 10px 30px rgba(0,0,0,.07);}
  .pyl2-options-title{font-size:14px;font-weight:950;margin-bottom:11px;}
  .pyl2-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .pyl2-option-button{border:1px solid #e3e3e3;border-radius:13px;background:#f8f8f8;padding:11px 10px;text-align:left;font-weight:850;cursor:pointer;color:#222;}
  .pyl2-option-button.is-active{background:#111;color:#fff;border-color:#111;}
  .pyl2-filter-row{display:grid;gap:9px;margin-top:12px;}
  .pyl2-filter-row label{font-size:12px;font-weight:900;color:#555;}
  .pyl2-filter-row select{width:100%;border:1px solid #ddd;border-radius:13px;background:#fff;padding:11px 12px;font-weight:800;outline:0;}
  .pyl2-filter-checks{display:flex;flex-wrap:wrap;gap:8px;}
  .pyl2-filter-chip{border:1px solid #e3e3e3;background:#f8f8f8;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:850;cursor:pointer;}
  .pyl2-filter-chip.is-active{background:#ffd400;border-color:#ffd400;color:#111;}

  .pyl2-results-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:2px 0 0;}
  .pyl2-results-head strong{font-size:18px;}
  .pyl2-results-head span{font-size:12px;color:#777;font-weight:800;}
  .pyl2-business-card{width:100%;display:grid;grid-template-columns:78px minmax(0,1fr) 20px;gap:12px;align-items:center;border:1px solid #e8e8e8;border-radius:20px;background:#fff;padding:12px;text-align:left;cursor:pointer;color:#111;box-shadow:0 4px 18px rgba(0,0,0,.035);margin-bottom:10px;}
  .pyl2-business-card.is-closed{opacity:.68;}
  .pyl2-business-logo{width:78px;height:78px;object-fit:cover;border-radius:17px;background:#f2f2f2;border:1px solid #eee;}
  .pyl2-business-logo-placeholder{width:78px;height:78px;border-radius:17px;background:#111;color:#ffd400;display:flex;align-items:center;justify-content:center;font-size:30px;}
  .pyl2-business-copy{min-width:0;}
  .pyl2-business-name{font-size:17px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .pyl2-business-type{font-size:12px;color:#777;margin:3px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .pyl2-business-meta{display:flex;gap:6px;flex-wrap:wrap;}
  .pyl2-mini{display:inline-flex;align-items:center;border-radius:999px;background:#f4f4f4;padding:5px 8px;font-size:10px;font-weight:850;color:#444;}
  .pyl2-mini.open{background:#e9f8ee;color:#146b2d;}
  .pyl2-mini.closed{background:#f3f3f3;color:#777;}
  .pyl2-mini.price{background:#fff8d8;color:#5f5100;}
  .pyl2-business-cats{margin-top:7px;display:flex;gap:5px;overflow:hidden;}
  .pyl2-business-cat{font-size:10px;color:#666;background:#fafafa;border:1px solid #eee;border-radius:999px;padding:4px 7px;white-space:nowrap;}
  .pyl2-arrow{font-size:26px;font-weight:700;color:#999;}

  /* CARRITO EDITABLE */
  .master-cart-bar .pyl2-cart-summary-btn{background:transparent!important;color:#fff!important;border:0!important;padding:2px 4px!important;text-align:left!important;min-width:0;white-space:normal!important;}
  .master-cart-bar .pyl2-cart-summary-btn strong{display:block;font-size:13px;}
  .master-cart-bar .pyl2-cart-summary-btn small{display:block;color:#ddd;margin-top:2px;font-size:11px;}
  .pyl2-cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:1210;}
  .pyl2-cart-drawer{position:fixed;left:50%;bottom:calc(82px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:1220;width:min(92vw,540px);max-height:min(62dvh,540px);overflow:auto;background:#fff;border-radius:22px;border:1px solid #e6e6e6;box-shadow:0 24px 65px rgba(0,0,0,.28);padding:16px;-webkit-overflow-scrolling:touch;}
  .pyl2-cart-drawer-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;}
  .pyl2-cart-drawer-head strong{font-size:17px;}
  .pyl2-cart-clear{border:0;background:transparent;color:#a72d2d;font-size:12px;font-weight:900;cursor:pointer;}
  .pyl2-cart-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #eee;}
  .pyl2-cart-item:first-of-type{border-top:0;}
  .pyl2-cart-item-img{width:48px;height:48px;border-radius:12px;object-fit:cover;background:#f2f2f2;}
  .pyl2-cart-item-placeholder{width:48px;height:48px;border-radius:12px;background:#f3f3f3;display:flex;align-items:center;justify-content:center;font-size:20px;}
  .pyl2-cart-item-name{font-size:13px;font-weight:900;line-height:1.25;}
  .pyl2-cart-item-price{font-size:11px;color:#777;margin-top:3px;}
  .pyl2-qty-controls{display:flex;align-items:center;gap:6px;}
  .pyl2-qty-btn{width:30px;height:30px;border:1px solid #ddd;border-radius:10px;background:#fff;font-size:17px;font-weight:950;cursor:pointer;display:flex;align-items:center;justify-content:center;}
  .pyl2-qty-number{min-width:22px;text-align:center;font-weight:950;font-size:13px;}
  .pyl2-remove-btn{width:30px;height:30px;border:0;border-radius:10px;background:#fff0f0;color:#a72d2d;cursor:pointer;font-size:14px;margin-left:2px;}
  .pyl2-cart-drawer-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8e8e8;margin-top:8px;padding-top:12px;font-size:14px;}
  .pyl2-cart-drawer-total strong{font-size:17px;}

  /* CARRITO EDITABLE DENTRO DEL CHECKOUT */
  .pyl2-checkout-cart{display:grid;gap:8px;}
  .pyl2-checkout-cart-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:2px;}
  .pyl2-checkout-cart-title strong{font-size:14px;}
  .pyl2-checkout-cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #eee;border-radius:13px;padding:9px 10px;background:#fafafa;}
  .pyl2-checkout-cart-row-name{font-size:12px;font-weight:900;line-height:1.25;}
  .pyl2-checkout-cart-row-price{font-size:10px;color:#777;margin-top:2px;}

  @media(max-width:560px){
    .pyl2-search-box{min-height:50px;border-radius:19px;}
    .pyl2-cart-top-button{width:50px;height:50px;border-radius:17px;}
    .pyl2-category-card{flex-basis:92px;border-radius:16px;}
    .pyl2-category-icon{height:54px;font-size:30px;}
    .pyl2-business-card{grid-template-columns:68px minmax(0,1fr) 17px;padding:10px;border-radius:17px;gap:10px;}
    .pyl2-business-logo,.pyl2-business-logo-placeholder{width:68px;height:68px;border-radius:15px;}
    .pyl2-business-name{font-size:15px;}
    .pyl2-option-grid{grid-template-columns:1fr;}
    .pyl2-cart-drawer{width:calc(100vw - 24px);bottom:calc(75px + env(safe-area-inset-bottom));max-height:65dvh;border-radius:20px;padding:14px;}
    #serviceModalBody{padding-bottom:105px;}
  }
