.escorts-booking-calendar{max-width:1000px;margin:20px auto}.escorts-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.escorts-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.escorts-calendar-day{border:1px solid #ddd;border-radius:4px;padding:10px;min-height:100px;background:#fff}.escorts-calendar-day.available{background:#e8f5e9;cursor:pointer}.escorts-calendar-day.booked{background:#ffebee}.escorts-calendar-day.unavailable{background:#f5f5f5;opacity:.5}.escorts-calendar-day .date{font-weight:700;margin-bottom:5px}.escorts-calendar-day .slots{font-size:12px}.escorts-booking-form{max-width:600px;margin:20px auto;padding:20px;border:1px solid #ddd;border-radius:8px}.escorts-booking-form label{display:block;margin-bottom:5px;font-weight:700}.escorts-booking-form input,.escorts-booking-form select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;margin-bottom:15px}.escorts-booking-list{margin:20px 0}.escorts-booking-item{border:1px solid #ddd;border-radius:8px;padding:15px;margin-bottom:15px}.escorts-booking-item .status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.escorts-booking-item .status.request{background:#fff3cd;color:#856404}.escorts-booking-item .status.confirmed{background:#d4edda;color:#155724}.escorts-booking-item .status.cancelled{background:#f8d7da;color:#721c24}.escorts-booking-item .status.noshow{background:#d1ecf1;color:#0c5460}