Spaces:
Sleeping
Sleeping
| /* ============================================ | |
| AUTH PAGES (Login / Register) | |
| ============================================ */ | |
| .auth-page { | |
| min-height: 100vh; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| padding: 2rem 1.5rem; | |
| position: relative; | |
| } | |
| .auth-page__bg { | |
| position: absolute; | |
| inset: 0; | |
| background: linear-gradient(135deg, var(--color-secondary-900) 0%, var(--color-secondary-800) 40%, var(--color-secondary-700) 70%, var(--color-primary-800) 100%); | |
| z-index: 0; | |
| } | |
| .auth-card { | |
| position: relative; | |
| z-index: 1; | |
| width: 100%; | |
| max-width: 460px; | |
| padding: 2.5rem; | |
| border-radius: var(--radius-2xl); | |
| } | |
| .auth-card__header { | |
| text-align: center; | |
| margin-bottom: 1.75rem; | |
| } | |
| .auth-card__logo { | |
| width: 56px; | |
| height: 56px; | |
| border-radius: 50%; | |
| object-fit: cover; | |
| margin-bottom: 1rem; | |
| } | |
| .auth-card__title { | |
| font-size: 1.5rem; | |
| font-weight: 800; | |
| color: var(--color-neutral-900); | |
| margin-bottom: 0.35rem; | |
| } | |
| .auth-card__subtitle { | |
| font-size: 0.88rem; | |
| color: var(--color-neutral-500); | |
| } | |
| /* Google Button */ | |
| .auth-card__google { | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 0.75rem; | |
| width: 100%; | |
| padding: 0.75rem; | |
| background: white; | |
| border: 2px solid var(--color-neutral-200); | |
| border-radius: var(--radius-lg); | |
| font-size: 0.92rem; | |
| font-weight: 600; | |
| color: var(--color-neutral-700); | |
| transition: all 0.25s ease; | |
| } | |
| .auth-card__google:hover { | |
| border-color: var(--color-neutral-300); | |
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06); | |
| } | |
| /* Divider */ | |
| .auth-card__divider { | |
| display: flex; | |
| align-items: center; | |
| gap: 1rem; | |
| margin: 1.5rem 0; | |
| } | |
| .auth-card__divider::before, | |
| .auth-card__divider::after { | |
| content: ''; | |
| flex: 1; | |
| height: 1px; | |
| background: var(--color-neutral-200); | |
| } | |
| .auth-card__divider span { | |
| font-size: 0.78rem; | |
| color: var(--color-neutral-400); | |
| white-space: nowrap; | |
| } | |
| /* Input */ | |
| .auth-card__input-wrap { | |
| position: relative; | |
| } | |
| .auth-card__input-icon { | |
| position: absolute; | |
| left: 0.85rem; | |
| top: 50%; | |
| transform: translateY(-50%); | |
| color: var(--color-neutral-400); | |
| font-size: 1rem; | |
| z-index: 1; | |
| } | |
| .auth-card__input { | |
| padding-left: 2.6rem ; | |
| } | |
| .auth-card__eye { | |
| position: absolute; | |
| right: 0.85rem; | |
| top: 50%; | |
| transform: translateY(-50%); | |
| color: var(--color-neutral-400); | |
| font-size: 1.1rem; | |
| transition: color 0.2s ease; | |
| z-index: 1; | |
| } | |
| .auth-card__eye:hover { | |
| color: var(--color-neutral-700); | |
| } | |
| /* Options Row */ | |
| .auth-card__options { | |
| display: flex; | |
| align-items: center; | |
| justify-content: space-between; | |
| margin-bottom: 1.5rem; | |
| } | |
| .auth-card__remember { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| font-size: 0.85rem; | |
| color: var(--color-neutral-600); | |
| cursor: pointer; | |
| } | |
| .auth-card__remember input { | |
| accent-color: var(--color-primary-500); | |
| } | |
| .auth-card__forgot { | |
| font-size: 0.85rem; | |
| color: var(--color-primary-500); | |
| font-weight: 500; | |
| } | |
| .auth-card__forgot:hover { | |
| text-decoration: underline; | |
| } | |
| /* Two column row */ | |
| .auth-card__row { | |
| display: grid; | |
| grid-template-columns: 1fr 1fr; | |
| gap: 1rem; | |
| } | |
| /* Terms */ | |
| .auth-card__terms { | |
| display: flex; | |
| align-items: flex-start; | |
| gap: 0.5rem; | |
| font-size: 0.82rem; | |
| color: var(--color-neutral-600); | |
| margin-bottom: 1.5rem; | |
| cursor: pointer; | |
| } | |
| .auth-card__terms input { | |
| accent-color: var(--color-primary-500); | |
| margin-top: 2px; | |
| } | |
| .auth-card__terms a { | |
| color: var(--color-primary-500); | |
| font-weight: 500; | |
| } | |
| /* Submit */ | |
| .auth-card__submit { | |
| width: 100%; | |
| padding: 0.85rem; | |
| font-size: 1rem; | |
| } | |
| .auth-card__submit:disabled { | |
| opacity: 0.7; | |
| cursor: not-allowed; | |
| } | |
| /* Back */ | |
| .auth-card__back { | |
| display: block; | |
| text-align: center; | |
| margin-top: 1rem; | |
| font-size: 0.88rem; | |
| color: var(--color-neutral-500); | |
| font-weight: 500; | |
| } | |
| .auth-card__back:hover { | |
| color: var(--color-primary-500); | |
| } | |
| /* Footer */ | |
| .auth-card__footer { | |
| text-align: center; | |
| margin-top: 1.5rem; | |
| font-size: 0.88rem; | |
| color: var(--color-neutral-500); | |
| } | |
| .auth-card__link { | |
| color: var(--color-primary-500); | |
| font-weight: 600; | |
| } | |
| .auth-card__link:hover { | |
| text-decoration: underline; | |
| } | |
| /* Responsive */ | |
| @media (max-width: 640px) { | |
| .auth-card { | |
| padding: 1.75rem; | |
| } | |
| .auth-card__row { | |
| grid-template-columns: 1fr; | |
| } | |
| } | |