.customer-header{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;display:flex;height:50px;justify-content:space-between;left:0;margin:0;padding:0 10px;position:fixed;top:0;width:100%;z-index:1000}.logo-text{color:#c53334;flex-grow:1;font-size:20px;font-size:16px;font-weight:400;font-weight:700;margin:0;text-align:center}.menu-icon{cursor:pointer}.language-icon{height:22px;width:22px}.nav-links{background-color:#fff;box-shadow:0 2px 5px #0003;display:none;flex-direction:column;left:0;padding:10px;position:absolute;top:100%;width:100%}.nav-links.open{display:flex}.nav-link{color:#333;font-size:16px;padding:15px;text-decoration:none}.branch-selector{cursor:pointer;position:relative}.branch-selector .nav-link{display:inline-block}.branch-menu{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 5px #0003;left:0;position:absolute;top:100%;width:120px;z-index:1000}.branch-option{background-color:#fff;color:#000;cursor:pointer;font-size:14px;padding:8px 12px;text-align:center}.branch-option:hover{background-color:#f5f5f5}.branch-option.active{background-color:#c53334;border:2px solid #c53334;color:#fff}.language-selector{align-items:center;cursor:pointer;display:flex;position:relative}.language-text{align-items:center;color:#333;display:flex;font-size:18px;white-space:nowrap}.language-text img{height:22px;margin-left:8px;width:22px}.language-menu{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 5px #0003;position:absolute;right:0;top:100%;width:150px;z-index:1000}.language-option{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:8px 12px}.language-option:hover{background-color:#f5f5f5}.language-option img{height:20px;width:20px}@media (min-width:768px){.customer-header{height:50px;padding:0 15px}.logo-text{font-size:20px}.language-icon,.menu-icon{height:22px;width:22px}.nav-link{padding:10px}.branch-option,.nav-link{font-size:16px}}@media (min-width:1024px){.customer-header{height:60px;padding:0 20px}.logo-text{color:#c53334;font-weight:700;width:200px}.menu-icon{display:none}.language-icon{height:24px;width:24px}.nav-links{box-shadow:none;display:flex;flex-direction:row;padding:0;position:static}.nav-link{font-size:18px;padding:0 15px}.branch-selector{align-items:center;display:inline-flex}.branch-menu{width:150px}.branch-option{font-size:18px}}@media (max-width:768px){.language-text{font-size:0}.language-text img{height:22px;margin-left:0;width:22px}}.logo-group{align-items:center;display:flex;text-decoration:none}.logo-image{height:40px;margin-left:auto;width:40px}.nav-link[href$="#intro"]{display:none}.service-grid{gap:50px;width:100%}.service-card,.service-grid{display:flex;flex-direction:column}.service-card{background-color:#fff;overflow:hidden}.service-image{aspect-ratio:1/1;overflow:hidden;width:100%}.service-image img{height:100%;object-fit:cover;object-position:center;width:100%}.service-content{display:flex;flex:1 1;flex-direction:column;text-align:left}.service-duration{align-items:center;display:flex;gap:8px;margin-bottom:5px}.service-info-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.service-price-text{color:#c53334;font-size:20px;font-weight:700;text-align:right}.clock-icon{height:16px;vertical-align:middle;width:16px}.service-name{-webkit-line-clamp:2;font-size:18px;font-weight:700;margin-bottom:10px}.service-name,.service-short-description{-webkit-box-orient:vertical;color:#333;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.service-short-description{-webkit-line-clamp:3;font-size:16px;margin-bottom:15px}.service-details-text{color:#c53334;cursor:pointer;font-size:14px;margin-bottom:15px;text-align:left}.service-details-text:hover{text-decoration:underline}.service-price-button{background-color:#c53334;border:none;color:#fff;cursor:pointer;font-size:16px;padding:15px;transition:background-color .3s;width:100%}.service-price-button:hover{background-color:#45a049}@media (min-width:768px){.service-grid{flex-direction:row;flex-wrap:wrap;justify-content:space-between}.service-card{width:30%}.service-image{max-height:400px;max-width:400px}.service-name{font-size:22px;min-height:66px}.service-short-description{font-size:18px}.service-details-text,.service-price-button{font-size:16px}}.footer{background-color:#313131;box-sizing:border-box;color:#fff;margin-left:calc(-50vw + 50%);margin-top:40px;padding:40px 20px;width:100vw}@media (min-width:768px){.footer-container{display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.footer-left{flex:6 1}.footer-right{display:flex;flex:4 1;flex-direction:column;gap:20px}.footer-grid{padding:20px}.footer-title{align-items:center;display:flex;gap:10px;margin-bottom:15px}.footer-logo{height:60px;width:60px}.footer-grid h3{font-size:1.5rem;font-weight:700}.footer-grid ul{list-style:none;padding:0}.footer-item{align-items:center;display:flex;gap:10px;margin-bottom:30px}.footer-icon{height:20px;margin-right:15px;padding-left:15px;width:20px}.footer-grid li a{color:#fff;font-size:1rem;text-decoration:none}.footer-grid li a:hover{text-decoration:underline}.social-icons{display:flex;gap:15px}.social-icon{height:30px;width:30px}}@media (max-width:767px){.footer-container{display:flex;flex-direction:column;gap:20px}.footer-grid{padding:15px}.footer-title{align-items:center;display:flex;gap:8px;margin-bottom:10px}.footer-logo{height:50px;width:50px}.footer-grid h3{font-size:1.2rem;font-weight:700}.footer-grid ul{list-style:none;padding:0}.footer-item{align-items:center;display:flex;gap:8px;margin-bottom:30px}.footer-icon{height:18px;margin-right:15px;padding-left:15px;width:18px}.footer-grid li a{color:#fff;font-size:.9rem;text-decoration:none}.footer-grid li a:hover{text-decoration:underline}.social-icons{display:flex;gap:12px}.social-icon{height:35px;width:35px}}.customer-container{align-items:center;box-sizing:border-box;font-family:Arial,sans-serif;margin:0;min-height:100vh;padding:50px 20px 20px}.customer-container,.customer-main{display:flex;flex-direction:column;width:100%}.customer-main{max-width:1200px}.row-1{background-color:#f0f0f0;margin-left:calc(-50vw + 50%);padding:40px 0;width:100vw}.row-1 .content-wrapper{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.left-column{flex:1 1;text-align:left}.right-column{flex:1 1;text-align:center}.mobile-content{align-items:center;display:flex;flex-direction:column;text-align:center}.welcome-text{font-size:30px;font-weight:400;margin-bottom:10px;text-align:start}.description{color:#333;font-size:16px;margin-bottom:15px;text-align:start}.customer-image{height:auto;margin-bottom:30px;max-width:400px;width:100%}.highlight{color:#c53334;display:block;font-size:24px;font-weight:700;margin-bottom:30px}.register-button{background-color:#c53334;border:none;color:#fff;cursor:pointer;font-size:16px;max-width:400px;padding:12px;transition:background-color .3s;width:100%}.register-button:hover{background-color:#45a049}.row-2{max-width:1200px;width:100%}.benefits-section{text-align:center;width:100%}.benefits-title{color:#333;font-size:28px;font-weight:700;margin-bottom:40px}.benefits-container{display:flex;flex-direction:column;gap:20px}.benefit-box{background-color:#fff;border:1px solid #c53334;border-radius:10px;padding:20px;text-align:center}.benefit-box h3{color:#c53334;font-size:20px;margin-bottom:10px}.benefit-box p{color:#666;font-size:16px;line-height:1.5}.benefit-icon{height:80px;margin-bottom:15px;width:80px}.row-3{margin-top:20px;max-width:1200px;width:100%}.services-section{text-align:center;width:100%}.services-title{font-size:28px;margin-bottom:40px}.row-4{margin-top:50px;max-width:1200px;width:100%}.about-us-section{text-align:center;width:100%}.about-us-container{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.about-us-image{height:auto;width:100%}@media (min-width:768px){.row-1{align-items:center;display:flex;flex-direction:row;justify-content:space-between}.left-column{flex-direction:column;padding-right:20px}.left-column,.right-column{display:flex;justify-content:center;width:50%}.right-column{align-items:center}.customer-image{margin:0;max-width:500px}.welcome-text{font-size:36px;font-weight:700;margin-bottom:20px}.description{font-size:18px;line-height:1.6;margin-bottom:20px}.highlight{font-size:28px;margin-bottom:40px}.register-button{font-size:18px;max-width:300px;padding:15px}.benefits-container{flex-direction:row;justify-content:space-between}.benefit-box{width:30%}.benefits-title{font-size:36px}.benefit-box h3{font-size:22px}.benefit-box p{font-size:18px}.benefit-icon{height:100px;padding-top:20px;width:100px}.services-title{font-size:36px}.about-us-container{flex-direction:row;gap:10px;justify-content:space-between}.about-us-image{height:auto;width:calc(50% - 5px)}}.view-more-services{align-items:center;color:#666;cursor:pointer;display:flex;font-size:16px;justify-content:end;margin-top:35px;transition:color .3s}.view-more-services:hover{color:#c53334}.view-more-services .arrow-icon{color:inherit;margin-left:8px}@media (min-width:768px){.view-more-services{font-size:18px}}.location-selection-container{background-color:#fff;display:flex;flex-direction:row;min-height:100vh;padding:20px;text-align:center}.left-section{align-items:center;flex:4 1;flex-direction:column}.left-section,.right-section{display:flex;justify-content:center}.right-section{flex:6 1;flex-direction:column}.header{margin-bottom:20px}.logo{height:auto;margin-bottom:10px;width:100px}.header h1{color:#c53334;font-size:28px;font-weight:700;margin:5px 0}.header p{color:#666;font-size:20px;margin:5px 0;padding-top:15px}.map-container{margin:20px 0}.map{height:auto;max-width:450px;width:100%}.instruction{color:#333;font-size:18px;margin:20px 0;max-width:350px;text-align:left;width:100%}.location-buttons{display:flex;flex-direction:column;gap:10px;max-width:350px;width:100%}.location-button{border:none;border-radius:0;cursor:pointer;font-size:18px;padding:15px;transition:background-color .3s}.location-button.primary{background-color:#c53334;color:#fff}.location-button.primary:hover{background-color:#45a049}.location-button.secondary{background-color:#fff;border:1px solid #c53334;color:#c53334}.location-button.secondary:hover{background-color:#e0e0e0}.location-info{margin-bottom:30px;text-align:center}.location-info h2{color:#c53334;font-size:30px;font-weight:700;margin-bottom:10px;text-align:center}.location-address{align-items:center;display:flex;justify-content:center;margin-bottom:15px}.pin-icon{height:20px;margin-right:15px;width:20px}.location-address p{color:#333;font-size:15px;margin:0;text-align:left}.location-images{display:flex;gap:10px;justify-content:center}.spa-image{border-radius:0;height:250px;object-fit:cover;width:250px}@media (max-width:768px){.location-selection-container{align-items:center;flex-direction:column;text-align:center}.left-section,.right-section{align-items:center;flex:1 1;padding:10px;text-align:center}.location-buttons,.map{max-width:100%}.location-info{text-align:center}.spa-image{height:auto;width:100%}.location-images{flex-direction:column;gap:15px}}.login-container{align-items:center;display:flex;height:100vh;justify-content:center}.login-box{background-color:#fff;border-radius:10px;max-width:400px;padding:40px;text-align:center;width:100%}.login-logo{margin-bottom:10px;width:100px}.spa-name{color:#c53334;font-size:24px;margin-bottom:20px}.login-title{color:#1a73e8;margin-bottom:20px}.login-error{color:red;margin-bottom:20px}.login-form .input-group{margin-bottom:20px;text-align:left}.login-form label{color:#333;display:block;font-size:14px;margin-bottom:8px}.login-form input{border:1px solid #ddd;border-radius:12px;box-sizing:border-box;font-size:16px;outline:none;padding:12px;width:100%}.password-container{position:relative}.password-toggle{cursor:pointer;height:20px;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px}.login-form button{background-color:#c53334;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;padding:12px;transition:background-color .3s;width:100%}.login-form button:hover{background-color:#a82a2a!important}.header-admin{background-color:#fff;border-bottom:2px solid #e0e0e0;justify-content:space-between;left:0;padding:9px 20px;position:fixed;right:0;top:0;z-index:1000}.header-admin,.header-content{align-items:center;display:flex}.header-content{flex-grow:1}.header-logo{height:30px;margin-right:10px;width:30px}.header-title{color:#c53334;font-size:18px;font-weight:700;margin:0}.menu-button{background:none;border:none;cursor:pointer;padding:10px}.menu-icon{height:20px;width:20px}.sidebar{background-color:#fff;box-shadow:-2px 0 5px #0003;height:100%;position:fixed;right:-300px;top:0;transition:right .3s ease-in-out;width:250px;z-index:1001}.sidebar.open{right:0}.close-button{background:none;border:none;color:#000;cursor:pointer;font-size:20px;left:20px;position:absolute;top:20px}.sidebar-user-info{align-items:center;display:flex;flex-direction:column;padding:70px 20px 20px}.sidebar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.grid-item{background-color:#f0f0f0;border-radius:5px;height:50px;width:50px}.user-info{align-items:center;display:flex;width:100%}.avatar{border-radius:50%;height:40px;margin-right:10px;width:40px}.user-text{display:flex;flex-direction:column}.username{color:#000;font-size:16px;font-weight:700;margin-bottom:5px}.branch{color:#666;font-size:12px}.sidebar-divider{border:none;border-top:1px solid #d9d9d9;margin:10px 0}.sidebar-menu{align-items:flex-start;display:flex;flex-direction:column;list-style:none;margin:0;padding:0 20px}.sidebar-menu li{margin:15px 0}.sidebar-menu a{color:#000;font-size:18px;text-decoration:none}.sidebar-menu a:hover{color:#c53334}.overlay{background-color:#0006;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.home-container{background-color:#f0f2f5;min-height:100vh;position:relative}.grid-container{bottom:0;display:grid;grid-template-rows:205px 1fr;height:calc(100vh - 60px);left:0;position:fixed;right:0;top:60px}.grid-left{background-color:#c53334}.grid-right{background-color:#f2f3f4}.search-bar{background-color:#ffffff80}.notification{z-index:10000}.total-amount-branch{color:#fff;font-size:22px;font-weight:600;margin-top:10px}.stats-container{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;box-sizing:border-box;padding:15px;width:100%}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.stats-item{align-items:center;border-radius:8px;display:flex;padding:5px}.stats-icon{height:30px;margin-right:12px;width:30px}.stats-text{display:flex;flex-direction:column}.stats-label{color:#808b96;font-size:12px;margin-bottom:5px}.stats-value{color:#000;font-size:16px;font-weight:600}.error-text{color:red;text-align:center}.grid-box{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;box-sizing:border-box;padding:10px;width:100%}.invoice-item{border-bottom:1px solid #e0e0e0;padding:10px 0}.invoice-item.last{border-bottom:none}.invoice-header{margin-bottom:5px}.invoice-name{color:#000;font-weight:400}.invoice-name,.invoice-price{font-size:14px}.invoice-footer{align-items:center}.invoice-payment-method,.invoice-time{color:#808b96;font-size:12px}.ticket-item{border-bottom:1px solid #e0e0e0;padding:10px 0}.ticket-item.last{border-bottom:none}.ticket-status.paid{background-color:#e8f5e9;color:#28a745}body{font-family:Arial,sans-serif;margin:0}button:hover{background-color:#e0e0e0!important}.ticket-detail-container{background-color:#f2f3f4;display:flex;flex-direction:column;min-height:100vh;position:relative}.ticket-detail-content{align-items:center;display:flex;flex-direction:column;padding:20px}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.payment-modal{background-color:#fff;border-radius:10px;box-shadow:0 4px 16px #0003;max-width:280px;padding:20px;text-align:center;width:100%}.payment-modal h3{color:#333;font-size:18px;margin:0 0 15px}.payment-method{margin-bottom:15px;text-align:left}.payment-method label{color:#666;display:block;font-size:14px;margin-bottom:5px}.payment-method select{border:1px solid #ccc;border-radius:5px;font-size:14px;padding:8px;width:100%}.promotion-slider{margin-bottom:15px;text-align:left}.promotion-slider label{color:#666;display:block;font-size:14px;margin-bottom:5px}.promotion-slider input[type=range]{width:100%}.total-price{margin-bottom:15px;text-align:left}.total-price label{font-size:14px}.payment-button{background-color:#c53334;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:10px;width:100%}.payment-button:hover{background-color:#b02c2d}.cancel-payment-button{color:#666;cursor:pointer;display:block;font-size:14px;margin-top:10px;text-align:center}.confirm-modal{background-color:#fff;border-radius:10px;box-shadow:0 4px 16px #0003;max-width:280px;overflow:hidden;padding:20px;position:relative;text-align:center;width:100%}.confirm-modal:after{animation:modalProgressBar 5s linear forwards;background-color:#c53334;bottom:0;content:"";height:3px;left:0;position:absolute;width:0}@keyframes modalProgressBar{0%{width:0}to{width:100%}}.confirm-image{display:block;height:60px;margin:0 auto 15px;width:60px}.confirm-modal p{color:#333;font-size:16px;margin:0 0 20px}.final-price{margin-bottom:20px;margin-top:30px}.final-price span{color:#333;font-size:22px;font-weight:600}.confirm-buttons{display:flex;justify-content:space-between}.cancel-button,.confirm-button{flex:1 1;padding:10px}.confirm-button{background-color:#c53334;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px}.confirm-button:hover{background-color:#b02c2d}.return-home-button{background-color:#c53334;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;margin-bottom:10px;padding:10px;width:100%}.return-home-button:hover{background-color:#b02c2d}.auto-return-text{color:#666;display:block;font-size:12px;text-align:center}.ticket-info-box{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;margin-top:60px;max-width:400px;width:100%}.ticket-fullname{font-size:16px;font-weight:700;padding:10px}.ticket-detail-row{padding-left:10px;padding-right:10px}.ticket-value{display:inline-block}.ticket-status{color:#666;margin:10px 0;text-align:center}.ticket-status.in-use{color:red}.action-button{border:none;border-radius:10px;cursor:pointer;font-size:14px;max-width:400px;padding:10px 20px;text-align:center;width:100%}.action-button.start-use{background-color:#c53334;color:#fff}.action-button.start-use:hover{background-color:#b02c2d}.action-button.complete-service{background-color:#c53334;color:#fff}.action-button.complete-service:hover{background-color:#f8ebeb}.confirmed-actions{align-items:center;display:flex;flex-direction:column;margin-top:10px}.view-ticket-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:15px;padding:8px 16px}.booking-container{align-items:center;background-color:#fff;margin:auto auto 100px;max-width:600px;padding:20px}.booking-service-title{color:#333;font-size:24px;font-weight:700;margin-bottom:20px;text-align:center}.booking-form-group{margin-bottom:15px}.booking-form-group label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:5px}.booking-form-group input,.booking-form-group select{box-sizing:border-box;font-size:13px;margin-bottom:10px;margin-top:7px;padding:10px;width:100%}.booking-form-group select{-webkit-appearance:none;appearance:none;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24"><path fill="black" d="M7 10l5 5 5-5z"/></svg>') no-repeat right 10px center;background-size:12px;border-radius:0}.booking-form-group select::-ms-expand{display:none}.booking-payment-methods{margin-bottom:20px}.booking-payment-methods h4{color:#333;font-size:16px;font-weight:700;margin-bottom:10px}.payment-option{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.payment-option input{margin-left:10px;order:2}.payment-option label{align-items:center;color:#555;display:flex;font-size:14px;order:1}.payment-icon{height:20px;margin-right:10px;width:20px}.booking-promotion{margin-bottom:20px}.promotion-message{background-color:#f3d6d6;border-radius:5px;margin-top:10px;padding:10px}.promotion-message p:first-child{font-weight:700;margin:0 0 5px}.promotion-message p:last-child{font-size:14px;margin:0}.booking-branch-address{margin-bottom:20px}.booking-branch-address h4{color:#333;font-size:16px;font-weight:700;margin-bottom:10px}.booking-branch-address p{color:#555;font-size:13px}.booking-footer{align-items:stretch;background-color:#fff;bottom:0;box-shadow:0 -2px 5px #0000001a;display:flex;flex-direction:column;left:0;margin:0 auto;max-width:600px;padding:10px 20px;position:fixed;right:0;z-index:1000}.booking-total{align-items:center;color:#333;display:flex;font-size:18px;justify-content:space-between;margin-bottom:10px}.total-amount{color:#d32f2f}.booking-submit-button{background-color:#d32f2f;border:none;color:#fff;cursor:pointer;font-weight:700;padding:10px;text-transform:uppercase;width:100%}.booking-submit-button:hover{background-color:#b71c1c}.payment-not-supported{animation:slideInOut 3s ease-in-out forwards;background-color:#ff4d4f;border-radius:5px;color:#fff;padding:10px 20px;position:fixed;right:20px;top:20px;z-index:1000}.booking-success-container{background-color:#f2f3f4;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;padding-left:20px;padding-right:20px;padding-top:50px}.success-title{color:#333;font-size:20px;font-weight:700;margin-bottom:20px;text-align:center;width:100%}.ticket-info{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto;max-width:600px;padding:20px}.logo-group-booking-success{align-items:center;cursor:pointer;display:flex;justify-content:center;margin-bottom:10px}.logo-image-success{height:40px;margin-right:10px;width:40px}.logo-text-success{color:#c53334;font-size:20px;font-weight:700}.ticket-field{margin-bottom:0}.label{color:#888;display:block;font-size:13px;margin-bottom:5px}.ticket-id{color:#000;font-size:30px;font-weight:700}.value{color:#000;font-size:15px}hr{border:none;border-top:1px solid #ddd;margin:10px 0}.ticket-columns{display:flex;justify-content:space-between;margin-bottom:0;width:100%}.ticket-column{min-width:0;padding:0 5px;text-align:start}.ticket-column:not(:last-child){margin-right:10px}.ticket-instruction-wrapper{margin:14px -20px -20px}.ticket-instruction{background-color:#d9d9d9;border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top-left-radius:0;border-top-right-radius:0;padding:10px;text-align:center}.ticket-instruction p{font-size:14px;margin:10px 0 5px}.instruction-title{color:#d32f2f;font-weight:700}.instruction-line{color:#333}.ticket-timer{color:#d32f2f;font-size:14px;margin:15px 0;text-align:center;width:100%}.button-group{display:flex;gap:50px;justify-content:center;margin-top:20px;width:100%}.button-wrapper{flex-direction:column}.button-wrapper,.icon-button{align-items:center;display:flex}.icon-button{background-color:#fff;border:none;border-radius:5px;box-shadow:0 2px 4px #0003;cursor:pointer;height:50px;justify-content:center;transition:transform .2s;width:50px}.icon-button:hover{transform:scale(1.05)}.icon-image{height:22px;width:22px}.button-text{color:#333;font-size:14px;margin-top:8px}.ticket-expiry-note{color:#d32f2f;font-size:12px;margin-bottom:0;margin-top:10px}.all-services-container{display:flex;flex-direction:column;margin-top:50px;min-height:100vh}.all-services-content{flex:1 1;margin:0 auto;max-width:1200px;padding:20px}.services-title{color:#333;color:var(--primary-color,#333);font-size:2rem;font-weight:700;margin-bottom:20px;text-align:center}.service-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.no-data{color:var(--text-color,#666);font-size:1.2rem}.header-customer{align-items:center;background-color:#f8f9fa;box-shadow:0 2px 4px #0000001a;display:flex;height:60px;justify-content:space-between;left:0;padding:0 20px;position:fixed;top:0;width:100%;z-index:1000}.service-detail-container{background-color:#fff;margin:20px auto;max-width:800px;padding:80px 20px 20px}.service-detail-image img{height:auto;margin-bottom:20px;object-fit:cover;width:100%}.service-detail-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#333;display:-webkit-box;font-size:20px;font-weight:700;margin-bottom:20px;overflow:hidden;text-align:left;text-overflow:ellipsis}.service-detail-duration{align-items:center;color:#666;display:flex;font-size:16px;gap:8px;margin-bottom:20px}.clock-icon{height:20px;width:20px}.service-detail-description{border:1px solid #000;border-radius:5px;color:#333;font-size:16px;line-height:1.6;margin-bottom:20px;padding:15px}.description-list{list-style-type:disc;margin:0;padding-left:20px}.description-list li{margin-bottom:10px}.description-table{display:flex;gap:20px;justify-content:space-between}.description-column{flex:1 1;min-width:0}.description-column:first-child{border-right:1px solid #000;padding-right:10px}.description-column:last-child{padding-left:10px}.description-column h4{font-size:18px;font-weight:700;text-align:center}.service-detail-price-button{background-color:#c53334;border:none;color:#fff;cursor:pointer;font-size:18px;padding:15px;transition:background-color .3s;width:100%}.service-detail-price-button:hover{background-color:#45a049}@media (max-width:768px){.service-detail-container{margin-top:40px;padding:10px}.service-detail-name{font-size:18px}.service-detail-description,.service-detail-duration{font-size:14px}.description-list{padding-left:15px}.description-list li{margin-bottom:8px}.description-table{gap:10px}.description-column:first-child{padding-right:5px}.description-column:last-child{padding-left:5px}.description-column h4,.service-detail-price-button{font-size:16px}}.memories-page{display:flex;flex-direction:column;min-height:100vh}.memories-container{flex:1 1;margin:20px;max-width:95vw;padding:3vw;text-align:center}.memories-container h1{color:#333;font-size:2.5rem;margin-bottom:20px;margin-top:40px}.memories-grid{grid-gap:1vw;display:grid;gap:1vw;grid-template-columns:repeat(3,1fr);width:100%}.memory-item{background-color:#fff;border-radius:8px;cursor:pointer;overflow:hidden;padding-top:100%;position:relative}.memory-image{border-radius:0;height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform .3s ease;width:100%}.memory-image:hover{transform:scale(1.05)}.memories-modal{background:#000000b3;height:100%;justify-content:center;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:1000}.memories-modal,.modal-content{align-items:center;display:flex}.modal-content{flex-direction:column;gap:20px;max-height:90vh;max-width:90vw;position:relative}.modal-main-image img{border-radius:8px;max-height:60vh;max-width:70vw;object-fit:contain}.thumbnail-list{display:flex;gap:10px;max-width:70vw;overflow-x:auto;padding:10px 0;scroll-behavior:smooth;scrollbar-width:none;width:100%}.thumbnail-list::-webkit-scrollbar{display:none}.thumbnail-item{cursor:pointer;flex:0 0 auto;height:60px;transition:transform .3s ease,border .3s ease;width:60px}.thumbnail-item img{border-radius:4px;height:100%;object-fit:cover;width:100%}.thumbnail-item.active{border:2px solid #00f;transform:scale(1.2)}.thumbnail-item:hover:not(.active){transform:scale(1.1)}.modal-close{background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;position:absolute;right:-40px;top:-40px;transition:color .3s ease}.modal-close:hover{color:#ccc}@media (max-width:768px){.memories-grid{gap:2vw}.memories-container{max-width:98vw;padding:2vw}.memories-container h1{font-size:1.8rem}.modal-main-image img{max-height:50vh;max-width:85vw}.thumbnail-list{max-width:85vw}.thumbnail-item{height:50px;width:50px}.modal-close{font-size:1.5rem;right:-30px;top:-30px}}@media (max-width:480px){.memories-grid{gap:1vw}.memories-container{padding:1vw}.memories-container h1{font-size:1.5rem}.modal-main-image img{max-height:45vh;max-width:90vw}.thumbnail-list{max-width:90vw}.thumbnail-item{height:40px;width:40px}.modal-close{font-size:1.2rem;right:-25px;top:-25px}}.all-tickets-container{background-color:#fff;min-height:100vh;position:relative}.all-tickets-content{flex:1 1;padding:20px}.scroll-view{box-sizing:border-box;left:20px;margin:0 auto;max-width:400px;position:absolute;right:20px;top:80px;z-index:10}.search-bar{align-items:center;background-color:#f2f3f4;border-radius:8px;display:flex;margin-bottom:20px;padding:10px}.search-icon{height:20px;margin-right:10px;width:20px}.search-input{background:none;border:none;color:#333;flex:1 1;font-size:14px;outline:none}.search-input::placeholder{color:#666}.branch-section{flex-direction:column;justify-content:center}.branch-section,.branch-select{align-items:center;display:flex}.branch-select{margin-bottom:10px}.branch-text{color:#fff;font-size:13px;margin-right:10px}.dropdown-arrow{height:16px;width:16px}.branch-select select{cursor:pointer;height:20px;opacity:0;position:absolute;width:100px}.error-text{color:#fff;font-size:12px;margin-bottom:10px}.section-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;margin-top:20px}.section-title span{color:#000;font-size:18px;font-weight:600}.ticket-item-all{padding:10px 0}.right-arrow-icon{height:16px;width:16px}.ticket-list{display:flex;flex-direction:column;gap:10px}.ticket-item-box{background-color:#f2f3f4;border-radius:10px;box-shadow:0 2px 8px #0000000d;padding:10px}.ticket-item{padding:0}.ticket-name{color:#c53334;font-size:16px;font-weight:600;margin-bottom:10px}.ticket-detail{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px}.ticket-label{color:#808b96}.ticket-label,.ticket-value{font-size:14px;margin-bottom:5px}.ticket-value-service{word-wrap:break-word;display:inline-block;max-width:200px;text-align:right}.ticket-status{border-radius:4px;font-size:14px;padding:2px 8px}.ticket-status.paid{background-color:#d3eed5;color:#1ba03a}.ticket-status.unpaid{background-color:#e0e0e0;color:#4a4a4a}.no-data{padding:20px 0}.pagination-container{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:20px;margin-top:20px}.pagination-button{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#333;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.pagination-button:hover{background-color:#e0e0e0}.pagination-button.active{background-color:#c53334;border-color:#c53334;color:#fff}.pagination-button:disabled{background-color:#f5f5f5;color:#ccc;cursor:not-allowed}.pagination-ellipsis{color:#333;font-size:14px;padding:8px}.all-invoices-container{background-color:#f5f5f5;display:flex;flex-direction:column;margin-top:60px;min-height:100vh}.all-invoices-content{flex:1 1;padding:20px}h2{color:#333;font-size:24px;font-weight:700}.branch-section,h2{margin-bottom:20px}.branch-select{display:inline-block;position:relative}.branch-text-invoice{color:#333;font-size:16px;font-weight:500}select{-webkit-appearance:none;appearance:none;background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:16px;padding:8px 30px 8px 10px}.grid-box{margin-top:10px}.grid-box_incvoices{width:100%}.invoice-list{display:flex;flex-direction:column;gap:10px}.invoice-item{background-color:#fff;padding:15px}.invoice-item.last{margin-bottom:0}.invoice-header{align-items:center;display:flex;justify-content:space-between}.invoice-name{color:#333;font-size:16px;font-weight:500}.invoice-price{color:#28a745;font-size:16px;font-weight:550}.invoice-footer{color:#666;display:flex;font-size:14px;justify-content:space-between;margin-top:8px}.invoice-payment-method{text-transform:capitalize}.invoice-time{font-style:italic}.no-data{color:#666;font-size:16px;margin-top:20px}.pagination{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:20px}.pagination button{background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.pagination button:hover:not(:disabled){background-color:#f0f0f0}.pagination button.active{background-color:#c53334;border-color:#c53334;color:#fff}.pagination button:disabled{cursor:not-allowed;opacity:.5}.ticket-in-use-container{background-color:#f2f3f4;display:flex;flex-direction:column;min-height:100vh}.ticket-in-use-content{align-items:center;display:flex;flex:1 1;flex-direction:column;margin-top:55px;padding:15px}.ticket-in-use-content h2{color:#333;font-size:24px;margin-bottom:20px}.ticket-list{max-width:400px;width:100%}.ticket-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;cursor:pointer;margin-bottom:5px;padding:5px;transition:transform .2s}.ticket-card:hover{transform:translateY(-2px)}.ticket-fullname{color:#c53334;font-size:20px;font-weight:600;margin-bottom:10px}.ticket-detail-row{display:flex;justify-content:space-between;margin-bottom:8px}.ticket-label{color:#666;font-size:13px}.ticket-value{word-wrap:break-word;color:#000;font-size:13px;max-width:200px;text-align:right}.ticket-payment-status{border-radius:5px;font-size:13px;padding:4px 8px}.ticket-payment-status.paid{background-color:#e6f3e6;color:#2e7d32}.ticket-payment-status.unpaid{background-color:#e0e0e0;color:#616161}.error-message{font-size:14px;margin-bottom:20px}.no-data{color:#808b96;font-size:14px;padding:20px;text-align:center}.add-ticket-container{align-items:center;background-color:#f2f3f4;display:flex;flex-direction:column;margin-top:60px;min-height:100vh;position:relative}.add-ticket-content{max-width:350px;padding:20px;width:100%}.add-ticket-content h2{color:#333;font-size:18px;margin-bottom:20px;text-align:center}.form-group{margin-bottom:15px}.form-group label{color:#666;display:block;font-size:14px;margin-bottom:5px}.form-group input,.form-group select{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:14px;padding:8px;width:100%}.form-group input[type=number]{-moz-appearance:textfield}.form-group input::-webkit-inner-spin-button,.form-group input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.total-price{margin:20px 0;text-align:start}.total-price label{color:#333;font-size:16px;font-weight:700}.submit-button{background-color:#c53334;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:10px;text-align:center;width:100%}.submit-button:hover{background-color:#b02c2d}.cancel-button{color:#666;cursor:pointer;display:block;font-size:14px;margin-top:10px;text-align:center}.error-message{color:red;margin-top:20px;text-align:center}.notification{animation:slideInOut 3s ease-in-out forwards;background-color:#fff;border-radius:5px;box-shadow:0 2px 8px #0003;display:flex;flex-direction:column;min-height:50px;position:fixed;right:10px;top:10px;width:250px;z-index:1000}.notification.error{background-color:#fff1f0}.notification-content{align-items:center;display:flex;flex:1 1;padding:10px}.notification-icon{color:#4caf50;font-size:20px;margin-right:10px}.notification.error .notification-icon{color:red}.notification-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#333;display:-webkit-box;flex:1 1;font-size:14px;overflow:hidden;text-align:left;text-overflow:ellipsis}.notification-progress{animation:progressBar 3s linear forwards;background-color:#4caf50;bottom:0;height:3px;left:0;position:absolute;width:0}.notification.error .notification-progress{background-color:red}@keyframes slideInOut{0%{transform:translateX(100%)}20%{transform:translateX(0)}80%{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes progressBar{0%{width:0}to{width:100%}}.fab{align-items:center;background-color:#f2f3f4;border:none;border-radius:30px;bottom:20px;box-shadow:0 4px 8px #0000004d;cursor:pointer;display:flex;height:60px;justify-content:center;overflow:hidden;position:fixed;right:20px;transition:width .5s ease,height .5s ease,border-radius .5s ease,background-color .3s ease;width:60px;z-index:1000}.fab.expanded{border-radius:20px;height:80px;justify-content:flex-start;padding-left:70px;padding-right:10px;width:240px}.fab:hover{background-color:#069;transform:scale(1.1)}.fab-icon{height:32px;left:14px;object-fit:contain;position:absolute;transition:left .5s ease;width:32px}.fab.expanded .fab-icon{left:20px}.fab-text{color:#333;font-size:14px;font-weight:500;line-height:1.4;opacity:0;text-align:left;transition:opacity .5s ease}.fab.expanded .fab-text{opacity:1}@media (max-width:768px){.fab{bottom:15px;height:50px;right:15px;width:50px}.fab.expanded{height:70px;padding-left:60px;padding-right:8px;width:200px}.fab-icon{height:28px;left:11px;width:28px}.fab.expanded .fab-icon{left:16px}.fab-text{font-size:12px;line-height:1.3}}
/*# sourceMappingURL=main.a8afd548.css.map*/