*{box-sizing:border-box}.booking-dialog{width:min(620px,calc(100% - 24px));max-height:92dvh;border:0;border-radius:24px;padding:28px;color:#123b42;font:16px/1.55 Arial,sans-serif}.booking-dialog::backdrop{background:#082f38b8}.booking-close{float:right;border:0;background:#edf4f3;border-radius:50%;width:42px;height:42px;font-size:26px;cursor:pointer}.booking-kicker{font-size:13px;letter-spacing:.08em;font-weight:700;color:#147771}.booking-dialog h2{font-size:28px;line-height:1.15}.booking-summary{padding:18px;border-radius:16px;background:#edf8f5;margin:20px 0}.booking-summary h3{margin:0 0 10px}.booking-summary p{margin:5px 0}.booking-summary strong{font-size:28px}.booking-summary small{font-size:14px}.booking-pending{padding:16px;border-left:4px solid #e8b45c;background:#fff7e8;border-radius:8px}.booking-pending p{margin-bottom:0}.booking-dialog label{display:block;margin:16px 0 6px;font-weight:600}.booking-dialog input:not([type=checkbox]),.admin-shell input,.admin-shell select,.admin-shell textarea{width:100%;padding:13px;border:1px solid #b5c9c7;border-radius:10px;font:inherit;background:white;color:#123b42}.booking-dialog .booking-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400}.booking-check input{margin-top:6px;min-width:18px;min-height:18px}.booking-privacy{font-size:13px;color:#516b71}.reserve-button{display:inline-block;background:#075b5f;color:white!important;border:0;border-radius:12px;padding:14px 20px;font:700 16px/1.4 Arial,sans-serif;text-decoration:none;text-align:center;cursor:pointer}.reserve-button:disabled{opacity:.55;cursor:wait}.booking-dialog .reserve-button{width:100%}.booking-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#booking-error{color:#a12631}.booking-reference{font-weight:700}.quote-price-card .reserve-button{margin-top:14px}.admin-shell{max-width:1100px;margin:auto;padding:28px 18px;font:16px/1.5 Arial,sans-serif;color:#123b42;background:#f5f8f7;min-height:100vh}.admin-shell header{display:flex;justify-content:space-between;gap:20px;align-items:center}.admin-filters{display:flex;gap:12px;margin:24px 0}.admin-request{background:white;border:1px solid #d7e4df;border-radius:18px;padding:24px;margin-bottom:18px}.admin-request header{align-items:flex-start}.admin-request h2{margin:0;font-size:21px}.admin-status{padding:6px 12px;background:#fff1d8;border-radius:20px;font-weight:700;font-size:14px}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-request label{display:block;margin:12px 0}.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.admin-note{font-size:14px;color:#566b70}.admin-request textarea{min-height:85px}.admin-message{font-weight:600}.admin-shell a{color:#075b5f}.admin-shell button{min-height:44px}.booking-dialog button:focus-visible,.admin-shell :focus-visible{outline:3px solid #e8ad42;outline-offset:3px}@media(max-width:640px){.booking-dialog{padding:20px}.admin-columns{grid-template-columns:1fr;gap:4px}.admin-filters{flex-direction:column}.admin-request{padding:18px}.admin-request header{display:block}.admin-status{display:inline-block;margin-top:10px}.admin-shell header{flex-wrap:wrap}}
.booking-close.screen-back{float:none;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:9px;width:auto;min-height:50px;height:auto;padding:11px 16px;margin:0 0 20px;border:2px solid #123779;border-radius:12px;background:#fff;color:#123779;box-shadow:0 3px 12px #12377922;font-size:16px;font-weight:800;line-height:1.3;cursor:pointer}
.booking-close.screen-back span{font-size:24px;line-height:1}
@media(max-width:700px){.booking-close.screen-back{font-size:17px;min-height:52px}}
