:root{--card-bg:#fffcf9;--border-color:#eeeae6;--accent-pink:#f06292;--text-main:#2d2d2d;--text-muted:#555}.ticket-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;box-shadow:0 4px 12px rgba(0,0,0,.03);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin-top:16px;max-width:500px;padding:32px}.ticket-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.header-title{color:#000;font-size:1.1rem;font-weight:700;margin:0}.header-duration{line-height:1.2;text-align:right}.header-duration strong{display:block;font-family:Georgia,serif;font-size:1.2rem}.header-duration span{font-size:.95rem;font-weight:600}.feature-list{list-style:none;margin:0;padding:0}.feature-item{align-items:center;border-top:1px solid var(--border-color);display:flex;padding:14px 0}.check-icon{color:var(--accent-pink);flex-shrink:0;height:18px;margin-right:14px;width:18px}.feature-text{color:var(--text-main);font-size:1rem;font-weight:400}.btn-slot-time{background-color:#fff!important;border:1px solid #ffc1c1;color:#000;flex-direction:column;max-width:400px;padding-right:30px;position:relative;width:120px}.slot-container{display:flex;flex-wrap:wrap;gap:10px}.btn-slot-time.is-full{color:#94a3b8;cursor:not-allowed;opacity:.8;text-decoration:line-through}.btn-slot-time.is-full,.btn-slot-time.is-full:hover{background-color:#f1f5f9;border-color:#e2e8f0}.btn-slot-time.is-selected{border:1px solid #000;color:#000}.slot-check{background:none;border-radius:0;color:#141414;display:block;font-size:16px;font-weight:600;height:auto;position:absolute;right:10px;top:50%;transform:translateY(-50%);width:auto}.calendar-picker{align-items:center;display:flex;flex-direction:column;text-align:center}.calendar-picker h3{align-self:flex-start;text-align:left;width:100%}.slot-container-wrapper h3{text-align:left}.calendar-picker .react-calendar{margin-left:0!important;margin-right:auto!important;padding-left:0!important;width:100%}@media (max-width:420px){.calendar-picker .react-calendar{max-width:320px;width:100%}}.ticket-stepper{align-items:center;border:1px solid #ccc;border-radius:16px;display:flex;justify-content:space-between;padding:8px 14px;width:140px}.ticket-stepper button{align-items:center;background:transparent;border:none;color:#555;cursor:pointer;display:flex;font-size:18px;height:30px;justify-content:center;transition:all .2s ease;width:30px}.ticket-stepper button:hover:not(:disabled){color:#141414;transform:scale(1.1)}.ticket-stepper button:disabled{cursor:not-allowed;opacity:.3}.ticket-stepper span{color:#333;font-size:16px;font-weight:500;min-width:20px;text-align:center}.ticket-stepper button:active:not(:disabled){transform:scale(.9)}.ticket-qty-label{color:#000;font-size:14px;letter-spacing:.5px}@media screen and (max-width:768px){.booking-form input,.booking-form select,.booking-form textarea{font-size:16px!important}}.booking-section{box-sizing:border-box;display:flex;flex-direction:row;margin-bottom:var(--section-margin-bottom);width:100%}.booking-section>*{margin-bottom:30px}@media (min-width:768px){.booking-section{align-items:flex-start;display:flex;gap:55px;justify-content:center;padding:20px}.booking-section>*{margin-bottom:0}}@media screen and (max-width:768px){.booking-section{flex-direction:column-reverse!important}.booking-left,.booking-right{width:100%}}.booking-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.booking-price{margin:0}.booking-container{background:#fff;border-radius:16px;max-width:480px;width:100%}.booking-title{margin-bottom:25px}.booking-left{display:flex;flex-direction:column;gap:16px;max-width:600px;width:100%}.booking-left img{border-radius:30px;display:block;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease;width:100%}.booking-image-top img{height:auto;min-height:500px}.booking-image-bottom{display:flex;gap:16px}.bottom-img-wrapper{flex:1}.booking-image-bottom img{aspect-ratio:1/1;height:100%}.booking-left img:hover{transform:scale(1.01)}.placeholder{align-items:center;background:#f3f3f3;border-radius:30px;display:flex;justify-content:center;min-height:200px}.booking-right{display:flex;flex-direction:column;width:100%}.booking-right,.booking-root{max-width:500px}.booking-form{gap:12px}input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:12px}input:focus{border-color:#5c7cfa;outline:none}button{border:none;border-radius:6px;cursor:pointer;font-size:15px;padding:12px}.button-booking-navigation{background-color:#fff;border:1px solid hsla(0,0%,7%,.9);border-radius:24px;color:#000;cursor:pointer;font-size:15px;padding:20px;transition:all .2s ease}.button-booking-navigation:hover:not(:disabled){border:2px solid hsla(0,0%,7%,.9)}.button-booking-navigation:disabled{border-color:#888;box-shadow:none;color:#888;cursor:not-allowed}.back-btn{background-color:#fff;border:1px solid hsla(0,0%,7%,.9);border-radius:24px;cursor:pointer;font-size:15px;padding:10px 15px;transition:all .2s ease}.summary{line-height:1.8;margin-bottom:20px}:root{--gap:12px}.booking-form{display:flex;flex-direction:column;gap:15px}.booking-form input,.booking-form select,.booking-form textarea{border:1px solid #e2e8f0;border-radius:10px;font-size:14px;outline:none;padding:12px 14px;transition:all .2s ease}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{background-color:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px rgba(79,70,229,.15)}.booking-form input::-moz-placeholder{color:#94a3b8}.booking-form input::placeholder{color:#94a3b8}.booking-checkout-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;box-shadow:0 10px 20px rgba(79,70,229,.25);color:#fff;cursor:pointer;display:block;font-size:16px;font-weight:600;margin-top:25px;padding:14px 18px;transition:all .25s ease;width:100%}.booking-checkout-btn:hover{box-shadow:0 14px 28px rgba(79,70,229,.35);transform:translateY(-2px)}.booking-checkout-btn:active{box-shadow:0 6px 12px rgba(79,70,229,.2);transform:scale(.98)}.booking-checkout-btn:disabled{background:#c7d2fe;box-shadow:none;cursor:not-allowed}
