/* =====================================================
   متجر همَّة الأسنان
   ===================================================== */
.store-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 2.4rem; margin-bottom: 5rem; }
.store-card {
    background: var(--white-color); border: 1px solid var(--border-color); border-radius: var(--radius-md, 16px);
    overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 4px 18px rgba(46, 47, 50, 0.07);
    transition: transform .2s, box-shadow .2s;
}
.store-card:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(46, 47, 50, 0.13); }
.store-card.sold { opacity: .72; }
.store-img { position: relative; aspect-ratio: 4 / 3; background: var(--lightGrey-color); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.store-img img { width: 100%; height: 100%; object-fit: cover; }
.store-img i { font-size: 5rem; color: var(--primary-color); opacity: .35; }
.store-badge { position: absolute; top: 1rem; right: 1rem; background: #c0392b; color: #fff; font-size: 1.2rem; font-weight: 700; padding: 0.4rem 1.1rem; border-radius: 999px; }
.store-body { padding: 2rem; display: flex; flex-direction: column; gap: 0.8rem; flex: 1; }
.store-body h3 { font-size: 1.8rem; margin: 0; color: var(--ink-color); }
.store-desc { font-size: 1.4rem; color: var(--grey-color); line-height: 1.7; margin: 0; flex: 1; white-space: pre-line; }
.store-price { font-size: 2rem; font-weight: 800; color: var(--primary-color); margin: 0.6rem 0; }

.store-cart { margin: 3rem 0 5rem; padding: 2.5rem; border: 2px solid var(--primary-color); }
.store-cart-head { display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:1.5rem; }
.store-cart-head h2 { margin:0; color:var(--primary-color); }
.store-cart-head p { margin:.5rem 0 0; color:var(--grey-color); font-size:1.35rem; }
.store-cart-count { background:var(--primary-tint); color:var(--primary-color); font-weight:700; padding:.6rem 1rem; border-radius:999px; }
.store-cart-row { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:1.2rem; padding:1.2rem 0; border-bottom:1px solid var(--border-color); }
.store-cart-row strong { display:block; font-size:1.5rem; }
.store-cart-row small { color:var(--grey-color); }
.cart-qty { display:flex; align-items:center; gap:.8rem; }
.cart-qty button { width:3rem; height:3rem; border:1px solid var(--border-color); border-radius:var(--radius-xs); background:var(--lightGrey-color); cursor:pointer; font-size:1.8rem; color:var(--ink-color); }
.cart-remove { border:0; background:transparent; color:var(--red-color); cursor:pointer; font-size:1.4rem; }
.store-cart-summary { display:flex; justify-content:space-between; padding:1.7rem 0; font-size:1.6rem; }
.store-cart-summary strong { color:var(--primary-color); font-size:1.9rem; }
.store-order-box { border-top:2px dashed var(--border-color); padding-top:2rem; }
.store-order-box h3 { margin-bottom:.6rem; }
.store-order-note { color:var(--grey-color); font-size:1.3rem; margin-bottom:1.5rem; }
.store-order-actions { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; }
.store-order-message { margin-top:1.5rem; padding:1.2rem 1.5rem; border-radius:var(--radius-sm); font-size:1.4rem; }
.store-order-message.success { background:var(--green-light); color:var(--green-dark); }
.store-order-message.error { background:var(--red-light); color:var(--red-dark); }
.store-price.pending { font-size:1.5rem; color:var(--grey-color); }
@media (max-width:600px) { .store-cart { padding:1.5rem; } .store-cart-row { grid-template-columns:1fr auto; } .cart-remove { grid-column:2; grid-row:1; } }

.store-fixed-option { padding:1.1rem 1.3rem; border:2px solid var(--border-color); border-radius:var(--radius-sm); color:var(--primary-color); background:var(--primary-tint); font-weight:700; }
.store-payment-number { padding:.9rem 1.1rem; margin-bottom:.7rem; background:var(--lightGrey-color); border-radius:var(--radius-sm); color:var(--primary-color); font-weight:700; }
.store-my-orders { margin:3rem 0 5rem; }
.my-order-row { display:flex; justify-content:space-between; gap:1rem; padding:1.3rem 0; border-bottom:1px solid var(--border-color); }
.my-order-row strong,.my-order-row span,.my-order-row small { display:block; }
.my-order-row span { color:var(--primary-color); font-weight:700; margin:.3rem 0; }
.my-order-row small { color:var(--grey-color); font-size:1.25rem; }
.my-order-contact { text-align:left; color:var(--accent-color); }
@media (max-width:600px){.my-order-row{flex-direction:column}.my-order-contact{text-align:right}}


html[data-theme="dark"] .store-img { background:#102126 !important; }
html[data-theme="dark"] .store-body h3,
html[data-theme="dark"] .store-price,
html[data-theme="dark"] .store-cart-head h2 { color:#f1f7f8 !important; }

.store-customer-archive { margin-top: 2rem; padding-top: 2rem; border-top: 2px dashed var(--border-color); }
.store-customer-archive h3 { color: var(--grey-color); margin-bottom: 1rem; }
html[data-theme="dark"] .store-customer-archive h3 { color: #d0e0e3; }

.store-payment-receipt { display:block; margin-top:.7rem; color:var(--grey-color); font-size:1.25rem; }
.store-payment-receipt input[type=file] { width:100%; padding:.8rem; border:2px dashed var(--border-color); border-radius:var(--radius-sm); }
html[data-theme="dark"] .store-payment-receipt input[type=file] { background:#122126; color:#d0e0e3; border-color:#5b747b; }
