/* Critical styles that should load first */
:root {
    background-color: white !important;
}

@font-face {
    font-family: 'Samim';
    src: url('../fonts/Samim.woff2') format('woff2'),
        url('../fonts/Samim.woff') format('woff'),
        url('../fonts/Samim.ttf') format('truetype'),
        url('../fonts/Samim.eot') format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html {
    background-color: white !important;
    font-family: 'Samim', sans-serif !important;
}

body {
    background-color: white !important;
    font-family: 'Samim', sans-serif !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scaleIn {
    from {
        transform: scale(0.95);
    }

    to {
        transform: scale(1);
    }
}

body {
    font-family: 'Samim', sans-serif;
}

.cart-item {
    animation: fadeIn 0.5s ease-out;
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 1rem;
    padding: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    gap: 1rem;
}

/* استایل جدید برای عکس محصول بدون باکس */
.cart-item figure {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
}

.cart-item figure img {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Override کلاس‌های Tailwind */
.cart-item figure.rounded-lg {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    overflow: visible !important;
}

.cart-item figure img.rounded-lg {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

.cart-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    border-color: #3b82f6;
    background: white;
}

/* حذف افکت hover در موبایل */
@media (max-width: 768px) {
    .cart-item:hover {
        transform: none;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
        border-color: #e5e7eb;
        background: white;
    }

    /* تغییر چیدمان باکس محصولات در موبایل */
    .cart-item {
        flex-direction: row !important;
        align-items: flex-start !important;
        padding: 1rem !important;
        gap: 0.75rem !important;
    }

    .cart-item figure {
        order: 1 !important;
        width: 5rem !important;
        height: 5rem !important;
        margin: 0 !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .cart-item .flex-grow {
        order: 2 !important;
        flex: 1 !important;
        margin: 0 !important;
        text-align: right !important;
    }

    .cart-item .flex-grow .flex {
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 0.75rem !important;
        width: 100% !important;
    }

    .cart-item .flex-grow .flex .flex {
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 1rem !important;
        width: 100% !important;
    }

    .product-title {
        font-size: 0.9rem !important;
        margin-bottom: 0 !important;
        text-align: center !important;
        order: 1 !important;
        width: 100% !important;
    }

    /* استایل ساده برای چیدمان دکمه‌ها در موبایل */
    .cart-item .flex-grow .flex .flex>div:first-child {
        order: 2 !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.5rem !important;
        width: 100% !important;
        justify-content: center !important;
        margin-bottom: 0.5rem !important;
    }

    .quantity-controls {
        margin: 0 !important;
        order: 1 !important;
        padding: 0.25rem !important;
        gap: 0.25rem !important;
        display: flex !important;
        align-items: center !important;
        flex-direction: row !important;
        width: auto !important;
        flex-shrink: 0 !important;
    }

    .quantity-btn {
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.75rem !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-basis: 1.5rem !important;
    }

    .quantity-value {
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
        width: 1.5rem !important;
        font-size: 0.75rem !important;
        text-align: center !important;
        flex-shrink: 0 !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-basis: 1.5rem !important;
    }

    .remove-btn {
        margin: 0 !important;
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.75rem !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-basis: 1.5rem !important;
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
    }

    .cart-item .flex-grow .flex .flex>div:last-child {
        order: 3 !important;
        width: 100% !important;
        text-align: center !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
}

.form-input {
    background-color: white !important;
    border-color: #E2E8F0 !important;
    transition: all 0.3s ease;
    border-radius: 0.5rem;
}

.form-input:focus {
    border-color: #4299E1 !important;
    box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.2);
    outline: none;
}

.progress-step {
    transition: none;
}

.progress-step:hover {
    transform: none;
}

.progress-step .w-12 {
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.progress-step .w-12:hover {
    background-color: #f3f4f6;
}

.progress-step .w-12.bg-blue-600:hover {
    background-color: #2563eb;
}

.progress-line {
    height: 2px;
    background: linear-gradient(to right, #4299E1, #63B3ED);
    transition: all 0.5s ease;
}

.btn {
    transition: all 0.3s ease;
    border-radius: 0.5rem;
    padding: 0.75rem 1.5rem;
    font-weight: 600;
}

.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.summary-card {
    animation: scaleIn 0.5s ease-out;
    background: white;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    transition: all 0.3s ease;
}

.summary-card:hover {
    border-color: #3b82f6;
    box-shadow: 0 10px 20px -5px rgba(0, 0, 0, 0.1);
}

/* حذف افکت hover در موبایل برای summary-card */
@media (max-width: 768px) {
    .summary-card:hover {
        border-color: #e5e7eb;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    }
}

.summary-title {
    color: #111827;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
}

.summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f3f4f6;
}

.summary-row:last-child {
    border-bottom: none;
}

.summary-label {
    color: #4b5563;
    font-weight: 500;
}

.summary-value {
    color: #111827;
    font-weight: 600;
}

.summary-total {
    color: #059669;
    font-size: 1.25rem;
    font-weight: 700;
}

.quantity-controls {
    display: inline-flex;
    align-items: center;
    background: #f8fafc;
    padding: 0.25rem;
    border-radius: 0.5rem;
    gap: 0.5rem;
}

.quantity-btn {
    width: 2rem !important;
    height: 2rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    color: white !important;
    border-radius: 0.5rem !important;
    font-size: 1rem !important;
    transition: all 0.3s ease !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.2), 0 1px 2px rgba(0, 0, 0, 0.08) !important;
}

.quantity-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(37, 99, 235, 0.25), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    background: linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%) !important;
}

.quantity-btn:active {
    transform: translateY(1px) !important;
    box-shadow: 0 1px 2px rgba(37, 99, 235, 0.2), 0 1px 1px rgba(0, 0, 0, 0.08) !important;
    background: linear-gradient(135deg, #1d4ed8 0%, #172554 100%) !important;
}

.quantity-btn:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.3) !important;
}

/* استایل دکمه حذف محصول */
.remove-btn {
    width: 2rem !important;
    height: 2rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: white !important;
    color: #dc2626 !important;
    border: 2px solid #dc2626 !important;
    border-radius: 0.5rem !important;
    font-size: 1rem !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    box-shadow: 0 2px 4px rgba(220, 38, 38, 0.2), 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    text-decoration: none !important;
}

.remove-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(220, 38, 38, 0.25), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    background: #fef2f2 !important;
    color: #b91c1c !important;
    border-color: #b91c1c !important;
}

.remove-btn:active {
    transform: translateY(1px) !important;
    box-shadow: 0 1px 2px rgba(220, 38, 38, 0.2), 0 1px 1px rgba(0, 0, 0, 0.08) !important;
    background: #fee2e2 !important;
    color: #991b1b !important;
    border-color: #991b1b !important;
}

.remove-btn:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.3) !important;
}

