todo / static /css /style.css
princelv's picture
Upload 8 files
007662e verified
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins', sans-serif;
}
body {
min-height: 100vh;
background:
linear-gradient(135deg, #0f172a, #1e293b, #334155);
display: flex;
justify-content: center;
align-items: flex-start;
padding: 40px 20px;
color: white;
}
.container {
width: 100%;
max-width: 850px;
background: rgba(255, 255, 255, 0.08);
backdrop-filter: blur(18px);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 24px;
padding: 35px;
box-shadow:
0 10px 40px rgba(0, 0, 0, 0.4);
}
.header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 30px;
flex-wrap: wrap;
gap: 20px;
}
.title {
font-size: 32px;
font-weight: 700;
background: linear-gradient(to right, #60a5fa, #38bdf8);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.task-count {
background: rgba(255, 255, 255, 0.1);
padding: 10px 18px;
border-radius: 14px;
font-size: 14px;
}
.todo-form {
display: flex;
flex-wrap: wrap;
gap: 15px;
margin-bottom: 35px;
}
.todo-form input[type="text"] {
flex: 1;
min-width: 250px;
padding: 16px;
border: none;
border-radius: 14px;
background: rgba(255, 255, 255, 0.08);
color: white;
font-size: 15px;
outline: none;
}
.todo-form input[type="text"]::placeholder {
color: #cbd5e1;
}
.file-upload {
position: relative;
overflow: hidden;
}
.file-upload input {
display: none;
}
.file-upload label {
display: flex;
align-items: center;
gap: 10px;
background: rgba(255, 255, 255, 0.08);
padding: 15px 18px;
border-radius: 14px;
cursor: pointer;
transition: 0.3s;
color: #e2e8f0;
}
.file-upload label:hover {
background: rgba(255, 255, 255, 0.15);
}
.todo-form button {
border: none;
padding: 16px 24px;
border-radius: 14px;
background: linear-gradient(to right, #3b82f6, #06b6d4);
color: white;
font-size: 15px;
font-weight: 600;
cursor: pointer;
transition: 0.3s;
}
.todo-form button:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(59, 130, 246, 0.4);
}
.todo-list {
display: flex;
flex-direction: column;
gap: 20px;
}
.todo-card {
background: rgba(255, 255, 255, 0.06);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 20px;
overflow: hidden;
transition: 0.3s;
}
.todo-card:hover {
transform: translateY(-4px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}
.todo-content {
display: flex;
gap: 20px;
padding: 20px;
flex-wrap: wrap;
}
.todo-image img {
width: 140px;
height: 140px;
object-fit: cover;
border-radius: 16px;
}
.task-details {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 10px;
}
.task-number {
color: #38bdf8;
font-size: 14px;
font-weight: 600;
}
.task-name {
font-size: 22px;
font-weight: 600;
color: white;
line-height: 1.4;
}
.task-time {
font-size: 14px;
color: #cbd5e1;
}
.action-buttons {
display: flex;
gap: 12px;
margin-top: 10px;
flex-wrap: wrap;
}
.btn {
text-decoration: none;
padding: 12px 18px;
border-radius: 12px;
font-size: 14px;
font-weight: 500;
transition: 0.3s;
display: inline-flex;
align-items: center;
gap: 8px;
}
.update-btn {
background: #0ea5e9;
color: white;
}
.update-btn:hover {
background: #0284c7;
}
.delete-btn {
background: #ef4444;
color: white;
}
.delete-btn:hover {
background: #dc2626;
}
.empty-state {
text-align: center;
padding: 60px 20px;
color: #cbd5e1;
}
.empty-state i {
font-size: 60px;
margin-bottom: 20px;
color: #38bdf8;
}
.empty-state h2 {
margin-bottom: 10px;
}
@media(max-width:768px) {
.container {
padding: 20px;
}
.todo-content {
flex-direction: column;
}
.todo-image img {
width: 100%;
height: 220px;
}
.title {
font-size: 26px;
}
.todo-form {
flex-direction: column;
}
.todo-form button {
width: 100%;
}
}