html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f5f0e8}::-webkit-scrollbar-thumb{background:#bcccdc;border-radius:4px}.cal-day{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:0.8rem;cursor:pointer;transition:all 0.15s;position:relative;appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font-family:inherit;opacity:1}.cal-day:focus-visible{outline:2px solid #334e68;outline-offset:2px;border-radius:8px}.cal-day:disabled{pointer-events:none}.cal-day.past{color:#bcccdc;cursor:default}.cal-day.blocked{color:#dc2626;cursor:not-allowed;text-decoration:line-through}.cal-day.today{outline:2px dotted #334e68;outline-offset:-2px;border-radius:8px}.cal-day.in-range{background:rgba(51,78,104,0.08)}.cal-day.range-start{background:#334e68;color:white;font-weight:600;border-radius:8px}.cal-day.range-end{background:#334e68;color:white;font-weight:600;border-radius:8px}.cal-day:not(.past):not(.blocked):hover{background:rgba(51,78,104,0.08)}.step-dot{width:10px;height:10px;border:1px solid #bcccdc;transition:all 0.3s}.step-dot.active{background:#243b53;border-color:#243b53}.step-dot.completed{background:#243b53;border-color:#243b53}.step-line{height:1px;flex:1;background:#bcccdc;transition:background 0.3s}.step-line.completed{background:#243b53}.StripeElement{padding:14px;border:1px solid #bcccdc;border-radius:12px;background:#f0f4f8;transition:border-color 0.2s}.StripeElement--focus{border-color:#334e68}.StripeElement--invalid{border-color:#dc2626}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%) translateY(-100px);z-index:9999;padding:12px 24px;font-size:0.875rem;transition:transform 0.4s cubic-bezier(0.4,0,0.2,1)}.toast.show{transform:translateX(-50%) translateY(0)}.card-hover{transition:transform 0.4s,box-shadow 0.4s}.card-hover:hover{transform:translateY(-4px);box-shadow:0 10px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1)}.rn-price-live{animation:rn-price-in .35s ease-out both}@keyframes rn-price-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.rn-price-live{animation:none}.cal-day{transition:none}}