.quantity-value {
    min-width: 2rem;
    text-align: center;
    font-weight: 600;
    color: #1e40af;
}

.ripple-btn {
    position: relative;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
}

.ripple-btn::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    background-image: radial-gradient(circle, #3b82f6 10%, transparent 10.01%);
    background-repeat: no-repeat;
    background-position: 50%;
    transform: scale(10, 10);
    opacity: 0;
    transition: transform .5s, opacity 1s;
}

.ripple-btn:active::after {
    transform: scale(0, 0);
    opacity: .3;
    transition: 0s;
}

@media (max-width: 768px) {
    .container {
        padding: 1rem;
    }

    .grid {
        gap: 1rem;
    }
}

.product-title {
    color: #111827;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    margin-bottom: 0;
    text-align: right;
    direction: rtl;
    width: 100%;
}

.form-container {
    animation: scaleIn 0.5s ease-out;
    background: linear-gradient(145deg, #ffffff, #eff6ff);
    border-radius: 1rem;
    border: 1px solid #dbeafe;
    transition: all 0.3s ease;
}

.form-container:hover {
    border-color: #bfdbfe;
    box-shadow: 0 10px 20px -5px rgba(59, 130, 246, 0.1);
    transform: translateY(-2px);
}

.form-title {
    color: #111827;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
    margin-bottom: 2rem;
}

.form-label {
    color: #4b5563;
    font-weight: 500;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
    display: block;
}

.form-input {
    background-color: #eff6ff !important;
    border: 2px solid #dbeafe !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem 1rem !important;
    font-size: 1rem !important;
    width: 100% !important;
    transition: all 0.3s ease !important;
    color: #1e293b !important;
}

.form-input:focus {
    border-color: #3b82f6 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.3) !important;
    transform: translateY(-2px) !important;
}

.form-input:hover {
    border-color: #d1d5db !important;
}

.form-checkbox {
    appearance: none !important;
    width: 1.5rem !important;
    height: 1.5rem !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 0.5rem !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    position: relative !important;
    background-color: white !important;
}

.form-checkbox:hover {
    border-color: #667eea !important;
    box-shadow: 0 2px 4px rgba(50, 50, 93, 0.1) !important;
}

.form-checkbox:checked {
    background-image: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border-color: transparent !important;
}

.form-checkbox:checked::after {
    content: '✓' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    color: white !important;
    font-size: 1rem !important;
    font-weight: bold !important;
}

.form-checkbox:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.3) !important;
}

