feat: add bulk date management functionality and update admin interface
This commit is contained in:
@@ -225,11 +225,101 @@
|
||||
background: #fff0f2;
|
||||
}
|
||||
|
||||
.delete-date-btn.is-booked,
|
||||
.delete-date-btn.is-booked:hover,
|
||||
.delete-date-btn.is-booked:focus-visible {
|
||||
border-color: #bdb7b2;
|
||||
background: #e3e0dd;
|
||||
color: #88827d;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.empty-dates {
|
||||
margin: 18px 0 0;
|
||||
color: var(--color-text-light);
|
||||
}
|
||||
|
||||
.admin-calendar {
|
||||
margin-top: 20px;
|
||||
padding: 16px;
|
||||
background: #fffefa;
|
||||
border: 1px solid #eaded1;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.calendar-header,
|
||||
.weekday-row,
|
||||
.day-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(7, 1fr);
|
||||
gap: 4px;
|
||||
}
|
||||
|
||||
.calendar-header {
|
||||
grid-template-columns: 40px 1fr 40px;
|
||||
align-items: center;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.month-label {
|
||||
margin: 0;
|
||||
color: var(--color-rose-dark);
|
||||
font-size: 1.05rem;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.month-nav-btn {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
border: 0;
|
||||
border-radius: 50%;
|
||||
background: var(--color-rose-light);
|
||||
color: var(--color-rose-dark);
|
||||
font-size: 1.2rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.month-nav-btn:disabled { opacity: 0.35; cursor: not-allowed; }
|
||||
.weekday-row { margin-bottom: 6px; }
|
||||
.weekday-row span { text-align: center; color: var(--color-text-light); font-size: 0.78rem; font-weight: 700; }
|
||||
|
||||
.day-cell {
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
aspect-ratio: 1;
|
||||
border: 0;
|
||||
border-radius: 50%;
|
||||
background: transparent;
|
||||
color: var(--color-text);
|
||||
font: inherit;
|
||||
font-weight: 700;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.day-cell.is-empty { pointer-events: none; }
|
||||
.day-cell.is-disabled { color: #d9c3cb; cursor: not-allowed; }
|
||||
.day-cell.is-today { box-shadow: inset 0 0 0 2px var(--color-rose); }
|
||||
.day-cell.is-short { background: linear-gradient(90deg, var(--color-rose) 0 50%, var(--color-rose-light) 50%); color: var(--color-white); }
|
||||
.day-cell.is-long { background: linear-gradient(135deg, var(--color-rose) 0%, var(--color-rose-dark) 100%); color: var(--color-white); }
|
||||
.day-cell.is-booked { background: #4b9b68; color: var(--color-white); cursor: not-allowed; }
|
||||
|
||||
.calendar-legend {
|
||||
display: flex;
|
||||
gap: 18px;
|
||||
margin: 12px 0 16px;
|
||||
color: var(--color-text-light);
|
||||
font-size: 0.85rem;
|
||||
}
|
||||
|
||||
.calendar-legend span { display: inline-flex; align-items: center; gap: 6px; }
|
||||
.legend-dot { width: 16px; height: 16px; border-radius: 50%; }
|
||||
.legend-dot.is-short { background: linear-gradient(90deg, var(--color-rose) 0 50%, var(--color-rose-light) 50%); }
|
||||
.legend-dot.is-long { background: var(--color-rose-dark); }
|
||||
|
||||
.date-type-label { color: var(--color-text-light); font-weight: 700; }
|
||||
|
||||
.hidden {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user