/*
 * YUCPA Cloud UI Foundation
 * Low-risk base rules scoped to YUCPA layouts and components.
 */

.yucpa-shell,
.yucpa-auth-shell {
    font-family: var(--yucpa-font-family-base);
    color: var(--yucpa-text);
    background: var(--yucpa-bg);
}

.yucpa-shell a,
.yucpa-auth-shell a {
    color: inherit;
}

.yucpa-shell :focus-visible,
.yucpa-auth-shell :focus-visible {
    outline: 3px solid rgba(36, 87, 166, 0.28);
    outline-offset: 2px;
}

/* Client Portal typography foundation. */
.yucpa-client-layout {
    font-family: var(--yucpa-font-family-base);
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0.018em;
}

.yucpa-client-layout :is(h1, h2, h3, h4, h5, h6, button, input, select, textarea) {
    font-family: inherit;
}

.yucpa-client-layout :is(h1, h2, h3, h4, h5, h6) {
    color: var(--yucpa-text);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.yucpa-client-layout :is(button, input, select, textarea) {
    font: inherit;
    letter-spacing: normal;
}

.yucpa-client-layout button {
    font-weight: 600;
    letter-spacing: 0.015em;
}

.yucpa-client-layout :is(input, select, textarea) {
    font-weight: 400;
}

.yucpa-client-layout :focus-visible {
    outline-color: rgba(86, 104, 201, 0.42);
}
