@layer base {
    *,
    :after,
    :before {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0;
    }

    html {
        line-height: 1.5;
        -webkit-text-size-adjust: 100%;
        -moz-tab-size: 4;
        -o-tab-size: 4;
        tab-size: 4;
        font-family: Helvetica, Arial, sans-serif;
        -webkit-font-feature-settings: normal;
        font-feature-settings: normal;
        font-variation-settings: normal;
    }

    body {
        margin: 0;
        line-height: inherit;
    }

    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px;
    }

    abbr:where([title]) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted;
        border-bottom: none;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit;
    }

    a {
        color: inherit;
        text-decoration: inherit;
    }

    b,
    strong {
        font-weight: 500;
    }

    code,
    kbd,
    pre,
    samp {
        font-family: monospace;
        font-size: 1em;
    }

    small {
        font-size: 80%;
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: initial;
    }

    sub {
        bottom: -0.25em;
    }

    sup {
        top: -0.5em;
    }

    table {
        text-indent: 0;
        border-color: inherit;
        border-collapse: collapse;
    }

    button,
    input,
    optgroup,
    select,
    textarea {
        font-family: inherit;
        font-size: 100%;
        font-weight: inherit;
        line-height: inherit;
        color: inherit;
        margin: 0;
        padding: 0;
    }

    button,
    select {
        text-transform: none;
    }

    [type='button'],
    [type='reset'],
    [type='submit'],
    button {
        -webkit-appearance: button;
        background-color: initial;
        background-image: none;
    }

    :-moz-focusring {
        outline: auto;
    }

    :-moz-ui-invalid {
        box-shadow: none;
    }

    progress {
        vertical-align: initial;
    }

    ::-webkit-inner-spin-button,
    ::-webkit-outer-spin-button {
        height: auto;
    }

    [type='search'] {
        -webkit-appearance: textfield;
        outline-offset: -2px;
    }

    ::-webkit-search-decoration {
        -webkit-appearance: none;
    }

    ::-webkit-file-upload-button {
        -webkit-appearance: button;
        font: inherit;
    }

    summary {
        display: list-item;
    }

    blockquote,
    dd,
    dl,
    figure,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    hr,
    p,
    pre {
        margin: 0;
    }

    fieldset {
        margin: 0;
    }

    fieldset,
    legend {
        padding: 0;
    }

    menu,
    ol,
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    textarea {
        resize: vertical;
    }

    input::-webkit-input-placeholder,
    textarea::-webkit-input-placeholder {
        opacity: 1;
        color: rgba(108, 103, 101, 1);
    }

    input::-moz-placeholder,
    textarea::-moz-placeholder {
        opacity: 1;
        color: rgba(108, 103, 101, 1);
    }

    input:-ms-input-placeholder,
    textarea:-ms-input-placeholder {
        opacity: 1;
        color: rgba(108, 103, 101, 1);
    }

    input::-ms-input-placeholder,
    textarea::-ms-input-placeholder {
        opacity: 1;
        color: rgba(108, 103, 101, 1);
    }

    input::placeholder,
    textarea::placeholder {
        opacity: 1;
        color: rgba(108, 103, 101, 1);
    }

    [role='button'],
    button {
        cursor: pointer;
        color: inherit;
    }

    :disabled {
        cursor: default;
    }

    audio,
    canvas,
    embed,
    iframe,
    img,
    object,
    svg,
    video {
        display: block;
        vertical-align: middle;
    }

    img,
    video {
        max-width: 100%;
        height: auto;
    }

    template {
        display: none;
    }

    [hidden] {
        display: none;
    }
}
