@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'); :root { --font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; --ease-elastic: cubic-bezier(0.4, 0, 0.2, 1); /* DARK THEME (Obsidian with subtle violet glow) */ --bg-color: #050505; --fg: #ffffff; --fg-secondary: rgba(255, 255, 255, 0.6); --fg-muted: rgba(255, 255, 255, 0.4); --card-bg: rgba(255, 255, 255, 0.04); --card-border: rgba(255, 255, 255, 0.08); --card-shadow: 0 4px 20px rgba(0, 0, 0, 0.4); --card-hover-bg: rgba(255, 255, 255, 0.08); --card-hover-border: rgba(255, 255, 255, 0.15); --accent-btn-bg: rgba(255, 255, 255, 0.12); --accent-btn-hover: rgba(255, 255, 255, 0.2); --error: #ff453a; --success: #32d74b; --glow-1: rgba(140, 50, 255, 0.15); --glow-2: rgba(50, 140, 255, 0.15); } [data-theme='light'] { /* LIGHT THEME (Apple Pearl) */ --bg-color: #f5f5f7; --fg: #1d1d1f; --fg-secondary: rgba(29, 29, 31, 0.65); --fg-muted: rgba(29, 29, 31, 0.45); --card-bg: rgba(255, 255, 255, 0.6); --card-border: rgba(0, 0, 0, 0.05); --card-shadow: 0 8px 30px rgba(0, 0, 0, 0.04); --card-hover-bg: rgba(255, 255, 255, 0.9); --card-hover-border: rgba(0, 0, 0, 0.1); --accent-btn-bg: rgba(0, 0, 0, 0.06); --accent-btn-hover: rgba(0, 0, 0, 0.12); --error: #ff3b30; --success: #34c759; --glow-1: rgba(140, 50, 255, 0.2); --glow-2: rgba(50, 140, 255, 0.2); } *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } html, body { height: 100%; } body { min-height: 100vh; font-family: var(--font); color: var(--fg); background-color: var(--bg-color); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; transition: background-color 300ms ease, color 300ms ease; position: relative; } /* Premium Ambient Glow Orbs */ body::before, body::after { content: ''; position: fixed; width: 80vw; height: 80vw; border-radius: 50%; filter: blur(180px); -webkit-filter: blur(180px); z-index: -1; pointer-events: none; opacity: 0.85; transition: background 300ms ease; } body::before { top: -30vw; left: -20vw; background: var(--glow-1); } body::after { bottom: -30vw; right: -20vw; background: var(--glow-2); } a { text-decoration: none; color: inherit; } button { cursor: pointer; border: none; outline: none; font-family: var(--font); } /* Scrollbar */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: var(--card-border); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: var(--fg-muted); } /* Premium Input Styles */ input[type="text"], input[type="password"], input[type="url"], input[type="email"] { width: 100%; padding: 0.85rem 1.1rem; background: var(--card-bg); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid var(--card-border); border-radius: 12px; color: var(--fg); font-family: var(--font); font-size: 0.95rem; font-weight: 500; outline: none; transition: all 250ms ease; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02); } input:focus { border-color: var(--fg-muted); background: var(--card-hover-bg); box-shadow: 0 0 0 3px rgba(140, 50, 255, 0.15), inset 0 2px 4px rgba(0,0,0,0.02); } input::placeholder { color: var(--fg-muted); font-weight: 400; }