/* CODSHIPX_AI_R36_R33_FINAL_REVIEW_COMPACT_POLISH */

/* ---------------------------------------------------------
   Review shell
   - smaller
   - centered
   - opaque enough to kill background grid bleed
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-final-review{
    position:relative!important;
    z-index:10!important;

    isolation:isolate!important;

    width:min(
        1460px,
        calc(100vw - 96px)
    )!important;

    height:min(
        680px,
        calc(100vh - 150px)
    )!important;

    min-height:520px!important;
    max-height:680px!important;

    margin:auto!important;

    grid-template-rows:
        auto
        minmax(0,1fr)
        auto!important;

    overflow:hidden!important;

    border:
        1px solid
        rgba(139,211,31,.25)!important;

    border-radius:24px!important;

    background:
        linear-gradient(
            180deg,
            #031108 0%,
            #020d06 100%
        )!important;

    box-shadow:
        0 24px 70px
        rgba(0,0,0,.34)!important;
}


/* ---------------------------------------------------------
   Header
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-final-review > header{
    min-height:0!important;

    padding:
        24px 40px
        20px!important;

    gap:22px!important;

    background:
        linear-gradient(
            180deg,
            rgba(4,24,11,.98),
            rgba(3,17,8,.98)
        )!important;

    border-bottom:
        1px solid
        rgba(139,211,31,.13)!important;

    box-sizing:border-box!important;
}


body .codi-mandatory-gate
.codi-r50-final-review > header h1{
    max-width:820px!important;

    margin:
        3px 0
        8px!important;

    font-size:
        clamp(
            38px,
            3.7vw,
            54px
        )!important;

    line-height:.96!important;

    letter-spacing:-.045em!important;
}


body .codi-mandatory-gate
.codi-r50-final-review > header p{
    max-width:820px!important;

    margin:0!important;

    font-size:11.5px!important;
    line-height:1.45!important;
}


/* ---------------------------------------------------------
   Scroll body
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-review-body{
    min-height:0!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;

    padding:
        22px 38px
        28px!important;

    background:
        #020f07!important;

    scrollbar-width:thin!important;

    box-sizing:border-box!important;
}


body .codi-mandatory-gate
.codi-r50-review-body > section{
    margin:
        0 0
        24px!important;
}


body .codi-mandatory-gate
.codi-r50-review-heading{
    margin:
        0 0
        12px!important;

    font-size:9.5px!important;
    line-height:1!important;

    letter-spacing:.045em!important;
}


/* ---------------------------------------------------------
   Clean ordered review cards
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-review-grid{
    display:grid!important;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        )!important;

    gap:
        12px 16px!important;
}


body .codi-mandatory-gate
.codi-r50-review-grid > article{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;

    min-width:0!important;
    min-height:82px!important;

    padding:
        13px 15px!important;

    border:
        1px solid
        rgba(135,205,36,.17)!important;

    border-left:
        3px solid
        #8fe217!important;

    border-radius:12px!important;

    background:
        linear-gradient(
            135deg,
            rgba(7,26,13,.98),
            rgba(4,19,10,.98)
        )!important;

    box-sizing:border-box!important;
}


body .codi-mandatory-gate
.codi-r50-review-grid > article small{
    display:block!important;

    margin:
        0 0
        7px!important;

    color:#94e51c!important;

    font-size:9px!important;
    font-weight:900!important;

    line-height:1!important;
}


body .codi-mandatory-gate
.codi-r50-review-grid > article strong{
    display:block!important;

    margin:0!important;

    color:#f0f4ee!important;

    font-size:12.5px!important;
    font-weight:720!important;

    line-height:1.42!important;

    white-space:normal!important;
    overflow-wrap:anywhere!important;
}


/* ---------------------------------------------------------
   Product cards
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-review-products{
    display:grid!important;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        )!important;

    gap:
        10px 16px!important;
}


body .codi-mandatory-gate
.codi-r50-review-products > article{
    min-width:0!important;

    padding:
        12px 14px!important;

    border:
        1px solid
        rgba(135,205,36,.15)!important;

    border-radius:11px!important;

    background:
        rgba(5,22,11,.98)!important;
}


/* ---------------------------------------------------------
   Footer
   --------------------------------------------------------- */

body .codi-mandatory-gate
.codi-r50-final-review > footer{
    min-height:76px!important;

    padding:
        12px 30px!important;

    gap:12px!important;

    background:
        #020c06!important;

    border-top:
        1px solid
        rgba(139,211,31,.16)!important;

    box-shadow:
        0 -10px 26px
        rgba(0,0,0,.16)!important;
}


body .codi-mandatory-gate
.codi-r50-back{
    min-height:46px!important;

    padding:
        0 20px!important;

    border-radius:12px!important;

    font-size:12px!important;
}


body .codi-mandatory-gate
.codi-r50-setup{
    min-width:222px!important;
    min-height:48px!important;

    padding:
        0 22px!important;

    border:
        1px solid
        rgba(126,199,25,.7)!important;

    border-radius:12px!important;

    background:
        linear-gradient(
            135deg,
            #b6f934 0%,
            #8ee013 100%
        )!important;

    color:#143300!important;

    font-size:12px!important;
    font-weight:950!important;

    box-shadow:
        0 10px 24px
        rgba(98,161,15,.22)!important;
}


/* ---------------------------------------------------------
   Remove visual leak from global background/grid
   --------------------------------------------------------- */

body .codi-mandatory-gate:has(.codi-r50-final-review)
.codi-mandatory-grid,
body .codi-mandatory-gate:has(.codi-r50-final-review)
.codi-mandatory-stream,
body .codi-mandatory-gate:has(.codi-r50-final-review)
.codi-mandatory-node{
    opacity:.18!important;
}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media(max-width:760px){

    body .codi-mandatory-gate
    .codi-r50-final-review{
        width:
            calc(100vw - 16px)!important;

        height:
            calc(100vh - 16px)!important;

        max-height:none!important;
        min-height:0!important;

        border-radius:18px!important;
    }

    body .codi-mandatory-gate
    .codi-r50-final-review > header{
        padding:
            16px 15px
            14px!important;
    }

    body .codi-mandatory-gate
    .codi-r50-final-review > header h1{
        font-size:30px!important;
    }

    body .codi-mandatory-gate
    .codi-r50-review-body{
        padding:
            16px 14px
            22px!important;
    }

    body .codi-mandatory-gate
    .codi-r50-review-grid,
    body .codi-mandatory-gate
    .codi-r50-review-products{
        grid-template-columns:1fr!important;
    }

    body .codi-mandatory-gate
    .codi-r50-review-grid > article{
        min-height:0!important;
    }

    body .codi-mandatory-gate
    .codi-r50-final-review > footer{
        padding:11px!important;

        flex-direction:column-reverse!important;

        align-items:stretch!important;
    }

    body .codi-mandatory-gate
    .codi-r50-back,
    body .codi-mandatory-gate
    .codi-r50-setup{
        width:100%!important;
        min-width:0!important;
    }
}
