:root {
    --primary: #ff6b00;
    --dark: #111827;
    --muted: #6b7280;
    --light: #f8fafc;
    --border: #e5e7eb;
    --success: #16a34a;
    --danger: #dc2626;
    --warning: #d97706;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: Inter, Arial, sans-serif;
    background: #f4f6f9;
    color: var(--dark);
}

a {
    color: inherit;
    text-decoration: none;
}

.header {
    background: #131921;
    color: #fff;
    padding: 14px 0;
    position: sticky;
    top: 0;
    z-index: 10;
}

.container {
    width: min(1180px, 94%);
    margin: 0 auto;
}

.nav {
    display: flex;
    align-items: center;
    gap: 18px;
    justify-content: space-between;
}

.logo {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: .2px;
}

.logo span {
    color: var(--primary);
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    font-size: 14px;
}

.nav-links a {
    opacity: .95;
}

.hero {
    background: linear-gradient(135deg, #fff7ed, #eff6ff);
    padding: 56px 0;
    border-bottom: 1px solid var(--border);
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.3fr .7fr;
    gap: 26px;
    align-items: center;
}

.hero h1 {
    font-size: 42px;
    margin: 0 0 12px;
    line-height: 1.1;
}

.hero p {
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.hero-card {
    background: #fff;
    border: 1px solid var(--border);
    box-shadow: 0 20px 50px rgba(15, 23, 42, .08);
    border-radius: 24px;
    padding: 28px;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 12px;
    border: 0;
    cursor: pointer;
    font-weight: 700;
    background: var(--primary);
    color: #fff;
    min-height: 42px;
}

.btn-dark {
    background: var(--dark);
}

.btn-light {
    background: #fff;
    color: var(--dark);
    border: 1px solid var(--border);
}

.btn-danger {
    background: var(--danger);
}

.grid {
    display: grid;
    gap: 18px;
}

.grid-4 {
    grid-template-columns: repeat(4, 1fr);
}

.grid-3 {
    grid-template-columns: repeat(3, 1fr);
}

.card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
}

.product-card {
    overflow: hidden;
    padding: 0;
}

.product-img {
    width: 100%;
    height: 210px;
    background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    font-weight: 700;
}

.product-body {
    padding: 16px;
}

.price {
    color: var(--primary);
    font-size: 20px;
    font-weight: 800;
}

.old-price {
    color: var(--muted);
    text-decoration: line-through;
    margin-left: 8px;
    font-size: 14px;
}

.badge {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    background: #eef2ff;
    color: #3730a3;
}

.badge-success {
    background: #dcfce7;
    color: #166534;
}

.badge-warning {
    background: #fef3c7;
    color: #92400e;
}

.badge-danger {
    background: #fee2e2;
    color: #991b1b;
}

.section {
    padding: 34px 0;
}

.form {
    display: grid;
    gap: 14px;
}

.form label {
    font-size: 13px;
    font-weight: 800;
    color: #374151;
}

.form input,
.form select,
.form textarea {
    width: 100%;
    padding: 12px 13px;
    border: 1px solid var(--border);
    border-radius: 12px;
    outline: 0;
    background: #fff;
}

.form textarea {
    min-height: 95px;
}

.table-wrap {
    overflow-x: auto;
}

.table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.table th,
.table td {
    border-bottom: 1px solid var(--border);
    padding: 12px;
    text-align: left;
    vertical-align: top;
    font-size: 14px;
}

.table th {
    background: #f9fafb;
    font-weight: 800;
}

.flash {
    padding: 12px 14px;
    border-radius: 12px;
    margin: 18px 0;
    font-weight: 700;
}

.flash.success {
    background: #dcfce7;
    color: #166534;
}

.flash.error {
    background: #fee2e2;
    color: #991b1b;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 20px;
}

.sidebar {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 16px;
    height: max-content;
    position: sticky;
    top: 80px;
}

.sidebar a {
    display: block;
    padding: 12px 13px;
    border-radius: 12px;
    margin-bottom: 6px;
    font-weight: 700;
}

.sidebar a:hover {
    background: #fff7ed;
    color: var(--primary);
}

.stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.stat h3 {
    margin: 0;
    font-size: 28px;
}

.stat p {
    color: var(--muted);
    margin: 6px 0 0;
}

.footer {
    padding: 28px 0;
    color: var(--muted);
    text-align: center;
}

.product-img {
    width: 100%;
    height: 210px;
    background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    font-weight: 700;
    overflow: hidden;
}

.product-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 10px;
    background: #fff;
}

.product-detail-img {
    height: 420px;
}

.admin-product-thumb {
    width: 70px;
    height: 70px;
    border-radius: 12px;
    object-fit: contain;
    background: #fff;
    border: 1px solid var(--border);
    padding: 5px;
}

@media (max-width: 900px) {
    .hero-grid,
    .dashboard-grid {
        grid-template-columns: 1fr;
    }

    .grid-4,
    .grid-3,
    .stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .hero h1 {
        font-size: 32px;
    }
}

@media (max-width: 560px) {
    .grid-4,
    .grid-3,
    .stats {
        grid-template-columns: 1fr;
    }

    .nav {
        align-items: flex-start;
        flex-direction: column;
    }

    .hero {
        padding: 34px 0;
    }
}

.seller-verification-table td {
    min-width: 170px;
}

.seller-doc-link {
    padding: 8px;
    border: 1px solid var(--border);
    border-radius: 10px;
    margin-bottom: 8px;
    background: #f9fafb;
}

.seller-doc-link a {
    color: var(--primary);
    font-weight: 800;
}

.address-card {
    border-left: 5px solid var(--primary);
}

.address-select-card {
    display: flex !important;
    gap: 12px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: #fff;
    cursor: pointer;
    margin-bottom: 12px;
}

.address-select-card input {
    width: auto !important;
    margin-top: 4px;
}

.address-select-card:hover {
    border-color: var(--primary);
    background: #fff7ed;
}

.checkout-item {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--border);
}

@media (max-width: 900px) {
    .grid[style*="420px"] {
        grid-template-columns: 1fr !important;
    }

    .grid[style*="1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
}

.invoice-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-bottom: 16px;
}

.invoice-box {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 28px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}

.invoice-header {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    border-bottom: 2px solid var(--dark);
    padding-bottom: 18px;
    margin-bottom: 18px;
}

.invoice-header h1 {
    margin: 0;
    font-size: 30px;
}

.invoice-title {
    text-align: right;
}

.invoice-title h2 {
    margin: 0 0 8px;
    letter-spacing: 1px;
}

.invoice-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-bottom: 18px;
}

.invoice-card,
.invoice-payment-card {
    background: #f9fafb;
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 16px;
}

.invoice-card h3 {
    margin-top: 0;
}

.invoice-payment-card {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.invoice-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.invoice-table th,
.invoice-table td {
    border: 1px solid var(--border);
    padding: 10px;
    text-align: left;
    vertical-align: top;
}

.invoice-table th {
    background: #f3f4f6;
}

.invoice-total-wrap {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 18px;
    margin-top: 18px;
}

.invoice-note {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 14px;
    padding: 16px;
}

.invoice-total-card {
    border: 1px solid var(--border);
    border-radius: 14px;
    overflow: hidden;
}

.invoice-total-card div {
    display: flex;
    justify-content: space-between;
    padding: 12px 14px;
    border-bottom: 1px solid var(--border);
}

.invoice-total-card div:last-child {
    border-bottom: 0;
}

.invoice-total-card .grand-total {
    background: var(--dark);
    color: #fff;
    font-size: 18px;
}

.invoice-footer {
    text-align: center;
    margin-top: 24px;
    color: var(--muted);
    border-top: 1px solid var(--border);
    padding-top: 16px;
}

@media (max-width: 900px) {
    .invoice-header,
    .invoice-grid,
    .invoice-total-wrap {
        grid-template-columns: 1fr;
        display: grid;
    }

    .invoice-title {
        text-align: left;
    }
}

@media print {
    body {
        background: #fff !important;
    }

    .header,
    .footer,
    .no-print,
    .flash {
        display: none !important;
    }

    .container {
        width: 100% !important;
        max-width: 100% !important;
    }

    .section {
        padding: 0 !important;
    }

    .invoice-box {
        border: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
    }

    .invoice-table th,
    .invoice-table td {
        font-size: 12px;
        padding: 7px;
    }
}

.return-history-row {
    border-left: 4px solid var(--primary);
    padding: 12px 14px;
    margin-bottom: 12px;
    background: #f9fafb;
    border-radius: 12px;
}

.return-history-row p {
    margin: 6px 0;
}

.return-history-row small {
    color: var(--muted);
}

.header-search {
    flex: 1;
    max-width: 460px;
    display: flex;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #374151;
}

.header-search input {
    flex: 1;
    border: 0;
    padding: 11px 12px;
    outline: 0;
    font-size: 14px;
}

.header-search button {
    border: 0;
    background: var(--primary);
    color: #fff;
    padding: 0 16px;
    font-weight: 800;
    cursor: pointer;
}

.products-page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.products-page-head h1 {
    margin-bottom: 0;
}

.product-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 20px;
    align-items: flex-start;
}

.product-filter-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
    position: sticky;
    top: 86px;
}

.product-filter-card h2 {
    margin-top: 0;
}

.filter-check {
    display: flex !important;
    align-items: center;
    gap: 8px;
    font-weight: 700;
}

.filter-check input {
    width: auto !important;
}

.search-result-card {
    margin-bottom: 16px;
    background: #fff7ed;
    border-color: #fed7aa;
}

@media (max-width: 1000px) {
    .header-search {
        order: 3;
        width: 100%;
        max-width: 100%;
    }

    .product-layout {
        grid-template-columns: 1fr;
    }

    .product-filter-card {
        position: static;
    }
}

@media (max-width: 560px) {
    .products-page-head {
        align-items: flex-start;
        flex-direction: column;
    }
}

.product-img-wrap {
    position: relative;
}

.wishlist-floating-form {
    position: absolute;
    top: 10px;
    right: 10px;
}

.wishlist-btn {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: var(--danger);
    box-shadow: 0 8px 25px rgba(15, 23, 42, .15);
    cursor: pointer;
    font-size: 24px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wishlist-btn.active {
    background: var(--danger);
    color: #fff;
}

.wishlist-btn:hover {
    transform: scale(1.05);
}

.stars {
    color: #f59e0b;
    font-size: 16px;
    letter-spacing: 1px;
    white-space: nowrap;
}

.rating-line {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0;
}

.rating-line small {
    color: var(--muted);
}

.product-rating-summary {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 16px;
    padding: 14px;
    margin: 14px 0;
}

.rating-big {
    width: 74px;
    height: 74px;
    border-radius: 18px;
    background: #f59e0b;
    color: #fff;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
}

.big-stars {
    font-size: 22px;
}

.review-card {
    border-left: 5px solid #f59e0b;
}

.coupon-applied-box {
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    color: #166534;
    border-radius: 14px;
    padding: 14px;
    margin-bottom: 12px;
}

.order-summary-total {
    margin-top: 14px;
    border-top: 1px solid var(--border);
}

.order-summary-total div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
}

.order-summary-total .grand {
    font-size: 18px;
    color: var(--dark);
}

.dashboard-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 18px;
}

.dashboard-head h1 {
    margin: 0;
}

.dashboard-head p {
    color: var(--muted);
    margin: 6px 0 0;
}

.analytics-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 18px;
}

.analytics-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
    position: relative;
    overflow: hidden;
}

.analytics-card::before {
    content: "";
    position: absolute;
    width: 90px;
    height: 90px;
    right: -30px;
    top: -30px;
    background: #f3f4f6;
    border-radius: 50%;
}

.analytics-card span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
    display: block;
    margin-bottom: 8px;
    position: relative;
    z-index: 1;
}

.analytics-card strong {
    font-size: 28px;
    display: block;
    position: relative;
    z-index: 1;
}

.analytics-card a {
    display: inline-block;
    margin-top: 10px;
    color: var(--primary);
    font-weight: 800;
    position: relative;
    z-index: 1;
}

.analytics-card.primary {
    background: linear-gradient(135deg, #111827, #374151);
    color: #fff;
}

.analytics-card.primary span {
    color: #e5e7eb;
}

.analytics-card.primary::before {
    background: rgba(255,255,255,.12);
}

.analytics-card.warning {
    border-color: #fed7aa;
    background: #fff7ed;
}

.analytics-card.warning::before {
    background: #ffedd5;
}

.analytics-card.danger {
    border-color: #fecaca;
    background: #fef2f2;
}

.analytics-card.danger::before {
    background: #fee2e2;
}

.analytics-section-grid {
    margin-top: 18px;
}

@media (max-width: 1100px) {
    .analytics-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 620px) {
    .dashboard-head {
        flex-direction: column;
    }

    .analytics-grid {
        grid-template-columns: 1fr;
    }
}

.user-profile-head {
    display: flex;
    align-items: center;
    gap: 18px;
}

.user-avatar {
    width: 78px;
    height: 78px;
    border-radius: 24px;
    background: linear-gradient(135deg, var(--primary), #111827);
    color: #fff;
    font-size: 34px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 14px 35px rgba(15, 23, 42, .18);
}

.user-profile-head h2 {
    margin: 0 0 6px;
}

.user-profile-head p {
    margin: 0 0 10px;
    color: var(--muted);
}

.admin-tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 18px 0;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 10px;
}

.admin-tabs a {
    padding: 10px 14px;
    border-radius: 12px;
    background: #f9fafb;
    font-weight: 800;
    color: var(--dark);
}

.admin-tabs a:hover {
    background: #fff7ed;
    color: var(--primary);
}

@media (max-width: 620px) {
    .user-profile-head {
        align-items: flex-start;
        flex-direction: column;
    }
}

.site-logo-img {
    max-height: 42px;
    max-width: 190px;
    object-fit: contain;
    display: block;
}

.settings-switch-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.settings-switch-card {
    display: flex !important;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: #f9fafb;
    cursor: pointer;
}

.settings-switch-card input {
    width: auto !important;
    margin-top: 5px;
}

.settings-switch-card strong {
    display: block;
    margin-bottom: 4px;
}

.settings-switch-card p {
    margin: 0;
    color: var(--muted);
}

@media (max-width: 700px) {
    .settings-switch-grid {
        grid-template-columns: 1fr;
    }
}

.home-hero-wrap {
    padding: 28px 0;
    background: linear-gradient(135deg, #fff7ed, #f9fafb);
}

.home-banner-grid {
    display: grid;
    grid-template-columns: 1.4fr .9fr;
    gap: 18px;
}

.home-banner-card {
    min-height: 260px;
    background: linear-gradient(135deg, #111827, #374151);
    color: #fff;
    border-radius: 26px;
    padding: 28px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
}

.home-banner-card:not(.featured) {
    grid-template-columns: 1fr;
    min-height: 260px;
    background: linear-gradient(135deg, #ff6b00, #fb923c);
}

.home-banner-content {
    position: relative;
    z-index: 2;
}

.banner-label {
    display: inline-block;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.25);
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 14px;
}

.home-banner-card h1 {
    font-size: 38px;
    line-height: 1.05;
    margin: 0 0 12px;
}

.home-banner-card:not(.featured) h1 {
    font-size: 28px;
}

.home-banner-card p {
    color: rgba(255,255,255,.84);
    font-size: 16px;
    line-height: 1.7;
}

.home-banner-image {
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-banner-image img {
    max-width: 100%;
    max-height: 230px;
    object-fit: contain;
    filter: drop-shadow(0 18px 25px rgba(0,0,0,.25));
}

.home-banner-graphic {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 190px;
    border: 1px solid rgba(255,255,255,.15);
    background: rgba(255,255,255,.08);
    border-radius: 24px;
}

.home-banner-graphic span {
    font-size: 24px;
    font-weight: 900;
    opacity: .9;
}

.section-head {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-end;
    margin-bottom: 18px;
}

.section-head h2 {
    margin: 0;
}

.section-head p {
    color: var(--muted);
    margin: 6px 0 0;
}

.admin-banner-thumb {
    width: 110px;
    height: 70px;
    object-fit: cover;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: #fff;
}

.admin-banner-placeholder {
    width: 110px;
    height: 70px;
    border-radius: 12px;
    border: 1px dashed var(--border);
    background: #f9fafb;
    color: var(--muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.banner-preview-box {
    width: 100%;
    max-width: 500px;
    height: 180px;
    border: 1px solid var(--border);
    border-radius: 18px;
    overflow: hidden;
    background: #f9fafb;
}

.banner-preview-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 1000px) {
    .home-banner-grid {
        grid-template-columns: 1fr;
    }

    .home-banner-card {
        grid-template-columns: 1fr;
    }

    .home-banner-card h1 {
        font-size: 30px;
    }
}

@media (max-width: 650px) {
    .section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-banner-card {
        padding: 22px;
        border-radius: 20px;
    }

    .home-banner-card h1 {
        font-size: 26px;
    }
}

.product-gallery-admin-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.product-gallery-admin-item {
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 12px;
    background: #fff;
}

.gallery-img-box {
    width: 100%;
    height: 150px;
    border-radius: 14px;
    overflow: hidden;
    background: #f9fafb;
    border: 1px solid var(--border);
    margin-bottom: 10px;
}

.gallery-img-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #fff;
}

.product-detail-gallery {
    display: grid;
    gap: 14px;
}

.product-main-image {
    width: 100%;
    height: 440px;
    border-radius: 18px;
    border: 1px solid var(--border);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.product-main-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 12px;
}

.product-thumb-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.product-thumb-btn {
    width: 78px;
    height: 78px;
    border: 2px solid var(--border);
    border-radius: 14px;
    background: #fff;
    padding: 4px;
    cursor: pointer;
    overflow: hidden;
}

.product-thumb-btn img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-thumb-btn.active,
.product-thumb-btn:hover {
    border-color: var(--primary);
}

.admin-product-gallery-strip {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.admin-product-gallery-thumb {
    width: 74px;
    height: 74px;
    border: 2px solid var(--border);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}

.admin-product-gallery-thumb.active {
    border-color: var(--primary);
}

.admin-product-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
}

@media (max-width: 1000px) {
    .product-gallery-admin-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .product-main-image {
        height: 340px;
    }
}

@media (max-width: 560px) {
    .product-gallery-admin-grid {
        grid-template-columns: 1fr;
    }

    .product-main-image {
        height: 280px;
    }
}

.variant-info-box {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    padding: 12px 14px;
    margin: 12px 0;
    color: #1e40af;
}

.variant-info-box p {
    margin: 6px 0 0;
}

.table input,
.table select {
    min-width: 110px;
}

.shipment-box {
    background: #f8fafc;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
}

.tracking-timeline {
    position: relative;
    display: grid;
    gap: 16px;
}

.tracking-step {
    display: grid;
    grid-template-columns: 24px 1fr;
    gap: 12px;
    position: relative;
}

.tracking-step:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 10px;
    top: 25px;
    width: 2px;
    height: calc(100% + 10px);
    background: var(--border);
}

.tracking-dot {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #e5e7eb;
    border: 4px solid #fff;
    box-shadow: 0 0 0 1px var(--border);
    position: relative;
    z-index: 2;
}

.tracking-dot.active,
.tracking-step:first-child .tracking-dot {
    background: var(--primary);
    box-shadow: 0 0 0 4px #ffedd5;
}

.tracking-step p {
    margin: 4px 0;
    color: var(--muted);
}

.tracking-step small {
    color: var(--muted);
}

.notification-list {
    display: grid;
    gap: 14px;
}

.notification-card {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 14px;
    align-items: flex-start;
}

.notification-card.unread {
    border-left: 5px solid var(--primary);
    background: #fff7ed;
}

.notification-icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--dark);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.notification-card.unread .notification-icon {
    background: var(--primary);
}

.notification-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.notification-head h3 {
    margin: 0;
}

.notification-content p {
    margin: 8px 0;
    color: var(--muted);
}

.notification-content small {
    color: var(--muted);
}

@media (max-width: 620px) {
    .notification-card {
        grid-template-columns: 1fr;
    }

    .notification-head {
        flex-direction: column;
    }
}

.support-thread {
    display: grid;
    gap: 14px;
    margin-top: 18px;
}

.support-message {
    display: flex;
}

.support-message.mine {
    justify-content: flex-end;
}

.support-message.other {
    justify-content: flex-start;
}

.support-message-card {
    width: min(720px, 100%);
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
}

.support-message.mine .support-message-card {
    background: #fff7ed;
    border-color: #fed7aa;
}

.support-message.other .support-message-card {
    background: #f8fafc;
}

.support-message-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.support-message-card p {
    color: #374151;
    line-height: 1.7;
}

.support-message-card small {
    color: var(--muted);
}

.qa-list {
    display: grid;
    gap: 14px;
}

.qa-card {
    border-left: 5px solid var(--primary);
}

.qa-row {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: flex-start;
}

.qa-row span {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--dark);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.qa-row.question span {
    background: var(--primary);
}

.qa-row.answer {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.qa-row.answer span {
    background: #16a34a;
}

.qa-row p {
    margin: 0;
    color: #374151;
    line-height: 1.7;
}

.qa-row small {
    display: block;
    margin-top: 6px;
    color: var(--muted);
}

.qa-pending {
    margin-top: 14px;
    padding: 12px;
    border-radius: 12px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
    font-weight: 700;
}

.compare-wrap {
    overflow-x: auto;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
}

.compare-table {
    width: 100%;
    min-width: 900px;
    border-collapse: collapse;
}

.compare-table th,
.compare-table td {
    border-bottom: 1px solid var(--border);
    border-right: 1px solid var(--border);
    padding: 16px;
    vertical-align: top;
    text-align: center;
}

.compare-table th {
    width: 190px;
    background: #f9fafb;
    text-align: left;
    font-weight: 900;
    color: var(--dark);
    position: sticky;
    left: 0;
    z-index: 2;
}

.compare-table td {
    min-width: 230px;
}

.compare-product-head {
    display: grid;
    gap: 12px;
    justify-items: center;
}

.compare-product-img {
    width: 170px;
    height: 170px;
    border-radius: 18px;
    border: 1px solid var(--border);
    background: #fff;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.compare-product-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 10px;
}

.compare-product-head h3 {
    margin: 0;
    font-size: 16px;
}

.compare-price {
    font-size: 22px;
    color: var(--primary);
}

@media (max-width: 700px) {
    .compare-table {
        min-width: 760px;
    }

    .compare-product-img {
        width: 130px;
        height: 130px;
    }
}

.product-spec-table th {
    width: 260px;
    background: #f9fafb;
    color: var(--dark);
    font-weight: 900;
}

.product-spec-table td {
    color: #374151;
}

.compare-section-title {
    background: #111827 !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 18px;
}

.autocomplete-search {
    position: relative;
    z-index: 50;
}

.search-input-wrap {
    position: relative;
    flex: 1;
}

.search-input-wrap input {
    width: 100%;
}

.search-suggestion-box {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 20px 60px rgba(15, 23, 42, .18);
    overflow: hidden;
    max-height: 460px;
    overflow-y: auto;
    z-index: 999;
}

.search-suggestion-box.active {
    display: block;
}

.suggestion-section {
    padding: 12px;
    border-bottom: 1px solid var(--border);
}

.suggestion-section h4 {
    margin: 0 0 10px;
    font-size: 13px;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.suggestion-product {
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 10px;
    align-items: center;
    padding: 9px;
    border-radius: 12px;
    color: var(--dark);
}

.suggestion-product:hover {
    background: #fff7ed;
}

.suggestion-product img {
    width: 54px;
    height: 54px;
    object-fit: contain;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: #fff;
}

.suggestion-product strong {
    display: block;
    font-size: 14px;
}

.suggestion-product small {
    display: block;
    color: var(--muted);
    margin-top: 3px;
}

.suggestion-chip {
    display: inline-block;
    padding: 9px 12px;
    margin: 4px;
    border-radius: 999px;
    background: #f9fafb;
    color: var(--dark);
    border: 1px solid var(--border);
    font-weight: 800;
    font-size: 13px;
}

.suggestion-chip:hover {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

.suggestion-footer {
    padding: 12px;
    background: #f9fafb;
    text-align: center;
}

.suggestion-footer a {
    font-weight: 900;
    color: var(--primary);
}

.suggestion-loading,
.suggestion-empty {
    padding: 18px;
    color: var(--muted);
    text-align: center;
}

.suggestion-empty a {
    color: var(--primary);
    font-weight: 900;
    display: block;
    margin-top: 8px;
}

@media (max-width: 760px) {
    .search-suggestion-box {
        position: fixed;
        top: 96px;
        left: 12px;
        right: 12px;
        max-height: calc(100vh - 130px);
        border-radius: 18px;
    }

    .suggestion-product {
        grid-template-columns: 48px 1fr;
    }

    .suggestion-product img {
        width: 48px;
        height: 48px;
    }
}
.search-chip-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 16px;
    margin-bottom: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .04);
}

.search-chip-section {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 10px;
}

.search-chip-section:last-child {
    margin-bottom: 0;
}

.search-chip-section strong {
    margin-right: 4px;
}

.search-chip-section a,
.popular-search-chips a {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    padding: 9px 13px;
    border-radius: 999px;
    background: #f9fafb;
    border: 1px solid var(--border);
    color: var(--dark);
    font-weight: 800;
    font-size: 13px;
}

.search-chip-section a:hover,
.popular-search-chips a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.popular-search-chips {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.popular-search-chips small {
    background: rgba(255,255,255,.45);
    padding: 2px 6px;
    border-radius: 999px;
}

.products-page {
    padding-top: 22px;
}

.products-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 22px;
    align-items: start;
}

.products-filter-panel {
    position: sticky;
    top: 110px;
    max-height: calc(100vh - 130px);
    overflow-y: auto;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, .05);
}

.filter-panel-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
}

.filter-panel-head h2 {
    margin: 0;
}

.filter-close-btn {
    display: none;
    border: 0;
    background: #111827;
    color: #fff;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.mobile-filter-toggle {
    display: none;
}

.checkbox-filter {
    display: flex !important;
    align-items: center;
    gap: 9px;
    padding: 8px 0;
    cursor: pointer;
    font-weight: 800;
}

.checkbox-filter input {
    width: auto !important;
}

.filter-group {
    border-top: 1px solid var(--border);
    margin-top: 14px;
    padding-top: 14px;
}

.filter-group h3 {
    margin: 0 0 10px;
    font-size: 16px;
}

.filter-subgroup {
    margin-bottom: 14px;
}

.filter-subgroup strong {
    display: block;
    margin-bottom: 6px;
    color: var(--dark);
}

.products-content {
    min-width: 0;
}

.products-search-card {
    margin-bottom: 18px;
    border-radius: 18px;
}

.products-result-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 16px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 13px 16px;
}

.discount-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: #dc2626;
    color: #fff;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 900;
}

.product-img {
    position: relative;
}

.filter-overlay {
    display: none;
}

@media (max-width: 1050px) {
    .products-layout {
        grid-template-columns: 1fr;
    }

    .mobile-filter-toggle {
        display: inline-flex;
    }

    .products-filter-panel {
        position: fixed;
        top: 0;
        left: -340px;
        width: 320px;
        height: 100vh;
        max-height: 100vh;
        z-index: 9999;
        border-radius: 0 22px 22px 0;
        transition: left .25s ease;
    }

    body.filters-open .products-filter-panel {
        left: 0;
    }

    .filter-close-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    body.filters-open .filter-overlay {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(15, 23, 42, .45);
        z-index: 9998;
    }
}

@media (max-width: 700px) {
    .products-result-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .products-filter-panel {
        width: 88vw;
        left: -92vw;
    }

    .products-grid {
        grid-template-columns: 1fr !important;
    }
}

.inventory-update-form {
    margin: 0;
}

.inventory-update-grid {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 12px;
    align-items: end;
}

.inventory-update-grid label {
    display: block;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 6px;
}

.inventory-update-grid input {
    width: 100%;
}

.inventory-update-action {
    display: flex;
    align-items: end;
}

@media (max-width: 760px) {
    .inventory-update-grid {
        grid-template-columns: 1fr;
    }

    .inventory-update-action .btn {
        width: 100%;
    }
}

.grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

@media (max-width: 1100px) {
    .grid-5 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 650px) {
    .grid-5 {
        grid-template-columns: 1fr;
    }
}

.bulk-instruction-list {
    margin: 0;
    padding-left: 20px;
    color: #374151;
    line-height: 1.8;
}

.bulk-instruction-list li {
    margin-bottom: 6px;
}

.bulk-error-box {
    margin-top: 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    border-radius: 16px;
    padding: 14px;
    max-height: 260px;
    overflow-y: auto;
}

.bulk-error-box h3 {
    margin-top: 0;
}

.sc-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: #fff;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .08);
}

.sc-header-main {
    background: linear-gradient(135deg, #ffffff 0%, #fff7ed 100%);
    border-bottom: 1px solid #fde7d3;
}

.sc-header-grid {
    min-height: 78px;
    display: grid;
    grid-template-columns: 180px 150px 1fr auto;
    gap: 14px;
    align-items: center;
}

.sc-brand {
    width: 175px;
    min-width: 175px;
    height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    overflow: hidden;
}

.sc-brand-img {
    width: auto;
    max-width: 170px;
    max-height: 58px;
    object-fit: contain;
    display: block;
}

.sc-brand span {
    font-size: 26px;
    line-height: 1;
    font-weight: 1000;
    background: linear-gradient(135deg, #111827, #ff6500);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.sc-location-btn {
    height: 48px;
    border: 1px solid #fed7aa;
    background: #fff;
    color: #111827;
    border-radius: 16px;
    padding: 8px 11px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 7px;
    align-items: center;
    text-align: left;
    cursor: pointer;
    max-width: 150px;
}

.sc-location-btn:hover {
    border-color: #ff6500;
    box-shadow: 0 8px 22px rgba(255, 101, 0, .12);
}

.sc-location-icon {
    font-size: 18px;
}

.sc-location-btn small {
    display: block;
    color: #6b7280;
    font-size: 11px;
    line-height: 1.1;
}

.sc-location-btn strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.15;
    max-width: 94px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sc-search {
    display: grid;
    grid-template-columns: 1fr 112px;
    height: 46px;
    border: 2px solid #ff6500;
    border-radius: 999px;
    overflow: visible;
    background: #fff;
    position: relative;
    z-index: 10000;
}

.sc-search-wrap {
    position: relative;
}

.sc-search input {
    width: 100%;
    height: 42px;
    border: 0;
    outline: none;
    padding: 0 18px;
    border-radius: 999px 0 0 999px;
    font-size: 15px;
    color: #111827;
    background: #fff;
}

.sc-search button {
    height: 42px;
    border: 0;
    background: #ff6500;
    color: #fff;
    border-radius: 0 999px 999px 0;
    font-weight: 900;
    cursor: pointer;
}

.sc-search button:hover {
    background: #ea580c;
}

.sc-header-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sc-header-action {
    display: grid;
    gap: 2px;
    text-decoration: none;
    color: #111827;
    padding: 9px 10px;
    border-radius: 14px;
    border: 1px solid transparent;
    min-width: 86px;
    line-height: 1.1;
}

.sc-header-action:hover {
    background: #fff;
    border-color: #fed7aa;
}

.sc-header-action span {
    color: #6b7280;
    font-size: 12px;
    max-width: 130px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sc-header-action strong {
    color: #111827;
    font-size: 14px;
    font-weight: 900;
}

.sc-cart-link {
    position: relative;
    display: flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    background: #111827;
    color: #fff;
    padding: 10px 13px;
    border-radius: 16px;
    font-weight: 900;
}

.sc-cart-icon {
    font-size: 21px;
}

.sc-cart-count {
    position: absolute;
    top: -7px;
    left: 27px;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ff6500;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
}

.sc-mobile-toggle {
    display: none;
    border: 0;
    background: #ff6500;
    color: #fff;
    border-radius: 12px;
    width: 42px;
    height: 42px;
    font-size: 20px;
    cursor: pointer;
}

.sc-nav-bar {
    background: #111827;
}

.sc-nav-inner {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.sc-nav-links {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 4px;
    overflow-x: auto;
    scrollbar-width: none;
}

.sc-nav-links::-webkit-scrollbar {
    display: none;
}

.sc-nav-links a {
    color: #f9fafb;
    text-decoration: none;
    padding: 12px 10px;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
    border-bottom: 3px solid transparent;
}

.sc-nav-links a:hover {
    color: #ffb46b;
    border-bottom-color: #ff6500;
}

.sc-nav-highlight {
    color: #ffb46b;
    font-weight: 1000;
    white-space: nowrap;
}

.sc-mobile-menu,
.sc-mobile-overlay {
    display: none;
}

.sc-mobile-location {
    width: 100%;
    border: 0;
    background: #fff7ed;
    color: #111827;
    padding: 14px 17px;
    text-align: left;
    font-weight: 900;
    border-bottom: 1px solid #fed7aa;
    cursor: pointer;
}

.search-suggestion-box {
    z-index: 10002 !important;
}

.sc-location-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 12000;
}

.sc-location-modal.active {
    display: block;
}

.sc-location-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .55);
}

.sc-location-card {
    position: relative;
    width: min(460px, calc(100% - 28px));
    margin: 90px auto 0;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
    padding: 20px;
    animation: scLocationIn .18s ease-out;
}

@keyframes scLocationIn {
    from {
        transform: translateY(-12px);
        opacity: .6;
    }

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

.sc-location-card-head {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.sc-location-card-head h3 {
    margin: 0;
    font-size: 22px;
    color: #111827;
}

.sc-location-card-head p {
    margin: 6px 0 0;
    color: #6b7280;
    line-height: 1.5;
}

.sc-location-card-head button {
    border: 0;
    background: #111827;
    color: #fff;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
}

.sc-detect-location-btn {
    width: 100%;
    border: 0;
    background: linear-gradient(135deg, #ff6500, #fb923c);
    color: #fff;
    border-radius: 16px;
    padding: 14px 16px;
    display: flex;
    justify-content: center;
    gap: 8px;
    align-items: center;
    font-size: 15px;
    cursor: pointer;
}

.sc-location-status {
    min-height: 22px;
    margin-top: 10px;
    font-size: 13px;
    color: #6b7280;
}

.sc-location-status.error {
    color: #dc2626;
    font-weight: 800;
}

.sc-location-status.loading {
    color: #ea580c;
    font-weight: 800;
}

.sc-location-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #6b7280;
    margin: 12px 0;
    font-size: 13px;
}

.sc-location-divider::before,
.sc-location-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e5e7eb;
}

.sc-location-form {
    display: grid;
    gap: 9px;
}

.sc-location-form label {
    font-weight: 900;
    color: #111827;
    font-size: 13px;
}

.sc-location-form input {
    width: 100%;
    height: 44px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 0 13px;
    outline: none;
}

.sc-location-form input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .11);
}

