/*=========================================
                REVIEW SECTION
=========================================*/

.review-section{

margin-top:80px;

padding:50px;

background:#fff;

border-radius:24px;

box-shadow:0 15px 40px rgba(0,0,0,.06);

}

.review-header{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:35px;

}

.review-header h2{

font-size:34px;

font-weight:700;

color:#1F2937;

margin-bottom:8px;

}

.review-header p{

color:#6B7280;

}

/*=========================================
            SUMMARY
=========================================*/

.review-wrapper{

display:grid;

grid-template-columns:320px 1fr;

gap:35px;

margin-bottom:50px;

}

.review-summary{

padding:35px;

border-radius:22px;

background:#F9FAFB;

text-align:center;

border:1px solid #E5E7EB;

}

.review-summary h1{

font-size:70px;

font-weight:800;

color:#16A34A;

margin-bottom:10px;

}

.review-summary .stars{

font-size:28px;

color:#FBBF24;

letter-spacing:4px;

margin-bottom:15px;

}

.review-summary p{

color:#6B7280;

font-size:15px;

}

/*=========================================
            FORM
=========================================*/

.review-form-card{

padding:35px;

border-radius:22px;

background:#F9FAFB;

border:1px solid #E5E7EB;

}

.review-form-card h3{

font-size:26px;

margin-bottom:25px;

color:#111827;

}

.rating-select,

.review-comment{

margin-bottom:22px;

}

.rating-select label,

.review-comment label{

display:block;

font-weight:700;

margin-bottom:10px;

color:#374151;

}

.rating-select select,

.review-comment textarea{

width:100%;

padding:16px;

border:1px solid #D1D5DB;

border-radius:14px;

font-size:15px;

transition:.3s;

outline:none;

background:#fff;

}

.rating-select select:focus,

.review-comment textarea:focus{

border-color:#16A34A;

box-shadow:0 0 0 4px rgba(22,163,74,.12);

}

.review-comment textarea{

resize:vertical;

min-height:150px;

}

