/* Shared auth shell — aligned with /loginpro/loginsamio.html */
.gs-signup-page,
.gs-forgot-password-page {
    min-height: 100vh;
    background-color: #e3eeff !important;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.gs-signup-page #page-wrapper,
.gs-signup-page #page,
.gs-signup-page #region-main,
.gs-signup-page .login-container,
.gs-signup-page .login-wrapper,
.gs-signup-page .main-inner,
.gs-signup-page .secondary-navigation,
.gs-forgot-password-page #page-wrapper,
.gs-forgot-password-page #page,
.gs-forgot-password-page #region-main,
.gs-forgot-password-page .login-container,
.gs-forgot-password-page .login-wrapper,
.gs-forgot-password-page .main-inner,
.gs-forgot-password-page .secondary-navigation {
    background: transparent !important;
}

.gs-signup-page header,
.gs-signup-page .navbar,
.gs-signup-page #page-header,
.gs-signup-page [data-region="drawer"],
.gs-signup-page .drawer,
.gs-signup-page .drawer-toggles,
.gs-signup-page footer,
.gs-signup-page #page-footer,
.gs-forgot-password-page header,
.gs-forgot-password-page .navbar,
.gs-forgot-password-page #page-header,
.gs-forgot-password-page [data-region="drawer"],
.gs-forgot-password-page .drawer,
.gs-forgot-password-page .drawer-toggles,
.gs-forgot-password-page footer,
.gs-forgot-password-page #page-footer {
    display: none !important;
}

.gs-signup-page #page,
.gs-forgot-password-page #page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 16px !important;
}

.gs-signup-page #page-content,
.gs-signup-page #region-main-box,
.gs-signup-page #region-main,
.gs-forgot-password-page #page-content,
.gs-forgot-password-page #region-main-box,
.gs-forgot-password-page #region-main {
    width: 100%;
    max-width: 720px;
    margin: 0 auto !important;
    border: 0 !important;
    padding: 0 !important;
}

.gs-signup-page #region-main,
.gs-forgot-password-page #region-main {
    overflow: visible;
    box-shadow: none !important;
}

.gs-signup-page #region-main:before,
.gs-signup-page #region-main:after,
.gs-forgot-password-page #region-main:before,
.gs-forgot-password-page #region-main:after {
    display: none !important;
    content: none !important;
}

.gs-signup-page .login-wrapper,
.gs-forgot-password-page .login-wrapper {
    display: block !important;
    min-height: auto !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.gs-signup-page .login-description-container,
.gs-signup-page .login-description,
.gs-signup-page .login-description-content,
.gs-forgot-password-page .login-description-container,
.gs-forgot-password-page .login-description,
.gs-forgot-password-page .login-description-content {
    display: none !important;
}

.gs-signup-page .login-container,
.gs-forgot-password-page .login-container {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 560px !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 2rem !important;
    background: #ffffff !important;
    border: none !important;
    border-radius: 5px !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.08) !important;
}

.gs-signup-page .logo-area,
.gs-forgot-password-page .logo-area {
    position: static !important;
    display: block !important;
    width: 260px !important;
    max-width: 100% !important;
    min-height: 70px;
    margin: 0 auto 2rem !important;
    padding: 0 !important;
    background: url("/loginpro/loginpro_assets/samio-fun-logo.png") center / contain no-repeat;
    box-shadow: none !important;
}

.gs-signup-page .logo-area img,
.gs-forgot-password-page .logo-area img {
    opacity: 0 !important;
    width: 260px !important;
    height: 70px !important;
    margin: 0 auto !important;
}

.gs-signup-page .samio-auth-state-card,
.gs-forgot-password-page .samio-auth-state-card {
    padding: 0;
    background: transparent;
    border: 0;
}

.gs-signup-page .samio-auth-state-card h2,
.gs-forgot-password-page .samio-auth-state-card h2 {
    margin: 0 0 10px;
    color: #333;
    font-size: 26px;
    font-weight: 700;
    text-align: center;
}

.gs-signup-page .samio-auth-state-card p,
.gs-forgot-password-page .samio-auth-state-card p {
    margin: 0 0 20px;
    color: #64748b;
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
}

.gs-signup-page .samio-auth-actions,
.gs-forgot-password-page .samio-auth-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.gs-signup-page .samio-auth-actions .btn-primary,
.gs-forgot-password-page .samio-auth-actions .btn-primary {
    color: #ffffff !important;
    background-color: #029c91 !important;
    border: 0 !important;
    border-radius: 5px !important;
    font-weight: 600;
}