/* استایل برای لیبل چک‌باکس */
.checkbox-label {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    cursor: pointer !important;
    user-select: none !important;
    color: #1e293b !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
}

.checkbox-label:hover {
    color: #667eea !important;
}

.checkbox-label:hover .form-checkbox {
    border-color: #667eea !important;
    transform: scale(1.05) !important;
}

/* انیمیشن برای چک‌باکس */
@keyframes checkmark {
    0% {
        transform: translate(-50%, -50%) scale(0);
        opacity: 0;
    }

    50% {
        transform: translate(-50%, -50%) scale(1.2);
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }
}

.form-checkbox:checked::after {
    animation: checkmark 0.2s ease-out forwards !important;
}

.form-warning {
    color: #dc2626;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.75rem;
    border-radius: 0.5rem;
}

.error-message {
    color: #dc2626;
    font-size: 0.75rem;
    margin-top: 0.25rem;
    display: none;
}

.form-input.error {
    border-color: #dc2626 !important;
}

.checkbox-error-message {
    color: #dc2626;
    font-size: 0.75rem;
    margin-top: 0.25rem;
    display: none;
}

/* استایل‌های جدید برای select شهر و استان */
.form-select {
    appearance: none !important;
    background-color: #f8fafc !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem 2.5rem 0.75rem 1rem !important;
    font-size: 1rem !important;
    width: 100% !important;
    transition: all 0.3s ease !important;
    color: #1e293b !important;
    cursor: pointer !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236B7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: left 1rem center !important;
    background-size: 1rem !important;
}

.form-select:hover {
    border-color: #94a3b8 !important;
    background-color: #f1f5f9 !important;
}

.form-select:focus {
    border-color: #3b82f6 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.3) !important;
    transform: translateY(-2px) !important;
    background-color: white !important;
}

.form-select:disabled {
    background-color: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #94a3b8 !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23CBD5E1'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E") !important;
}

.form-select option {
    padding: 1rem !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    background-color: white !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
}

.form-select option:hover {
    background-color: #f1f5f9 !important;
}

.form-select option:checked {
    background-color: #3b82f6 !important;
    color: white !important;
}

/* انیمیشن برای باز شدن select */
@keyframes selectOpen {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.form-select[size] {
    animation: selectOpen 0.3s ease-out !important;
    border-radius: 1rem !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06) !important;
    border: none !important;
    background-color: white !important;
    padding: 0.5rem !important;
}

/* استایل برای گروه select‌ها */
.select-group {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 1rem !important;
}

@media (max-width: 768px) {
    .select-group {
        grid-template-columns: 1fr !important;
    }

    .form-select {
        font-size: 0.95rem !important;
        padding: 0.75rem 2rem 0.75rem 1rem !important;
    }
}

/* استایل‌های جدید برای فرم اطلاعات گیرنده */
.cart-item.bg-white {
    background: white;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cart-item.bg-white:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

/* حذف افکت hover در موبایل برای فرم اطلاعات گیرنده */
@media (max-width: 768px) {
    .cart-item.bg-white:hover {
        transform: none;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    }
}

/* استایل‌های مخصوص فرم checkout */
#checkoutForm .form-input {
    background-color: #f8fafc !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem 1rem !important;
    font-size: 1rem !important;
    width: 100% !important;
    transition: all 0.3s ease !important;
    color: #1e293b !important;
    font-family: 'Samim', sans-serif !important;
    box-sizing: border-box !important;
}

#checkoutForm .form-input:focus {
    border-color: #3b82f6 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.3) !important;
    background-color: white !important;
}

#checkoutForm .form-input:hover {
    border-color: #94a3b8 !important;
    background-color: #f1f5f9 !important;
}

#checkoutForm .form-input.error {
    border-color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

/* استایل برای textarea در فرم checkout */
#checkoutForm textarea.form-input {
    resize: vertical !important;
    min-height: 80px !important;
    font-family: 'Samim', sans-serif !important;
}

.error-message {
    color: #dc2626;
    font-size: 0.875rem;
    margin-top: 0.5rem;
    display: none;
    animation: fadeIn 0.3s ease-out;
}

/* استایل مخصوص error message های فرم checkout */
#checkoutForm .error-message {
    color: #dc2626 !important;
    font-size: 0.875rem !important;
    margin-top: 0.5rem !important;
    display: none !important;
    font-family: 'Samim', sans-serif !important;
    font-weight: 500 !important;
}

.form-label {
    font-weight: 500;
    color: #475569;
    margin-bottom: 0.5rem;
    display: block;
    font-size: 0.95rem;
}

