:root{--font-family: "Manrope", sans-serif;--font-size-xxs: 8px;--font-size-xs: 10px;--font-size-sm: 12px;--font-size-md: 16px;--font-size-lg: 20px;--font-size-xl: 24px;--font-size-xxl: 32px}@media(max-width:499px){:root{--font-size-xs: 10px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 24px}}@media(max-width:299px){:root{--font-size-xs: 8px;--font-size-sm: 10px;--font-size-md: 12px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-xxl: 20px}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:Manrope,sans-serif;color:var(--colors-text-primary)}a{color:var(--colors-accent);cursor:pointer}a:hover,a:active{color:var(--colors-accent-hover)}#app{background:var(--colors-page);min-height:100vh;display:flex;flex-direction:column}.main-content{margin:auto;padding:var(--spacing-md) 0;max-width:960px;width:100%;flex:1;font-size:var(--font-size-md)}@media(max-width:1024px){.main-content{max-width:100%;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}}.global{box-shadow:0 1px 3px #0000001a;padding:var(--spacing-sm);margin:var(--spacing-lg) auto;font-size:var(--font-size-sm);text-align:center;border-radius:var(--radius-sm);align-items:center;display:flex;justify-content:center;gap:var(--spacing-sm)}.global .material-icons{font-size:var(--font-size-md)}.global__error{border:1px solid var(--colors-danger);background:var(--colors-state-error);color:var(--colors-danger)}.global__error .material-icons{color:var(--colors-danger)}.global__success{border:1px solid var(--colors-accent);background:var(--colors-state-success);color:var(--colors-accent)}.global__success .material-icons{color:var(--colors-accent)}.global__info{border:1px solid var(--colors-warning);background:var(--colors-state-warning);color:var(--colors-warning)}.global__info .material-icons{color:var(--colors-warning)}.page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.page__header--actions{display:flex;gap:var(--spacing-lg);justify-content:flex-end}@media(max-width:768px){.page__header,.page__header--actions{flex-direction:column}}.page-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-xl);color:var(--colors-text-primary);margin-bottom:var(--spacing-xl)}.divider{width:100%;height:1px;background:var(--colors-border);margin:var(--spacing-xl) 0}.divider--dashed{background:none;border-top:1px dashed var(--colors-border)}.header{background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--colors-border);box-shadow:0 4px 12px #00000014;position:sticky;top:0;z-index:100;transition:all .3s ease}.header__container{max-width:960px;margin:0 auto;padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;height:70px}@media(max-width:1024px){.header__container{padding:0 var(--spacing-lg)}}.header__logo{font-weight:var(--font-weight-xl);font-size:var(--font-size-xl);cursor:pointer;color:var(--colors-primary);display:flex;align-items:center;flex:1;gap:var(--spacing-lg);transition:transform .2s ease,filter .2s ease}.header__logo:hover{transform:translateY(-2px);filter:brightness(1.1)}.header__logo img{max-width:200px;height:auto;cursor:pointer}@media(max-width:768px){.header__logo img{max-width:150px}}@media(max-width:399px){.header__logo img{max-width:120px}}.header__nav{display:flex;align-items:center;gap:var(--spacing-md);position:relative}.header__nav--icon{display:flex;height:48px;width:48px;justify-content:center;align-items:center;border-radius:100%;overflow:hidden;background:var(--colors-page)}.header__nav--icon .material-icons{font-size:var(--font-size-xl);color:var(--colors-text-primary)}.header__user{display:flex;align-items:center;cursor:pointer;position:relative;gap:var(--spacing-md)}.header__user-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--colors-card);border:1px solid var(--colors-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;min-width:180px;display:none;flex-direction:column;padding:var(--spacing-sm) 0;z-index:200}.header__user-menu--open{display:flex}.header__user-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md);color:var(--colors-text-primary);cursor:pointer;transition:background .2s;border-bottom:1px solid var(--colors-border)}.header__user-menu-item:last-child{border-bottom:none}.header__user-menu-item:hover{background:var(--colors-border)}.header__user-menu-item .material-icons{font-size:var(--font-size-md);color:var(--colors-text-secondary)}.header__cart{position:relative;cursor:pointer}.header__cart-badge{position:absolute;top:4px;right:4px;background:var(--colors-primary);color:var(--colors-text-inverse);font-size:var(--font-size-xxs);width:16px;height:16px;border-radius:100%;display:flex;align-items:center;justify-content:center}.header .cart-view{position:absolute;top:100%;left:0;height:100vh;width:100%;background:var(--colors-card);border-bottom:2px solid var(--colors-primary);box-shadow:0 15px 30px #0000001a;max-height:calc(100vh - 70px);overflow-y:auto}.header .cart-view__container{max-width:960px;margin:0 auto;padding:var(--spacing-lg)}@media(max-width:1024px){.header .cart-view__container{padding:var(--spacing-lg)}}.header .cart-view__body{padding:var(--spacing-lg) 0}.header .cart-view__item{display:flex;align-items:center;padding:var(--spacing-lg) 0;border-bottom:1px solid var(--colors-border)}@media(max-width:768px){.header .cart-view__item{flex-direction:column;align-items:flex-start;position:relative;padding:var(--spacing-lg) var(--spacing-sm)}}.header .cart-view__item .item-details{flex:1;width:100%}.header .cart-view__item .item-details .item-name{margin-bottom:var(--spacing-sm);display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.header .cart-view__item .item-details .item-name .activity-tag{background:var(--colors-state-warning);color:var(--colors-warning);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);font-size:var(--font-size-sm);margin-left:var(--spacing-lg);font-weight:var(--font-weight-lg);margin-left:0}.header .cart-view__item .item-details .item-name .court-name{font-weight:var(--font-weight-lg)}.header .cart-view__item .item-details .item-meta{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap;font-size:var(--font-size-md)}.header .cart-view__item .item-details .item-meta .value{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--colors-text-muted)}.header .cart-view__item .item-details .item-meta .value .material-icons{font-size:var(--font-size-md)}.header .cart-view__item .item-price{font-weight:var(--font-weight-lg);font-size:var(--font-size-lg);color:var(--colors-primary);margin:0 var(--spacing-lg)}@media(max-width:768px){.header .cart-view__item .item-price{margin:var(--spacing-sm) 0 0 0;font-size:var(--font-size-md)}}.header .cart-view__item .item-remove{background:none;border-radius:100%;border:none;color:var(--colors-danger);cursor:pointer;transition:.3s;opacity:.7}@media(max-width:768px){.header .cart-view__item .item-remove{position:absolute;top:var(--spacing-md);right:0;opacity:1}}.header .cart-view__item .item-remove:hover{opacity:1;transform:scale(1.1)}.header .cart-view__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-md);border-bottom:2px solid var(--colors-border)}.header .cart-view__header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-xl)}.header .cart-view__header .close-btn{background:none;border:none;cursor:pointer;color:var(--colors-primary)}.header .cart-view__footer{padding:var(--spacing-lg) 0}.header .cart-view__footer .total-row{display:flex;justify-content:flex-end;align-items:baseline;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.header .cart-view__footer .total-row .total-label{font-size:var(--font-size-sm);color:var(--colors-text-muted)}.header .cart-view__footer .total-row .total-amount{font-size:var(--font-size-xxl);font-weight:var(--font-weight-xl)}.header .cart-view__empty{text-align:center;padding:var(--spacing-xxl) 0}.header .cart-view__empty .material-icons{font-size:60px;color:var(--colors-text-muted)}.header .cart-view__empty p{color:var(--colors-text-muted);margin:var(--spacing-lg) 0}.footer{margin-top:var(--spacing-xl);background:var(--colors-surface);color:var(--colors-text-secondary);border-top:1px solid var(--colors-border);padding:var(--spacing-md) var(--spacing-lg)}.footer__inner{display:flex;margin:0 auto;max-width:960px;align-items:center;justify-content:space-between}.footer__credits{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.footer__credits .material-icons{font-size:var(--font-size-sm)}@keyframes modal-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-down-enter-active,.slide-down-leave-active{transition:all .3s cubic-bezier(.4,0,.2,1)}.slide-down-enter-from,.slide-down-leave-to{transform:translateY(-10px);opacity:0}.form__item{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.form__label{font-size:var(--font-size-sm);color:var(--colors-text-primary);text-align:left}.form__label.required:after{content:" *";color:red;font-weight:400}.form__input{padding:var(--spacing-md);border:1px solid var(--colors-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);background:var(--colors-surface)}.form__input::placeholder{color:var(--colors-text-muted);opacity:.8}.form__input :-webkit-input-placeholder{color:var(--colors-text-muted)}.form__input :-ms-input-placeholder{color:var(--colors-text-muted)}.form__input:focus{border-color:var(--colors-secondary);outline:none;box-shadow:0 0 0 2px #6763f533}.form__input.error{border-color:var(--colors-state-error);box-shadow:0 0 0 1px #ff00004d}.form__input:disabled{color:var(--colors-text-muted);outline:none}.form__control{position:relative}.form__hint{font-size:var(--font-size-xs);color:var(--colors-text-secondary);margin-top:var(--spacing-xs);font-style:italic}.form__options{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm)}.form__options .checkbox-group{margin-top:0}.form__actions{display:flex;justify-content:center;margin-top:var(--spacing-xl);gap:var(--spacing-lg)}.form .checkbox-group{flex-direction:row;align-items:flex-start;font-size:var(--spacing-sm);transition:transform .2s ease}.form .checkbox-group:hover{transform:scale(1.02)}.form input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--colors-accent);border-radius:var(--radius-xs, 4px)}.form input[type=checkbox]:hover{accent-color:var(--colors-accent)}.form input[type=checkbox]:focus{accent-color:var(--colors-accent-hover)}.form input[type=checkbox][readonly]{background-color:var(--colors-page);border-color:var(--colors-border);cursor:not-allowed;color:var(--colors-text-muted);opacity:.7}.form__select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--colors-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);background:var(--colors-surface);color:var(--colors-text-primary)}.form__select:disabled{background:var(--colors-border);cursor:not-allowed}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-xs);font-weight:var(--font-weight-lg);border:none;cursor:pointer;transition:background-color .15s ease,opacity .15s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn .material-icons{margin-right:var(--spacing-sm);font-size:var(--font-size-md)}.btn--primary{background-color:var(--colors-primary);color:var(--colors-text-inverse)}.btn--primary:hover:not(:disabled){background-color:var(--colors-primary-hover)}.btn--secondary{border:1px solid var(--colors-secondary);background:transparent;color:var(--colors-text-primary)}.btn--secondary:hover:not(:disabled){background-color:var(--colors-secondary)}.btn--large{width:100%}.time-slot-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.time-slot-grid__item{flex:1 1 100px;padding:var(--spacing-sm) 0;border-radius:var(--radius-sm);border:1px solid var(--colors-border);background:var(--colors-surface);text-align:center;cursor:pointer;transition:all .2s ease}@media(max-width:1024px){.time-slot-grid__item{flex:1 1 50px}}.time-slot-grid__item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.time-slot-grid__item--selected{background:var(--colors-state-success);color:var(--colors-primary-hover);border-color:var(--colors-accent)}.time-slot-grid__item--booked{background:var(--colors-border);color:var(--colors-text-muted);cursor:not-allowed}.time-slot-grid__item--past{pointer-events:none;opacity:.4}.time-slot-grid__item__time{font-weight:var(--font-weight-md);font-size:.95rem}.time-slot-grid__empty{flex:1 1 100%;padding:var(--spacing-md);text-align:center;color:var(--colors-text-muted);font-size:.9rem;border:1px dashed var(--colors-border);border-radius:var(--radius-md);background:var(--colors-surface)}.court-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);max-height:290px;overflow-y:auto;overflow-x:hidden}.court-list__item{flex:1 1 210px;padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--colors-border);background:var(--colors-surface);display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;text-align:center;transition:all .2s ease}@media(max-width:1024px){.court-list__item{display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-sm)}}.court-list__item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.court-list__item--selected{background:var(--colors-state-success);color:var(--colors-primary-hover);border-color:var(--colors-accent)}.court-list__empty{flex:1 1 100%;padding:var(--spacing-md);text-align:center;color:var(--colors-text-muted);border:1px dashed var(--colors-border);border-radius:var(--radius-md);background:var(--colors-surface)}.date-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.date-selector__month,.date-selector__days{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0;padding:var(--spacing-sm) 0 0}.date-selector__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-md);letter-spacing:.02em;color:var(--colors-text-secondary);margin:0 0 var(--spacing-xs);-webkit-user-select:none;user-select:none}.date-selector__month-tabs{display:flex;justify-content:flex-start;align-items:center;background:var(--colors-page);padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);gap:var(--spacing-sm);overflow-x:auto;max-width:100%;white-space:nowrap}.date-selector__month-tabs::-webkit-scrollbar{height:6px}.date-selector__month-tabs::-webkit-scrollbar-track{background:transparent}.date-selector__month-tabs::-webkit-scrollbar-thumb{background:#0003;cursor:grab;border-radius:10px}.date-selector__month-tabs-container{padding:var(--spacing-xs) 0}.date-selector__month-tabs .tab{flex:0 0 auto;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-md);color:var(--colors-text-muted);white-space:nowrap;cursor:pointer;border:1px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.date-selector__month-tabs .tab:hover{color:var(--colors-accent)}.date-selector__month-tabs .tab--active{background:var(--colors-state-success);color:var(--colors-text-primary);border:1px solid var(--colors-accent);box-shadow:0 4px 10px #00000014}.date-selector__days-viewport{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) 0;overflow-x:auto;scroll-behavior:smooth}.date-selector__days-viewport::-webkit-scrollbar{height:6px}.date-selector__days-viewport::-webkit-scrollbar-thumb{background:var(--colors-border);border-radius:10px}.date-selector__days-viewport .date-item{display:flex;flex-direction:column;min-width:60px;flex:1 1 60px;padding:var(--spacing-sm) 0;border:1px solid var(--colors-border);border-radius:var(--radius-sm);cursor:pointer;text-align:center;background:var(--colors-surface);transition:all .15s ease}.date-selector__days-viewport .date-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014}.date-selector__days-viewport .date-item.selected{border-color:var(--colors-accent);background-color:var(--colors-state-success);color:var(--colors-primary-hover)}.date-selector__days-viewport .date-item__day{font-size:var(--font-size-sm);font-weight:var(--font-weight-md);margin-bottom:var(--spacing-sm);color:var(--colors-text-secondary)}.date-selector__days-viewport .date-item__date{font-size:var(--font-size-lg);font-weight:var(--font-weight-xl)}.duration-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.duration-selector__item{flex:1 1 120px;padding:var(--spacing-sm) 0;border-radius:var(--radius-sm);border:1px solid var(--colors-border);background:var(--colors-surface);text-align:center;cursor:pointer;transition:all .2s ease}.duration-selector__item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.duration-selector__item--selected{background:var(--colors-state-success);color:var(--colors-primary-hover);border-color:var(--colors-accent)}.duration-selector__item--disabled{background:var(--colors-border);color:var(--colors-text-muted);cursor:not-allowed}.activity-selector{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.activity-selector__item{flex:1 1 120px;padding:var(--spacing-sm) 0;border-radius:var(--radius-sm);border:1px solid var(--colors-border);background:var(--colors-surface);text-align:center;cursor:pointer;transition:all .2s ease}@media(max-width:1024px){.activity-selector__item{display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-sm)}}.activity-selector__item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.activity-selector__item--selected{background:var(--colors-state-success);color:var(--colors-primary-hover);border-color:var(--colors-accent)}.activity-selector__item--disabled{background:var(--colors-border);color:var(--colors-text-muted);cursor:not-allowed}.activity-selector__icon{margin-right:var(--spacing-md);font-size:var(--font-size-md)}@media(max-width:1024px){.activity-selector__icon{margin-right:0}}.booking-summary{display:flex;flex-direction:column;width:100%;min-width:250px;max-width:300px;height:fit-content;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--colors-border);background:var(--colors-surface);box-shadow:0 4px 12px #00000014;cursor:default;transition:transform .2s ease,box-shadow .2s ease}@media(max-width:1024px){.booking-summary{max-width:100%;width:100%}}.booking-summary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.booking-summary__title{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-lg);color:var(--colors-text);border-bottom:1px solid var(--colors-border);padding-bottom:var(--spacing-md)}.booking-summary__message{font-size:var(--font-size-md);color:var(--colors-text-muted);line-height:1.4;margin:var(--spacing-sm) 0}.booking-summary__detail{list-style-type:none;padding:0;margin:0}.booking-summary__item{display:flex;justify-content:space-between;border-bottom:1px solid var(--colors-border);padding:var(--spacing-md) var(--spacing-sm);gap:var(--spacing-xl);align-items:flex-end}.booking-summary__item .label{color:var(--colors-text-muted);display:flex;align-items:center;gap:var(--spacing-sm)}.booking-summary__item .label .material-icons{font-size:var(--font-size-md)}.booking-summary__item .value{text-align:right;text-transform:capitalize;font-weight:var(--font-weight-md);word-wrap:break-word;white-space:normal}.booking-summary__item .value.value--col{display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-summary__item .value-mini{font-size:var(--font-size-sm);color:var(--colors-text-muted)}.booking-summary__action{width:100%;display:flex;gap:var(--spacing-md);flex-direction:column;justify-content:center;margin:var(--spacing-lg) auto var(--spacing-sm)}.booking-summary__hint{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.booking-summary__hint .material-icons{font-size:var(--font-size-sm)}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:9999}.modal-card{background:var(--colors-card);border-radius:var(--radius-md);box-shadow:0 10px 25px #0003;max-width:500px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modal-in .3s ease-out;position:relative;width:100%}.modal-close-btn{position:absolute;top:12px;right:12px;background:transparent;border:none;cursor:pointer;color:var(--colors-primary);transition:all .2s}.modal-close-btn:hover{color:var(--colors-primary-hover)}.modal-header{padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--colors-border)}.modal-header h3{margin:0;font-size:var(--font-size-lg)}.modal-body{padding:var(--spacing-md) var(--spacing-xl);overflow-y:auto}.modal-footer{padding:var(--spacing-lg) var(--spacing-md);border-top:1px solid var(--colors-border);display:flex;justify-content:center;gap:var(--spacing-xl)}.home__main{display:flex;gap:var(--spacing-lg)}@media(max-width:1024px){.home__main{flex-direction:column;padding:var(--spacing-lg)}}.home__container{flex:1 1 0;min-width:0}.home__step{background:var(--colors-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:none;box-shadow:0 4px 12px #0000000d;transition:transform .2s ease,box-shadow .2s ease}.home__step:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.home__step-title{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:var(--font-weight-lg);margin-top:0;margin-bottom:var(--spacing-lg);font-size:var(--font-size-md)}.home__step-icon{font-size:var(--font-size-md);color:var(--colors-primary)}.home__step--notice{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-xxl);background-color:var(--colors-state-warning);border-left:4px solid var(--colors-warning);border-radius:var(--radius-lg);color:var(--colors-warning);box-shadow:#32325d40 0 6px 12px -2px,#0000004d 0 3px 7px -3px}.home__step--notice .title{display:flex;gap:var(--spacing-sm);align-items:center;font-size:var(--font-size-md)}.home__step--notice .title .material-icons{font-size:var(--font-size-md)}.home__step--notice .description{margin:0 0 0 var(--spacing-lg);opacity:.8}.login__container{margin:auto;max-width:900px;width:100%;display:flex;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--colors-border);background:var(--colors-surface);box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease;height:50vh}@media(max-width:1024px){.login__container{flex-direction:column;width:100%;height:auto}}.auth-login{flex:1;align-content:center;padding:0 var(--spacing-lg)}@media(max-width:1024px){.auth-login{order:1}}.auth-login__link{font-size:var(--font-size-sm);text-align:center;color:var(--colors-text-muted)}.animated__bg{flex:1;background:var(--colors-primary);color:var(--colors-text-inverse);display:flex;border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:var(--spacing-md);position:relative;overflow:hidden}.animated__bg canvas{width:100%;height:100%;display:block}.animated__bg-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--colors-text-inverse);text-shadow:0 4px 12px rgba(0,0,0,.4);pointer-events:none;z-index:2;width:80%;display:flex;flex-direction:column;gap:var(--spacing-lg)}.animated__bg-content span.title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-xl)}.animated__bg-content span.desc{font-size:var(--font-size-md)}.checkout__header{margin-bottom:var(--spacing-lg)}.checkout__back{display:inline-flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;color:var(--colors-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm);transition:color .3s}.checkout__back:hover{color:var(--colors-accent)}.checkout__back .material-icons{font-size:18px}.checkout__main-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-xl)}.checkout__container{display:flex;background-color:var(--colors-surface);padding:var(--spacing-lg);box-shadow:0 4px 12px #00000014;border-radius:var(--radius-md);gap:var(--spacing-xxl)}@media(max-width:1024px){.checkout__container{flex-direction:column}}.checkout__summary{flex:1}.checkout__summary--content{background-color:var(--colors-page);padding:var(--spacing-lg);border-radius:var(--radius-md)}.checkout__summary--content .summary-total{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding-bottom:var(--spacing-lg);border-bottom:2px dashed var(--colors-border);margin-bottom:var(--spacing-lg)}.checkout__summary--content .summary-total .summary-label{font-size:var(--font-size-sm);color:var(--colors-text-muted)}.checkout__summary--content .summary-total .summary-value{font-size:var(--font-size-xxl);font-weight:var(--font-weight-xl);color:var(--colors-accent)}.checkout__summary--content ul.summary-details,.checkout__summary--content ul.summary-pricing{list-style:none;padding:0;margin:0}.checkout__summary--content ul.summary-details{margin-bottom:var(--spacing-lg)}.checkout__summary--content ul.summary-details li{padding:var(--spacing-xs) 0}.checkout__summary--content ul.summary-pricing{padding-top:var(--spacing-md);border-top:1px solid var(--colors-border)}.checkout__summary--content ul.summary-pricing li{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;color:var(--colors-text-secondary)}.checkout__summary--content ul.summary-pricing li.summary-total-row{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--colors-border)}.checkout__summary--content ul.summary-pricing li.summary-total-row .label{font-weight:var(--font-weight-xl);color:var(--colors-text-primary)}.checkout__summary--content ul.summary-pricing li.summary-total-row .value{font-size:var(--font-size-lg);color:var(--colors-accent)}.checkout__summary--content li{display:flex;justify-content:space-between;font-size:var(--font-size-sm)}.checkout__summary--content li .label{color:var(--colors-text-muted)}.checkout__summary--content li .value{font-weight:var(--font-weight-xl);color:var(--colors-text-primary)}.checkout__contact{flex:1.5}@media(max-width:1024px){.checkout__contact{order:1}}.checkout__contact--info{border:1px solid var(--colors-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);overflow:hidden}.checkout__contact--info ul{list-style:none;padding:0;margin:0}.checkout__contact--info ul li{padding:var(--spacing-lg);display:flex;justify-content:space-between;border-bottom:1px solid var(--colors-border)}.checkout__contact--info ul li:last-child{border-bottom:none}.checkout__contact--action .btn{text-transform:uppercase}.checkout__contact--payment{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}@media(max-width:768px){.checkout__contact--payment{grid-template-columns:1fr}}.checkout .section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-xl);margin:var(--spacing-lg) 0 var(--spacing-md);color:var(--colors-text-primary)}.checkout__cart-list{max-height:400px;overflow-y:auto;margin-bottom:var(--spacing-lg)}.checkout__cart-list::-webkit-scrollbar{width:4px}.checkout__cart-list::-webkit-scrollbar-thumb{background:var(--colors-border);border-radius:10px}.checkout-item{background-color:var(--colors-surface);border:1px solid var(--colors-border);transition:transform .2s;padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);position:relative}.checkout-item:hover{border-color:var(--colors-accent)}.checkout-item__main{display:flex;justify-content:space-between;font-weight:var(--font-weight-xl);margin-bottom:var(--spacing-md)}.checkout-item__sub{color:var(--colors-text-secondary)}.checkout-item__sub p{display:flex;align-items:center;gap:var(--spacing-sm);margin:var(--spacing-xs) 0}.checkout-item__sub .material-icons{font-size:var(--font-size-md)}.checkout-item .remove-btn{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--colors-danger);text-decoration:none;font-weight:var(--font-weight-xl);margin-top:var(--spacing-md);font-size:var(--font-size-sm);background:none;border:none;cursor:pointer;padding:0}.checkout-item .remove-btn .material-icons{font-size:var(--font-size-md)}.checkout-item .remove-btn:hover{opacity:.8}.payment-page .payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media(max-width:768px){.payment-page .payment-methods{grid-template-columns:1fr}}.payment-page .payment-form{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.payment-page .payment-form .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.payment-page .payment-form button.btn--primary{margin-top:var(--spacing-lg);width:100%}.payment-page .payment-placeholder{margin-top:var(--spacing-lg);text-align:center}.payment-page .payment-placeholder button.btn--primary{margin-top:var(--spacing-md)}.wallet-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media(max-width:768px){.wallet-list{grid-template-columns:1fr}}.wallet-option{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--colors-border);border-radius:var(--radius-md);cursor:pointer;background:var(--colors-surface);transition:all .2s ease}.wallet-option .wallet-icon{max-width:50px;height:30px;object-fit:contain;width:100%}.wallet-option .wallet-name{font-weight:var(--font-weight-md);color:var(--colors-text-primary)}.wallet-option:hover,.wallet-option.active{border-color:var(--colors-accent);background:var(--colors-state-success)}.wallet-option.active .material-icons{color:var(--colors-accent)}.payment-option{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-sm);border:2px solid var(--colors-border);cursor:pointer;transition:all .3s}.payment-option:hover{border-color:var(--colors-accent)}.payment-option.active{background-color:var(--colors-state-success);border-color:var(--colors-accent);color:var(--colors-accent)}.payment-option .material-icons{font-size:var(--font-size-lg)}.payment-option__without-icon{padding:var(--spacing-sm) var(--spacing-xl)}.thank_you-page{display:flex;justify-content:center;align-items:center;min-height:80vh}.thank_you-page .thank-you-card{max-width:960px;width:100%;background:var(--colors-card);border:1px solid var(--colors-border);border-radius:var(--radius-md);padding:var(--spacing-xxl);text-align:center;box-shadow:0 4px 12px #0000000d}.thank_you-page .thank-you-card h1{font-size:var(--font-size-xxl);color:var(--colors-text-primary);margin-bottom:var(--spacing-md);margin-top:0}.thank_you-page .thank-you-card p{color:var(--colors-text-secondary);margin-bottom:var(--spacing-md)}.thank_you-page .thank-you-card p.mini{font-size:var(--font-size-sm);color:var(--colors-text-muted)}.thank_you-page .thank-you-card .btn{margin-top:var(--spacing-xl)}.profile{margin:0 auto;padding:var(--spacing-xl) var(--spacing-md);font-family:var(--font-family)}.profile__content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.profile-card{background:var(--colors-surface);padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--radius-md);border:1px solid var(--colors-border);box-shadow:0 2px 4px #00000005}.profile-card__title{font-size:var(--font-size-md);font-weight:var(--font-weight-xl);margin-bottom:var(--spacing-lg)}.booking-history__empty{color:var(--colors-text-muted);background:var(--colors-surface);border:1px dashed var(--colors-border);border-radius:var(--radius-md);padding:var(--spacing-xl);text-align:center}.booking-history__list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.booking-card{background:var(--colors-surface);border:1px solid var(--colors-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);overflow:hidden}.booking-card__header{background:#b6c2d21a;padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--colors-border)}.booking-card__date{display:flex;gap:var(--spacing-md)}@media(max-width:375px){.booking-card__date{font-size:var(--font-size-xs);flex-direction:column;gap:var(--spacing-xs)}}.booking-card__date .label{color:var(--colors-text-muted)}.booking-card__date .value{color:var(--colors-text-primary);font-weight:var(--font-weight-md)}.booking-card__body{padding:var(--spacing-lg) var(--spacing-md) 0;display:block}.booking-card__body .booking-main{display:flex;flex-direction:column}.booking-card__body .booking-title{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:var(--font-weight-lg);color:var(--colors-text-primary)}.booking-card__body .booking-title .material-icons{font-size:var(--font-size-md);color:var(--colors-text-secondary)}.booking-card__body .booking-total{margin-top:var(--spacing-lg);padding:var(--spacing-md) 0;display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--colors-border);background:transparent}@media(max-width:768px){.booking-card__body .booking-total{flex-direction:column;gap:var(--spacing-sm)}}.booking-card__body .booking-total .total-label{font-size:var(--font-size-sm);letter-spacing:.02em;color:var(--colors-text-muted);font-weight:var(--font-weight-md)}.booking-card__body .booking-total .booking-price{display:flex;align-items:baseline;gap:var(--spacing-sm);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}@media(max-width:768px){.booking-card__body .booking-total .booking-price{flex-direction:column;align-items:center;gap:var(--spacing-xs)}}.booking-card__body .booking-total .booking-price .currency{font-size:var(--font-size-sm);color:var(--colors-text-muted)}.booking-card__body .booking-total .booking-price .currency--mobile{display:none}@media(max-width:768px){.booking-card__body .booking-total .booking-price .currency{display:none}.booking-card__body .booking-total .booking-price .currency--mobile{display:flex;font-size:var(--font-size-sm);color:var(--colors-text-muted)}}.booking-card__body .booking-total .booking-price .amount{font-size:var(--font-size-xl);font-weight:var(--font-weight-xl)}@media(max-width:768px){.booking-card__body .booking-total .booking-price .amount{font-size:var(--font-size-xxl)}}.booking-card__footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px dashed var(--colors-border)}.booking-card__footer .admin-note{color:var(--colors-text-muted);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.booking-card__footer .admin-note .material-icons{font-size:var(--font-size-md)}.booking-status{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-xs);font-weight:var(--font-weight-lg)}@media(max-width:375px){.booking-status{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}}.booking-status--confirmed{background:var(--colors-state-success);color:var(--colors-accent);border:1px solid var(--colors-accent)}.booking-status--completed{background:var(--colors-state-warning);color:var(--colors-warning);border:1px solid var(--colors-warning)}.booking-status--cancelled{background:var(--colors-state-error);color:var(--colors-danger);border:1px solid var(--colors-danger)}.info-list{list-style:none;margin:0;padding:0}.info-list__item{display:flex;justify-content:space-between;border-bottom:1px dashed var(--colors-border);padding:var(--spacing-md);gap:var(--spacing-lg)}.info-list__item:last-child{border-bottom:none}.info-list__label{color:var(--colors-text-muted);display:flex;gap:var(--spacing-sm);align-items:center}.info-list__label .material-icons{font-size:var(--font-size-md)}.info-list__value{font-weight:var(--font-weight-lg);flex-wrap:wrap}
