@import"https://fonts.googleapis.com/css2?family=Cookie&family=Cutive+Mono&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap";*{margin:0;padding:0;box-sizing:border-box;font-family:Playfair Display,serif}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#1a0033,#306,#1a1a4d,#0d0020,#1a0033);background-size:400% 400%;animation:ultraSlowGradient 60s ease infinite;font-family:Montserrat,sans-serif}@keyframes ultraSlowGradient{0%{background-position:0% 50%}25%{background-position:50% 0%}50%{background-position:100% 50%}75%{background-position:50% 100%}to{background-position:0% 50%}}.app-container{width:100%;min-height:100vh;padding:30px 25px;display:flex;flex-direction:column;align-items:center;gap:32px;background:transparent;border:none;box-shadow:none;animation:fadeIn .6s ease}@media(min-width:768px){.app-container{padding:40px;gap:40px}}@media(min-width:1024px){.app-container{padding:50px 60px;gap:48px}}.app-container section,.app-container header{width:100%;max-width:800px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.app-header{text-align:center;padding-bottom:10px}.app-title{color:#3700c1;text-shadow:1px 1px 0px rgba(0,0,0,.255);text-align:center;margin-bottom:8px;font-size:32px;font-weight:700}.app-subtitle{color:#b4a0ffcc;font-size:14px;margin:0;font-weight:400;letter-spacing:.5px}.form-section{width:100%;padding:24px 20px;border-radius:14px;background:#ffffff05;border:1px solid rgba(139,135,255,.15)}.progress-section{width:100%;padding:20px;border-radius:14px;background:#ffffff05;border:1px solid rgba(139,135,255,.15)}.content-section{width:100%;display:flex;flex-direction:column;gap:24px}.form-wrapper{width:100%}.input-row{display:flex;gap:14px;margin-bottom:14px;align-items:center}.input-row input{flex:1;padding:12px 16px;border-radius:12px;border:1px solid rgba(94,124,255,.904);background:#ffffff1a;color:#6735ff;font-size:15px;outline:none;transition:.3s ease;height:40px}.input-row input::placeholder{color:#002fff}.input-row input:focus{border-color:#5baaff;box-shadow:0 0 15px #00425e;background:#ffffff26}.priority-select{padding:10px 14px;border-radius:12px;border:2px solid rgba(94,124,255,.5);background:#ffffff0d;color:#6735ff;font-size:15px;font-weight:600;cursor:pointer;outline:none;transition:all .25s cubic-bezier(.4,0,.2,1);min-width:120px;height:40px;box-shadow:0 2px 8px #5e7cff1a}.priority-select option{background:#1a1a4d;color:#6735ff;padding:10px}.priority-select:hover{border-color:#5e7cffcc;background:#5e7cff1a;box-shadow:0 4px 12px #5e7cff33}.priority-select:focus,.priority-select:focus-visible{border-color:#5baaff;box-shadow:0 0 0 3px #5baaff33,0 0 20px #5baaff66;background:#ffffff1a;transform:translateY(-1px)}input[type=checkbox]{width:20px;height:20px;accent-color:#006aff;cursor:pointer;flex-shrink:0;margin-right:8px}button{padding:12px 22px;border-radius:12px;border:none;cursor:pointer;font-weight:600;background:linear-gradient(135deg,#756eff,#5733ff);color:#fff;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:15px;height:auto;min-height:40px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #5733ff4d;position:relative;overflow:hidden}button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#fff3;transition:left .3s ease}button:hover{background:linear-gradient(135deg,#8a7bff,#6d47ff);transform:translateY(-2px);box-shadow:0 8px 20px #5733ff66}button:hover:before{left:100%}button:focus,button:focus-visible{outline:2px solid #5baaff;outline-offset:2px;box-shadow:0 0 0 3px #5baaff4d,0 8px 20px #5733ff66}button:active{transform:translateY(0);box-shadow:0 2px 8px #5733ff4d}.error-text{color:red;font-size:13px;margin-bottom:14px;font-weight:500;padding:8px 12px;border-radius:6px;background:#ff000014}.progress-bar{border:1px solid #8a8aff;width:100%;height:16px;border-radius:999px;background:#2d01cc0f;overflow:hidden;margin-top:14px}.progress-fill{height:100%;background:linear-gradient(90deg,#756eff,#1900ff);transition:width .4s ease;box-shadow:0 0 15px #000005}ul{list-style:none;margin:0;width:100%;max-width:800px;display:flex;flex-direction:column;gap:12px}li{color:#7644ff;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffff05;padding:16px 18px;border-radius:12px;border:1px solid rgba(134,87,252,.248);transition:.3s ease}li:hover{color:#b6b6ff;transform:translateY(-1px);background:#8587fb2a}li.priority-high{border:2px solid #ff6b6b;background:#ff6b6b1a}li.priority-high:hover{background:#ff6b6b33;border-color:#f33}li.priority-medium{border:2px solid #ffa500;background:#ffa5001a}li.priority-medium:hover{background:#ffa50033;border-color:#ff8c00}li.priority-low{border:2px solid #6bff6b;background:#6bff6b1a}li.priority-low:hover{background:#6bff6b33;border-color:#3f3}.task-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.priority-badge{padding:6px 12px;border-radius:14px;font-size:13px;font-weight:700;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.priority-badge.priority-high{background:#ff00004d;color:#ff6b6b;border:1px solid #ff6b6b}.priority-badge.priority-medium{background:#ffa5004d;color:orange;border:1px solid #ffa500}.priority-badge.priority-low{background:#00ff004d;color:#6bff6b;border:1px solid #6bff6b}li button{color:#fff;background:linear-gradient(135deg,#d32f2f,#b71c1c);padding:8px 14px;white-space:nowrap;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:12px;transition:all .2s ease;box-shadow:0 2px 6px #d32f2f33}li button:hover{background:linear-gradient(135deg,#f44336,#d32f2f);transform:translateY(-1px);box-shadow:0 4px 12px #d32f2f4d}li button:active{transform:translateY(0);box-shadow:0 1px 4px #d32f2f33}.ptext{color:#4335ff}.edit-input{padding:10px 14px;border-radius:8px;border:2px solid rgba(94,124,255,.5);background:#ffffff0f;color:#6735ff;font-size:14px;outline:none;transition:all .25s cubic-bezier(.4,0,.2,1);flex:1;height:36px;box-shadow:0 2px 6px #5e7cff1a}.edit-input:hover{border-color:#5e7cffcc;background:#ffffff14;box-shadow:0 3px 10px #5e7cff26}.edit-input:focus,.edit-input:focus-visible{border-color:#5baaff;box-shadow:0 0 0 2px #5baaff33,0 0 15px #5baaff4d;background:#ffffff1a;transform:translateY(-1px)}.edit-btn{color:#fff;background:linear-gradient(135deg,#1ba845,#138a35);padding:8px 14px;font-size:13px;height:auto;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #1ba84533}.edit-btn:hover{background:linear-gradient(135deg,#1fbd52,#16a639);transform:translateY(-1px);box-shadow:0 4px 12px #1ba8454d}.edit-btn:active{transform:translateY(0);box-shadow:0 1px 4px #1ba84533}.save-btn{color:#fff;background:linear-gradient(135deg,green,#006b00);padding:8px 14px;font-size:13px;height:auto;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #00800033}.save-btn:hover{background:linear-gradient(135deg,#00a300,#008c00);transform:translateY(-1px);box-shadow:0 4px 12px #0080004d}.save-btn:active{transform:translateY(0);box-shadow:0 1px 4px #00800033}.cancel-btn{color:#fff;background:linear-gradient(135deg,#d32f2f,#b71c1c);padding:8px 14px;font-size:13px;height:auto;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #d32f2f33}.cancel-btn:hover{background:linear-gradient(135deg,#f44336,#d32f2f);transform:translateY(-1px);box-shadow:0 4px 12px #d32f2f4d}.cancel-btn:active{transform:translateY(0);box-shadow:0 1px 4px #d32f2f33}.search-filter-section{display:flex;flex-direction:column;gap:24px;padding:24px 20px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(139,135,255,.25)}.search-wrapper{display:flex;flex-direction:column;gap:10px}.search-input{padding:12px 16px;border-radius:10px;border:2px solid rgba(94,124,255,.5);background:#ffffff0f;color:#c8b4ff;font-size:15px;outline:none;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%;font-weight:500;height:40px;box-shadow:0 2px 8px #5e7cff1a}.search-input::placeholder{color:#c8b4ff66;transition:color .25s ease}.search-input:hover{border-color:#5e7cffcc;background:#ffffff14;box-shadow:0 4px 12px #5e7cff33}.search-input:focus,.search-input:focus-visible{border-color:#5baaff;background:#ffffff1a;box-shadow:0 0 0 3px #5baaff33,0 0 20px #5baaff66;transform:translateY(-1px)}.filter-wrapper{display:flex;flex-direction:column;gap:14px}.filter-label{font-size:13px;font-weight:600;color:#b4a0ffe6;text-transform:uppercase;letter-spacing:.5px}.filter-buttons{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap}.filter-btn{padding:10px 20px;border-radius:10px;border:2px solid rgba(94,124,255,.5);background:#ffffff0a;color:#b4a0ff;font-weight:600;font-size:14px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);text-transform:capitalize;height:40px;display:inline-flex;align-items:center;box-shadow:0 2px 6px #0000001a}.filter-btn:hover{border-color:#5baaffcc;background:#5e7cff1f;color:#b6b6ff;box-shadow:0 4px 12px #5e7cff33;transform:translateY(-2px)}.filter-btn:focus,.filter-btn:focus-visible{outline:2px solid #5baaff;outline-offset:1px}.filter-btn.active{background:linear-gradient(135deg,#3700c1,#5baaff);border-color:#5baaff;color:#fff;box-shadow:0 0 0 3px #3700c133,0 4px 15px #3700c166;font-weight:700}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 30px;text-align:center;animation:fadeIn .6s ease;width:100%;min-height:300px}.empty-state-icon{font-size:80px;margin-bottom:24px;display:block;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.empty-state-title{font-size:28px;color:#b6b6ff;margin-bottom:14px;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.3)}.empty-state-subtitle{font-size:15px;color:#b4a0ffcc;max-width:400px;line-height:1.7;margin:0;font-weight:400;letter-spacing:.3px}.no-todos-message{text-align:center;padding:30px 20px;color:#b4a0ffb3;font-size:15px;font-style:italic;border-radius:10px;background:#ffffff05;border:1px dashed rgba(94,124,255,.3)}