.gs-signup-page .samio-auth-actions .btn-secondary,
.gs-forgot-password-page .samio-auth-actions .btn-secondary {
    color: #333 !important;
    background: #e2e8f0 !important;
    border: 0 !important;
    border-radius: 5px !important;
}

.gs-signup-page .mform label,
.gs-signup-page .mform .col-form-label,
.gs-signup-page .mform .edw-form-label,
.gs-forgot-password-page .mform label,
.gs-forgot-password-page .mform .col-form-label {
    color: #333 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}

.gs-signup-page .mform .form-control,
.gs-signup-page .mform input[type="text"],
.gs-signup-page .mform input[type="password"],
.gs-signup-page .mform input[type="email"],
.gs-signup-page .mform select,
.gs-signup-page .mform textarea,
.gs-forgot-password-page .mform .form-control,
.gs-forgot-password-page .mform input[type="text"],
.gs-forgot-password-page .mform input[type="email"],
.gs-forgot-password-page .mform input[type="password"] {
    width: 100%;
    min-height: 48px;
    color: #333;
    font-size: 18px;
    background: #ffffff;
    border: 0 !important;
    border-bottom: 2px solid #029c91 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 10px 0;
}

.gs-signup-page .mform .form-control:focus,
.gs-signup-page .mform input:focus,
.gs-signup-page .mform select:focus,
.gs-signup-page .mform textarea:focus,
.gs-forgot-password-page .mform .form-control:focus,
.gs-forgot-password-page .mform input:focus {
    border-bottom-color: #029c91 !important;
    box-shadow: none !important;
    outline: none;
}

.gs-signup-page .mform .btn-primary,
.gs-signup-page .mform input[type="submit"],
.gs-signup-page .mform button[type="submit"],
.gs-forgot-password-page .mform .btn-primary,
.gs-forgot-password-page .mform input[type="submit"],
.gs-forgot-password-page .mform button[type="submit"] {
    width: 100%;
    min-height: 48px;
    padding: 12px 16px;
    color: #ffffff !important;
    background-color: #029c91 !important;
    border: 0 !important;
    border-radius: 5px !important;
    font-size: 18px;
    font-weight: 600;
    box-shadow: none !important;
}

.gs-signup-page .mform .btn-primary:hover,
.gs-signup-page .mform input[type="submit"]:hover,
.gs-forgot-password-page .mform .btn-primary:hover,
.gs-forgot-password-page .mform input[type="submit"]:hover {
    filter: brightness(1.05);
}

.gs-signup-page .mform .btn-secondary,
.gs-signup-page .mform .btn-cancel,
.gs-signup-page .mform input[type="button"],
.gs-forgot-password-page .mform .btn-secondary,
.gs-forgot-password-page .mform input[type="button"] {
    min-height: 48px;
    padding: 11px 22px;
    color: #333 !important;
    background: #e2e8f0 !important;
    border: 0 !important;
    border-radius: 5px !important;
    font-weight: 600;
}

.gs-signup-page .mform .form-text,
.gs-signup-page .mform .form-description,
.gs-signup-page .mform .fdescription,
.gs-forgot-password-page .mform .form-text,
.gs-forgot-password-page .mform .form-description {
    color: #64748b !important;
    font-size: 14px;
}

.gs-signup-page .mform .form-label-addon,
.gs-signup-page .mform .btn-icon,
.gs-signup-page .mform .form-control-feedback:empty {
    display: none !important;
}

.gs-signup-page .alert,
.gs-signup-page .box,
.gs-signup-page .generalbox,
.gs-forgot-password-page .alert,
.gs-forgot-password-page .box,
.gs-forgot-password-page .generalbox {
    border-radius: 5px !important;
}

@media (max-width: 767px) {
    .gs-signup-page #page,
    .gs-forgot-password-page #page {
        padding: 12px !important;
        align-items: flex-start;
    }

    .gs-signup-page .login-container,
    .gs-forgot-password-page .login-container {
        padding: 1.5rem !important;
    }

    .gs-signup-page .logo-area,
    .gs-forgot-password-page .logo-area {
        width: 210px !important;
        min-height: 58px;
        margin-bottom: 1.5rem !important;
    }
}