/* استایل مخصوص label های فرم checkout */
#checkoutForm label {
    font-weight: 600 !important;
    color: #374151 !important;
    margin-bottom: 0.5rem !important;
    display: block !important;
    font-size: 0.95rem !important;
    font-family: 'Samim', sans-serif !important;
}

/* استایل عنوان فرم اطلاعات گیرنده */
#checkoutForm h2,
.cart-item h2,
.text-xl.font-bold.mb-6.flex.items-center {
    color: #000000 !important;
    font-weight: 700 !important;
    font-family: 'Samim', sans-serif !important;
}

/* استایل قوی‌تر برای عنوان */
.cart-item.bg-white h2,
.cart-item.bg-white .text-xl,
.cart-item.bg-white .font-bold {
    color: #000000 !important;
    font-weight: 700 !important;
}

/* استایل فوق‌العاده قوی برای عنوان اطلاعات گیرنده */
div[class*="cart-item"] h2[class*="text-xl"],
div[class*="cart-item"] h2[class*="font-bold"],
h2[class*="text-xl"][class*="font-bold"] {
    color: #000000 !important;
    font-weight: 700 !important;
    font-family: 'Samim', sans-serif !important;
}

/* استایل نهایی با بالاترین اولویت */
.cart-item.bg-white h2.text-xl.font-bold.mb-6.flex.items-center {
    color: #000000 !important;
    font-weight: 700 !important;
    font-family: 'Samim', sans-serif !important;
}

.form-checkbox {
    width: 1.25rem !important;
    height: 1.25rem !important;
    border: 2px solid #dbeafe !important;
    border-radius: 0.375rem !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
}

.form-checkbox:checked {
    background-color: #3b82f6 !important;
    border-color: #3b82f6 !important;
}

.form-checkbox:hover {
    border-color: #3b82f6 !important;
}

/* استایل برای دکمه پرداخت */
.btn-primary {
    background-image: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 0.75rem !important;
    border: none !important;
    cursor: pointer !important;
    width: 100% !important;
    font-size: 1rem !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 6px rgba(59, 130, 246, 0.2), 0 1px 3px rgba(0, 0, 0, 0.08) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
}

.btn-primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 7px 14px rgba(59, 130, 246, 0.2), 0 3px 6px rgba(0, 0, 0, 0.08) !important;
}

.btn-primary:active {
    transform: translateY(1px) !important;
}

/* استایل اختصاصی برای دکمه اعمال - با بالاترین اولویت */
button[type="submit"].btn-primary.btn-apply,
input[type="submit"].btn-primary.btn-apply,
.btn-primary.btn-apply,
#apply-button,
[class*="btn-apply"] {
    background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    color: white !important;
    font-weight: 500 !important;
    padding: 0.5rem 1rem !important;
    font-size: 0.9rem !important;
    width: auto !important;
    min-width: 100px !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.2), 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    margin: 0 !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    outline: none !important;
    position: relative !important;
    overflow: hidden !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
}

button[type="submit"].btn-primary.btn-apply:hover,
input[type="submit"].btn-primary.btn-apply:hover,
.btn-primary.btn-apply:hover,
#apply-button:hover,
[class*="btn-apply"]:hover {
    background: linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(37, 99, 235, 0.25), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

button[type="submit"].btn-primary.btn-apply:active,
input[type="submit"].btn-primary.btn-apply:active,
.btn-primary.btn-apply:active,
#apply-button:active,
[class*="btn-apply"]:active {
    background: linear-gradient(135deg, #1d4ed8 0%, #172554 100%) !important;
    transform: translateY(1px) !important;
    box-shadow: 0 1px 2px rgba(37, 99, 235, 0.2), 0 1px 1px rgba(0, 0, 0, 0.08) !important;
}

button[type="submit"].btn-primary.btn-apply:focus,
input[type="submit"].btn-primary.btn-apply:focus,
.btn-primary.btn-apply:focus,
#apply-button:focus,
[class*="btn-apply"]:focus {
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.3) !important;
    outline: none !important;
}

/* برای دکمه پرداخت در صفحه آخر، سایز بزرگتر حفظ شود */
.btn-primary.btn-payment {
    width: 100% !important;
    padding: 0.75rem 1.5rem !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
}

/* استایل برای هشدار */
.form-warning {
    background-color: #fee2e2 !important;
    color: #b91c1c !important;
    border: 1px solid #fecaca !important;
    border-right: 4px solid #ef4444 !important;
    padding: 1rem !important;
    border-radius: 0.75rem !important;
    margin: 1rem 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

/* انیمیشن‌های جدید */
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.cart-item {
    animation: slideIn 0.5s ease-out forwards;
}

@media (max-width: 768px) {
    .grid-cols-2 {
        grid-template-columns: 1fr !important;
    }

    .cart-item.bg-white {
        padding: 1.5rem !important;
    }

    .form-input,
    .form-select {
        font-size: 0.95rem !important;
    }
}

/* استایل برای دکمه پرداخت */
#code {
    background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    color: white !important;
    font-weight: 500 !important;
    padding: 0.5rem 1rem !important;
    border-radius: 0.5rem !important;
    border: none !important;
    cursor: pointer !important;
    width: auto !important;
    font-size: 0.9rem !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.2), 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    min-width: 100px !important;
    text-decoration: none !important;
    outline: none !important;
}

