@import 'tokens.css';

/* HEIGHT */
.h--100 {
    height: 100%;
}
.h--6 {
    height: var(--s-6x);
}
.h--10 {
    height: var(--s-10x);
}
.h--11 {
    height: var(--s-11x);
}
.h--12 {
    height: var(--s-12x);
}

/* WIDTH */
.w--10 {
    width: var(--s-10x);
}
.w--11 {
    width: var(--s-11x);
}
.w--12 {
    width: var(--s-12x);
}
.w--100 {
    width: 100%;
}
.square--5 {
    height: var(--s-5x);
    width: var(--s-5x);
}
.square--6 {
    height: var(--s-6x);
    width: var(--s-6x);
}
.square--8 {
    height: var(--s-8x);
    width: var(--s-8x);
}
.s--xs {
    height: var(--s-8x);
    -webkit-border-radius: var(--s-2x);
    -moz-border-radius: var(--s-2x);
    -ms-border-radius: var(--s-2x);
    -o-border-radius: var(--s-2x);
    border-radius: var(--s-2x);

    &::after {
        line-height: var(--s-8x);
    }
}
.s--sm {
    height: var(--s-10x);
    -webkit-border-radius: var(--s-2x);
    -moz-border-radius: var(--s-2x);
    -ms-border-radius: var(--s-2x);
    -o-border-radius: var(--s-2x);
    border-radius: var(--s-2x);
}
.s--md {
    height: var(--s-12x);
    -webkit-border-radius: var(--s-3x);
    -moz-border-radius: var(--s-3x);
    -ms-border-radius: var(--s-3x);
    -o-border-radius: var(--s-3x);
    border-radius: var(--s-3x);
}
.s--lg {
    height: var(--s-14x);
    -webkit-border-radius: var(--s-4x);
    -moz-border-radius: var(--s-4x);
    -ms-border-radius: var(--s-4x);
    -o-border-radius: var(--s-4x);
    border-radius: var(--s-4x);
}

/* PADDING */
.p--1 {
    padding: var(--s-x);
}
.p--2 {
    padding: var(--s-2x);
}
.p--3 {
    padding: var(--s-3x);
}
.p--4 {
    padding: var(--s-4x);
}
.p--0_1 {
    padding: 0 var(--s-x);
}
.p--0_2 {
    padding: 0 var(--s-2x);
}
.p--0_2_0_3 {
    padding: 0 var(--s-2x) 0 var(--s-3x);
}
.p--0_3 {
    padding: 0 var(--s-3x);
}
.p--2 {
    padding: var(--s-2x);
}
.p--2_1 {
    padding: var(--s-2x) var(--s-x);
}
.p--2_3 {
    padding: var(--s-2x) var(--s-3x);
}

/* MARGIN */
.m-b--3 {
    margin-bottom: var(--s-3x);
}

/* BACKGROUND */
.b--p-5 {
    background-color: var(--primary-5);
}
.b--p-10 {
    background-color: var(--primary-10);
}
.b--p-20 {
    background-color: var(--primary-20);
}
.b--p-50 {
    background-color: var(--primary-50);
}
.b--p-50-10 {
    background-color: var(--primary-50_10);
}
.b--p-50-20 {
    background-color: var(--primary-50_20);
}
.b--p-10-30 {
    background-color: var(--primary-10_30);
}
.b--p-10-50 {
    background-color: var(--primary-10_50);
}

/* BACKGROUND FILTER */
.bdp-f--blur-1 {
    -webkit-backdrop-filter: blur(var(--s-x));
    backdrop-filter: blur(var(--s-x));
}
.bdp-f--blur-2 {
    -webkit-backdrop-filter: blur(var(--s-2x));
    backdrop-filter: blur(var(--s-2x));
}

/* BORDER */
.o--p-50_20 {
    outline: 1px solid var(--primary-50_20);

    &:focus {
        outline-color: var(--primary-50_60);
    }

    &:not(ul, .btn-cont, .modal):hover {
        outline-color: var(--primary-50_40);
    }
}

/* BORDER RADIUS */
.bd-rd--1 {
    -webkit-border-radius: var(--s-x);
    -moz-border-radius: var(--s-x);
    -ms-border-radius: var(--s-x);
    -o-border-radius: var(--s-x);
    border-radius: var(--s-x);
}

