:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}button:focus,input:focus{outline:none}::selection{background:#667eea33;color:#333}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease}.app{min-height:100vh;background-color:#f5f5f5;padding:20px;display:flex;align-items:center;justify-content:center}.todo-container{background-color:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:30px;width:100%;max-width:500px}.header{text-align:center;margin-bottom:30px}.header h1{color:#333;font-size:2rem;margin:0 0 10px}.subtitle{color:#666;margin:0;font-size:1rem}.input-form{display:flex;gap:10px;margin-bottom:20px}.todo-input{flex:1;padding:12px 16px;border:2px solid #ddd;border-radius:8px;font-size:16px;outline:none}.todo-input:focus{border-color:#4a90e2}.todo-input::placeholder{color:#999}.add-button{padding:12px 20px;background-color:#4a90e2;color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer}.add-button:hover{background-color:#357abd}.todo-list{margin-bottom:20px}.todo-item{display:flex;align-items:center;gap:12px;padding:15px;margin-bottom:8px;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px}.todo-item:hover{box-shadow:0 2px 4px #0000001a}.todo-item.completed{opacity:.6;background-color:#f8f8f8}.todo-item.completed .todo-text{text-decoration:line-through;color:#999}.todo-checkbox{cursor:pointer}.todo-checkbox input{width:18px;height:18px;cursor:pointer}.todo-text{flex:1;font-size:16px;color:#333}.delete-button{background:none;border:none;font-size:16px;cursor:pointer;padding:5px;border-radius:4px}.delete-button:hover{background-color:#ffe6e6}.empty-state{text-align:center;padding:40px 20px;color:#999;font-size:16px}@media (max-width: 768px){.app{padding:10px}.todo-container{padding:20px}.header h1{font-size:1.5rem}.input-form{flex-direction:column}.add-button{width:100%}}
