/* ==========================================================
   POSITION
========================================================== */

.pz-relative{
    position:relative;
}

.pz-absolute{
    position:absolute;
}

.pz-fixed{
    position:fixed;
}

.pz-sticky{
    position:sticky;
}

/* ==========================================================
   DISPLAY
========================================================== */

.pz-hidden{
    display:none !important;
}

.pz-block{
    display:block;
}

.pz-inline{
    display:inline;
}

.pz-inline-block{
    display:inline-block;
}

/* ==========================================================
   FLEX HELPERS
========================================================== */

.pz-flex{
    display:flex;
}

.pz-flex-column{
    display:flex;
    flex-direction:column;
}

.pz-flex-wrap{
    flex-wrap:wrap;
}

.pz-flex-center{
    display:flex;
    justify-content:center;
    align-items:center;
}

.pz-flex-between{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.pz-items-center{
    align-items:center;
}

.pz-items-start{
    align-items:flex-start;
}

.pz-items-end{
    align-items:flex-end;
}

.pz-justify-center{
    justify-content:center;
}

.pz-justify-between{
    justify-content:space-between;
}

.pz-justify-start{
    justify-content:flex-start;
}

.pz-justify-end{
    justify-content:flex-end;
}

/* ==========================================================
   WIDTH
========================================================== */

.pz-w-100{
    width:100%;
}

.pz-h-100{
    height:100%;
}

/* ==========================================================
   OVERFLOW
========================================================== */

.pz-overflow-hidden{
    overflow:hidden;
}

.pz-overflow-auto{
    overflow:auto;
}

/* ==========================================================
   TEXT
========================================================== */

.pz-text-center{
    text-align:center;
}

.pz-text-left{
    text-align:left;
}

.pz-text-right{
    text-align:right;
}

/* ==========================================================
   BORDER RADIUS
========================================================== */

.pz-rounded-sm{
    border-radius:var(--pz-radius-sm);
}

.pz-rounded{
    border-radius:var(--pz-radius-md);
}

.pz-rounded-lg{
    border-radius:var(--pz-radius-lg);
}

.pz-rounded-xl{
    border-radius:var(--pz-radius-xl);
}

.pz-rounded-pill{
    border-radius:var(--pz-radius-pill);
}

/* ==========================================================
   SHADOWS
========================================================== */

.pz-shadow-sm{
    box-shadow:var(--pz-shadow-sm);
}

.pz-shadow{
    box-shadow:var(--pz-shadow);
}

.pz-shadow-lg{
    box-shadow:var(--pz-shadow-lg);
}

/* ==========================================================
   GLASS
========================================================== */

.pz-glass{
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

/* ==========================================================
   OPACITY
========================================================== */

.pz-opacity-0{
    opacity:0;
}

.pz-opacity-50{
    opacity:.5;
}

.pz-opacity-75{
    opacity:.75;
}

.pz-opacity-100{
    opacity:1;
}

/* ==========================================================
   CURSOR
========================================================== */

.pz-pointer{
    cursor:pointer;
}

/* ==========================================================
   USER SELECT
========================================================== */

.pz-no-select{

    user-select:none;

    -webkit-user-select:none;

}

/* ==========================================================
   TRANSITIONS
========================================================== */

.pz-transition{
    transition:var(--pz-transition);
}