/* Mini Store - Frontend */
.mds-product, .mds-box, .mds-checkout, .mds-cart, .mds-thankyou{box-sizing:border-box;}
.mds-product *,.mds-box *,.mds-checkout *,.mds-cart *,.mds-thankyou *{box-sizing:border-box;}

.mds-notice{padding:12px 14px;border:1px solid #ddd;border-radius:10px;background:#fff;margin:10px 0;}
.mds-notice-error{border-color:#e2b3b3;background:#fff7f7;}
.mds-loading{padding:10px;opacity:.7;}

.mds-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid #1f2937;background:#111827;color:#fff;text-decoration:none;cursor:pointer;font-weight:600;line-height:1;}
.mds-btn:hover{filter:brightness(1.05);}
.mds-btn:disabled{opacity:.6;cursor:not-allowed;}
.mds-btn-secondary{background:#fff;color:#111827;border-color:#d1d5db;}
.mds-btn-primary{background:#111827;color:#fff;border-color:#111827;}
.mds-link{background:transparent;border:none;color:#111827;text-decoration:underline;cursor:pointer;padding:6px 8px;border-radius:8px;}
.mds-link:hover{background:rgba(0,0,0,.04);text-decoration:none;}

.mds-product{display:grid;grid-template-columns:140px 1fr;gap:14px;border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fff;margin:14px 0;overflow:hidden;}
.mds-product-image img{width:140px;height:140px;object-fit:cover;border-radius:12px;border:1px solid #eee;}
.mds-product-title{margin:0 0 8px 0;font-size:1.1rem;}
.mds-product-desc{font-size:.95rem;color:#111827;opacity:.9;}
.mds-product-meta{display:flex;align-items:flex-end;justify-content:space-between;margin-top:12px;gap:12px;flex-wrap:wrap;}
.mds-price{display:flex;flex-direction:column;gap:4px;}
.mds-price-regular{text-decoration:line-through;opacity:.7;}
.mds-price-sale{font-size:1.2rem;font-weight:800;}
.mds-sale-until{font-size:.85rem;opacity:.75;}
.mds-tags{display:flex;gap:8px;flex-wrap:wrap;}
.mds-tag{font-size:.8rem;padding:4px 10px;border:1px solid #e5e7eb;border-radius:999px;background:#f9fafb;}
.mds-product-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;}

.mds-box{border:1px solid #e5e7eb;border-radius:16px;padding:16px;background:#fff;margin:14px 0;}
.mds-box h3{margin:0 0 12px 0;font-size:1.15rem;}
.mds-box h4{margin:16px 0 10px 0;font-size:1rem;}

.mds-table{width:100%;border-collapse:collapse;}
.mds-table th,.mds-table td{border-bottom:1px solid #f0f0f0;padding:10px 8px;text-align:left;vertical-align:top;}
.mds-line-title{font-weight:700;}
.mds-line-code{font-size:.85rem;opacity:.7;}
.mds-qty{width:80px;padding:8px;border-radius:10px;border:1px solid #d1d5db;}

.mds-totals{display:flex;flex-direction:column;gap:8px;margin-top:12px;max-width:360px;}
.mds-totals > div{display:flex;justify-content:space-between;gap:14px;}
.mds-totals .mds-total{border-top:1px solid #eee;padding-top:8px;font-size:1.05rem;}
.mds-actions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;}

.mds-checkout-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;}
@media (max-width: 900px){ .mds-checkout-grid{grid-template-columns:1fr;} }

.mds-form .mds-field{display:flex;flex-direction:column;gap:6px;margin:10px 0;}
.mds-form label{font-weight:600;}
.mds-form input{padding:10px 12px;border-radius:12px;border:1px solid #d1d5db;}

.mds-coupon-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.mds-coupon-row input{flex:1;min-width:220px;}
.mds-coupon-msg{margin-top:8px;font-size:.95rem;}
.mds-coupon-msg.is-ok{color:#0a7a2f;}
.mds-coupon-msg.is-error{color:#b42318;}

.mds-payments{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0;}
.mds-radio{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb;}

.mds-summary-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.mds-summary-items li{display:flex;justify-content:space-between;gap:14px;}
.mds-totals-compact{max-width:none;margin-top:14px;}

.mds-thankyou h2{margin:0 0 8px 0;}
.mds-order-ref{opacity:.75;margin:0 0 14px 0;}
.mds-downloads{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.mds-download-exp{margin-left:8px;opacity:.7;font-size:.85rem;}

.mds-toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);padding:12px 16px;border-radius:14px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.12);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s ease;z-index:9999;}
.mds-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(-6px);}
.mds-toast[data-type="error"]{border-color:#f1b6b6;background:#fff7f7;}
.mds-toast[data-type="ok"]{border-color:#b7e3c1;background:#f6fffa;}
