@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap'); :root { --bg-dark: hsl(222, 47%, 7%); --bg-card: hsla(222, 47%, 11%, 0.7); --border-color: hsla(217, 32%, 22%, 0.5); --primary: hsl(263, 90%, 60%); --primary-hover: hsl(263, 90%, 65%); --primary-gradient: linear-gradient(135deg, hsl(263, 90%, 60%) 0%, hsl(220, 95%, 50%) 100%); --accent: hsl(180, 100%, 50%); --accent-glow: hsla(180, 100%, 50%, 0.15); --text-main: hsl(210, 40%, 98%); --text-muted: hsl(215, 20%, 70%); --success: hsl(142, 70%, 45%); --error: hsl(0, 84%, 60%); --warning: hsl(38, 92%, 50%); --radius-sm: 8px; --radius-md: 12px; --radius-lg: 20px; --shadow-glow: 0 0 25px -5px hsla(263, 90%, 60%, 0.3); --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } * { box-sizing: border-box; margin: 0; padding: 0; } body { background-color: var(--bg-dark); color: var(--text-main); font-family: 'Inter', sans-serif; min-height: 100vh; display: flex; flex-direction: column; overflow-x: hidden; background-image: radial-gradient(at 10% 20%, hsla(263, 90%, 50%, 0.1) 0px, transparent 50%), radial-gradient(at 90% 80%, hsla(220, 95%, 50%, 0.08) 0px, transparent 50%); } h1, h2, h3, h4, .brand-title { font-family: 'Outfit', sans-serif; } a { color: var(--accent); text-decoration: none; transition: var(--transition); } a:hover { filter: brightness(1.2); text-shadow: 0 0 8px var(--accent-glow); } /* Glassmorphism Panel */ .glass-panel { background: var(--bg-card); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid var(--border-color); border-radius: var(--radius-lg); box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37); } /* Buttons */ .btn { display: inline-flex; align-items: center; justify-content: center; padding: 12px 24px; font-size: 0.95rem; font-weight: 600; border-radius: var(--radius-md); border: none; cursor: pointer; transition: var(--transition); font-family: 'Outfit', sans-serif; } .btn-primary { background: var(--primary-gradient); color: #fff; box-shadow: var(--shadow-glow); } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 0 30px -2px hsla(263, 90%, 60%, 0.5); } .btn-secondary { background: hsla(217, 32%, 17%, 0.6); color: var(--text-main); border: 1px solid var(--border-color); } .btn-secondary:hover { background: hsla(217, 32%, 22%, 0.8); transform: translateY(-2px); } /* Form Inputs */ .form-group { margin-bottom: 20px; display: flex; flex-direction: column; gap: 8px; } .form-label { font-size: 0.85rem; font-weight: 500; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; } .form-control { background: hsla(217, 32%, 12%, 0.5); border: 1px solid var(--border-color); border-radius: var(--radius-md); padding: 12px 16px; color: var(--text-main); font-size: 0.95rem; outline: none; transition: var(--transition); } .form-control:focus { border-color: var(--primary); box-shadow: 0 0 15px -3px hsla(263, 90%, 60%, 0.25); background: hsla(217, 32%, 15%, 0.7); } /* Alert notifications */ .alert { padding: 14px 20px; border-radius: var(--radius-md); margin-bottom: 20px; font-size: 0.9rem; font-weight: 500; display: flex; align-items: center; border: 1px solid transparent; } .alert-success { background: hsla(142, 70%, 45%, 0.15); color: var(--success); border-color: hsla(142, 70%, 45%, 0.3); } .alert-error { background: hsla(0, 84%, 60%, 0.15); color: var(--error); border-color: hsla(0, 84%, 60%, 0.3); }