.gqa-login-panel.card {
    position: relative;
    width: min(100%, 28rem);
    color: var(--gqa-text, #222b30);
    padding: clamp(1.15rem, 4vw, 2rem);
}
.gqa-login-panel.gqa-login-page {
    margin: clamp(1.25rem, 4vw, 3rem) auto;
}
dialog.gqa-login-panel.card {
    position: fixed;
    inset: 0;
    width: min(calc(100% - 2rem), 28rem);
    max-height: calc(100% - 2rem);
    max-height: calc(100dvh - 2rem);
    margin: auto;
    overflow: auto;
    overscroll-behavior: contain;
    box-shadow: 0 16px 48px #17232c33;
}
dialog.gqa-login-panel::backdrop {
    background: #17232c80;
}
html:has(#gqa-login-dialog[open]) {
    overflow: hidden;
}
.gqa-login-panel .gqa-login-close {
    position: absolute;
    inset: .65rem .65rem auto auto;
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    margin: 0;
    padding: 0;
    font-size: 1.4rem;
    line-height: 1;
}
.gqa-login-logo {
    display: block;
    width: min(10rem, 65%);
    height: auto;
    margin: 0 auto .75rem;
    background: transparent;
}
.gqa-login-panel .gqa-login-title {
    text-align: center;
    margin: 0 0 1rem;
}
.gqa-login-form {
    display: grid;
    gap: var(--gqa-form-gap, .875rem);
}
.gqa-login-form input:not([type=hidden]) {
    width: 100%;
    min-height: 44px;
    font-family: inherit;
    font-size: max(16px, 1rem);
}
.gqa-login-form .gqa-login-recovery {
    justify-self: end;
    font-size: .875rem;
}
.gqa-login-form .gqa-login-submit {
    width: 100%;
    min-height: 44px;
    margin: 0;
}
.gqa-login-panel .gqa-login-register {
    margin: 1rem 0 0;
    text-align: center;
    color: var(--gqa-muted, #5e6b73);
    font-size: .875rem;
}
.gqa-login-panel .gqa-login-error {
    margin: 0;
}
