Implement car reservation schedule management system

Co-authored-by: pdf114514 <57948770+pdf114514@users.noreply.github.com>
Agent-Logs-Url: https://github.com/pdf114514/CarReservation/sessions/1d8c6b05-0e8d-4484-a2d8-8d427dfad9cb
This commit is contained in:
copilot-swe-agent[bot]
2026-03-20 18:03:33 +00:00
parent 3458e4d376
commit 50d3803610
22 changed files with 4500 additions and 0 deletions

View File

@@ -0,0 +1,201 @@
.container {
max-width: 900px;
margin: 32px auto;
padding: 0 24px;
}
.heading {
font-size: 22px;
font-weight: 700;
margin-bottom: 24px;
color: #1a56db;
}
.subHeading {
font-size: 16px;
font-weight: 600;
margin-bottom: 12px;
color: #374151;
}
.addCard {
background: white;
border-radius: 10px;
padding: 20px;
margin-bottom: 24px;
box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}
.form {
display: flex;
flex-direction: column;
gap: 12px;
}
.formRow {
display: flex;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}
.input {
border: 1.5px solid #d1d5db;
border-radius: 6px;
padding: 8px 12px;
font-size: 14px;
outline: none;
transition: border-color 0.15s;
flex: 1;
min-width: 120px;
}
.input:focus {
border-color: #1a56db;
}
.btnPrimary {
background: #1a56db;
color: white;
border: none;
padding: 8px 20px;
border-radius: 6px;
font-size: 14px;
font-weight: 600;
white-space: nowrap;
transition: background 0.15s;
}
.btnPrimary:hover:not(:disabled) {
background: #1447c0;
}
.btnPrimary:disabled {
opacity: 0.6;
cursor: not-allowed;
}
.tableWrapper {
background: white;
border-radius: 10px;
box-shadow: 0 1px 4px rgba(0,0,0,0.08);
overflow: hidden;
}
.table {
width: 100%;
border-collapse: collapse;
font-size: 14px;
}
.table th {
background: #f3f4f6;
padding: 12px 16px;
text-align: left;
font-weight: 600;
color: #374151;
border-bottom: 1.5px solid #e5e7eb;
}
.table td {
padding: 12px 16px;
border-bottom: 1px solid #f0f0f0;
vertical-align: middle;
}
.table tr:last-child td {
border-bottom: none;
}
.table tbody tr:hover {
background: #fafafa;
}
.idCell {
color: #9ca3af;
width: 50px;
}
.descCell {
color: #6b7280;
}
.actions {
display: flex;
gap: 8px;
}
.btnEdit {
background: #f3f4f6;
border: 1px solid #d1d5db;
color: #374151;
padding: 5px 14px;
border-radius: 5px;
font-size: 13px;
transition: background 0.15s;
}
.btnEdit:hover {
background: #e5e7eb;
}
.btnDelete {
background: #fee2e2;
border: 1px solid #fca5a5;
color: #dc2626;
padding: 5px 14px;
border-radius: 5px;
font-size: 13px;
transition: background 0.15s;
}
.btnDelete:hover {
background: #fecaca;
}
.btnSave {
background: #d1fae5;
border: 1px solid #6ee7b7;
color: #059669;
padding: 5px 14px;
border-radius: 5px;
font-size: 13px;
transition: background 0.15s;
}
.btnSave:hover:not(:disabled) {
background: #a7f3d0;
}
.btnCancel {
background: #f3f4f6;
border: 1px solid #d1d5db;
color: #6b7280;
padding: 5px 14px;
border-radius: 5px;
font-size: 13px;
}
.btnCancel:hover {
background: #e5e7eb;
}
.message {
text-align: center;
color: #6b7280;
padding: 24px;
}
.error {
color: #dc2626;
background: #fee2e2;
padding: 12px 16px;
border-radius: 6px;
margin-bottom: 16px;
}
.empty {
text-align: center;
color: #9ca3af;
padding: 32px;
}