/* Basic Reset and Global Styles */ body { font-family: 'Poppins', sans-serif; margin: 0; padding: 0; background: #ffffff; display: flex; justify-content: center; align-items: center; min-height: 100vh; color: #6A1B9A; } /* Main Container */ .container { max-width: 450px; width: 100%; background-color: #f9f9f9; padding: 30px; border-radius: 15px; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); border-top: 5px solid #8A2BE2; } /* Typography */ .header { text-align: center; margin-bottom: 25px; } .header h1 { color: #8A2BE2; font-size: 2em; font-weight: 700; margin: 0 0 5px 0; } .header p { color: #6A1B9A; margin: 0; font-size: 1em; } /* Input Section */ .input-section { display: flex; gap: 10px; margin-bottom: 25px; } #task-input { flex-grow: 1; padding: 15px; border: 2px solid #D1C4E9; border-radius: 8px; font-size: 1em; color: #6A1B9A; transition: border-color 0.3s; } #task-input:focus { outline: none; border-color: #8A2BE2; } #add-btn { background-color: #8A2BE2; color: white; border: none; padding: 15px; border-radius: 8px; cursor: pointer; transition: background-color 0.3s; display: flex; align-items: center; justify-content: center; } #add-btn:hover { background-color: #6A1B9A; } #add-btn svg { stroke: white; } /* Task List */ .task-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; } .task-item { display: flex; align-items: center; justify-content: space-between; background-color: #F3E5F5; padding: 15px; border-radius: 8px; transition: background-color 0.3s; } .task-item.completed { background-color: #F3E5F5; border: 1px solid #D1C4E9; } .task-item .task-text { flex-grow: 1; margin: 0 10px; color: #6A1B9A; font-weight: 400; } .task-item.completed .task-text { text-decoration: line-through; color: #D1C4E9; } .task-item .toggle-btn { width: 24px; height: 24px; border-radius: 50%; border: 2px solid #D1C4E9; background: none; cursor: pointer; transition: background-color 0.3s, border-color 0.3s; display: flex; align-items: center; justify-content: center; } .task-item .toggle-btn:hover { border-color: #8A2BE2; } .task-item.completed .toggle-btn { background-color: #8A2BE2; border-color: #8A2BE2; } .task-item.completed .toggle-btn svg { stroke: white; } .delete-btn { background: none; border: none; cursor: pointer; padding: 5px; color: #D1C4E9; transition: color 0.3s; } .delete-btn:hover { color: #8A2BE2; } /* Empty State */ .empty-state { text-align: center; padding: 30px 0; color: #D1C4E9; display: none; flex-direction: column; align-items: center; gap: 10px; } .empty-state svg { stroke: #D1C4E9; } /* Tasks Remaining Count */ .tasks-remaining { text-align: center; margin-top: 20px; color: #6A1B9A; font-size: 0.9em; display: none; } /* Lucide icons are inlined via JavaScript, so no need for CSS */