@import '_content/Pantheon.App.Ui/Pantheon.App.Ui.ejw9pci5n2.bundle.scp.css';
@import '_content/Pantheon.Chat.Ui/Pantheon.Chat.Ui.7teojndyj1.bundle.scp.css';
@import '_content/Pantheon.Ui/Pantheon.Ui.mp1vl88vkr.bundle.scp.css';
@import '_content/Z.Blazor.Diagrams/Z.Blazor.Diagrams.ezdqu7jd9f.bundle.scp.css';

/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* Approved Gold & Light login; isolated from other identity pages. */
.login-shell[b-ql0bvf806b] {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
    width: min(1224px, 100%);
    min-height: 740px;
    border-radius: 28px;
    background: #101823;
}
.login-intro[b-ql0bvf806b] {
    align-items: center;
    justify-content: center;
    padding: 44px 42px;
    background: radial-gradient(ellipse at center, #1c2a393d, transparent 65%), #101923;
    text-align: center;
}
.login-brand[b-ql0bvf806b] { flex-direction: column; gap: 8px; }
.login-emblem[b-ql0bvf806b] { width: 250px; max-width: 100%; height: auto; object-fit: contain; }
.login-brand-copy strong[b-ql0bvf806b] { font-size: 31px; font-weight: 650; letter-spacing: -1px; }
.login-brand-star[b-ql0bvf806b] { margin-left: 2px; color: #d9c59c; font-size: 16px; }
.login-brand-copy small[b-ql0bvf806b] {
    margin-top: 12px;
    color: #d9c59c;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .17em;
    line-height: 1.8;
}
.login-copy[b-ql0bvf806b] { width: 100%; max-width: 460px; margin: 44px 0 0; }
.login-copy h2[b-ql0bvf806b] { margin: 0; color: #bfcbd9; font-weight: 480; font-size: 34px; line-height: 1.2; letter-spacing: -.9px; white-space: normal; }
.login-copy p[b-ql0bvf806b] { max-width: 330px; margin: 18px auto 0; font-size: 14px; line-height: 1.7; }
.login-panel[b-ql0bvf806b] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 58px 50px 44px;
    background: linear-gradient(155deg, #131c29, #0d141e 80%);
}
.login-access[b-ql0bvf806b] { width: 100%; max-width: 370px; }
.login-mobile-brand[b-ql0bvf806b] { display: none; }
.login-access[b-ql0bvf806b]  .login-card.identity-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.login-access[b-ql0bvf806b]  .login-panel-title {
    margin: 0 0 28px;
    font-size: 30px;
    font-weight: 660;
    line-height: 1.2;
    letter-spacing: -.8px;
}
.login-access[b-ql0bvf806b]  .login-bootstrap-copy { margin: -12px 0 24px; line-height: 1.6; }
.login-access[b-ql0bvf806b]  .identity-alert {
    grid-template-columns: 17px minmax(0, 1fr);
    gap: 11px;
    margin: 0 0 24px;
    padding: 13px 14px;
    border: 1px solid #ed81813b;
    border-left: 3px solid #e58c8c;
    border-radius: 3px 9px 9px 3px;
    background: #e58c8c09;
    box-shadow: none;
    color: #f3c5c8;
    font-size: 13px;
    line-height: 1.55;
}
.login-access[b-ql0bvf806b]  .identity-alert strong { color: inherit; font-size: 13px; font-weight: 650; }
.login-access[b-ql0bvf806b]  .identity-alert p { margin: 3px 0 0; }
.login-access[b-ql0bvf806b]  .identity-alert-symbol {
    width: 17px;
    height: 17px;
    margin-top: 2px;
}
.login-access[b-ql0bvf806b]  .login-notice {
    border-color: #b3904638;
    border-left-color: #cfaa62;
    background: #b390460b;
    color: #d8c9ac;
}
.login-access[b-ql0bvf806b]  .login-notice strong { color: #f0dfbd; }
.login-notice-icon[b-ql0bvf806b] { width: 17px; height: 17px; margin-top: 2px; }
.login-access[b-ql0bvf806b]  label { margin: 0 0 9px; color: #b7c5d8; font-size: 12px; font-weight: 620; }
.login-access[b-ql0bvf806b]  input[type="text"],
.login-access[b-ql0bvf806b]  input[type="password"] {
    height: 49px;
    min-height: 49px;
    padding: 0 14px;
    border-color: #3a485c;
    border-radius: 9px;
    background: #1a2637;
    font-size: 15px;
}
.login-access[b-ql0bvf806b]  .identity-password-field input { padding-right: 49px; }
.login-access[b-ql0bvf806b]  input:focus { border-color: #91bafa; box-shadow: 0 0 0 3px #85b5ff16; }
.login-access[b-ql0bvf806b]  input.invalid { border-color: #d78387; }
.login-field-error[b-ql0bvf806b] { margin: 0 0 22px; }
.login-field-error[b-ql0bvf806b]  .validation-message { margin-top: 7px; color: #efaaae; font-size: 12px; line-height: 1.5; }
.login-access[b-ql0bvf806b]  .identity-password-toggle { width: 43px; height: 43px; right: 3px; }
.login-access[b-ql0bvf806b]  .web-primary-action {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 49px;
    margin: 0;
    padding: 12px 16px;
    border: 1px solid #96b6ff55;
    border-radius: 9px;
    background: linear-gradient(110deg, #8ebcff, #a89aff);
    color: #101b2e;
    font-size: 14px;
    font-weight: 680;
    box-shadow: 0 8px 24px #708aff12;
}
.login-access[b-ql0bvf806b]  .web-primary-action:hover { background: linear-gradient(110deg, #a4caff, #b4a9ff); }
.login-access[b-ql0bvf806b]  .web-primary-action:focus-visible,
.login-passkey-action:focus-visible[b-ql0bvf806b] { outline: 3px solid #88b9ff; outline-offset: 4px; }
.login-access[b-ql0bvf806b]  .web-primary-action:disabled { cursor: wait; opacity: .8; }
.login-access[b-ql0bvf806b]  .login-code-input { text-align: center; margin-bottom: 22px; }
.login-or[b-ql0bvf806b] { width: 100%; margin: 24px 0; gap: 14px; font-size: 11px; font-weight: 400; letter-spacing: normal; text-transform: none; }
.login-passkey-alt[b-ql0bvf806b] { width: 100%; }
.login-passkey-action[b-ql0bvf806b] {
    min-height: 49px;
    border: 1px solid #3c495c;
    border-radius: 9px;
    background: #192332;
    color: #dce6f6;
    font-size: 14px;
    font-weight: 680;
}
.login-passkey-action:hover[b-ql0bvf806b] { background: #233149; border-color: #657b99; }
.login-passkey-status[b-ql0bvf806b] { background: transparent; padding: 0; font-size: 12px; line-height: 1.55; }
.login-passkey-status[data-tone="error"][b-ql0bvf806b] { background: transparent; color: #efaaae; }
.login-access[b-ql0bvf806b]  .login-recovery-link { display: block; width: fit-content; margin: 27px auto 0; font-size: 12px; font-weight: 400; }
.login-submit-state[b-ql0bvf806b] { margin-top: 12px; }
@media (min-width: 1600px) { .login-shell[b-ql0bvf806b] { min-height: 800px; } }
@media (max-width: 1000px) {
    .login-intro[b-ql0bvf806b] { padding: 38px 28px; }
    .login-emblem[b-ql0bvf806b] { width: 230px; }
    .login-copy h2[b-ql0bvf806b] { font-size: 29px; }
    .login-brand-copy strong[b-ql0bvf806b] { font-size: 28px; }
    .login-panel[b-ql0bvf806b] { padding: 45px 30px; }
}
@media (max-width: 880px) and (min-width: 721px) {
    .login-shell[b-ql0bvf806b] { grid-template-columns: minmax(0, .93fr) minmax(0, 1fr); min-height: 740px; }
    .login-panel[b-ql0bvf806b] { border-top: 0; border-left: 1px solid #2a3645; }
}
@media (max-width: 720px) {
    .login-shell[b-ql0bvf806b] { display: block; width: min(440px, 100%); min-height: 0; border-radius: 22px; }
    .login-intro[b-ql0bvf806b] { display: none; }
    .login-panel[b-ql0bvf806b] { display: block; padding: 25px 24px 30px; border: 0; }
    .login-access[b-ql0bvf806b] { max-width: none; }
    .login-mobile-brand[b-ql0bvf806b] { display: flex; align-items: center; gap: 13px; margin: -6px 0 28px; }
    .login-mobile-brand .login-emblem[b-ql0bvf806b] { width: 88px; height: 100px; flex: none; }
    .login-brand-copy strong[b-ql0bvf806b] { font-size: 27px; }
    .login-brand-copy small[b-ql0bvf806b] { max-width: 155px; margin-top: 9px; color: #adbcce; font-size: 9px; font-weight: 400; letter-spacing: .14em; }
    .login-access[b-ql0bvf806b]  .login-password-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .login-access[b-ql0bvf806b]  .login-panel-title { font-size: 27px; }
}
@media (max-width: 360px) {
    .login-panel[b-ql0bvf806b] { padding-inline: 18px; }
    .login-mobile-brand[b-ql0bvf806b] { gap: 8px; }
    .login-mobile-brand .login-emblem[b-ql0bvf806b] { width: 70px; }
    .login-brand-copy strong[b-ql0bvf806b] { font-size: 24px; }
}

.login-copy h2 span[b-ql0bvf806b] { color: #f2f7fd; font-weight: 720; }
/* /Components/Account/Pages/Recover.razor.rz.scp.css */
.identity-shell[b-0b8dma8l5f]  .identity-alert {
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 12px;
    padding: 16px 18px;
    border: 1px solid #ed81813b;
    border-left: 3px solid #e58c8c;
    border-radius: 3px 9px 9px 3px;
    background: #e58c8c09;
    box-shadow: none;
    color: #f3c5c8;
    font-size: 14px;
    line-height: 1.6;
}

.identity-shell[b-0b8dma8l5f]  .identity-alert-symbol {
    width: 20px;
    height: 20px;
    margin-top: 2px;
}

.identity-shell[b-0b8dma8l5f]  .identity-alert strong { color: inherit; }
.identity-shell[b-0b8dma8l5f]  .identity-alert p { margin: 0; }
.identity-shell[b-0b8dma8l5f]  .identity-alert strong + p,
.identity-shell[b-0b8dma8l5f]  .identity-validation-summary { margin-top: 5px; }

.identity-shell[b-0b8dma8l5f]  .recovery-notice {
    border-color: #b3904638;
    border-left-color: #cfaa62;
    background: #b390460b;
    color: #d8c9ac;
}
/* /Components/OAuth/OAuthAuthorize.razor.rz.scp.css */
/* The consent card follows the sign-in card: same surface, same actions. */
.oauth-shell[b-iifk8sqy9n] {
    display: grid;
    place-items: start center;
    min-height: 100vh;
    padding: clamp(24px, 6vw, 72px) 16px;
}

.oauth-card[b-iifk8sqy9n] {
    width: min(480px, 100%);
    gap: 14px;
}

.oauth-brand[b-iifk8sqy9n] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.oauth-brand strong[b-iifk8sqy9n] {
    display: block;
    letter-spacing: .02em;
}

.oauth-brand small[b-iifk8sqy9n] {
    display: block;
    color: var(--web-muted);
    font-size: .66rem;
    font-weight: 650;
    letter-spacing: .12em;
}

.oauth-star[b-iifk8sqy9n] {
    color: #e7c46a;
    font-size: 1.1rem;
}

.oauth-title[b-iifk8sqy9n] {
    margin: 4px 0 0;
    font-size: 1.35rem;
    line-height: 1.25;
}

.oauth-lead[b-iifk8sqy9n],
.oauth-hint[b-iifk8sqy9n],
.oauth-foot[b-iifk8sqy9n] {
    margin: 0;
    color: var(--web-muted);
}

.oauth-hint[b-iifk8sqy9n],
.oauth-foot[b-iifk8sqy9n] {
    font-size: .82rem;
}

.oauth-info[b-iifk8sqy9n] {
    border-color: #2a4a72;
    background: var(--web-blue-soft);
}

.oauth-client[b-iifk8sqy9n] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid var(--web-border);
    border-radius: 14px;
    background: #0f1620;
}

/* Only the text beside the mark; the mark styles itself. */
.oauth-client-text strong[b-iifk8sqy9n],
.oauth-client-text span[b-iifk8sqy9n] {
    display: block;
}

.oauth-client-text span[b-iifk8sqy9n] {
    color: var(--web-muted);
    font-size: .85rem;
}

.oauth-client-text b[b-iifk8sqy9n] {
    color: var(--web-text);
    font-weight: 650;
}

/* The client's mark from Pantheon's own provider logos (ProviderLogo):
   inline, so the browser never fetches anything from the client. */
.oauth-client-mark[b-iifk8sqy9n] {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--web-border);
    border-radius: 10px;
    background: #0c121b;
}

.oauth-client-mark[b-iifk8sqy9n]  .ds-provider-logo {
    width: 22px;
    height: 22px;
}

.oauth-form[b-iifk8sqy9n] {
    display: grid;
    gap: 8px;
}

.oauth-form label[b-iifk8sqy9n] {
    margin-top: 6px;
    font-size: .85rem;
    font-weight: 650;
}

.oauth-form select[b-iifk8sqy9n],
.oauth-form input[type="text"][b-iifk8sqy9n] {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid var(--web-border);
    border-radius: 11px;
    background: #0c121b;
    color: var(--web-text);
    font: inherit;
}

.oauth-form select:focus-visible[b-iifk8sqy9n],
.oauth-form input:focus-visible[b-iifk8sqy9n] {
    outline: 2px solid var(--web-blue);
    outline-offset: 2px;
}

.oauth-scopes[b-iifk8sqy9n] {
    margin: 8px 0 0;
    padding: 6px 14px 10px;
    border: 1px solid var(--web-border);
    border-radius: 14px;
}

.oauth-scopes legend[b-iifk8sqy9n] {
    padding: 0 6px;
    font-size: .85rem;
    font-weight: 650;
}

.oauth-scope[b-iifk8sqy9n] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52px 52px;
    gap: 8px;
    align-items: center;
    justify-items: center;
    padding: 7px 0;
    border-bottom: 1px solid rgb(41 56 75 / 55%);
    font-size: .9rem;
}

.oauth-scope:last-child[b-iifk8sqy9n] {
    border-bottom: 0;
}

.oauth-scope > :first-child[b-iifk8sqy9n] {
    justify-self: start;
}

.oauth-scope input[b-iifk8sqy9n] {
    width: 18px;
    height: 18px;
    accent-color: var(--web-blue);
    cursor: pointer;
}

.oauth-scope-head span[b-iifk8sqy9n] {
    color: var(--web-muted);
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.oauth-none[b-iifk8sqy9n] {
    color: #3b4a5e;
}

.oauth-actions[b-iifk8sqy9n] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px;
}

.oauth-full[b-iifk8sqy9n] {
    width: 100%;
    text-align: center;
    text-decoration: none;
}

.oauth-details[b-iifk8sqy9n] {
    color: var(--web-muted);
    font-size: .8rem;
}

.oauth-details summary[b-iifk8sqy9n] {
    padding: 6px 0;
    cursor: pointer;
}

.oauth-details dl[b-iifk8sqy9n] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 4px 12px;
    margin: 6px 0 0;
}

.oauth-details dd[b-iifk8sqy9n] {
    margin: 0;
    overflow-wrap: anywhere;
}

@media (max-width: 480px) {
    .oauth-actions[b-iifk8sqy9n] {
        grid-template-columns: 1fr;
    }

    .oauth-actions .web-primary-action[b-iifk8sqy9n] {
        order: -1;
    }
}
/* /Components/Workspace/Pages/App2Workspace.razor.rz.scp.css */
/* Pre-circuit frame: the shell's header, nav and area backdrop, so the live app fades in rather than replacing a different page. */
.app2-entry[b-04tjfqx4dd] {
    height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #0e1017;
    color: #e9ebf2;
    font-family: 'IBM Plex Sans', sans-serif;
}

.app2-entry-head[b-04tjfqx4dd] {
    height: 68px;
    flex: none;
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 0 26px;
    background: linear-gradient(110deg, #171b27, #10141d);
    border-bottom: 1px solid #2d3343;
}

.app2-entry-brand[b-04tjfqx4dd] { font: 600 27px Fraunces, Georgia, serif; }
.app2-entry-brand span[b-04tjfqx4dd] { color: #8f8fda; }

.app2-entry-chip[b-04tjfqx4dd] {
    width: 340px;
    height: 52px;
    border: 1px solid #2d3343;
    border-radius: 8px;
    background: #141925;
}

.app2-entry-body[b-04tjfqx4dd] {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns: 185px 1fr;
}

.app2-entry-nav[b-04tjfqx4dd] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 27px 12px;
    border-right: 1px solid #2b3140;
    background: linear-gradient(#121720, #0e1119);
}

.app2-entry-nav small[b-04tjfqx4dd] { padding: 0 12px 17px; font-size: 9px; letter-spacing: .15em; color: #929bb1; }
.app2-entry-nav i[b-04tjfqx4dd] { position: relative; display: block; height: 40px; }
.app2-entry-nav i[b-04tjfqx4dd]::before { content: ""; position: absolute; left: 12px; top: 15px; width: 10px; height: 10px; border-radius: 3px; background: #262c3b; }
.app2-entry-nav i[b-04tjfqx4dd]::after { content: ""; position: absolute; left: 34px; top: 15px; width: var(--w); height: 10px; border-radius: 4px; background: #1f2533; }

.app2-entry-stage[b-04tjfqx4dd] { position: relative; display: grid; place-items: center; }

.app2-entry-backdrop[b-04tjfqx4dd] {
    position: absolute;
    inset: 0;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    animation: app2-entry-fade-b-04tjfqx4dd .6s ease-out both;
}

.app2-entry-pulse[b-04tjfqx4dd] {
    position: relative;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: radial-gradient(circle, #8f8fda 0 5px, transparent 6px);
}

.app2-entry-pulse[b-04tjfqx4dd]::before,
.app2-entry-pulse[b-04tjfqx4dd]::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid #8f8fda;
    border-radius: 50%;
    animation: app2-entry-ring-b-04tjfqx4dd 2s ease-out infinite;
}

.app2-entry-pulse[b-04tjfqx4dd]::after { animation-delay: 1s; }

/* Only offered once the wait is really long. */
.app2-entry-stuck[b-04tjfqx4dd] {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(50% + 48px);
    margin: 0;
    text-align: center;
    font-size: 13px;
    color: #98a3b8;
    opacity: 0;
    animation: app2-entry-fade-b-04tjfqx4dd .4s ease-out 8s forwards;
}

.app2-entry-stuck a[b-04tjfqx4dd] { color: #b9b8f0; text-underline-offset: 3px; }

@keyframes app2-entry-ring-b-04tjfqx4dd {
    from { transform: scale(.3); opacity: .9; }
    to { transform: scale(1.6); opacity: 0; }
}

@keyframes app2-entry-fade-b-04tjfqx4dd {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (max-width: 760px) {
    .app2-entry-body[b-04tjfqx4dd] { grid-template-columns: 1fr; }
    .app2-entry-nav[b-04tjfqx4dd], .app2-entry-chip[b-04tjfqx4dd] { display: none; }
    .app2-entry-brand[b-04tjfqx4dd] { font-size: 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .app2-entry-pulse[b-04tjfqx4dd]::before, .app2-entry-pulse[b-04tjfqx4dd]::after { animation: none; opacity: .5; }
}
