.wrapper {
max-width: 560px;
margin: 48px auto;
padding: 24px;
background: #ffffff;
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}
.title {
font-size: 24px;
font-weight: 700;
margin: 0 0 16px;
}
.form {
display: flex;
gap: 8px;
margin-bottom: 16px;
}
.input {
flex: 1;
padding: 12px 14px;
border: 1px solid #e5e7eb;
border-radius: 10px;
font-size: 14px;
outline: none;
transition: box-shadow .2s, border-color .2s;
}
.input:focus {
border-color: #60a5fa;
box-shadow: 0 0 0 4px rgba(96,165,250,.2);
}
.addBtn {
padding: 12px 16px;
border-radius: 10px;
border: none;
background: #2563eb;
color: #fff;
font-weight: 600;
cursor: pointer;
transition: transform .06s ease, opacity .2s;
}
.addBtn:disabled {
opacity: .6;
cursor: not-allowed;
}
.addBtn:active {
transform: translateY(1px);
}
.list {
list-style: none;
margin: 0;
margin-top: 16px;
padding: 0;
display: grid;
gap: 8px;
}
.item {
display: flex;
align-items: center;
gap: 10px;
padding: 12px 14px;
border: 1px solid #eef2f7;
border-radius: 12px;
background: #f9fafb;
transition: background .2s, box-shadow .2s, border-color .2s;
}
.item:hover {
background: #ffffff;
border-color: #e5e7eb;
box-shadow: 0 6px 16px rgba(0,0,0,0.05);
}
.text {
flex: 1;
cursor: pointer;
user-select: none;
line-height: 1.4;
}
.completed {
text-decoration: line-through;
color: #9ca3af;
}
.deleteBtn {
border: none;
background: transparent;
width: 36px;
height: 36px;
border-radius: 10px;
cursor: pointer;
font-size: 16px;
transition: background .2s, transform .06s ease;
}
.deleteBtn:hover {
background: #fee2e2;
}
.deleteBtn:active {
transform: translateY(1px);
}