#code:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(37, 99, 235, 0.25), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    background: linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%) !important;
}

#code:active {
    transform: translateY(1px) !important;
    box-shadow: 0 1px 2px rgba(37, 99, 235, 0.2), 0 1px 1px rgba(0, 0, 0, 0.08) !important;
    background: linear-gradient(135deg, #1d4ed8 0%, #172554 100%) !important;
}

#code:focus {
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.3) !important;
    outline: none !important;
}

/* برای دکمه پرداخت در صفحه آخر، سایز بزرگتر حفظ شود */
#code-payment {
    width: 100% !important;
    padding: 0.75rem 1.5rem !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
}

/* استایل برای دکمه‌های + و - */
.quantity-controls {
    display: inline-flex !important;
    align-items: center !important;
    background: #f8fafc !important;
    padding: 0.5rem !important;
    border-radius: 0.75rem !important;
    gap: 0.5rem !important;
    border: 2px solid #e2e8f0 !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    margin-right: 0.75rem !important;
}

.quantity-value {
    min-width: 2rem !important;
    text-align: center !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    font-size: 1rem !important;
}

/* استایل برای مراحل سفارش */
.progress-step .w-12 {
    background-image: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    border: none !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.2), 0 1px 2px rgba(0, 0, 0, 0.08) !important;
}

.progress-step:hover .w-12 {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(59, 130, 246, 0.2), 0 2px 4px rgba(0, 0, 0, 0.08) !important;
    opacity: 0.95 !important;
}

.progress-step .w-12.border-gray-300 {
    background-image: none !important;
    background-color: white !important;
    border: 2px solid #dbeafe !important;
    color: #3b82f6 !important;
}

.progress-step:hover .w-12.border-gray-300 {
    border-color: #3b82f6 !important;
    color: #1e40af !important;
}