.sc-location-form button {
    margin-top: 6px;
    height: 44px;
    border: 0;
    border-radius: 14px;
    background: #111827;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

@media (max-width: 1180px) {
    .sc-header-grid {
        grid-template-columns: 160px 135px 1fr auto;
        gap: 10px;
    }

    .sc-brand {
        width: 155px;
        min-width: 155px;
        height: 62px;
    }

    .sc-brand-img {
        max-width: 142px;
        max-height: 52px;
    }

    .sc-header-action {
        display: none;
    }

    .sc-nav-highlight {
        display: none;
    }
}

@media (max-width: 860px) {
    .sc-header-grid {
        grid-template-columns: 145px 1fr auto;
        gap: 10px;
        padding: 8px 0;
    }

    .sc-brand {
        width: 140px;
        min-width: 140px;
        height: 52px;
        justify-content: flex-start;
    }

    .sc-brand-img {
        max-width: 132px;
        max-height: 44px;
    }

    .sc-location-btn {
        display: none;
    }
}

@media (max-width: 520px) {
    .sc-header-grid {
        grid-template-columns: 130px 1fr auto;
    }

    .sc-brand {
        width: 125px;
        min-width: 125px;
        height: 48px;
    }

    .sc-brand-img {
        max-width: 118px;
        max-height: 40px;
    }

    .sc-brand span {
        font-size: 20px;
    }
}

/* =========================================================
   FINAL MOBILE HEADER FIX
   ========================================================= */

@media (max-width: 860px) {
    .sc-header {
        position: sticky;
        top: 0;
        z-index: 9999;
    }

    .sc-header-main {
        background: #111827;
        border-bottom: 0;
    }

    .sc-header-grid {
        min-height: auto;
        display: grid;
        grid-template-columns: 120px 1fr auto auto;
        gap: 8px;
        align-items: center;
        padding: 8px 0 10px;
    }

    .sc-brand {
        width: 118px;
        min-width: 118px;
        height: 42px;
        justify-content: flex-start;
    }

    .sc-brand-img {
        max-width: 110px;
        max-height: 36px;
        object-fit: contain;
    }

    .sc-brand span {
        font-size: 18px;
        color: #fff;
        background: none;
        -webkit-text-fill-color: #fff;
    }

    /* show login/account on mobile as small icon card */
    .sc-header-actions {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 7px;
        grid-column: 2 / -1;
    }

    .sc-header-action {
        display: inline-flex !important;
        min-width: auto;
        width: 42px;
        height: 42px;
        padding: 0;
        border-radius: 14px;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, .08);
        border: 1px solid rgba(255, 255, 255, .12);
        color: #fff;
    }

    .sc-header-action span {
        display: none;
    }

    .sc-header-action strong {
        font-size: 0;
        color: #fff;
    }

    .sc-header-action strong::before {
        content: "👤";
        font-size: 20px;
        line-height: 1;
    }

    .sc-header-action[href*="logout"] {
        display: none !important;
    }

    .sc-cart-link {
        width: 50px;
        height: 42px;
        padding: 0;
        border-radius: 14px;
        justify-content: center;
        background: rgba(255, 255, 255, .1);
        border: 1px solid rgba(255, 255, 255, .12);
    }

    .sc-cart-link strong {
        display: none;
    }

    .sc-cart-icon {
        font-size: 22px;
    }

    .sc-cart-count {
        top: -8px;
        right: -5px;
        left: auto;
        min-width: 21px;
        height: 21px;
        border-color: #111827;
    }

    .sc-mobile-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 46px;
        height: 42px;
        border-radius: 14px;
        background: #ff6500;
        color: #fff;
        font-size: 22px;
        border: 0;
    }

    /* search full width below top row */
    .sc-search {
        grid-column: 1 / -1;
        grid-row: 2;
        display: grid;
        grid-template-columns: 1fr 76px;
        height: 46px;
        border: 0;
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
        margin-top: 4px;
    }

    .sc-search input {
        height: 46px;
        border-radius: 0;
        padding: 0 14px;
        font-size: 14px;
    }

    .sc-search button {
        height: 46px;
        border-radius: 0;
        background: #ffb15c;
        color: #111827;
        font-size: 13px;
        font-weight: 900;
    }

    /* location as full row below search */
    .sc-location-btn {
        display: grid !important;
        grid-column: 1 / -1;
        grid-row: 3;
        max-width: none;
        width: 100%;
        height: 42px;
        border-radius: 0;
        background: #243447;
        border: 0;
        color: #fff;
        margin-top: 2px;
        padding: 8px 12px;
        grid-template-columns: auto 1fr;
    }

    .sc-location-btn small {
        color: #cbd5e1;
        font-size: 11px;
    }

    .sc-location-btn strong {
        max-width: 100%;
        color: #fff;
        font-size: 14px;
    }

    .sc-location-icon {
        font-size: 18px;
    }

    /* hide desktop nav on mobile */
    .sc-nav-bar {
        display: none !important;
    }

    .sc-nav-links {
        display: none !important;
    }

    .sc-nav-highlight {
        display: none !important;
    }

    /* mobile side menu */
    .sc-mobile-menu {
        display: block;
        position: fixed;
        top: 0;
        left: -320px;
        width: 310px;
        max-width: 86vw;
        height: 100vh;
        background: #fff;
        z-index: 10004;
        transition: left .25s ease;
        box-shadow: 14px 0 40px rgba(15, 23, 42, .25);
        overflow-y: auto;
    }

    body.sc-menu-open .sc-mobile-menu {
        left: 0;
    }

    .sc-mobile-head {
        background: linear-gradient(135deg, #111827, #ff6500);
        color: #fff;
        padding: 17px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .sc-mobile-head button {
        border: 0;
        background: rgba(255,255,255,.16);
        color: #fff;
        font-size: 26px;
        width: 38px;
        height: 38px;
        border-radius: 50%;
        cursor: pointer;
    }

    .sc-mobile-menu a {
        display: block;
        padding: 14px 17px;
        color: #111827;
        text-decoration: none;
        font-weight: 850;
        border-bottom: 1px solid #f1f5f9;
    }

    .sc-mobile-menu a:hover {
        background: #fff7ed;
        color: #ff6500;
    }

    .sc-mobile-location {
        display: block;
        width: 100%;
        border: 0;
        background: #fff7ed;
        color: #111827;
        padding: 14px 17px;
        text-align: left;
        font-weight: 900;
        border-bottom: 1px solid #fed7aa;
        cursor: pointer;
    }

    .sc-mobile-overlay {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(15, 23, 42, .48);
        z-index: 10003;
    }

    body.sc-menu-open .sc-mobile-overlay {
        display: block;
    }

    .search-suggestion-box {
        position: fixed !important;
        top: 102px !important;
        left: 12px !important;
        right: 12px !important;
        max-height: calc(100vh - 150px);
        z-index: 10020 !important;
    }
}

@media (max-width: 520px) {
    .sc-header-grid {
        grid-template-columns: 108px 1fr auto auto;
        gap: 6px;
        padding-left: 2px;
        padding-right: 2px;
    }

    .sc-brand {
        width: 104px;
        min-width: 104px;
        height: 38px;
    }

    .sc-brand-img {
        max-width: 98px;
        max-height: 32px;
    }

    .sc-header-action,
    .sc-cart-link,
    .sc-mobile-toggle {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .sc-search {
        height: 44px;
        grid-template-columns: 1fr 70px;
    }

    .sc-search input,
    .sc-search button {
        height: 44px;
    }

    .sc-search input {
        font-size: 13px;
    }

    .sc-search button {
        font-size: 12px;
    }

    .sc-location-btn {
        height: 40px;
    }

    .sc-location-btn strong {
        font-size: 13px;
    }
}

/* Remove blank space when hidden */
.sc-header.sc-hide-nav {
    box-shadow: 0 8px 28px rgba(15, 23, 42, .10);
}

@media (max-width: 860px) {
    .sc-nav-bar {
        display: none !important;
    }
}

/* =========================================================
   Stable hide second header on scroll
   ========================================================= */

.sc-nav-bar {
    display: block;
}

.sc-header.sc-hide-nav .sc-nav-bar {
    display: none !important;
}

/* Avoid animation vibration */
.sc-header,
.sc-nav-bar,
.sc-nav-inner {
    transition: none !important;
}

@media (max-width: 860px) {
    .sc-nav-bar {
        display: none !important;
    }
}

/* =========================================================
   Homepage Admin Hero Banner - Full Width
   ========================================================= */

.hero-sale-section {
    position: relative;
    width: 100%;
    background: #f3f4f6;
    overflow: visible;
    z-index: 1;
    margin-top: 0;
}

.hero-sale-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #f3f4f6;
}

.hero-sale-card {
    display: none;
    width: 100%;
    position: relative;
    text-decoration: none;
    color: inherit;
}

.hero-sale-card.active {
    display: block;
}

.hero-sale-card picture,
.hero-sale-card img {
    display: block;
    width: 100%;
}

.hero-sale-card img {
    height: auto;
    min-height: 340px;
    max-height: 520px;
    object-fit: cover;
    object-position: center top;
}

.hero-sale-btn {
    position: absolute;
    left: 42px;
    bottom: 120px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 28px;
    background: #ff6500;
    color: #fff;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 1000;
    box-shadow: 0 14px 35px rgba(255, 101, 0, .28);
}

.hero-sale-dots {
    position: absolute;
    left: 50%;
    bottom: 120px;
    transform: translateX(-50%);
    z-index: 5;
    display: flex;
    gap: 8px;
}

.hero-sale-dots button {
    width: 10px;
    height: 10px;
    border: 0;
    background: rgba(17,24,39,.35);
    border-radius: 50%;
    cursor: pointer;
}

.hero-sale-dots button.active {
    width: 28px;
    border-radius: 999px;
    background: #ff6500;
}

/* =========================================================
   Cards overlapping banner from bottom
   ========================================================= */

.home-feature-cards {
    position: relative;
    z-index: 5;
    padding: 28px 0;
}

.home-feature-cards.over-hero {
    margin-top: -105px;
    padding-top: 0;
}

.home-feature-grid {
    display: grid;
    grid-template-columns: 1.45fr .95fr;
    gap: 18px;
    align-items: stretch;
}

.home-feature-card {
    min-height: 300px;
    border-radius: 24px;
    overflow: hidden;
    padding: 28px;
    position: relative;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .12);
}

.home-feature-card.dark {
    background: #172131;
    color: #fff;
}

.home-feature-card.orange {
    background: linear-gradient(135deg, #ff6500, #fb923c);
    color: #fff;
}

.home-feature-content {
    position: relative;
    z-index: 2;
}

.home-feature-card span {
    display: inline-flex;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.28);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}

.home-feature-card h2 {
    margin: 18px 0 8px;
    color: inherit;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.05;
    font-weight: 1000;
}

.home-feature-card p {
    margin: 0;
    color: rgba(255,255,255,.92);
    font-size: 17px;
    line-height: 1.7;
}

.home-feature-card a {
    margin-top: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 12px;
    background: rgba(255,255,255,.16);
    color: #fff;
    text-decoration: none;
    font-weight: 900;
}

.home-feature-card img {
    position: absolute;
    right: 28px;
    bottom: 26px;
    max-width: 45%;
    max-height: 150px;
    object-fit: contain;
    z-index: 1;
}

.home-feature-graphic {
    position: absolute;
    right: 28px;
    bottom: 28px;
    width: 45%;
    height: 160px;
    border-radius: 22px;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.22);
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,.9);
    font-weight: 1000;
    font-size: 24px;
    text-align: center;
    z-index: 1;
}

.rating-line {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #f59e0b;
    font-weight: 900;
    margin-top: 8px;
}

.rating-line small {
    color: #6b7280;
}

.product-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.product-actions form {
    margin: 0;
}

@media (max-width: 900px) {
    .hero-sale-card img {
        min-height: 300px;
        max-height: 420px;
    }

    .home-feature-cards.over-hero {
        margin-top: -70px;
    }

    .home-feature-grid {
        grid-template-columns: 1fr;
    }

    .home-feature-card {
        min-height: 260px;
    }
}

@media (max-width: 520px) {
    .hero-sale-card img {
        min-height: 260px;
        max-height: 360px;
        object-fit: cover;
        object-position: center top;
    }

    .hero-sale-btn {
        left: 18px;
        bottom: 82px;
        min-height: 40px;
        padding: 0 18px;
        font-size: 13px;
    }

    .hero-sale-dots {
        bottom: 82px;
    }

    .home-feature-cards.over-hero {
        margin-top: -48px;
    }

    .home-feature-card {
        border-radius: 18px;
        padding: 20px;
        min-height: 235px;
    }

    .home-feature-card img,
    .home-feature-graphic {
        max-width: 58%;
        width: 58%;
        max-height: 110px;
        height: 110px;
        right: 18px;
        bottom: 18px;
    }
}

/* =========================================================
   New Website Launch Feature Cards
   ========================================================= */

.new-marketplace-grid {
    grid-template-columns: 1.15fr 1fr;
}

.launch-card {
    background:
        radial-gradient(circle at 82% 20%, rgba(255, 255, 255, .22), transparent 28%),
        linear-gradient(135deg, #111827 0%, #1f2937 52%, #0f172a 100%);
    color: #fff;
}

.seller-invite-card {
    background:
        radial-gradient(circle at 86% 18%, rgba(255, 255, 255, .24), transparent 30%),
        linear-gradient(135deg, #ff6500 0%, #fb923c 55%, #f97316 100%);
    color: #fff;
}

.launch-card,
.seller-invite-card {
    min-height: 285px;
    border-radius: 26px;
    overflow: hidden;
    position: relative;
    padding: 30px;
    isolation: isolate;
}

.launch-card::before,
.seller-invite-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(120deg, rgba(255,255,255,.08), transparent 40%),
        radial-gradient(circle at 20% 90%, rgba(255,255,255,.10), transparent 28%);
    z-index: -1;
}

.launch-card .home-feature-content,
.seller-invite-card .home-feature-content {
    max-width: 58%;
}

.launch-card span,
.seller-invite-card span {
    display: inline-flex;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}

.launch-card h2,
.seller-invite-card h2 {
    margin: 18px 0 10px;
    color: #fff;
    font-size: clamp(30px, 3vw, 46px);
    line-height: 1.02;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.launch-card p,
.seller-invite-card p {
    margin: 0;
    color: rgba(255,255,255,.92);
    font-size: 16px;
    line-height: 1.65;
}

.launch-card a,
.seller-invite-card a {
    margin-top: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    text-decoration: none;
    font-weight: 1000;
    box-shadow: 0 12px 28px rgba(0,0,0,.12);
}

.seller-invite-card a {
    color: #ff6500;
}

.launch-card-visual,
.seller-card-visual {
    position: absolute;
    right: 28px;
    bottom: 28px;
    width: 38%;
    height: 210px;
}

.launch-bubble {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #fff;
    font-weight: 1000;
    box-shadow: 0 18px 40px rgba(0,0,0,.18);
}

.launch-bubble.big {
    width: 150px;
    height: 150px;
    right: 10px;
    bottom: 20px;
    background: linear-gradient(135deg, #ff6500, #fb923c);
    font-size: 24px;
}

.launch-bubble.small {
    width: 92px;
    height: 92px;
    right: 130px;
    bottom: 95px;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.25);
    font-size: 16px;
}

.launch-bubble.mini {
    width: 72px;
    height: 72px;
    right: 165px;
    bottom: 10px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.22);
    font-size: 14px;
}

.seller-icon-box {
    position: absolute;
    right: 25px;
    bottom: 62px;
    width: 138px;
    height: 138px;
    border-radius: 34px;
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.30);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 58px;
    box-shadow: 0 18px 40px rgba(0,0,0,.14);
}

.seller-mini-card {
    position: absolute;
    background: #fff;
    color: #111827;
    border-radius: 999px;
    padding: 9px 14px;
    font-weight: 1000;
    font-size: 13px;
    box-shadow: 0 14px 30px rgba(0,0,0,.12);
}

.seller-mini-card.one {
    right: 132px;
    top: 22px;
}

.seller-mini-card.two {
    right: 8px;
    top: 10px;
}

.seller-mini-card.three {
    right: 112px;
    bottom: 18px;
}

/* remove old placeholder/image from these new cards */
.launch-card > img,
.seller-invite-card > img,
.launch-card .home-feature-graphic,
.seller-invite-card .home-feature-graphic {
    display: none !important;
}

@media (max-width: 900px) {
    .new-marketplace-grid {
        grid-template-columns: 1fr;
    }

    .launch-card .home-feature-content,
    .seller-invite-card .home-feature-content {
        max-width: 62%;
    }
}

@media (max-width: 560px) {
    .launch-card,
    .seller-invite-card {
        min-height: 320px;
        padding: 22px;
        border-radius: 20px;
    }

    .launch-card .home-feature-content,
    .seller-invite-card .home-feature-content {
        max-width: 100%;
    }

    .launch-card h2,
    .seller-invite-card h2 {
        font-size: 30px;
        max-width: 260px;
    }

    .launch-card p,
    .seller-invite-card p {
        max-width: 280px;
        font-size: 15px;
    }

    .launch-card-visual,
    .seller-card-visual {
        width: 100%;
        right: 0;
        bottom: 0;
        height: 125px;
        opacity: .9;
    }

    .launch-bubble.big {
        width: 105px;
        height: 105px;
        right: 20px;
        bottom: 12px;
        font-size: 17px;
    }

    .launch-bubble.small {
        width: 72px;
        height: 72px;
        right: 115px;
        bottom: 45px;
        font-size: 13px;
    }

    .launch-bubble.mini {
        width: 56px;
        height: 56px;
        right: 190px;
        bottom: 15px;
        font-size: 12px;
    }

    .seller-icon-box {
        width: 96px;
        height: 96px;
        right: 22px;
        bottom: 18px;
        border-radius: 24px;
        font-size: 42px;
    }

    .seller-mini-card {
        font-size: 12px;
        padding: 7px 11px;
    }

    .seller-mini-card.one {
        right: 120px;
        top: 30px;
    }

    .seller-mini-card.two {
        right: 18px;
        top: 16px;
    }

    .seller-mini-card.three {
        right: 120px;
        bottom: 18px;
    }
}

/* =========================================================
   Professional Shop by Category Section
   ========================================================= */

.market-category-section {
    position: relative;
    padding: 34px 0 22px;
    background:
        radial-gradient(circle at 12% 20%, rgba(255, 101, 0, .08), transparent 25%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.market-category-card {
    background: rgba(255, 255, 255, .92);
    border: 1px solid #eef2f7;
    border-radius: 28px;
    padding: 28px;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.market-category-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
}

.section-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 9px;
}

.market-category-head h2 {
    margin: 0;
    color: #111827;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.market-category-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 16px;
}

.market-view-all {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    white-space: nowrap;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .14);
}

.market-view-all span {
    color: #ffb46b;
    font-size: 18px;
}

.market-view-all:hover {
    background: #ff6500;
    color: #fff;
}

.market-view-all:hover span {
    color: #fff;
}

.market-category-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 14px;
}

