/* General Styling */ body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: #f9f9f9; margin: 0; padding: 0; line-height: 1.6; color: #333; } .container { max-width: 800px; margin: 50px auto; padding: 20px; background-color: #fff; border-radius: 15px; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); } header h1 { text-align: center; font-size: 2.5rem; color: #333; margin-bottom: 20px; } form { display: flex; flex-direction: column; gap: 15px; margin-bottom: 30px; } textarea { width: 100%; padding: 12px; font-size: 1rem; border: 1px solid #ddd; border-radius: 8px; resize: vertical; min-height: 150px; box-sizing: border-box; } button.translate-btn { position: relative; padding: 15px; font-size: 1.1rem; font-weight: bold; background-color: #4CAF50; color: white; border: none; border-radius: 8px; cursor: pointer; transition: background-color 0.3s ease; } button.translate-btn:hover { background-color: #45a049; } button.translate-btn[disabled] { background-color: #8bc34a; cursor: not-allowed; } .spinner { position: absolute; right: 20px; top: 50%; width: 20px; height: 20px; margin-top: -10px; border: 3px solid rgba(255, 255, 255, 0.6); border-top: 3px solid #fff; border-radius: 50%; animation: spin 1s linear infinite; } .hidden { display: none; } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } /* Responsive Styling */ @media screen and (max-width: 768px) { /* Other responsive styles remain the same */ } /* ... */