:root{--color-primary: #2ac5db;--color-primary-dark: #219faf;--color-secondary: #6ca3df;--color-secondary-dark: #41658d;--color-success: #22c55e;--color-success-dark: #16a34a;--color-error: #f44336;--color-error-dark: #d32f2f;--color-warning: #f59e0b;--color-info: #3b82f6;--color-text: #333;--color-text-light: #666;--color-text-lighter: #999;--color-border: #e0e0e0;--color-border-light: #e8eaed;--color-bg: #f5f7fa;--color-bg-light: #f9fafb;--color-white: #ffffff;--gradient-primary: linear-gradient(135deg, #2ac5db, #6ca3df);--gradient-success: linear-gradient(135deg, #28a745, #20c997);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 30px;--space-3xl: 40px;--space-4xl: 60px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 20px;--radius-circle: 50%;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .05);--shadow-lg: 0 4px 12px rgba(42, 197, 219, .4);--shadow-hover: 0 4px 6px rgba(0, 0, 0, .1);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-size-3xl: 24px;--font-size-4xl: 28px;--font-size-5xl: 32px;--transition-fast: .2s ease;--transition-base: .3s ease;--transition-slow: .4s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family)}.booking-form-container{max-width:600px;min-width:500px;margin:60px auto;padding:30px 0;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.progress-bar{width:100%;height:6px;background:#e0e0e0;border-radius:3px;margin-bottom:30px;margin-left:30px;margin-right:30px;width:calc(100% - 60px);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#2ac5db,#6ca3df);border-radius:3px;transition:width .3s ease}.form-step{display:none;padding:0 30px}.form-step.active{display:block;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h2{color:#333;margin-bottom:10px;font-size:24px}.step-description{color:#666;margin-bottom:25px;font-size:14px}.form-group{margin-bottom:20px}label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=datetime-local],select{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:border-color .3s ease;font-family:inherit}input:focus,select:focus{outline:none;border-color:#2ac5db}.input-method-toggle{display:flex;gap:12px;margin-bottom:25px;background:#f5f5f5;padding:4px;border-radius:8px}.toggle-option{flex:1;padding:10px 15px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;color:#666;transition:all .3s ease}.toggle-option.active{background:#fff;color:#2ac5db;box-shadow:0 2px 4px #0000001a}.toggle-option:hover{color:#2ac5db}.input-section{display:none}.input-section.active{display:block;animation:fadeIn .3s ease}.plate-lookup-container{display:flex;gap:10px;margin-bottom:20px}.plate-input-wrapper{flex:2}.state-input-wrapper{flex:1}.lookup-button{width:100%;padding:12px 20px;background:linear-gradient(135deg,#2ac5db,#6ca3df);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:20px}.lookup-button:hover{background:linear-gradient(135deg,#25b0c4,#5e92cc);transform:translateY(-1px);box-shadow:0 4px 12px #2ac5db66}.lookup-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.upload-button{width:100%;padding:40px 20px;background:#f8f9fa;border:2px dashed #cbd5e0;border-radius:8px;color:#4a5568;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease}.upload-button:hover{border-color:#2ac5db;background:#e8f7fa;color:#2ac5db}.image-preview{margin-top:15px;display:none}.image-preview.active{display:block}.preview-image{width:100%;max-height:200px;object-fit:contain;border-radius:8px;border:2px solid #e0e0e0}.image-actions{display:flex;gap:10px;margin-top:10px}.btn-remove{padding:8px 16px;background:#f44336;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .3s ease}.btn-remove:hover{background:#d32f2f}.lookup-status{padding:12px 15px;border-radius:8px;margin-bottom:20px;display:none;font-size:14px}.lookup-status.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.lookup-status.error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.lookup-status.loading{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.service-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:12px;margin-bottom:20px}.service-option{position:relative}.service-option input[type=checkbox]{position:absolute;opacity:0}.service-label{display:block;padding:15px;border:2px solid #e0e0e0;border-radius:8px;text-align:center;cursor:pointer;transition:all .3s ease;background:#fff}.service-option input[type=checkbox]:checked+.service-label{border-color:#2ac5db;background:#e8f7fa;color:teal;font-weight:600}.service-label:hover{border-color:#2ac5db}.button-group{display:flex;gap:12px;margin-top:30px}.btn{padding:14px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-primary{background:linear-gradient(135deg,#2ac5db,#6ca3df);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#25b0c4,#5e92cc);transform:translateY(-1px);box-shadow:0 4px 12px #2ac5db66}.btn-secondary{background:#f5f5f5;color:#333}.btn-secondary:hover{background:#e0e0e0}.btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.confirmation-details{background:#f9f9f9;padding:20px;border-radius:8px;margin-bottom:20px}.detail-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e0e0e0}.detail-row:last-child{border-bottom:none}.detail-label{color:#666;font-weight:500;margin-right:2px}.detail-value{color:#333;font-weight:600;text-align:right}.error-message{color:#f44336;font-size:13px;margin-top:5px;display:none}.form-group.error input,.form-group.error select{border-color:#f44336}.form-group.error .error-message{display:block}@media(max-width:600px){.booking-form-container{margin:20px auto;padding:20px 0;min-width:unset}.service-grid{grid-template-columns:1fr}.button-group{flex-direction:column-reverse}.plate-lookup-container{flex-direction:column}}body.menu-open{overflow:hidden}nav{display:flex;justify-content:space-between;align-items:center;width:100%;background-color:#fff;padding:0 5%;box-shadow:0 2px 5px #0000000d;position:relative}.logo-container{display:flex;align-items:center;gap:12px;z-index:1001}.logo-icon{width:45px;height:45px;flex-shrink:0}.logo-icon svg{width:100%;height:100%}.logo-text h1{font-size:28px;font-weight:700;color:#333;letter-spacing:-.5px;line-height:1}.logo-text p{font-size:8px;color:#666;letter-spacing:1.5px;text-transform:uppercase;margin-top:2px;font-weight:500}.nav-menu{display:flex;align-items:center}.nav-links{display:flex;list-style:none;gap:50px;margin:0;padding:0}.nav-links a{text-decoration:none;color:#333;font-size:16px;font-weight:400;transition:color .3s ease;position:relative}.nav-links a:hover{color:#40d4dd}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:linear-gradient(135deg,#40d4dd,#35c5ce);transition:width .3s ease}.nav-links a:hover:after{width:100%}.contact-button{background:linear-gradient(135deg,#2ac5db,#6ca3df);color:#fff;padding:12px 28px;border:none;border-radius:8px;font-size:14px;font-weight:700;letter-spacing:1px;cursor:pointer;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 15px #40d4dd4d;display:inline-block;white-space:nowrap}.contact-button:hover{background:linear-gradient(135deg,#25b0c4,#5e92cc);transform:translateY(-1px);box-shadow:0 4px 12px #2ac5db66}.hamburger{display:none;flex-direction:column;justify-content:space-between;width:30px;height:auto;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001;transition:transform .3s ease}.hamburger span{width:30px;height:3px;background-color:#333;border-radius:2px;transition:all .3s ease;transform-origin:center}.hamburger.active span:nth-child(1){transform:translateY(9.5px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0;transform:translate(-10px)}.hamburger.active span:nth-child(3){transform:translateY(-9.5px) rotate(-45deg)}@media(max-width:768px){nav{padding:15px 20px}.logo-icon{width:38px;height:38px}.logo-text h1{font-size:22px}.logo-text p{font-size:7px;letter-spacing:1px}.hamburger{display:flex;margin:0 15px}.nav-menu{position:fixed;top:62px;left:-100%;width:100%;height:calc(100vh - 62px);background-color:#fff;transition:left .3s ease;overflow-y:auto;box-shadow:0 5px 15px #0000001a;align-items:start}.nav-menu.active{left:0}.nav-links{flex-direction:column;gap:0;padding:30px 20px;width:100%}.nav-links li{width:100%;border-bottom:1px solid #f0f0f0}.nav-links a{display:block;padding:20px 10px;font-size:18px;width:100%}.nav-links a:after{display:none}.contact-button{order:3;padding:10px 22px;font-size:12px;letter-spacing:.8px}}@media(max-width:480px){.logo-text h1{font-size:20px}.logo-text p{font-size:6px}.contact-button{padding:8px 18px;font-size:11px}.hamburger{width:24px;height:18px;margin-right:10px}.hamburger span{height:2.5px}}.demo-content{padding:60px 20px;text-align:center;max-width:800px;margin:0 auto}.demo-content h2{color:#333;margin-bottom:20px;font-size:32px}.demo-content p{color:#666;line-height:1.8;margin-bottom:15px}.demo-box{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 10px #0000000d;margin-top:40px}.logo img,.logo svg{width:240px;height:100%;object-fit:contain;margin-top:10px}@media(max-width:768px){.logo img,.logo svg{width:180px;margin:6px 0}}.asap-option{margin-bottom:15px}.asap-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px;background:#f8f9fa;border-radius:8px}.asap-checkbox:hover{background:#e9ecef}.asap-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer}.asap-checkbox span{font-weight:500;color:#333}#appointmentTime.disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.vin-link{color:#666;font-size:13px;text-decoration:underline;cursor:pointer;margin-bottom:10px}.popup{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 6px #0000004d;z-index:100}.popup.show{display:block}.close-btn{position:absolute;top:0;right:0;background:none;border:none;font-size:28px;color:#666;cursor:pointer;padding:0;width:25px;height:25px;line-height:1;transition:color .2s}.close-btn:hover{color:#000}.overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:99}.overlay.show{display:block}.services-container{display:flex;gap:2rem;margin-bottom:2rem;flex-direction:column}.services-selection{flex:1}.service-label{display:flex;justify-content:space-between;align-items:center;width:100%}.service-price{color:#666;font-size:.9em;margin-left:.5rem}.services-summary{width:100%;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;height:fit-content;position:sticky;top:1rem}.services-summary h3{margin:0 0 1rem;font-size:1.2rem;color:#333}.summary-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #dee2e6}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-service{color:#495057;font-size:.95rem}.summary-price{font-weight:600;color:#333}.summary-total{display:flex;justify-content:space-between;align-items:center;font-size:1.1rem;font-weight:700}.total-label{color:#333}.total-price{color:#131313;font-size:1.3rem}@media(max-width:768px){.services-container{flex-direction:column}.services-summary{width:100%;position:static}}.datetime-container{cursor:pointer}.datetime-container input[type=datetime-local]{width:100%;cursor:pointer;pointer-events:none}.tech-dashboard{min-height:100vh;background:#f5f7fa}.dashboard-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:20px 5%;box-shadow:0 2px 4px #0000000d}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.dashboard-header h1{margin:0;font-size:28px;color:#333}.welcome-text{margin:5px 0 0;color:#666;font-size:14px}.btn-logout{font-size:14px;font-weight:600;cursor:pointer;color:var(--color-text)}.dashboard-container{max-width:1200px;margin:0 auto;padding:30px 20px}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#666}.spinner-large{width:48px;height:48px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.dashboard-error{display:flex;align-items:center;gap:10px;background:#fee;border:1px solid #fcc;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px}.events-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.section-header h2{margin:0;font-size:22px;color:#333}.event-count{background:var(--color-text-light);color:#fff;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600}.no-events{text-align:center;padding:60px 20px;color:#999}.no-events svg{margin-bottom:16px;opacity:.5}.no-events h3{margin:0 0 8px;font-size:20px;color:#666}.no-events p{margin:0;font-size:14px}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.event-card{background:#fafbfc;border:2px solid #e8eaed;border-radius:12px;overflow:hidden;transition:all .2s}.event-card:hover{box-shadow:0 4px 12px #667eea26}.event-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-bottom:2px solid #e8eaed}.event-id{font-weight:700;color:#333;font-size:14px}.event-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;color:#fff}.status-new{background:#3b82f6}.status-assigned{background:#8b5cf6}.status-in-progress{background:#f59e0b}.status-completed{background:#10b981}.status-cancelled{background:#ef4444}.event-body{padding:20px}.event-info{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:#555;font-size:14px}.event-info svg{flex-shrink:0;color:var(--color-primary)}.event-services{margin-top:16px;padding-top:16px;border-top:1px solid #e8eaed}.event-services strong{display:block;margin-bottom:8px;color:#333;font-size:14px}.event-services ul{margin:0;padding-left:20px}.event-services li{margin-bottom:4px;color:#555;font-size:13px}.event-footer{padding:16px 20px;background:#fff;border-top:2px solid #e8eaed}@media(max-width:768px){.header-content{flex-direction:column;gap:16px;align-items:flex-start}.btn-logout{width:100%}.events-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:12px}}.event-details-page{background:#f5f7fa;padding:20px 40px}.details-header{max-width:1200px;margin:0 auto 30px}.btn-back{background:transparent;border:none;color:#667eea;font-size:16px;font-weight:600;cursor:pointer;padding:8px 0;margin-bottom:16px;transition:color .2s}.btn-back:hover{color:#5568d3}.header-title{display:flex;align-items:left;gap:4px;flex-direction:column;justify-content:center}.header-title h1{margin:0;font-size:32px;color:#333}.event-status-badge{padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600;max-width:fit-content;color:#fff}.details-loading,.details-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#666}.details-error h2{margin:0 0 12px;color:#333}.details-error p{margin:0 0 24px}.details-error-message,.details-success-message{max-width:1200px;margin:0 auto 20px;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;font-size:14px}.details-error-message{background:#fee;border:1px solid #fcc;color:#c33}.details-success-message{background:#efe;border:1px solid #cfc;color:#3a3}.details-container{max-width:1200px;margin:0 auto}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.details-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000d;margin-bottom:20px}.details-card h2{margin:0 0 20px;font-size:18px;color:#333;border-bottom:2px solid #e8eaed;padding-bottom:12px}.info-list{display:flex;flex-direction:column;gap:12px}.info-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.info-label{font-weight:600;color:#666;font-size:14px;min-width:80px}.info-value{color:#333;font-size:14px;text-align:right;flex:1;word-break:break-word}.no-data{color:#999;font-style:italic;font-size:14px;margin:0}.services-list{display:flex;flex-direction:column;gap:12px}.service-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f8f9fa;border-radius:8px;border:2px solid #e8eaed}.service-name{font-weight:500;color:#333;font-size:15px}.service-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.payment-summary{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:20px}.payment-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e8eaed}.payment-row:last-child{border-bottom:none}.payment-label{font-weight:500;color:#666;font-size:15px}.payment-value{font-weight:600;color:#333;font-size:16px}.payment-value.paid{color:#28a745}.payment-value.balance{color:#dc3545;font-size:18px}.total-row{border-top:2px solid #333;margin-top:8px;padding-top:16px;font-size:18px}.payment-status{padding:6px 14px;border-radius:16px;font-size:13px;font-weight:600;text-transform:uppercase}.status-unpaid{background:#f8d7da;color:#721c24}.status-deposit_paid{background:#fff3cd;color:#856404}.status-paid{background:#d1e7dd;color:#0f5132}.payment-actions{display:flex;justify-content:flex-end}.btn-charge{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:14px 32px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-charge:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ba87b);transform:translateY(-1px);box-shadow:0 4px 12px #28a74566}.btn-charge:disabled{background:#ccc;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1000}.adjustment-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;z-index:1001;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #e8eaed}.modal-header h2{margin:0;font-size:22px;color:#333}.modal-close{background:none;border:none;font-size:32px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;line-height:1;transition:color .2s}.modal-close:hover{color:#333}.modal-body{padding:24px}.modal-body .form-group{margin-bottom:24px}.modal-body label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.modal-body input[type=number]{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .2s}.modal-body input[type=number]:focus{outline:none;border-color:#667eea}.modal-body small{display:block;margin-top:6px;color:#666;font-size:13px}.services-checklist{display:flex;flex-direction:column;gap:10px}.checkbox-item{display:flex;align-items:center;gap:10px;padding:10px;background:#f8f9fa;border-radius:6px}.checkbox-item input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-item label{margin:0;cursor:pointer;font-weight:400;font-size:14px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:2px solid #e8eaed}.spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media(max-width:768px){.details-grid{grid-template-columns:1fr}.header-title{flex-direction:column;align-items:flex-start;gap:8px}.adjustment-modal{width:95%}}.event-subtitle{margin:.25rem 0 0;color:#6b7280;font-size:.875rem}.upload-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.upload-loading,.upload-error{text-align:center;padding:4rem 2rem}.upload-error-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fef2f2;color:#991b1b;border-radius:8px;margin-bottom:1.5rem;border:1px solid #fecaca}.upload-status{display:flex;justify-content:space-around;gap:2rem;padding:1.5rem;background:#f9fafb;border-radius:8px;margin-bottom:2rem}.status-indicator{display:flex;flex-direction:column;align-items:center;gap:.5rem}.status-count{font-size:2rem;font-weight:700;color:#111827}.status-icon{font-size:2rem;color:#9ca3af}.status-indicator.status-complete .status-icon{color:#22c55e}.status-label{font-size:.875rem;color:#6b7280;text-align:center}.upload-empty{text-align:center;padding:1rem;color:#9ca3af}.upload-empty svg{margin:0 auto .5rem;color:#d1d5db}.upload-empty h3{margin:0 0 .5rem;color:#6b7280;font-size:1.25rem}.upload-empty p{margin:0;color:#9ca3af}.photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.photo-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:2px solid #e5e7eb;background:#f9fafb}.photo-item img{width:100%;height:100%;object-fit:cover}.photo-remove{position:absolute;top:8px;right:8px;width:35px;height:35px;border-radius:50%;background:var(--color-error);color:#fff;border:1px solid white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:20px}.photo-remove:hover:not(:disabled){background:var(--color-error-dark);transform:scale(1.1)}.photo-remove:disabled{opacity:.5;cursor:not-allowed}.photo-uploaded-badge{position:absolute;top:8px;left:8px;width:32px;height:32px;border-radius:50%;background:var(--color-success);color:#fff;border:2px solid white;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;box-shadow:0 2px 4px #0003}.photo-progress{position:absolute;bottom:0;left:0;right:0;height:6px;background:#0000004d}.photo-progress-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);transition:width .3s ease}.upload-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;padding-bottom:2rem;border-bottom:2px solid #e5e7eb}.btn-large{padding:1rem 2rem;font-size:1rem;display:flex;align-items:center;gap:.5rem}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-success{background:#22c55e;color:#fff;border:none;font-weight:600}.btn-success:hover:not(:disabled){background:#16a34a;transform:translateY(-1px);box-shadow:0 4px 6px #22c55e4d}.btn-large:disabled{opacity:.6;cursor:not-allowed}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.photo-upload-page{padding:1rem}.upload-container{padding:1.5rem}.photos-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.upload-status{gap:1rem}.status-count{font-size:1.5rem}.upload-actions{flex-direction:column}.btn-large{width:100%;justify-content:center}}.margin-bottom{margin-bottom:20px}.upload-info-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#eff6ff;color:#1e40af;border-radius:8px;margin-bottom:1.5rem;border:1px solid #bfdbfe}.photo-size-badge{position:absolute;bottom:8px;right:8px;background:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.spinner-large{width:48px;height:48px;border:4px solid rgba(59,130,246,.3);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}.existing-photos-section{margin:2rem 0}.existing-photos-section h3{margin:0 0 1rem;color:#6b7280;font-size:1rem;font-weight:600}.existing-photo{opacity:.9}.photo-info-badge{position:absolute;bottom:8px;left:8px;background:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:500}.notes-container{margin:0 auto;padding:0 1rem}.notes-card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;margin-bottom:1.5rem}.notes-card h2,.notes-card h3{margin-top:0;margin-bottom:1rem;color:#333}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-item{background:#f9f9f9;border-left:3px solid #007bff;padding:1rem;border-radius:4px}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.note-author{font-weight:600;color:#007bff;font-size:.9rem}.note-actions{display:flex;align-items:center;gap:.75rem}.note-timestamp{font-size:.85rem;color:#666}.note-content{color:#333;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.btn-delete-note{background:none;border:none;color:#dc3545;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.btn-delete-note:hover:not(:disabled){background-color:#dc35451a}.btn-delete-note:disabled{opacity:.5;cursor:not-allowed}.notes-empty{text-align:center;padding:3rem 1rem;color:#666}.notes-empty svg{margin-bottom:1rem;opacity:.5}.notes-empty p{margin:.5rem 0}.note-empty-subtitle{font-size:.9rem;color:#999}.add-note-section{margin-top:1.5rem}.add-note-section h3{margin-bottom:1rem}.add-note-section textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:1rem;resize:vertical;min-height:100px}.add-note-section textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.add-note-section textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.notes-loading{text-align:center;padding:3rem 1rem}.spinner-small{display:inline-block;width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #007bff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.notes-header{padding:1rem}.note-header{flex-direction:column;align-items:flex-start;gap:.5rem}.note-actions{width:100%;justify-content:space-between}}.btn-group{display:flex;flex-direction:row;margin-bottom:20px}.btn-group button{margin-right:20px}.help-text{margin:5px 0;font-size:.85rem;color:var(--color-text-light)}.summary-breakdown{margin-top:16px;padding-top:16px;border-top:1px solid #e0e0e0}.breakdown-line{display:flex;align-items:flex-start;padding:8px 0;position:relative}.breakdown-label{color:#666;font-size:.95em;white-space:nowrap;padding-right:8px}.breakdown-dots{flex-grow:1;border-bottom:1px dotted #ccc;margin:0 8px;position:relative;top:18px}.breakdown-amount{color:#666;font-size:.95em;white-space:nowrap;padding-left:8px;font-weight:500}.parts-and-labor{padding-left:10px}.breakdown-service-name{font-weight:semi-bold}.date-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:25px}.date-option{position:relative;background:#fff;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:18px 15px;cursor:pointer;transition:all var(--transition-fast);text-align:center;min-height:70px;display:flex;align-items:center;justify-content:center}.date-option:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.date-option.selected{border-color:var(--color-primary);background:#e8f7fa;box-shadow:var(--shadow-md)}.date-option-content{font-size:var(--font-size-md);font-weight:600;color:var(--color-text);line-height:1.4}.date-option.selected .date-option-content{color:var(--color-primary-dark)}.time-window-section{animation:fadeIn .3s ease}.time-window-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.time-window-option{position:relative;background:#fff;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 15px;cursor:pointer;transition:all var(--transition-fast);text-align:center;min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.time-window-option:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.time-window-option.selected{border-color:var(--color-primary);background:#e8f7fa;box-shadow:var(--shadow-md)}.time-window-label{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text)}.time-window-time{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500}.time-window-option.selected .time-window-label,.time-window-option.selected .time-window-time{color:var(--color-primary-dark)}@media(max-width:600px){.date-selection-grid,.time-window-grid{grid-template-columns:1fr}}
