:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.todo-app{max-width:500px;margin:0 auto;padding:30px;background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #00000014;font-family:Inter,Helvetica Neue,sans-serif}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}h1{font-size:28px;font-weight:700;color:#333;margin-bottom:25px;text-align:center;position:relative}h1:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,#646cff,#a855f7);border-radius:3px}.todo-input{display:flex;margin-bottom:30px;box-shadow:0 4px 12px #0000000d;border-radius:8px;overflow:hidden}.todo-input input{flex:1;padding:14px 18px;border:1px solid #e0e0e0;font-size:16px;outline:none;transition:all .3s ease;background-color:#f9fafb;color:#333;border-radius:8px 0 0 8px}.todo-input input:focus{background-color:#fff;border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.todo-input button{padding:14px 20px;background:linear-gradient(90deg,#646cff,#535bf2);color:#fff;border:none;border-radius:0 8px 8px 0;font-weight:600;cursor:pointer;font-size:16px;transition:all .3s ease}.todo-input button:hover{background:linear-gradient(90deg,#535bf2,#4349d8);transform:translateY(-1px);box-shadow:0 4px 8px #535bf24d}.todo-list{list-style-type:none;padding:0;margin:0;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #00000008}.todo-item{display:flex;align-items:center;padding:16px;background-color:#fff;border-bottom:1px solid #f0f0f0;transition:all .2s ease}.todo-item:last-child{border-bottom:none}.todo-item:hover{background-color:#f9fafb;transform:translate(2px)}.todo-item input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid #ddd;border-radius:50%;margin-right:12px;cursor:pointer;position:relative;transition:all .2s ease}.todo-item input[type=checkbox]:checked{background-color:#646cff;border-color:#646cff}.todo-item input[type=checkbox]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);width:5px;height:10px;border-right:2px solid white;border-bottom:2px solid white}.todo-item.completed{background-color:#f9fafb}.todo-item.completed .todo-text{text-decoration:line-through;color:#a0a0a0}.todo-text{flex:1;margin:0 10px;text-align:left;font-size:16px;color:#333;transition:all .2s ease}.delete-btn{padding:8px 12px;background-color:transparent;color:#ff4757;border:1px solid #ff4757;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;opacity:.7}.todo-item:hover .delete-btn{opacity:1}.delete-btn:hover{background-color:#ff4757;color:#fff;transform:translateY(-1px);box-shadow:0 2px 5px #ff47574d}.todo-stats{display:flex;justify-content:space-between;margin-top:25px;padding:15px 20px;background-color:#f9fafb;border-radius:8px;box-shadow:0 2px 8px #00000008}.todo-stats p{margin:0;color:#555;font-size:14px;font-weight:500}.empty-message{text-align:center;color:#888;padding:40px 0;background-color:#f9fafb;border-radius:8px;font-size:16px;font-style:italic;position:relative}.empty-message:before{content:"📝";font-size:24px;display:block;margin-bottom:10px;opacity:.7}.loading-message{text-align:center;color:#646cff;padding:40px 0;background-color:#f9fafb;border-radius:8px;font-size:16px;font-style:italic;animation:pulse 1.5s infinite ease-in-out}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}
