body { background-color: #F9F9F9; margin: 0; font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif; } .header { background-color: #4A90E2; text-align: center; } .forms-container h1 { margin-top: 4vh; color: #333333; } .forms-container { display: flex; justify-content: center; gap: 2vw; margin-top: 2vh; } .form { width: 40%; height: 95vh; background-color: white; text-align: center; margin: 0; border-radius: 4vh; box-shadow: 0 4px 10px rgba(0,0,0,0.15); display: flex; flex-direction: column; align-items: center; position: relative; } .inputs { width: 80%; display: flex; flex-direction: column; gap: 2vh; margin-top: 3vh; margin-bottom: auto; } input { height: 4vh; text-align: center; border-top: none; border-left: none; border-right: none; border-color: #4A90E2; font-size: 2vh; } ::placeholder { text-align: center; } input[type="date"], input[type="time"] { text-align: center; height: 4vh; font-size: 1rem; } .datepicker__wrapper { width: 300px !important; /* or any desired width */ min-width: 200px !important; max-width: 100%; margin-left: 0 !important; margin-right: auto !important; font-size: 2.5vh !important; margin-left: auto !important; margin-right: auto !important; margin-top: 2vh !important; } .picker-container { position: relative; width: 60px; /* smaller width */ flex: 0 0 70px; /* don't grow, don't shrink, fixed 60px */ min-width: 60px; } .picker { height: 150px; /* visible area */ overflow-y: scroll; scrollbar-width: none; /* Firefox */ } .picker::-webkit-scrollbar { display: none; /* Chrome/Safari */ } .picker div { height: 50px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; color: #aaa; /* grayed out by default */ transition: color 0.3s; } .picker div.active { color: #222; /* normal color for selected */ font-weight: bold; } .highlight { position: absolute; top: 50%; left: 0; width: 100%; height: 50px; margin-top: -25px; pointer-events: none; border-top: 2px solid #4A90E2; border-bottom: 2px solid #4A90E2; } .pickers-row { display: flex; flex-direction: row; justify-content: space-between; /* Left and right alignment */ align-items: center; gap: 2vw; width: 100%; } .calendar { width: 20vh; /* Increased width */ } .submitBtn { width: 100%; height: 5vh; background-color: #4A90E2; color: white; border-style: hidden; font-size: large; cursor: pointer; } .formBottom { margin-top: auto; width: 80%; } .listBookings { padding: 0; margin: 0; overflow-y: scroll; max-height: 66vh; min-height: 66vh; scrollbar-width: none; } .no-bookings { margin-top: 50%; font-size: 1.2rem; font-style: italic; color: #666; text-align: center; } .booking-item { background-color: #f9f9f9; border: 1px solid #ddd; padding: 12px; margin-bottom: 10px; border-radius: 5px; box-shadow: 1px 1px 5px rgba(0,0,0,0.05); border-radius: 2vh; } .booking-item h3 { margin-bottom: 0; /* Reduce space below the title */ } .bookingContent { display: flex; /* make this a flex container */ flex-direction: row; gap: 0; justify-content: center; /* Left and right alignment */ align-items: center; } .bookingContainer { display: flex; flex-direction: row; justify-content: space-between; /* Left and right alignment */ align-items: center; } .bookingBtns { background-color: transparent; border: none; } .closed { background-color: transparent; border: none; } #btn:disabled { background-color: #8294aa; color: white; /* Optional: make text visible */ cursor: not-allowed; /* Optional: show disabled cursor */ opacity: 0.6; /* Optional: slightly transparent */ } .adminHeader { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 1rem; margin-top: 2vh; margin-bottom: 3vh; } /* txt appears when hovered */ .userinfo-target { position: relative; display: inline-block; cursor: pointer; text-decoration: underline; } .userinfo-box { position: absolute; top: 125%; /* BELOW the h3 */ left: 50%; transform: translateX(-50%); background-color: #333; color: #fff; padding: 6px 10px; border-radius: 5px; font-size: 14px; white-space: nowrap; opacity: 0; visibility: hidden; transition: opacity 0.2s ease; } .userinfo-box::after { content: ''; position: absolute; bottom: 100%; /* arrow points UP now */ left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: transparent transparent #333 transparent; } .userinfo-target:hover .userinfo-box { opacity: 1; visibility: visible; } @media (max-width: 600px) { .forms-container { flex-direction: column; gap: 2vh; align-items: center; } .form { width: 90%; height: auto; margin-bottom: 2vh; } .datepicker__wrapper { width: 200px !important; /* Smaller width on mobile */ min-width: 120px !important; font-size: 2vh !important; } .bookingContainer { position: relative; /* needed so button anchors to this box */ } .bookingContainer .closed { position: absolute; right: 0; top: 0.5rem; /* tweak vertical placement */ background: none; border: none; padding: 0.5rem; cursor: pointer; padding-top: 8vh; padding-right: 2vh; } .backBtn{ padding-top: 10vh; } }