*
{
    box-sizing: inherit;
}

html, body
{
    min-height: 100%;
}

html
{
    height: 100%;
    box-sizing: border-box;

    // disable page scrolling and jump to the top
    &.scroll-disabled
    {
        &, body
        {
            overflow: hidden !important;
            height: 100% !important;
        }
    }
}

body
{
    min-width: $window-min-width;
}

// z-index is used for layout detection by js
body
{
    position: relative;
    z-index: 4;

    @include for-at-least-normal-tablets
    {
        z-index: 6;
    }

    @include for-desktops
    {
        z-index: 8;
    }
}

main
{
    @include clear-inside;
}

// sticky footer with flexbox
@include for-at-least-tablets
{
    body
    {
        display: flex;
        flex-direction: column;

        height: 100%;

        > header,
        > footer
        {
            flex: none;
        }
    }

    main
    {
        flex: 1 0 auto;
    }
}


button, input, optgroup, select, textarea
{
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

fieldset
{
    min-width: 0;
    padding: 0;
    border: 0;
    margin: 0 0 steps(3);

    &:last-child
    {
        margin-bottom: 0;
    }
}

legend
{
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

dd
{
    margin: 0;
}

// always hide an element with the `hidden` html attribute
// also needed for proper display in ie10+
[hidden]
{
    display: none !important;
}

// avoid 300ms click delay on touch devices that support the `touch-action` css property.
//
// in particular, unlike most other browsers, ie11+edge on windows 10 on touch devices and ie mobile 10-11
// don't remove the click delay when `<meta name="viewport" content="width=device-width">` is present.
// however, they do support removing the click delay via `touch-action: manipulation`.
// https://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay
a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea
{
    touch-action: manipulation;
}


// added by request of realbit
[v-cloak]
{
    display: none;
}
