* {
    box-sizing: border-box;
}

*:active {
    outline: none;
}

*:focus {
    outline: none;
    box-shadow: var(--const-global-focus);
}

input,
button {
    font-family: inherit;
    font-size: inherit;
}

.sr,
.sr button {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
}

.hidden,
[hidden] {
    display: none;
}

.invisible {
    visibility: hidden;
}


:host {
    margin-top: var(--tct-scale-2, var(--app-scale-2, 10px));
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

legend {
    font-weight: 600;
}

.optional-tag {
    margin-left: var(
        --tct-input-label-optional-margin-left,
        var(--tct-scale-1, var(--app-scale-1, 5px))
    );
    color: var(
        --tct-input-label-optional-font-color,
        var(--tct-a11y-color, var(--t-a11y-gray-color, #767676))
    );
    font-size: var(--tct-input-label-optional-font-size, 12px);
    font-weight: var(--tct-input-label-optional-font-weight, 400);
}

.flexed {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
