/* QuantEngine AuthLayout Styles */ .auth-container { display: flex; min-height: 100vh; background: linear-gradient(135deg, var(--mud-palette-primary) 0%, var(--mud-palette-primary-dark) 100%); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } /* Left Panel - Branding */ .auth-left-panel { flex: 1; display: flex; flex-direction: column; justify-content: space-between; align-items: center; padding: 3rem; color: white; position: relative; } .auth-branding { display: flex; flex-direction: column; align-items: center; text-align: center; flex: 1; justify-content: center; } .auth-logo { margin-bottom: 2rem; animation: float 3s ease-in-out infinite; } .auth-logo ::deep svg { filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1)); font-size: 80px; color: white; } .auth-title { font-weight: 700; margin-bottom: 0.5rem; letter-spacing: 1px; } .auth-subtitle { opacity: 0.9; font-size: 1.1rem; max-width: 300px; } .auth-features { margin-top: 3rem; display: flex; flex-direction: column; gap: 1.5rem; align-items: flex-start; width: 100%; max-width: 300px; } .auth-feature { display: flex; align-items: center; gap: 1rem; opacity: 0.95; } .auth-feature ::deep svg { font-size: 24px; color: #4caf50; flex-shrink: 0; } .auth-theme-toggle { position: absolute; top: 2rem; right: 2rem; } .auth-theme-toggle ::deep button { color: white; transition: transform 0.2s ease; } .auth-theme-toggle ::deep button:hover { transform: scale(1.1); } /* Right Panel - Auth Content */ .auth-right-panel { flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 2rem; background: var(--mud-palette-background); position: relative; } .auth-mobile-header { display: flex; justify-content: space-between; align-items: center; width: 100%; margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 1px solid var(--mud-palette-divider); } .auth-mobile-header ::deep .mud-icon { color: var(--mud-palette-primary); } .auth-content { width: 100%; max-width: 450px; } .auth-content ::deep .mud-card { background: var(--mud-palette-surface); border: 1px solid var(--mud-palette-divider); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .auth-content ::deep .mud-form-control { margin-bottom: 1.5rem; } .auth-content ::deep .mud-button { text-transform: none; font-weight: 600; padding: 0.75rem 1.5rem; } .auth-content ::deep .mud-button-root { border-radius: 0.4rem; } /* Footer */ .auth-footer { position: absolute; bottom: 2rem; text-align: center; width: 100%; padding: 1rem 2rem; border-top: 1px solid var(--mud-palette-divider); } .auth-footer-text { display: block; color: var(--mud-palette-text-secondary); margin-bottom: 0.5rem; } .auth-footer-links { display: flex; justify-content: center; align-items: center; gap: 0.75rem; } .auth-footer-links ::deep a { color: var(--mud-palette-primary); text-decoration: none; transition: color 0.2s ease; } .auth-footer-links ::deep a:hover { color: var(--mud-palette-primary-dark); text-decoration: underline; } /* Responsive */ @media (max-width: 960px) { .auth-container { flex-direction: column; } .auth-left-panel { padding: 2rem; min-height: 40vh; } .auth-right-panel { padding: 3rem 2rem 5rem; min-height: 60vh; } .auth-mobile-header { display: flex; } .auth-footer { bottom: 1rem; padding: 1rem; } } @media (max-width: 600px) { .auth-right-panel { padding: 2rem 1rem 5rem; } .auth-content { max-width: 100%; } .auth-features { max-width: 100%; } .auth-footer { position: static; padding: 1rem; border-top: 1px solid var(--mud-palette-divider); margin-top: 3rem; } } /* Animation */ @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } } /* Dark Mode */ [data-theme="dark"] .auth-container { background: linear-gradient(135deg, #1e1e2e 0%, #2d2d44 100%); } [data-theme="dark"] .auth-left-panel { color: #f0f0f0; } [data-theme="dark"] .auth-right-panel { background: #121212; } /* Accessibility */ @media (prefers-reduced-motion: reduce) { .auth-logo { animation: none; } .auth-theme-toggle ::deep button { transition: none; } .auth-footer-links ::deep a { transition: none; } }