Files
aifo-portal-web/assets/css/affiliate_register.css
T
steven 4d30803b60 Initial commit: AIFO official portal web.
Add static site, shared layout, and Node dev server with standard .gitignore.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 15:29:50 +08:00

1829 lines
41 KiB
CSS

@charset "UTF-8";
/* ===============================
Base
================================ */
.error-message {
width: auto;
margin-top: 0.25rem;
font-size: 80%;
color: var(--aifo-dark-gary);
background: #fff;
border-radius: 4px;
padding: 2px 6px;
margin-bottom: 10px;
}
.error-message::before {
content: "";
display: inline-block;
width: 16px;
height: 16px;
margin-right: 4px;
background-image: url(../images/icon/valid_err_mark.svg);
background-repeat: no-repeat;
background-size: contain;
vertical-align: middle;
}
.aifo-bg-primary {
background-color: #000;
}
.login-page {
position: relative;
z-index: 1;
min-height: 100%;
padding: 20px 0;
height: 100vh;
background-color: #000;
background-image: url(../images/backgrounds/academy/bg_all_grid.webp);
margin-top: 0;
}
.login-page::before {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
background: url(../images/backgrounds/login_bg_light.webp) no-repeat center top/cover;
}
.login-page .login-card {
max-width: 560px;
width: 100%;
margin: 0 auto;
padding: 60px 33px;
}
/* ===============================
Layout
================================ */
@media (min-width: 1200px) {
.container {
max-width: 1226px;
}
.login-page {
min-height: 100vh;
height: auto;
}
.col-xl-8 {
-webkit-box-flex: 0;
-ms-flex: 0 0 66.6666666667%;
flex: 0 0 66.6666666667%;
max-width: 580px;
padding: 0;
}
.col-xl-4 {
-webkit-box-flex: unset;
-ms-flex: unset;
flex: unset;
max-width: 450px;
width: 450px;
}
}
@media (max-width: 991px) {
.login-card {
margin-bottom: 30px;
}
}
/* ===============================
Card
================================ */
.card-base {
background: rgba(18, 18, 18, 0.88);
border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: 24px;
-webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
}
.login-card {
max-width: 560px;
width: 100%;
margin: 0 auto;
padding: 60px 33px;
}
@media (max-width: 767px) {
.login-card {
padding: 28px 22px;
}
}
/* ===============================
Logo & Title
================================ */
.logo-container {
text-align: center;
margin-bottom: 30px;
position: relative;
}
.login-page .login-title {
text-align: center;
font-size: 25px;
font-weight: 700;
color: var(--aifo-white);
margin-bottom: 25px;
}
/* ===============================
Form
================================ */
.login-page .form-group {
margin-bottom: 15px;
}
.login-page .form-label {
font-size: 15px;
color: var(--aifo-white);
margin-bottom: 10px;
display: block;
}
.login-page .form-control {
height: 40px;
border-radius: 10px;
background: rgba(0, 0, 0, 0.2);
border: 1px solid rgba(255, 255, 255, 0.18);
color: var(--aifo-white);
font-size: 14px;
padding: 12px 16px;
}
.login-page .form-control::-webkit-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.login-page .form-control::-moz-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.login-page .form-control:-ms-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.login-page .form-control::-ms-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.login-page .form-control::placeholder {
color: rgba(249, 249, 249, 0.55);
}
.login-page .form-control:focus {
background: rgba(0, 0, 0, 0.25);
border-color: var(--aifo-orange);
-webkit-box-shadow: 0 0 0 0.1rem rgba(249, 135, 21, 0.1);
box-shadow: 0 0 0 0.1rem rgba(249, 135, 21, 0.1);
outline: none;
}
/* ===============================
Password
================================ */
.login-page .password-wrapper {
position: relative;
}
.login-page .password-toggle {
position: absolute;
right: 14px;
top: 0px;
background: none;
border: none;
color: rgba(249, 249, 249, 0.55);
cursor: pointer;
padding: 8px;
width: 40px;
height: 40px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-transition: color 0.2s ease;
transition: color 0.2s ease;
}
.login-page .password-toggle:hover {
color: rgba(249, 249, 249, 0.85);
}
/* ===============================
Remember / Forgot
================================ */
.login-page .remember-forgot {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin: 25px 0 30px;
}
.login-page .forgot-link {
color: var(--aifo-orange);
font-size: 14px;
text-decoration: none;
}
.login-page .forgot-link:hover {
text-decoration: underline;
color: #e67f12;
}
/* ===============================
Button
================================ */
.login-page .btn-aifo-primary {
width: 100%;
height: 55px;
background: var(--aifo-orange);
color: var(--aifo-white);
border: none;
border-radius: 14px;
font-size: 20px;
font-weight: 600;
cursor: pointer;
}
.login-page .btn-aifo-primary:hover {
background: var(--aifo-orange-hover);
-webkit-box-shadow: 0 8px 24px rgba(249, 135, 21, 0.35);
box-shadow: 0 8px 24px rgba(249, 135, 21, 0.35);
}
/* ===============================
Divider
================================ */
.login-page .divider {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 12px;
margin: 30px 0;
}
.login-page .divider-line {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
height: 1px;
background: var(--aifo-white);
}
.login-page .divider-text {
font-size: 13px;
color: var(--aifo-white);
white-space: nowrap;
}
/* ===============================
Social
================================ */
.login-page .social-buttons {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap: 26px;
margin-bottom: 30px;
}
.login-page .social-btn {
width: 48px;
height: 48px;
border-radius: 12px;
background: #f5f5f5;
border: none;
cursor: pointer;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
.login-page .social-btn:hover {
-webkit-transform: translateY(-2px);
transform: translateY(-2px);
-webkit-box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
/* ===============================
Signup Prompt
================================ */
.login-page .signup-prompt {
text-align: center;
color: rgba(249, 249, 249, 0.75);
font-size: 14px;
}
.login-page .signup-link {
color: var(--aifo-orange);
margin-left: 4px;
text-decoration: none;
}
.login-page .signup-link:hover {
text-decoration: underline;
color: #e67f12;
}
.login-page::before {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
background: url(../images/backgrounds/login_bg_light.webp) no-repeat center top/cover;
}
.login-page .login-card {
max-width: 560px;
width: 100%;
margin: 0 auto;
padding: 60px 33px;
}
.signup-form .signup-header {
margin-bottom: 32px;
text-align: center;
}
.signup-form .signup-title {
font-size: 25px;
font-weight: 700;
margin-bottom: 0;
color: var(--aifo-white);
}
.signup-form {
/* Card base styles */
}
.signup-form .card-base {
background: rgba(18, 18, 18, 0.88);
border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: 24px;
-webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
}
.signup-form {
/* Login card */
}
.signup-form .login-card {
max-width: 560px;
width: 100%;
margin: 0 auto;
padding: 60px 33px;
}
.signup-form .logo-svg {
height: 60px;
width: auto;
}
.signup-form {
/* Form styles */
}
.signup-form .form-group {
margin-bottom: 15px;
}
.signup-form .form-label {
font-size: 15px;
color: var(--aifo-white);
margin-bottom: 10px;
display: block;
}
.signup-form .form-control {
height: 40px;
border-radius: 10px;
background: rgba(0, 0, 0, 0.2);
border: 1px solid rgba(255, 255, 255, 0.18);
color: var(--aifo-white);
font-size: 14px;
padding: 12px 16px;
-webkit-transition: unset;
transition: unset;
}
.signup-form .form-control::-webkit-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.signup-form .form-control::-moz-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.signup-form .form-control:-ms-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.signup-form .form-control::-ms-input-placeholder {
color: rgba(249, 249, 249, 0.55);
}
.signup-form .form-control::placeholder {
color: rgba(249, 249, 249, 0.55);
}
.signup-form .form-control:hover {
background: #231f20;
cursor: pointer;
}
.signup-form .form-control:focus {
background: rgba(0, 0, 0, 0.25);
border-color: var(--aifo-orange);
-webkit-box-shadow: 0 0 0 0.1rem rgba(249, 135, 21, 0.1);
box-shadow: 0 0 0 0.1rem rgba(249, 135, 21, 0.1);
color: var(--aifo-white);
outline: none;
}
.signup-form {
/* Password field with eye icon */
}
.signup-form .password-wrapper {
position: relative;
}
.signup-form .password-toggle {
position: absolute;
right: 14px;
top: 0;
/* transform: translateY(-50%); */
background: none;
border: none;
color: rgba(249, 249, 249, 0.55);
cursor: pointer;
padding: 8px;
width: 36px;
height: 36px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-transition: color 0.2s ease;
transition: color 0.2s ease;
}
.signup-form .password-toggle:hover {
color: rgba(249, 249, 249, 0.85);
}
.signup-form .password-toggle svg {
width: 20px;
height: 20px;
}
.signup-form {
/* Phone number compound input */
}
.signup-form .phone-input-wrapper {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
gap: 0;
height: 56px;
background: #0E0E0E;
border: 1px solid rgba(255, 255, 255, 0.18);
border-radius: 12px;
overflow: hidden;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
.signup-form .phone-input-wrapper:focus-within {
border-color: #F98715;
-webkit-box-shadow: 0 0 0 3px rgba(249, 135, 21, 0.2);
box-shadow: 0 0 0 3px rgba(249, 135, 21, 0.2);
}
.signup-form {
/* ===============================
Phone Input Wrapper
================================ */
}
.signup-form .phone-wrapper {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
background: #111;
border: 1px solid #2a2a2a;
border-radius: 12px;
padding: 2px 10px;
/* overflow: hidden; */
}
.signup-form {
/* Country selector */
}
.signup-form .country-select {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 8px;
border: none;
cursor: pointer;
color: var(--aifo-white);
font-size: 14px;
min-width: 80px;
-webkit-transition: background 0.2s ease;
transition: background 0.2s ease;
position: relative;
}
.signup-form .country-select .fi {
width: 24px;
height: 16px;
margin-right: 0px;
border-radius: 2px;
}
.signup-form .country-code {
font-size: 14px;
margin-right: 0px;
}
.signup-form .arrow {
font-size: 12px;
opacity: 0.7;
}
.signup-form {
/* Phone input */
}
.signup-form .phone-input {
background: transparent;
border: none;
color: #fff;
padding: 8px 10px;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
width: 100%;
white-space: nowrap;
overflow: hidden;
}
.signup-form .phone-input::-webkit-input-placeholder {
color: #777;
}
.signup-form .phone-input::-moz-placeholder {
color: #777;
}
.signup-form .phone-input:-ms-input-placeholder {
color: #777;
}
.signup-form .phone-input::-ms-input-placeholder {
color: #777;
}
.signup-form .phone-input::placeholder {
color: #777;
}
.signup-form .phone-input:focus {
outline: none;
}
.signup-form {
/* Dropdown */
}
.signup-form .dropdown-menu {
background: #111;
border: 1px solid #2a2a2a;
max-height: 300px;
overflow-y: auto;
top: 10px !important;
left: -9px !important;
max-width: 278px;
}
.signup-form .dropdown-item {
color: #ddd;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.signup-form .dropdown-item:hover {
background: #1c1c1c;
color: #fff;
}
.signup-form .dropdown-item .fi {
width: 24px;
height: 16px;
margin-right: 10px;
}
.signup-form {
/* Validation */
}
.signup-form .was-validated .phone-input:invalid {
color: #ff6b6b;
}
.signup-form .dropdown:hover .dropdown-menu {
display: unset;
}
.signup-form .country-flag {
font-size: 20px;
line-height: 1;
}
.signup-form .arrow.icon-downarrow {
height: 16px;
width: 16px;
}
.signup-form .country-code {
font-weight: 500;
}
.signup-form .dropdown-arrow {
width: 0;
height: 0;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
border-top: 5px solid rgba(249, 249, 249, 0.6);
margin-left: auto;
}
.signup-form .phone-number-input {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
padding: 0 16px;
background: transparent;
border: none;
color: #F9F9F9;
font-size: 15px;
font-family: "Montserrat", sans-serif;
}
.signup-form .phone-number-input:focus {
outline: none;
}
.signup-form .phone-number-input::-webkit-input-placeholder {
color: rgba(249, 249, 249, 0.4);
}
.signup-form .phone-number-input::-moz-placeholder {
color: rgba(249, 249, 249, 0.4);
}
.signup-form .phone-number-input:-ms-input-placeholder {
color: rgba(249, 249, 249, 0.4);
}
.signup-form .phone-number-input::-ms-input-placeholder {
color: rgba(249, 249, 249, 0.4);
}
.signup-form .phone-number-input::placeholder {
color: rgba(249, 249, 249, 0.4);
}
.signup-form {
/* Checkbox styles */
}
.signup-form .checkbox-group {
margin-bottom: 16px;
}
.signup-form .checkbox-wrapper {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
gap: 12px;
margin-bottom: 14px;
}
.signup-form .checkbox-wrapper:last-child {
margin-bottom: 0;
}
.signup-form .custom-checkbox {
position: relative;
-ms-flex-negative: 0;
flex-shrink: 0;
width: 20px;
height: 20px;
margin-top: 2px;
}
.signup-form .custom-checkbox input[type=checkbox] {
position: absolute;
opacity: 0;
width: 100%;
height: 100%;
cursor: pointer;
z-index: 1;
}
.signup-form .checkbox-box {
position: absolute;
top: 0;
left: 0;
width: 20px;
height: 20px;
border: 2px solid rgba(249, 249, 249, 0.25);
border-radius: 4px;
/* background: transparent;
transition: all 0.2s ease; */
}
.signup-form .custom-checkbox input[type=checkbox]:checked ~ .checkbox-box {
background: #F98715;
border-color: #F98715;
}
.signup-form .checkbox-box::after {
content: "";
position: absolute;
display: none;
left: 6px;
top: 2px;
width: 5px;
height: 10px;
border: solid white;
border-width: 0 2px 2px 0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.signup-form .custom-checkbox input[type=checkbox]:checked ~ .checkbox-box::after {
display: block;
}
.signup-form .checkbox-label {
font-size: 14px;
line-height: 1.6;
color: rgba(249, 249, 249, 0.85);
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
}
.signup-form {
/* Remember & Forgot row */
}
.signup-form .remember-forgot {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin: 25px 0 30px;
}
.signup-form .remember-check {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 8px;
color: rgba(249, 249, 249, 0.75);
font-size: 14px;
}
.signup-form .remember-check input[type=checkbox] {
width: 18px;
height: 18px;
cursor: pointer;
}
.signup-form .forgot-link {
color: var(--aifo-orange);
text-decoration: none;
font-size: 14px;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
.signup-form .forgot-link:hover {
text-decoration: underline;
color: #e67f12;
}
.signup-form {
/* Login button */
}
.signup-form .btn-aifo-primary:hover {
background: var(--aifo-orange-hover);
-webkit-box-shadow: 0 8px 24px rgba(249, 135, 21, 0.35);
box-shadow: 0 8px 24px rgba(249, 135, 21, 0.35);
-webkit-transform: translateY(-2px);
transform: translateY(-2px);
}
.signup-form {
/* Divider */
}
.signup-form .divider {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin: 30px 0;
gap: 12px;
}
.signup-form .divider-line {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
height: 1px;
background: var(--aifo-white);
}
.signup-form .divider-text {
color: var(--aifo-white);
font-size: 13px;
white-space: nowrap;
}
.signup-form {
/* Social buttons */
}
.signup-form .social-buttons {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap: 26px;
margin-bottom: 30px;
}
.signup-form .social-btn {
width: 48px;
height: 48px;
background: #f5f5f5;
border: none;
border-radius: 12px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
cursor: pointer;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
-webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.signup-form .social-btn:hover {
-webkit-transform: translateY(-2px);
transform: translateY(-2px);
-webkit-box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
.signup-form .social-btn svg {
width: 24px;
height: 24px;
}
.signup-form {
/* Signup prompt */
}
.signup-form .signup-prompt {
text-align: center;
color: rgba(249, 249, 249, 0.75);
font-size: 14px;
}
.signup-form .signup-link {
color: var(--aifo-orange);
text-decoration: none;
margin-left: 4px;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
.signup-form .signup-link:hover {
text-decoration: underline;
color: #e67f12;
}
/* affliate login */
#affliate-login .steps-card,
#affliate-register .steps-card {
background: rgba(28, 28, 28, 0.92);
}
#affliate-login .glass-card,
#affliate-register .glass-card {
background: rgba(20, 20, 20, 0.92);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 20px;
-webkit-box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55);
box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55);
padding: 50px;
height: -webkit-fit-content;
height: -moz-fit-content;
height: fit-content;
}
#affliate-login .steps-title,
#affliate-register .steps-title {
font-size: 25px;
font-weight: 700;
line-height: 1.3;
margin-bottom: 30px;
width: 202px;
margin: 0 auto;
}
@media (max-width: 767px) {
#affliate-login .steps-title,
#affliate-register .steps-title {
font-size: 26px;
}
}
#affliate-login .timeline-wrapper,
#affliate-register .timeline-wrapper {
position: relative;
padding-left: 50px;
padding-top: 50px;
}
#affliate-login .timeline-line,
#affliate-register .timeline-line {
position: absolute;
left: 2px;
top: 52px;
bottom: 104px;
width: 23px;
background-image: url("../images/backgrounds/bg_line.webp");
background-position: center;
background-repeat: no-repeat;
background-size: 100% 100%;
}
#affliate-login .step-item,
#affliate-register .step-item {
position: relative;
margin-bottom: 40px;
padding-left: 8px;
}
#affliate-login .step-item:last-child,
#affliate-register .step-item:last-child {
margin-bottom: 0;
}
#affliate-login .step-number,
#affliate-register .step-number {
position: absolute;
left: -50px;
top: 0;
width: 26px;
height: 26px;
background: var(--aifo-orange);
border-radius: 50%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
color: #fff;
font-size: 13px;
font-weight: 700;
z-index: 1;
}
#affliate-login .step-label,
#affliate-register .step-label {
color: var(--aifo-orange);
font-size: 15px;
font-weight: 600;
margin-bottom: 10px;
text-transform: uppercase;
letter-spacing: 0.5px;
}
#affliate-login .step-title,
#affliate-register .step-title {
color: #F9F9F9;
font-size: 15px;
font-weight: 700;
margin-bottom: 8px;
line-height: 1.4;
}
#affliate-login .step-desc,
#affliate-register .step-desc {
color: rgba(249, 249, 249, 0.65);
font-size: 14px;
line-height: 1.6;
}
@media (min-width: 992px) {
#affliate-login .login-card-col,
#affliate-register .login-card-col {
max-width: 520px;
}
#affliate-login .steps-card-col,
#affliate-register .steps-card-col {
max-width: 720px;
}
}
/* affiiate register */
#affliate-register {
height: auto;
}
#affliate-register .main-row {
min-height: 100%;
}
#affliate-register {
/* riegister submit */
/* email varify */
}
#affliate-register .verification-card {
background: #0e0e0e;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 24px;
-webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
padding: 80px 33px;
max-width: 520px;
width: 100%;
-webkit-animation: cardEnter 0.26s ease-out;
animation: cardEnter 0.26s ease-out;
}
#affliate-register .verification-card .email-icon {
height: 91px;
width: 91px;
margin: 0 auto;
}
#affliate-register .verification-card .email-icon img {
width: 100%;
height: 100%;
}
@-webkit-keyframes cardEnter {
from {
opacity: 0;
-webkit-transform: scale(0.98);
transform: scale(0.98);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
@keyframes cardEnter {
from {
opacity: 0;
-webkit-transform: scale(0.98);
transform: scale(0.98);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
@media (max-width: 575.98px) {
#affliate-register .verification-card {
padding: 36px 24px 40px;
}
}
#affliate-register .envelope-icon {
width: 72px;
height: 72px;
margin: 0 auto 18px;
-webkit-filter: drop-shadow(0 4px 12px rgba(249, 135, 21, 0.2));
filter: drop-shadow(0 4px 12px rgba(249, 135, 21, 0.2));
}
#affliate-register .main-title {
font-size: 25px;
font-weight: 600;
color: #F9F9F9;
text-align: center;
line-height: 1.25;
margin-bottom: 60px;
margin-top: 35px;
}
@media (max-width: 575.98px) {
#affliate-register .main-title {
font-size: 24px;
}
}
#affliate-register .info-toast {
background: #31200f;
border-radius: 14px;
padding: 13px 16px;
margin-bottom: 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
gap: 12px;
}
#affliate-register .info-icon-container {
-ms-flex-negative: 0;
flex-shrink: 0;
width: 20px;
height: 20px;
border-radius: 4px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
color: var(--aifo-white);
background: var(--aifo-orange);
font-weight: 700;
font-size: 13px;
margin-top: 1px;
}
#affliate-register .info-text {
font-size: 12.5px;
color: var(--aifo-white);
line-height: 1.5;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
}
#affliate-register .error-toast {
background: rgba(239, 68, 68, 0.18);
border-radius: 14px;
padding: 13px 16px;
margin-bottom: 16px;
display: none;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
gap: 12px;
}
#affliate-register .error-icon-container {
-ms-flex-negative: 0;
flex-shrink: 0;
width: 20px;
height: 20px;
background: rgba(127, 29, 29, 0.4);
border-radius: 4px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
color: #EF4444;
font-weight: 700;
font-size: 13px;
margin-top: 1px;
}
#affliate-register .error-text {
font-size: 12.5px;
color: rgba(249, 249, 249, 0.75);
line-height: 1.5;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
}
#affliate-register .success-toast {
background: rgba(34, 197, 94, 0.18);
border-radius: 14px;
padding: 13px 16px;
margin-bottom: 16px;
display: none;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
gap: 12px;
}
#affliate-register .success-icon-container {
-ms-flex-negative: 0;
flex-shrink: 0;
width: 20px;
height: 20px;
background: rgba(20, 83, 45, 0.4);
border-radius: 4px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
color: #22C55E;
font-weight: 700;
font-size: 13px;
margin-top: 1px;
}
#affliate-register .success-text {
font-size: 12.5px;
color: rgba(249, 249, 249, 0.75);
line-height: 1.5;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
}
#affliate-register .code-input {
width: 100%;
height: 46px;
background: rgba(0, 0, 0, 0.15);
border: 1px solid rgba(255, 255, 255, 0.15);
border-radius: 11px;
color: #F9F9F9;
font-size: 16px;
text-align: center;
padding: 0 16px;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
outline: none;
letter-spacing: 0.5em;
}
#affliate-register .code-input::-webkit-input-placeholder {
color: rgba(249, 249, 249, 0.35);
letter-spacing: normal;
}
#affliate-register .code-input::-moz-placeholder {
color: rgba(249, 249, 249, 0.35);
letter-spacing: normal;
}
#affliate-register .code-input:-ms-input-placeholder {
color: rgba(249, 249, 249, 0.35);
letter-spacing: normal;
}
#affliate-register .code-input::-ms-input-placeholder {
color: rgba(249, 249, 249, 0.35);
letter-spacing: normal;
}
#affliate-register .code-input::placeholder {
color: rgba(249, 249, 249, 0.35);
letter-spacing: normal;
}
#affliate-register .code-input:focus {
border-color: rgba(249, 135, 21, 0.5);
-webkit-box-shadow: 0 0 0 3px rgba(249, 135, 21, 0.18);
box-shadow: 0 0 0 3px rgba(249, 135, 21, 0.18);
}
#affliate-register .verify-btn {
width: 100%;
height: 46px;
background: #F98715;
color: #FFFFFF;
border: none;
border-radius: 11px;
font-size: 15px;
font-weight: 600;
margin-top: 40px;
cursor: pointer;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
position: relative;
overflow: hidden;
}
#affliate-register .verify-btn:hover:not(:disabled) {
background: #E07610;
-webkit-box-shadow: 0 4px 16px rgba(249, 135, 21, 0.3);
box-shadow: 0 4px 16px rgba(249, 135, 21, 0.3);
}
#affliate-register .verify-btn:active:not(:disabled) {
-webkit-transform: translateY(1px);
transform: translateY(1px);
}
#affliate-register .verify-btn:disabled {
opacity: 0.5;
cursor: not-allowed;
}
#affliate-register .verify-btn .btn-text {
display: inline-block;
}
#affliate-register .verify-btn .spinner {
display: none;
width: 18px;
height: 18px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-top-color: #FFFFFF;
border-radius: 50%;
-webkit-animation: spin 0.6s linear infinite;
animation: spin 0.6s linear infinite;
margin: 0 auto;
}
@-webkit-keyframes spin {
to {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes spin {
to {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
#affliate-register .verify-btn.loading .btn-text {
display: none;
}
#affliate-register .verify-btn.loading .spinner {
display: block;
}
#affliate-register .resend-section {
margin-top: 30px;
text-align: center;
font-size: 12px;
}
#affliate-register .resend-text {
color: var(--aifo-white);
}
#affliate-register .resend-link {
color: var(--aifo-orange);
text-decoration: none;
margin-left: 4px;
cursor: pointer;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
#affliate-register .resend-link:hover {
text-decoration: underline;
color: #FFA033;
}
#affliate-register .resend-link.disabled {
opacity: 0.5;
cursor: not-allowed;
pointer-events: none;
}
@media (max-width: 768px) {
#affliate-register .questionnaire-modal {
padding: 0px;
}
}
#affliate-register {
/* email varify end */
/* Questionnaire Modal Styles */
}
#affliate-register .modal-overlay {
display: none;
position: fixed;
top: 0;
left: 0;
bottom: 0;
width: 100%;
height: 100%;
height: auto;
background-color: #000;
background-image: url("../images/backgrounds/academy/bg_all_grid.webp");
z-index: 1000;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
#affliate-register .modal-overlay::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
z-index: -1;
background-image: url(../images/backgrounds/a_bg_reg.webp);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
background-size: 100% 100%;
height: 500px;
}
#affliate-register .questionnaire-modal {
border-radius: 20px;
padding: 40px;
max-width: 712px;
width: 100%;
max-height: unset;
position: relative;
}
#affliate-register {
/* question step start*/
}
#affliate-register .main-container {
position: relative;
z-index: 2;
width: 100%;
min-height: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
padding: 40px 16px;
}
#affliate-register .questionnaire-card {
background: rgba(20, 20, 20, 0.92);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 20px;
-webkit-box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55);
box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55);
max-width: 780px;
width: 100%;
max-height: calc(100% - 80px);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
overflow: hidden;
}
#affliate-register .card-content {
padding: 36px;
overflow-y: auto;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
}
#affliate-register .back-button {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 10px;
text-decoration: none;
margin-bottom: 32px;
cursor: pointer;
border: none;
background: transparent;
padding: 0;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
#affliate-register .back-icon {
width: 22px;
height: 22px;
background: var(--aifo-orange);
border-radius: 5px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
color: white;
font-size: 14px;
font-weight: bold;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
}
#affliate-register .back-button:hover .back-icon {
-webkit-box-shadow: 0 0 12px rgba(249, 135, 21, 0.4);
box-shadow: 0 0 12px rgba(249, 135, 21, 0.4);
}
#affliate-register .back-text {
color: #F9F9F9;
font-size: 16px;
font-weight: 500;
}
#affliate-register .question-section {
margin-bottom: 26px;
}
#affliate-register .question-title {
color: #ffffff;
font-size: 17px;
font-weight: 600;
line-height: 1.4;
margin-bottom: 16px;
}
#affliate-register .options-container {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
#affliate-register .custom-checkbox {
position: relative;
padding-left: 0;
margin-bottom: 0;
}
#affliate-register .custom-checkbox label {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
cursor: pointer;
color: #ffffff;
font-size: 14px;
font-weight: 300;
line-height: 1.4;
padding: 10px 4px;
background: transparent;
border: none;
border-radius: 8px;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#affliate-register .custom-checkbox label:hover {
opacity: 0.8;
}
#affliate-register .custom-checkbox input[type=checkbox] {
position: absolute;
opacity: 0;
}
#affliate-register .checkbox-custom {
min-width: 18px;
width: 18px;
height: 18px;
background: #2a2a2a;
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 4px;
margin-right: 10px;
margin-top: 1px;
position: relative;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
-ms-flex-negative: 0;
flex-shrink: 0;
}
#affliate-register .checkbox-custom::after {
content: "✓";
position: absolute;
top: 17%;
left: 38%;
-webkit-transform: translate(-50%, -50%) scale(0);
transform: translate(-50%, -50%) scale(0);
color: white;
font-size: 12px;
font-weight: bold;
-webkit-transition: -webkit-transform 0.2s ease;
transition: -webkit-transform 0.2s ease;
transition: transform 0.2s ease;
transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
#affliate-register .custom-checkbox input[type=checkbox]:checked + label .checkbox-custom {
background: #F98715;
border-color: #F98715;
}
#affliate-register .custom-checkbox input[type=checkbox]:checked + label .checkbox-custom::after {
-webkit-transform: translate(-50%, -50%) scale(1);
transform: translate(-50%, -50%) scale(1);
}
#affliate-register .question-section.has-error .question-title {
color: #ffffff;
}
#affliate-register .cta-section {
padding: 24px 36px;
background: rgba(20, 20, 20, 0.95);
border-top: 1px solid rgba(255, 255, 255, 0.08);
position: sticky;
bottom: 0;
z-index: 10;
}
#affliate-register .cta-button {
width: 100%;
height: 54px;
background: #F98715;
color: #ffffff;
font-size: 19px;
font-weight: 600;
border: none;
border-radius: 11px;
cursor: pointer;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
-webkit-box-shadow: 0 4px 14px rgba(249, 135, 21, 0.15);
box-shadow: 0 4px 14px rgba(249, 135, 21, 0.15);
}
#affliate-register .cta-button:hover:not(:disabled) {
background: #ff9a2e;
-webkit-box-shadow: 0 10px 24px rgba(249, 135, 21, 0.35);
box-shadow: 0 10px 24px rgba(249, 135, 21, 0.35);
-webkit-transform: translateY(-1px);
transform: translateY(-1px);
}
#affliate-register .cta-button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
#affliate-register {
/* Mobile adaptation */
}
@media (max-width: 767px) {
#affliate-register .main-container {
padding: 20px 16px;
}
#affliate-register .questionnaire-card {
max-height: calc(100% - 40px);
}
#affliate-register .card-content {
padding: 24px;
}
#affliate-register .question-title {
font-size: 16px;
}
#affliate-register .options-container {
grid-template-columns: 1fr;
}
#affliate-register .cta-section {
padding: 20px 24px;
}
#affliate-register .cta-button {
height: 52px;
font-size: 18px;
}
#affliate-register .questionnaireModalStep .questionnaire-modal .question_content {
max-height: 559px;
padding-right: 20px;
}
#affliate-register .questionnaireModalStep .questionnaire-modal .card-content {
padding: 24px 14px;
}
}
#affliate-register {
/* Tablet adaptation */
}
@media (min-width: 768px) and (max-width: 991px) {
#affliate-register .questionnaire-card {
max-width: 90%;
}
}
#affliate-register {
/* Scrollbar styles */
}
#affliate-register .card-content::-webkit-scrollbar {
width: 8px;
}
#affliate-register .card-content::-webkit-scrollbar-track {
background: rgba(255, 255, 255, 0.05);
border-radius: 4px;
}
#affliate-register .card-content::-webkit-scrollbar-thumb {
background: rgba(249, 135, 21, 0.3);
border-radius: 4px;
}
#affliate-register .card-content::-webkit-scrollbar-thumb:hover {
background: rgba(249, 135, 21, 0.5);
}
#affliate-register .question_content {
height: auto;
min-height: 100px;
max-height: 650px;
overflow-y: scroll;
overflow-x: hidden;
grid-template-columns: repeat(2, 356px);
grid-gap: 22px;
padding-right: 40px;
}
#affliate-register .question_content::-webkit-scrollbar {
width: 8px;
}
#affliate-register .question_content::-webkit-scrollbar-thumb {
background: #F98715;
border-radius: 5px;
}
#affliate-register {
/* sub question step 2 */
/* question step end*/
}
/* Responsive */
@media (max-width: 991px) {
.login-card {
margin-bottom: 30px;
}
.right-block {
margin-top: 25px;
}
}
@media (max-width: 991px) {
.login-page {
height: auto;
}
.mb-hidden {
display: none !important;
}
}
@media (max-width: 768px) {
.login-page {
height: auto;
}
.mb-hidden {
display: none !important;
}
}
@media (max-width: 767px) {
.login-page {
height: 100%;
padding: 40px 0;
}
.login-page .navbar-brand {
position: unset;
left: unset;
top: unset;
-webkit-transform: unset;
transform: unset;
}
.login-page .login-card {
padding: 28px 22px;
}
.login-page .login-title {
font-size: 26px;
}
.login-page .form-control {
height: 50px;
}
.login-page .btn-aifo-primary {
height: 52px;
}
.login-page .social-btn {
width: 44px;
height: 44px;
}
.login-page .small-cards-row {
grid-template-columns: 1fr;
}
.login-page .feature-card-large {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
text-align: center;
}
.login-page .feature-icon-container {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.login-page .trial-decoration {
margin-top: 20px;
min-height: 150px;
}
.login-page .circle-container {
width: 140px;
height: 140px;
}
.login-page .circle-outer {
width: 140px;
height: 140px;
}
.login-page .circle-middle {
width: 100px;
height: 100px;
}
.login-page .circle-inner {
width: 60px;
height: 60px;
}
.login-page .play-button {
width: 52px;
height: 52px;
}
.login-page .play-button svg {
width: 24px;
height: 24px;
}
.login-page .feature-icon-container {
width: 100%;
}
.login-page .feature-card.school .feature-icon {
position: unset;
top: 50%;
-webkit-transform: unset;
transform: unset;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.trial-decoration {
-ms-flex-preferred-size: 35%;
flex-basis: 35%;
}
.circle-container {
width: 150px;
height: 150px;
}
.circle-outer {
width: 150px;
height: 150px;
}
.circle-middle {
width: 110px;
height: 110px;
}
.circle-inner {
width: 70px;
height: 70px;
}
}