// (C) 2007-2020 GoodData Corporation
@import "variables";

// BASE MIXINS
@mixin gd-font-family {
    font-family: $gd-font-primary;
}

@mixin gd-font-regular {
    font-weight: map-get(map-get($gd-typo, font-weights), regular);
}

@mixin gd-font-bold {
    font-weight: map-get(map-get($gd-typo, font-weights), bold);
}

@mixin gd-font-base {
    @include gd-font-family;
    @include gd-font-regular;
}

@mixin gd-heading-base {
    color: $gd-color-dark;

    @include gd-font-base;
}

// HEADINGS
@mixin gd-heading-1 {
    @include gd-heading-base;
    @include gd-font-bold;

    line-height: nth(map-get($gd-typo, heading-line-heights), 1);
    font-size: nth(map-get($gd-typo, font-sizes), 1);
}

@mixin gd-heading-2 {
    @include gd-heading-base;
    @include gd-font-bold;

    line-height: nth(map-get($gd-typo, heading-line-heights), 2);
    font-size: nth(map-get($gd-typo, font-sizes), 2);
}

@mixin gd-heading-3 {
    @include gd-heading-base;
    @include gd-font-regular;

    line-height: nth(map-get($gd-typo, heading-line-heights), 3);
    font-size: nth(map-get($gd-typo, font-sizes), 3);
}

// PARAGRAPHS
@mixin gd-paragraph {
    @include gd-font-base;

    line-height: nth(map-get($gd-typo, line-heights), 1);
    color: $gd-color-text;
    font-size: nth(map-get($gd-typo, font-sizes), 4);
}

// LABELS
@mixin gd-label-base {
    @include gd-font-base;

    line-height: nth(map-get($gd-typo, line-heights), 2);
    color: $gd-color-label;
}

@mixin gd-label-top {
    @include gd-label-base;

    font-size: nth(map-get($gd-typo, font-sizes), 6);
    text-transform: uppercase;
}

@mixin gd-label {
    @include gd-label-base;

    font-size: nth(map-get($gd-typo, font-sizes), 4);
}

@mixin gd-label-small {
    @include gd-label-base;

    font-size: nth(map-get($gd-typo, font-sizes), 5);
}
