.bp-aio-page {
  direction: rtl;
  text-align: right;
}
.bp-aio-card {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  padding: 18px;
  margin-bottom: 18px;
}
.bp-aio-line {
  display: flex;
  gap: 12px;
  align-items: flex-end;
  border: 1px dashed #d5d5d5;
  border-radius: 6px;
  padding: 12px;
  margin-bottom: 12px;
  position: relative;
}
.bp-aio-field {
  flex: 1;
  min-width: 150px;
}
.bp-aio-qty-field {
  max-width: 120px;
}
.bp-aio-product-search-wrap {
  position: relative;
  flex: 2;
}
.bp-aio-search-results {
  position: absolute;
  right: 0;
  left: 0;
  top: 100%;
  z-index: 20;
  background: #fff;
  border: 1px solid #ccc;
  max-height: 260px;
  overflow: auto;
  display: none;
  box-shadow: 0 4px 12px rgba(0,0,0,.12);
}
.bp-aio-search-results.is-open {
  display: block;
}
.bp-aio-result {
  padding: 10px;
  cursor: pointer;
  border-bottom: 1px solid #eee;
}
.bp-aio-result:hover {
  background: #f7f7f7;
}
.bp-aio-result-title {
  font-weight: 600;
  display: block;
}
.bp-aio-result-meta {
  font-size: 12px;
  color: #777;
}
.bp-aio-note {
  margin-top: 16px;
}
.bp-aio-remove-line {
  color: #a00;
}
@media (max-width: 768px) {
  .bp-aio-line {
    display: block;
  }
  .bp-aio-field,
  .bp-aio-qty-field {
    max-width: none;
    margin-bottom: 10px;
  }
}
.bp-aio-payment-options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 4px;
}
.bp-aio-payment-btn {
  margin-left: 8px;
  margin-bottom: 8px;
}