.submit-review-btn{

display:inline-flex;

align-items:center;

gap:10px;

padding:15px 32px;

background:#16A34A;

color:#fff;

border:none;

border-radius:14px;

font-size:16px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

.submit-review-btn:hover{

background:#15803D;

transform:translateY(-2px);

box-shadow:0 12px 24px rgba(22,163,74,.25);

}

/*=========================================
            REVIEW LIST
=========================================*/

.reviews-list{

display:flex;

flex-direction:column;

gap:25px;

margin-top:20px;

}

.review-card{

background:#fff;

border:1px solid #E5E7EB;

border-radius:20px;

padding:28px;

transition:.35s;

box-shadow:0 10px 30px rgba(15,23,42,.05);

}

.review-card:hover{

transform:translateY(-4px);

box-shadow:0 18px 40px rgba(15,23,42,.08);

}

/*=========================================
            TOP
=========================================*/

.review-top{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:18px;

}

.review-user{

display:flex;

align-items:center;

gap:15px;

}

.review-avatar{

width:55px;

height:55px;

border-radius:50%;

background:#16A34A;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

font-size:22px;

font-weight:700;

text-transform:uppercase;

}

.review-name{

font-size:18px;

font-weight:700;

color:#111827;

margin-bottom:5px;

}

.review-date{

font-size:14px;

color:#6B7280;

}

/*=========================================
            STARS
=========================================*/

.review-stars{

margin:12px 0;

font-size:18px;

color:#FBBF24;

letter-spacing:3px;

}

/*=========================================
        VERIFIED BADGE
=========================================*/

.verified-badge{

display:inline-flex;

align-items:center;

gap:8px;

padding:6px 14px;

background:#ECFDF5;

color:#15803D;

border-radius:30px;

font-size:13px;

font-weight:700;

margin-bottom:15px;

}

/*=========================================
            COMMENT
=========================================*/

.review-card p{

line-height:1.8;

font-size:15px;

color:#374151;

}

/*=========================================
            ACTIONS
=========================================*/

.review-actions{

display:flex;

gap:12px;

margin-top:20px;

}

.review-edit{

padding:9px 18px;

border:none;

background:#2563EB;

color:#fff;

border-radius:10px;

cursor:pointer;

font-weight:600;

transition:.3s;

}

.review-edit:hover{

background:#1D4ED8;

}

.review-delete{

padding:9px 18px;

border:none;

background:#EF4444;

color:#fff;

border-radius:10px;

cursor:pointer;

font-weight:600;

transition:.3s;

}

.review-delete:hover{

background:#DC2626;

}

/*=========================================
            EMPTY STATE
=========================================*/

.no-review{

padding:60px;

border:2px dashed #CBD5E1;

border-radius:20px;

text-align:center;

font-size:18px;

color:#6B7280;

background:#F9FAFB;

}

/*=========================================
            MOBILE
=========================================*/

@media(max-width:900px){

.review-wrapper{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.review-section{

padding:25px;

}

.review-header{

flex-direction:column;

align-items:flex-start;

gap:15px;

}

.review-top{

flex-direction:column;

align-items:flex-start;

gap:12px;

}

.review-user{

width:100%;

}

.review-actions{

flex-wrap:wrap;

}

.review-edit,

.review-delete{

width:100%;

}

}

@media(max-width:480px){

.review-summary h1{

font-size:52px;

}

.review-header h2{

font-size:28px;

}

.review-form-card{

padding:22px;

}

.review-card{

padding:20px;

}

}

.review-actions{

margin-top:20px;

display:flex;

justify-content:flex-end;

}

.review-delete{

padding:10px 18px;

background:#EF4444;

color:#fff;

border:none;

border-radius:10px;

cursor:pointer;

font-weight:600;

display:flex;

align-items:center;

gap:8px;

transition:.3s;

}

.review-delete:hover{

background:#DC2626;

transform:translateY(-2px);

}

/*==============================
Inventory
==============================*/

.stock-status{

margin:22px 0;

display:flex;

align-items:center;

gap:12px;

flex-wrap:wrap;

}

.stock-status span{

display:inline-flex;

align-items:center;

gap:8px;

padding:10px 16px;

border-radius:30px;

font-size:14px;

font-weight:600;

}

.stock-status small{

font-size:13px;

color:#777;

}

.in-stock{

background:#e8f7ee;

color:#198754;

}

.low-stock{

background:#fff4e5;

color:#ff8c00;

}

.out-stock{

background:#fdecec;

color:#dc3545;

}

.out-stock-btn{

background:#adb5bd!important;

cursor:not-allowed;

border:none;

}

.out-stock-btn:hover{

transform:none;

}

@media(max-width:768px){

.stock-status{

justify-content:center;

text-align:center;

}

.stock-status span{

font-size:13px;

padding:8px 14px;

}

.stock-status small{

width:100%;

}

}
/* ===================================
   Buy Now Button
=================================== */

.btn-buy-now{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    width:100%;

    min-width:180px;

    height:54px;

    background:linear-gradient(135deg,#28a745,#20c997);

    color:#fff;

    border:none;

    border-radius:12px;

    font-size:15px;

    font-weight:700;

    cursor:pointer;

    transition:.3s ease;

    text-decoration:none;

    flex:1;

}

.btn-buy-now:hover{

    background:linear-gradient(135deg,#218838,#1dbb90);

    transform:translateY(-2px);

    box-shadow:0 10px 20px rgba(40,167,69,.25);

}

.btn-buy-now:active{

    transform:scale(.98);

}

.btn-buy-now i{

    font-size:20px;

}

.btn-buy-now.out-stock-btn{

    background:#adb5bd !important;

    cursor:not-allowed;

    box-shadow:none;

}

.btn-buy-now.out-stock-btn:hover{

    transform:none;

}

/* ==================================================
        PRODUCT DESCRIPTION
================================================== */

.product-description{

    margin:24px 0;

    padding:22px;

    border:1px solid #E5ECE7;

    border-radius:16px;

    background:
        linear-gradient(
            145deg,
            #FBFDFB,
            #F6FAF7
        );

}


.description-heading{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:16px;

}


.description-heading > i{

    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    border-radius:10px;

    background:#EAF6EC;

    color:#2E7D32;

    font-size:19px;

}


.description-heading span{

    display:block;

    margin-bottom:3px;

    color:#2E7D32;

    font-size:9px;

    font-weight:800;

    letter-spacing:1px;

}


.description-heading h3{

    margin:0;

    color:#17251D;

    font-size:17px;

    font-weight:750;

}


/* ================================================
        RICH TEXT DESCRIPTION
================================================ */

.description-content{

    color:#52645A;

    font-size:14px;

    line-height:1.8;

}


.description-content p{

    margin:0 0 12px;

}


.description-content p:last-child{

    margin-bottom:0;

}


/* Lists */

.description-content ul{

    margin:10px 0 15px;

    padding-left:22px;

    list-style:disc;

}


.description-content ol{

    margin:10px 0 15px;

    padding-left:22px;

    list-style:decimal;

}


.description-content li{

    margin-bottom:6px;

    padding-left:4px;

}


.description-content li::marker{

    color:#2E7D32;

}


/* Headings from editor */

.description-content h1,
.description-content h2,
.description-content h3,
.description-content h4{

    margin:18px 0 8px;

    color:#17251D;

    line-height:1.35;

}


.description-content strong{

    color:#26382C;

    font-weight:700;

}


.description-content em{

    color:#52645A;

}


/* Links */

.description-content a{

    color:#2E7D32;

    text-decoration:underline;

}


/* ================================================
        MOBILE
================================================ */

@media(max-width:600px){

    .product-description{

        margin:18px 0;

        padding:16px;

        border-radius:14px;

    }


    .description-heading{

        margin-bottom:13px;

    }


    .description-heading > i{

        width:34px;
        height:34px;

        font-size:17px;

    }


    .description-heading h3{

        font-size:15px;

    }


    .description-content{

        font-size:12px;

        line-height:1.75;

    }


    .description-content ul,
    .description-content ol{

        padding-left:20px;

    }

}