WEBLEB
Home
Editor
Accedi
Pro
Italiano
English
Français
Español
Português
Deutsch
Italiano
हिंदी
Un codice di ytr3d3
589
ytr3d3
Apri nell'Editor
Pubblica il Tuo Codice
Consigliato
24 January 2025
Casella di accesso/registrazione rotazione 3D
26 May 2025
Un codice di mironovbogdan341
23 November 2024
Pagina di destinazione - Mobili Inc
HTML
Copy
Document
Вход
Войти
Забыли пароль?
Регистрация
Зарегистрироваться
Восстановление
Отправить
Вернуться назад
Подтверждение
Подтвердить
Вернуться назад
CSS
Copy
:root { --bg: #101010; --auth-bg: #101010; --auth-text: #fff; } body { margin: 0; padding: 0; min-height: 100vh; background: linear-gradient( 350deg, #5b72f3, #8B9BFA, #6B7280, #4B5563, #395375, #373d80, #203552, #1E3A8A, #3c65d6, #33569c, #162b53, #18243a, #3b5996, #375daa, #103c94, #2c426d ); background-size: 400% 400%; animation: gradient 30s ease infinite; } @keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .auth-form{ background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 24px; margin: 0 8rem 0 8rem; padding: 40px; transform-style: preserve-3d; transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1), inset 0 0 80px rgba(255, 255, 255, 0.05), inset 0 0 20px rgba(255, 255, 255, 0.05), 0 0 0 1px rgba(255, 255, 255, 0.1); position: relative; } .auth-container{ position: fixed; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: space-between; perspective: 2000px; } .card-content{ display: flex; flex-direction: column; align-items: center; justify-content: center; } .auth-button{ position: relative; width: 200px; margin: 25px 0; padding: 15px 30px; font-size: 1.1rem; font-weight: 500; color: #ffffff; background: linear-gradient(135deg, #ff6b6b, #ff4757); border: none; border-radius: 12px; cursor: pointer; transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1); box-shadow: 0 5px 15px rgba(255, 71, 87, 0.3), inset 0 0 15px rgba(255, 255, 255, 0.1); overflow: hidden; } .auth-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.2), transparent ); transition: 0.5s; } .auth-button:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(255, 71, 87, 0.4), inset 0 0 20px rgba(255, 255, 255, 0.2); } .auth-button:hover::before { left: 100%; } #forgot-password { color: rgba(255, 255, 255, 0.7); font-size: 0.9rem; text-decoration: none; margin-top: 15px; transition: all 0.3s ease; position: relative; display: inline-block; cursor: pointer; } #forgot-password::after { content: ''; position: absolute; width: 100%; height: 1px; bottom: -2px; left: 0; background: rgba(255, 255, 255, 0.3); transform: scaleX(0); transition: transform 0.3s ease; } #forgot-password:hover { color: #ffffff; text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } #forgot-password:hover::after { transform: scaleX(1); } .auth-card{ padding: 20px; position: relative; transform-style: preserve-3d; z-index: 1; transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1); backface-visibility: hidden; } .recovery-card h2, .verification-card h2, .auth-card h2 { color: #ffffff; font-size: 2rem; margin-bottom: 30px; text-align: center; font-weight: 600; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); letter-spacing: 1px; } .auth-input{ display: flex; flex-direction: column; flex-wrap: nowrap; } .auth-input input{ width: calc(100% - 20px); font-size: 1rem; margin: 12px 0; padding: 16px; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 12px; background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(5px); color: #fff; transition: all 0.3s ease; } .auth-input input::placeholder{ color: #fff; } .auth-input input:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.3); } .auth-input input:focus{ outline: none; background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.5); box-shadow: 0 0 20px rgba(255, 255, 255, 0.1), inset 0 0 10px rgba(255, 255, 255, 0.05); transform: translateZ(5px); } .login-form { transform: rotateY(25deg) translateZ(-100px) translateX(-50px); } .register-form { transform: rotateY(-25deg) translateZ(-100px) translateX(50px); } .login-form:hover { transform: rotateY(15deg) translateZ(50px) translateX(30px); box-shadow: -20px 20px 40px rgba(0, 0, 0, 0.3); background: rgba(25, 25, 25, 0.3); border: 1px solid rgba(255, 255, 255, 0.15); } .register-form:hover { transform: rotateY(-15deg) translateZ(50px) translateX(-30px); box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.3); background: rgba(25, 25, 25, 0.3); border: 1px solid rgba(255, 255, 255, 0.15); } /* Обновляем стили для карточек */ .auth-card { padding: 20px; position: relative; transform-style: preserve-3d; z-index: 1; transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1); backface-visibility: hidden; } /* Стили для основной карточки */ .main-card { transform: translateZ(0); } /* Добавляем анимации для карточек */ @keyframes endpoint-recovery { 0% { opacity: 0; visibility: visible; transform: translate(-50%, -50%) rotateY(0deg) translateZ(-100px); } 100% { opacity: 1; visibility: visible; transform: rotateY(-25deg) translateZ(-100px) translateX(100%) translateY(-50%); } } @keyframes endpoint-verification { 0% { opacity: 0; visibility: visible; transform: translate(50%, -50%) rotateY(0deg) translateZ(-100px); } 100% { opacity: 1; visibility: visible; transform: rotateY(25deg) translateZ(-100px) translateX(-50px) translateY(-50%); } } /* Обновляем стили для карточки восстановления */ .recovery-card { position: absolute; top: 50%; left: 35%; /* Центрируем карточку */ padding: 40px; background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: 24px; opacity: 0; visibility: hidden; transform: translate(-50%, -50%) rotateY(0deg) translateZ(-100px); transition: none; /* Убираем transition, будем использовать animation */ border: 1px solid rgba(255, 255, 255, 0.2); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1), inset 0 0 80px rgba(255, 255, 255, 0.05); } /* Обновляем стили для карточки верификации */ .verification-card { position: absolute; top: 50%; left: 35%; /* Центрируем карточку */ padding: 40px; background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: 24px; opacity: 0; visibility: hidden; transform: translate(-50%, -50%) rotateY(0deg) translateZ(-100px); transition: none; /* Убираем transition, будем использовать animation */ border: 1px solid rgba(255, 255, 255, 0.2); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1), inset 0 0 80px rgba(255, 255, 255, 0.05); } /* Применяем анимации при показе карточек */ .show-recovery .recovery-card { animation: endpoint-recovery 0.8s cubic-bezier(0.23, 1, 0.32, 1) forwards; } .show-verification .verification-card { animation: endpoint-verification 0.8s cubic-bezier(0.23, 1, 0.32, 1) forwards; } /* Обновляем поведение карточки восстановления при показе верификации */ .show-verification .recovery-card { transform: rotateY(-35deg) translateZ(-100px) translateX(50%) translateY(-50%); } /* Стили для кнопки "Вернуться назад" */ .back-to-login { color: rgba(255, 255, 255, 0.7); font-size: 0.9rem; text-decoration: none; margin-top: 15px; transition: all 0.3s ease; position: relative; display: inline-block; cursor: pointer; } .back-to-login::after { content: ''; position: absolute; width: 100%; height: 1px; bottom: -2px; left: 0; background: rgba(255, 255, 255, 0.3); transform: scaleX(0); transition: transform 0.3s ease; } .back-to-login:hover { color: #ffffff; text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } .back-to-login:hover::after { transform: scaleX(1); } /* Стили для кнопки "Вернуться к восстановлению" */ .back-to-recovery { color: rgba(255, 255, 255, 0.7); font-size: 0.9rem; text-decoration: none; margin-top: 15px; transition: all 0.3s ease; position: relative; display: inline-block; cursor: pointer; } .back-to-recovery::after { content: ''; position: absolute; width: 100%; height: 1px; bottom: -2px; left: 0; background: rgba(255, 255, 255, 0.3); transform: scaleX(0); transition: transform 0.3s ease; } .back-to-recovery:hover { color: #ffffff; text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } .back-to-recovery:hover::after { transform: scaleX(1); }
JS
Copy
/* Replace with your JS Code (Leave empty if not needed) */