.market-category-item {
    min-height: 138px;
    border-radius: 22px;
    background:
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border: 1px solid #e5e7eb;
    padding: 18px 14px;
    text-decoration: none;
    color: #111827;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 9px;
    position: relative;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.market-category-item::before {
    content: "";
    position: absolute;
    inset: auto -30px -45px auto;
    width: 110px;
    height: 110px;
    background: rgba(255, 101, 0, .09);
    border-radius: 50%;
}

.market-category-item:hover {
    transform: translateY(-5px);
    border-color: #fed7aa;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .10);
}

.market-category-icon {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: #fff7ed;
    color: #ff6500;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    position: relative;
    z-index: 2;
}

.market-category-item strong {
    position: relative;
    z-index: 2;
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
    text-align: center;
}

.market-category-item small {
    position: relative;
    z-index: 2;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.market-empty-category {
    grid-column: 1 / -1;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 20px;
    padding: 22px;
    color: #111827;
}

.market-empty-category p {
    margin: 6px 0 0;
    color: #6b7280;
}

@media (max-width: 1100px) {
    .market-category-grid {
        grid-template-columns: repeat(3, minmax(140px, 1fr));
    }
}

@media (max-width: 700px) {
    .market-category-section {
        padding: 24px 0 16px;
    }

    .market-category-card {
        padding: 20px;
        border-radius: 22px;
    }

    .market-category-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .market-view-all {
        width: 100%;
        justify-content: center;
    }

    .market-category-grid {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
        gap: 10px;
    }

    .market-category-item {
        min-height: 118px;
        border-radius: 18px;
        padding: 14px 10px;
    }

    .market-category-icon {
        width: 48px;
        height: 48px;
        border-radius: 16px;
        font-size: 24px;
    }

    .market-category-item strong {
        font-size: 14px;
    }

    .market-category-item small {
        font-size: 12px;
    }
}

/* =========================================================
   Professional Latest Products Section
   ========================================================= */

.market-product-section {
    padding: 28px 0;
    background:
        radial-gradient(circle at 90% 10%, rgba(255, 101, 0, .06), transparent 24%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.market-product-card {
    background: rgba(255, 255, 255, .95);
    border: 1px solid #eef2f7;
    border-radius: 28px;
    padding: 28px;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.market-product-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
}

.market-product-head h2 {
    margin: 0;
    color: #111827;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.market-product-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 16px;
}

.market-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(190px, 1fr));
    gap: 18px;
}

.market-product-item {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.market-product-item:hover {
    transform: translateY(-5px);
    border-color: #fed7aa;
    box-shadow: 0 20px 45px rgba(15, 23, 42, .11);
}

.market-product-img {
    height: 220px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-decoration: none;
    overflow: hidden;
}

.market-product-img img {
    max-width: 86%;
    max-height: 190px;
    object-fit: contain;
    transition: transform .22s ease;
}

.market-product-item:hover .market-product-img img {
    transform: scale(1.04);
}

.market-discount-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 2;
    background: #ff6500;
    color: #fff;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
    box-shadow: 0 10px 22px rgba(255, 101, 0, .22);
}

.market-product-info {
    padding: 16px;
}

.market-product-tags {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.market-product-tags span {
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
}

.market-product-tags .stock {
    background: #dcfce7;
    color: #166534;
}

.market-product-tags .out {
    background: #fee2e2;
    color: #991b1b;
}

.market-product-info h3 {
    margin: 0;
    min-height: 46px;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 1000;
}

.market-product-info h3 a {
    color: #111827;
    text-decoration: none;
}

.market-product-info h3 a:hover {
    color: #ff6500;
}

.market-rating {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #f59e0b;
    font-weight: 900;
    margin-top: 10px;
}

.market-rating small {
    color: #6b7280;
}

.market-price-row {
    margin-top: 9px;
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

.market-price-row strong {
    color: #111827;
    font-size: 19px;
    font-weight: 1000;
}

.market-price-row del {
    color: #6b7280;
    font-weight: 700;
}

.market-seller {
    margin: 9px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.market-product-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 14px;
}

.market-product-actions a,
.market-product-actions button {
    min-height: 38px;
    border-radius: 12px;
    border: 0;
    text-decoration: none;
    font-weight: 1000;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.market-product-actions a {
    background: #ff6500;
    color: #fff;
}

.market-product-actions button {
    background: #f3f4f6;
    color: #111827;
    width: 100%;
}

.market-product-actions form {
    margin: 0;
}

.market-empty-products {
    grid-column: 1 / -1;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 20px;
    padding: 24px;
    color: #111827;
}

.market-empty-products p {
    margin: 6px 0 0;
    color: #6b7280;
}

@media (max-width: 1100px) {
    .market-product-grid {
        grid-template-columns: repeat(3, minmax(190px, 1fr));
    }
}

@media (max-width: 820px) {
    .market-product-grid {
        grid-template-columns: repeat(2, minmax(160px, 1fr));
        gap: 12px;
    }

    .market-product-card {
        padding: 20px;
        border-radius: 22px;
    }

    .market-product-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .market-product-img {
        height: 190px;
    }

    .market-product-img img {
        max-height: 160px;
    }
}

@media (max-width: 520px) {
    .market-product-section {
        padding: 20px 0;
    }

    .market-product-card {
        padding: 16px;
        border-radius: 20px;
    }

    .market-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .market-product-img {
        height: 150px;
    }

    .market-product-img img {
        max-height: 128px;
    }

    .market-product-info {
        padding: 12px;
    }

    .market-product-tags span {
        font-size: 11px;
        padding: 0 7px;
    }

    .market-product-info h3 {
        min-height: 56px;
        font-size: 13px;
        line-height: 1.35;
    }

    .market-price-row strong {
        font-size: 15px;
    }

    .market-seller {
        display: none;
    }

    .market-product-actions {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .market-product-actions a,
    .market-product-actions button {
        min-height: 34px;
        border-radius: 10px;
        font-size: 12px;
    }
}

/* =========================================================
   Top Rated Products - Premium Marketplace Design
   ========================================================= */

.sc-rated-products-section {
    padding: 34px 0 44px;
    background:
        radial-gradient(circle at 12% 12%, rgba(255, 101, 0, .08), transparent 24%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.sc-rated-products-box {
    background: #111827;
    border-radius: 30px;
    padding: 28px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
    position: relative;
    overflow: hidden;
}

.sc-rated-products-box::before {
    content: "";
    position: absolute;
    right: -80px;
    top: -100px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 101, 0, .24);
}

.sc-rated-products-head {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
}

.sc-section-label.rated {
    background: rgba(255, 101, 0, .16);
    color: #ffb46b;
    border: 1px solid rgba(255, 180, 107, .25);
}

.sc-rated-products-head h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-rated-products-head p {
    margin: 8px 0 0;
    color: #cbd5e1;
    font-size: 16px;
}

.sc-rated-products-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.sc-rated-product-card {
    position: relative;
    background: #fff;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    transition: transform .18s ease, box-shadow .18s ease;
}

.sc-rated-product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 22px 50px rgba(0, 0, 0, .22);
}

.sc-rated-badge-top {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 4;
    background: #111827;
    color: #fff;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 1000;
}

.sc-rated-product-image {
    height: 205px;
    background:
        radial-gradient(circle at 50% 45%, #ffffff 0%, #f8fafc 60%, #eef2f7 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-decoration: none;
    overflow: hidden;
}

.sc-rated-product-image img {
    max-width: 86%;
    max-height: 174px;
    object-fit: contain;
    display: block;
    transition: transform .22s ease;
}

.sc-rated-product-card:hover .sc-rated-product-image img {
    transform: scale(1.04);
}

.sc-rated-offer {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 3;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
}

.sc-rated-product-content {
    padding: 15px;
}

.sc-rated-tags {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.sc-rated-tags span {
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
}

.sc-rated-tags .in-stock {
    background: #dcfce7;
    color: #166534;
}

.sc-rated-tags .out-stock {
    background: #fee2e2;
    color: #991b1b;
}

.sc-rated-product-content h3 {
    margin: 0;
    min-height: 48px;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 1000;
}

.sc-rated-product-content h3 a {
    color: #111827;
    text-decoration: none;
}

.sc-rated-product-content h3 a:hover {
    color: #ff6500;
}

.sc-rated-review-row {
    margin-top: 12px;
    min-height: 38px;
    padding: 8px 10px;
    border-radius: 14px;
    background: #fff7ed;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.sc-rated-review-row div {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #f59e0b;
    font-weight: 1000;
}

.sc-rated-review-row small {
    color: #92400e;
    font-weight: 800;
}

.sc-rated-price-row {
    margin-top: 11px;
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

.sc-rated-price-row strong {
    color: #111827;
    font-size: 19px;
    font-weight: 1000;
}

.sc-rated-price-row del {
    color: #6b7280;
    font-weight: 700;
}

.sc-rated-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 14px;
}

.sc-rated-actions a,
.sc-rated-actions button {
    min-height: 38px;
    border-radius: 12px;
    border: 0;
    text-decoration: none;
    font-weight: 1000;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sc-rated-actions a {
    background: #ff6500;
    color: #fff;
}

.sc-rated-actions button {
    background: #f3f4f6;
    color: #111827;
    width: 100%;
}

.sc-rated-actions form {
    margin: 0;
}

.sc-rated-empty {
    grid-column: 1 / -1;
    background: rgba(255,255,255,.08);
    border: 1px dashed rgba(255,255,255,.22);
    border-radius: 20px;
    padding: 24px;
    color: #fff;
}

.sc-rated-empty p {
    margin: 6px 0 0;
    color: #cbd5e1;
}

/* =========================================================
   Top Rated Products - Compact Height + Button Fix
   ========================================================= */

.sc-rated-products-section {
    padding: 26px 0 32px !important;
}

.sc-rated-products-box {
    padding: 24px !important;
    border-radius: 26px !important;
    min-height: auto !important;
}

.sc-rated-products-head {
    margin-bottom: 18px !important;
}

.sc-rated-products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: stretch;
}

.sc-rated-product-card {
    max-width: 100%;
    min-height: auto !important;
}

.sc-rated-product-image {
    height: 170px !important;
}

.sc-rated-product-image img {
    max-height: 138px !important;
    max-width: 82% !important;
}

.sc-rated-product-content {
    padding: 13px !important;
}

.sc-rated-product-content h3 {
    min-height: 44px !important;
    max-height: 66px;
    overflow: hidden;
    font-size: 15px !important;
    line-height: 1.32 !important;
}

.sc-rated-review-row {
    min-height: 34px !important;
    padding: 7px 9px !important;
    margin-top: 10px !important;
}

.sc-rated-price-row {
    margin-top: 9px !important;
}

.sc-rated-price-row strong {
    font-size: 18px !important;
}

.sc-rated-actions {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    margin-top: 12px !important;
}

.sc-rated-actions a,
.sc-rated-actions button {
    min-height: 38px !important;
    height: 38px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    padding: 0 10px !important;
    text-align: center;
}

.sc-rated-actions a {
    background: #ff6500 !important;
    color: #fff !important;
}

.sc-rated-actions button {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

.sc-rated-tags {
    margin-bottom: 8px !important;
}

.sc-rated-tags span {
    min-height: 22px !important;
    font-size: 11px !important;
}

/* Keep the dark background only around content, not too much empty height */
.sc-rated-products-box::before {
    width: 220px !important;
    height: 220px !important;
    right: -70px !important;
    top: -90px !important;
}

/* Desktop: when only 2 products exist, don't stretch section visually */
.sc-rated-products-grid:has(.sc-rated-product-card:nth-child(2):last-child) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (max-width: 1150px) {
    .sc-rated-products-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 820px) {
    .sc-rated-products-section {
        padding: 22px 0 28px !important;
    }

    .sc-rated-products-box {
        padding: 18px !important;
        border-radius: 22px !important;
    }

    .sc-rated-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .sc-rated-product-image {
        height: 155px !important;
    }

    .sc-rated-product-image img {
        max-height: 125px !important;
    }
}

@media (max-width: 520px) {
    .sc-rated-products-section {
        padding: 18px 0 24px !important;
    }

    .sc-rated-products-box {
        padding: 14px !important;
        border-radius: 20px !important;
    }

    .sc-rated-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .sc-rated-product-image {
        height: 132px !important;
    }

    .sc-rated-product-image img {
        max-height: 105px !important;
    }

    .sc-rated-product-content {
        padding: 10px !important;
    }

    .sc-rated-product-content h3 {
        min-height: 50px !important;
        max-height: 54px;
        font-size: 12.5px !important;
    }

    .sc-rated-review-row {
        min-height: 30px !important;
        padding: 6px 8px !important;
    }

    .sc-rated-price-row strong {
        font-size: 14px !important;
    }

    .sc-rated-actions {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
    }

    .sc-rated-actions a,
    .sc-rated-actions button {
        min-height: 33px !important;
        height: 33px !important;
        font-size: 12px !important;
    }
}

/* =========================================================
   Amazon-style Dynamic Marketplace Deals Section
   ========================================================= */

.sc-amz-deals-section {
    position: relative;
    z-index: 8;
    margin-top: -92px;
    padding: 0 0 34px;
}

.sc-amz-deals-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.sc-amz-deal-card {
    background: #fff;
    border-radius: 2px;
    padding: 20px;
    min-height: 360px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .12);
    border: 1px solid #eef2f7;
    display: flex;
    flex-direction: column;
}

.sc-amz-deal-head h2 {
    margin: 0 0 16px;
    color: #111827;
    font-size: 21px;
    line-height: 1.25;
    font-weight: 1000;
    letter-spacing: -.03em;
    min-height: 52px;
}

.sc-amz-deal-products {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 12px;
    flex: 1;
}

.sc-amz-deal-product {
    text-decoration: none;
    color: #111827;
    min-width: 0;
}

.sc-amz-deal-img {
    height: 105px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.sc-amz-deal-img img {
    max-width: 92%;
    max-height: 96px;
    object-fit: contain;
    display: block;
    transition: transform .2s ease;
}

.sc-amz-deal-product:hover .sc-amz-deal-img img {
    transform: scale(1.05);
}

.sc-amz-deal-offer-row {
    margin-top: 8px;
    display: flex;
    align-items: center;
}

.sc-amz-deal-offer-row span {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 3px;
    background: #cc0c39;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.sc-amz-deal-product p {
    margin: 5px 0 0;
    color: #cc0c39;
    font-size: 12px;
    line-height: 1.3;
    font-weight: 800;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 32px;
}

.sc-amz-see-more {
    margin-top: 18px;
    color: #007185;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}

.sc-amz-see-more:hover {
    color: #ff6500;
    text-decoration: underline;
}

body:not(.has-hero-banner) .sc-amz-deals-section {
    margin-top: 26px;
}

@media (max-width: 1150px) {
    .sc-amz-deals-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sc-amz-deals-section {
        margin-top: -60px;
    }
}

@media (max-width: 700px) {
    .sc-amz-deals-section {
        margin-top: -42px;
        padding-bottom: 22px;
    }

    .sc-amz-deals-grid {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 8px;
    }

    .sc-amz-deal-card {
        min-width: 82%;
        min-height: 330px;
        padding: 16px;
        scroll-snap-align: start;
    }

    .sc-amz-deal-head h2 {
        font-size: 18px;
        min-height: auto;
    }

    .sc-amz-deal-img {
        height: 92px;
    }

    .sc-amz-deal-img img {
        max-height: 82px;
    }
}

@media (max-width: 430px) {
    .sc-amz-deal-card {
        min-width: 88%;
    }

    .sc-amz-deal-products {
        gap: 12px 10px;
    }

    .sc-amz-deal-img {
        height: 84px;
    }

    .sc-amz-deal-img img {
        max-height: 74px;
    }
}

/* =========================================================
   Budget Deals Section
   ========================================================= */

.sc-budget-deals-section {
    padding: 34px 0;
    background:
        radial-gradient(circle at 90% 10%, rgba(255, 101, 0, .08), transparent 24%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.sc-budget-deals-box {
    background: linear-gradient(135deg, #fff7ed 0%, #ffffff 52%, #f8fafc 100%);
    border: 1px solid #fed7aa;
    border-radius: 30px;
    padding: 28px;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
    overflow: hidden;
    position: relative;
}

.sc-budget-deals-box::before {
    content: "";
    position: absolute;
    right: -80px;
    top: -90px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(255, 101, 0, .12);
}

.sc-budget-deals-head {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
}

.sc-budget-label {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 9px;
}

.sc-budget-deals-head h2 {
    margin: 0;
    color: #111827;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-budget-deals-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 16px;
}

.sc-budget-view-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    white-space: nowrap;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .14);
}

.sc-budget-view-btn span {
    color: #ffb46b;
    font-size: 18px;
}

.sc-budget-view-btn:hover {
    background: #ff6500;
    color: #fff;
}

.sc-budget-view-btn:hover span {
    color: #fff;
}

.sc-budget-deals-row {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.sc-budget-product {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sc-budget-product:hover {
    transform: translateY(-5px);
    border-color: #fed7aa;
    box-shadow: 0 20px 45px rgba(15, 23, 42, .11);
}

.sc-budget-image {
    height: 185px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    text-decoration: none;
}

.sc-budget-image span {
    position: absolute;
    left: 13px;
    top: 13px;
    min-height: 25px;
    padding: 0 10px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
    z-index: 2;
}

.sc-budget-image img {
    max-width: 84%;
    max-height: 155px;
    object-fit: contain;
    transition: transform .22s ease;
}

.sc-budget-product:hover .sc-budget-image img {
    transform: scale(1.04);
}

.sc-budget-content {
    padding: 15px;
}

.sc-budget-content small {
    display: inline-flex;
    min-height: 23px;
    padding: 0 9px;
    align-items: center;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 900;
}

.sc-budget-content h3 {
    margin: 10px 0 0;
    min-height: 45px;
    max-height: 64px;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 1000;
}

.sc-budget-content h3 a {
    color: #111827;
    text-decoration: none;
}

.sc-budget-content h3 a:hover {
    color: #ff6500;
}

.sc-budget-rating {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #f59e0b;
    margin-top: 10px;
    font-weight: 900;
}

.sc-budget-rating em {
    color: #6b7280;
    font-style: normal;
    font-size: 13px;
}

.sc-budget-price {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.sc-budget-price strong {
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.sc-budget-price del {
    color: #6b7280;
    font-weight: 700;
}

.sc-budget-btn {
    margin-top: 13px;
    display: inline-flex;
    width: 100%;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
}

@media (max-width: 1150px) {
    .sc-budget-deals-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* =========================================================
   Budget Deals - Reduce Section Height
   ========================================================= */

.sc-budget-deals-section {
    padding: 18px 0 24px !important;
}

.sc-budget-deals-box {
    padding: 22px !important;
    border-radius: 24px !important;
    min-height: auto !important;
}

.sc-budget-deals-head {
    margin-bottom: 16px !important;
}

.sc-budget-deals-head h2 {
    font-size: clamp(26px, 2.4vw, 34px) !important;
}

.sc-budget-deals-head p {
    margin-top: 5px !important;
    font-size: 14px !important;
}

.sc-budget-label {
    min-height: 24px !important;
    font-size: 12px !important;
    margin-bottom: 8px !important;
}

.sc-budget-view-btn {
    min-height: 40px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
}

/* Important: product cards should not stretch huge when only 2 products exist */
.sc-budget-deals-row {
    grid-template-columns: repeat(auto-fit, minmax(210px, 240px)) !important;
    gap: 14px !important;
    justify-content: flex-start !important;
}

.sc-budget-product {
    border-radius: 18px !important;
}

.sc-budget-image {
    height: 135px !important;
}

.sc-budget-image img {
    max-height: 105px !important;
    max-width: 82% !important;
}

.sc-budget-image span {
    top: 9px !important;
    left: 9px !important;
    min-height: 22px !important;
    font-size: 11px !important;
    padding: 0 8px !important;
}

.sc-budget-content {
    padding: 12px !important;
}

.sc-budget-content small {
    min-height: 21px !important;
    font-size: 10.5px !important;
}

.sc-budget-content h3 {
    margin-top: 8px !important;
    min-height: 38px !important;
    max-height: 42px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.sc-budget-rating {
    margin-top: 7px !important;
    font-size: 12px !important;
}

.sc-budget-price {
    margin-top: 6px !important;
}

.sc-budget-price strong {
    font-size: 15px !important;
}

.sc-budget-price del {
    font-size: 12px !important;
}

.sc-budget-btn {
    margin-top: 9px !important;
    min-height: 32px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
}

/* Remove large decorative circle effect height feeling */
.sc-budget-deals-box::before {
    width: 150px !important;
    height: 150px !important;
    right: -45px !important;
    top: -55px !important;
}

/* Tablet */
@media (max-width: 820px) {
    .sc-budget-deals-box {
        padding: 16px !important;
    }

    .sc-budget-deals-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sc-budget-image {
        height: 125px !important;
    }

    .sc-budget-image img {
        max-height: 95px !important;
    }
}

/* Mobile */
@media (max-width: 520px) {
    .sc-budget-deals-section {
        padding: 14px 0 18px !important;
    }

    .sc-budget-deals-head {
        margin-bottom: 12px !important;
    }

    .sc-budget-deals-box {
        padding: 14px !important;
        border-radius: 18px !important;
    }

    .sc-budget-deals-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .sc-budget-image {
        height: 115px !important;
    }

    .sc-budget-image img {
        max-height: 88px !important;
    }

    .sc-budget-content {
        padding: 10px !important;
    }

    .sc-budget-content h3 {
        min-height: 36px !important;
        max-height: 38px !important;
        font-size: 12px !important;
    }

    .sc-budget-btn {
        min-height: 30px !important;
    }
}

/* =========================================================
   FIX: Dynamic Deal Cards Section Spacing
   ========================================================= */

.sc-amz-deals-section {
    position: relative !important;
    z-index: 3 !important;
    margin-top: 28px !important;
    padding: 0 0 34px !important;
    background: #f8fafc !important;
}

/* Stop forced overlap after hero/banner */
.hero-sale-section + .sc-amz-deals-section,
.home-feature-cards + .sc-amz-deals-section,
.sc-rated-products-section + .sc-amz-deals-section,
.sc-budget-deals-section + .sc-amz-deals-section {
    margin-top: 28px !important;
}

/* Main grid */
.sc-amz-deals-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

/* Card height controlled */
.sc-amz-deal-card {
    background: #fff !important;
    border-radius: 4px !important;
    padding: 20px !important;
    min-height: 350px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .10) !important;
    border: 1px solid #eef2f7 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Product grid inside card */
.sc-amz-deal-products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 12px !important;
    flex: 1 !important;
}

.sc-amz-deal-img {
    height: 96px !important;
    background: #f8fafc !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.sc-amz-deal-img img {
    max-width: 90% !important;
    max-height: 86px !important;
    object-fit: contain !important;
}

/* Remove red testing border if applied globally */
.sc-amz-deals-section,
.sc-amz-deals-grid,
.sc-amz-deal-card {
    outline: none !important;
}

/* Tablet */
@media (max-width: 1150px) {
    .sc-amz-deals-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Mobile */
@media (max-width: 700px) {
    .sc-amz-deals-section {
        margin-top: 20px !important;
        padding-bottom: 22px !important;
    }

    .sc-amz-deals-grid {
        display: flex !important;
        gap: 12px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory;
        padding-bottom: 8px;
    }

    .sc-amz-deal-card {
        min-width: 84% !important;
        min-height: 320px !important;
        padding: 16px !important;
        scroll-snap-align: start;
    }
}

/* =========================================================
   Latest Products - Reduce Height / Compact Layout
   ========================================================= */

.sc-latest-products-section {
    padding: 18px 0 24px !important;
}

.sc-latest-products-box {
    padding: 22px !important;
    border-radius: 24px !important;
    min-height: auto !important;
}

.sc-latest-products-head {
    margin-bottom: 16px !important;
}

.sc-latest-products-head h2 {
    font-size: clamp(26px, 2.5vw, 34px) !important;
}

.sc-latest-products-head p {
    margin-top: 5px !important;
    font-size: 14px !important;
}

.sc-section-label {
    min-height: 24px !important;
    font-size: 12px !important;
    margin-bottom: 8px !important;
}

.sc-section-view-btn {
    min-height: 40px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
}

/* Do not stretch products too much when only 2 products exist */
.sc-latest-products-grid {
    grid-template-columns: repeat(auto-fit, minmax(210px, 240px)) !important;
    gap: 14px !important;
    justify-content: flex-start !important;
}

.sc-latest-product-card {
    border-radius: 18px !important;
    min-height: auto !important;
}

.sc-latest-product-image {
    height: 135px !important;
}

.sc-latest-product-image img {
    max-height: 105px !important;
    max-width: 82% !important;
}

.sc-product-offer-badge {
    top: 9px !important;
    left: 9px !important;
    min-height: 22px !important;
    font-size: 11px !important;
    padding: 0 8px !important;
}

.sc-latest-product-content {
    padding: 12px !important;
}

.sc-product-badges {
    margin-bottom: 8px !important;
}

.sc-product-badges span {
    min-height: 21px !important;
    font-size: 10.5px !important;
    padding: 0 7px !important;
}

.sc-latest-product-content h3 {
    min-height: 38px !important;
    max-height: 42px !important;
    overflow: hidden !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.sc-product-rating {
    margin-top: 7px !important;
    font-size: 12px !important;
}

.sc-product-price {
    margin-top: 6px !important;
}

.sc-product-price strong {
    font-size: 15px !important;
}

.sc-product-price del {
    font-size: 12px !important;
}

.sc-product-seller {
    margin-top: 6px !important;
    font-size: 12px !important;
}

.sc-product-buttons {
    margin-top: 9px !important;
    padding-top: 0 !important;
    gap: 8px !important;
}

.sc-product-buttons a,
.sc-product-buttons button {
    min-height: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

/* Tablet */
@media (max-width: 820px) {
    .sc-latest-products-box {
        padding: 16px !important;
    }

    .sc-latest-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sc-latest-product-image {
        height: 125px !important;
    }

    .sc-latest-product-image img {
        max-height: 95px !important;
    }
}

/* Mobile */
@media (max-width: 520px) {
    .sc-latest-products-section {
        padding: 14px 0 18px !important;
    }

    .sc-latest-products-head {
        margin-bottom: 12px !important;
    }

    .sc-latest-products-box {
        padding: 14px !important;
        border-radius: 18px !important;
    }

    .sc-latest-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .sc-latest-product-image {
        height: 115px !important;
    }

    .sc-latest-product-image img {
        max-height: 88px !important;
    }

    .sc-latest-product-content {
        padding: 10px !important;
    }

    .sc-latest-product-content h3 {
        min-height: 36px !important;
        max-height: 38px !important;
        font-size: 12px !important;
    }

    .sc-product-seller {
        display: none !important;
    }

    .sc-product-buttons {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
    }

    .sc-product-buttons a,
    .sc-product-buttons button {
        min-height: 30px !important;
        height: 30px !important;
    }
}

/* =========================================================
   Recently Viewed Products Section
   ========================================================= */

.sc-recent-view-section {
    padding: 20px 0 28px;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.sc-recent-view-box {
    background: #ffffff;
    border: 1px solid #eef2f7;
    border-radius: 26px;
    padding: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
}

.sc-recent-view-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.sc-recent-label {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 12px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.sc-recent-view-head h2 {
    margin: 0;
    color: #111827;
    font-size: clamp(24px, 2.5vw, 34px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-recent-view-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 14px;
}

.sc-recent-view-all {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    white-space: nowrap;
}

.sc-recent-view-all span {
    color: #ffb46b;
}

.sc-recent-view-all:hover {
    background: #ff6500;
    color: #fff;
}

.sc-recent-view-all:hover span {
    color: #fff;
}

.sc-recent-view-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 220px));
    gap: 14px;
    justify-content: flex-start;
}

.sc-recent-product {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    overflow: hidden;
    text-decoration: none;
    color: #111827;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sc-recent-product:hover {
    transform: translateY(-4px);
    border-color: #fed7aa;
    box-shadow: 0 16px 35px rgba(15, 23, 42, .10);
}

.sc-recent-img {
    height: 120px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sc-recent-img img {
    max-width: 84%;
    max-height: 96px;
    object-fit: contain;
    display: block;
}

.sc-recent-info {
    padding: 11px;
}

.sc-recent-info > span {
    display: inline-flex;
    align-items: center;
    min-height: 21px;
    padding: 0 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 10.5px;
    font-weight: 900;
}

.sc-recent-info h3 {
    margin: 8px 0 0;
    min-height: 36px;
    max-height: 40px;
    overflow: hidden;
    color: #111827;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 1000;
}

.sc-recent-rating {
    margin-top: 7px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.sc-recent-rating strong {
    color: #f59e0b;
    font-size: 12px;
    font-weight: 1000;
}

.sc-recent-rating small {
    color: #6b7280;
    font-size: 12px;
}

.sc-recent-price {
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
}

.sc-recent-price strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.sc-recent-price del {
    color: #6b7280;
    font-size: 12px;
    font-weight: 700;
}

@media (max-width: 700px) {
    .sc-recent-view-box {
        padding: 16px;
        border-radius: 20px;
    }

    .sc-recent-view-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .sc-recent-view-all {
        width: 100%;
        justify-content: center;
    }

    .sc-recent-view-row {
        display: flex;
        overflow-x: auto;
        gap: 10px;
        padding-bottom: 6px;
        scroll-snap-type: x mandatory;
    }

    .sc-recent-product {
        min-width: 165px;
        scroll-snap-align: start;
    }

    .sc-recent-img {
        height: 105px;
    }

    .sc-recent-img img {
        max-height: 82px;
    }
}

/* =========================================================
   Why Shop With Us / Trust Section
   ========================================================= */

.sc-trust-section {
    padding: 26px 0 38px;
    background:
        radial-gradient(circle at 8% 15%, rgba(255, 101, 0, .07), transparent 25%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.sc-trust-box {
    background: #111827;
    border-radius: 30px;
    padding: 30px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
}

.sc-trust-box::before {
    content: "";
    position: absolute;
    right: -80px;
    top: -90px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255, 101, 0, .22);
}

.sc-trust-head {
    position: relative;
    z-index: 2;
    max-width: 620px;
    margin-bottom: 24px;
}

.sc-trust-head span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 101, 0, .16);
    color: #ffb46b;
    border: 1px solid rgba(255, 180, 107, .25);
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.sc-trust-head h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-trust-head p {
    margin: 10px 0 0;
    color: #cbd5e1;
    font-size: 16px;
    line-height: 1.6;
}

.sc-trust-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.sc-trust-item {
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 22px;
    padding: 20px;
    transition: transform .18s ease, background .18s ease;
}

.sc-trust-item:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, .12);
}

.sc-trust-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    background: #fff;
    color: #111827;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin-bottom: 15px;
}

.sc-trust-item h3 {
    margin: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 1000;
}

.sc-trust-item p {
    margin: 8px 0 0;
    color: #cbd5e1;
    font-size: 14px;
    line-height: 1.55;
}

@media (max-width: 1000px) {
    .sc-trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .sc-trust-section {
        padding: 20px 0 28px;
    }

    .sc-trust-box {
        padding: 20px;
        border-radius: 22px;
    }

    .sc-trust-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .sc-trust-item {
        padding: 16px;
        border-radius: 18px;
    }

    .sc-trust-icon {
        width: 46px;
        height: 46px;
        border-radius: 15px;
        font-size: 22px;
        margin-bottom: 12px;
    }

    .sc-trust-head h2 {
        font-size: 28px;
    }

    .sc-trust-head p {
        font-size: 14px;
    }
}
/* =========================================================
   Marketplace Footer - Amazon inspired, custom design
   ========================================================= */

.sc-market-footer {
    background: #0b1220;
    color: #d1d5db;
    margin-top: 0;
}

.sc-footer-back-row {
    background: #243447;
    text-align: center;
}

.sc-footer-back-row a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
}

.sc-footer-back-row a:hover {
    background: #2f4359;
}

.sc-footer-links-area {
    background: #172131;
    padding: 44px 0 42px;
}

.sc-footer-links-grid {
    width: min(980px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 46px;
}

.sc-footer-link-col h3 {
    margin: 0 0 14px;
    color: #fff;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 1000;
}

.sc-footer-link-col a {
    display: block;
    color: #d1d5db;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.35;
    margin-bottom: 10px;
    font-weight: 650;
}

.sc-footer-link-col a:hover {
    color: #ffb46b;
    text-decoration: underline;
}

.sc-footer-brand-area {
    background: #172131;
    border-top: 1px solid rgba(255,255,255,.10);
    padding: 28px 0;
}

.sc-footer-brand-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 34px;
    flex-wrap: wrap;
}

.sc-footer-brand-logo {
    display: inline-flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    font-size: 24px;
    font-weight: 1000;
}

.sc-footer-brand-logo img {
    max-width: 130px;
    max-height: 44px;
    object-fit: contain;
    display: block;
    background: rgba(255,255,255,.96);
    border-radius: 10px;
    padding: 6px 10px;
}

.sc-footer-settings {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.sc-footer-settings span {
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 4px;
    color: #e5e7eb;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 750;
}

.sc-footer-services-area {
    background: #0d1623;
    padding: 30px 0 26px;
}

.sc-footer-services-grid {
    width: min(980px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 26px 34px;
}

.sc-footer-services-grid a {
    text-decoration: none;
    color: #cbd5e1;
    display: block;
}

.sc-footer-services-grid strong {
    display: block;
    color: #fff;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 950;
}

.sc-footer-services-grid span {
    display: block;
    color: #94a3b8;
    font-size: 11px;
    line-height: 1.25;
    margin-top: 3px;
}

.sc-footer-services-grid a:hover strong {
    color: #ffb46b;
    text-decoration: underline;
}

.sc-footer-legal-area {
    background: #070b13;
    padding: 22px 0;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,.06);
}

.sc-footer-legal-links {
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.sc-footer-legal-links a {
    color: #f8fafc;
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
}

.sc-footer-legal-links a:hover {
    color: #ffb46b;
    text-decoration: underline;
}

.sc-footer-legal-area p {
    margin: 0;
    color: #cbd5e1;
    font-size: 12px;
    line-height: 1.6;
}

/* Tablet */
@media (max-width: 1000px) {
    .sc-footer-links-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 32px;
    }

    .sc-footer-services-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 600px) {
    .sc-footer-links-area {
        padding: 32px 0;
    }

    .sc-footer-links-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .sc-footer-link-col h3 {
        margin-bottom: 10px;
    }

    .sc-footer-link-col a {
        margin-bottom: 8px;
    }

    .sc-footer-brand-inner {
        gap: 18px;
        flex-direction: column;
    }

    .sc-footer-settings {
        width: 100%;
    }

    .sc-footer-settings span {
        justify-content: center;
        flex: 1 1 auto;
    }

    .sc-footer-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .sc-footer-legal-links {
        gap: 12px;
    }
}

/* =========================================================
   Login Page - Marketplace Auth Design
   ========================================================= */

.sc-auth-section {
    min-height: calc(100vh - 180px);
    padding: 46px 0 56px;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 101, 0, .08), transparent 28%),
        radial-gradient(circle at 88% 10%, rgba(17, 24, 39, .07), transparent 25%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.sc-auth-wrap {
    width: min(980px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr .9fr;
    gap: 22px;
    align-items: stretch;
}

.sc-auth-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 28px;
    padding: 34px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .10);
}

.sc-auth-logo {
    margin-bottom: 20px;
}

.sc-auth-logo a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
}

.sc-auth-logo img {
    max-width: 145px;
    max-height: 48px;
    object-fit: contain;
    display: block;
}

.sc-auth-logo span {
    background: linear-gradient(135deg, #111827, #ff6500);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.sc-auth-head span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.sc-auth-head h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-auth-head p {
    margin: 10px 0 0;
    color: #6b7280;
    font-size: 15px;
    line-height: 1.6;
}

.sc-auth-form {
    margin-top: 26px;
}

.sc-auth-field {
    margin-bottom: 16px;
}

.sc-auth-field label {
    display: block;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.sc-auth-input-wrap {
    position: relative;
}

.sc-auth-input-wrap input {
    width: 100%;
    height: 48px;
    border: 1px solid #e5e7eb;
    border-radius: 15px;
    outline: none;
    padding: 0 48px 0 14px;
    color: #111827;
    background: #fff;
    font-size: 15px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.sc-auth-input-wrap input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.sc-auth-input-wrap > span {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
}

.sc-password-toggle {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    height: 34px;
    border: 0;
    border-radius: 11px;
    padding: 0 12px;
    background: #f3f4f6;
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
}

.sc-password-toggle:hover {
    background: #fff7ed;
    color: #ff6500;
}

.sc-auth-options {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin: 4px 0 18px;
    flex-wrap: wrap;
}

.sc-auth-options label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.sc-auth-options a {
    color: #ff6500;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
}

.sc-auth-options a:hover {
    text-decoration: underline;
}

.sc-auth-submit {
    width: 100%;
    height: 48px;
    border: 0;
    border-radius: 15px;
    background: #ff6500;
    color: #fff;
    font-size: 15px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 16px 36px rgba(255, 101, 0, .24);
}

.sc-auth-submit:hover {
    background: #ea580c;
}

.sc-auth-divider {
    position: relative;
    text-align: center;
    margin: 24px 0 16px;
}

.sc-auth-divider::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: #e5e7eb;
}

.sc-auth-divider span {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 0 12px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.sc-auth-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.sc-auth-actions a {
    min-height: 42px;
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    color: #111827;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 12px;
    font-size: 13px;
    font-weight: 1000;
}

.sc-auth-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.sc-auth-side {
    background:
        radial-gradient(circle at 80% 18%, rgba(255,255,255,.22), transparent 28%),
        linear-gradient(135deg, #111827 0%, #172131 52%, #ff6500 155%);
    border-radius: 28px;
    padding: 34px;
    color: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
}

.sc-auth-side::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -90px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255, 101, 0, .28);
}

.sc-auth-side-content {
    position: relative;
    z-index: 2;
}

.sc-auth-side-content > span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.20);
    color: #ffb46b;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 14px;
}

.sc-auth-side h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(30px, 3vw, 44px);
    line-height: 1.03;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-auth-side p {
    margin: 14px 0 0;
    color: #cbd5e1;
    line-height: 1.7;
    font-size: 15px;
}

.sc-auth-benefits {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.sc-auth-benefits div {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 18px;
    padding: 13px;
}

.sc-auth-benefits strong {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff;
    color: #111827;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.sc-auth-benefits span {
    color: #fff;
    font-size: 14px;
    font-weight: 900;
}

@media (max-width: 900px) {
    .sc-auth-wrap {
        grid-template-columns: 1fr;
    }

    .sc-auth-side {
        display: none;
    }

    .sc-auth-card {
        width: min(520px, 100%);
        margin: 0 auto;
    }
}

@media (max-width: 520px) {
    .sc-auth-section {
        padding: 26px 0 34px;
    }

    .sc-auth-card {
        padding: 22px;
        border-radius: 22px;
    }

    .sc-auth-actions {
        grid-template-columns: 1fr;
    }

    .sc-auth-input-wrap input,
    .sc-auth-submit {
        height: 44px;
    }

    .sc-auth-head h1 {
        font-size: 30px;
    }
}
.sc-auth-wrap.single {
    grid-template-columns: 1fr;
    width: min(540px, 100%);
}

.sc-auth-actions.single {
    grid-template-columns: 1fr;
}

/* =========================================================
   Registration Pages - Customer and Seller
   ========================================================= */

.sc-register-section {
    padding: 44px 0 56px;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 101, 0, .08), transparent 28%),
        radial-gradient(circle at 88% 10%, rgba(17, 24, 39, .07), transparent 25%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.sc-register-wrap {
    width: min(1020px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: 22px;
    align-items: stretch;
}

.sc-register-card,
.sc-seller-form-card,
.sc-seller-submit-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 28px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.sc-register-card {
    padding: 34px;
}

.sc-register-logo {
    margin-bottom: 18px;
}

.sc-register-logo a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
}

.sc-register-logo img {
    max-width: 145px;
    max-height: 48px;
    object-fit: contain;
}

.sc-register-logo span {
    background: linear-gradient(135deg, #111827, #ff6500);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.sc-register-head span,
.sc-seller-register-head span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.sc-register-head h1,
.sc-seller-register-head h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3vw, 44px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-register-head p,
.sc-seller-register-head p {
    margin: 10px 0 0;
    color: #6b7280;
    font-size: 15px;
    line-height: 1.6;
}

.sc-register-form {
    margin-top: 24px;
}

.sc-form-grid {
    display: grid;
    gap: 14px;
}

.sc-form-grid.two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sc-form-grid.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sc-form-field {
    margin-bottom: 15px;
}

.sc-form-field label {
    display: block;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.sc-form-field label b {
    color: #dc2626;
}

.sc-form-field input,
.sc-form-field textarea {
    width: 100%;
    border: 1px solid #e5e7eb;
    border-radius: 15px;
    outline: none;
    color: #111827;
    background: #fff;
    font-size: 15px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.sc-form-field input {
    height: 48px;
    padding: 0 14px;
}

.sc-form-field textarea {
    min-height: 105px;
    padding: 14px;
    resize: vertical;
}

.sc-form-field input:focus,
.sc-form-field textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.sc-password-field {
    position: relative;
}

.sc-password-field input {
    padding-right: 72px;
}

.sc-password-field button {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    height: 34px;
    border: 0;
    border-radius: 11px;
    padding: 0 12px;
    background: #f3f4f6;
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
}

.sc-password-field button:hover {
    background: #fff7ed;
    color: #ff6500;
}

.sc-register-submit {
    width: 100%;
    height: 48px;
    border: 0;
    border-radius: 15px;
    background: #ff6500;
    color: #fff;
    font-size: 15px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 16px 36px rgba(255, 101, 0, .24);
}

.sc-register-submit:hover {
    background: #ea580c;
}

.sc-register-divider {
    position: relative;
    text-align: center;
    margin: 24px 0 16px;
}

.sc-register-divider::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: #e5e7eb;
}

.sc-register-divider span {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 0 12px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.sc-register-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.sc-register-actions a {
    min-height: 42px;
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    color: #111827;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 12px;
    font-size: 13px;
    font-weight: 1000;
}

.sc-register-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.sc-register-side {
    border-radius: 28px;
    padding: 34px;
    color: #fff;
    background:
        radial-gradient(circle at 80% 18%, rgba(255,255,255,.22), transparent 28%),
        linear-gradient(135deg, #111827 0%, #172131 52%, #ff6500 155%);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
    display: flex;
    align-items: center;
}

.sc-register-side span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.20);
    color: #ffb46b;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 14px;
}

.sc-register-side h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(30px, 3vw, 44px);
    line-height: 1.03;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-register-side p {
    margin: 14px 0 0;
    color: #cbd5e1;
    line-height: 1.7;
    font-size: 15px;
}

.sc-register-side ul {
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 12px;
}

.sc-register-side li {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 15px;
    padding: 12px 14px;
    color: #fff;
    font-weight: 900;
}

/* Seller Register */
.sc-register-section.seller {
    padding-top: 34px;
}

.sc-seller-register-wrap {
    width: min(1120px, 100%);
    margin: 0 auto;
}

.sc-seller-register-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 18px;
    margin-bottom: 22px;
}

.sc-seller-register-head a {
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.sc-seller-form {
    display: grid;
    gap: 18px;
}

.sc-seller-form-card {
    padding: 26px;
}

.sc-form-section-title {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 20px;
}

.sc-form-section-title > span {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #ff6500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    flex: 0 0 auto;
}

.sc-form-section-title h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.sc-form-section-title p {
    margin: 4px 0 0;
    color: #6b7280;
    font-size: 14px;
}

.sc-seller-submit-card {
    padding: 22px 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.sc-seller-submit-card h3 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    font-weight: 1000;
}

.sc-seller-submit-card p {
    margin: 5px 0 0;
    color: #6b7280;
}

.sc-seller-submit-card button {
    min-height: 46px;
    padding: 0 22px;
    border: 0;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
}

.sc-seller-submit-card button:hover {
    background: #ea580c;
}

@media (max-width: 900px) {
    .sc-register-wrap {
        grid-template-columns: 1fr;
    }

    .sc-register-side {
        display: none;
    }

    .sc-form-grid.three {
        grid-template-columns: 1fr 1fr;
    }

    .sc-seller-register-head,
    .sc-seller-submit-card {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .sc-register-section {
        padding: 24px 0 34px;
    }

    .sc-register-card,
    .sc-seller-form-card,
    .sc-seller-submit-card {
        border-radius: 20px;
    }

    .sc-register-card,
    .sc-seller-form-card {
        padding: 20px;
    }

    .sc-form-grid.two,
    .sc-form-grid.three {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .sc-register-actions {
        grid-template-columns: 1fr;
    }

    .sc-seller-register-head h1,
    .sc-register-head h1 {
        font-size: 30px;
    }

    .sc-seller-submit-card {
        padding: 20px;
    }

    .sc-seller-submit-card button {
        width: 100%;
    }
}

/* =========================================================
   Seller Landing Page
   ========================================================= */

.sc-seller-hero {
    padding: 54px 0 34px;
    background:
        radial-gradient(circle at 14% 16%, rgba(255, 101, 0, .11), transparent 28%),
        radial-gradient(circle at 90% 12%, rgba(17, 24, 39, .08), transparent 28%),
        linear-gradient(180deg, #fff7ed 0%, #ffffff 100%);
}

.sc-seller-hero-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 26px;
    align-items: center;
}

.sc-seller-kicker,
.sc-seller-section-head span,
.sc-seller-req-content span,
.sc-seller-payment-box > div > span,
.sc-seller-final-box span {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: 0 13px;
    border-radius: 999px;
    background: #fff;
    color: #ff6500;
    border: 1px solid #fed7aa;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 12px;
}

.sc-seller-hero-content h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(42px, 5vw, 72px);
    line-height: .96;
    letter-spacing: -.06em;
    font-weight: 1000;
}

.sc-seller-hero-content p {
    max-width: 620px;
    margin: 18px 0 0;
    color: #4b5563;
    font-size: 18px;
    line-height: 1.7;
}

.sc-seller-hero-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 28px;
}

.sc-seller-primary-btn,
.sc-seller-secondary-btn,
.sc-seller-req-content a,
.sc-seller-final-actions a {
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 1000;
}

.sc-seller-primary-btn,
.sc-seller-req-content a,
.sc-seller-final-actions a {
    background: #ff6500;
    color: #fff;
    box-shadow: 0 16px 36px rgba(255, 101, 0, .24);
}

.sc-seller-secondary-btn,
.sc-seller-final-actions a.secondary {
    background: #111827;
    color: #fff;
    box-shadow: none;
}

.sc-seller-hero-points {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 22px;
}

.sc-seller-hero-points span {
    background: rgba(255,255,255,.9);
    border: 1px solid #fed7aa;
    border-radius: 999px;
    padding: 8px 12px;
    font-size: 13px;
    color: #111827;
    font-weight: 900;
}

.sc-seller-hero-card {
    border-radius: 30px;
    padding: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 82% 18%, rgba(255,255,255,.22), transparent 28%),
        linear-gradient(135deg, #111827 0%, #172131 54%, #ff6500 145%);
    box-shadow: 0 26px 80px rgba(15, 23, 42, .18);
}

.sc-seller-card-top span {
    color: #ffb46b;
    font-size: 13px;
    font-weight: 1000;
}

.sc-seller-card-top strong {
    display: block;
    margin-top: 8px;
    font-size: 32px;
    line-height: 1.05;
    font-weight: 1000;
}

.sc-seller-dashboard-preview {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 24px;
}

.sc-seller-dashboard-preview div {
    min-height: 118px;
    border-radius: 22px;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.15);
    padding: 16px;
}

.sc-seller-dashboard-preview b {
    color: #ffb46b;
    font-size: 13px;
}

.sc-seller-dashboard-preview strong {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-size: 18px;
    line-height: 1.2;
}

.sc-seller-card-note {
    margin-top: 18px;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(255, 101, 0, .16);
    color: #fff;
    font-size: 13px;
    font-weight: 800;
}

.sc-seller-stats-section,
.sc-seller-benefits-section,
.sc-seller-requirements-section,
.sc-seller-payment-section,
.sc-seller-faq-section,
.sc-seller-final-cta {
    padding: 34px 0;
    background: #fff;
}

.sc-seller-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.sc-seller-stat {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
}

.sc-seller-stat strong {
    display: block;
    color: #ff6500;
    font-size: 36px;
    line-height: 1;
    font-weight: 1000;
}

.sc-seller-stat span {
    display: block;
    margin-top: 10px;
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.sc-seller-stat p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.sc-seller-section-head {
    max-width: 720px;
    margin-bottom: 24px;
}

.sc-seller-section-head h2,
.sc-seller-req-content h2,
.sc-seller-payment-box h2,
.sc-seller-final-box h2 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3.2vw, 46px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.sc-seller-section-head p,
.sc-seller-req-content p,
.sc-seller-payment-box p,
.sc-seller-final-box p {
    margin: 10px 0 0;
    color: #6b7280;
    font-size: 16px;
    line-height: 1.65;
}

.sc-seller-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.sc-seller-benefit-card {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 22px;
    transition: transform .18s ease, box-shadow .18s ease;
}

.sc-seller-benefit-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
}

.sc-seller-icon {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: #fff7ed;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    margin-bottom: 16px;
}

.sc-seller-benefit-card h3,
.sc-seller-step h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.sc-seller-benefit-card p,
.sc-seller-step p {
    margin: 8px 0 0;
    color: #6b7280;
    line-height: 1.55;
    font-size: 14px;
}

.sc-seller-steps-section {
    background: #f8fafc;
}

.sc-seller-steps-box {
    background: #111827;
    border-radius: 30px;
    padding: 30px;
    box-shadow: 0 26px 80px rgba(15, 23, 42, .16);
}

.sc-seller-section-head.light h2 {
    color: #fff;
}

.sc-seller-section-head.light p {
    color: #cbd5e1;
}

.sc-seller-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.sc-seller-step {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 22px;
    padding: 20px;
}

.sc-seller-step strong {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ff6500;
    color: #fff;
    font-weight: 1000;
    margin-bottom: 14px;
}

.sc-seller-step h3 {
    color: #fff;
}

.sc-seller-step p {
    color: #cbd5e1;
}

.sc-seller-requirements-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 24px;
    align-items: center;
}

.sc-seller-req-content a {
    margin-top: 22px;
}

.sc-seller-req-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.sc-seller-req-list div {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 22px;
    padding: 20px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
}

.sc-seller-req-list strong {
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.sc-seller-req-list p {
    margin: 8px 0 0;
    color: #6b7280;
    line-height: 1.55;
    font-size: 14px;
}

.sc-seller-payment-section {
    background: #fff7ed;
}

.sc-seller-payment-box {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 24px;
    align-items: center;
    background: #fff;
    border: 1px solid #fed7aa;
    border-radius: 30px;
    padding: 30px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.sc-seller-payment-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.sc-seller-payment-list div {
    background: #f8fafc;
    border-radius: 20px;
    padding: 18px;
    border: 1px solid #e5e7eb;
}

.sc-seller-payment-list strong {
    display: block;
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.sc-seller-payment-list span {
    display: block;
    margin-top: 6px;
    color: #6b7280;
    line-height: 1.5;
    font-size: 14px;
}

.sc-seller-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sc-seller-faq-grid details {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 16px 40px rgba(15, 23, 42, .05);
}

.sc-seller-faq-grid summary {
    cursor: pointer;
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.sc-seller-faq-grid p {
    margin: 12px 0 0;
    color: #6b7280;
    line-height: 1.6;
    font-size: 14px;
}

.sc-seller-final-cta {
    background: #f8fafc;
}

.sc-seller-final-box {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center;
    background:
        radial-gradient(circle at 86% 14%, rgba(255,255,255,.20), transparent 28%),
        linear-gradient(135deg, #111827 0%, #172131 58%, #ff6500 150%);
    border-radius: 30px;
    padding: 32px;
    color: #fff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
}

.sc-seller-final-box h2 {
    color: #fff;
}

.sc-seller-final-box p {
    color: #cbd5e1;
}

.sc-seller-final-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

@media (max-width: 1000px) {
    .sc-seller-hero-grid,
    .sc-seller-requirements-grid,
    .sc-seller-payment-box {
        grid-template-columns: 1fr;
    }

    .sc-seller-stats-grid,
    .sc-seller-benefit-grid,
    .sc-seller-steps-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .sc-seller-hero {
        padding: 34px 0 24px;
    }

    .sc-seller-hero-content h1 {
        font-size: 38px;
    }

    .sc-seller-hero-content p {
        font-size: 15px;
    }

    .sc-seller-hero-card,
    .sc-seller-steps-box,
    .sc-seller-payment-box,
    .sc-seller-final-box {
        border-radius: 22px;
        padding: 20px;
    }

    .sc-seller-dashboard-preview,
    .sc-seller-stats-grid,
    .sc-seller-benefit-grid,
    .sc-seller-steps-grid,
    .sc-seller-req-list,
    .sc-seller-payment-list,
    .sc-seller-faq-grid {
        grid-template-columns: 1fr;
    }

    .sc-seller-final-box {
        align-items: flex-start;
        flex-direction: column;
    }

    .sc-seller-final-actions,
    .sc-seller-final-actions a,
    .sc-seller-primary-btn,
    .sc-seller-secondary-btn,
    .sc-seller-req-content a {
        width: 100%;
    }
}

/* =========================================================
   Shopping Cart Page - Marketplace Design
   ========================================================= */

.sc-cart-page {
    padding: 34px 0 46px;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 101, 0, .07), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 60vh;
}

.sc-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 20px;
    align-items: flex-start;
}

.sc-cart-main {
    min-width: 0;
}

.sc-cart-header-card,
.sc-cart-list-card,
.sc-cart-summary-card,
.sc-cart-side-help,
.sc-empty-cart-card,
.sc-cart-help-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .07);
}

.sc-cart-header-card {
    padding: 24px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.sc-cart-header-card span,
.sc-empty-cart-content span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.sc-cart-header-card h1,
.sc-empty-cart-card h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    letter-spacing: -.04em;
    font-weight: 1000;
}

.sc-cart-header-card p,
.sc-empty-cart-card p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.6;
}

.sc-cart-header-card > a {
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 1000;
}

.sc-cart-header-card > a:hover {
    background: #ff6500;
}

.sc-cart-list-card {
    padding: 0;
    overflow: hidden;
}

.sc-cart-list-head {
    padding: 18px 22px;
    border-bottom: 1px solid #eef2f7;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sc-cart-list-head h2 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    font-weight: 1000;
}

.sc-cart-list-head span {
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.sc-cart-item {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) 130px;
    gap: 18px;
    padding: 20px 22px;
    border-bottom: 1px solid #eef2f7;
}

.sc-cart-item:last-of-type {
    border-bottom: 0;
}

.sc-cart-item-img {
    height: 150px;
    border-radius: 18px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.sc-cart-item-img img {
    max-width: 88%;
    max-height: 125px;
    object-fit: contain;
    display: block;
}

.sc-cart-item-info {
    min-width: 0;
}

.sc-cart-item-info h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 1000;
}

.sc-cart-item-info h3 a {
    color: inherit;
    text-decoration: none;
}

.sc-cart-item-info h3 a:hover {
    color: #ff6500;
}

.sc-cart-meta-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 10px;
}

.sc-cart-meta-row span {
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
}

.sc-cart-meta-row .variant {
    background: #f3f4f6;
    color: #111827;
}

.sc-cart-meta-row .stock {
    background: #dcfce7;
    color: #166534;
}

.sc-cart-price-line {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    flex-wrap: wrap;
}

.sc-cart-price-line strong {
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.sc-cart-price-line small {
    color: #6b7280;
    font-size: 12px;
}

.sc-cart-item-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.sc-cart-item-actions form {
    margin: 0;
}

.sc-cart-qty-box {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    min-height: 36px;
    padding: 0 12px;
}

.sc-cart-qty-box label {
    color: #111827;
    font-size: 13px;
    font-weight: 900;
}

.sc-cart-qty-box strong {
    color: #ff6500;
    font-size: 14px;
    font-weight: 1000;
}

.sc-cart-item-actions button,
.sc-cart-item-actions a {
    border: 0;
    background: transparent;
    color: #007185;
    cursor: pointer;
    font-size: 13px;
    font-weight: 900;
    padding: 0;
    text-decoration: none;
}

.sc-cart-item-actions button:hover,
.sc-cart-item-actions a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.sc-cart-item-total {
    text-align: right;
}

.sc-cart-item-total strong {
    color: #111827;
    font-size: 19px;
    font-weight: 1000;
}

.sc-cart-mobile-price {
    display: none;
}

.sc-cart-subtotal-line {
    border-top: 1px solid #eef2f7;
    padding: 18px 22px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    align-items: center;
    color: #111827;
    font-size: 16px;
}

.sc-cart-subtotal-line strong {
    font-size: 20px;
    font-weight: 1000;
}

.sc-cart-summary {
    position: sticky;
    top: 90px;
}

.sc-cart-summary-card {
    padding: 20px;
}

.sc-cart-check-icon {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    margin-bottom: 10px;
}

.sc-cart-success-text {
    margin: 0 0 16px;
    color: #166534;
    font-size: 14px;
    font-weight: 900;
}

.sc-cart-summary-row,
.sc-cart-summary-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #eef2f7;
}

.sc-cart-summary-row span,
.sc-cart-summary-total span {
    color: #6b7280;
    font-size: 14px;
    font-weight: 800;
}

.sc-cart-summary-row strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
    text-align: right;
}

.sc-cart-summary-total {
    border-bottom: 0;
    padding-top: 14px;
}

.sc-cart-summary-total span {
    color: #111827;
    font-size: 16px;
}

.sc-cart-summary-total strong {
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
}

.sc-checkout-btn,
.sc-continue-btn,
.sc-cart-primary-btn,
.sc-cart-secondary-btn {
    min-height: 44px;
    border-radius: 999px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
}

.sc-checkout-btn {
    width: 100%;
    background: #ff6500;
    color: #fff;
    margin-top: 14px;
    box-shadow: 0 14px 32px rgba(255, 101, 0, .22);
}

.sc-checkout-btn:hover {
    background: #ea580c;
}

.sc-continue-btn {
    width: 100%;
    background: #f3f4f6;
    color: #111827;
    margin-top: 10px;
}

.sc-continue-btn:hover {
    background: #fff7ed;
    color: #ff6500;
}

.sc-cart-secure-note {
    margin-top: 14px;
    padding: 12px;
    border-radius: 14px;
    background: #f8fafc;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 800;
}

.sc-cart-side-help {
    margin-top: 14px;
    padding: 18px;
}

.sc-cart-side-help h3,
.sc-cart-help-card h2 {
    margin: 0;
    color: #111827;
    font-size: 17px;
    font-weight: 1000;
}

.sc-cart-side-help ul,
.sc-cart-help-card ul {
    margin: 12px 0 0;
    padding-left: 18px;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.8;
    font-weight: 750;
}

.sc-cart-help-card a {
    margin-top: 14px;
    display: inline-flex;
    color: #ff6500;
    text-decoration: none;
    font-weight: 1000;
}

/* Empty Cart */
.sc-empty-cart-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 20px;
    align-items: stretch;
}

.sc-empty-cart-card {
    padding: 34px;
    display: flex;
    gap: 22px;
    align-items: center;
}

.sc-empty-cart-icon {
    width: 110px;
    height: 110px;
    border-radius: 28px;
    background: #fff7ed;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 48px;
    flex: 0 0 auto;
}

.sc-empty-cart-actions {
    margin-top: 18px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.sc-cart-primary-btn {
    background: #ff6500;
    color: #fff;
    padding: 0 22px;
}

.sc-cart-secondary-btn {
    background: #111827;
    color: #fff;
    padding: 0 22px;
}

.sc-cart-help-card {
    padding: 22px;
}

/* Tablet */
@media (max-width: 980px) {
    .sc-cart-layout,
    .sc-empty-cart-wrap {
        grid-template-columns: 1fr;
    }

    .sc-cart-summary {
        position: static;
    }
}

/* Mobile */
@media (max-width: 620px) {
    .sc-cart-page {
        padding: 22px 0 32px;
    }

    .sc-cart-header-card {
        align-items: flex-start;
        flex-direction: column;
        padding: 20px;
        border-radius: 20px;
    }

    .sc-cart-header-card > a {
        width: 100%;
        justify-content: center;
    }

    .sc-cart-list-head span {
        display: none;
    }

    .sc-cart-item {
        grid-template-columns: 105px minmax(0, 1fr);
        gap: 12px;
        padding: 16px;
    }

    .sc-cart-item-img {
        height: 105px;
        border-radius: 14px;
    }

    .sc-cart-item-img img {
        max-height: 82px;
    }

    .sc-cart-item-total {
        display: none;
    }

    .sc-cart-mobile-price {
        display: block;
        color: #111827;
        font-size: 16px;
        font-weight: 1000;
        margin-bottom: 6px;
    }

    .sc-cart-item-info h3 {
        font-size: 14px;
        max-height: 40px;
        overflow: hidden;
    }

    .sc-cart-price-line {
        display: none;
    }

    .sc-cart-item-actions {
        gap: 9px;
        margin-top: 10px;
    }

    .sc-cart-subtotal-line {
        justify-content: space-between;
        padding: 16px;
    }

    .sc-empty-cart-card {
        flex-direction: column;
        align-items: flex-start;
        padding: 24px;
    }

    .sc-empty-cart-icon {
        width: 84px;
        height: 84px;
        border-radius: 22px;
        font-size: 36px;
    }

    .sc-empty-cart-actions,
    .sc-cart-primary-btn,
    .sc-cart-secondary-btn {
        width: 100%;
    }
}

/* =========================================================
   My Orders Page - Marketplace Design
   ========================================================= */

.az-orders-page {
    padding: 30px 0 46px;
    background:
        radial-gradient(circle at 10% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 60vh;
    color: #111827;
}

.az-orders-breadcrumb {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 18px;
    font-size: 14px;
}

.az-orders-breadcrumb a {
    color: #007185;
    text-decoration: none;
    font-weight: 800;
}

.az-orders-breadcrumb a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.az-orders-breadcrumb span {
    color: #9ca3af;
}

.az-orders-breadcrumb strong {
    color: #ff6500;
    font-weight: 900;
}

.az-orders-title-row {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 18px;
}

.az-orders-title-row h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.az-orders-tabs {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    flex-wrap: wrap;
}

.az-orders-tabs a {
    color: #374151;
    text-decoration: none;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 900;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
}

.az-orders-tabs a.active {
    color: #fff;
    background: #111827;
    border-color: #111827;
}

.az-orders-tabs a:hover {
    color: #fff;
    background: #ff6500;
    border-color: #ff6500;
}

.az-order-search {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 450px;
}

.az-order-search input {
    height: 42px;
    flex: 1;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 0 14px;
    outline: none;
    font-size: 14px;
    background: #fff;
}

.az-order-search input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.az-order-search button {
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    padding: 0 18px;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
}

.az-order-search button:hover {
    background: #ff6500;
}

.az-orders-filter-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 16px 0;
}

.az-orders-filter-row strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.az-orders-filter-row select {
    height: 38px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #fff;
    color: #111827;
    padding: 0 12px;
    font-size: 14px;
    outline: none;
    font-weight: 800;
}

.az-orders-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px;
    align-items: flex-start;
}

.az-orders-list {
    display: grid;
    gap: 16px;
}

.az-order-card {
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.az-order-card-head {
    background:
        radial-gradient(circle at 90% 18%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-bottom: 1px solid #eef2f7;
    padding: 16px 18px;
    display: grid;
    grid-template-columns: 150px 150px 130px minmax(240px, 1fr);
    gap: 12px;
    align-items: start;
}

.az-order-head-item span,
.az-order-head-right span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    line-height: 1.3;
    text-transform: uppercase;
    font-weight: 1000;
    letter-spacing: .02em;
}

.az-order-head-item strong {
    display: block;
    margin-top: 4px;
    color: #111827;
    font-size: 14px;
    font-weight: 900;
}

.az-order-head-right {
    text-align: right;
}

.az-order-head-right div {
    margin-top: 5px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
    color: #9ca3af;
}

.az-order-head-right a {
    color: #007185;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.az-order-head-right a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.az-order-card-body {
    padding: 20px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 18px;
    align-items: start;
}

.az-order-main-info h2 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 1000;
}

.az-order-main-info p {
    margin: 6px 0;
    color: #374151;
    font-size: 14px;
    line-height: 1.5;
}

.az-payment-status {
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 12px;
}

.az-payment-status.paid {
    color: #166534;
    background: #dcfce7;
}

.az-payment-status.failed {
    color: #991b1b;
    background: #fee2e2;
}

.az-payment-status.pending {
    color: #92400e;
    background: #fef3c7;
}

.az-coupon-line {
    color: #166534 !important;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 14px;
    padding: 10px 12px;
    display: inline-flex;
    margin-top: 10px !important;
}

.az-order-action-box {
    display: grid;
    gap: 8px;
}

.az-order-action-box a {
    min-height: 38px;
    border-radius: 999px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 14px;
    font-size: 13px;
    font-weight: 1000;
}

.az-btn-primary {
    background: #ff6500;
    border: 1px solid #ff6500;
    color: #fff;
    box-shadow: 0 12px 28px rgba(255, 101, 0, .18);
}

.az-btn-primary:hover {
    background: #ea580c;
}

.az-btn-light {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    color: #111827;
}

.az-btn-light:hover {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #ff6500;
}

.az-btn-pay {
    background: #111827;
    border: 1px solid #111827;
    color: #fff;
}

.az-btn-pay:hover {
    background: #ff6500;
    border-color: #ff6500;
}

.az-orders-side {
    position: sticky;
    top: 90px;
    display: grid;
    gap: 14px;
}

.az-side-card {
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    background: #fff;
    padding: 20px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.az-side-card h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.az-side-card p {
    margin: 10px 0 14px;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.az-side-card a {
    color: #ff6500;
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
}

.az-side-card a:hover {
    text-decoration: underline;
}

.az-empty-orders-card {
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    background: #fff;
    padding: 30px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.az-empty-icon {
    width: 90px;
    height: 90px;
    border-radius: 24px;
    background: #fff7ed;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 42px;
    flex: 0 0 auto;
}

.az-empty-orders-card h2 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.az-empty-orders-card p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.az-empty-orders-card a {
    margin-top: 14px;
    min-height: 40px;
    border-radius: 999px;
    padding: 0 16px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 1000;
}

/* Tablet */
@media (max-width: 1020px) {
    .az-orders-layout {
        grid-template-columns: 1fr;
    }

    .az-orders-side {
        position: static;
        grid-template-columns: 1fr 1fr;
    }

    .az-order-card-head {
        grid-template-columns: repeat(3, 1fr);
    }

    .az-order-head-right {
        grid-column: 1 / -1;
        text-align: left;
    }

    .az-order-head-right div {
        justify-content: flex-start;
    }

    .az-order-search {
        min-width: 360px;
    }
}

/* Mobile */
@media (max-width: 680px) {
    .az-orders-page {
        padding: 20px 0 34px;
    }

    .az-orders-title-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
        padding: 20px;
        border-radius: 20px;
    }

    .az-order-search {
        width: 100%;
        min-width: 0;
    }

    .az-orders-tabs {
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 4px;
    }

    .az-orders-filter-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .az-order-card {
        border-radius: 18px;
    }

    .az-order-card-head {
        grid-template-columns: 1fr 1fr;
        padding: 14px;
    }

    .az-order-head-right {
        grid-column: 1 / -1;
    }

    .az-order-card-body {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .az-order-action-box {
        grid-template-columns: 1fr 1fr;
    }

    .az-orders-side {
        grid-template-columns: 1fr;
    }

    .az-empty-orders-card {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 440px) {
    .az-order-search {
        flex-direction: column;
    }

    .az-order-search input,
    .az-order-search button {
        width: 100%;
    }

    .az-order-action-box {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Track Order Page - Marketplace Design
   ========================================================= */

.sc-track-page {
    padding: 30px 0 46px;
    background:
        radial-gradient(circle at 10% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 60vh;
}

.sc-track-hero {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    padding: 26px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
    display: grid;
    grid-template-columns: minmax(0, 1fr) 440px;
    gap: 24px;
    align-items: end;
    margin-bottom: 20px;
}

.sc-track-hero span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.sc-track-hero h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.05;
    letter-spacing: -.04em;
    font-weight: 1000;
}

.sc-track-hero p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 15px;
    line-height: 1.55;
}

.sc-track-search {
    display: flex;
    gap: 8px;
    align-items: center;
}

.sc-track-search input {
    height: 44px;
    flex: 1;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 0 14px;
    outline: none;
    font-size: 14px;
    background: #fff;
}

.sc-track-search input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.sc-track-search button {
    height: 44px;
    border: 0;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    padding: 0 18px;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
}

.sc-track-search button:hover {
    background: #ff6500;
}

.sc-track-alert {
    border-radius: 18px;
    padding: 15px 16px;
    display: grid;
    gap: 4px;
    margin-bottom: 18px;
    font-size: 14px;
}

.sc-track-alert.error {
    background: #fee2e2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

.sc-track-alert.warning {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #92400e;
}

.sc-track-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 20px;
    align-items: flex-start;
}

.sc-track-main {
    display: grid;
    gap: 16px;
    min-width: 0;
}

.sc-track-summary-card,
.sc-track-card,
.sc-track-side-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.sc-track-summary-card {
    padding: 22px;
}

.sc-track-summary-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
}

.sc-track-summary-top span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 1000;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.sc-track-summary-top h2 {
    margin: 0;
    color: #111827;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 1000;
}

.sc-track-badge-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.sc-track-badge {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
}

.sc-track-badge.success {
    color: #166534;
    background: #dcfce7;
}

.sc-track-badge.danger {
    color: #991b1b;
    background: #fee2e2;
}

.sc-track-badge.warning {
    color: #92400e;
    background: #fef3c7;
}

.sc-track-badge.info {
    color: #1d4ed8;
    background: #dbeafe;
}

.sc-track-progress {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    position: relative;
    gap: 8px;
}

.sc-track-progress-step {
    position: relative;
    text-align: center;
    color: #9ca3af;
    font-size: 12px;
    font-weight: 900;
}

.sc-track-progress-step::before {
    content: "";
    position: absolute;
    top: 14px;
    left: -50%;
    width: 100%;
    height: 3px;
    background: #e5e7eb;
    z-index: 0;
}

.sc-track-progress-step:first-child::before {
    display: none;
}

.sc-track-progress-step.done::before {
    background: #ff6500;
}

.sc-track-progress-step .dot {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: #e5e7eb;
    color: #fff;
    margin: 0 auto 8px;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
}

.sc-track-progress-step.done .dot {
    background: #ff6500;
}

.sc-track-progress-step.done {
    color: #111827;
}

.sc-track-card {
    padding: 20px;
}

.sc-track-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
}

.sc-track-card-head h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -.02em;
}

.sc-track-card-head > strong {
    color: #111827;
    font-size: 20px;
    font-weight: 1000;
}

.sc-track-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.sc-track-info-grid div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    padding: 14px;
}

.sc-track-info-grid span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.sc-track-info-grid strong {
    color: #111827;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 1000;
    word-break: break-word;
}

.sc-track-note {
    margin-top: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 16px;
    padding: 14px;
}

.sc-track-note strong {
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.sc-track-note p {
    margin: 6px 0 0;
    color: #6b7280;
    line-height: 1.55;
}

.sc-track-courier-btn {
    margin-top: 16px;
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 1000;
}

.sc-track-courier-btn:hover {
    background: #ea580c;
}

.sc-track-timeline {
    position: relative;
    display: grid;
    gap: 0;
}

.sc-track-timeline-item {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 12px;
    position: relative;
    padding-bottom: 18px;
}

.sc-track-timeline-item::before {
    content: "";
    position: absolute;
    left: 8px;
    top: 18px;
    bottom: 0;
    width: 2px;
    background: #e5e7eb;
}

.sc-track-timeline-item:last-child::before {
    display: none;
}

.sc-track-timeline-dot {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: #ff6500;
    margin-top: 2px;
    position: relative;
    z-index: 2;
    box-shadow: 0 0 0 5px #fff7ed;
}

.sc-track-timeline-item.active .sc-track-timeline-dot {
    background: #16a34a;
    box-shadow: 0 0 0 5px #dcfce7;
}

.sc-track-timeline-item strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.sc-track-timeline-item p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.5;
}

.sc-track-timeline-item small {
    display: block;
    margin-top: 5px;
    color: #9ca3af;
    font-size: 12px;
    font-weight: 800;
}

.sc-track-empty-timeline {
    background: #f8fafc;
    border: 1px dashed #d1d5db;
    border-radius: 16px;
    padding: 16px;
    color: #6b7280;
    font-size: 14px;
    font-weight: 800;
}

.sc-track-items {
    display: grid;
    gap: 12px;
}

.sc-track-item {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    padding: 14px;
}

.sc-track-item h3 {
    margin: 0;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.sc-track-item p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.sc-track-item-price {
    text-align: right;
    flex: 0 0 auto;
}

.sc-track-item-price span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.sc-track-item-price strong {
    display: block;
    margin-top: 5px;
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.sc-track-side {
    position: sticky;
    top: 90px;
    display: grid;
    gap: 14px;
}

.sc-track-side-card {
    padding: 20px;
}

.sc-track-side-card h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.sc-track-side-card p {
    margin: 10px 0 0;
    color: #6b7280;
    line-height: 1.6;
    font-size: 14px;
}

.sc-track-side-card a {
    margin-top: 14px;
    display: inline-flex;
    color: #ff6500;
    text-decoration: none;
    font-weight: 1000;
    font-size: 14px;
}

.sc-track-side-card a:hover {
    text-decoration: underline;
}

@media (max-width: 1000px) {
    .sc-track-hero,
    .sc-track-layout {
        grid-template-columns: 1fr;
    }

    .sc-track-side {
        position: static;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .sc-track-side {
        grid-template-columns: 1fr;
    }

    .sc-track-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sc-track-summary-top {
        flex-direction: column;
    }

    .sc-track-badge-row {
        justify-content: flex-start;
    }

    .sc-track-progress {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        position: relative;
        gap: 8px;
        align-items: start;
    }

    .sc-track-progress-step {
        display: flex;
        align-items: center;
        gap: 10px;
        text-align: left;
    }

    .sc-track-progress-step::before {
        display: none;
    }

    .sc-track-progress-step .dot {
        margin: 0;
        flex: 0 0 auto;
    }
}

@media (max-width: 540px) {
    .sc-track-page {
        padding: 20px 0 34px;
    }

    .sc-track-hero,
    .sc-track-summary-card,
    .sc-track-card,
    .sc-track-side-card {
        border-radius: 18px;
    }

    .sc-track-hero {
        padding: 20px;
    }

    .sc-track-search {
        flex-direction: column;
    }

    .sc-track-search input,
    .sc-track-search button {
        width: 100%;
    }

    .sc-track-info-grid {
        grid-template-columns: 1fr;
    }

    .sc-track-card-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .sc-track-item {
        flex-direction: column;
    }

    .sc-track-item-price {
        text-align: left;
    }
}

.sc-track-alert.success {
    background: #dcfce7;
    border: 1px solid #bbf7d0;
    color: #166534;
}

/* =========================================================
   Track Order Progress Fix
   ========================================================= */

.sc-track-summary-card {
    overflow: hidden;
}

.sc-track-progress {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 0 !important;
    padding: 6px 0 2px;
}

.sc-track-progress-step {
    min-width: 0;
    text-align: center;
    position: relative;
}

.sc-track-progress-step span {
    display: block;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 1000;
    color: #9ca3af;
    word-break: normal;
}

.sc-track-progress-step.done span {
    color: #111827;
}

.sc-track-progress-step::before {
    content: "";
    position: absolute;
    top: 15px;
    left: -50%;
    width: 100%;
    height: 3px;
    background: #e5e7eb;
    z-index: 0;
}

.sc-track-progress-step.done::before {
    background: #ff6500;
}

.sc-track-progress-step:first-child::before {
    display: none;
}

.sc-track-progress-step .dot {
    width: 30px;
    height: 30px;
    margin: 0 auto 8px;
    position: relative;
    z-index: 2;
}

.sc-track-badge-row {
    align-items: center;
}

/* remove testing borders */
.sc-track-summary-card,
.sc-track-progress,
.sc-track-progress-step,
.sc-track-timeline,
.sc-track-timeline-item {
    border: none !important;
    outline: none !important;
}

/* Mobile: make progress vertical cleanly */
@media (max-width: 760px) {
    .sc-track-progress {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .sc-track-progress-step {
        display: flex;
        align-items: center;
        gap: 10px;
        text-align: left;
    }

    .sc-track-progress-step::before {
        display: none !important;
    }

    .sc-track-progress-step .dot {
        margin: 0;
        flex: 0 0 auto;
    }

    .sc-track-progress-step span {
        font-size: 13px;
    }
}

/* =========================================================
   Products Page - Clean Grid Search Design
   ========================================================= */

.az-grid-products-page {
    background: #f5f6f8;
    color: #111827;
    padding: 18px 0 42px;
    min-height: 70vh;
}

.az-grid-products-top {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 18px 20px;
    margin-bottom: 14px;
    box-shadow: 0 12px 35px rgba(15, 23, 42, .04);
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
}

.az-grid-products-top p {
    margin: 0 0 4px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 700;
}

.az-grid-products-top h1 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    font-weight: 1000;
    line-height: 1.1;
    letter-spacing: -.03em;
}

.az-grid-mobile-filter-btn {
    display: none;
    min-height: 36px;
    border: 1px solid #d5d9d9;
    background: #fff;
    border-radius: 999px;
    padding: 0 16px;
    color: #111;
    font-weight: 800;
    cursor: pointer;
}

.az-grid-products-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 14px;
    align-items: flex-start;
}

.az-grid-filter-sidebar {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px;
    position: sticky;
    top: 88px;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    box-shadow: 0 12px 35px rgba(15, 23, 42, .04);
}

.az-grid-filter-sidebar::-webkit-scrollbar {
    width: 6px;
}

.az-grid-filter-sidebar::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 999px;
}

.az-grid-filter-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.az-grid-filter-head h2 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    font-weight: 1000;
}

.az-grid-filter-head button {
    display: none;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: #f3f4f6;
    color: #111;
    font-size: 22px;
    cursor: pointer;
}

.az-grid-filter-block {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #eef2f7;
}

.az-grid-filter-block:last-child {
    border-bottom: 0;
}

.az-grid-filter-block h3 {
    margin: 0 0 10px;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.az-grid-filter-block input[type="text"],
.az-grid-filter-block input[type="number"],
.az-grid-filter-block select {
    width: 100%;
    height: 38px;
    border: 1px solid #d1d5db;
    border-radius: 10px;
    background: #fff;
    color: #111827;
    padding: 0 11px;
    font-size: 13px;
    outline: none;
}

.az-grid-filter-block input:focus,
.az-grid-filter-block select:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.az-grid-price-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.az-grid-check-line {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 8px 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.35;
    cursor: pointer;
}

.az-grid-check-line input {
    margin-top: 2px;
    accent-color: #ff6500;
}

.az-grid-check-line.rating span {
    color: #f59e0b;
}

.az-grid-pill-options {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.az-grid-pill-options label input {
    display: none;
}

.az-grid-pill-options label span {
    min-width: 42px;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    cursor: pointer;
}

.az-grid-pill-options label input:checked + span {
    border-color: #ff6500;
    background: #fff7ed;
    color: #ff6500;
    font-weight: 900;
}

.az-grid-filter-actions {
    display: grid;
    gap: 8px;
}

.az-grid-filter-actions button,
.az-grid-filter-actions a {
    min-height: 38px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 1000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.az-grid-filter-actions button {
    border: 1px solid #ff6500;
    background: #ff6500;
    color: #fff;
    cursor: pointer;
}

.az-grid-filter-actions button:hover {
    background: #ea580c;
}

.az-grid-filter-actions a {
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
}

.az-grid-products-content {
    min-width: 0;
}

.az-grid-result-info {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 13px 16px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    box-shadow: 0 12px 35px rgba(15, 23, 42, .04);
}

.az-grid-result-info strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.az-grid-result-info span {
    margin-left: 5px;
    color: #6b7280;
    font-size: 13px;
}

.az-grid-result-info select {
    height: 36px;
    min-width: 170px;
    border: 1px solid #d1d5db;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    padding: 0 12px;
    font-size: 13px;
    outline: none;
    font-weight: 700;
}

.az-grid-product-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.az-grid-product-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    min-width: 0;
    overflow: hidden;
    box-shadow: 0 12px 35px rgba(15, 23, 42, .05);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.az-grid-product-card:hover {
    transform: translateY(-4px);
    border-color: #fed7aa;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .10);
}

.az-grid-product-image {
    height: 275px;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-bottom: 1px solid #eef2f7;
}

.az-grid-product-image img {
    max-width: 88%;
    max-height: 235px;
    object-fit: contain;
    display: block;
    transition: transform .2s ease;
}

.az-grid-product-card:hover .az-grid-product-image img {
    transform: scale(1.04);
}

.az-grid-top-badge {
    position: absolute;
    left: 12px;
    top: 12px;
    min-height: 26px;
    padding: 0 10px;
    background: #ff6500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
    border-radius: 999px;
}

.az-grid-product-body {
    padding: 13px;
}

.az-grid-color-link {
    color: #007185;
    font-size: 13px;
    margin-bottom: 8px;
    font-weight: 800;
}

.az-grid-product-body h2 {
    margin: 0;
    min-height: 42px;
    max-height: 42px;
    overflow: hidden;
    color: #111827;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 1000;
}

.az-grid-product-body h2 a {
    color: inherit;
    text-decoration: none;
}

.az-grid-product-body h2 a:hover {
    color: #ff6500;
}

.az-grid-rating-row {
    margin-top: 9px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.az-grid-rating-row span {
    color: #f59e0b;
    letter-spacing: -1px;
    font-size: 15px;
}

.az-grid-rating-row a {
    color: #007185;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
}

.az-grid-bought-line {
    color: #6b7280;
    font-size: 12px;
    margin-top: 5px;
}

.az-grid-price-line {
    margin-top: 10px;
    display: flex;
    align-items: baseline;
    gap: 5px;
    flex-wrap: wrap;
}

.az-grid-price-line strong {
    color: #111827;
    font-size: 23px;
    font-weight: 1000;
}

.az-grid-price-line small,
.az-grid-price-line del,
.az-grid-price-line span {
    color: #6b7280;
    font-size: 12px;
}

.az-grid-delivery-line {
    color: #111827;
    font-size: 13px;
    line-height: 1.35;
    margin-top: 5px;
    font-weight: 800;
}

.az-grid-product-meta {
    margin-top: 10px;
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

.az-grid-product-meta span {
    color: #6b7280;
    font-size: 12px;
}

.az-grid-product-meta .stock {
    color: #16a34a;
    font-weight: 900;
}

.az-grid-product-meta .out {
    color: #b12704;
    font-weight: 900;
}

.az-grid-card-actions {
    margin-top: 12px;
    display: grid;
    gap: 8px;
}

.az-grid-view-btn,
.az-grid-light-btn {
    min-height: 36px;
    border-radius: 999px;
    border: 1px solid transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #111827;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    width: 100%;
    cursor: pointer;
}

.az-grid-view-btn {
    background: #ff6500;
    border-color: #ff6500;
    color: #fff;
}

.az-grid-view-btn:hover {
    background: #ea580c;
}

.az-grid-light-btn {
    background: #fff;
    border-color: #d1d5db;
}

.az-grid-light-btn:hover {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #ff6500;
}

.az-grid-card-actions form {
    margin: 0;
}

.az-grid-no-products {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px;
    text-align: center;
    box-shadow: 0 12px 35px rgba(15, 23, 42, .04);
}

.az-grid-no-products h2 {
    margin: 0;
    color: #111827;
    font-size: 26px;
    font-weight: 1000;
}

.az-grid-no-products p {
    color: #6b7280;
}

.az-grid-no-products a {
    color: #ff6500;
    font-weight: 1000;
    text-decoration: none;
}

.az-grid-filter-overlay {
    display: none;
}

@media (max-width: 1180px) {
    .az-grid-product-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .az-grid-product-image {
        height: 250px;
    }
}

@media (max-width: 900px) {
    .az-grid-mobile-filter-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .az-grid-products-layout {
        grid-template-columns: 1fr;
    }

    .az-grid-filter-sidebar {
        position: fixed;
        top: 0;
        left: -310px;
        bottom: 0;
        width: 300px;
        max-width: 88vw;
        z-index: 1001;
        background: #fff;
        border-radius: 0 18px 18px 0;
        border-right: 1px solid #ddd;
        padding: 18px;
        transition: left .22s ease;
        max-height: none;
    }

    body.filters-open .az-grid-filter-sidebar {
        left: 0;
    }

    body.filters-open {
        overflow: hidden;
    }

    body.filters-open .az-grid-filter-overlay {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .45);
        z-index: 1000;
    }

    .az-grid-filter-head button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}

@media (max-width: 720px) {
    .az-grid-product-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .az-grid-result-info {
        align-items: flex-start;
        flex-direction: column;
    }

    .az-grid-result-info form,
    .az-grid-result-info select {
        width: 100%;
    }

    .az-grid-product-image {
        height: 190px;
    }

    .az-grid-product-image img {
        max-height: 155px;
    }
}

@media (max-width: 480px) {
    .az-grid-products-page {
        padding-top: 12px;
    }

    .az-grid-products-top {
        border-radius: 14px;
        padding: 15px;
    }

    .az-grid-products-top h1 {
        font-size: 22px;
    }

    .az-grid-product-image {
        height: 145px;
    }

    .az-grid-product-image img {
        max-height: 120px;
    }

    .az-grid-product-body {
        padding: 9px;
    }

    .az-grid-product-body h2 {
        font-size: 13px;
        min-height: 36px;
        max-height: 36px;
    }

    .az-grid-rating-row,
    .az-grid-bought-line,
    .az-grid-delivery-line {
        font-size: 12px;
    }

    .az-grid-price-line strong {
        font-size: 18px;
    }

    .az-grid-card-actions {
        display: none;
    }

    .az-grid-filter-sidebar {
        width: 286px;
    }
}

/* =========================================================
   Product Detail Page - Marketplace Product Layout
   ========================================================= */

.fm-amz-product-page {
    background: #fff;
    color: #111827;
    padding: 20px 0 42px;
}

.fm-amz-breadcrumb {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #6b7280;
    font-size: 13px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.fm-amz-breadcrumb a {
    color: #007185;
    text-decoration: none;
}

.fm-amz-breadcrumb a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.fm-amz-breadcrumb strong {
    color: #111827;
    font-weight: 700;
}

.fm-amz-product-layout {
    display: grid;
    grid-template-columns: minmax(420px, 47%) minmax(0, 1fr) 245px;
    gap: 28px;
    align-items: flex-start;
}

.fm-amz-gallery {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 14px;
    position: sticky;
    top: 92px;
}

.fm-amz-thumbs {
    display: grid;
    gap: 10px;
    align-content: start;
}

.fm-amz-thumb {
    width: 54px;
    height: 64px;
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    padding: 4px;
}

.fm-amz-thumb.active {
    border-color: #ff6500;
    box-shadow: 0 0 0 2px rgba(255, 101, 0, .15);
}

.fm-amz-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fm-amz-main-image {
    min-height: 560px;
    background: #f8fafc;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.fm-amz-main-image img {
    max-width: 92%;
    max-height: 520px;
    object-fit: contain;
    display: block;
}

.fm-amz-discount-badge {
    position: absolute;
    left: 14px;
    top: 14px;
    background: #cc0c39;
    color: #fff;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 700;
}

.fm-amz-center {
    min-width: 0;
}

.fm-amz-store-link {
    color: #007185;
    font-size: 14px;
    margin-bottom: 7px;
}

.fm-amz-center h1 {
    margin: 0;
    color: #111;
    font-size: 25px;
    line-height: 1.32;
    font-weight: 500;
    letter-spacing: normal;
}

.fm-amz-rating-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 10px;
    font-size: 14px;
}

.fm-amz-rating-row > span {
    color: #111;
}

.fm-amz-rating-row strong {
    color: #ffa41c;
    letter-spacing: -1px;
    font-size: 16px;
}

.fm-amz-rating-row a {
    color: #007185;
    text-decoration: none;
}

.fm-amz-rating-row a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.fm-amz-rating-row em {
    color: #d5d9d9;
    font-style: normal;
}

.fm-amz-month-line {
    margin-top: 8px;
    color: #111;
    font-size: 13px;
    font-weight: 700;
}

.fm-amz-center hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 14px 0;
}

.fm-amz-deal-badge {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    background: #cc0c39;
    color: #fff;
    padding: 0 12px;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 10px;
}

.fm-amz-price-row {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.fm-amz-off-percent {
    color: #cc0c39;
    font-size: 28px;
    font-weight: 300;
}

.fm-amz-price-row strong {
    color: #111;
    font-size: 32px;
    font-weight: 400;
}

.fm-amz-mrp {
    margin-top: 4px;
    color: #565959;
    font-size: 13px;
}

.fm-amz-tax-line {
    margin-top: 6px;
    color: #111;
    font-size: 14px;
}

.fm-amz-offer-strip {
    margin-top: 18px;
}

.fm-amz-offer-strip > strong {
    display: block;
    color: #111;
    font-size: 17px;
    margin-bottom: 9px;
}

.fm-amz-offer-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.fm-amz-offer-grid div {
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 11px;
    background: #fff;
    min-height: 92px;
}

.fm-amz-offer-grid b {
    display: block;
    color: #111;
    font-size: 13px;
    margin-bottom: 7px;
}

.fm-amz-offer-grid span {
    color: #374151;
    font-size: 13px;
    line-height: 1.35;
}

.fm-amz-variants-box {
    margin-top: 20px;
}

.fm-amz-variants-box h3 {
    margin: 0 0 10px;
    color: #111;
    font-size: 15px;
    font-weight: 700;
}

.fm-amz-variant-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fm-amz-variant-options label {
    cursor: pointer;
}

.fm-amz-variant-options input {
    display: none;
}

.fm-amz-variant-options span {
    min-width: 92px;
    min-height: 74px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    padding: 8px;
    background: #fff;
    display: grid;
    gap: 5px;
}

.fm-amz-variant-options strong {
    color: #111;
    font-size: 12px;
    line-height: 1.3;
}

.fm-amz-variant-options small {
    color: #565959;
    font-size: 12px;
}

.fm-amz-variant-options input:checked + span {
    border-color: #ff6500;
    box-shadow: 0 0 0 2px rgba(255, 101, 0, .16);
}

.fm-amz-variant-options label.disabled {
    opacity: .45;
    cursor: not-allowed;
}

.fm-amz-product-details-card,
.fm-amz-about-item {
    margin-top: 22px;
}

.fm-amz-product-details-card h2,
.fm-amz-about-item h2 {
    margin: 0 0 13px;
    color: #111;
    font-size: 21px;
    font-weight: 700;
}

.fm-amz-highlight-table {
    display: grid;
    gap: 10px;
}

.fm-amz-highlight-table div {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.fm-amz-highlight-table strong {
    color: #111;
    font-size: 14px;
}

.fm-amz-highlight-table span {
    color: #374151;
    font-size: 14px;
    line-height: 1.4;
}

.fm-amz-highlight-table .in {
    color: #007600;
    font-weight: 700;
}

.fm-amz-highlight-table .low {
    color: #b45309;
    font-weight: 700;
}

.fm-amz-highlight-table .out {
    color: #b12704;
    font-weight: 700;
}

.fm-amz-about-item ul {
    margin: 0;
    padding-left: 20px;
}

.fm-amz-about-item li,
.fm-amz-about-item p {
    color: #111;
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 7px;
}

.fm-amz-buybox {
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 16px;
    position: sticky;
    top: 92px;
    background: #fff;
}

.fm-amz-buy-price {
    color: #111;
    font-size: 28px;
    font-weight: 400;
    margin-bottom: 10px;
}

.fm-amz-prime-line {
    color: #007185;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 12px;
}

.fm-amz-delivery,
.fm-amz-location {
    color: #111;
    font-size: 14px;
    line-height: 1.45;
    margin: 10px 0;
}

.fm-amz-stock-status {
    margin: 14px 0;
    font-size: 18px;
    font-weight: 500;
}

.fm-amz-stock-status.in {
    color: #007600;
}

.fm-amz-stock-status.low {
    color: #b45309;
}

.fm-amz-stock-status.out {
    color: #b12704;
}

.fm-amz-cart-form {
    display: grid;
    gap: 9px;
    margin: 0;
}

.fm-amz-cart-form label {
    color: #111;
    font-size: 13px;
    font-weight: 700;
}

.fm-amz-cart-form select {
    width: 100%;
    height: 36px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    background: #f7f8fa;
    color: #111;
    padding: 0 10px;
    outline: none;
}

.fm-amz-add-cart,
.fm-amz-buy-now {
    width: 100%;
    min-height: 38px;
    border-radius: 999px;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.fm-amz-add-cart {
    background: #ff6500;
    color: #fff;
    margin-top: 8px;
}

.fm-amz-add-cart:hover {
    background: #ea580c;
}

.fm-amz-buy-now {
    background: #111827;
    color: #fff;
    margin-top: 9px;
}

.fm-amz-buy-now:hover {
    background: #ff6500;
}

.fm-amz-out-box {
    background: #fee2e2;
    border: 1px solid #fecaca;
    color: #991b1b;
    border-radius: 8px;
    padding: 12px;
    font-weight: 700;
    font-size: 14px;
}

.fm-amz-buy-meta {
    border-top: 1px solid #e5e7eb;
    margin-top: 16px;
    padding-top: 13px;
    display: grid;
    gap: 8px;
}

.fm-amz-buy-meta div {
    display: grid;
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 8px;
    font-size: 12px;
}

.fm-amz-buy-meta span {
    color: #565959;
}

.fm-amz-buy-meta strong {
    color: #007185;
    font-weight: 500;
}

.fm-amz-side-actions {
    margin-top: 15px;
    display: grid;
    gap: 8px;
}

.fm-amz-side-actions form {
    margin: 0;
}

.fm-amz-side-actions button,
.fm-amz-side-actions a {
    width: 100%;
    min-height: 34px;
    border: 1px solid #d5d9d9;
    background: #fff;
    color: #111;
    border-radius: 8px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.fm-amz-side-actions button:hover,
.fm-amz-side-actions a:hover {
    background: #f7fafa;
}

.fm-amz-tabs-bar {
    margin-top: 28px;
    border-top: 1px solid #d5d9d9;
    border-bottom: 1px solid #d5d9d9;
    background: #fff;
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 28px;
    position: sticky;
    top: 0;
    z-index: 5;
}

.fm-amz-tabs-bar a {
    color: #111;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}

.fm-amz-tabs-bar a:hover {
    color: #ff6500;
}

.fm-amz-lower-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 34px;
    margin-top: 28px;
}

.fm-amz-section {
    border-bottom: 1px solid #d5d9d9;
    padding-bottom: 28px;
    margin-bottom: 28px;
}

.fm-amz-section h2,
.fm-amz-review-summary h2 {
    margin: 0 0 16px;
    color: #111;
    font-size: 24px;
    font-weight: 700;
}

.fm-amz-section p {
    color: #111;
    font-size: 15px;
    line-height: 1.65;
}

.fm-amz-detail-list {
    display: grid;
    max-width: 720px;
}

.fm-amz-detail-list div {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 16px;
    padding: 8px 0;
}

.fm-amz-detail-list strong {
    color: #111;
    font-size: 14px;
}

.fm-amz-detail-list span {
    color: #111;
    font-size: 14px;
    line-height: 1.45;
}

.fm-amz-section-head p {
    color: #565959;
    margin: -8px 0 15px;
}

.fm-amz-question-form {
    display: grid;
    gap: 10px;
    max-width: 720px;
}

.fm-amz-question-form textarea {
    width: 100%;
    min-height: 95px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    padding: 12px;
    resize: vertical;
    outline: none;
}

.fm-amz-question-form button {
    justify-self: start;
    min-height: 36px;
    border-radius: 999px;
    border: 0;
    background: #111827;
    color: #fff;
    padding: 0 18px;
    font-weight: 700;
    cursor: pointer;
}

.fm-amz-login-note {
    background: #f7f8fa;
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 12px;
}

.fm-amz-login-note a {
    color: #007185;
    font-weight: 700;
}

.fm-amz-qa-list,
.fm-amz-review-list {
    display: grid;
    gap: 14px;
    margin-top: 16px;
}

.fm-amz-qa-card,
.fm-amz-review-card {
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 14px;
}

.fm-amz-qa-card strong {
    color: #111;
    display: block;
    font-size: 15px;
}

.fm-amz-qa-card small {
    color: #565959;
    display: block;
    margin-top: 5px;
}

.fm-amz-qa-card p {
    margin: 10px 0 0;
}

.fm-amz-qa-card .pending {
    color: #b45309;
    font-weight: 700;
}

.fm-amz-review-summary {
    position: sticky;
    top: 72px;
    align-self: start;
}

.fm-amz-review-score strong {
    color: #ffa41c;
    font-size: 22px;
    letter-spacing: -1px;
}

.fm-amz-review-score span {
    display: block;
    color: #111;
    font-size: 17px;
    margin-top: 6px;
}

.fm-amz-review-summary > p {
    color: #565959;
    margin: 8px 0 18px;
}

.fm-amz-review-bars {
    display: grid;
    gap: 9px;
}

.fm-amz-review-bars div {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 42px;
    gap: 8px;
    align-items: center;
    color: #007185;
    font-size: 13px;
}

.fm-amz-review-bars em {
    height: 18px;
    border: 1px solid #d5d9d9;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
    display: block;
}

.fm-amz-review-bars i {
    height: 100%;
    background: #ff6500;
    display: block;
}

.fm-amz-review-bars b {
    color: #007185;
    font-weight: 500;
}

.fm-amz-write-review {
    border-top: 1px solid #d5d9d9;
    margin-top: 24px;
    padding-top: 20px;
}

.fm-amz-write-review h3 {
    margin: 0;
    color: #111;
    font-size: 20px;
}

.fm-amz-write-review p {
    color: #565959;
    font-size: 14px;
}

.fm-amz-write-review a {
    min-height: 34px;
    border: 1px solid #d5d9d9;
    border-radius: 999px;
    color: #111;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    width: 100%;
}

.fm-amz-review-section {
    margin-top: 10px;
}

.fm-amz-review-user {
    display: flex;
    align-items: center;
    gap: 10px;
}

.fm-amz-review-user span {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #e5e7eb;
    color: #111;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.fm-amz-review-stars {
    color: #ffa41c;
    margin-top: 10px;
}

.fm-amz-review-card h3 {
    margin: 8px 0 0;
    color: #111;
    font-size: 16px;
}

.fm-amz-review-card small {
    display: block;
    color: #565959;
    margin-top: 8px;
}

/* Responsive */
@media (max-width: 1180px) {
    .fm-amz-product-layout {
        grid-template-columns: minmax(360px, 45%) minmax(0, 1fr);
    }

    .fm-amz-buybox {
        grid-column: 2;
        position: static;
    }

    .fm-amz-gallery {
        grid-row: span 2;
    }
}

@media (max-width: 900px) {
    .fm-amz-product-layout {
        grid-template-columns: 1fr;
    }

    .fm-amz-gallery,
    .fm-amz-buybox,
    .fm-amz-review-summary {
        position: static;
    }

    .fm-amz-gallery {
        grid-template-columns: 1fr;
    }

    .fm-amz-thumbs {
        order: 2;
        display: flex;
        overflow-x: auto;
    }

    .fm-amz-main-image {
        min-height: 420px;
    }

    .fm-amz-main-image img {
        max-height: 360px;
    }

    .fm-amz-offer-grid {
        grid-template-columns: 1fr;
    }

    .fm-amz-lower-layout {
        grid-template-columns: 1fr;
    }

    .fm-amz-tabs-bar {
        overflow-x: auto;
        gap: 20px;
        padding: 0 10px;
    }
}

@media (max-width: 540px) {
    .fm-amz-product-page {
        padding: 14px 0 32px;
    }

    .fm-amz-center h1 {
        font-size: 21px;
    }

    .fm-amz-main-image {
        min-height: 310px;
    }

    .fm-amz-main-image img {
        max-height: 270px;
    }

    .fm-amz-price-row strong {
        font-size: 27px;
    }

    .fm-amz-highlight-table div,
    .fm-amz-detail-list div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .fm-amz-tabs-bar {
        top: 0;
    }
}

.seller-add-image-section {
    margin: 18px 0;
    padding: 18px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
}

.seller-add-image-section h3 {
    margin: 0 0 14px;
    font-size: 18px;
    font-weight: 900;
    color: #111827;
}

/* =========================================================
   Frontend Single Product Page
   ========================================================= */

.fm-single-product-page {
    background: #fff;
    padding: 20px 0 42px;
    color: #111827;
}

.fm-product-breadcrumb {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
    color: #6b7280;
    font-size: 13px;
    margin-bottom: 18px;
}

.fm-product-breadcrumb a {
    color: #007185;
    text-decoration: none;
}

.fm-product-breadcrumb a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.fm-product-breadcrumb strong {
    color: #111827;
    font-weight: 700;
}

.fm-product-main-layout {
    display: grid;
    grid-template-columns: minmax(420px, 47%) minmax(0, 1fr) 250px;
    gap: 28px;
    align-items: flex-start;
}

.fm-product-gallery {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 14px;
    position: sticky;
    top: 92px;
}

.fm-product-thumbs {
    display: grid;
    gap: 10px;
    align-content: start;
}

.fm-thumb-btn {
    width: 54px;
    height: 64px;
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    padding: 4px;
}

.fm-thumb-btn.active {
    border-color: #ff6500;
    box-shadow: 0 0 0 2px rgba(255, 101, 0, .15);
}

.fm-thumb-btn img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fm-product-large-image {
    min-height: 560px;
    background: #f8fafc;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.fm-product-large-image img {
    max-width: 92%;
    max-height: 520px;
    object-fit: contain;
    display: block;
}

.fm-discount-badge {
    position: absolute;
    left: 14px;
    top: 14px;
    background: #cc0c39;
    color: #fff;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 700;
}

.fm-store-link {
    color: #007185;
    text-decoration: none;
    font-size: 14px;
    display: inline-flex;
    margin-bottom: 7px;
}

.fm-store-link:hover {
    color: #ff6500;
    text-decoration: underline;
}

.fm-product-info h1 {
    margin: 0;
    color: #111;
    font-size: 25px;
    line-height: 1.32;
    font-weight: 500;
    letter-spacing: normal;
}

.fm-product-short-description {
    margin: 8px 0 0;
    color: #374151;
    font-size: 14px;
    line-height: 1.5;
}

.fm-rating-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 10px;
    font-size: 14px;
}

.fm-rating-row strong {
    color: #ffa41c;
    letter-spacing: -1px;
    font-size: 16px;
}

.fm-rating-row a {
    color: #007185;
    text-decoration: none;
}

.fm-rating-row a:hover {
    color: #ff6500;
    text-decoration: underline;
}

.fm-rating-row em {
    color: #d5d9d9;
    font-style: normal;
}

.fm-viewed-line {
    margin-top: 8px;
    color: #111;
    font-size: 13px;
    font-weight: 700;
}

.fm-product-info hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 14px 0;
}

.fm-deal-badge {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    background: #cc0c39;
    color: #fff;
    padding: 0 12px;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 10px;
}

.fm-price-row {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.fm-price-row span {
    color: #cc0c39;
    font-size: 28px;
    font-weight: 300;
}

.fm-price-row strong {
    color: #111;
    font-size: 32px;
    font-weight: 400;
}

.fm-mrp-line {
    margin-top: 4px;
    color: #565959;
    font-size: 13px;
}

.fm-tax-line {
    margin-top: 6px;
    color: #111;
    font-size: 14px;
}

.fm-offers-box {
    margin-top: 18px;
}

.fm-offers-box h3,
.fm-variants-preview h3 {
    margin: 0 0 9px;
    color: #111;
    font-size: 17px;
    font-weight: 700;
}

.fm-offer-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.fm-offer-cards div {
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 11px;
    background: #fff;
    min-height: 92px;
}

.fm-offer-cards strong {
    display: block;
    color: #111;
    font-size: 13px;
    margin-bottom: 6px;
}

.fm-offer-cards p {
    margin: 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.35;
}

.fm-variants-preview {
    margin-top: 20px;
}

.fm-variant-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fm-variant-pills span {
    min-width: 94px;
    min-height: 70px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    padding: 8px;
    background: #fff;
    display: grid;
    gap: 5px;
}

.fm-variant-pills span.disabled {
    opacity: .45;
}

.fm-variant-pills strong {
    color: #111;
    font-size: 12px;
    line-height: 1.3;
}

.fm-variant-pills small {
    color: #565959;
    font-size: 12px;
}

.fm-top-highlights,
.fm-about-item {
    margin-top: 22px;
}

.fm-top-highlights h2,
.fm-about-item h2 {
    margin: 0 0 13px;
    color: #111;
    font-size: 21px;
    font-weight: 700;
}

.fm-highlight-table {
    display: grid;
    gap: 10px;
}

.fm-highlight-table div {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.fm-highlight-table strong {
    color: #111;
    font-size: 14px;
}

.fm-highlight-table span {
    color: #374151;
    font-size: 14px;
    line-height: 1.4;
}

.fm-about-item ul {
    margin: 0;
    padding-left: 20px;
}

.fm-about-item li,
.fm-about-item p {
    color: #111;
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 7px;
}

.fm-buy-box {
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 16px;
    position: sticky;
    top: 92px;
    background: #fff;
}

.fm-buy-price {
    color: #111;
    font-size: 28px;
    font-weight: 400;
    margin-bottom: 10px;
}

.fm-secure-line {
    color: #007185;
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 12px;
}

.fm-delivery-line,
.fm-location-line {
    color: #111;
    font-size: 14px;
    line-height: 1.45;
    margin: 10px 0;
}

.fm-stock-status {
    margin: 14px 0;
    font-size: 18px;
    font-weight: 500;
}

.fm-stock-status.in {
    color: #007600;
}

.fm-stock-status.low {
    color: #b45309;
}

.fm-stock-status.out {
    color: #b12704;
}

.fm-cart-form {
    display: grid;
    gap: 9px;
    margin: 0;
}

.fm-cart-form label {
    color: #111;
    font-size: 13px;
    font-weight: 700;
}

.fm-cart-form select {
    width: 100%;
    height: 36px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    background: #f7f8fa;
    color: #111;
    padding: 0 10px;
    outline: none;
}

.fm-add-cart-btn,
.fm-buy-now-btn {
    width: 100%;
    min-height: 38px;
    border-radius: 999px;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.fm-add-cart-btn {
    background: #ff6500;
    color: #fff;
    margin-top: 8px;
}

.fm-add-cart-btn:hover {
    background: #ea580c;
}

.fm-buy-now-btn {
    background: #111827;
    color: #fff;
    margin-top: 9px;
}

.fm-buy-now-btn:hover {
    background: #ff6500;
}

.fm-out-stock-box {
    background: #fee2e2;
    border: 1px solid #fecaca;
    color: #991b1b;
    border-radius: 8px;
    padding: 12px;
    font-weight: 700;
    font-size: 14px;
}

.fm-buy-meta {
    border-top: 1px solid #e5e7eb;
    margin-top: 16px;
    padding-top: 13px;
    display: grid;
    gap: 8px;
}

.fm-buy-meta div {
    display: grid;
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 8px;
    font-size: 12px;
}

.fm-buy-meta span {
    color: #565959;
}

.fm-buy-meta strong {
    color: #007185;
    font-weight: 500;
}

.fm-buy-actions {
    margin-top: 15px;
    display: grid;
    gap: 8px;
}

.fm-buy-actions form {
    margin: 0;
}

.fm-buy-actions button,
.fm-buy-actions a {
    width: 100%;
    min-height: 34px;
    border: 1px solid #d5d9d9;
    background: #fff;
    color: #111;
    border-radius: 8px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.fm-buy-actions button:hover,
.fm-buy-actions a:hover {
    background: #f7fafa;
}

.fm-product-tabs {
    margin-top: 28px;
    border-top: 1px solid #d5d9d9;
    border-bottom: 1px solid #d5d9d9;
    background: #fff;
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 28px;
    position: sticky;
    top: 0;
    z-index: 5;
}

.fm-product-tabs a {
    color: #111;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}

.fm-product-tabs a:hover {
    color: #ff6500;
}

.fm-lower-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 34px;
    margin-top: 28px;
}

.fm-detail-section {
    border-bottom: 1px solid #d5d9d9;
    padding-bottom: 28px;
    margin-bottom: 28px;
}

.fm-detail-section h2,
.fm-review-summary h2 {
    margin: 0 0 16px;
    color: #111;
    font-size: 24px;
    font-weight: 700;
}

.fm-detail-section p {
    color: #111;
    font-size: 15px;
    line-height: 1.65;
}

.fm-detail-list {
    display: grid;
    max-width: 760px;
}

.fm-detail-list div {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 16px;
    padding: 8px 0;
}

.fm-detail-list strong {
    color: #111;
    font-size: 14px;
}

.fm-detail-list span {
    color: #111;
    font-size: 14px;
    line-height: 1.45;
}

.fm-question-form {
    display: grid;
    gap: 10px;
    max-width: 720px;
}

.fm-question-form textarea {
    width: 100%;
    min-height: 95px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    padding: 12px;
    resize: vertical;
    outline: none;
}

.fm-question-form button {
    justify-self: start;
    min-height: 36px;
    border-radius: 999px;
    border: 0;
    background: #111827;
    color: #fff;
    padding: 0 18px;
    font-weight: 700;
    cursor: pointer;
}

.fm-login-note {
    background: #f7f8fa;
    border: 1px solid #d5d9d9;
    border-radius: 8px;
    padding: 12px;
}

.fm-login-note a {
    color: #007185;
    font-weight: 700;
}

.fm-qa-list,
.fm-review-list {
    display: grid;
    gap: 14px;
    margin-top: 16px;
}

.fm-qa-card,
.fm-review-card {
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 14px;
}

.fm-qa-card strong {
    color: #111;
    display: block;
    font-size: 15px;
}

.fm-qa-card small {
    color: #565959;
    display: block;
    margin-top: 5px;
}

.fm-qa-card p {
    margin: 10px 0 0;
}

.fm-qa-card .pending {
    color: #b45309;
    font-weight: 700;
}

.fm-review-summary {
    position: sticky;
    top: 72px;
    align-self: start;
}

.fm-review-score strong {
    color: #ffa41c;
    font-size: 22px;
    letter-spacing: -1px;
}

.fm-review-score span {
    display: block;
    color: #111;
    font-size: 17px;
    margin-top: 6px;
}

.fm-review-summary > p {
    color: #565959;
    margin: 8px 0 18px;
}

.fm-write-review {
    border-top: 1px solid #d5d9d9;
    margin-top: 24px;
    padding-top: 20px;
}

.fm-write-review h3 {
    margin: 0;
    color: #111;
    font-size: 20px;
}

.fm-write-review p {
    color: #565959;
    font-size: 14px;
}

.fm-write-review a {
    min-height: 34px;
    border: 1px solid #d5d9d9;
    border-radius: 999px;
    color: #111;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    width: 100%;
}

.fm-review-user {
    display: flex;
    align-items: center;
    gap: 10px;
}

.fm-review-user span {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #e5e7eb;
    color: #111;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.fm-review-stars {
    color: #ffa41c;
    margin-top: 10px;
}

.fm-review-card h3 {
    margin: 8px 0 0;
    color: #111;
    font-size: 16px;
}

.fm-review-card small {
    display: block;
    color: #565959;
    margin-top: 8px;
}

.fm-recent-products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.fm-recent-card {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 12px;
    text-decoration: none;
    color: #111;
    display: grid;
    gap: 8px;
}

.fm-recent-card img {
    width: 100%;
    height: 130px;
    object-fit: contain;
    background: #f8fafc;
    border-radius: 8px;
}

.fm-recent-card strong {
    font-size: 14px;
    line-height: 1.35;
}

.fm-recent-card span {
    color: #ff6500;
    font-weight: 900;
}

@media (max-width: 1180px) {
    .fm-product-main-layout {
        grid-template-columns: minmax(360px, 45%) minmax(0, 1fr);
    }

    .fm-buy-box {
        grid-column: 2;
        position: static;
    }

    .fm-product-gallery {
        grid-row: span 2;
    }
}

@media (max-width: 900px) {
    .fm-product-main-layout {
        grid-template-columns: 1fr;
    }

    .fm-product-gallery,
    .fm-buy-box,
    .fm-review-summary {
        position: static;
    }

    .fm-product-gallery {
        grid-template-columns: 1fr;
    }

    .fm-product-thumbs {
        order: 2;
        display: flex;
        overflow-x: auto;
    }

    .fm-product-large-image {
        min-height: 420px;
    }

    .fm-product-large-image img {
        max-height: 360px;
    }

    .fm-offer-cards {
        grid-template-columns: 1fr;
    }

    .fm-lower-layout {
        grid-template-columns: 1fr;
    }

    .fm-product-tabs {
        overflow-x: auto;
        gap: 20px;
        padding: 0 10px;
    }

    .fm-recent-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 540px) {
    .fm-single-product-page {
        padding: 14px 0 32px;
    }

    .fm-product-info h1 {
        font-size: 21px;
    }

    .fm-product-large-image {
        min-height: 310px;
    }

    .fm-product-large-image img {
        max-height: 270px;
    }

    .fm-price-row strong {
        font-size: 27px;
    }

    .fm-highlight-table div,
    .fm-detail-list div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .fm-product-tabs {
        top: 0;
    }

    .fm-recent-products {
        grid-template-columns: 1fr;
    }
}

/* Clickable variant cards on product detail page */
.fm-variant-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fm-variant-select-card {
    min-width: 96px;
    min-height: 74px;
    border: 1px solid #a6a6a6;
    border-radius: 8px;
    padding: 8px;
    background: #fff;
    display: grid;
    gap: 4px;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.fm-variant-select-card strong {
    color: #111;
    font-size: 12px;
    line-height: 1.3;
    font-weight: 800;
}

.fm-variant-select-card small {
    color: #111827;
    font-size: 12px;
    font-weight: 700;
}

.fm-variant-select-card em {
    color: #007600;
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
}

.fm-variant-select-card:hover {
    border-color: #ff6500;
    box-shadow: 0 0 0 2px rgba(255, 101, 0, .12);
}

.fm-variant-select-card.active {
    border-color: #ff6500;
    background: #fff7ed;
    box-shadow: 0 0 0 2px rgba(255, 101, 0, .18);
}

.fm-variant-select-card.disabled {
    opacity: .45;
    cursor: not-allowed;
    background: #f3f4f6;
}

.fm-variant-select-card.disabled em {
    color: #b12704;
}

.fm-variant-helper-text {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 12px;
}

/* =========================================================
   Seller Products Page Redesign
   ========================================================= */

.seller-products-redesign {
    align-items: flex-start;
    background: #f6f7fb;
}

.seller-products-content {
    min-width: 0;
}

.seller-products-hero {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .16), transparent 26%),
        linear-gradient(135deg, #111827 0%, #1f2937 55%, #ff6500 140%);
    border-radius: 26px;
    padding: 28px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .18);
    margin-bottom: 20px;
    overflow: hidden;
}

.seller-kicker {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .20);
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.seller-products-hero h1 {
    margin: 0;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.05;
    letter-spacing: -.05em;
    font-weight: 1000;
}

.seller-products-hero p {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, .78);
    max-width: 640px;
    line-height: 1.6;
    font-size: 15px;
}

.seller-hero-stats {
    display: grid;
    grid-template-columns: repeat(3, 110px);
    gap: 10px;
    flex: 0 0 auto;
}

.seller-hero-stats div {
    border-radius: 20px;
    padding: 16px 14px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .16);
    backdrop-filter: blur(8px);
}

.seller-hero-stats strong {
    display: block;
    font-size: 26px;
    line-height: 1;
    font-weight: 1000;
}

.seller-hero-stats span {
    display: block;
    margin-top: 7px;
    color: rgba(255, 255, 255, .76);
    font-size: 12px;
    font-weight: 900;
}

.seller-products-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 18px;
    align-items: flex-start;
}

.seller-add-product-panel,
.seller-products-help-card,
.seller-product-list-panel {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.seller-add-product-panel {
    padding: 22px;
}

.seller-panel-head {
    margin-bottom: 18px;
}

.seller-panel-head span,
.seller-list-head span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.seller-panel-head h2,
.seller-list-head h2 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    font-weight: 1000;
    letter-spacing: -.04em;
    line-height: 1.12;
}

.seller-panel-head p,
.seller-list-head p {
    margin: 7px 0 0;
    color: #6b7280;
    line-height: 1.55;
}

.seller-product-form-new {
    display: grid;
    gap: 16px;
}

.seller-form-box {
    border: 1px solid #eef2f7;
    background: #f8fafc;
    border-radius: 20px;
    padding: 18px;
}

.seller-form-box-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.seller-form-box-head > span {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    font-size: 13px;
    flex: 0 0 auto;
}

.seller-form-box-head h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.seller-form-box-head p {
    margin: 4px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.seller-form-grid {
    display: grid;
    gap: 14px;
}

.seller-form-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.seller-form-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.seller-field {
    margin-bottom: 14px;
}

.seller-form-grid .seller-field {
    margin-bottom: 0;
}

.seller-field label,
.seller-upload-box label {
    display: block;
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 7px;
}

.seller-field label b {
    color: #dc2626;
}

.seller-field input,
.seller-field select,
.seller-field textarea {
    width: 100%;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 14px;
    color: #111827;
    outline: none;
    font-size: 14px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.seller-field input,
.seller-field select {
    height: 44px;
    padding: 0 13px;
}

.seller-field textarea {
    min-height: 118px;
    padding: 13px;
    resize: vertical;
}

.seller-field input:focus,
.seller-field select:focus,
.seller-field textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.seller-field small {
    display: block;
    margin-top: 6px;
    color: #6b7280;
    font-size: 12px;
    line-height: 1.4;
}

.seller-upload-inner {
    position: relative;
    border: 1.5px dashed #d1d5db;
    background: #fff;
    border-radius: 18px;
    padding: 22px;
    min-height: 156px;
    display: grid;
    align-content: center;
    justify-items: center;
    text-align: center;
    transition: border-color .18s ease, background .18s ease;
    overflow: hidden;
}

.seller-upload-inner:hover {
    border-color: #ff6500;
    background: #fff7ed;
}

.seller-upload-icon {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    background: #f3f4f6;
    display: grid;
    place-items: center;
    font-size: 24px;
    margin-bottom: 10px;
}

.seller-upload-inner strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.seller-upload-inner span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 700;
}

.seller-upload-inner input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.seller-submit-row {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    border-radius: 20px;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.seller-submit-row strong {
    display: block;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.seller-submit-row span {
    display: block;
    margin-top: 4px;
    color: #6b7280;
    font-size: 13px;
}

.seller-submit-btn {
    min-height: 44px;
    border: 0;
    border-radius: 999px;
    padding: 0 22px;
    background: #ff6500;
    color: #fff;
    font-weight: 1000;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 14px 30px rgba(255, 101, 0, .22);
    white-space: nowrap;
}

.seller-submit-btn:hover {
    background: #ea580c;
}

.seller-products-help-card {
    padding: 20px;
    position: sticky;
    top: 92px;
}

.seller-products-help-card h3 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.seller-tip-list {
    display: grid;
    gap: 12px;
}

.seller-tip-list div {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 12px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
}

.seller-tip-list span {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
}

.seller-tip-list p {
    margin: 0;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.5;
}

.seller-help-note {
    margin-top: 14px;
    border-radius: 16px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    padding: 13px;
    color: #92400e;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 800;
}

.seller-product-list-panel {
    margin-top: 20px;
    padding: 22px;
}

.seller-list-head {
    margin-bottom: 18px;
}

.seller-empty-products {
    padding: 44px 18px;
    text-align: center;
    border: 1px dashed #d1d5db;
    border-radius: 20px;
    background: #f8fafc;
}

.seller-empty-products div {
    width: 74px;
    height: 74px;
    margin: 0 auto 12px;
    border-radius: 24px;
    background: #fff7ed;
    display: grid;
    place-items: center;
    font-size: 34px;
}

.seller-empty-products h3 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.seller-empty-products p {
    margin: 7px 0 0;
    color: #6b7280;
}

.seller-product-cards {
    display: grid;
    gap: 14px;
}

.seller-product-item {
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
    gap: 16px;
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 14px;
    background: #fff;
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}

.seller-product-item:hover {
    transform: translateY(-2px);
    border-color: #fed7aa;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
}

.seller-product-image {
    position: relative;
    height: 148px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.seller-product-image img {
    width: 88%;
    height: 88%;
    object-fit: contain;
}

.seller-status-pill {
    position: absolute;
    top: 10px;
    left: 10px;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    color: #fff;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.seller-status-pill.approved {
    background: #16a34a;
}

.seller-status-pill.pending {
    background: #f59e0b;
}

.seller-status-pill.rejected {
    background: #dc2626;
}

.seller-product-info {
    min-width: 0;
    display: grid;
    gap: 12px;
}

.seller-product-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.seller-product-title-row h3 {
    margin: 0;
    color: #111827;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 1000;
}

.seller-product-title-row p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.seller-stock-pill {
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.seller-stock-pill.in {
    background: #dcfce7;
    color: #166534;
}

.seller-stock-pill.low {
    background: #fef3c7;
    color: #92400e;
}

.seller-stock-pill.out {
    background: #fee2e2;
    color: #991b1b;
}

.seller-product-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.seller-product-meta div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 11px;
}

.seller-product-meta span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 4px;
}

.seller-product-meta strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 1000;
    word-break: break-word;
}

.seller-admin-remark {
    border-radius: 14px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    padding: 11px;
    color: #991b1b;
    display: grid;
    gap: 3px;
    font-size: 13px;
}

.seller-product-actions {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

.seller-product-actions form {
    margin: 0;
}

.seller-edit-btn,
.seller-delete-btn {
    min-height: 38px;
    border-radius: 999px;
    padding: 0 15px;
    border: 1px solid transparent;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
}

.seller-edit-btn {
    background: #ff6500;
    border-color: #ff6500;
    color: #fff;
}

.seller-edit-btn:hover {
    background: #ea580c;
}

.seller-delete-btn {
    background: #fff;
    border-color: #fecaca;
    color: #dc2626;
}

.seller-delete-btn:hover {
    background: #fef2f2;
}

@media (max-width: 1180px) {
    .seller-products-layout {
        grid-template-columns: 1fr;
    }

    .seller-products-help-card {
        position: static;
    }
}

@media (max-width: 900px) {
    .seller-products-hero {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 20px;
        padding: 22px;
    }

    .seller-hero-stats {
        width: 100%;
        grid-template-columns: repeat(3, 1fr);
    }

    .seller-form-grid-3,
    .seller-form-grid-2,
    .seller-product-meta {
        grid-template-columns: 1fr;
    }

    .seller-product-item {
        grid-template-columns: 1fr;
    }

    .seller-product-image {
        height: 220px;
    }
}

@media (max-width: 560px) {
    .seller-products-hero h1 {
        font-size: 30px;
    }

    .seller-hero-stats {
        grid-template-columns: 1fr;
    }

    .seller-add-product-panel,
    .seller-products-help-card,
    .seller-product-list-panel {
        border-radius: 18px;
        padding: 16px;
    }

    .seller-form-box {
        border-radius: 16px;
        padding: 14px;
    }

    .seller-submit-row {
        align-items: stretch;
        flex-direction: column;
    }

    .seller-submit-btn,
    .seller-edit-btn,
    .seller-delete-btn {
        width: 100%;
    }

    .seller-product-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .seller-product-actions form {
        width: 100%;
    }
}

/* Seller product image preview */
.seller-upload-preview-box {
    min-height: 190px;
}

.seller-upload-default {
    display: grid;
    justify-items: center;
    text-align: center;
}

.seller-main-image-preview {
    width: 100%;
    height: 160px;
    display: grid;
    place-items: center;
    position: relative;
}

.seller-main-image-preview img {
    width: 100%;
    height: 150px;
    object-fit: contain;
    border-radius: 14px;
    background: #f8fafc;
}

.seller-main-image-preview button {
    position: absolute;
    right: 8px;
    top: 8px;
    border: 0;
    background: #dc2626;
    color: #fff;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 900;
    cursor: pointer;
}

.seller-gallery-preview-grid {
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.seller-gallery-preview-item {
    height: 92px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #fff;
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.seller-gallery-preview-item img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 6px;
}

.seller-gallery-preview-item span {
    position: absolute;
    left: 6px;
    top: 6px;
    min-width: 22px;
    height: 22px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 900;
}

@media (max-width: 600px) {
    .seller-gallery-preview-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* =========================================================
   Compare Products Page
   ========================================================= */

.fm-compare-page {
    background: #f5f6f8;
    min-height: 70vh;
    padding: 28px 0 44px;
    color: #111827;
}

.fm-compare-head {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .14), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 24px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .05);
}

.fm-compare-head span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 9px;
}

.fm-compare-head h1 {
    margin: 0;
    color: #111827;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.05;
    letter-spacing: -.05em;
    font-weight: 1000;
}

.fm-compare-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 15px;
    line-height: 1.55;
}

.fm-compare-head-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    flex: 0 0 auto;
}

.fm-compare-head-actions a,
.fm-compare-head-actions button {
    min-height: 42px;
    border-radius: 999px;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 1000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.fm-compare-head-actions a {
    background: #111827;
    color: #fff;
    border: 1px solid #111827;
}

.fm-compare-head-actions button {
    background: #fff;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.fm-compare-empty {
    margin-top: 20px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 46px 24px;
    text-align: center;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .05);
}

.fm-compare-empty-icon {
    width: 80px;
    height: 80px;
    border-radius: 26px;
    background: #fff7ed;
    display: grid;
    place-items: center;
    margin: 0 auto 14px;
    font-size: 36px;
}

.fm-compare-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    font-weight: 1000;
}

.fm-compare-empty p {
    margin: 9px 0 18px;
    color: #6b7280;
}

.fm-compare-empty a {
    min-height: 42px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    padding: 0 20px;
    text-decoration: none;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-compare-summary {
    margin-top: 18px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.fm-compare-summary div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .04);
}

.fm-compare-summary strong {
    display: block;
    color: #111827;
    font-size: 26px;
    line-height: 1;
    font-weight: 1000;
}

.fm-compare-summary span {
    display: block;
    margin-top: 7px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.fm-compare-wrap {
    margin-top: 18px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    overflow: auto;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .05);
}

.fm-compare-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 980px;
}

.fm-compare-table th,
.fm-compare-table td {
    border-bottom: 1px solid #eef2f7;
    border-right: 1px solid #eef2f7;
    padding: 16px;
    vertical-align: top;
    text-align: left;
}

.fm-compare-table th {
    width: 210px;
    background: #f8fafc;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
    position: sticky;
    left: 0;
    z-index: 2;
}

.fm-compare-table thead th {
    top: 0;
    z-index: 4;
}

.fm-compare-table td {
    min-width: 245px;
    background: #fff;
    color: #111827;
    font-size: 14px;
}

.fm-compare-product-card {
    display: grid;
    gap: 12px;
}

.fm-compare-image-box {
    height: 220px;
    border-radius: 18px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
}

.fm-compare-image-box img {
    width: 88%;
    height: 88%;
    object-fit: contain;
}

.fm-compare-image-box span {
    position: absolute;
    left: 10px;
    top: 10px;
    background: #ff6500;
    color: #fff;
    min-height: 26px;
    border-radius: 999px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
}

.fm-compare-product-card h3 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 1000;
    min-height: 44px;
}

.fm-compare-product-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-compare-product-actions form {
    margin: 0;
}

.fm-compare-product-actions a,
.fm-compare-product-actions button,
.fm-compare-final-btn {
    min-height: 36px;
    border-radius: 999px;
    padding: 0 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
}

.fm-compare-product-actions a,
.fm-compare-final-btn {
    background: #ff6500;
    border: 1px solid #ff6500;
    color: #fff;
}

.fm-compare-product-actions button {
    background: #fff;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.fm-compare-price strong {
    display: block;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
}

.fm-compare-price del {
    display: inline-block;
    margin-top: 4px;
    color: #6b7280;
    font-size: 13px;
}

.fm-compare-price span {
    display: inline-block;
    margin-left: 5px;
    color: #16a34a;
    font-size: 13px;
    font-weight: 1000;
}

.fm-compare-rating div {
    color: #f59e0b;
    font-size: 17px;
    letter-spacing: -1px;
}

.fm-compare-rating span {
    display: block;
    color: #111827;
    margin-top: 4px;
    font-weight: 1000;
}

.fm-compare-rating small {
    color: #6b7280;
}

.fm-compare-soft-pill,
.fm-compare-stock,
.fm-compare-seller span {
    min-height: 28px;
    border-radius: 999px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 1000;
}

.fm-compare-soft-pill {
    background: #eef2ff;
    color: #3730a3;
}

.fm-compare-seller strong {
    display: block;
    color: #111827;
    font-size: 14px;
    margin-bottom: 7px;
}

.fm-compare-seller span {
    background: #f3f4f6;
    color: #374151;
}

.fm-compare-seller span.verified {
    background: #dcfce7;
    color: #166534;
}

.fm-compare-stock.in {
    background: #dcfce7;
    color: #166534;
}

.fm-compare-stock.low {
    background: #fef3c7;
    color: #92400e;
}

.fm-compare-stock.out {
    background: #fee2e2;
    color: #991b1b;
}

.fm-compare-description {
    max-height: 120px;
    overflow: auto;
    color: #374151;
    line-height: 1.55;
}

.fm-compare-section-row th {
    background: #111827 !important;
    color: #fff !important;
    font-size: 18px;
    letter-spacing: -.02em;
}

@media (max-width: 768px) {
    .fm-compare-page {
        padding: 18px 0 34px;
    }

    .fm-compare-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 18px;
        padding: 18px;
    }

    .fm-compare-head-actions {
        width: 100%;
    }

    .fm-compare-head-actions a,
    .fm-compare-head-actions form,
    .fm-compare-head-actions button {
        width: 100%;
    }

    .fm-compare-summary {
        grid-template-columns: 1fr;
    }

    .fm-compare-empty {
        border-radius: 18px;
        padding: 34px 16px;
    }
}

/* =========================================================
   Wishlist Page
   ========================================================= */

.fm-wishlist-page {
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 70vh;
    padding: 28px 0 48px;
    color: #111827;
}

.fm-wishlist-hero {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .16), transparent 28%),
        linear-gradient(135deg, #111827 0%, #1f2937 62%, #ff6500 145%);
    border-radius: 26px;
    padding: 28px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
    overflow: hidden;
}

.fm-wishlist-hero span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.fm-wishlist-hero h1 {
    margin: 0;
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.05em;
}

.fm-wishlist-hero p {
    margin: 10px 0 0;
    max-width: 650px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    line-height: 1.6;
}

.fm-wishlist-count-card {
    min-width: 140px;
    border-radius: 22px;
    padding: 18px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
}

.fm-wishlist-count-card strong {
    display: block;
    font-size: 34px;
    line-height: 1;
    font-weight: 1000;
}

.fm-wishlist-count-card span {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 900;
}

.fm-wishlist-actions {
    margin: 18px 0;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.fm-wishlist-actions a {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-wishlist-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-wishlist-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 26px;
    padding: 54px 24px;
    text-align: center;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-wishlist-empty-icon {
    width: 86px;
    height: 86px;
    margin: 0 auto 16px;
    border-radius: 28px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 48px;
    font-weight: 1000;
}

.fm-wishlist-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 30px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-wishlist-empty p {
    margin: 9px 0 20px;
    color: #6b7280;
    font-size: 15px;
}

.fm-wishlist-empty a {
    min-height: 44px;
    border-radius: 999px;
    padding: 0 22px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-wishlist-list {
    display: grid;
    gap: 14px;
}

.fm-wishlist-item {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 14px;
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 18px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .05);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-wishlist-item:hover {
    transform: translateY(-2px);
    border-color: #fed7aa;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .08);
}

.fm-wishlist-image {
    height: 180px;
    border-radius: 18px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
}

.fm-wishlist-image img {
    width: 88%;
    height: 88%;
    object-fit: contain;
}

.fm-wishlist-discount {
    position: absolute;
    left: 10px;
    top: 10px;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-wishlist-info {
    min-width: 0;
    display: grid;
    gap: 13px;
}

.fm-wishlist-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.fm-wishlist-badges {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.fm-wishlist-category,
.fm-wishlist-availability {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-wishlist-category {
    background: #eef2ff;
    color: #3730a3;
}

.fm-wishlist-availability.available {
    background: #dcfce7;
    color: #166534;
}

.fm-wishlist-availability.unavailable {
    background: #fee2e2;
    color: #991b1b;
}

.fm-wishlist-title-row h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    line-height: 1.3;
    font-weight: 1000;
    letter-spacing: -.02em;
}

.fm-wishlist-title-row p {
    margin: 7px 0 0;
    color: #6b7280;
    line-height: 1.5;
    font-size: 14px;
}

.fm-wishlist-remove-icon {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid #fecaca;
    background: #fff;
    color: #dc2626;
    font-size: 22px;
    line-height: 1;
    font-weight: 700;
    cursor: pointer;
}

.fm-wishlist-remove-icon:hover {
    background: #fef2f2;
}

.fm-wishlist-meta-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.fm-wishlist-meta-grid div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    padding: 12px;
}

.fm-wishlist-meta-grid span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 5px;
}

.fm-wishlist-meta-grid strong {
    display: block;
    color: #111827;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 1000;
}

.fm-wishlist-meta-grid strong.in {
    color: #166534;
}

.fm-wishlist-meta-grid strong.low {
    color: #92400e;
}

.fm-wishlist-meta-grid strong.out {
    color: #991b1b;
}

.fm-wishlist-meta-grid small {
    display: block;
    margin-top: 4px;
    color: #16a34a;
    font-size: 12px;
    font-weight: 900;
}

.fm-wishlist-meta-grid del {
    color: #6b7280;
    margin-right: 4px;
}

.fm-wishlist-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-top: 1px solid #eef2f7;
    padding-top: 13px;
}

.fm-wishlist-note {
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.fm-wishlist-buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-wishlist-buttons form {
    margin: 0;
}

.fm-wishlist-view-btn,
.fm-wishlist-cart-btn,
.fm-wishlist-remove-btn {
    min-height: 38px;
    border-radius: 999px;
    padding: 0 15px;
    border: 1px solid transparent;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
}

.fm-wishlist-view-btn {
    background: #111827;
    border-color: #111827;
    color: #fff;
}

.fm-wishlist-view-btn:hover {
    background: #ff6500;
    border-color: #ff6500;
}

.fm-wishlist-cart-btn {
    background: #ff6500;
    border-color: #ff6500;
    color: #fff;
}

.fm-wishlist-cart-btn:hover {
    background: #ea580c;
}

.fm-wishlist-remove-btn {
    background: #fff;
    border-color: #fecaca;
    color: #dc2626;
}

.fm-wishlist-remove-btn:hover {
    background: #fef2f2;
}

@media (max-width: 900px) {
    .fm-wishlist-hero {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 20px;
        padding: 22px;
    }

    .fm-wishlist-count-card {
        width: 100%;
    }

    .fm-wishlist-item {
        grid-template-columns: 1fr;
    }

    .fm-wishlist-image {
        height: 260px;
    }

    .fm-wishlist-meta-grid {
        grid-template-columns: 1fr;
    }

    .fm-wishlist-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .fm-wishlist-page {
        padding: 20px 0 34px;
    }

    .fm-wishlist-hero h1 {
        font-size: 32px;
    }

    .fm-wishlist-empty,
    .fm-wishlist-item {
        border-radius: 18px;
    }

    .fm-wishlist-image {
        height: 220px;
    }

    .fm-wishlist-title-row {
        flex-direction: column;
    }

    .fm-wishlist-remove-icon {
        align-self: flex-end;
        order: -1;
    }

    .fm-wishlist-buttons,
    .fm-wishlist-buttons form,
    .fm-wishlist-view-btn,
    .fm-wishlist-cart-btn,
    .fm-wishlist-remove-btn {
        width: 100%;
    }
}

/* =========================================================
   Addresses Page
   ========================================================= */

.fm-address-page {
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 70vh;
    padding: 28px 0 48px;
    color: #111827;
}

.fm-address-hero {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .16), transparent 28%),
        linear-gradient(135deg, #111827 0%, #1f2937 62%, #ff6500 145%);
    border-radius: 26px;
    padding: 28px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
    overflow: hidden;
}

.fm-address-hero span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.fm-address-hero h1 {
    margin: 0;
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.05em;
}

.fm-address-hero p {
    margin: 10px 0 0;
    max-width: 680px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    line-height: 1.6;
}

.fm-address-count-card {
    min-width: 150px;
    border-radius: 22px;
    padding: 18px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
}

.fm-address-count-card strong {
    display: block;
    font-size: 34px;
    line-height: 1;
    font-weight: 1000;
}

.fm-address-count-card span {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 900;
}

.fm-address-actions {
    margin: 18px 0;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.fm-address-actions a {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-address-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-address-layout {
    display: grid;
    grid-template-columns: 430px minmax(0, 1fr);
    gap: 18px;
    align-items: flex-start;
}

.fm-address-form-card,
.fm-address-list-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-address-form-card {
    padding: 22px;
    position: sticky;
    top: 92px;
}

.fm-address-list-card {
    padding: 22px;
}

.fm-address-form-head,
.fm-address-list-head {
    margin-bottom: 18px;
}

.fm-address-form-head span,
.fm-address-list-head span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.fm-address-form-head h2,
.fm-address-list-head h2 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    font-weight: 1000;
    letter-spacing: -.04em;
    line-height: 1.12;
}

.fm-address-form-head p,
.fm-address-list-head p {
    margin: 7px 0 0;
    color: #6b7280;
    line-height: 1.55;
}

.fm-address-form {
    display: grid;
    gap: 14px;
}

.fm-form-row {
    display: grid;
    gap: 7px;
}

.fm-form-row label {
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-form-row label b {
    color: #dc2626;
}

.fm-form-row input,
.fm-form-row select {
    width: 100%;
    height: 44px;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 14px;
    color: #111827;
    outline: none;
    font-size: 14px;
    padding: 0 13px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.fm-form-row input:focus,
.fm-form-row select:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.fm-address-mini-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.fm-address-mini-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fm-address-checkbox {
    display: flex;
    align-items: center;
    gap: 9px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
    cursor: pointer;
}

.fm-address-checkbox input {
    width: 16px;
    height: 16px;
    accent-color: #ff6500;
}

.fm-address-checkbox span {
    color: #111827;
    font-size: 13px;
    font-weight: 900;
}

.fm-address-form-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    border-top: 1px solid #eef2f7;
    padding-top: 16px;
}

.fm-address-submit-btn,
.fm-address-cancel-btn {
    min-height: 42px;
    border-radius: 999px;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 1000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.fm-address-submit-btn {
    border: 1px solid #ff6500;
    background: #ff6500;
    color: #fff;
    box-shadow: 0 14px 30px rgba(255, 101, 0, .20);
}

.fm-address-submit-btn:hover {
    background: #ea580c;
}

.fm-address-cancel-btn {
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #111827;
}

.fm-address-cancel-btn:hover {
    background: #f8fafc;
}

.fm-address-empty {
    padding: 46px 18px;
    text-align: center;
    border: 1px dashed #d1d5db;
    border-radius: 20px;
    background: #f8fafc;
}

.fm-address-empty div {
    width: 74px;
    height: 74px;
    margin: 0 auto 12px;
    border-radius: 24px;
    background: #fff7ed;
    display: grid;
    place-items: center;
    font-size: 34px;
}

.fm-address-empty h3 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.fm-address-empty p {
    margin: 7px 0 0;
    color: #6b7280;
}

.fm-address-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.fm-address-item {
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 16px;
    background: #fff;
    display: grid;
    gap: 14px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-address-item:hover {
    transform: translateY(-2px);
    border-color: #fed7aa;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
}

.fm-address-item.is-default {
    border-color: #fed7aa;
    background:
        radial-gradient(circle at 92% 12%, rgba(255, 101, 0, .10), transparent 28%),
        #fff;
}

.fm-address-item-top {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
    align-items: flex-start;
}

.fm-address-type-icon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    background: #fff7ed;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.fm-address-item h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 1000;
}

.fm-address-pills {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.fm-address-pill {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-address-pill.default {
    background: #dcfce7;
    color: #166534;
}

.fm-address-pill.type {
    background: #eef2ff;
    color: #3730a3;
}

.fm-address-details {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    padding: 12px;
}

.fm-address-details p {
    margin: 0;
    color: #374151;
    font-size: 14px;
    line-height: 1.6;
}

.fm-address-details p + p {
    margin-top: 8px;
}

.fm-address-details strong {
    color: #111827;
}

.fm-address-item-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-address-item-actions form {
    margin: 0;
}

.fm-address-item-actions a,
.fm-address-item-actions button {
    min-height: 36px;
    border-radius: 999px;
    padding: 0 14px;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #111827;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.fm-address-item-actions a:hover,
.fm-address-item-actions button:hover {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #ff6500;
}

.fm-address-item-actions button.danger {
    border-color: #fecaca;
    color: #dc2626;
}

.fm-address-item-actions button.danger:hover {
    background: #fef2f2;
    color: #dc2626;
}

@media (max-width: 1180px) {
    .fm-address-layout {
        grid-template-columns: 1fr;
    }

    .fm-address-form-card {
        position: static;
    }
}

@media (max-width: 900px) {
    .fm-address-hero {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 20px;
        padding: 22px;
    }

    .fm-address-count-card {
        width: 100%;
    }

    .fm-address-grid {
        grid-template-columns: 1fr;
    }

    .fm-address-mini-grid,
    .fm-address-mini-grid-2 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .fm-address-page {
        padding: 20px 0 34px;
    }

    .fm-address-hero h1 {
        font-size: 32px;
    }

    .fm-address-form-card,
    .fm-address-list-card,
    .fm-address-item {
        border-radius: 18px;
        padding: 16px;
    }

    .fm-address-form-actions,
    .fm-address-item-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .fm-address-submit-btn,
    .fm-address-cancel-btn,
    .fm-address-item-actions a,
    .fm-address-item-actions button,
    .fm-address-item-actions form {
        width: 100%;
    }
}

/* =========================================================
   Checkout Page
   ========================================================= */

.fm-checkout-page {
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 70vh;
    padding: 28px 0 48px;
    color: #111827;
}

.fm-checkout-hero {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .16), transparent 28%),
        linear-gradient(135deg, #111827 0%, #1f2937 62%, #ff6500 145%);
    border-radius: 26px;
    padding: 28px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
    overflow: hidden;
    margin-bottom: 18px;
}

.fm-checkout-hero span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.fm-checkout-hero h1 {
    margin: 0;
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.05em;
}

.fm-checkout-hero p {
    margin: 10px 0 0;
    max-width: 720px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    line-height: 1.6;
}

.fm-checkout-count-card {
    min-width: 150px;
    border-radius: 22px;
    padding: 18px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
}

.fm-checkout-count-card strong {
    display: block;
    font-size: 34px;
    line-height: 1;
    font-weight: 1000;
}

.fm-checkout-count-card span {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 900;
}

.fm-checkout-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 26px;
    padding: 54px 24px;
    text-align: center;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-checkout-empty-icon {
    width: 86px;
    height: 86px;
    margin: 0 auto 16px;
    border-radius: 28px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 42px;
}

.fm-checkout-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 30px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-checkout-empty p {
    margin: 9px 0 20px;
    color: #6b7280;
}

.fm-checkout-empty a {
    min-height: 44px;
    border-radius: 999px;
    padding: 0 22px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 18px;
    align-items: flex-start;
}

.fm-checkout-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-checkout-card + .fm-checkout-card,
.fm-checkout-sidebar .fm-checkout-card + .fm-checkout-card {
    margin-top: 18px;
}

.fm-checkout-card-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
}

.fm-checkout-card-head > span {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
    flex: 0 0 auto;
}

.fm-checkout-card-head.small > span {
    width: 34px;
    height: 34px;
    border-radius: 12px;
}

.fm-checkout-card-head h2 {
    margin: 0;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-checkout-card-head p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.45;
}

.fm-checkout-form {
    display: grid;
    gap: 18px;
}

.fm-checkout-address-grid {
    display: grid;
    gap: 12px;
}

.fm-checkout-address-card {
    display: block;
    cursor: pointer;
}

.fm-checkout-address-card input {
    display: none;
}

.fm-address-select-box {
    display: grid;
    grid-template-columns: 24px 46px minmax(0, 1fr);
    gap: 12px;
    align-items: flex-start;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 14px;
    background: #fff;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.fm-checkout-address-card input:checked + .fm-address-select-box {
    border-color: #ff6500;
    background: #fff7ed;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .10);
}

.fm-address-radio-dot {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    border: 2px solid #d1d5db;
    margin-top: 3px;
}

.fm-checkout-address-card input:checked + .fm-address-select-box .fm-address-radio-dot {
    border-color: #ff6500;
    background: radial-gradient(circle, #ff6500 42%, transparent 46%);
}

.fm-address-icon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    background: #f8fafc;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.fm-address-name-row {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: flex-start;
    flex-wrap: wrap;
}

.fm-address-name-row strong {
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.fm-address-mini-pills {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.fm-address-mini-pills span {
    min-height: 24px;
    border-radius: 999px;
    padding: 0 9px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-address-mini-pills span.default {
    background: #dcfce7;
    color: #166534;
}

.fm-address-data p {
    margin: 8px 0 0;
    color: #4b5563;
    font-size: 14px;
    line-height: 1.55;
}

.fm-address-data b {
    color: #111827;
}

.fm-checkout-manage-address {
    margin-top: 14px;
}

.fm-checkout-manage-address a {
    min-height: 38px;
    border-radius: 999px;
    padding: 0 15px;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #111827;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-checkout-manage-address a:hover {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #ff6500;
}

.fm-checkout-payment-error {
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fecaca;
    border-radius: 16px;
    padding: 14px;
    font-weight: 900;
}

.fm-payment-options {
    display: grid;
    gap: 12px;
}

.fm-payment-card {
    display: block;
    cursor: pointer;
}

.fm-payment-card input {
    display: none;
}

.fm-payment-card > div {
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    column-gap: 12px;
    background: #fff;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.fm-payment-card input:checked + div {
    border-color: #ff6500;
    background: #fff7ed;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .10);
}

.fm-payment-card span {
    width: 42px;
    height: 42px;
    border-radius: 15px;
    background: #f8fafc;
    display: grid;
    place-items: center;
    font-size: 22px;
    grid-row: span 2;
}

.fm-payment-card strong {
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.fm-payment-card p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.45;
}

.fm-checkout-final-bar {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 22px;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    box-shadow: 0 14px 36px rgba(255, 101, 0, .08);
}

.fm-checkout-final-bar span {
    display: block;
    color: #92400e;
    font-size: 13px;
    font-weight: 1000;
}

.fm-checkout-final-bar strong {
    display: block;
    margin-top: 3px;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
}

.fm-checkout-final-bar button {
    min-height: 46px;
    border: 0;
    border-radius: 999px;
    padding: 0 24px;
    background: #ff6500;
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 14px 30px rgba(255, 101, 0, .22);
}

.fm-checkout-final-bar button:hover {
    background: #ea580c;
}

.fm-checkout-sidebar {
    position: sticky;
    top: 92px;
}

.fm-coupon-form label {
    display: block;
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
    margin-bottom: 7px;
}

.fm-coupon-input-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 92px;
    gap: 8px;
}

.fm-coupon-input-row input {
    height: 42px;
    border: 1px solid #d1d5db;
    border-radius: 14px;
    padding: 0 12px;
    outline: none;
}

.fm-coupon-input-row input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.fm-coupon-input-row button,
.fm-coupon-form button {
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    font-weight: 1000;
    cursor: pointer;
}

.fm-coupon-form button.remove {
    width: 100%;
    background: #fff;
    border: 1px solid #fecaca;
    color: #dc2626;
}

.fm-coupon-form button.remove:hover {
    background: #fef2f2;
}

.fm-coupon-applied {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 18px;
    padding: 14px;
    margin-bottom: 12px;
}

.fm-coupon-applied div {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.fm-coupon-applied strong {
    color: #166534;
    font-size: 18px;
    font-weight: 1000;
}

.fm-coupon-applied span {
    min-height: 24px;
    border-radius: 999px;
    padding: 0 9px;
    background: #dcfce7;
    color: #166534;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-coupon-applied p {
    margin: 8px 0;
    color: #166534;
    font-size: 14px;
}

.fm-coupon-applied b {
    color: #111827;
    font-size: 14px;
}

.fm-checkout-items {
    display: grid;
    gap: 10px;
    max-height: 280px;
    overflow: auto;
    padding-right: 3px;
}

.fm-checkout-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    border: 1px solid #eef2f7;
    background: #f8fafc;
    border-radius: 16px;
    padding: 12px;
}

.fm-checkout-item strong {
    color: #111827;
    font-size: 14px;
    line-height: 1.35;
}

.fm-checkout-item small {
    display: block;
    margin-top: 4px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-checkout-item span {
    color: #111827;
    font-weight: 1000;
    white-space: nowrap;
}

.fm-summary-lines {
    border-top: 1px solid #eef2f7;
    margin-top: 14px;
    padding-top: 12px;
    display: grid;
    gap: 10px;
}

.fm-summary-lines div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: #4b5563;
    font-size: 14px;
}

.fm-summary-lines strong {
    color: #111827;
    font-weight: 1000;
}

.fm-summary-lines strong.discount {
    color: #16a34a;
}

.fm-summary-lines p {
    margin: 0;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #92400e;
    border-radius: 14px;
    padding: 10px;
    font-size: 13px;
    font-weight: 900;
}

.fm-summary-lines .grand {
    border-top: 1px solid #e5e7eb;
    padding-top: 12px;
    margin-top: 4px;
    align-items: center;
}

.fm-summary-lines .grand span {
    color: #111827;
    font-size: 16px;
    font-weight: 1000;
}

.fm-summary-lines .grand strong {
    color: #ff6500;
    font-size: 24px;
}

.fm-help-card h2 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.fm-help-card p {
    margin: 0;
    color: #6b7280;
    line-height: 1.65;
}

@media (max-width: 1180px) {
    .fm-checkout-layout {
        grid-template-columns: 1fr;
    }

    .fm-checkout-sidebar {
        position: static;
    }
}

@media (max-width: 768px) {
    .fm-checkout-hero {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 20px;
        padding: 22px;
    }

    .fm-checkout-count-card {
        width: 100%;
    }

    .fm-address-select-box {
        grid-template-columns: 24px minmax(0, 1fr);
    }

    .fm-address-icon {
        display: none;
    }

    .fm-checkout-final-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .fm-checkout-final-bar button {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .fm-checkout-page {
        padding: 20px 0 34px;
    }

    .fm-checkout-hero h1 {
        font-size: 32px;
    }

    .fm-checkout-card,
    .fm-checkout-empty {
        border-radius: 18px;
        padding: 16px;
    }

    .fm-coupon-input-row {
        grid-template-columns: 1fr;
    }

    .fm-coupon-input-row button {
        width: 100%;
    }

    .fm-payment-card > div {
        grid-template-columns: 1fr;
    }

    .fm-payment-card span {
        margin-bottom: 10px;
    }
}

/* =========================================================
   Notifications Page
   ========================================================= */

.fm-notification-page {
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 101, 0, .06), transparent 28%),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    min-height: 70vh;
    padding: 28px 0 48px;
    color: #111827;
}

.fm-notification-hero {
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 101, 0, .16), transparent 28%),
        linear-gradient(135deg, #111827 0%, #1f2937 62%, #ff6500 145%);
    border-radius: 26px;
    padding: 28px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .16);
    overflow: hidden;
}

.fm-notification-hero span {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 10px;
}

.fm-notification-hero h1 {
    margin: 0;
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.05;
    font-weight: 1000;
    letter-spacing: -.05em;
}

.fm-notification-hero p {
    margin: 10px 0 0;
    max-width: 700px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    line-height: 1.6;
}

.fm-notification-stats {
    display: flex;
    gap: 10px;
    flex: 0 0 auto;
}

.fm-notification-stats div {
    min-width: 112px;
    border-radius: 22px;
    padding: 18px;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(8px);
}

.fm-notification-stats strong {
    display: block;
    font-size: 34px;
    line-height: 1;
    font-weight: 1000;
}

.fm-notification-stats span {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 900;
}

.fm-notification-actions {
    margin: 18px 0;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.fm-notification-actions a,
.fm-notification-actions button {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.fm-notification-actions a:hover,
.fm-notification-actions button:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-notification-actions form {
    margin: 0;
}

.fm-notification-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 26px;
    padding: 54px 24px;
    text-align: center;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-notification-empty-icon {
    width: 86px;
    height: 86px;
    margin: 0 auto 16px;
    border-radius: 28px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 42px;
}

.fm-notification-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 30px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-notification-empty p {
    margin: 9px 0 20px;
    color: #6b7280;
}

.fm-notification-empty a {
    min-height: 44px;
    border-radius: 999px;
    padding: 0 22px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-notification-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 18px;
    align-items: flex-start;
}

.fm-notification-list {
    display: grid;
    gap: 14px;
}

.fm-notification-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 16px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 14px;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .05);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-notification-card:hover {
    transform: translateY(-2px);
    border-color: #fed7aa;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .08);
}

.fm-notification-card.unread {
    border-color: #fed7aa;
    background:
        radial-gradient(circle at 96% 12%, rgba(255, 101, 0, .08), transparent 28%),
        #fff;
}

.fm-notification-icon {
    width: 58px;
    height: 58px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    font-size: 26px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
}

.fm-notification-icon.order {
    background: #eef2ff;
}

.fm-notification-icon.payment {
    background: #f0fdf4;
}

.fm-notification-icon.return {
    background: #fff7ed;
}

.fm-notification-icon.shipment {
    background: #eff6ff;
}

.fm-notification-icon.review {
    background: #fefce8;
}

.fm-notification-icon.product {
    background: #fdf2f8;
}

.fm-notification-icon.general {
    background: #f8fafc;
}

.fm-notification-content {
    min-width: 0;
}

.fm-notification-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.fm-notification-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 8px;
}

.fm-notification-type,
.fm-notification-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-notification-type.order {
    background: #eef2ff;
    color: #3730a3;
}

.fm-notification-type.payment {
    background: #dcfce7;
    color: #166534;
}

.fm-notification-type.return {
    background: #fff7ed;
    color: #c2410c;
}

.fm-notification-type.shipment {
    background: #dbeafe;
    color: #1d4ed8;
}

.fm-notification-type.review {
    background: #fef3c7;
    color: #92400e;
}

.fm-notification-type.product {
    background: #fce7f3;
    color: #be185d;
}

.fm-notification-type.general {
    background: #f3f4f6;
    color: #374151;
}

.fm-notification-status.unread {
    background: #ff6500;
    color: #fff;
}

.fm-notification-status.read {
    background: #dcfce7;
    color: #166534;
}

.fm-notification-top h2 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 1000;
    letter-spacing: -.02em;
}

.fm-notification-top time {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
    margin-top: 4px;
}

.fm-notification-content p {
    margin: 10px 0 0;
    color: #4b5563;
    font-size: 14px;
    line-height: 1.6;
}

.fm-notification-bottom {
    border-top: 1px solid #eef2f7;
    margin-top: 14px;
    padding-top: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.fm-notification-dot-text {
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.fm-notification-card.unread .fm-notification-dot-text {
    color: #c2410c;
}

.fm-notification-buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-notification-buttons form {
    margin: 0;
}

.fm-notification-buttons a,
.fm-notification-buttons button {
    min-height: 36px;
    border-radius: 999px;
    padding: 0 14px;
    border: 1px solid transparent;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.fm-notification-buttons a {
    background: #111827;
    border-color: #111827;
    color: #fff;
}

.fm-notification-buttons a:hover {
    background: #ff6500;
    border-color: #ff6500;
}

.fm-notification-buttons button {
    background: #ff6500;
    border-color: #ff6500;
    color: #fff;
}

.fm-notification-buttons button:hover {
    background: #ea580c;
}

.fm-notification-sidebar {
    position: sticky;
    top: 92px;
    display: grid;
    gap: 18px;
}

.fm-notification-side-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 20px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.fm-notification-side-card h3 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-notification-summary-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    padding: 12px;
}

.fm-notification-summary-row + .fm-notification-summary-row {
    margin-top: 10px;
}

.fm-notification-summary-row span {
    color: #6b7280;
    font-size: 13px;
    font-weight: 900;
}

.fm-notification-summary-row strong {
    color: #111827;
    font-size: 20px;
    font-weight: 1000;
}

.fm-notification-quick-links {
    display: grid;
    gap: 9px;
}

.fm-notification-quick-links a {
    min-height: 40px;
    border-radius: 14px;
    padding: 0 12px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #111827;
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: flex;
    align-items: center;
}

.fm-notification-quick-links a:hover {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #ff6500;
}

@media (max-width: 1180px) {
    .fm-notification-layout {
        grid-template-columns: 1fr;
    }

    .fm-notification-sidebar {
        position: static;
    }
}

@media (max-width: 768px) {
    .fm-notification-hero {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 20px;
        padding: 22px;
    }

    .fm-notification-stats {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .fm-notification-card {
        grid-template-columns: 1fr;
    }

    .fm-notification-top,
    .fm-notification-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .fm-notification-page {
        padding: 20px 0 34px;
    }

    .fm-notification-hero h1 {
        font-size: 32px;
    }

    .fm-notification-empty,
    .fm-notification-card,
    .fm-notification-side-card {
        border-radius: 18px;
    }

    .fm-notification-stats {
        grid-template-columns: 1fr;
    }

    .fm-notification-buttons,
    .fm-notification-buttons a,
    .fm-notification-buttons button,
    .fm-notification-buttons form {
        width: 100%;
    }
}

/* =========================================================
   Support Tickets Page - Compact Cards
   ========================================================= */

.fm-support-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 24px 0 42px;
    color: #111827;
}

.fm-support-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 22px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
}

.fm-support-head span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.fm-support-head h1 {
    margin: 0;
    color: #111827;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.fm-support-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.fm-support-create-btn {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    box-shadow: 0 12px 26px rgba(255, 101, 0, .18);
}

.fm-support-create-btn:hover {
    background: #ea580c;
}

.fm-support-stats {
    margin: 14px 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.fm-support-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 14px 16px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .04);
}

.fm-support-stats strong {
    display: block;
    color: #111827;
    font-size: 24px;
    line-height: 1;
    font-weight: 1000;
}

.fm-support-stats span {
    display: block;
    margin-top: 6px;
    color: #6b7280;
    font-size: 13px;
    font-weight: 900;
}

.fm-support-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 42px 20px;
    text-align: center;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
}

.fm-support-empty div {
    width: 72px;
    height: 72px;
    margin: 0 auto 12px;
    border-radius: 24px;
    background: #fff7ed;
    display: grid;
    place-items: center;
    font-size: 34px;
}

.fm-support-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 26px;
    font-weight: 1000;
}

.fm-support-empty p {
    margin: 8px 0 18px;
    color: #6b7280;
}

.fm-support-empty a {
    min-height: 42px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    padding: 0 18px;
    text-decoration: none;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-support-ticket-list {
    display: grid;
    gap: 10px;
}

.fm-support-ticket-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .04);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.fm-support-ticket-card:hover {
    transform: translateY(-2px);
    border-color: #fed7aa;
    box-shadow: 0 16px 36px rgba(15, 23, 42, .07);
}

.fm-support-ticket-icon {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.fm-support-ticket-main {
    min-width: 0;
}

.fm-support-ticket-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.fm-support-ticket-number {
    display: block;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 3px;
}

.fm-support-ticket-top h2 {
    margin: 0;
    color: #111827;
    font-size: 17px;
    line-height: 1.35;
    font-weight: 1000;
}

.fm-support-open-btn {
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-support-open-btn:hover {
    background: #ff6500;
}

.fm-support-ticket-meta {
    margin-top: 10px;
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    align-items: center;
}

.fm-support-pill {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-support-pill.category {
    background: #eef2ff;
    color: #3730a3;
}

.fm-support-pill.priority.normal {
    background: #f3f4f6;
    color: #374151;
}

.fm-support-pill.priority.warning {
    background: #fef3c7;
    color: #92400e;
}

.fm-support-pill.priority.danger {
    background: #fee2e2;
    color: #991b1b;
}

.fm-support-pill.status.open {
    background: #dcfce7;
    color: #166534;
}

.fm-support-pill.status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.fm-support-pill.status.closed {
    background: #e5e7eb;
    color: #374151;
}

.fm-support-order {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    background: #f8fafc;
    color: #6b7280;
    border: 1px solid #eef2f7;
    font-size: 12px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
}

.fm-support-ticket-footer {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #eef2f7;
}

.fm-support-ticket-footer span {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

@media (max-width: 768px) {
    .fm-support-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 18px;
        padding: 18px;
    }

    .fm-support-create-btn {
        width: 100%;
    }

    .fm-support-stats {
        grid-template-columns: 1fr;
    }

    .fm-support-ticket-card {
        grid-template-columns: 1fr;
    }

    .fm-support-ticket-top {
        flex-direction: column;
    }

    .fm-support-open-btn {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .fm-support-page {
        padding: 18px 0 34px;
    }

    .fm-support-head h1 {
        font-size: 30px;
    }

    .fm-support-ticket-card,
    .fm-support-empty {
        border-radius: 16px;
    }
}

/* =========================================================
   Create Support Ticket Page
   ========================================================= */

.fm-ticket-create-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 24px 0 42px;
    color: #111827;
}

.fm-ticket-create-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 22px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
    margin-bottom: 16px;
}

.fm-ticket-create-head span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.fm-ticket-create-head h1 {
    margin: 0;
    color: #111827;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.fm-ticket-create-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
    max-width: 720px;
}

.fm-ticket-back-btn {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-ticket-back-btn:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-ticket-create-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 16px;
    align-items: flex-start;
}

.fm-ticket-form-card,
.fm-ticket-help-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
}

.fm-ticket-form-card {
    padding: 22px;
}

.fm-ticket-help-card {
    padding: 18px;
    position: sticky;
    top: 92px;
}

.fm-ticket-card-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
}

.fm-ticket-card-head > span {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 1000;
    flex: 0 0 auto;
}

.fm-ticket-card-head h2 {
    margin: 0;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-ticket-card-head p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.45;
}

.fm-ticket-form {
    display: grid;
    gap: 14px;
}

.fm-ticket-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.fm-ticket-field {
    display: grid;
    gap: 7px;
}

.fm-ticket-field label,
.fm-ticket-upload-box label {
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-ticket-field label b {
    color: #dc2626;
}

.fm-ticket-field input,
.fm-ticket-field select,
.fm-ticket-field textarea {
    width: 100%;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 14px;
    color: #111827;
    outline: none;
    font-size: 14px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.fm-ticket-field input,
.fm-ticket-field select {
    height: 44px;
    padding: 0 13px;
}

.fm-ticket-field textarea {
    min-height: 150px;
    padding: 13px;
    resize: vertical;
}

.fm-ticket-field input:focus,
.fm-ticket-field select:focus,
.fm-ticket-field textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.fm-ticket-upload-box {
    display: grid;
    gap: 8px;
}

.fm-ticket-upload-inner {
    position: relative;
    border: 1.5px dashed #d1d5db;
    border-radius: 18px;
    background: #f8fafc;
    min-height: 130px;
    padding: 20px;
    display: grid;
    justify-items: center;
    align-content: center;
    text-align: center;
    overflow: hidden;
    transition: border-color .18s ease, background .18s ease;
}

.fm-ticket-upload-inner:hover {
    border-color: #ff6500;
    background: #fff7ed;
}

.fm-ticket-upload-icon {
    width: 48px;
    height: 48px;
    border-radius: 17px;
    background: #fff;
    display: grid;
    place-items: center;
    font-size: 24px;
    margin-bottom: 8px;
    border: 1px solid #eef2f7;
}

.fm-ticket-upload-inner strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.fm-ticket-upload-inner span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-ticket-upload-inner input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.fm-ticket-file-preview {
    min-height: 42px;
    border: 1px solid #bbf7d0;
    background: #f0fdf4;
    border-radius: 14px;
    padding: 8px 10px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.fm-ticket-file-preview strong {
    color: #166534;
    font-size: 13px;
    font-weight: 1000;
    word-break: break-all;
}

.fm-ticket-file-preview button {
    border: 1px solid #fecaca;
    background: #fff;
    color: #dc2626;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
}

.fm-ticket-submit-row {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    border-radius: 18px;
    padding: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.fm-ticket-submit-row strong {
    display: block;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.fm-ticket-submit-row span {
    display: block;
    margin-top: 4px;
    color: #6b7280;
    font-size: 13px;
}

.fm-ticket-submit-row button {
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    padding: 0 20px;
    background: #ff6500;
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 12px 26px rgba(255, 101, 0, .18);
}

.fm-ticket-submit-row button:hover {
    background: #ea580c;
}

.fm-ticket-help-card h3 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-ticket-help-list {
    display: grid;
    gap: 10px;
}

.fm-ticket-help-list div {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
    padding: 11px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
}

.fm-ticket-help-list span {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 1000;
}

.fm-ticket-help-list p {
    margin: 0;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.45;
}

.fm-ticket-note {
    margin-top: 12px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    padding: 12px;
    color: #92400e;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 800;
}

@media (max-width: 1020px) {
    .fm-ticket-create-layout {
        grid-template-columns: 1fr;
    }

    .fm-ticket-help-card {
        position: static;
    }
}

@media (max-width: 768px) {
    .fm-ticket-create-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 18px;
        padding: 18px;
    }

    .fm-ticket-back-btn {
        width: 100%;
    }

    .fm-ticket-grid {
        grid-template-columns: 1fr;
    }

    .fm-ticket-submit-row {
        align-items: stretch;
        flex-direction: column;
    }

    .fm-ticket-submit-row button {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .fm-ticket-create-page {
        padding: 18px 0 34px;
    }

    .fm-ticket-create-head h1 {
        font-size: 30px;
    }

    .fm-ticket-form-card,
    .fm-ticket-help-card {
        border-radius: 16px;
        padding: 16px;
    }
}

/* =========================================================
   Support Ticket View Page
   ========================================================= */

.fm-ticket-view-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 24px 0 42px;
    color: #111827;
}

.fm-ticket-view-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 22px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
    margin-bottom: 16px;
}

.fm-ticket-view-head span {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 11px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 8px;
}

.fm-ticket-view-head h1 {
    margin: 0;
    color: #111827;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.fm-ticket-view-head p {
    margin: 8px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.fm-ticket-view-back-btn {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    font-size: 14px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-ticket-view-back-btn:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-ticket-view-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 16px;
    align-items: flex-start;
}

.fm-ticket-thread-card,
.fm-ticket-side-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
}

.fm-ticket-thread-card {
    padding: 18px;
}

.fm-ticket-side-card {
    padding: 18px;
    position: sticky;
    top: 92px;
}

.fm-ticket-summary-card {
    border: 1px solid #eef2f7;
    background: #f8fafc;
    border-radius: 18px;
    padding: 14px;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 16px;
}

.fm-ticket-summary-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #e5e7eb;
    display: grid;
    place-items: center;
    font-size: 26px;
}

.fm-ticket-summary-content h2 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 1000;
}

.fm-ticket-summary-content p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 13px;
    font-weight: 800;
}

.fm-ticket-summary-pills {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    margin-top: 10px;
}

.fm-ticket-pill {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-ticket-pill.category {
    background: #eef2ff;
    color: #3730a3;
}

.fm-ticket-pill.priority.normal {
    background: #f3f4f6;
    color: #374151;
}

.fm-ticket-pill.priority.warning {
    background: #fef3c7;
    color: #92400e;
}

.fm-ticket-pill.priority.danger {
    background: #fee2e2;
    color: #991b1b;
}

.fm-ticket-pill.status.open {
    background: #dcfce7;
    color: #166534;
}

.fm-ticket-pill.status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.fm-ticket-pill.status.closed {
    background: #e5e7eb;
    color: #374151;
}

.fm-ticket-pill.order {
    background: #fff;
    color: #4b5563;
    border: 1px solid #e5e7eb;
}

.fm-ticket-thread-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.fm-ticket-thread-head span,
.fm-ticket-reply-head span {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.fm-ticket-thread-head h2,
.fm-ticket-reply-head h2 {
    margin: 0;
    color: #111827;
    font-size: 24px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-ticket-thread-head p,
.fm-ticket-reply-head p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 14px;
}

.fm-ticket-thread-head strong {
    color: #111827;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 999px;
    padding: 8px 12px;
    height: fit-content;
    font-size: 13px;
}

.fm-ticket-thread {
    display: grid;
    gap: 12px;
}

.fm-ticket-message {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 10px;
    max-width: 88%;
}

.fm-ticket-message.mine {
    margin-left: auto;
    grid-template-columns: minmax(0, 1fr) 38px;
}

.fm-ticket-message.mine .fm-ticket-message-avatar {
    order: 2;
}

.fm-ticket-message-avatar {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    display: grid;
    place-items: center;
    font-size: 14px;
    font-weight: 1000;
}

.fm-ticket-message.mine .fm-ticket-message-avatar {
    background: #ff6500;
}

.fm-ticket-message-card {
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 13px;
    background: #fff;
}

.fm-ticket-message.mine .fm-ticket-message-card {
    background: #fff7ed;
    border-color: #fed7aa;
}

.fm-ticket-message-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.fm-ticket-message-head strong {
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.fm-ticket-message-head time {
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.fm-ticket-role {
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
}

.fm-ticket-role.admin {
    background: #dcfce7;
    color: #166534;
}

.fm-ticket-role.seller {
    background: #eef2ff;
    color: #3730a3;
}

.fm-ticket-role.customer {
    background: #f3f4f6;
    color: #374151;
}

.fm-ticket-message-card p {
    margin: 10px 0 0;
    color: #374151;
    line-height: 1.6;
    font-size: 14px;
}

.fm-ticket-attachment {
    margin-top: 10px;
    min-height: 32px;
    border-radius: 999px;
    padding: 0 12px;
    background: #fff;
    border: 1px solid #e5e7eb;
    color: #111827;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-ticket-attachment:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-ticket-no-message {
    padding: 36px 16px;
    text-align: center;
    border: 1px dashed #d1d5db;
    border-radius: 18px;
    background: #f8fafc;
}

.fm-ticket-no-message div {
    font-size: 34px;
    margin-bottom: 8px;
}

.fm-ticket-no-message h3 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.fm-ticket-no-message p {
    margin: 6px 0 0;
    color: #6b7280;
}

.fm-ticket-reply-card {
    margin-top: 18px;
    border-top: 1px solid #eef2f7;
    padding-top: 18px;
}

.fm-ticket-reply-form {
    display: grid;
    gap: 14px;
}

.fm-ticket-reply-field {
    display: grid;
    gap: 7px;
}

.fm-ticket-reply-field label,
.fm-ticket-reply-upload label {
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-ticket-reply-field label b {
    color: #dc2626;
}

.fm-ticket-reply-field textarea {
    width: 100%;
    min-height: 120px;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 14px;
    color: #111827;
    outline: none;
    padding: 13px;
    font-size: 14px;
    resize: vertical;
}

.fm-ticket-reply-field textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 4px rgba(255, 101, 0, .12);
}

.fm-ticket-reply-upload {
    display: grid;
    gap: 8px;
}

.fm-ticket-reply-upload-inner {
    position: relative;
    border: 1.5px dashed #d1d5db;
    border-radius: 18px;
    background: #f8fafc;
    min-height: 115px;
    padding: 18px;
    display: grid;
    justify-items: center;
    align-content: center;
    text-align: center;
    overflow: hidden;
}

.fm-ticket-reply-upload-inner:hover {
    border-color: #ff6500;
    background: #fff7ed;
}

.fm-ticket-reply-upload-inner div {
    width: 42px;
    height: 42px;
    border-radius: 15px;
    background: #fff;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    font-size: 22px;
    margin-bottom: 7px;
}

.fm-ticket-reply-upload-inner strong {
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.fm-ticket-reply-upload-inner span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    margin-top: 4px;
}

.fm-ticket-reply-upload-inner input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.fm-ticket-reply-file {
    min-height: 42px;
    border: 1px solid #bbf7d0;
    background: #f0fdf4;
    border-radius: 14px;
    padding: 8px 10px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.fm-ticket-reply-file strong {
    color: #166534;
    font-size: 13px;
    font-weight: 1000;
    word-break: break-all;
}

.fm-ticket-reply-file button {
    border: 1px solid #fecaca;
    background: #fff;
    color: #dc2626;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
}

.fm-ticket-reply-submit {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    border-radius: 18px;
    padding: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.fm-ticket-reply-submit strong {
    display: block;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.fm-ticket-reply-submit span {
    display: block;
    margin-top: 4px;
    color: #6b7280;
    font-size: 13px;
}

.fm-ticket-reply-submit button {
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    padding: 0 20px;
    background: #ff6500;
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 12px 26px rgba(255, 101, 0, .18);
}

.fm-ticket-reply-submit button:hover {
    background: #ea580c;
}

.fm-ticket-closed-box {
    margin-top: 18px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 18px;
    padding: 14px;
    display: grid;
    gap: 4px;
}

.fm-ticket-closed-box strong {
    color: #991b1b;
    font-size: 15px;
}

.fm-ticket-closed-box span {
    color: #7f1d1d;
    font-size: 13px;
}

.fm-ticket-side-card h3 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-ticket-side-row {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 11px;
}

.fm-ticket-side-row + .fm-ticket-side-row {
    margin-top: 10px;
}

.fm-ticket-side-row span {
    display: block;
    color: #6b7280;
    font-size: 12px;
    font-weight: 1000;
    margin-bottom: 5px;
}

.fm-ticket-side-row strong {
    display: block;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
    line-height: 1.35;
}

.fm-ticket-side-note {
    margin-top: 12px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    padding: 12px;
    color: #92400e;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 800;
}

@media (max-width: 1020px) {
    .fm-ticket-view-layout {
        grid-template-columns: 1fr;
    }

    .fm-ticket-side-card {
        position: static;
    }
}

@media (max-width: 768px) {
    .fm-ticket-view-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 18px;
        padding: 18px;
    }

    .fm-ticket-view-back-btn {
        width: 100%;
    }

    .fm-ticket-thread-head,
    .fm-ticket-reply-submit {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-ticket-message,
    .fm-ticket-message.mine {
        max-width: 100%;
        grid-template-columns: 1fr;
    }

    .fm-ticket-message.mine .fm-ticket-message-avatar {
        order: initial;
    }

    .fm-ticket-message-avatar {
        display: none;
    }

    .fm-ticket-reply-submit button {
        width: 100%;
    }

    .fm-ticket-message-head {
        flex-direction: column;
    }
}

@media (max-width: 520px) {
    .fm-ticket-view-page {
        padding: 18px 0 34px;
    }

    .fm-ticket-view-head h1 {
        font-size: 30px;
    }

    .fm-ticket-thread-card,
    .fm-ticket-side-card {
        border-radius: 16px;
        padding: 16px;
    }

    .fm-ticket-summary-card {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Admin Product Reviews Page - Compact Design
   ========================================================= */

.admin-reviews-page {
    align-items: flex-start;
    background: #f8fafc;
}

.admin-reviews-main {
    min-width: 0;
}

.admin-reviews-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
}

.admin-reviews-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.admin-reviews-head h1 {
    margin: 0;
    color: #111827;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.admin-reviews-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.admin-review-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.admin-review-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.admin-review-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.admin-review-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.admin-review-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px 18px;
    text-align: center;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
}

.admin-review-empty div {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 20px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 28px;
}

.admin-review-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.admin-review-empty p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.admin-review-list {
    display: grid;
    gap: 10px;
}

.admin-review-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.admin-review-card:hover {
    transform: translateY(-1px);
    border-color: #fed7aa;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.admin-review-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.admin-review-product {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: flex-start;
}

.admin-review-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    display: grid;
    place-items: center;
    font-size: 20px;
}

.admin-review-order {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    color: #6b7280;
    border: 1px solid #eef2f7;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.admin-review-product h2 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 1000;
}

.admin-review-users {
    margin-top: 5px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.admin-review-users span {
    color: #6b7280;
    font-size: 12px;
    font-weight: 700;
}

.admin-review-users strong {
    color: #111827;
    font-weight: 900;
}

.admin-review-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.admin-review-status.approved {
    background: #dcfce7;
    color: #166534;
}

.admin-review-status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.admin-review-status.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.admin-review-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 14px;
    padding-top: 10px;
}

.admin-review-content {
    min-width: 0;
}

.admin-review-rating {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
}

.admin-review-rating span {
    color: #f59e0b;
    letter-spacing: -1px;
    font-size: 15px;
}

.admin-review-rating strong {
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
}

.admin-review-content h3 {
    margin: 0;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.admin-review-content p {
    margin: 6px 0 0;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.45;
}

.admin-review-image-preview {
    margin-top: 9px;
    width: 105px;
    height: 105px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #f8fafc;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.admin-review-image-preview a {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
}

.admin-review-image-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.admin-review-reason {
    margin-top: 9px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 8px 10px;
    display: grid;
    gap: 3px;
}

.admin-review-reason strong {
    color: #991b1b;
    font-size: 12px;
    font-weight: 1000;
}

.admin-review-reason span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.35;
}

.admin-review-action-box {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
}

.admin-review-action-box h3 {
    margin: 0 0 9px;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.admin-review-form {
    display: grid;
    gap: 7px;
    margin: 0;
}

.admin-review-form label {
    color: #111827;
    font-size: 11px;
    font-weight: 1000;
}

.admin-review-form select,
.admin-review-form input {
    width: 100%;
    height: 34px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
    border-radius: 10px;
    padding: 0 10px;
    font-size: 12px;
    outline: none;
}

.admin-review-form select:focus,
.admin-review-form input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.admin-review-form button {
    margin-top: 3px;
    min-height: 34px;
    border: 0;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(255, 101, 0, .16);
}

.admin-review-form button:hover {
    background: #ea580c;
}

@media (max-width: 1180px) {
    .admin-review-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .admin-review-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-review-top {
        flex-direction: column;
    }

    .admin-review-product {
        grid-template-columns: 1fr;
    }

    .admin-review-icon {
        display: none;
    }

    .admin-review-action-box {
        max-width: 100%;
    }
}

@media (max-width: 560px) {
    .admin-reviews-head,
    .admin-review-card,
    .admin-review-empty {
        border-radius: 14px;
    }

    .admin-reviews-head h1 {
        font-size: 24px;
    }

    .admin-review-stats {
        grid-template-columns: 1fr;
    }

    .admin-review-users {
        display: grid;
        gap: 3px;
    }
}

/* =========================================================
   Write Product Review Page - Compact Design
   ========================================================= */

.fm-review-write-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 22px 0 38px;
    color: #111827;
}

.fm-review-write-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 18px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
    margin-bottom: 14px;
}

.fm-review-write-head span {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 7px;
}

.fm-review-write-head h1 {
    margin: 0;
    color: #111827;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.04em;
}

.fm-review-write-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
    max-width: 650px;
}

.fm-review-back-btn {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-review-back-btn:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-review-write-layout {
    max-width: 760px;
    display: grid;
    gap: 12px;
}

.fm-review-product-mini-card,
.fm-review-form-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
}

.fm-review-product-mini-card {
    padding: 14px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
    align-items: flex-start;
}

.fm-review-product-icon {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.fm-review-product-mini-card span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.fm-review-product-mini-card h2 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 1000;
}

.fm-review-product-meta {
    margin-top: 8px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-review-product-meta p {
    margin: 0;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
}

.fm-review-product-meta strong {
    color: #111827;
    margin-right: 4px;
}

.fm-review-form-card {
    padding: 16px;
}

.fm-review-form-head {
    margin-bottom: 14px;
}

.fm-review-form-head span {
    display: inline-flex;
    min-height: 23px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.fm-review-form-head h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-review-form-head p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.fm-review-form {
    display: grid;
    gap: 12px;
}

.fm-review-field {
    display: grid;
    gap: 6px;
}

.fm-review-field label {
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
}

.fm-review-field label b {
    color: #dc2626;
}

.fm-review-field select,
.fm-review-field input,
.fm-review-field textarea {
    width: 100%;
    border: 1px solid #d1d5db;
    background: #fff;
    border-radius: 12px;
    color: #111827;
    outline: none;
    font-size: 13px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.fm-review-field select,
.fm-review-field input {
    height: 40px;
    padding: 0 12px;
}

.fm-review-field textarea {
    min-height: 110px;
    padding: 12px;
    resize: vertical;
}

.fm-review-field select:focus,
.fm-review-field input:focus,
.fm-review-field textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.fm-review-submit-row {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    border-radius: 16px;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.fm-review-submit-row strong {
    display: block;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.fm-review-submit-row span {
    display: block;
    margin-top: 3px;
    color: #6b7280;
    font-size: 12px;
}

.fm-review-submit-row button {
    min-height: 38px;
    border: 0;
    border-radius: 999px;
    padding: 0 17px;
    background: #ff6500;
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(255, 101, 0, .17);
}

.fm-review-submit-row button:hover {
    background: #ea580c;
}

@media (max-width: 768px) {
    .fm-review-write-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 16px;
        padding: 16px;
    }

    .fm-review-back-btn {
        width: 100%;
    }

    .fm-review-write-head h1 {
        font-size: 28px;
    }

    .fm-review-product-mini-card {
        grid-template-columns: 1fr;
    }

    .fm-review-product-icon {
        display: none;
    }

    .fm-review-submit-row {
        align-items: stretch;
        flex-direction: column;
    }

    .fm-review-submit-row button {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .fm-review-write-page {
        padding: 18px 0 32px;
    }

    .fm-review-form-card,
    .fm-review-product-mini-card {
        border-radius: 16px;
        padding: 14px;
    }

    .fm-review-product-meta {
        display: grid;
        gap: 6px;
    }
}

/* Review create page with right product image */
.fm-review-write-layout-with-image {
    display: grid;
    grid-template-columns: minmax(0, 760px) 360px;
    gap: 18px;
    align-items: flex-start;
}

.fm-review-write-left {
    display: grid;
    gap: 12px;
    min-width: 0;
}

.fm-review-product-image-card {
    position: sticky;
    top: 92px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 14px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
}

.fm-review-image-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.fm-review-image-head span {
    min-height: 23px;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.fm-review-image-head strong {
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-review-image-box {
    height: 310px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.fm-review-image-box img {
    width: 92%;
    height: 92%;
    object-fit: contain;
}

.fm-review-image-info {
    margin-top: 12px;
    border-top: 1px solid #eef2f7;
    padding-top: 12px;
}

.fm-review-image-info h3 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 1000;
}

.fm-review-image-info p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-review-image-info strong {
    color: #111827;
}

@media (max-width: 1180px) {
    .fm-review-write-layout-with-image {
        grid-template-columns: 1fr;
    }

    .fm-review-product-image-card {
        position: static;
        max-width: 760px;
    }

    .fm-review-image-box {
        height: 260px;
    }
}

@media (max-width: 560px) {
    .fm-review-product-image-card {
        border-radius: 16px;
        padding: 12px;
    }

    .fm-review-image-box {
        height: 220px;
    }
}

/* Review image upload */
.fm-review-upload-box {
    display: grid;
    gap: 7px;
}

.fm-review-upload-box label {
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
}

.fm-review-upload-inner {
    position: relative;
    min-height: 125px;
    border: 1.5px dashed #d1d5db;
    background: #f8fafc;
    border-radius: 16px;
    padding: 14px;
    display: grid;
    place-items: center;
    overflow: hidden;
    text-align: center;
    transition: border-color .18s ease, background .18s ease;
}

.fm-review-upload-inner:hover {
    border-color: #ff6500;
    background: #fff7ed;
}

.fm-review-upload-default {
    display: grid;
    justify-items: center;
}

.fm-review-upload-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid #eef2f7;
    display: grid;
    place-items: center;
    font-size: 21px;
    margin-bottom: 7px;
}

.fm-review-upload-default strong {
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.fm-review-upload-default span {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    margin-top: 4px;
}

.fm-review-upload-inner input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.fm-review-image-preview {
    width: 100%;
    height: 150px;
    display: grid;
    place-items: center;
    position: relative;
}

.fm-review-image-preview img {
    width: 100%;
    height: 140px;
    object-fit: contain;
    border-radius: 14px;
    background: #fff;
}

.fm-review-image-preview button {
    position: absolute;
    right: 8px;
    top: 8px;
    border: 0;
    background: #dc2626;
    color: #fff;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 1000;
    cursor: pointer;
}

.admin-review-image-preview {
    margin-top: 10px;
    width: 120px;
    height: 120px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #f8fafc;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.admin-review-image-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fm-product-review-image {
    margin-top: 10px;
    width: 130px;
    height: 130px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #f8fafc;
    overflow: hidden;
    display: grid;
    place-items: center;
}

.fm-product-review-image a {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
}

.fm-product-review-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Product detail review image */
.fm-product-reviews-list {
    margin-top: 28px;
}

.fm-product-reviews-list h2 {
    margin: 0 0 16px;
    color: #111827;
    font-size: 26px;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-product-review-card {
    border-bottom: 1px solid #e5e7eb;
    padding: 16px 0;
}

.fm-product-review-user {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.fm-product-review-avatar {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: #f3f4f6;
    color: #111827;
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 1000;
}

.fm-product-review-user strong {
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.fm-product-review-stars {
    color: #f59e0b;
    font-size: 14px;
    letter-spacing: -1px;
    margin-top: 2px;
}

.fm-product-review-card h3 {
    margin: 8px 0 6px;
    color: #111827;
    font-size: 17px;
    font-weight: 1000;
}

.fm-product-review-card p {
    margin: 0;
    color: #374151;
    font-size: 14px;
    line-height: 1.55;
}

.fm-product-review-card small {
    display: block;
    margin-top: 8px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 700;
}

.fm-product-review-image {
    margin-top: 10px;
    width: 130px;
    height: 130px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #f8fafc;
    overflow: hidden;
    display: grid;
    place-items: center;
}

.fm-product-review-image a {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
}

.fm-product-review-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fm-no-product-reviews {
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    border-radius: 16px;
    padding: 18px;
}

.fm-no-product-reviews h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.fm-no-product-reviews p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 14px;
}

/* =========================================================
   Admin Product Q&A Moderation - Compact Design
   ========================================================= */

.admin-qa-page {
    align-items: flex-start;
    background: #f8fafc;
}

.admin-qa-main {
    min-width: 0;
}

.admin-qa-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.admin-qa-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.admin-qa-head h1 {
    margin: 0;
    color: #111827;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.admin-qa-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.admin-qa-total {
    min-width: 105px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    padding: 10px 12px;
    text-align: center;
}

.admin-qa-total strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.admin-qa-total span {
    display: block;
    margin: 5px 0 0;
    background: transparent;
    border: 0;
    padding: 0;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.admin-qa-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.admin-qa-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.admin-qa-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.admin-qa-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.admin-qa-stats .pending {
    border-color: #fed7aa;
}

.admin-qa-stats .answered {
    border-color: #bfdbfe;
}

.admin-qa-stats .approved {
    border-color: #bbf7d0;
}

.admin-qa-stats .rejected {
    border-color: #fecaca;
}

.admin-qa-filter-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    margin-bottom: 12px;
}

.admin-qa-filter-form {
    margin: 0;
}

.admin-qa-filter-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px auto;
    gap: 10px;
    align-items: end;
}

.admin-qa-filter-grid label {
    display: block;
    color: #111827;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 5px;
}

.admin-qa-filter-grid input,
.admin-qa-filter-grid select {
    width: 100%;
    height: 36px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
    border-radius: 10px;
    padding: 0 10px;
    font-size: 12px;
    outline: none;
}

.admin-qa-filter-grid input:focus,
.admin-qa-filter-grid select:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.admin-qa-filter-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

.admin-qa-filter-actions button,
.admin-qa-filter-actions a {
    min-height: 36px;
    border-radius: 999px;
    padding: 0 13px;
    font-size: 12px;
    font-weight: 1000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    cursor: pointer;
}

.admin-qa-filter-actions button {
    border: 0;
    background: #ff6500;
    color: #fff;
}

.admin-qa-filter-actions a {
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #111827;
}

.admin-qa-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px 18px;
    text-align: center;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
}

.admin-qa-empty div {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 20px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 28px;
    font-weight: 1000;
}

.admin-qa-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.admin-qa-empty p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.admin-qa-list {
    display: grid;
    gap: 10px;
}

.admin-qa-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.admin-qa-card:hover {
    transform: translateY(-1px);
    border-color: #fed7aa;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.admin-qa-card-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.admin-qa-product {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
}

.admin-qa-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 1000;
}

.admin-qa-product-label {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.admin-qa-product h2 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 1000;
}

.admin-qa-product a {
    margin-top: 5px;
    color: #0066c0;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    display: inline-flex;
}

.admin-qa-product a:hover {
    color: #ff6500;
}

.admin-qa-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.admin-qa-status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.admin-qa-status.approved {
    background: #dcfce7;
    color: #166534;
}

.admin-qa-status.answered {
    background: #dbeafe;
    color: #1d4ed8;
}

.admin-qa-status.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.admin-qa-card-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 14px;
    padding-top: 10px;
}

.admin-qa-people {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 9px;
}

.admin-qa-people div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 12px;
    padding: 9px;
}

.admin-qa-people span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 4px;
}

.admin-qa-people strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 1000;
}

.admin-qa-people small {
    display: block;
    margin-top: 3px;
    color: #6b7280;
    font-size: 11px;
    word-break: break-all;
}

.admin-qa-message-box {
    border: 1px solid #eef2f7;
    background: #fff;
    border-radius: 12px;
    padding: 10px;
}

.admin-qa-message-box + .admin-qa-message-box {
    margin-top: 8px;
}

.admin-qa-message-box span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.admin-qa-message-box.answer span {
    background: #dcfce7;
    color: #166534;
}

.admin-qa-message-box p {
    margin: 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.45;
}

.admin-qa-answer-pending {
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff7ed;
    color: #c2410c;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
}

.admin-qa-remarks {
    margin-top: 8px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 8px 10px;
    display: grid;
    gap: 3px;
}

.admin-qa-remarks strong {
    color: #991b1b;
    font-size: 12px;
    font-weight: 1000;
}

.admin-qa-remarks span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.35;
}

.admin-qa-action-box {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
}

.admin-qa-action-box h3 {
    margin: 0 0 9px;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.admin-qa-action-form {
    display: grid;
    gap: 7px;
    margin: 0;
}

.admin-qa-action-form label {
    color: #111827;
    font-size: 11px;
    font-weight: 1000;
}

.admin-qa-action-form select,
.admin-qa-action-form input {
    width: 100%;
    height: 34px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
    border-radius: 10px;
    padding: 0 10px;
    font-size: 12px;
    outline: none;
}

.admin-qa-action-form select:focus,
.admin-qa-action-form input:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.admin-qa-action-form button {
    margin-top: 3px;
    min-height: 34px;
    border: 0;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(255, 101, 0, .16);
}

.admin-qa-action-form button:hover {
    background: #ea580c;
}

@media (max-width: 1180px) {
    .admin-qa-card-body {
        grid-template-columns: 1fr;
    }

    .admin-qa-filter-grid {
        grid-template-columns: 1fr 1fr;
    }

    .admin-qa-filter-actions {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .admin-qa-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-qa-total {
        width: 100%;
        text-align: left;
    }

    .admin-qa-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-qa-card-top {
        flex-direction: column;
    }

    .admin-qa-product {
        grid-template-columns: 1fr;
    }

    .admin-qa-icon {
        display: none;
    }

    .admin-qa-people {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .admin-qa-head,
    .admin-qa-card,
    .admin-qa-empty,
    .admin-qa-filter-card {
        border-radius: 14px;
    }

    .admin-qa-head h1 {
        font-size: 24px;
    }

    .admin-qa-stats,
    .admin-qa-filter-grid {
        grid-template-columns: 1fr;
    }

    .admin-qa-filter-actions,
    .admin-qa-filter-actions button,
    .admin-qa-filter-actions a {
        width: 100%;
    }
}

/* =========================================================
   Customer Product Questions Page
   ========================================================= */

.fm-customer-questions-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 24px 0 42px;
    color: #111827;
}

.fm-customer-questions-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.fm-customer-questions-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.fm-customer-questions-head h1 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-customer-questions-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.fm-customer-questions-btn {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-customer-questions-btn:hover {
    background: #ff6500;
}

.fm-customer-questions-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.fm-customer-questions-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.fm-customer-questions-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.fm-customer-questions-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-customer-questions-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px 18px;
    text-align: center;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
}

.fm-customer-questions-empty div {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 20px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 28px;
    font-weight: 1000;
}

.fm-customer-questions-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.fm-customer-questions-empty p {
    margin: 6px 0 16px;
    color: #6b7280;
    font-size: 13px;
}

.fm-customer-questions-empty a {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-customer-questions-list {
    display: grid;
    gap: 10px;
}

.fm-customer-question-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.fm-customer-question-card:hover {
    transform: translateY(-1px);
    border-color: #fed7aa;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.fm-customer-question-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.fm-customer-question-product {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
}

.fm-customer-question-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 1000;
}

.fm-customer-question-product span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.fm-customer-question-product h2 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 1000;
}

.fm-customer-question-product a {
    margin-top: 5px;
    color: #0066c0;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    display: inline-flex;
}

.fm-customer-question-product a:hover {
    color: #ff6500;
}

.fm-customer-question-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.fm-customer-question-status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.fm-customer-question-status.approved {
    background: #dcfce7;
    color: #166534;
}

.fm-customer-question-status.answered {
    background: #dbeafe;
    color: #1d4ed8;
}

.fm-customer-question-status.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.fm-customer-question-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 14px;
    padding-top: 10px;
}

.fm-customer-question-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 9px;
}

.fm-customer-question-meta div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 12px;
    padding: 9px;
}

.fm-customer-question-meta span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 4px;
}

.fm-customer-question-meta strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 1000;
}

.fm-customer-question-box,
.fm-customer-answer-box {
    border: 1px solid #eef2f7;
    background: #fff;
    border-radius: 12px;
    padding: 10px;
}

.fm-customer-answer-box {
    margin-top: 8px;
}

.fm-customer-question-box > span,
.fm-customer-answer-box > span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.fm-customer-answer-box > span {
    background: #dcfce7;
    color: #166534;
}

.fm-customer-question-box p,
.fm-customer-answer-box p {
    margin: 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.45;
}

.fm-customer-answer-box.pending-answer {
    background: #fff7ed;
    border-color: #fed7aa;
}

.fm-customer-answer-box.pending-answer strong {
    display: block;
    color: #c2410c;
    font-size: 13px;
    font-weight: 1000;
}

.fm-customer-answer-box.pending-answer small {
    display: block;
    margin-top: 4px;
    color: #92400e;
    font-size: 12px;
    line-height: 1.4;
}

.fm-customer-question-admin-note {
    margin-top: 8px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 8px 10px;
    display: grid;
    gap: 3px;
}

.fm-customer-question-admin-note strong {
    color: #991b1b;
    font-size: 12px;
    font-weight: 1000;
}

.fm-customer-question-admin-note span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.35;
}

.fm-customer-question-side {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
    height: fit-content;
}

.fm-customer-question-side h3 {
    margin: 0 0 9px;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.fm-customer-question-side div {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 10px;
    padding: 8px 9px;
}

.fm-customer-question-side div + div {
    margin-top: 7px;
}

.fm-customer-question-side span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 3px;
}

.fm-customer-question-side strong {
    display: block;
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-customer-question-side a {
    margin-top: 10px;
    min-height: 34px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fm-customer-question-side a:hover {
    background: #ea580c;
}

@media (max-width: 980px) {
    .fm-customer-question-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .fm-customer-questions-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-customer-questions-btn {
        width: 100%;
    }

    .fm-customer-questions-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-customer-question-top {
        flex-direction: column;
    }

    .fm-customer-question-product {
        grid-template-columns: 1fr;
    }

    .fm-customer-question-icon {
        display: none;
    }

    .fm-customer-question-meta {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .fm-customer-questions-page {
        padding: 18px 0 34px;
    }

    .fm-customer-questions-head,
    .fm-customer-question-card,
    .fm-customer-questions-empty {
        border-radius: 14px;
    }

    .fm-customer-questions-head h1 {
        font-size: 24px;
    }

    .fm-customer-questions-stats {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Seller Product Questions Page
   ========================================================= */

.seller-questions-page {
    align-items: flex-start;
    background: #f8fafc;
}

.seller-questions-main {
    min-width: 0;
}

.seller-questions-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.seller-questions-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.seller-questions-head h1 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.seller-questions-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.seller-questions-count {
    min-width: 105px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    padding: 10px 12px;
    text-align: center;
}

.seller-questions-count strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.seller-questions-count span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.seller-questions-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.seller-questions-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.seller-questions-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.seller-questions-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.seller-questions-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px 18px;
    text-align: center;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
}

.seller-questions-empty div {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 20px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 28px;
    font-weight: 1000;
}

.seller-questions-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.seller-questions-empty p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.seller-questions-list {
    display: grid;
    gap: 10px;
}

.seller-question-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.seller-question-card:hover {
    transform: translateY(-1px);
    border-color: #fed7aa;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.seller-question-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.seller-question-product {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
}

.seller-question-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 1000;
}

.seller-question-product span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.seller-question-product h2 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 1000;
}

.seller-question-product a {
    margin-top: 5px;
    color: #0066c0;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    display: inline-flex;
}

.seller-question-product a:hover {
    color: #ff6500;
}

.seller-question-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.seller-question-status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.seller-question-status.approved {
    background: #dcfce7;
    color: #166534;
}

.seller-question-status.answered {
    background: #dbeafe;
    color: #1d4ed8;
}

.seller-question-status.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.seller-question-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 14px;
    padding-top: 10px;
}

.seller-question-customer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 9px;
}

.seller-question-customer div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 12px;
    padding: 9px;
}

.seller-question-customer span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 4px;
}

.seller-question-customer strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 1000;
}

.seller-question-customer small {
    display: block;
    margin-top: 3px;
    color: #6b7280;
    font-size: 11px;
    word-break: break-all;
}

.seller-question-message,
.seller-question-answer-box {
    border: 1px solid #eef2f7;
    background: #fff;
    border-radius: 12px;
    padding: 10px;
}

.seller-question-answer-box {
    margin-top: 8px;
}

.seller-question-message > span,
.seller-question-answer-box > span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 6px;
}

.seller-question-answer-box > span {
    background: #dcfce7;
    color: #166534;
}

.seller-question-message p,
.seller-question-answer-box p {
    margin: 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.45;
}

.seller-question-answer-box.pending-answer {
    background: #fff7ed;
    border-color: #fed7aa;
}

.seller-question-answer-box.pending-answer strong {
    display: block;
    color: #c2410c;
    font-size: 13px;
    font-weight: 1000;
}

.seller-question-answer-box.pending-answer small {
    display: block;
    margin-top: 4px;
    color: #92400e;
    font-size: 12px;
    line-height: 1.4;
}

.seller-question-admin-note {
    margin-top: 8px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 8px 10px;
    display: grid;
    gap: 3px;
}

.seller-question-admin-note strong {
    color: #991b1b;
    font-size: 12px;
    font-weight: 1000;
}

.seller-question-admin-note span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.35;
}

.seller-question-action-box {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
    height: fit-content;
}

.seller-question-action-box h3 {
    margin: 0 0 9px;
    color: #111827;
    font-size: 15px;
    font-weight: 1000;
}

.seller-question-answer-form {
    display: grid;
    gap: 7px;
    margin: 0;
}

.seller-question-answer-form label {
    color: #111827;
    font-size: 11px;
    font-weight: 1000;
}

.seller-question-answer-form textarea {
    width: 100%;
    min-height: 96px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #111827;
    border-radius: 10px;
    padding: 10px;
    font-size: 12px;
    line-height: 1.45;
    outline: none;
    resize: vertical;
}

.seller-question-answer-form textarea:focus {
    border-color: #ff6500;
    box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.seller-question-answer-form button {
    margin-top: 3px;
    min-height: 34px;
    border: 0;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(255, 101, 0, .16);
}

.seller-question-answer-form button:hover {
    background: #ea580c;
}

.seller-question-rejected-box {
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 10px;
    display: grid;
    gap: 4px;
}

.seller-question-rejected-box strong {
    color: #991b1b;
    font-size: 13px;
    font-weight: 1000;
}

.seller-question-rejected-box span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.4;
}

@media (max-width: 1180px) {
    .seller-question-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .seller-questions-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .seller-questions-count {
        width: 100%;
        text-align: left;
    }

    .seller-questions-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .seller-question-top {
        flex-direction: column;
    }

    .seller-question-product {
        grid-template-columns: 1fr;
    }

    .seller-question-icon {
        display: none;
    }

    .seller-question-customer {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .seller-questions-head,
    .seller-question-card,
    .seller-questions-empty {
        border-radius: 14px;
    }

    .seller-questions-head h1 {
        font-size: 24px;
    }

    .seller-questions-stats {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Customer My Reviews Page - Compact
   ========================================================= */

.fm-my-reviews-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 22px 0 38px;
    color: #111827;
}

.fm-my-reviews-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.fm-my-reviews-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.fm-my-reviews-head h1 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-my-reviews-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.fm-my-reviews-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-my-reviews-actions a {
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-my-reviews-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-my-review-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.fm-my-review-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.fm-my-review-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.fm-my-review-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-review-section-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    margin-bottom: 14px;
}

.fm-review-section-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.fm-review-section-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.fm-review-section-head h2 {
    margin: 0;
    color: #111827;
    font-size: 20px;
    line-height: 1.15;
    font-weight: 1000;
    letter-spacing: -.02em;
}

.fm-review-section-head p {
    margin: 5px 0 0;
    color: #6b7280;
    font-size: 12px;
    line-height: 1.4;
}

.fm-review-empty-box {
    background: #f8fafc;
    border: 1px dashed #d1d5db;
    border-radius: 16px;
    padding: 28px 16px;
    text-align: center;
}

.fm-review-empty-box div {
    width: 56px;
    height: 56px;
    margin: 0 auto 10px;
    border-radius: 18px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 26px;
}

.fm-review-empty-box h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    font-weight: 1000;
}

.fm-review-empty-box p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
}

.fm-reviewable-list,
.fm-submitted-review-list {
    display: grid;
    gap: 10px;
}

.fm-reviewable-card {
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 11px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #fff;
}

.fm-reviewable-main {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
}

.fm-reviewable-icon {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    display: grid;
    place-items: center;
    font-size: 18px;
}

.fm-review-order-pill {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.fm-reviewable-card h3,
.fm-submitted-review-top h3 {
    margin: 0;
    color: #111827;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 1000;
}

.fm-reviewable-card p {
    margin: 4px 0 0;
    color: #6b7280;
    font-size: 12px;
}

.fm-reviewable-card p strong {
    color: #111827;
}

.fm-reviewable-side {
    display: grid;
    gap: 7px;
    justify-items: end;
}

.fm-review-status-pill {
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.fm-review-status-pill.not-reviewed,
.fm-review-status-pill.pending {
    background: #fff7ed;
    color: #c2410c;
}

.fm-review-status-pill.approved {
    background: #dcfce7;
    color: #166534;
}

.fm-review-status-pill.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.fm-reviewable-side a {
    min-height: 32px;
    padding: 0 13px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-reviewable-side a:hover {
    background: #ea580c;
}

.fm-reviewable-side small {
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.fm-submitted-review-card {
    border: 1px solid #eef2f7;
    border-radius: 14px;
    padding: 12px;
    background: #fff;
}

.fm-submitted-review-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    padding-bottom: 9px;
    border-bottom: 1px solid #eef2f7;
}

.fm-submitted-review-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    padding-top: 10px;
}

.fm-review-stars-row {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
}

.fm-review-stars-row span {
    color: #f59e0b;
    letter-spacing: -1px;
    font-size: 15px;
}

.fm-review-stars-row strong {
    color: #111827;
    font-size: 12px;
    font-weight: 1000;
}

.fm-submitted-review-content h4 {
    margin: 0;
    color: #111827;
    font-size: 14px;
    font-weight: 1000;
}

.fm-submitted-review-content p {
    margin: 6px 0 0;
    color: #374151;
    font-size: 13px;
    line-height: 1.45;
}

.fm-submitted-review-content small {
    display: block;
    margin-top: 8px;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.fm-review-admin-note {
    margin-top: 8px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 12px;
    padding: 8px 10px;
    display: grid;
    gap: 3px;
}

.fm-review-admin-note strong {
    color: #991b1b;
    font-size: 12px;
    font-weight: 1000;
}

.fm-review-admin-note span {
    color: #7f1d1d;
    font-size: 12px;
    line-height: 1.35;
}

.fm-user-review-image {
    width: 92px;
    height: 92px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #f8fafc;
    overflow: hidden;
    display: grid;
    place-items: center;
}

.fm-user-review-image a {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
}

.fm-user-review-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 768px) {
    .fm-my-reviews-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-my-reviews-actions,
    .fm-my-reviews-actions a {
        width: 100%;
    }

    .fm-my-review-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-reviewable-card,
    .fm-submitted-review-top {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-reviewable-side {
        justify-items: start;
    }

    .fm-submitted-review-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .fm-my-reviews-page {
        padding: 18px 0 34px;
    }

    .fm-my-reviews-head,
    .fm-review-section-card {
        border-radius: 14px;
    }

    .fm-my-reviews-head h1 {
        font-size: 24px;
    }

    .fm-my-review-stats {
        grid-template-columns: 1fr;
    }

    .fm-reviewable-main {
        grid-template-columns: 1fr;
    }

    .fm-reviewable-icon {
        display: none;
    }

    .fm-reviewable-side,
    .fm-reviewable-side a {
        width: 100%;
    }
}

/* =========================================================
   Customer Returns / Refunds Page
   ========================================================= */

.fm-returns-page {
    background: #f8fafc;
    min-height: 70vh;
    padding: 22px 0 38px;
    color: #111827;
}

.fm-returns-head {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 16px 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
    margin-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.fm-returns-head span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #fff7ed;
    color: #ff6500;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 6px;
}

.fm-returns-head h1 {
    margin: 0;
    color: #111827;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.03em;
}

.fm-returns-head p {
    margin: 6px 0 0;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}

.fm-returns-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-returns-actions a {
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff;
    color: #111827;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-returns-actions a:hover {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #ff6500;
}

.fm-returns-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.fm-returns-stats div {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .035);
}

.fm-returns-stats strong {
    display: block;
    color: #111827;
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.fm-returns-stats span {
    display: block;
    margin-top: 5px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-returns-empty {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 34px 18px;
    text-align: center;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045);
}

.fm-returns-empty div {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 20px;
    background: #fff7ed;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 28px;
}

.fm-returns-empty h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    font-weight: 1000;
}

.fm-returns-empty p {
    margin: 6px 0 16px;
    color: #6b7280;
    font-size: 13px;
}

.fm-returns-empty a {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fm-returns-list {
    display: grid;
    gap: 10px;
}

.fm-return-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.fm-return-card:hover {
    transform: translateY(-1px);
    border-color: #fed7aa;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.fm-return-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef2f7;
}

.fm-return-product {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
}

.fm-return-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #ff6500;
    display: grid;
    place-items: center;
    font-size: 20px;
}

.fm-return-number {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    color: #6b7280;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 5px;
}

.fm-return-product h2 {
    margin: 0;
    color: #111827;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 1000;
}

.fm-return-meta-inline {
    margin-top: 5px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.fm-return-meta-inline span {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
}

.fm-return-meta-inline strong {
    color: #111827;
}

.fm-return-status {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.fm-return-status.pending {
    background: #fff7ed;
    color: #c2410c;
}

.fm-return-status.approved {
    background: #dbeafe;
    color: #1d4ed8;
}

.fm-return-status.completed {
    background: #dcfce7;
    color: #166534;
}

.fm-return-status.rejected {
    background: #fee2e2;
    color: #991b1b;
}

.fm-return-body {
    padding-top: 10px;
}

.fm-return-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.fm-return-info-grid div {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 12px;
    padding: 9px;
}

.fm-return-info-grid span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 1000;
    margin-bottom: 4px;
}

.fm-return-info-grid strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 1000;
}

.fm-return-info-grid strong.pending {
    color: #c2410c;
}

.fm-return-info-grid strong.completed {
    color: #166534;
}

.fm-return-info-grid strong.rejected {
    color: #991b1b;
}

.fm-return-footer {
    margin-top: 10px;
    border-top: 1px solid #eef2f7;
    padding-top: 10px;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
}

.fm-return-footer span {
    display: block;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.fm-return-footer strong {
    display: block;
    margin-top: 3px;
    color: #111827;
    font-size: 13px;
    font-weight: 1000;
}

.fm-return-footer a {
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #ff6500;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.fm-return-footer a:hover {
    background: #ea580c;
}

@media (max-width: 900px) {
    .fm-returns-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-returns-actions,
    .fm-returns-actions a {
        width: 100%;
    }

    .fm-returns-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-return-top,
    .fm-return-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .fm-return-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .fm-returns-page {
        padding: 18px 0 34px;
    }

    .fm-returns-head,
    .fm-return-card,
    .fm-returns-empty {
        border-radius: 14px;
    }

    .fm-returns-head h1 {
        font-size: 24px;
    }

    .fm-returns-stats,
    .fm-return-info-grid {
        grid-template-columns: 1fr;
    }

    .fm-return-product {
        grid-template-columns: 1fr;
    }

    .fm-return-icon {
        display: none;
    }

    .fm-return-footer a {
        width: 100%;
    }
}

/* =========================================================
   Seller Sidebar - Fixed Compact Layout
   ========================================================= */

/* IMPORTANT: fixes overlap between sidebar and content */
.dashboard-grid {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 18px;
    align-items: flex-start;
}

/* Seller Sidebar */
.seller-sidebar-new {
    width: 100%;
    position: sticky;
    top: 92px;
    align-self: flex-start;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    z-index: 2;
}

.seller-sidebar-new::-webkit-scrollbar {
    width: 5px;
}

.seller-sidebar-new::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 999px;
}

/* Profile */
.seller-sidebar-profile {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border-radius: 15px;
    background: #f8fafc;
    border: 1px solid #eef2f7;
    margin-bottom: 12px;
}

.seller-sidebar-avatar {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #111827;
    color: #ffffff;
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 1000;
}

.seller-sidebar-profile strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 1000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.seller-sidebar-profile span {
    display: block;
    margin-top: 3px;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

/* Menu */
.seller-sidebar-menu {
    display: grid;
    gap: 10px;
}

.seller-sidebar-group {
    display: grid;
    gap: 4px;
}

.seller-sidebar-label {
    display: block;
    padding: 0 8px 3px;
    color: #9ca3af;
    font-size: 9px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .08em;
}

/* Menu links */
.seller-sidebar-menu a {
    min-height: 38px;
    border-radius: 12px;
    padding: 0 9px;
    color: #374151;
    text-decoration: none;
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.seller-sidebar-menu a:hover {
    background: #fff7ed;
    color: #ff6500;
    transform: translateX(2px);
}

.seller-sidebar-menu a.active {
    background: #ff6500;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(255, 101, 0, .18);
}

.seller-sidebar-icon {
    width: 26px;
    height: 26px;
    border-radius: 9px;
    background: #f3f4f6;
    display: grid;
    place-items: center;
    font-size: 13px;
}

.seller-sidebar-menu a:hover .seller-sidebar-icon {
    background: #ffffff;
}

.seller-sidebar-menu a.active .seller-sidebar-icon {
    background: rgba(255, 255, 255, .22);
}

.seller-sidebar-menu a span:last-child {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Prevent content overflow */
.dashboard-grid > div,
.dashboard-grid > main,
.seller-questions-main,
.seller-reviews-main,
.seller-products-main,
.seller-dashboard-main {
    min-width: 0;
}

/* =========================================================
   Old sidebar fallback - remove large old styling conflicts
   ========================================================= */

.sidebar {
    width: 100%;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
}

.sidebar a {
    min-height: 38px;
    border-radius: 12px;
    padding: 0 12px;
    color: #374151;
    text-decoration: none;
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
}

.sidebar a:hover {
    background: #fff7ed;
    color: #ff6500;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1100px) {
    .dashboard-grid {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 14px;
    }

    .seller-sidebar-menu a {
        font-size: 11px;
    }
}

@media (max-width: 900px) {
    .dashboard-grid {
        grid-template-columns: 1fr;
    }

    .seller-sidebar-new {
        position: static;
        width: 100%;
        max-height: none;
        border-radius: 16px;
        margin-bottom: 14px;
    }

    .seller-sidebar-profile {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .seller-sidebar-group {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
    }

    .seller-sidebar-label {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .seller-sidebar-new {
        padding: 10px;
        border-radius: 15px;
    }

    .seller-sidebar-group {
        grid-template-columns: 1fr;
    }

    .seller-sidebar-menu a {
        min-height: 36px;
        font-size: 12px;
    }
}

/* =========================================================
   Admin Sidebar - Compact Marketplace Admin Design
   ========================================================= */

/* Common layout fix for admin/seller dashboard pages */
.dashboard-grid {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 18px;
    align-items: flex-start;
}

/* Prevent right content from overflowing/overlapping */
.dashboard-grid > div,
.dashboard-grid > main,
.admin-reviews-main,
.admin-qa-main,
.admin-dashboard-main,
.admin-products-main,
.admin-orders-main,
.admin-users-main,
.admin-settings-main {
    min-width: 0;
}

/* Admin Sidebar */
.admin-sidebar-new {
    width: 100%;
    position: sticky;
    top: 92px;
    align-self: flex-start;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    z-index: 2;
}

.admin-sidebar-new::-webkit-scrollbar {
    width: 5px;
}

.admin-sidebar-new::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 999px;
}

.admin-sidebar-profile {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border-radius: 15px;
    background:
        radial-gradient(circle at 90% 14%, rgba(255, 101, 0, .10), transparent 28%),
        #f8fafc;
    border: 1px solid #eef2f7;
    margin-bottom: 12px;
}

.admin-sidebar-avatar {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #111827;
    color: #ffffff;
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 1000;
}

.admin-sidebar-profile strong {
    display: block;
    color: #111827;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 1000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.admin-sidebar-profile span {
    display: block;
    margin-top: 3px;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
}

.admin-sidebar-menu {
    display: grid;
    gap: 10px;
}

.admin-sidebar-group {
    display: grid;
    gap: 4px;
}

.admin-sidebar-label {
    display: block;
    padding: 0 8px 3px;
    color: #9ca3af;
    font-size: 9px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.admin-sidebar-menu a {
    min-height: 38px;
    border-radius: 12px;
    padding: 0 9px;
    color: #374151;
    text-decoration: none;
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.admin-sidebar-menu a:hover {
    background: #fff7ed;
    color: #ff6500;
    transform: translateX(2px);
}

.admin-sidebar-menu a.active {
    background: #ff6500;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(255, 101, 0, .18);
}

.admin-sidebar-icon {
    width: 26px;
    height: 26px;
    border-radius: 9px;
    background: #f3f4f6;
    display: grid;
    place-items: center;
    font-size: 13px;
}

.admin-sidebar-menu a:hover .admin-sidebar-icon {
    background: #ffffff;
}

.admin-sidebar-menu a.active .admin-sidebar-icon {
    background: rgba(255, 255, 255, .22);
}

.admin-sidebar-menu a span:last-child {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Old sidebar fallback if some admin page still uses .sidebar */
.sidebar {
    width: 100%;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
}

.sidebar a {
    min-height: 38px;
    border-radius: 12px;
    padding: 0 12px;
    color: #374151;
    text-decoration: none;
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: 900;
}

.sidebar a:hover {
    background: #fff7ed;
    color: #ff6500;
}

/* Responsive */
@media (max-width: 1100px) {
    .dashboard-grid {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 14px;
    }

    .admin-sidebar-menu a {
        font-size: 11px;
    }
}

@media (max-width: 900px) {
    .dashboard-grid {
        grid-template-columns: 1fr;
    }

    .admin-sidebar-new {
        position: static;
        width: 100%;
        max-height: none;
        border-radius: 16px;
        margin-bottom: 14px;
    }

    .admin-sidebar-profile {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .admin-sidebar-group {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
    }

    .admin-sidebar-label {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .admin-sidebar-new {
        padding: 10px;
        border-radius: 15px;
    }

    .admin-sidebar-group {
        grid-template-columns: 1fr;
    }

    .admin-sidebar-menu a {
        min-height: 36px;
        font-size: 12px;
    }
}