.uvar-booking{--uvar-primary:#1a1a2e;--uvar-primary-hover:#2d2d44;--uvar-success:#22c55e;--uvar-danger:#ef4444;--uvar-border:#e5e7eb;--uvar-bg:#f9fafb;--uvar-text:#1f2937;--uvar-text-muted:#6b7280;max-width:1000px;margin:0 auto;padding:20px;font-family:inherit;position:relative}.uvar-progress{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:40px}.uvar-progress-step{display:flex;flex-direction:column;align-items:center;gap:5px}.uvar-progress-num{width:36px;height:36px;border-radius:50%;background:var(--uvar-border);color:var(--uvar-text-muted);display:flex;align-items:center;justify-content:center;font-weight:600}.uvar-progress-step.active .uvar-progress-num{background:var(--uvar-primary);color:#fff}.uvar-progress-label{font-size:12px;color:var(--uvar-text-muted)}.uvar-progress-step.active .uvar-progress-label{color:var(--uvar-text);font-weight:500}.uvar-progress-line{width:60px;height:2px;background:var(--uvar-border)}.uvar-step{display:none}.uvar-step.active{display:block;animation:uvarFadeIn 0.3s ease}@keyframes uvarFadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.uvar-step-header{margin-bottom:30px}.uvar-step-title{font-size:24px;margin:0 0 5px}.uvar-step-desc{color:var(--uvar-text-muted);margin:0}.uvar-step-footer{margin-top:30px;text-align:right}.uvar-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--uvar-primary);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background 0.2s}.uvar-btn:hover{background:var(--uvar-primary-hover)}.uvar-btn:disabled{background:var(--uvar-border);cursor:not-allowed}.uvar-btn-back{background:none;border:none;color:var(--uvar-text-muted);cursor:pointer;padding:0;font-size:14px;margin-bottom:10px}.uvar-btn-back:hover{color:var(--uvar-text)}.uvar-btn-submit{width:100%;padding:16px;font-size:18px}.uvar-stations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px}.uvar-station-card{background:#fff;border:2px solid var(--uvar-border);border-radius:12px;padding:20px;text-align:center;cursor:pointer;transition:all 0.2s;position:relative}.uvar-station-card:hover{border-color:var(--station-color,var(--uvar-primary))}.uvar-station-card.selected{border-color:var(--station-color,var(--uvar-primary));background:color-mix(in srgb,var(--station-color,var(--uvar-primary)) 10%,white)}.uvar-station-icon{font-size:40px;margin-bottom:10px}.uvar-station-name{font-size:16px;font-weight:600;margin:0 0 5px}.uvar-station-count{font-size:13px;color:var(--uvar-text-muted);margin:0}.uvar-station-desc{font-size:13px;color:var(--uvar-text-muted);margin:10px 0 0}.uvar-station-check{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:50%;background:var(--uvar-success);color:#fff;display:none;align-items:center;justify-content:center;font-size:14px}.uvar-station-card.selected .uvar-station-check{display:flex}.uvar-booking-layout{display:grid;grid-template-columns:1fr 300px;gap:30px}.uvar-booking-main{min-width:0}.uvar-selected-stations{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.uvar-selected-tag{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--uvar-bg);border-radius:20px;font-size:13px}.uvar-calendar{background:#fff;border:1px solid var(--uvar-border);border-radius:12px;padding:20px;margin-bottom:20px}.uvar-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.uvar-cal-nav{width:36px;height:36px;background:var(--uvar-bg);border:1px solid var(--uvar-border);border-radius:8px;cursor:pointer;font-size:18px}.uvar-cal-nav:hover{background:var(--uvar-border)}.uvar-cal-month{font-weight:600}.uvar-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:10px}.uvar-calendar-weekdays span{text-align:center;font-size:12px;font-weight:500;color:var(--uvar-text-muted);padding:5px}.uvar-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.uvar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;font-size:14px;border:2px solid #fff0}.uvar-day:hover:not(.uvar-day-disabled):not(.uvar-day-other){background:var(--uvar-bg)}.uvar-day-other{color:#ccc;cursor:default}.uvar-day-disabled{color:#ccc;cursor:not-allowed;text-decoration:line-through}.uvar-day-today{background:#fef3c7;font-weight:600}.uvar-day-selected{background:var(--uvar-primary);color:#fff;font-weight:600}.uvar-day-closed{background:#fee2e2;color:#999;cursor:not-allowed}.uvar-availability{background:#fff;border:1px solid var(--uvar-border);border-radius:12px;padding:20px}.uvar-availability-header{margin-bottom:20px}.uvar-availability-header h3{margin:0 0 5px;font-size:18px}.uvar-availability-header p{margin:0;color:var(--uvar-text-muted)}.uvar-availability-grid{max-height:400px;overflow-y:auto}.uvar-hour-row{margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--uvar-border)}.uvar-hour-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.uvar-hour-label{font-weight:600;margin-bottom:10px;font-size:14px}.uvar-station-row{margin-bottom:10px}.uvar-station-row:last-child{margin-bottom:0}.uvar-station-row-label{font-size:13px;color:var(--uvar-text-muted);margin-bottom:5px}.uvar-slots-row{display:flex;gap:8px;flex-wrap:wrap}.uvar-slot{width:80px;padding:8px 12px;text-align:center;border:2px solid var(--uvar-border);border-radius:6px;cursor:pointer;font-size:13px;transition:all 0.2s}.uvar-slot:hover:not(.uvar-slot-occupied){border-color:var(--uvar-primary)}.uvar-slot-occupied{background:#fee2e2;border-color:#fecaca;color:#999;cursor:not-allowed}.uvar-slot-selected{background:var(--uvar-primary);border-color:var(--uvar-primary);color:#fff}.uvar-legend{display:flex;gap:20px;justify-content:center;margin-top:20px;font-size:13px}.uvar-legend-item{display:flex;align-items:center;gap:6px}.uvar-legend-item::before{content:'';width:16px;height:16px;border-radius:4px;border:2px solid var(--uvar-border)}.uvar-legend-item.available::before{background:#fff}.uvar-legend-item.occupied::before{background:#fee2e2;border-color:#fecaca}.uvar-legend-item.selected::before{background:var(--uvar-primary);border-color:var(--uvar-primary)}.uvar-cart{background:var(--uvar-bg);border:1px solid var(--uvar-border);border-radius:12px;padding:20px;height:fit-content;position:sticky;top:20px}.uvar-cart-title{margin:0 0 15px;font-size:16px}.uvar-cart-items{min-height:100px;margin-bottom:15px}.uvar-cart-empty{color:var(--uvar-text-muted);font-size:14px;text-align:center;padding:20px 0}.uvar-cart-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px;background:#fff;border-radius:8px;margin-bottom:8px;font-size:13px}.uvar-cart-item-info{flex:1}.uvar-cart-item-station{font-weight:500}.uvar-cart-item-time{color:var(--uvar-text-muted);font-size:12px}.uvar-cart-item-remove{background:none;border:none;color:var(--uvar-danger);cursor:pointer;padding:0;font-size:18px;line-height:1}.uvar-final-layout{display:grid;grid-template-columns:1fr 350px;gap:30px;align-items:start}.uvar-form-section{background:#fff;border:1px solid var(--uvar-border);border-radius:12px;padding:25px}.uvar-form-group{margin-bottom:20px}.uvar-form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.uvar-form-group input,.uvar-form-group textarea{width:100%;padding:12px;border:1px solid var(--uvar-border);border-radius:8px;font-size:16px;font-family:inherit;box-sizing:border-box}.uvar-form-group input:focus,.uvar-form-group textarea:focus{outline:none;border-color:var(--uvar-primary)}.uvar-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.uvar-form-row .uvar-form-group{margin-bottom:0}.uvar-form-checkbox{display:flex;align-items:center;gap:10px}.uvar-form-checkbox input{width:18px;height:18px}.uvar-form-checkbox label{font-size:14px}.uvar-persons-section{margin:25px 0;padding:20px;background:var(--uvar-bg);border-radius:8px}.uvar-persons-section h4{margin:0 0 5px;font-size:16px}.uvar-persons-limit{margin:0 0 5px;font-size:14px;font-weight:500}.uvar-persons-note{margin:0 0 20px;font-size:12px;color:var(--uvar-text-muted)}.uvar-persons-section h4{margin-bottom:8px}.uvar-persons-limit-info{background:#f8f9fa;border:1px solid var(--uvar-border);border-radius:8px;padding:12px 16px;margin-bottom:16px;font-size:15px;line-height:1.6}.uvar-persons-limit-info strong{color:var(--uvar-primary)}.uvar-persons-limit-info small{display:block;margin-top:6px;color:var(--uvar-text-muted);font-size:13px}.uvar-persons-grid{display:flex;flex-direction:column}.uvar-person-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--uvar-border)}.uvar-person-row:last-child{border-bottom:none}.uvar-person-label{font-size:15px;flex:1}.uvar-person-label small{display:inline;color:var(--uvar-text-muted);font-size:13px}.uvar-person-input{display:flex;align-items:center;justify-content:space-between;gap:15px}.uvar-person-input label{font-size:14px;flex:1}.uvar-person-input small{display:block;color:var(--uvar-text-muted);font-size:11px}.uvar-number-input{display:inline-flex;align-items:stretch;flex-shrink:0;border:1px solid var(--uvar-border);border-radius:8px;overflow:hidden}.uvar-number-input button{width:44px;height:44px;background:#fff;border:none;cursor:pointer;font-size:20px;font-weight:300;color:var(--uvar-text);transition:background 0.15s;display:flex;align-items:center;justify-content:center;line-height:1}.uvar-number-input button:hover{background:var(--uvar-bg)}.uvar-number-input button:first-child{border-right:1px solid var(--uvar-border)}.uvar-number-input button:last-child{border-left:1px solid var(--uvar-border)}.uvar-number-input input{width:50px;height:44px;text-align:center;border:none;font-size:16px;font-weight:500;-moz-appearance:textfield}.uvar-number-input input::-webkit-outer-spin-button,.uvar-number-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.uvar-summary-section{position:sticky;top:20px}.uvar-summary-box{background:var(--uvar-primary);color:#fff;border-radius:12px;padding:25px}.uvar-summary-box h3{margin:0 0 20px;font-size:18px}.uvar-summary-items{margin-bottom:20px}.uvar-summary-item{padding:10px 0;border-bottom:1px solid rgb(255 255 255 / .2);font-size:14px}.uvar-summary-item:last-child{border-bottom:none}.uvar-summary-price{padding-top:15px;border-top:1px solid rgb(255 255 255 / .3);margin-bottom:20px}.uvar-price-row{display:flex;justify-content:space-between;align-items:center}.uvar-total-price{font-size:24px;font-weight:700}.uvar-price-note{font-size:12px;opacity:.8;margin-top:5px}.uvar-summary-box .uvar-btn-submit{background:#fff;color:var(--uvar-primary)}.uvar-summary-box .uvar-btn-submit:hover{background:#f0f0f0}.uvar-confirmation{text-align:center;padding:60px 20px}.uvar-confirmation-icon{width:80px;height:80px;background:#dcfce7;color:var(--uvar-success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;margin:0 auto 20px}.uvar-confirmation h2{margin:0 0 10px}.uvar-confirmation p{color:var(--uvar-text-muted);margin:0 0 30px}.uvar-confirmation-code{background:var(--uvar-bg);padding:15px 25px;border-radius:8px;display:inline-block;margin-bottom:30px;font-size:18px}.uvar-confirmation-details{text-align:left;max-width:400px;margin:0 auto 30px;background:var(--uvar-bg);padding:20px;border-radius:8px}.uvar-toast{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;animation:uvarSlideIn 0.3s ease;position:relative}@keyframes uvarSlideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.uvar-toast-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.uvar-toast-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.uvar-toast-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.uvar-toast-icon{font-size:18px;flex-shrink:0}.uvar-toast-msg{flex:1}.uvar-toast-close{background:none;border:none;font-size:20px;cursor:pointer;opacity:.5;padding:0;line-height:1;color:inherit}.uvar-toast-close:hover{opacity:1}.uvar-lang-bar{display:flex;justify-content:flex-end;gap:5px;margin-bottom:15px}.uvar-lang-btn{padding:6px 12px;border:1px solid var(--uvar-border);border-radius:6px;background:#fff;cursor:pointer;font-size:13px;transition:all 0.15s}.uvar-lang-btn:hover{border-color:var(--uvar-primary)}.uvar-lang-btn.active{background:var(--uvar-primary);color:#fff;border-color:var(--uvar-primary)}.uvar-myres{max-width:600px;margin:0 auto;padding:20px;position:relative}.uvar-myres h2{font-size:24px;margin:0 0 10px}.uvar-myres-desc{color:var(--uvar-text-muted,#6b7280);margin:0 0 25px}.uvar-myres-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:25px}.uvar-myres-form .uvar-form-group{margin-bottom:15px}.uvar-myres-form .uvar-form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.uvar-myres-form .uvar-form-group input{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:8px;font-size:16px;box-sizing:border-box}.uvar-myres-form .uvar-form-group input:focus{outline:none;border-color:#1a1a2e}.uvar-myres-form .uvar-btn{width:100%;margin-top:10px}.uvar-myres-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:25px;margin-top:15px}.uvar-myres-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.uvar-myres-header h3{margin:0;font-size:18px}.uvar-myres-info{margin-bottom:20px}.uvar-myres-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.uvar-myres-row:last-child{border-bottom:none}.uvar-myres-slots h4{font-size:14px;margin:0 0 10px;color:#6b7280}.uvar-myres-slot{display:flex;align-items:center;gap:12px;padding:10px;background:#f9fafb;border-radius:8px;margin-bottom:8px;font-size:14px}.uvar-myres-slot-icon{font-size:24px}.uvar-myres-actions{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.uvar-btn-danger{background:#ef4444!important;width:100%}.uvar-btn-danger:hover{background:#dc2626!important}.uvar-myres-edit{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.uvar-myres-edit h4{font-size:14px;margin:0 0 12px}.uvar-myres-person-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.uvar-myres-person-row:last-child{border-bottom:none}.uvar-myres-slot{display:flex;align-items:center;gap:12px;padding:10px;background:#f9fafb;border-radius:8px;margin-bottom:8px;font-size:14px}.uvar-myres-slot-info{flex:1}.uvar-slot-remove{background:none;border:1px solid #fecaca;color:#ef4444;width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.15s}.uvar-slot-remove:hover{background:#fee2e2;border-color:#ef4444}.uvar-edit-total{font-size:14px;margin:10px 0 0;padding:8px 12px;background:#f9fafb;border-radius:6px}.uvar-confirmation-manage{margin:15px 0}.uvar-confirmation-manage a{color:var(--uvar-primary);text-decoration:underline;font-size:14px}.uvar-status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.uvar-status-badge.confirmed{background:#dcfce7;color:#166534}.uvar-status-badge.pending{background:#fef3c7;color:#92400e}.uvar-status-badge.cancelled{background:#fee2e2;color:#991b1b}.uvar-status-badge.completed{background:#e0e7ff;color:#3730a3}.uvar-form-group select{width:100%;padding:12px;border:1px solid var(--uvar-border);border-radius:8px;font-size:16px;font-family:inherit;box-sizing:border-box;background:#fff}.uvar-form-group select:focus{outline:none;border-color:var(--uvar-primary)}.uvar-loader{display:none;position:absolute;inset:0;background:rgb(255 255 255 / .9);z-index:100;align-items:center;justify-content:center}.uvar-loader.active{display:flex}.uvar-spinner{width:40px;height:40px;border:3px solid var(--uvar-border);border-top-color:var(--uvar-primary);border-radius:50%;animation:uvarSpin 0.8s linear infinite}@keyframes uvarSpin{to{transform:rotate(360deg)}}@media (max-width:900px){.uvar-booking-layout,.uvar-final-layout{grid-template-columns:1fr}.uvar-cart,.uvar-summary-section{position:static}}@media (max-width:600px){.uvar-stations-grid{grid-template-columns:1fr}.uvar-form-row{grid-template-columns:1fr}.uvar-progress-label{display:none}.uvar-slot{width:60px;padding:6px 8px;font-size:12px}}.uvar-bday-package-card.selected{border-color:var(--uvar-primary,#e91e63)!important;background:rgb(233 30 99 / .05);box-shadow:0 0 15px rgb(233 30 99 / .2)}.uvar-bday-package-card:hover{border-color:var(--uvar-primary,#e91e63)!important}.uvar-bday-step{display:none}.uvar-bday-step.active{display:block}.uvar-bday-slot{padding:15px 20px;border:2px solid var(--uvar-border,#ddd);border-radius:12px;cursor:pointer;text-align:center;transition:all 0.2s}.uvar-bday-slot:hover:not(.uvar-bday-slot-unavailable){border-color:var(--uvar-primary,#e91e63);box-shadow:0 0 10px rgb(233 30 99 / .2)}.uvar-bday-slot-selected{border-color:var(--uvar-primary,#e91e63)!important;background:rgb(233 30 99 / .1)!important;box-shadow:0 0 15px rgb(233 30 99 / .3)}.uvar-bday-slot-unavailable{opacity:.4;cursor:not-allowed;background:rgb(239 68 68 / .05)}.uvar-bday-slot-time{font-weight:700;font-size:16px;display:block}.uvar-bday-slot-status{font-size:12px;color:var(--uvar-danger,#ef4444);margin-top:4px;display:block}.uvar-bday-pricing-detail p{margin:5px 0}.uvar-bday-summary-item{padding:8px 0;border-bottom:1px solid rgb(255 255 255 / .1);display:flex;justify-content:space-between}.uvar-bday-summary-item:last-child{border-bottom:none}.uvar-bday-confirm-details{padding:20px;border:1px solid var(--uvar-border,#ddd);border-radius:16px;text-align:left}.uvar-bday-confirm-details h3{margin:10px 0}.uvar-type-card{transition:transform 0.2s,border-color 0.2s,box-shadow 0.2s}#uvar-type-selection .uvar-type-card{flex:1 1 300px;max-width:340px;box-sizing:border-box}@media (max-width:560px){#uvar-type-selection .uvar-type-card{flex-basis:100%;max-width:420px}}#uvar-type-selection .uvar-type-card h3{letter-spacing:normal!important;word-break:normal!important;overflow-wrap:break-word;hyphens:none;line-height:1.25;min-height:2.5em;display:flex;align-items:center;justify-content:center;text-align:center}#uvar-type-selection .uvar-type-card p{letter-spacing:normal!important;word-break:normal!important}.uvar-type-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgb(0 0 0 / .15)}.uvar-sub-tabs{display:flex;gap:5px;margin-bottom:20px}.uvar-sub-tab{padding:8px 18px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-weight:600}.uvar-sub-tab.active{background:#0073aa;color:#fff;border-color:#0073aa}.uvar-subtab-content{display:none}.uvar-subtab-content.active{display:block}.uvar-type-card:hover{border-color:var(--uvar-primary)!important;box-shadow:0 5px 20px rgb(0 0 0 / .1)}.uvar-type-card.selected{border-color:var(--uvar-primary)!important;background:rgb(26 26 46 / .05)}.uvar-birthday-flow{display:none}.uvar-birthday-flow.active{display:block}.uvar-bday-step{display:none}.uvar-bday-step.active{display:block}.uvar-bday-package-card:hover{border-color:var(--uvar-primary)!important;box-shadow:0 5px 20px rgb(0 0 0 / .1)}.uvar-bday-package-card.selected{border-color:#e91e63!important;background:rgb(233 30 99 / .05);box-shadow:0 0 20px rgb(233 30 99 / .15)}.uvar-bday-slot{padding:16px;border:2px solid var(--uvar-border,#ddd);border-radius:12px;cursor:pointer;text-align:center;transition:all .2s}.uvar-bday-slot:hover:not(.uvar-bday-slot-unavailable){border-color:#e91e63;box-shadow:0 0 12px rgb(233 30 99 / .2)}.uvar-bday-slot-selected{border-color:#e91e63!important;background:rgb(233 30 99 / .08)!important;box-shadow:0 0 15px rgb(233 30 99 / .3)}.uvar-bday-slot-unavailable{opacity:.4;cursor:not-allowed;background:rgb(239 68 68 / .05)}.uvar-bday-slot-time{font-weight:700;font-size:16px;display:block}.uvar-bday-slot-status{font-size:12px;color:#ef4444;margin-top:4px;display:block}.uvar-bday-pricing-detail p{margin:5px 0;font-size:14px}.uvar-bday-summary-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--uvar-border,#ddd)}.uvar-bday-summary-item:last-child{border-bottom:none}.uvar-bday-confirm-details{text-align:left}.uvar-bday-confirm-details p{margin:8px 0;font-size:14px}.uvar-bday-confirm-details h3{font-size:16px;margin:15px 0 8px;font-weight:700}