.card-radio-group{gap:.75rem;width:100%;display:grid}.card-radio-group__list{gap:.5rem;display:grid}.card-radio-group__list--wrap{flex-wrap:wrap;gap:.5rem;display:flex}.card-radio-group__list--wrap .card-radio{flex:0 auto;width:auto;max-width:100%}.card-radio{border:2px solid var(--color-quaternary);background:var(--color-secondary,#fff);cursor:pointer;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s,background-color .2s;display:grid}.card-radio:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #c79f622e}.card-radio--selected{border-color:var(--color-primary);background:#c79f621f;box-shadow:0 4px 16px #c79f6238}.card-radio--disabled{opacity:.5;cursor:not-allowed}.card-radio--disabled:hover{border-color:var(--color-quaternary);box-shadow:none}.card-radio__input{opacity:0;pointer-events:none;position:absolute}.card-radio__content{gap:.25rem;min-width:0;display:grid}.card-radio__title{color:var(--color-primary);font-size:1rem;font-weight:700;line-height:1.3}.card-radio__description{color:var(--color-quinary);word-break:break-word;font-size:.875rem;line-height:1.45}.card-radio__indicator{border:2px solid var(--color-quaternary);border-radius:999px;flex-shrink:0;width:1.15rem;height:1.15rem;transition:border-color .2s;position:relative}.card-radio--selected .card-radio__indicator{border-color:var(--color-primary)}.card-radio--selected .card-radio__indicator:after{content:"";background:var(--color-primary);border-radius:999px;position:absolute;inset:3px}@media (width<=768px){.card-radio-group__list--wrap{gap:.5rem;display:grid}.card-radio-group__list--wrap .card-radio{width:100%;max-width:100%}.card-radio{gap:.625rem;padding:.625rem .875rem}.card-radio__title{font-size:.95rem}.card-radio__description{font-size:.8125rem}}.booking-card-radio-group{gap:.75rem;width:100%;display:grid}.booking-card-radio-group__status{border:2px solid var(--color-quaternary);color:var(--color-quinary);background:#c79f6214;border-radius:12px;gap:1.25rem;padding:1rem 1.25rem;font-size:.95rem;line-height:1.5;display:grid}.booking-card-radio-group__status p{margin:0}.booking-card-radio-group__link{color:var(--color-primary);width:fit-content;font-weight:700;text-decoration:underline}.booking-card-radio-group__list{gap:.5rem;display:grid}.booking-card-radio-group__list--wrap{flex-wrap:wrap;gap:.5rem;display:flex}.booking-card-radio-group__list--wrap .booking-card-radio{flex:0 auto;width:auto;max-width:100%}.booking-card-radio{border:2px solid var(--color-quaternary);background:var(--color-secondary,#fff);cursor:pointer;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s,background-color .2s;display:grid}.booking-card-radio:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #c79f622e}.booking-card-radio--selected{border-color:var(--color-primary);background:#c79f621f;box-shadow:0 4px 16px #c79f6238}.booking-card-radio__input{opacity:0;pointer-events:none;position:absolute}.booking-card-radio__content{gap:.25rem;min-width:0;display:grid}.booking-card-radio__title{color:var(--color-primary);font-size:1rem;font-weight:700;line-height:1.3}.booking-card-radio__description{color:var(--color-quinary);word-break:break-word;font-size:.875rem;line-height:1.45}.booking-card-radio__content .markdown-description{font-size:inherit;line-height:inherit;margin-bottom:0}.booking-card-radio__content .markdown-description :is(p,ul,ol,h1,h2,h3,h4,h5,h6,blockquote,pre,table){margin:0}.booking-card-radio__content .markdown-description>:first-child{margin-top:0}.booking-card-radio__content .markdown-description>:last-child{margin-bottom:0}.booking-card-radio__indicator{border:2px solid var(--color-quaternary);border-radius:999px;flex-shrink:0;width:1.15rem;height:1.15rem;transition:border-color .2s;position:relative}.booking-card-radio--selected .booking-card-radio__indicator{border-color:var(--color-primary)}.booking-card-radio--selected .booking-card-radio__indicator:after{content:"";background:var(--color-primary);border-radius:999px;position:absolute;inset:3px}@media (width<=768px){.booking-card-radio-group__list--wrap{gap:.5rem;display:grid}.booking-card-radio-group__list--wrap .booking-card-radio{width:100%;max-width:100%}.booking-card-radio{gap:.625rem;padding:.625rem .875rem}.booking-card-radio__title{font-size:.95rem}.booking-card-radio__description{font-size:.8125rem}}.date-selection{border:1px solid var(--color-quaternary);box-sizing:border-box;background:#c79f620d;border-radius:16px;max-width:100%;margin-bottom:2rem;padding:1.5rem}.selected-dates,.selected-date-display{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.date-display{border:2px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .3s;display:flex;position:relative}.date-display.active{background:#22c55e1a;border-color:#22c55e4d}.date-display.waiting{background:#3b82f61a;border-color:#3b82f64d;animation:2s infinite pulse}.clear-dates-icon{justify-content:center;align-items:center;width:1em;height:1em;display:flex}@keyframes pulse{0%,to{background:#3b82f61a;border-color:#3b82f64d}50%{background:#3b82f626;border-color:#3b82f680}}.date-status{flex-direction:row;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.date-status-container{flex-direction:column;flex:1;min-width:0;display:flex}.date-status.waiting{color:#3b82f6;animation:1s infinite bounce}@keyframes bounce{0%,to{transform:translate(0)}50%{transform:translate(3px)}}.date-label{color:var(--color-quinary);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600}.date-value{color:var(--color-text-primary);font-size:1.1rem;font-weight:700}.clear-dates{border:1px solid var(--color-quaternary);color:var(--color-quinary);cursor:pointer;background:#7f5e3c33;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.clear-dates:hover{background:var(--color-quaternary);color:var(--color-quinary);transform:translateY(-1px)}.embedded-calendar{box-sizing:border-box;background:#2318154d;border-radius:12px;max-width:100%;padding:1rem}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.nav{background:var(--color-quaternary);color:var(--color-quinary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;transition:all .2s;display:flex}.nav:hover:not(:disabled){background:var(--color-primary);color:var(--color-secondary);transform:scale(1.1)}.nav:disabled{opacity:.3;cursor:not-allowed}.month-label{color:var(--color-text-primary);font-size:1.2rem;font-weight:700}.weekday-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px;display:grid}.weekday{text-align:center;color:var(--color-quinary);padding:.5rem 0;font-size:.8rem;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:100%;display:grid}.calendar-cell{box-sizing:border-box;min-width:0;min-height:48px;color:var(--color-quinary);cursor:pointer;background:#c79f620d;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:all .2s;display:flex;position:relative}.calendar-cell:hover:not(:disabled){background:#c79f6233;transform:scale(1.05);box-shadow:0 4px 12px #c79f624d}.calendar-cell.selected{background:var(--color-primary);color:var(--color-secondary);border:2px solid var(--color-quinary);font-weight:700;box-shadow:0 4px 16px #c79f6266}.calendar-cell.inrange{color:var(--color-text-primary);background:#c79f6233;font-weight:600}.calendar-cell.inrange-green{color:#22c55e;background:linear-gradient(135deg,#22c55e33,#22c55e1a);border:2px solid #22c55e66;font-weight:600}.calendar-cell.inrange-green .mark{color:#22c55e;filter:none}.calendar-cell.selected.inrange-green{color:#22c55e;background:linear-gradient(135deg,#22c55e59,#22c55e33);border:2px solid #22c55e;box-shadow:0 4px 16px #22c55e4d}.calendar-cell.today{border:2px solid var(--color-primary)}.calendar-cell.outside{opacity:.3}.calendar-cell.outside .mark{opacity:1}.calendar-cell.unavailable{opacity:.3;cursor:not-allowed;background:#7f5e3c0d}.calendar-cell.unavailable:hover{box-shadow:none;background:#7f5e3c0d;transform:none}.calendar-cell.unavailable-no-checkin{opacity:.15;cursor:default;pointer-events:none;background:#7f5e3c05}.calendar-cell.unavailable-no-checkin:hover{box-shadow:none;opacity:.15;background:#7f5e3c05;transform:none}.calendar-cell.unavailable-no-checkin .mark{opacity:.4;filter:grayscale()}.calendar-cell.same-as-start{background:var(--color-primary);color:var(--color-secondary);border:2px solid var(--color-quinary);cursor:not-allowed;opacity:.6}.calendar-cell.same-as-start:hover{box-shadow:none;background:var(--color-primary);opacity:.6;transform:none}.calendar-cell.checkout-available{color:#22c55e;background:linear-gradient(135deg,#22c55e33,#22c55e1a);border:2px solid #22c55e66}.calendar-cell.checkout-available:hover{background:linear-gradient(135deg,#22c55e4d,#22c55e33);border-color:#22c55e;transform:scale(1.05);box-shadow:0 4px 16px #22c55e4d}.calendar-cell.checkout-available .mark{color:#22c55e;filter:none}.calendar-cell.checkout-blocked{color:var(--color-quaternary);opacity:.6;background:#7f5e3c1a;border:1px solid #7f5e3c4d}.calendar-cell.checkout-blocked:hover{box-shadow:none;background:#7f5e3c1a;transform:none}.calendar-cell.checkout-blocked .mark{color:var(--color-quaternary)}.calendar-cell .date{font-size:.9rem;font-weight:600}.calendar-cell .mark{opacity:.8;font-size:.7rem}.calendar-cell .price-label{white-space:nowrap;font-size:.6rem;font-weight:600;line-height:1.1}.embedded-calendar:has(.price-label) .calendar-cell{min-height:56px}.hint{color:var(--color-quinary);opacity:.7;margin-top:.25rem;font-size:.8rem}@media (width<=768px){.date-selection{box-sizing:border-box;max-width:100%;padding:1rem}.embedded-calendar{max-width:100%;padding:.75rem}.calendar-grid,.weekday-row{gap:4px}.calendar-cell{width:100%;min-width:0;min-height:40px;padding:.25rem .125rem}.weekday{padding:.25rem 0;font-size:.7rem}.selected-dates,.selected-date-display{flex-direction:column;align-items:flex-start;gap:1rem;width:100%}.date-display{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;padding:.5rem .75rem}.date-status-container{align-items:flex-start}.clear-dates{align-self:flex-start;width:100%;margin-top:.5rem}.calendar-header{margin-bottom:.75rem}.month-label{font-size:1rem}.nav{flex-shrink:0;width:36px;height:36px}.calendar-cell:hover:not(:disabled){transform:none}}@media (width<=480px){.date-selection,.booking-details,.additional-info{box-sizing:border-box;max-width:100%;padding:.75rem}.embedded-calendar{max-width:100%;padding:.5rem}.calendar-grid,.weekday-row{gap:3px}.calendar-cell{min-width:0;min-height:36px;padding:.125rem 0}.calendar-cell.unavailable-no-checkin{opacity:.08}.calendar-cell.unavailable-no-checkin .mark{opacity:.2}.calendar-cell .date{font-size:.8rem}.calendar-cell .mark{font-size:.6rem}.calendar-cell .price-label{font-size:.55rem}}
