PlanTempusApp/PlanTempus.Application/wwwroot/css/bookings.css

153 lines
3.8 KiB
CSS
Raw Permalink Normal View History

/**
* Bookings - Booking List & Items
*
* Styling for booking components on dashboard
2026-01-14 00:47:06 +01:00
* Reuses: swp-list-base, swp-list-item-base (components.css)
*/
/* ===========================================
BOOKING LIST
=========================================== */
swp-booking-list {
2026-01-11 18:18:36 +01:00
display: contents;
}
/* ===========================================
BOOKING ITEM
=========================================== */
swp-booking-item {
display: grid;
grid-column: 1 / -1;
grid-template-columns: subgrid;
align-items: center;
padding: var(--card-padding);
background: var(--color-background-alt);
border-radius: var(--radius-lg);
cursor: pointer;
transition: background var(--transition-fast);
}
swp-booking-item:hover {
background: var(--color-background-hover);
}
swp-booking-item.completed {
opacity: 0.6;
}
swp-booking-item.completed swp-booking-indicator {
background: var(--color-border);
}
swp-booking-item.inprogress {
2026-01-14 00:47:06 +01:00
background: var(--bg-teal-medium);
}
/* ===========================================
BOOKING TIME
=========================================== */
swp-booking-time {
display: flex;
flex-direction: column;
align-items: flex-start;
}
swp-booking-time swp-time-start {
font-size: var(--font-size-base);
font-weight: var(--font-weight-semibold);
font-family: var(--font-mono);
color: var(--color-text);
}
swp-booking-time swp-time-end {
font-size: var(--font-size-xs);
color: var(--color-text-secondary);
font-family: var(--font-mono);
}
/* ===========================================
BOOKING INDICATOR
=========================================== */
swp-booking-indicator {
width: 4px;
height: 40px;
border-radius: 2px;
}
swp-booking-indicator.teal { background: var(--color-teal); }
swp-booking-indicator.blue { background: var(--color-blue); }
swp-booking-indicator.purple { background: var(--color-purple); }
swp-booking-indicator.amber { background: var(--color-amber); }
swp-booking-indicator.green { background: var(--color-green); }
/* ===========================================
BOOKING DETAILS
=========================================== */
swp-booking-details {
min-width: 0;
overflow: hidden;
}
/* ===========================================
BOOKING EMPLOYEE
=========================================== */
swp-booking-employee {
display: flex;
align-items: center;
gap: var(--spacing-3);
}
/* TODO: Consider using swp-avatar.size-xs from components.css instead */
swp-booking-employee swp-avatar-small {
width: 24px;
height: 24px;
border-radius: var(--radius-full);
background: var(--color-teal);
color: white;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
font-weight: var(--font-weight-semibold);
}
swp-booking-employee span {
font-size: var(--font-size-sm);
color: var(--color-text-secondary);
}
/* ===========================================
BOOKING STATUS
=========================================== */
2026-01-14 00:47:06 +01:00
/* Status badge - now unified in components.css as swp-status-badge */
/* Use: <swp-status-badge class="confirmed|pending|inprogress|completed"> */
/* ===========================================
CURRENT TIME INDICATOR
=========================================== */
swp-current-time {
display: flex;
align-items: center;
gap: var(--spacing-4);
padding: var(--spacing-4) var(--spacing-6);
2026-01-14 00:47:06 +01:00
background: var(--bg-teal-medium);
border-radius: var(--radius-lg);
2026-01-11 18:18:36 +01:00
margin-bottom: var(--spacing-4);
}
swp-current-time i {
font-size: var(--font-size-lg);
color: var(--color-teal);
}
swp-current-time span {
font-size: var(--font-size-md);
color: var(--color-teal);
font-weight: var(--font-weight-medium);
}
swp-current-time swp-time {
font-family: var(--font-mono);
font-weight: var(--font-weight-semibold);
}