.bd-rd--2 {
    -webkit-border-radius: var(--s-2x);
    -moz-border-radius: var(--s-2x);
    -ms-border-radius: var(--s-2x);
    -o-border-radius: var(--s-2x);
    border-radius: var(--s-2x);
}
.bd-rd--3 {
    -webkit-border-radius: var(--s-3x);
    -moz-border-radius: var(--s-3x);
    -ms-border-radius: var(--s-3x);
    -o-border-radius: var(--s-3x);
    border-radius: var(--s-3x);
}
.bd-rd--4 {
    -webkit-border-radius: var(--s-4x);
    -moz-border-radius: var(--s-4x);
    -ms-border-radius: var(--s-4x);
    -o-border-radius: var(--s-4x);
    border-radius: var(--s-4x);
}
.bd-rd--5 {
    -webkit-border-radius: var(--s-5x);
    -moz-border-radius: var(--s-5x);
    -ms-border-radius: var(--s-5x);
    -o-border-radius: var(--s-5x);
    border-radius: var(--s-5x);
}
.bd-rd--6 {
    -webkit-border-radius: var(--s-6x);
    -moz-border-radius: var(--s-6x);
    -ms-border-radius: var(--s-6x);
    -o-border-radius: var(--s-6x);
    border-radius: var(--s-6x);
}
.bd-rd--7 {
    -webkit-border-radius: var(--s-7x);
    -moz-border-radius: var(--s-7x);
    -ms-border-radius: var(--s-7x);
    -o-border-radius: var(--s-7x);
    border-radius: var(--s-7x);
}
.bd-rd--pill {
    -webkit-border-radius: 444px;
    -moz-border-radius: 444px;
    -ms-border-radius: 444px;
    -o-border-radius: 444px;
    border-radius: 444px;
}

/* TEXT COLOR */
.c--dark {
    color: var(--primary-5);
}
.c--ligth {
    color: var(--primary-95);
}
.c--p-20 {
    color: var(--primary-20);
}
.c--p-50 {
    color: var(--primary-50);
}
.c--current{
    color: currentColor;
}

/* TYPOGRAPHY */
.f-fam--p {
    font-family: var(--ff-p);
}
.f-fam--c {
    font-family: var(--ff-c);
}
.text_h1 {
    font-size: 4.8rem;
    line-height: 5.2rem;
    font-weight: 600;
}
.text_h2 {
    font-size: 4.4rem;
    line-height: 4.8rem;
    font-weight: 600;
}
.text_h3 {
    font-size: 4rem;
    line-height: 4.4rem;
    font-weight: 600;
}
.text_h4 {
    font-size: 3.6rem;
    line-height: 4rem;
    font-weight: 600;
}
.text_h5 {
    font-size: 3.2rem;
    line-height: 3.6rem;
    font-weight: 600;
}
.text_h6 {
    font-size: 2.8rem;
    line-height: 3.2rem;
    font-weight: 600;
}
.text_sub-l {
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 2.6rem;
}
.text_sub-m {
    font-size: 2rem;
    font-weight: 500;
    line-height: 2.2rem;
}
.text_sub-s {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.8rem;
}
.text_sub-xs {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.4rem;
}
.text_body-l {
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 2.6rem;
}
.text_body-m {
    font-size: 2rem;
    font-weight: 300;
    line-height: 2.2rem;
}
.text_body-s {
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 1.8rem;
}
.text_body-xs {
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 1.4rem;
}

/* POSITION */
.absolute {
    position: absolute;
}
.fixed {
    position: fixed;
}
.relative {
    position: relative;
}
.l--0 {
    left: 0;
}

/* LAYERING */
.z--1 {
    z-index: 4;
}
.z--2 {
    z-index: 8;
}
.z--3 {
    z-index: 12;
}

/* DISPLAY */
.block {
    display: block;
}
.inline {
    display: inline;
}
.in-flex {
    display: inline-flex;
}
.flex {
    display: flex;
}
.grid {
    display: grid;
}

/* Flexbox */
.f-d--col {
    flex-direction: column;
}
.f--1 {
    flex: 1;
}
.al-i--center {
    align-items: center;
}
.al-i--start {
    align-items: flex-start;
}
.al-i--base {
    align-items: baseline;
}
.j-c--center {
    justify-content: center;
}
.j-c--space-b {
    justify-content: space-between;
}
.j-c--base {
    justify-content: baseline;
}
.g--1 {
    gap: var(--s-x);
}
.g--2 {
    gap: var(--s-2x);
}
.g--3 {
    gap: var(--s-3x);
}
.g--4 {
    gap: var(--s-4x);
}

/* Grid */
.grid {
    display: grid;
}

/* Transitions */
.tr--a_ease_1 {
    -webkit-transition: all ease 0.1s;
    -moz-transition: all ease 0.1s;
    -ms-transition: all ease 0.1s;
    -o-transition: all ease 0.1s;
    transition: all ease 0.1s;
}
.tr--a_out_2 {
    -webkit-transition: all ease-out 0.2s;
    -moz-transition: all ease-out 0.2s;
    -ms-transition: all ease-out 0.2s;
    -o-transition: all ease-out 0.2s;
    transition: all ease-out 0.2s;
}
.tr--a_out_4 {
    -webkit-transition: all ease-out 0.4s;
    -moz-transition: all ease-out 0.4s;
    -ms-transition: all ease-out 0.4s;
    -o-transition: all ease-out 0.4s;
    transition: all ease-out 0.4s;
}
.tr--a_bez_3 {
    -webkit-transition: all var(--bez) 0.3s;
    -moz-transition: all var(--bez) 0.3s;
    -ms-transition: all var(--bez) 0.3s;
    -o-transition: all var(--bez) 0.3s;
    transition: all var(--bez) 0.3s;
}

/* OTHERS */
.cur--pointer {
    cursor: pointer;
}
.ov--hidden {
    overflow: hidden;
}