.wc-ob-wrap { display: block; }
.wc-ob-card { display: flex; gap: 0; border: 2px solid var(--ob-color, #f97316); border-radius: 12px; overflow: hidden; background: #fff; transition: background 0.2s; }
.wc-ob-checked .wc-ob-card { background: var(--ob-color-checked, #fff8f3); }
.wc-ob-img { flex-shrink: 0; width: 140px; min-width: 140px; padding: 10px 0 0 10px; display: flex; align-items: flex-start; justify-content: flex-start; }
.wc-ob-img img { width: 120px; height: 120px; object-fit: cover; display: block; border-radius: 8px !important; -webkit-border-radius: 8px !important; overflow: hidden; }
.wc-ob-content { padding: 12px 14px 12px 10px; display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; }
.wc-ob-title { font-size: 16px; font-weight: 700; color: #1a1a1a; line-height: 1.3; }
.wc-ob-desc { font-size: 14px; color: #555; line-height: 1.45; }
.wc-ob-price-row { display: flex; align-items: center; gap: 10px; margin-top: 2px; flex-wrap: wrap; }
.wc-ob-price { display: inline-block; background: var(--ob-color, #f97316); color: #fff !important; font-weight: 700; font-size: 15px; padding: 4px 10px; border-radius: 6px; }
.wc-ob-price .woocommerce-Price-amount, .wc-ob-price bdi { color: #fff !important; }
.wc-ob-reg-price { font-size: 14px; color: #999; text-decoration: line-through; }
.wc-ob-add-row { display: flex; align-items: center; gap: 10px; cursor: pointer; margin-top: 6px; }
.wc-ob-checkbox { width: 22px; height: 22px; accent-color: var(--ob-color, #f97316); cursor: pointer; flex-shrink: 0; }
.wc-ob-add-label { font-size: 15px; font-weight: 700; color: #1a1a1a; }
.wc-ob-added-row { display: flex; align-items: center; gap: 10px; margin-top: 6px; flex-wrap: wrap; }
.wc-ob-added-label { font-size: 15px; font-weight: 700; color: #1a1a1a; }
.wc-ob-qty-select { appearance: none; -webkit-appearance: none; background-color: var(--ob-color, #f97316); color: #fff; font-size: 13px; font-weight: 700; border: none; border-radius: 8px; padding: 5px 22px 5px 10px; cursor: pointer; width: auto; min-width: 0; max-width: 68px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23fff' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 7px center; line-height: 1.2; }
.wc-ob-qty-select:focus { outline: none; }
.wc-ob-remove-btn { background: none; border: 1.5px solid var(--ob-color, #f97316); border-radius: 8px; cursor: pointer; display: flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 600; color: var(--ob-color, #f97316); padding: 5px 10px; white-space: nowrap; flex-shrink: 0; transition: background 0.15s, color 0.15s; }
.wc-ob-remove-btn:hover { background: var(--ob-color, #f97316); color: #fff; }
.wc-ob-remove-btn:hover .wc-ob-trash-icon { stroke: #fff; }
.wc-ob-trash-icon { stroke: var(--ob-color, #f97316); transition: stroke 0.15s; flex-shrink: 0; }
.wc-ob-wrap .wc-ob-state-checked   { display: none !important; }
.wc-ob-wrap .wc-ob-state-unchecked { display: flex !important; }
.wc-ob-wrap.wc-ob-checked .wc-ob-state-checked   { display: flex !important; }
.wc-ob-wrap.wc-ob-checked .wc-ob-state-unchecked { display: none !important; }
@media (max-width: 520px) {
    .wc-ob-img { width: 110px; min-width: 110px; padding: 10px 0 0 8px; }
    .wc-ob-img img { width: 95px; height: 95px; }
    .wc-ob-title { font-size: 14px; }
    .wc-ob-desc { font-size: 13px; }
}