.progress-step.completed .step-circle{background:#4caf50;border-color:#4caf50}.progress-step.completed .step-number{display:none}.progress-step.completed .step-check{display:block;color:#fff}.progress-step.completed .step-label{color:#4caf50;font-weight:600}.progress-step.completed+.progress-line{background:#4caf50}.progress-step.active .step-circle{background:#1e3a5f;border-color:#1e3a5f}.progress-step.active .step-number{color:#fff}.progress-step.active .step-label{color:#1e3a5f;font-weight:600}.pricing-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.pricing-card{background:#1e3a5f;color:#ffd700;padding:30px;border-radius:10px;text-align:center;cursor:pointer;transition:transform .3s,box-shadow .3s}.pricing-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px rgba(0,0,0,.2)}.pricing-card.selected{border:3px solid #ffd700}.pricing-card h3{font-size:24px;margin:0 0 10px;color:#ffd700}.pricing-card .subtitle{font-size:14px;margin-bottom:20px;opacity:.9}.van-card.selected{border-color:#ffd700;background:#fffef0}.van-icon{font-size:80px}.crew-card.selected{border-color:#ffd700;background:#fffef0}.address-input-wrapper{position:relative;width:100%}.address-clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:18px;line-height:1;cursor:pointer;display:none;z-index:10;transition:all .2s;padding:0}.address-clear-btn:hover{background:#c82333;transform:translateY(-50%) scale(1.1)}.address-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #1e3a5f;border-top:none;border-radius:0 0 5px 5px;max-height:400px;overflow-y:auto;overflow-x:hidden;z-index:1000;box-shadow:0 4px 6px rgba(0,0,0,.1);display:none;margin-top:-2px}.address-autocomplete-dropdown::-webkit-scrollbar{width:8px}.address-autocomplete-dropdown::-webkit-scrollbar-track{background:#f1f1f1;border-radius:0 0 5px 0}.address-autocomplete-dropdown::-webkit-scrollbar-thumb{background:#1e3a5f;border-radius:4px}.address-autocomplete-dropdown::-webkit-scrollbar-thumb:hover{background:#2a4d7a}.autocomplete-header{padding:8px 15px;background:#f8f9fa;border-bottom:1px solid #e0e0e0;font-size:12px;color:#666;text-align:center;position:sticky;top:0;z-index:1}.autocomplete-header small{font-weight:600;color:#1e3a5f}.autocomplete-item{padding:12px 15px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background .2s}.autocomplete-item:last-child{border-bottom:none;border-radius:0 0 5px 5px}.autocomplete-item:hover,.autocomplete-item.selected{background:#e8f4f8}.autocomplete-item strong{color:#1e3a5f;font-weight:600}.autocomplete-loading,.autocomplete-error{padding:12px 15px;text-align:center;color:#666;font-style:italic}.autocomplete-error{color:#dc3545}.address-group{margin-bottom:25px}.address-group label{display:block;margin-bottom:8px;font-weight:700;color:#1e3a5f}.address-group input[type=text]{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:5px;font-size:16px;margin-bottom:10px}.address-group input[type=text]:focus{outline:none;border-color:#1e3a5f}.floor-selection{margin-top:10px}.floor-selection select{padding:10px;border:2px solid #e0e0e0;border-radius:5px;font-size:14px;margin-bottom:10px}.lift-option{margin-top:10px}.lift-option label{font-weight:400;display:flex;align-items:center;gap:8px}.items-section{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-bottom:30px}.items-search input{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:5px;font-size:16px;margin-bottom:15px}.popular-items{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.popular-item{background:#f0f0f0;border:1px solid #ddd;padding:8px 15px;border-radius:5px;cursor:pointer;transition:all .3s}.popular-item:hover{background:#1e3a5f;color:#fff}.my-items-list{background:#f8f9fa;padding:20px;border-radius:5px}.my-items-list h3{margin-top:0;color:#1e3a5f}.item-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;margin-bottom:8px;border-radius:5px}.item-list-item .item-name{flex:1}.item-list-item .item-quantity{margin:0 15px}.item-list-item .item-actions button{background:#dc3545;color:#fff;border:none;padding:5px 10px;border-radius:3px;cursor:pointer}.price-display{background:#1e3a5f;color:#ffd700;padding:20px;border-radius:5px;text-align:center;margin-bottom:30px}.price-display h3{margin:0;font-size:24px}.service-day-info{animation:fadeIn .3s ease-in}.service-prices-info{animation:fadeIn .4s ease-in}.service-price-loader{animation:pulse 1.5s ease-in-out infinite}.price-info-card{transition:transform .2s ease,box-shadow .2s ease}.price-info-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)!important}.service-type-card.selected{border-color:#ffd700;background:#fffef0}.packing-material-card.selected{border-color:#1e3a5f;background:linear-gradient(135deg,#f0f7ff 0%,#e8f2ff 100%);box-shadow:0 4px 15px rgba(30,58,95,.2)}.packing-material-card.selected::before{transform:scaleX(1)}.packing-material-card.selected .packing-quantity-input{border-color:#1e3a5f;background:#fff}.summary-section{line-height:1.8}.summary-item{padding:10px 0;border-bottom:1px solid #e0e0e0}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#1e3a5f;display:inline-block;min-width:150px}.summary-item ul{margin:10px 0 0 150px;list-style:disc}.price-breakdown{background:#fffef0;padding:15px;border-radius:5px;margin-top:15px;border-left:4px solid #ffd700}.price-breakdown h4{color:#1e3a5f;margin-bottom:10px}.price-item{padding:5px 0;display:flex;justify-content:space-between}.price-breakdown-section{margin-top:25px}.breakdown-title{color:#1e3a5f;font-size:20px;font-weight:700;margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid #e8f0f8}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-row{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-radius:8px;transition:all .2s}.breakdown-row:hover{background:#f0f4f8;transform:translateX(5px)}.breakdown-label{color:#333;font-size:15px;font-weight:500}.breakdown-value{color:#1e3a5f;font-size:16px;font-weight:600}.breakdown-total{background:#f8f9fa;margin-top:10px;padding:18px 20px;border-radius:10px}.breakdown-total .breakdown-label{color:black;font-size:18px;font-weight:700}.breakdown-total .breakdown-value{color:black;font-size:22px;font-weight:700}.breakdown-loading{text-align:center;padding:20px;color:#666;font-style:italic}.summary-section{line-height:1.8;background:#fff;border-radius:10px;margin-bottom:20px}.summary-item{padding:12px 0;border-bottom:1px solid #e8f0f8;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#1e3a5f;font-weight:600;min-width:140px;display:inline-block}.summary-item ul{margin:8px 0 0;list-style:none;padding-left:0;flex:1}.summary-item ul li{padding:5px 0;color:#555;position:relative;padding-left:20px;text-align:right}.summary-item ul li:before{content:"✓";position:absolute;right:30%;color:#28a745;font-weight:700}.service-summary{background:#f9f9f9;border:1px solid #e0e0e0;padding:15px 20px;border-radius:10px;margin-bottom:20px;box-shadow:0 2px 5px rgba(0,0,0,.05)}.service-summary strong{color:#1e3a5f;font-weight:700;display:block;margin-bottom:10px;font-size:16px}.service-tags{display:flex;flex-wrap:wrap;gap:10px}.service-tag{background:#1e3a5f;color:#fff;padding:5px 12px;border-radius:20px;font-size:14px;font-weight:500;display:inline-block;position:relative}.service-tag:after{content:"✓";margin-left:6px;color:#28a745;font-weight:700}.summary-item.booking-reference{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:15px 20px;border-radius:8px;margin-bottom:15px;border:none;box-shadow:0 4px 15px rgba(102,126,234,.3)}.summary-item.booking-reference strong{color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:1px}.summary-item.booking-reference .ref-code{font-size:20px;font-weight:700;letter-spacing:2px;font-family:"Courier New",monospace;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.spinner{display:inline-block!important;width:18px!important;height:18px!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:50%!important;border-top-color:#fff!important;animation:spin .8s linear infinite!important;vertical-align:middle!important;margin-right:8px!important;visibility:visible!important;opacity:1!important}.btn-submit-booking .spinner,.btn-confirm .spinner{display:inline-block!important;visibility:visible!important;opacity:1!important}.btn-submit-booking.loading,.btn-confirm.loading{opacity:.8!important;cursor:not-allowed!important;pointer-events:none!important}.btn-submit-booking.loading:hover,.btn-confirm.loading:hover{background:#1e3a5f!important;transform:none!important}.step-error-message.show{display:block!important;visibility:visible!important;opacity:1!important}.booking-step.has-error{border:1px solid #ffcdd2;border-radius:8px;padding:5px}.terms-conditions-section.has-error{border-color:#d32f2f;background:#fff5f5}.terms-conditions-section.has-error .terms-checkbox-label{color:#d32f2f}@media (max-width:768px){.items-section{grid-template-columns:1fr}}.payment-icon{font-size:40px;animation:pulse 2s infinite}.payment-options-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px;margin-bottom:30px}.payment-option-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.12);transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;border:3px solid transparent}.payment-option-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,0,0,.2);border-color:#1e3a5f}.payment-card-header{background:linear-gradient(135deg,#1e3a5f 0%,#2c5282 100%);color:white;padding:30px;text-align:center;position:relative}.payment-badge{position:absolute;top:15px;right:15px;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.popular-badge{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:white;box-shadow:0 3px 10px rgba(245,158,11,.4)}.save-badge{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:white;box-shadow:0 3px 10px rgba(16,185,129,.4)}.payment-icon-large{font-size:60px;margin-bottom:15px;animation:bounce 2s infinite}.payment-card-header h4{font-size:24px;font-weight:700;margin:0;color:white}.payment-card-body{padding:35px}.payment-amount{text-align:center;margin-bottom:15px}.payment-amount .currency{font-size:32px;font-weight:700;color:#1e3a5f;vertical-align:top}.payment-amount .amount{font-size:56px;font-weight:800;color:#1e3a5f;line-height:1}.payment-percentage{text-align:center;font-size:16px;color:#666;margin-bottom:25px;font-weight:500}.payment-details{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:25px}.payment-detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e9ecef}.payment-detail-row:last-child{border-bottom:none}.payment-detail-row.total-row{border-top:2px solid #1e3a5f;margin-top:10px;padding-top:15px;font-size:18px}.payment-detail-row span{color:#666;font-size:15px}.payment-detail-row strong{color:#1e3a5f;font-size:17px;font-weight:700}.payment-detail-row.total-row strong{font-size:20px;color:#1e3a5f}.payment-features{list-style:none;padding:0;margin:0}.payment-features li{padding:10px 0;color:#555;font-size:15px;display:flex;align-items:center;gap:10px}.payment-features li::before{content:"";flex-shrink:0}.payment-card-footer{padding:0 35px 35px}.btn-select-payment{width:100%;padding:16px;background:linear-gradient(135deg,#1e3a5f 0%,#2c5282 100%);color:white;border:none;border-radius:10px;font-size:17px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px rgba(30,58,95,.3);text-transform:uppercase;letter-spacing:.5px}.btn-select-payment:hover{background:linear-gradient(135deg,#2c5282 0%,#3d5a99 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(30,58,95,.5)}.payment-option-card[data-payment-type=deposit] .btn-select-payment{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%)}.payment-option-card[data-payment-type=deposit] .btn-select-payment:hover{background:linear-gradient(135deg,#d97706 0%,#b45309 100%)}@media (max-width:768px){.payment-options-cards{grid-template-columns:1fr}.payment-amount .amount{font-size:42px}.payment-card-body{padding:25px 20px}.payment-card-footer{padding:0 20px 25px}}.payment-option-card.selected{border-color:#10b981;box-shadow:0 15px 40px rgba(16,185,129,.3)}.payment-option-card.selected .payment-card-header{background:linear-gradient(135deg,#10b981 0%,#059669 100%)}.btn-select-payment.loading{position:relative;pointer-events:none;opacity:.7}.btn-select-payment.loading::after{content:"";position:absolute;right:15px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid white;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}