.progress-line {
    height: 0.25rem !important;
    background: linear-gradient(to left, #3b82f6 0%, #1e40af 100%) !important;
    border-radius: 1rem !important;
    transition: all 0.3s ease !important;
}

.progress-line.opacity-50 {
    opacity: 0.3 !important;
}

.progress-step span.text-blue-600 {
    background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-weight: 600 !important;
}

/* استایل‌های ریسپانسیو جدید */
@media (max-width: 1024px) {
    .grid-cols-1.md\:grid-cols-3 {
        grid-template-columns: 1fr 1fr !important;
    }

    .cart-item.bg-white {
        padding: 1.25rem !important;
    }

    .progress-step .w-12 {
        width: 2.5rem !important;
        height: 2.5rem !important;
    }

    .progress-line {
        width: 3rem !important;
    }
}

@media (max-width: 768px) {
    .grid-cols-1.md\:grid-cols-3 {
        grid-template-columns: 1fr !important;
    }

    .cart-item.bg-white {
        padding: 1rem !important;
    }

    .cart-item figure {
        width: 5rem !important;
        height: 5rem !important;
    }

    .form-input,
    .form-select {
        font-size: 0.95rem !important;
        padding: 0.625rem 0.875rem !important;
    }

    .quantity-controls {
        padding: 0.375rem !important;
        gap: 0.5rem !important;
    }

    .quantity-btn {
        width: 1.75rem !important;
        height: 1.75rem !important;
        font-size: 0.875rem !important;
    }

    .quantity-value {
        min-width: 1.5rem !important;
        font-size: 0.875rem !important;
    }

    .progress-step .w-12 {
        width: 2.25rem !important;
        height: 2.25rem !important;
    }

    .progress-step i {
        font-size: 0.875rem !important;
    }

    .progress-step span {
        font-size: 0.875rem !important;
    }

    .progress-line {
        width: 2rem !important;
    }

    .form-checkbox {
        width: 1.25rem !important;
        height: 1.25rem !important;
    }

    .checkbox-label {
        font-size: 0.875rem !important;
    }

    .form-warning {
        padding: 0.75rem !important;
        font-size: 0.875rem !important;
    }

    .summary-card {
        position: static !important;
        margin-top: 1rem !important;
    }
}

@media (max-width: 480px) {
    .w-full.pr-8 {
        padding-right: 1rem !important;
    }

    .mr-4.ml-4 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .cart-item.bg-white {
        padding: 0.875rem !important;
    }

    .cart-item figure {
        width: 4rem !important;
        height: 4rem !important;
    }

    .product-title {
        font-size: 1rem !important;
    }

    .quantity-controls {
        padding: 0.25rem !important;
    }

    .quantity-btn {
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.75rem !important;
    }

    .progress-step .w-12 {
        width: 2rem !important;
        height: 2rem !important;
    }

    .progress-step i {
        font-size: 0.75rem !important;
    }

    .progress-step span {
        font-size: 0.75rem !important;
    }

    .progress-line {
        width: 1.5rem !important;
    }

    .btn-primary {
        padding: 0.625rem 1rem !important;
        font-size: 0.875rem !important;
    }

    .form-label {
        font-size: 0.875rem !important;
    }

    .error-message {
        font-size: 0.75rem !important;
    }
}

/* استایل‌های ریسپانسیو برای حالت landscape موبایل */
@media (max-height: 480px) and (orientation: landscape) {
    .cart-item.bg-white {
        padding: 0.75rem !important;
    }

    .form-input,
    .form-select {
        padding: 0.5rem 0.75rem !important;
    }

    .btn-primary {
        padding: 0.5rem 1rem !important;
    }

    .progress-step .w-12 {
        width: 1.75rem !important;
        height: 1.75rem !important;
    }
}

/* استایل‌های ریسپانسیو جدید */
@media (max-width: 1024px) {
    .grid-cols-1.md\:grid-cols-3 {
        grid-template-columns: 1fr 1fr !important;
    }

    .cart-item.bg-white {
        padding: 1.25rem !important;
    }

    .progress-step .w-12 {
        width: 2.5rem !important;
        height: 2.5rem !important;
    }

    .progress-line {
        width: 3rem !important;
    }
}

@media (max-width: 768px) {
    .grid-cols-1.md\:grid-cols-3 {
        grid-template-columns: 1fr !important;
    }

    .cart-item.bg-white {
        padding: 1rem !important;
    }

    /* استایل‌های جدید برای فرم اطلاعات گیرنده */
    #checkoutForm .grid {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }

    #checkoutForm .col-span-2 {
        grid-column: span 1 !important;
    }

    .form-input,
    .form-select {
        font-size: 0.95rem !important;
        padding: 0.625rem 0.875rem !important;
    }

    .form-label {
        font-size: 0.875rem !important;
        margin-bottom: 0.375rem !important;
    }

    .error-message {
        font-size: 0.75rem !important;
        margin-top: 0.25rem !important;
    }

    .cart-item figure {
        width: 5rem !important;
        height: 5rem !important;
        order: 1 !important;
        margin: 0 !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .quantity-controls {
        padding: 0.375rem !important;
        gap: 0.5rem !important;
    }

    .quantity-btn {
        width: 1.75rem !important;
        height: 1.75rem !important;
        font-size: 0.875rem !important;
    }

    .quantity-value {
        min-width: 1.5rem !important;
        font-size: 0.875rem !important;
    }

    .progress-step .w-12 {
        width: 2.25rem !important;
        height: 2.25rem !important;
    }

    .progress-step i {
        font-size: 0.875rem !important;
    }

    .progress-step span {
        font-size: 0.875rem !important;
    }

    .progress-line {
        width: 2rem !important;
    }

    .form-checkbox {
        width: 1.25rem !important;
        height: 1.25rem !important;
    }

    .checkbox-label {
        font-size: 0.875rem !important;
    }

    .form-warning {
        padding: 0.75rem !important;
        font-size: 0.875rem !important;
    }

    .summary-card {
        position: static !important;
        margin-top: 1rem !important;
    }
}

@media (max-width: 480px) {
    .w-full.pr-8 {
        padding-right: 1rem !important;
    }

    .mr-4.ml-4 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .cart-item.bg-white {
        padding: 0.875rem !important;
    }

    /* استایل‌های جدید برای فرم در موبایل */
    #checkoutForm .grid {
        gap: 0.75rem !important;
    }

    .form-input,
    .form-select {
        padding: 0.5rem 0.75rem !important;
        font-size: 0.875rem !important;
    }

    .form-label {
        font-size: 0.75rem !important;
        margin-bottom: 0.25rem !important;
    }

    .error-message {
        font-size: 0.7rem !important;
    }

    .cart-item figure {
        width: 4rem !important;
        height: 4rem !important;
    }

    .product-title {
        font-size: 1rem !important;
    }

    .quantity-controls {
        padding: 0.25rem !important;
    }

    .quantity-btn {
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.75rem !important;
    }

    .progress-step .w-12 {
        width: 2rem !important;
        height: 2rem !important;
    }

    .progress-step i {
        font-size: 0.75rem !important;
    }

    .progress-step span {
        font-size: 0.75rem !important;
    }

    .progress-line {
        width: 1.5rem !important;
    }

    .btn-primary {
        padding: 0.625rem 1rem !important;
        font-size: 0.875rem !important;
    }
}

