.booking-page{min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#e8eeff,#f5f0ff);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.booking-header{position:relative;overflow:hidden;background:linear-gradient(135deg,#1e3a8a,#2563eb,#3b82f6);color:#fff;padding:0}.booking-header-bg{position:absolute;inset:0;background:radial-gradient(ellipse 600px 300px at 20% 50%,rgba(96,165,250,.3),transparent),radial-gradient(ellipse 400px 200px at 80% 30%,rgba(147,197,253,.2),transparent);pointer-events:none}.booking-header-bg:before{content:"";position:absolute;top:-50%;right:-10%;width:400px;height:400px;border-radius:50%;background:#ffffff08;animation:floatBubble 20s ease-in-out infinite}.booking-header-bg:after{content:"";position:absolute;bottom:-30%;left:-5%;width:300px;height:300px;border-radius:50%;background:#ffffff05;animation:floatBubble 15s ease-in-out infinite reverse}@keyframes floatBubble{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-20px) scale(1.05)}}.booking-header-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;max-width:1200px;margin:0 auto}.booking-logo{display:flex;align-items:center;gap:1rem}.logo-icon{flex-shrink:0;animation:fadeSlideRight .6s ease-out}@keyframes fadeSlideRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.booking-logo h1{font-size:1.8rem;margin:0;font-weight:700;letter-spacing:-.5px;animation:fadeSlideRight .6s ease-out .1s both}.booking-tagline{margin:.2rem 0 0;opacity:.85;font-size:1rem;font-weight:300;letter-spacing:.5px;animation:fadeSlideRight .6s ease-out .2s both}.header-actions{display:flex;align-items:center;gap:1rem;animation:fadeSlideLeft .6s ease-out .3s both}@keyframes fadeSlideLeft{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.header-phone{display:flex;align-items:center;gap:.4rem;color:#fff;text-decoration:none;font-weight:600;font-size:1rem;padding:.55rem 1rem;border-radius:8px;transition:all .2s;white-space:nowrap}.header-phone:hover{background:#ffffff1a;color:#fff;text-decoration:none}.phone-icon{font-size:1.1rem}.booking-customer-login-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.2rem;background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .25s ease;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.booking-customer-login-btn:hover{background:#ffffff40;border-color:#ffffff80;text-decoration:none;color:#fff;transform:translateY(-1px);box-shadow:0 4px 15px #0000001a}.booking-trust-bar{display:flex;justify-content:center;gap:2rem;padding:.75rem 1rem;background:linear-gradient(90deg,#1e3a8a,#1e40af);border-bottom:1px solid rgba(255,255,255,.1);animation:fadeIn .8s ease-out .4s both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.trust-item{display:flex;align-items:center;gap:.4rem;color:#ffffffe6;font-size:.8rem;font-weight:500;white-space:nowrap}.trust-icon{font-size:.9rem}.booking-progress{max-width:800px;margin:0 auto;padding:2rem 1.5rem 0;animation:fadeSlideUp .5s ease-out}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.progress-bar{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:1rem;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa,#2563eb);background-size:200% 100%;border-radius:3px;transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;animation:shimmerProgress 2s linear infinite}@keyframes shimmerProgress{0%{background-position:-200% 0}to{background-position:200% 0}}.progress-glow{position:absolute;right:0;top:-2px;width:20px;height:10px;background:radial-gradient(ellipse,rgba(96,165,250,.8),transparent);border-radius:50%;animation:glowPulse 1.5s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.progress-steps{display:flex;justify-content:space-between}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.3rem;flex:1;transition:all .3s ease}.step-dot{width:32px;height:32px;border-radius:50%;background:#e2e8f0;color:#94a3b8;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid transparent}.progress-step.active .step-dot{background:#2563eb;color:#fff;border-color:#2563eb4d;box-shadow:0 0 0 4px #2563eb26;transform:scale(1.1)}.progress-step.completed .step-dot{background:#22c55e;color:#fff;border-color:#22c55e4d}.step-label{font-size:.7rem;color:#94a3b8;text-align:center;white-space:nowrap;transition:all .3s ease}.progress-step.active .step-label{color:#2563eb;font-weight:600}.progress-step.completed .step-label{color:#22c55e}.step-transition{position:relative}.step-enter-next{animation:slideInRight .4s cubic-bezier(.4,0,.2,1)}.step-enter-prev{animation:slideInLeft .4s cubic-bezier(.4,0,.2,1)}.step-exit-next{animation:slideOutLeft .25s cubic-bezier(.4,0,.2,1);pointer-events:none}.step-exit-prev{animation:slideOutRight .25s cubic-bezier(.4,0,.2,1);pointer-events:none}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.booking-content{max-width:800px;margin:0 auto;padding:1.5rem}.booking-error{background:linear-gradient(135deg,#fef2f2,#fff1f2);border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:12px;margin-bottom:1rem;font-size:.9rem;display:flex;align-items:center;gap:.6rem;animation:shakeError .5s ease-out}.error-icon{width:22px;height:22px;min-width:22px;background:#dc2626;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}@keyframes shakeError{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(6px)}45%{transform:translate(-4px)}60%{transform:translate(2px)}}.booking-step{background:#fff;border-radius:20px;padding:2.5rem;box-shadow:0 4px 30px #0000000f,0 1px 3px #0000000a;border:1px solid rgba(255,255,255,.8)}.booking-step h2{font-size:1.6rem;color:#1e293b;margin:0 0 .5rem;text-align:center;font-weight:700}.step-description{color:#64748b;text-align:center;margin:0 0 2rem;font-size:.95rem}.welcome-step{text-align:center;padding:3rem 2.5rem;position:relative;overflow:hidden}.welcome-step:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2563eb,#60a5fa,#a78bfa,#2563eb);background-size:300% 100%;animation:gradientSlide 3s linear infinite}@keyframes gradientSlide{0%{background-position:0% 50%}to{background-position:300% 50%}}.welcome-icon-wrap{position:relative;display:inline-block;margin-bottom:1.5rem}.welcome-pulse{position:absolute;inset:-10px;border-radius:50%;background:#2563eb14;animation:welcomePulse 2s ease-in-out infinite}@keyframes welcomePulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.3);opacity:0}}.welcome-icon{font-size:3.5rem;position:relative;z-index:1;animation:welcomeBounce 1s ease-out}@keyframes welcomeBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}70%{transform:scale(.9)}to{transform:scale(1)}}.welcome-text{font-size:1.1rem;color:#475569;line-height:1.7;max-width:520px;margin:0 auto 1.5rem}.welcome-features{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.welcome-feature{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#f0f7ff,#eef2ff);border-radius:100px;font-size:.85rem;color:#334155;font-weight:500;border:1px solid #dbeafe;animation:popIn .4s ease-out both}.welcome-feature:nth-child(1){animation-delay:.3s}.welcome-feature:nth-child(2){animation-delay:.4s}.welcome-feature:nth-child(3){animation-delay:.5s}.welcome-feature:nth-child(4){animation-delay:.6s}@keyframes popIn{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.wf-icon{font-size:1.1rem}.welcome-sub{color:#94a3b8;margin-bottom:2rem;font-size:.95rem}.option-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:600px;margin:0 auto}.option-cards.three-col{grid-template-columns:1fr 1fr 1fr;max-width:800px}.option-card{background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;padding:2rem 1.5rem;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.option-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(37,99,235,.05),transparent);opacity:0;transition:opacity .3s}.option-card:hover{border-color:#93c5fd;background:#f0f7ff;transform:translateY(-4px);box-shadow:0 12px 30px #2563eb1f}.option-card:hover:before{opacity:1}.option-card.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 3px #2563eb26,0 8px 25px #2563eb26;transform:translateY(-2px)}.card-check{position:absolute;top:12px;right:12px;width:26px;height:26px;border-radius:50%;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;opacity:0;transform:scale(0);transition:all .3s cubic-bezier(.4,0,.2,1)}.option-card.selected .card-check{opacity:1;transform:scale(1)}.option-icon{font-size:2.8rem;margin-bottom:.75rem;transition:transform .3s}.option-card:hover .option-icon{transform:scale(1.15)}.option-card h3{font-size:1.1rem;color:#1e293b;margin:0 0 .5rem;font-weight:700}.option-card p{font-size:.85rem;color:#64748b;margin:0;line-height:1.4}.option-features{list-style:none;padding:0;margin:1rem 0 0;text-align:left}.option-features li{font-size:.8rem;color:#475569;padding:.3rem 0 .3rem 1.4rem;position:relative}.option-features li:before{content:"✓";position:absolute;left:0;color:#22c55e;font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.85rem;font-weight:600;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:.7rem .9rem;border:1.5px solid #d1d5db;border-radius:10px;font-size:.9rem;color:#1e293b;background:#fff;transition:all .25s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a,0 2px 8px #2563eb14}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#93c5fd}.form-group textarea{resize:vertical;min-height:80px}.form-section-title{grid-column:1 / -1;font-size:1rem;font-weight:700;color:#1e293b;padding-top:1rem;margin-top:.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;gap:.5rem}.schedule-grid{max-width:500px;margin:0 auto}.date-display{color:#2563eb;font-weight:600;margin-top:.5rem;font-size:.9rem;animation:fadeIn .3s ease}.time-slots{margin-top:1.5rem;animation:fadeSlideUp .4s ease-out}.time-slots label{font-size:.85rem;font-weight:600;color:#374151;display:block;margin-bottom:.75rem}.slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.time-slot{padding:.55rem;border:1.5px solid #d1d5db;border-radius:10px;background:#fff;color:#374151;font-size:.8rem;cursor:pointer;transition:all .25s ease;text-align:center;font-weight:500}.time-slot:hover:not(:disabled){border-color:#2563eb;background:#eff6ff;transform:translateY(-2px);box-shadow:0 4px 10px #2563eb1a}.time-slot.selected{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb;box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.time-slot.unavailable{background:#f1f5f9;color:#cbd5e1;cursor:not-allowed;text-decoration:line-through}.slot-note{color:#94a3b8;font-size:.8rem;margin-top:.75rem;font-style:italic}.loading-spinner-wrap{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 0}.loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:spin .7s linear infinite}.loading-text{color:#64748b;font-style:italic;font-size:.9rem}.review-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;padding:1.5rem;border:1px solid #e2e8f0}.review-section{padding:1rem 0;border-bottom:1px solid #e2e8f0;animation:fadeSlideUp .3s ease-out both}.review-section:nth-child(1){animation-delay:.05s}.review-section:nth-child(2){animation-delay:.1s}.review-section:nth-child(3){animation-delay:.15s}.review-section:nth-child(4){animation-delay:.2s}.review-section:last-child{border-bottom:none;padding-bottom:0}.review-section:first-child{padding-top:0}.review-section h3{font-size:.85rem;color:#2563eb;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:1px;font-weight:700}.review-row{display:flex;justify-content:space-between;padding:.35rem 0;font-size:.9rem}.review-label{color:#64748b}.review-value{color:#1e293b;font-weight:500;text-align:right;max-width:60%}.review-description{color:#475569;font-size:.9rem;line-height:1.6;margin:0}.confirmation-step{text-align:center;padding:3rem 2.5rem}.confirmation-icon-wrap{position:relative;display:inline-block;width:80px;height:80px;margin-bottom:1.5rem}.confirm-ring{position:absolute;inset:0;border-radius:50%;border:3px solid #22c55e;animation:ringExpand .6s ease-out}@keyframes ringExpand{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.confirm-check{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#22c55e;font-weight:700;animation:checkPop .4s ease-out .3s both}@keyframes checkPop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.confirmation-text{color:#64748b;font-size:1.05rem;margin-bottom:2rem}.confirmation-card{background:linear-gradient(135deg,#f8fafc,#f0f9ff);border-radius:16px;padding:2rem;border:1px solid #dbeafe;margin-bottom:2rem;text-align:left}.confirmation-ref{text-align:center;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem}.ref-label{font-size:.85rem;color:#64748b;display:block;margin-bottom:.5rem}.ref-number{font-size:2.2rem;font-weight:800;color:#2563eb;display:block;letter-spacing:2px;animation:fadeSlideUp .5s ease-out .5s both}.ref-note{font-size:.8rem;color:#94a3b8;margin-top:.5rem}.confirmation-details{text-align:left}.confirmation-info{text-align:left;margin-bottom:2rem}.confirmation-info h3{font-size:1.1rem;color:#1e293b;margin:0 0 1rem;text-align:center;font-weight:700}.next-steps{display:flex;flex-direction:column;gap:.75rem}.next-step-item{display:flex;align-items:flex-start;gap:1rem;padding:.85rem 1rem;background:#fff;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s;animation:fadeSlideUp .4s ease-out both}.next-step-item:nth-child(1){animation-delay:.1s}.next-step-item:nth-child(2){animation-delay:.2s}.next-step-item:nth-child(3){animation-delay:.3s}.next-step-item:nth-child(4){animation-delay:.4s}.next-step-item:hover{box-shadow:0 2px 10px #0000000d;transform:translate(4px)}.step-num{width:30px;height:30px;min-width:30px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;box-shadow:0 2px 6px #2563eb4d}.next-step-item p{margin:0;color:#475569;font-size:.9rem;line-height:1.5;padding-top:4px}.confirmation-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.booking-nav{display:flex;justify-content:space-between;margin-top:1.5rem}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:.75rem 2rem;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;position:relative;overflow:hidden}.btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.15) 50%,transparent 60%);background-size:250% 100%;animation:btnShimmer 3s ease-in-out infinite}@keyframes btnShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb59}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:disabled:after{display:none}.btn-primary.btn-large{padding:1rem 2.5rem;font-size:1.1rem;border-radius:14px}.btn-primary.btn-submit{background:linear-gradient(135deg,#16a34a,#15803d)}.btn-primary.btn-submit:hover{box-shadow:0 6px 20px #16a34a59}.btn-glow{box-shadow:0 4px 15px #2563eb40}.btn-arrow,.btn-arrow-back{font-size:1.1rem;transition:transform .2s}.btn-primary:hover .btn-arrow{transform:translate(3px)}.btn-secondary:hover .btn-arrow-back{transform:translate(-3px)}.btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.btn-secondary{background:#fff;color:#475569;border:1.5px solid #d1d5db;padding:.75rem 2rem;border-radius:12px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .25s ease;display:inline-flex;align-items:center;gap:.5rem}.btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.booking-footer{background:linear-gradient(135deg,#0f172a,#1e293b);color:#94a3b8;margin-top:3rem}.footer-main{max-width:900px;margin:0 auto;padding:2.5rem 2rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:3rem;flex-wrap:wrap}.footer-brand h3{color:#fff;font-size:1.3rem;margin:0 0 .3rem;font-weight:700}.footer-brand p{color:#64748b;font-size:.9rem;margin:0}.footer-contact{display:flex;flex-direction:column;gap:.7rem}.footer-contact-item{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:#cbd5e1}.fc-icon{font-size:1rem;min-width:20px;text-align:center}.fc-sep{color:#475569}.footer-contact-item a{color:#60a5fa;text-decoration:none;transition:color .2s}.footer-contact-item a:hover{color:#93c5fd;text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);text-align:center;padding:1rem 2rem}.footer-bottom p{margin:0;font-size:.8rem;color:#475569}.welcome-back-banner{display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #6ee7b7;border-radius:14px;padding:1rem 1.25rem;margin-bottom:1.5rem;animation:slideDown .4s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.welcome-back-icon{font-size:2rem;flex-shrink:0}.welcome-back-text strong{display:block;font-size:1.05rem;color:#065f46;margin-bottom:.2rem}.welcome-back-text p{margin:0;font-size:.9rem;color:#047857;line-height:1.4}@media(max-width:768px){.booking-header-content{flex-direction:column;gap:1rem;padding:1.2rem 1rem;align-items:flex-start}.booking-logo{gap:.75rem}.booking-logo h1{font-size:1.3rem}.booking-tagline{font-size:.85rem}.header-actions{width:100%;justify-content:space-between}.booking-trust-bar{gap:.75rem;padding:.6rem .5rem;flex-wrap:wrap;justify-content:center}.trust-item{font-size:.7rem}.booking-step{padding:1.5rem;border-radius:14px}.welcome-step{padding:2rem 1.5rem}.booking-step h2{font-size:1.3rem}.option-cards,.option-cards.three-col{grid-template-columns:1fr;gap:1rem}.form-grid{grid-template-columns:1fr}.slots-grid{grid-template-columns:repeat(3,1fr)}.progress-steps{display:none}.review-row{flex-direction:column;gap:.1rem}.review-value{text-align:left;max-width:100%}.confirmation-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}.footer-main{flex-direction:column;gap:1.5rem;padding:2rem 1.5rem 1.5rem;text-align:center;align-items:center}.footer-contact{align-items:center}.welcome-features{gap:.75rem}.welcome-feature{font-size:.8rem;padding:.4rem .8rem}}@media(max-width:480px){.slots-grid{grid-template-columns:repeat(2,1fr)}.header-phone{font-size:.85rem;padding:.45rem .75rem}.logo-icon svg{width:36px;height:36px}}.service-pricing{margin-top:1rem;padding-top:.85rem;border-top:1px dashed #cbd5e1;text-align:left}.pricing-headline{font-size:1.1rem;font-weight:700;color:#2563eb;margin-bottom:.5rem;text-align:center;letter-spacing:-.01em}.pricing-details{list-style:none;padding:0;margin:0}.pricing-details li{font-size:.78rem;color:#475569;padding:.3rem 0 .3rem 1.4rem;position:relative;line-height:1.4}.pricing-details li:before{content:"$";position:absolute;left:0;color:#16a34a;font-weight:700}.pricing-note{font-size:.72rem;color:#64748b;margin:.6rem 0 0;font-style:italic;text-align:center;line-height:1.4}.option-card.selected .pricing-headline{color:#1d4ed8}.date-helper{font-size:.82rem;color:#64748b;margin:.5rem 0 0;font-style:italic;line-height:1.4}.date-helper a{color:#2563eb;text-decoration:none;font-weight:600}.date-helper a:hover{text-decoration:underline}.brand-crosslink{background:linear-gradient(135deg,#f8fafc,#eef2ff);border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:16px 24px}.brand-crosslink-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.brand-crosslink-text{font-size:14px;color:#475569;flex:1 1 auto}.brand-crosslink-text strong{color:#1e293b;margin-right:4px}.brand-crosslink-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:#fff;color:#1d4ed8;border:1px solid #93c5fd;border-radius:8px;text-decoration:none;font-weight:600;font-size:14px;transition:all .18s ease;white-space:nowrap}.brand-crosslink-btn:hover{background:#1d4ed8;color:#fff;border-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px #1d4ed840}@media(max-width:640px){.brand-crosslink-inner{flex-direction:column;align-items:stretch;text-align:center}.brand-crosslink-btn{justify-content:center}}.booking-page[data-brand=ippycs] .option-cards.three-col{display:flex;flex-wrap:wrap}.booking-page[data-brand=ippycs] .option-card[data-svc=dropoff]{order:1}.booking-page[data-brand=ippycs] .option-card[data-svc=onsite]{order:2}.booking-page[data-brand=ippycs] .option-card[data-svc=remote]{order:3}.booking-page[data-brand=ippycs] .booking-header-bg{background:linear-gradient(135deg,#064e3b,#047857,#059669)}.booking-page[data-brand=ippycs] .progress-fill{background:linear-gradient(90deg,#047857,#34d399,#047857)}.booking-page[data-brand=ippycs] .progress-step.active .step-dot{background:#047857}.booking-page[data-brand=ippycs] .progress-step.completed .step-dot{background:#22c55e}.booking-page[data-brand=ippycs] .option-card.selected{border-color:#047857!important;background:#ecfdf5!important}.booking-page[data-brand=ippycs] .option-card:hover{border-color:#6ee7b7;background:#ecfdf5}.booking-page[data-brand=ippycs] .btn-primary{background:linear-gradient(135deg,#047857,#065f46)!important}.booking-page[data-brand=ippycs] .btn-primary:hover{background:linear-gradient(135deg,#065f46,#064e3b)!important;box-shadow:0 6px 18px #04785759!important}.booking-page[data-brand=ippycs] .btn-glow{background:linear-gradient(90deg,#047857,#34d399,#6ee7b7,#047857)!important}.booking-page[data-brand=ippycs] .time-slot.selected{background:#047857!important;border-color:#047857!important;color:#fff!important}.booking-page[data-brand=ippycs] .header-phone:hover{color:#6ee7b7}.booking-page[data-brand=ippycs] .ref-number{color:#047857}.booking-page[data-brand=ippycs] .brand-crosslink-btn{color:#047857;border-color:#6ee7b7}.booking-page[data-brand=ippycs] .brand-crosslink-btn:hover{background:#047857;color:#fff;border-color:#047857;box-shadow:0 4px 12px #04785740}.qs-page{min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#e8eeff,#f5f0ff);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.qs-header{position:relative;overflow:hidden;background:linear-gradient(135deg,#1e3a8a,#2563eb,#3b82f6);color:#fff}.qs-header-bg{position:absolute;inset:0;background:radial-gradient(ellipse 600px 300px at 20% 50%,rgba(96,165,250,.3),transparent),radial-gradient(ellipse 400px 200px at 80% 30%,rgba(147,197,253,.2),transparent);pointer-events:none}.qs-header-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;max-width:1200px;margin:0 auto}.qs-logo{display:flex;align-items:center;gap:1rem}.qs-logo h1{font-size:1.4rem;font-weight:700;margin:0}.qs-tagline{font-size:.85rem;opacity:.8;margin:.15rem 0 0}.qs-header-actions{display:flex;align-items:center;gap:1rem}.qs-phone-btn{color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.4rem}.qs-book-btn{background:#ffffff26;color:#fff;text-decoration:none;padding:.5rem 1.2rem;border-radius:8px;font-size:.85rem;font-weight:500;border:1px solid rgba(255,255,255,.25);transition:all .2s}.qs-book-btn:hover{background:#ffffff40}.qs-trust-bar{display:flex;justify-content:center;gap:2rem;padding:.75rem 1rem;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.qs-trust-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#6b7280;font-weight:500}.qs-content{max-width:800px;margin:0 auto;padding:2rem 1.5rem 3rem}.qs-hero{text-align:center;margin-bottom:2.5rem;animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.qs-hero-icon{margin-bottom:1.5rem;display:inline-block}.qs-hero h2{font-size:2rem;color:#1e3a8a;margin:0 0 .75rem;font-weight:700}.qs-hero-desc{font-size:1.05rem;color:#6b7280;line-height:1.7;max-width:600px;margin:0 auto}.qs-loading{text-align:center;padding:3rem}.qs-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.qs-unavailable{text-align:center;padding:3rem 2rem;background:#fff;border-radius:16px;border:1px solid #fecaca}.qs-unavailable-icon{font-size:3rem;margin-bottom:1rem}.qs-unavailable h3{color:#dc2626;margin:0 0 .5rem}.qs-unavailable a{color:#2563eb;font-weight:600}.qs-downloads{background:#fff;border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 24px #0000000f;animation:fadeInUp .6s ease-out .1s both}.qs-downloads h3{font-size:1.3rem;color:#1e3a8a;margin:0 0 .5rem;text-align:center}.qs-download-subtitle{text-align:center;color:#6b7280;margin:0 0 1.5rem;font-size:.95rem}.qs-download-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.qs-download-card{display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;border:2px solid #e5e7eb;border-radius:12px;text-decoration:none;color:inherit;transition:all .25s;position:relative;background:#fafbfc}.qs-download-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #3b82f626;transform:translateY(-2px)}.qs-download-card.recommended{border-color:#3b82f6;background:#eff6ff}.qs-recommended-badge{position:absolute;top:-10px;right:16px;background:#3b82f6;color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .75rem;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.qs-os-icon{margin-bottom:1rem}.qs-download-card h4{font-size:1.2rem;margin:0 0 .25rem;color:#1e293b}.qs-download-card p{font-size:.85rem;color:#9ca3af;margin:0 0 1.25rem}.qs-download-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;padding:.6rem 1.75rem;border-radius:8px;font-weight:600;font-size:.95rem;transition:all .2s}.qs-download-card:hover .qs-download-btn{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 4px 12px #2563eb59}.qs-instructions{background:#fff;border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 24px #0000000f;animation:fadeInUp .6s ease-out .2s both}.qs-instructions h3{font-size:1.3rem;color:#1e3a8a;margin:0 0 1.5rem;text-align:center}.qs-steps{display:flex;flex-direction:column;gap:1rem}.qs-step{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f8fafc;border-radius:10px;border:1px solid #e5e7eb}.qs-step-number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}.qs-step p{margin:.35rem 0 0;color:#374151;font-size:.95rem;line-height:1.5}.qs-security-notice{display:flex;gap:1rem;padding:1.5rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;animation:fadeInUp .6s ease-out .3s both}.qs-security-icon{font-size:1.5rem;flex-shrink:0}.qs-security-notice h4{margin:0 0 .5rem;color:#166534;font-size:1rem}.qs-security-notice p{margin:0;color:#4b5563;font-size:.9rem;line-height:1.6}.qs-footer{text-align:center;padding:2rem;border-top:1px solid #e5e7eb;background:#fff}.qs-footer p{margin:.25rem 0;font-size:.85rem;color:#9ca3af}.qs-footer a{color:#6b7280;text-decoration:none}.qs-footer a:hover{color:#2563eb}@media(max-width:640px){.qs-header-content{flex-direction:column;gap:1rem;text-align:center}.qs-header-actions{width:100%;justify-content:center}.qs-download-cards{grid-template-columns:1fr}.qs-trust-bar{gap:1rem}.qs-hero h2{font-size:1.5rem}.qs-content{padding:1.5rem 1rem}}.rs-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#0f172a,#1e3a8a,#1e40af);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#fff}.rs-header{position:relative;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.1)}.rs-header-bg{position:absolute;inset:0;background:radial-gradient(ellipse 600px 300px at 20% 50%,rgba(59,130,246,.2),transparent),radial-gradient(ellipse 400px 200px at 80% 30%,rgba(96,165,250,.15),transparent);pointer-events:none}.rs-header-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box}.rs-logo{display:flex;align-items:center;gap:1rem}.rs-logo h1{font-size:1.3rem;font-weight:700;margin:0}.rs-tagline{font-size:.8rem;opacity:.7;margin:.1rem 0 0}.rs-phone-btn{color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.5rem;padding:.5rem 1.2rem;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);transition:all .2s}.rs-phone-btn:hover{background:#fff3}.rs-content{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem}.rs-splash{text-align:center;max-width:600px;width:100%;animation:rsFadeIn .6s ease-out}@keyframes rsFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.rs-splash-loader{position:relative;width:120px;height:120px;margin:0 auto 2rem;display:flex;align-items:center;justify-content:center}.rs-pulse-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(96,165,250,.3);animation:rsPulse 2s ease-out infinite}.rs-ring-2{animation-delay:.5s}@keyframes rsPulse{0%{transform:scale(.8);opacity:1}to{transform:scale(1.6);opacity:0}}.rs-splash-icon{position:relative;z-index:1;background:#2563eb4d;border-radius:24px;padding:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(96,165,250,.3);animation:rsFloat 3s ease-in-out infinite}.rs-splash-icon.rs-static{animation:none}@keyframes rsFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.rs-splash-title{font-size:1.8rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#fff,#93c5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rs-splash-subtitle{font-size:1.1rem;color:#ffffffb3;margin:0 0 .75rem;line-height:1.6}.rs-splash-note{font-size:.9rem;color:#ffffff80;margin:0 0 1.5rem;font-style:italic}.rs-progress-bar{width:280px;height:4px;background:#ffffff1a;border-radius:4px;margin:1.5rem auto 0;overflow:hidden}.rs-progress-fill{width:40%;height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:4px;animation:rsProgress 1.5s ease-in-out infinite}@keyframes rsProgress{0%{transform:translate(-100%)}to{transform:translate(350%)}}.rs-steps{text-align:left;margin:2rem auto;max-width:480px;display:flex;flex-direction:column;gap:1rem}.rs-step{display:flex;gap:1rem;padding:1.25rem;background:#ffffff0f;border-radius:12px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s}.rs-step:hover{background:#ffffff1a;border-color:#60a5fa4d}.rs-step-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#3b82f6);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;box-shadow:0 4px 12px #2563eb66}.rs-step-text strong{display:block;margin-bottom:.25rem;font-size:.95rem}.rs-step-text p{margin:0;font-size:.85rem;color:#fff9;line-height:1.5}.rs-filename{font-family:SF Mono,Cascadia Code,monospace;background:#3b82f633;padding:.15rem .5rem;border-radius:4px;font-size:.8rem;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.rs-highlight{color:#60a5fa;font-weight:600}.rs-redownload{margin-top:2rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.rs-redownload p{margin:0;color:#fff6;font-size:.85rem}.rs-redownload-btn{background:#ffffff1a;color:#60a5fa;border:1px solid rgba(96,165,250,.3);padding:.4rem 1rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.rs-redownload-btn:hover{background:#60a5fa33;border-color:#60a5fa80}.rs-security{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2rem;padding:.75rem 1.25rem;background:#16a34a1a;border:1px solid rgba(22,163,74,.2);border-radius:8px;font-size:.8rem;color:#fff9}.rs-call-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;text-decoration:none;border-radius:10px;font-weight:600;font-size:1.05rem;transition:all .2s;box-shadow:0 4px 16px #2563eb66}.rs-call-btn:hover{background:linear-gradient(135deg,#1d4ed8,#2563eb);transform:translateY(-1px);box-shadow:0 6px 24px #2563eb80}.rs-unavailable-icon{margin-bottom:1.5rem}.rs-footer{text-align:center;padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,.08);background:#0003}.rs-footer p{margin:.2rem 0;font-size:.8rem;color:#ffffff59}.rs-footer a{color:#ffffff73;text-decoration:none}.rs-footer a:hover{color:#ffffffb3}@media(max-width:640px){.rs-header-content{flex-direction:column;gap:1rem;text-align:center;padding:1rem}.rs-splash-title{font-size:1.4rem}.rs-splash-subtitle{font-size:1rem}.rs-content{padding:1.5rem 1rem}.rs-steps{margin:1.5rem auto}.rs-step{padding:1rem}}.pcr-page{min-height:100vh;background:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1e293b}.pcr-loading,.pcr-error{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#64748b}.pcr-header{color:#fff}.pcr-header-inner{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.pcr-header-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.pcr-logo{font-size:1.5rem;font-weight:700}.pcr-tagline{font-size:.875rem;opacity:.85;margin-top:.125rem}.pcr-contact{text-align:right;font-size:.8125rem;line-height:1.6}.pcr-contact-line{display:flex;align-items:center;gap:.375rem;justify-content:flex-end}.pcr-room-title{font-size:2rem;font-weight:700;margin-top:1.5rem}.pcr-prepared{opacity:.9;margin-top:.25rem;font-size:.9375rem}.pcr-room-meta{margin-top:.75rem;display:flex;gap:1rem;font-size:.875rem;opacity:.9;flex-wrap:wrap}.pcr-room-meta-item{display:flex;align-items:center;gap:.375rem}.pcr-main{max-width:1100px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.pcr-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;overflow:hidden}.pcr-card-pad{padding:1.25rem}.pcr-card-h2{font-size:1.0625rem;font-weight:600;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.pcr-card-text{color:#475569;white-space:pre-wrap;line-height:1.5}.pcr-view-tabs{border-bottom:1px solid #e2e8f0;padding:.5rem;display:flex;gap:.25rem}.pcr-view-tab{padding:.4rem .75rem;font-size:.875rem;border-radius:.375rem;background:transparent;border:none;color:#475569;cursor:pointer;display:inline-flex;align-items:center;gap:.375rem}.pcr-view-tab.active{color:#fff}.pcr-canvas{height:500px;background:#f1f5f9}.pcr-canvas svg{width:100%;height:100%;display:block;background:#fafafa}.pcr-3d-loading{padding:2rem;color:#64748b}.pcr-3d-frame{width:100%;height:100%;display:flex}.pcr-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.pcr-photo{width:100%;height:130px;object-fit:cover;border-radius:.375rem;display:block}.pcr-table{width:100%;font-size:.9375rem;border-collapse:collapse}.pcr-table thead th{text-align:left;font-size:.75rem;text-transform:uppercase;color:#64748b;padding:.5rem;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.pcr-table th.right,.pcr-table td.right{text-align:right}.pcr-table tbody td{padding:.625rem .5rem;border-top:1px solid #f1f5f9}.pcr-table tfoot td{padding:.875rem .5rem;border-top:2px solid #1e293b;font-size:1.125rem;font-weight:700}.pcr-fineprint{font-size:.75rem;color:#94a3b8;margin-top:.75rem}.pcr-accept{border:2px solid;border-radius:.5rem;padding:1.5rem;text-align:center}.pcr-accept h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.pcr-accept-text{color:#475569;margin-bottom:1rem}.pcr-accept-row{max-width:26rem;margin:0 auto;display:flex;gap:.5rem}.pcr-accept-input{flex:1;border:1px solid #cbd5e1;border-radius:.375rem;padding:.5rem .75rem;font-size:.9375rem;font-family:inherit}.pcr-accept-btn{padding:.5rem 1.25rem;color:#fff;border:none;border-radius:.375rem;font-weight:500;font-size:.9375rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.pcr-accept-btn:disabled{opacity:.5;cursor:not-allowed}.pcr-accepted{background:#f0fdf4;border:2px solid #86efac;border-radius:.5rem;padding:1.5rem;text-align:center}.pcr-accepted-icon{margin:0 auto .5rem;color:#16a34a}.pcr-accepted h2{font-size:1.25rem;font-weight:600;color:#14532d}.pcr-accepted-text{color:#15803d;margin-top:.25rem}.pcr-footer{text-align:center;padding:1.5rem;font-size:.75rem;color:#94a3b8}.cp-container{min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#e8ecf4,#f5f3ff);display:flex;align-items:flex-start;justify-content:center;padding:2.5rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.cp-card{background:#fff;border-radius:18px;box-shadow:0 12px 40px #0f172a1a,0 4px 12px #0f172a0d;width:100%;max-width:760px;overflow:hidden}.cp-header{background:linear-gradient(135deg,#1e3a8a,#2563eb 60%,#3b82f6);padding:2.25rem 2rem;text-align:center;color:#fff;position:relative}.cp-header:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.12),transparent 60%);pointer-events:none}.cp-logo{width:64px;height:64px;margin-bottom:.75rem;filter:brightness(10);position:relative}.cp-header h1{margin:0;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;position:relative}.cp-header .cp-subtitle{margin:.4rem 0 0;font-size:.95rem;font-weight:500;opacity:.92;position:relative}.cp-job-summary{padding:1.5rem 2rem;border-bottom:1px solid #f1f5f9;background:#fbfcfe}.cp-job-row{display:flex;align-items:center;gap:.75rem;padding:.55rem 0;font-size:1rem;color:#334155}.cp-job-row svg{color:#94a3b8;flex-shrink:0}.cp-label{color:#64748b;min-width:100px;font-weight:500}.cp-value{font-weight:700;color:#0f172a}.cp-items{padding:1.5rem 2rem;border-bottom:1px solid #f1f5f9}.cp-items h3{margin:0 0 1rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:700}.cp-items-table{width:100%;border-collapse:collapse;font-size:.92rem}.cp-items-table th{text-align:left;padding:.6rem .75rem;color:#64748b;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid #e2e8f0;background:#f8fafc}.cp-items-table th:first-child,.cp-items-table td:first-child{padding-left:.75rem}.cp-items-table th:last-child,.cp-items-table td:last-child{text-align:right;padding-right:.75rem}.cp-items-table th:nth-child(2),.cp-items-table td:nth-child(2){text-align:center;width:60px}.cp-items-table th:nth-child(3),.cp-items-table td:nth-child(3){text-align:right;width:120px;white-space:nowrap}.cp-items-table th:nth-child(4),.cp-items-table td:nth-child(4){width:130px;white-space:nowrap;font-weight:700}.cp-items-table td{padding:.7rem .75rem;color:#334155;border-bottom:1px solid #f1f5f9;vertical-align:top;line-height:1.45}.cp-items-table tr:last-child td{border-bottom:none}.cp-amount-box{display:flex;justify-content:space-between;align-items:center;padding:1.75rem 2rem;background:linear-gradient(135deg,#f8fafc,#eff6ff);border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.cp-amount-box span:first-child{font-size:1.05rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.06em}.cp-amount{font-size:2.4rem;font-weight:800;color:#0f172a;letter-spacing:-.025em;line-height:1}.cp-amount small{font-size:.95rem;font-weight:600;color:#64748b;margin-left:.4rem;letter-spacing:0}.cp-stripe-section{padding:2rem}.cp-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1.25rem 2rem;background:#f8fafc;border-top:1px solid #f1f5f9;color:#94a3b8;font-size:.78rem;text-align:center}.cp-footer svg{flex-shrink:0}.cp-loading{text-align:center;padding:4rem 2rem;color:#64748b}.cp-loading svg{animation:spin 1s linear infinite}.cp-loading p{margin-top:1rem;font-size:.95rem}.cp-error{text-align:center;padding:4rem 2rem;color:#dc2626}.cp-error h2{margin:1rem 0 .5rem;font-size:1.4rem}.cp-error p{color:#64748b;font-size:.95rem}.cp-success{text-align:center;padding:4rem 2rem}.cp-success svg{color:#22c55e}.cp-success h2{margin:1rem 0 .5rem;color:#166534;font-size:1.6rem}.cp-success-amount{font-size:2rem;font-weight:800;color:#0f172a;margin:.5rem 0}.cp-success-desc{color:#475569;font-size:1rem}.cp-success-sub{color:#94a3b8;font-size:.85rem;margin-top:1rem}@media(max-width:640px){.cp-container{padding:0;align-items:flex-start}.cp-card{border-radius:0;min-height:100vh;box-shadow:none}.cp-header{padding:1.75rem 1.25rem}.cp-header h1{font-size:1.4rem}.cp-job-summary,.cp-items,.cp-amount-box,.cp-stripe-section,.cp-footer{padding-left:1.25rem;padding-right:1.25rem}.cp-amount{font-size:1.85rem}.cp-items-table{font-size:.82rem}.cp-items-table th,.cp-items-table td{padding:.5rem .4rem}.cp-items-table th:nth-child(3),.cp-items-table td:nth-child(3),.cp-items-table th:nth-child(4),.cp-items-table td:nth-child(4){width:auto}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #3b82f6;--primary-dark: #2563eb;--secondary: #64748b;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--background: #f8fafc;--surface: #ffffff;--text: #1e293b;--text-muted: #64748b;--border: #e2e8f0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--background);color:var(--text);line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;font-size:.875rem;border:none;transition:all .2s}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary);color:#fff}.btn-secondary:hover{background-color:#475569}.btn-success{background-color:var(--success);color:#fff}.btn-danger{background-color:var(--danger);color:#fff}.btn-outline{background-color:transparent;border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background-color:var(--background)}.card{background-color:var(--surface);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.form-group{margin-bottom:1rem}.form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem;color:var(--text)}.form-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.form-select{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;font-size:.875rem;background-color:#fff}.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;font-size:.875rem;min-height:100px;resize:vertical}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border)}th{background-color:var(--background);font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--text-muted)}tr:hover{background-color:var(--background)}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-pending{background-color:#fef3c7;color:#92400e}.badge-in-progress{background-color:#dbeafe;color:#1e40af}.badge-completed{background-color:#d1fae5;color:#065f46}.badge-cancelled{background-color:#fee2e2;color:#991b1b}.badge-draft{background-color:#f3f4f6;color:#374151}.badge-sent{background-color:#dbeafe;color:#1e40af}.badge-paid{background-color:#d1fae5;color:#065f46}.badge-overdue{background-color:#fee2e2;color:#991b1b}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:var(--surface);border-radius:.5rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;padding:1.5rem}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-title{font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.loading{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted)}.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-title{font-size:1.5rem;font-weight:600}.search-bar{display:flex;gap:.5rem;margin-bottom:1rem}.search-input{flex:1;max-width:300px}.tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.tab{padding:.75rem 1rem;border:none;background:none;font-size:.875rem;font-weight:500;color:var(--text-muted);border-bottom:2px solid transparent;cursor:pointer}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.stat-card{background-color:var(--surface);border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.stat-value{font-size:2rem;font-weight:700;color:var(--text)}.stat-label{font-size:.875rem;color:var(--text-muted);margin-top:.25rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:768px){.page-header{flex-direction:column;align-items:flex-start!important;gap:.75rem}.page-title{font-size:1.25rem}.card,.stat-card{padding:1rem}.stat-value{font-size:1.5rem}.modal-content{width:100%;max-width:100%;min-height:50vh;max-height:92vh;border-radius:.75rem .75rem 0 0;margin-top:auto;padding:1rem}.modal-overlay{align-items:flex-end}.search-bar{flex-direction:column}.search-input{max-width:100%}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:0;flex-wrap:nowrap;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap;flex-shrink:0;padding:.625rem .75rem;font-size:.8rem}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%;justify-content:center}table{font-size:.8rem}th,td{padding:.5rem .625rem}.form-group{margin-bottom:.75rem}.badge{font-size:.7rem;padding:.2rem .4rem}.empty-state{padding:2rem 1rem}.btn{font-size:.8rem;padding:.45rem .75rem}.grid-2{grid-template-columns:1fr}select.form-select{font-size:.85rem}.form-input,.form-select,.form-textarea{font-size:16px}}@media(max-width:480px){.stat-value{font-size:1.25rem}.page-title{font-size:1.1rem}th,td{padding:.4rem .5rem;font-size:.75rem}}@media(max-width:768px){.job-actions{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:.5rem!important}.job-actions .form-select{grid-column:1 / -1;width:100%!important}.job-action-btn{justify-content:center!important;padding:.6rem .5rem!important;font-size:.8rem!important;width:100%}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive table{min-width:600px}}@media(max-width:480px){.job-actions{grid-template-columns:1fr!important}}.quick-action-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;font-size:13px;font-weight:600;color:#334155;transition:all .2s;box-shadow:0 1px 2px #0000000a}.quick-action-btn:hover{border-color:var(--qa-color, #3b82f6);box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.quick-action-btn .qa-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--qa-color, #3b82f6) 12%,transparent);color:var(--qa-color, #3b82f6)}
