:root{--primary:#000000;--primary-dark:#1a1a1a;--primary-light:#333333;--primary-bg:#fafafa;--white:#ffffff;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background:linear-gradient(135deg,#fafafa 0,#fff 50%,#f8fafc 100%);min-height:100vh;color:var(--gray-800);line-height:1.4}.header{background:var(--white);border-bottom:1px solid #e0e0e0;padding:2rem 0;box-shadow:0 1px 3px rgba(0,0,0,.1)}.nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:center;align-items:center;height:0}.logo{display:flex;align-items:center;justify-content:center}.logo-svg{height:250px!important;width:auto}.main-content{display:flex;align-items:center;justify-content:center;padding:3rem 1rem}.login-container{width:100%;max-width:420px}.login-card{background:var(--white);border-radius:24px;padding:3rem;box-shadow:0 2px 8px rgba(0,0,0,.15);border:1px solid var(--gray-200)}.card-header{text-align:center;margin-bottom:2.5rem}.card-header h1{font-size:2rem;font-weight:900;color:var(--gray-900);margin-bottom:.5rem}.subtitle{font-size:1rem;color:var(--gray-500);line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{position:relative}.form-input{width:100%;padding:1rem;border:2px solid var(--gray-200);border-radius:12px;font-size:1rem;font-family:var(--font-family);background:var(--white);transition:all .15s ease;outline:0;color:var(--gray-800)}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,0,0,.1)}.form-input::placeholder{color:var(--gray-400)}.form-options{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--gray-600)}.checkbox-container{display:flex;align-items:center;gap:.75rem}.checkbox-container input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary);cursor:pointer}.forgot-link{color:var(--primary);text-decoration:none;font-weight:500;transition:opacity .15s ease}.forgot-link:hover{opacity:.8}.error-message{background:#fef2f2;color:#dc2626;padding:1rem;border-radius:12px;border:2px solid #fecaca;font-size:.875rem;display:none}.error-message.show{display:block}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:var(--primary);color:var(--white);border:none;border-radius:24px;font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease;box-shadow:0 2px 8px rgba(0,0,0,.15);font-family:var(--font-family)}.btn-primary:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.btn-primary:disabled{background:var(--gray-400);cursor:not-allowed;transform:none;box-shadow:none}.divider{position:relative;text-align:center;margin:1.5rem 0}.divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:var(--gray-200)}.divider-text{background:var(--white);padding:0 1rem;color:var(--gray-500);font-size:.875rem;font-weight:500}.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:#f8f8f8;color:#333;border:none;border-radius:24px;font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease;font-family:var(--font-family)}.btn-google:hover{background:#eee;transform:translateY(-1px)}.google-icon{width:20px;height:20px}.card-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.signup-text{color:var(--gray-500);font-size:.875rem}.signup-link{color:var(--primary);text-decoration:none;font-weight:600;transition:opacity .15s ease}.signup-link:hover{opacity:.8}@media (max-width:768px){.main-content{padding:2rem 1rem}.login-card{padding:2rem;border-radius:16px}.card-header h1{font-size:1.75rem}.logo-svg{height:120px}}@media (max-width:480px){.login-card{padding:1.5rem}.card-header h1{font-size:1.5rem}.logo-svg{height:100px}}