/* ---------------------------------------------------------
   GLOBAL AUTH PAGE STYLING
--------------------------------------------------------- */

body {
    background-color: #0d1117;
    color: #e6edf3;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
                 Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* ---------------------------------------------------------
   HEADER
--------------------------------------------------------- */

header {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 1rem 2rem;
    box-sizing: border-box;
}

/* ---------------------------------------------------------
   AUTH CONTAINER
--------------------------------------------------------- */

.auth-container {
    width: 100%;
    max-width: 420px;
    margin: auto;
    padding: 2rem;
    background: #161b22;
    border: 1px solid #30363d;
    border-radius: 8px;
    box-shadow: 0 0 20px rgba(0,0,0,0.4);
    overflow: visible;
}

/* ---------------------------------------------------------
   LOGO
--------------------------------------------------------- */

.logo {
    display: block;
    margin: 0 auto 1.5rem auto;
    width: 100%;
    height: auto;
    object-fit: contain;
    overflow: visible;
    max-width: 360px;
    transform: translateX(10px); /* shift right so Q is fully visible */
}

.logo-small {
    max-width: 180px;
}

.logo-medium {
    max-width: 260px;
}

.logo-large {
    max-width: 360px;
}

@media (max-width: 480px) {
    .logo-large {
        max-width: 300px;
    }
}

/* ---------------------------------------------------------
   BANNERS (success, error, info)
--------------------------------------------------------- */

.banner {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 0.9rem;
}

.banner.success {
    background-color: #0d6efd20;
    border: 1px solid #0d6efd;
    color: #0d6efd;
}

.banner.error {
    background-color: #7f1d1d33;
    border: 1px solid #991b1b;
    color: #fca5a5;
}

.banner.info {
    background-color: #1f6feb33;
    border: 1px solid #1f6feb;
    color: #58a6ff;
}

/* ---------------------------------------------------------
   FOOTER
--------------------------------------------------------- */

.auth-footer {
    margin-top: 2rem;
    text-align: center;
    color: #64748b;
    font-size: 0.8rem;
    padding-bottom: 1.5rem;
    user-select: none;
}
