
.st-auth {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 16px;
}

.st-auth__shell {
    width: min(100%, 760px);
    padding: 16px;
    display: grid;
    gap: 18px;
    background: rgba(13,13,13,.94);
    border: 1px solid #2b2b2b;
}

.st-auth__topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.st-auth__brand {
    display: grid;
    justify-items: center;
    gap: 12px;
    text-align: center;
}

.st-auth__form-shell,
.st-auth__footer {
    padding-top: 14px;
    border-top: 1px solid #2b2b2b;
}

.st-auth__form,
.st-auth__actions {
    display: grid;
    gap: 14px;
}

@media (max-width: 640px) {
    .st-auth { padding: 12px; align-items: stretch; }
    .st-auth__shell { width: 100%; padding: 14px; }
    .st-auth__topbar { display: grid; grid-template-columns: 1fr; }
    .st-auth__topbar .st-btn,
    .st-auth__actions .st-btn { width: 100%; }
}
