.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:35px}.calendar-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.calendar-nav h3{font-size:26px;text-transform:capitalize}.calendar-nav button,.calendar-grid button{min-height:45px;border:1px solid #ced7d8;background:white;color:#17353c;cursor:pointer}.calendar-nav button{width:45px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-grid button:disabled{cursor:default;color:#899494;background:#f4f5f4;border-color:transparent}.calendar-grid button.arrival:not(:disabled){border:2px solid #17353c;font-weight:bold}.calendar-grid button.occupied{background:#17353c;color:white}.calendar-grid button.chosen{background:#edce90!important;color:#17353c!important}.weekday{text-align:center;font-size:14px;padding:7px}.calendar-legend{display:flex;gap:25px;font-size:14px;margin-top:20px}.booking-form{background:#f3f5f4;padding:28px}.booking-form label,.admin-form label{display:block;font-size:14px;font-weight:600;margin:12px 0}.booking-form input,.booking-form select,.admin-form input,.admin-form select,.admin-form textarea{display:block;width:100%;padding:12px;font:inherit;border:1px solid #bcc9c9;border-radius:0;background:white;margin-top:6px;color:#17353c}.booking-form .consent{display:flex;align-items:start;gap:12px;font-weight:normal}.consent input{width:20px;min-width:20px;height:20px;margin-top:4px}.consent a{text-decoration:underline}.booking-total{font-size:24px;font-weight:bold}.trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden}.booking-form h3{font-size:24px;margin-top:25px}.booking-form button:disabled{opacity:.6;cursor:wait}#booking-message{overflow-wrap:anywhere}.calendar-nav button:disabled{opacity:.3;cursor:default}.admin-wrap{max-width:1150px;margin:auto;padding:45px 25px}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:35px 0}.admin-form{background:#f3f5f4;padding:25px}.admin-form button{margin-top:15px}.admin-entry{padding:22px 0;border-top:1px solid #ccd6d6;overflow-wrap:anywhere}.admin-entry h3{font-size:24px}.admin-entry p{margin:8px 0;font-size:15px}.admin-entry button{padding:8px 15px;background:white;border:1px solid #17353c;cursor:pointer}.admin-entry.cancelled{opacity:.6}.admin-note{padding:20px;background:#fff3d8}.admin-toolbar{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:25px 0}.admin-toolbar label{display:flex;gap:12px;align-items:center}.admin-toolbar input{width:20px;height:20px}.admin-signout{font-size:14px;text-decoration:underline}.receipt{overflow-wrap:anywhere}@media(max-width:700px){.booking-layout,.admin-columns{grid-template-columns:1fr;gap:25px}.booking-form{padding:20px}.calendar-grid{gap:4px}.calendar-nav h3{font-size:22px}.admin-wrap{padding:30px 20px}}@media print{body *{visibility:hidden}.receipt,.receipt *{visibility:visible}.receipt{position:absolute;left:30px;top:30px;right:30px}.receipt button{display:none}}

.inquiry-notice{background:#fff3d8;border-left:4px solid #ba914c;padding:20px 24px;margin:25px 0}.inquiry-notice p{margin:8px 0 0}.admin-entry button{margin:6px 8px 6px 0}

.calendar-grid button.available{background:#d8f3cd;color:#173d22;border-color:#a7d79a}.calendar-grid button.occupied{background:#c93434;color:#fff;border-color:#b52a2a}.calendar-legend{flex-wrap:wrap;gap:12px 25px}.calendar-legend span{display:inline-flex;align-items:center;gap:8px}.calendar-legend i{display:inline-block;width:16px;height:16px;border-radius:3px}.legend-free{background:#d8f3cd;border:1px solid #a7d79a}.legend-occupied{background:#c93434;border:1px solid #b52a2a}
.revenue-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:35px}.revenue-card{padding:24px;background:#17353c;color:white}.revenue-card span{display:block;font-size:15px}.revenue-card strong{display:block;font-size:30px;margin-top:12px}.dashboard-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:30px 0 20px}.dashboard-nav h2{font-size:28px;text-transform:capitalize}.dashboard-nav button{padding:10px;background:white;border:1px solid #b7c9c9;cursor:pointer}.dashboard-scroll{overflow-x:auto}.dashboard-calendar{min-width:620px;border:1px solid #ccd6d6}.dashboard-weekdays,.dashboard-dates,.dashboard-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.dashboard-weekdays{background:#edf2f2;text-align:center;padding:12px 0;font-size:14px}.dashboard-week{min-height:100px;border-top:1px solid #ccd6d6;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / 7 - 1px),#e4eaea calc(100% / 7 - 1px),#e4eaea calc(100% / 7))}.dashboard-dates span{padding:8px;font-size:14px}.dashboard-dates .outside{color:#929d9d}.dashboard-dates .today{font-weight:bold;text-decoration:underline}.dashboard-bars{gap:5px 0;padding-bottom:8px}.booking-bar{margin:0 3px;padding:9px 10px;border:0;border-radius:4px;font:14px Arial;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.booking-bar.confirmed{background:#b82f38;color:white}.booking-bar.pending{background:#ffe3a3;color:#503a10;border:1px dashed #99722b}.booking-bar.blocked{background:#dce3e8;color:#263945}.dashboard-legend{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.dashboard-legend .booking-bar{cursor:default}.admin-entry:focus{outline:3px solid #bf9548;outline-offset:5px}@media(max-width:700px){.revenue-cards{grid-template-columns:1fr}.revenue-card{padding:18px}.dashboard-nav h2{font-size:21px}.dashboard-nav button{font-size:14px}}
