/*
|--------------------------------------------------------------------------
| ShopCore Main Store Application
|--------------------------------------------------------------------------
*/

:root{
    --sc-app-white:#ffffff;
    --sc-app-page:#ffffff;
    --sc-app-text:#17233b;
    --sc-app-orange:#ff5a00;
    --sc-app-border:#e6ebf1;
    --sc-app-container:1180px;
}

/*
|--------------------------------------------------------------------------
| Document
|--------------------------------------------------------------------------
*/

html{
    width:100%;
    min-width:0;
    min-height:100%;
    margin:0;
    padding:0;
    scroll-behavior:smooth;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}

body{
    width:100%;
    min-width:0;
    min-height:100vh;
    min-height:100dvh;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    overflow-x:hidden;
    background:var(--sc-app-page);
    color:var(--sc-app-text);
    font-family:inherit;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

img,
svg,
video,
canvas{
    max-width:100%;
}

img{
    height:auto;
}

button,
input,
select,
textarea{
    font:inherit;
}

a{
    -webkit-tap-highlight-color:transparent;
}

/*
|--------------------------------------------------------------------------
| Main Store Content
|--------------------------------------------------------------------------
*/

.main-store-content{
    position:relative;
    width:100%;
    min-width:0;
    flex:1 0 auto;
}

/*
|--------------------------------------------------------------------------
| Reusable Site Container
|--------------------------------------------------------------------------
*/

.main-store-container{
    width:min(calc(100% - 40px),var(--sc-app-container));
    margin-inline:auto;
}

/*
|--------------------------------------------------------------------------
| Footer Position
|--------------------------------------------------------------------------
*/

.sc-footer{
    width:100%;
    flex:0 0 auto;
    margin-top:auto;
}

/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width:900px){

    .main-store-container{
        width:calc(100% - 32px);
    }
}

@media (max-width:620px){

    html{
        scroll-padding-bottom:96px;
    }

    body{
        min-height:100svh;
        min-height:100dvh;
    }

    .main-store-content{
        flex:1 0 auto;
        padding-bottom:calc(94px + env(safe-area-inset-bottom));
    }

    .main-store-container{
        width:calc(100% - 24px);
    }
}

@media (max-width:420px){

    .main-store-content{
        padding-bottom:calc(90px + env(safe-area-inset-bottom));
    }

    .main-store-container{
        width:calc(100% - 20px);
    }
}

@media (max-width:350px){

    .main-store-container{
        width:calc(100% - 16px);
    }
}