.commercial-tour-detail .detail-layout{grid-template-columns:minmax(0,1fr) 310px}
.commercial-tour-detail .detail-booking{padding:18px;overflow:visible;max-height:none}
.detail-compact-trigger,.detail-time-choice,.detail-persons{width:100%;min-height:54px;margin:0 0 10px;padding:10px 12px;border:1px solid #d9e2ec;border-radius:12px;background:#f5f7fa;color:#122945}
.detail-compact-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}
.detail-compact-trigger span,.detail-time-choice span{font-size:13px}.detail-compact-trigger strong{font-size:14px}
.detail-date-dialog{width:min(430px,calc(100vw - 28px));padding:20px;border:0;border-radius:18px;box-shadow:0 24px 70px rgba(11,32,56,.28)}
.detail-date-dialog::backdrop{background:rgba(8,25,44,.58)}.detail-dialog-close{position:absolute;right:12px;top:10px;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:#edf2f7;font-size:24px;cursor:pointer}
.detail-date-dialog .detail-calendar{margin:0;border:0;padding:8px}.detail-date-dialog>label{display:grid;gap:8px;font-weight:800}.detail-date-dialog input[type=date]{padding:12px;border:1px solid #ccd8e5;border-radius:10px}
.detail-guest-picker{position:relative}.detail-guest-popover{position:absolute;z-index:40;top:58px;left:0;right:0;padding:12px;border:1px solid #d8e1eb;border-radius:14px;background:#fff;box-shadow:0 16px 35px rgba(15,38,64,.18)}
.detail-guest-popover>div{display:grid;grid-template-columns:minmax(0,1fr) 34px 28px 34px;align-items:center;gap:5px;padding:8px 0;border-bottom:1px solid #edf1f5}.detail-guest-popover span{display:grid}.detail-guest-popover small{color:#6e7d90}.detail-guest-popover button{height:32px;border:1px solid #d5deea;border-radius:8px;background:#f6f8fb;cursor:pointer}.detail-guest-popover .detail-guest-done{width:100%;margin-top:10px;background:#0c939c;color:#fff;border:0}
.detail-time-choice{display:grid;grid-template-columns:1fr 145px;align-items:center;gap:8px;font-weight:700}.detail-time-choice select{min-width:0;padding:8px;border:0;border-radius:8px;background:#fff;color:#122945}
.commercial-tour-detail .detail-vehicles{min-height:54px}.commercial-tour-detail .detail-vehicle-rule{display:block;margin:-5px 4px 10px}
@media(max-width:800px){.commercial-tour-detail .detail-layout{grid-template-columns:1fr}.commercial-tour-detail .detail-booking{padding:16px}.detail-guest-popover{position:fixed;left:16px;right:16px;top:auto;bottom:16px}}

/* Compact availability-first booking flow. */
.commercial-tour-detail .detail-booking{padding:16px 17px}
.commercial-tour-detail .detail-price{margin-bottom:12px;padding-bottom:12px}.commercial-tour-detail .detail-price strong{font-size:26px}
.commercial-tour-detail .detail-compact-trigger,.commercial-tour-detail .detail-persons{min-height:46px;margin-bottom:8px;padding:8px 11px;border-radius:10px}
.commercial-tour-detail .detail-guest-popover{z-index:12}
.commercial-tour-detail .detail-vehicle-rule{margin:-1px 2px 10px;font-size:11px}
.detail-check-availability{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:10px;border:0;border-radius:10px;background:#0a8c95;color:#fff;font:800 14px/1.2 inherit;letter-spacing:.015em;cursor:pointer;box-shadow:0 8px 20px rgba(10,140,149,.18)}
.detail-check-availability:hover,.detail-check-availability:focus-visible{background:#076f76;outline:0;box-shadow:0 0 0 3px rgba(10,140,149,.18)}
.commercial-tour-detail .detail-availability-status{min-height:18px;margin:7px 2px 0;padding:0;background:transparent;color:#587087;font-size:11px;line-height:1.45}
.detail-availability-results[hidden]{display:none}.detail-availability-results{margin:0 0 22px;padding:18px;border:1px solid #cfe1e6;border-radius:16px;background:#f7fbfc;scroll-margin-top:110px}
.detail-availability-results>header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}.detail-availability-results>header span{display:block;color:#07838c;font-size:11px;font-weight:900;letter-spacing:.09em}.detail-availability-results>header h2{margin:3px 0 0;font-size:22px}.detail-availability-results>header p{margin:0;color:#60758a;font-size:13px;text-align:right}
.detail-availability-results>[data-availability-list]{display:grid;gap:8px}.detail-availability-results article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border:1px solid #dbe8ec;border-radius:11px;background:#fff}.detail-availability-results article strong{display:block;font-size:15px}.detail-availability-results article p{display:flex;flex-wrap:wrap;gap:5px 12px;margin:5px 0 0;color:#60758a;font-size:12px}.detail-availability-results article p span:not(:last-child):after{content:'·';margin-left:12px}.detail-availability-results article>b{flex:0 0 auto;color:#086b73;font-size:14px;white-space:nowrap}.detail-availability-empty{margin:0;padding:12px;border-radius:10px;background:#fff;color:#8a4b19}
.detail-availability-action{display:grid;justify-items:stretch;gap:9px;flex:0 0 220px}.detail-availability-action>b{color:#086b73;font-size:16px;text-align:right;white-space:nowrap}.detail-availability-continue{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:46px;padding:0 16px;border-radius:11px;background:#078b94;color:#fff;font-size:13px;font-weight:900;text-decoration:none;box-shadow:0 8px 18px rgba(7,139,148,.18);transition:background .2s,transform .2s,box-shadow .2s}.detail-availability-continue b{font-size:18px}.detail-availability-continue:hover,.detail-availability-continue:focus-visible{background:#066f76;outline:0;transform:translateY(-1px);box-shadow:0 10px 22px rgba(7,111,118,.24)}
@media(max-width:600px){.detail-availability-results>header{align-items:flex-start;flex-direction:column;gap:5px}.detail-availability-results>header p{text-align:left}.detail-availability-results article{align-items:flex-start;flex-direction:column;gap:8px}.detail-availability-results article p span:after{display:none}.detail-availability-action{justify-items:stretch;width:100%}.detail-availability-continue{width:100%}}