/* استایل‌های ریسپانسیو برای حالت landscape موبایل */
@media (max-height: 480px) and (orientation: landscape) {
    .cart-item.bg-white {
        padding: 0.75rem !important;
    }

    /* استایل‌های جدید برای فرم در حالت landscape */
    #checkoutForm .grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 0.75rem !important;
    }

    .form-input,
    .form-select {
        padding: 0.5rem 0.75rem !important;
    }

    .btn-primary {
        padding: 0.5rem 1rem !important;
    }

    .progress-step .w-12 {
        width: 1.75rem !important;
        height: 1.75rem !important;
    }
}

/* استایل‌های ریسپانسیو برای دکمه حذف */
@media (max-width: 768px) {
    .remove-btn {
        width: 1.75rem !important;
        height: 1.75rem !important;
        font-size: 0.875rem !important;
    }
}

@media (max-width: 480px) {
    .remove-btn {
        width: 1.5rem !important;
        height: 1.5rem !important;
        font-size: 0.75rem !important;
    }

    .cart-item figure {
        width: 6rem !important;
        height: 6rem !important;
        background: white !important;
    }
}

/* استایل‌های ریسپانسیو برای عکس‌ها */
@media (max-width: 768px) {
    .cart-item figure {
        width: 5rem !important;
        height: 5rem !important;
        background: white !important;
        order: 1 !important;
        margin: 0 !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

/* استایل‌های قوی برای override کردن Tailwind */
.cart-item figure.w-32,
.cart-item figure.h-32,
.cart-item figure.md\:w-24,
.cart-item figure.md\:h-24 {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
}

.cart-item figure img.w-full,
.cart-item figure img.h-full,
.cart-item figure img.object-cover,
.cart-item figure img.rounded-lg {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* استایل‌های اضافی برای اطمینان از override */
.cart-item figure[class*="w-"],
.cart-item figure[class*="h-"],
.cart-item figure[class*="rounded"],
.cart-item figure[class*="overflow"] {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
}

.cart-item figure img[class*="w-"],
.cart-item figure img[class*="h-"],
.cart-item figure img[class*="rounded"],
.cart-item figure img[class*="object"] {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* اعمال فونت به تمام عناصر متنی */
.cart-item,
.form-input,
.form-select,
.btn,
.summary-title,
.summary-label,
.summary-value,
.summary-total,
.product-title,
.form-label,
.error-message,
.checkbox-label,
.form-warning,
.quantity-value,
.progress-step span,
.form-checkbox,
input[type="text"],
input[type="tel"],
input[type="number"],
textarea,
select,
option {
    font-family: 'Samim', sans-serif !important;
}

/* استایل نهایی برای حذف کامل باکس عکس - با بالاترین اولویت */
.cart-item figure,
.cart-item figure *,
.cart-item figure img,
.cart-item figure[class],
.cart-item figure[class] img {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
}

.cart-item figure img,
.cart-item figure[class] img {
    object-fit: contain !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

/* استایل‌های فوق‌العاده قوی برای override کردن همه کلاس‌های Tailwind */
.cart-item .w-32,
.cart-item .h-32,
.cart-item .md\:w-24,
.cart-item .md\:h-24,
.cart-item .rounded-lg,
.cart-item .overflow-hidden {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
}

.cart-item .w-full,
.cart-item .h-full,
.cart-item .object-cover,
.cart-item .rounded-lg {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

/* استایل برای نمایش کامل عکس‌ها */
.cart-item figure {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 8rem !important;
    height: 8rem !important;
    background: white !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative !important;
}

.cart-item figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

/* استایل نهایی با بالاترین اولویت - باید در انتهای فایل باشد */
.cart-item figure[class*="w-"],
.cart-item figure[class*="h-"],
.cart-item figure[class*="rounded"],
.cart-item figure[class*="overflow"],
.cart-item figure[class*="ml-"],
.cart-item figure[class*="md:"] {
    background: white !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 8rem !important;
    height: 8rem !important;
    position: relative !important;
}

.cart-item figure img[class*="w-"],
.cart-item figure img[class*="h-"],
.cart-item figure img[class*="rounded"],
.cart-item figure img[class*="object"],
.cart-item figure img[class*="transform"],
.cart-item figure img[class*="hover"] {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
}

/* استایل‌های موبایل برای مراحل سبد خرید */
@media (max-width: 768px) {
    .progress-step .w-12 {
        width: 2.25rem !important;
        height: 2.25rem !important;
    }

    .progress-step i {
        font-size: 0.875rem !important;
    }

    .progress-step span {
        font-size: 0.8rem !important;
    }

    .progress-line {
        width: 2rem !important;
    }

    /* وسط‌چین کردن مراحل در موبایل */
    .flex.justify-start.items-center.gap-4 {
        justify-content: center !important;
        width: 100% !important;
    }

    /* استایل قوی‌تر برای وسط‌چین کردن */
    .w-full.pr-8 .flex.justify-start.items-center.gap-4 {
        justify-content: center !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
    }

    /* استایل فوق‌العاده قوی برای وسط‌چین کردن */
    .w-full.pr-8>.flex {
        justify-content: center !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        padding-right: 0 !important;
        margin: 0 auto !important;
    }

    .w-full.pr-8 .flex[class*="justify-start"] {
        justify-content: center !important;
    }

    /* حذف padding-right در موبایل */
    .w-full.pr-8 {
        padding-right: 0 !important;
    }

    /* تغییر رنگ قیمت در موبایل */
    .text-blue-600 {
        color: #000000 !important;
        text-align: center !important;
    }

    /* وسط‌چین کردن container قیمت در موبایل */
    .cart-item .flex-grow .flex .flex>div:last-child .flex {
        justify-content: center !important;
        width: 100% !important;
    }
}

/* تغییر رنگ قیمت در دسکتاپ */
.text-blue-600 {
    color: #000000 !important;
}

/* استایل نهایی برای عنوان اطلاعات گیرنده - بالاترین اولویت */
.cart-item h2,
.cart-item.bg-white h2,
h2.text-xl.font-bold.mb-6.flex.items-center,
div.cart-item.bg-white.shadow-md.rounded-lg.p-8 h2 {
    color: #000000 !important;
    font-weight: 700 !important;
    font-family: 'Samim', sans-serif !important;
}

/* استایل فوق‌العاده قوی برای دکمه‌های موبایل - بالاترین اولویت */
@media (max-width: 768px) {

    /* Override کردن کلاس‌های Tailwind که باعث کشیدگی می‌شوند */
    .cart-item .quantity-controls,
    .cart-item .quantity-controls[class*="w-full"],
    .cart-item .quantity-controls[class*="flex-1"],
    .cart-item .quantity-controls[class*="flex-grow"] {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.25rem !important;
        width: auto !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: auto !important;
        padding: 0.25rem !important;
        margin: 0 !important;
        max-width: fit-content !important;
    }

    .cart-item .quantity-controls .quantity-btn,
    .cart-item .quantity-controls .quantity-btn[class*="w-full"],
    .cart-item .quantity-controls .quantity-btn[class*="flex-1"],
    .cart-item .quantity-controls .quantity-btn[class*="flex-grow"] {
        width: 1.5rem !important;
        height: 1.5rem !important;
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: 1.5rem !important;
        font-size: 0.75rem !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .cart-item .quantity-controls .quantity-value,
    .cart-item .quantity-controls .quantity-value[class*="w-full"],
    .cart-item .quantity-controls .quantity-value[class*="flex-1"],
    .cart-item .quantity-controls .quantity-value[class*="flex-grow"] {
        width: 1.5rem !important;
        height: 1.5rem !important;
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: 1.5rem !important;
        font-size: 0.75rem !important;
        text-align: center !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .cart-item .quantity-controls .remove-btn,
    .cart-item .quantity-controls .remove-btn[class*="w-full"],
    .cart-item .quantity-controls .remove-btn[class*="flex-1"],
    .cart-item .quantity-controls .remove-btn[class*="flex-grow"] {
        width: 1.5rem !important;
        height: 1.5rem !important;
        min-width: 1.5rem !important;
        max-width: 1.5rem !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: 1.5rem !important;
        font-size: 0.75rem !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Override کردن کلاس‌های Tailwind در container اصلی */
    .cart-item .flex-grow .flex .flex>div:first-child,
    .cart-item .flex-grow .flex .flex>div:first-child[class*="w-full"],
    .cart-item .flex-grow .flex .flex>div:first-child[class*="flex-1"] {
        width: auto !important;
        flex: none !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: auto !important;
        max-width: fit-content !important;
    }
}