*{box-sizing:border-box;margin:0;padding:0}html{width:100%;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}#root{width:100%;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.header{background-color:#1a365d;justify-content:space-between;align-items:center;display:flex}.header-right{color:#fff;padding:10px;font-size:15px}.header-left{padding:10px}.modern-stepper{max-width:800px;margin:0 auto;padding:2rem 1rem 1rem}.stepper-progress-container{background-color:#e0e0e0;border-radius:3px;height:3px;margin-bottom:1.5rem;position:relative;overflow:hidden}.stepper-progress-bar{background:linear-gradient(90deg,#007bff 0%,#0056b3 100%);border-radius:3px;height:100%;transition:width .4s;position:absolute;top:0;left:0}.stepper-steps{justify-content:space-between;align-items:flex-start;display:flex;position:relative}.modern-step{text-align:center;flex-direction:column;flex:1;align-items:center;display:flex}.modern-step-indicator{margin-bottom:.5rem}.modern-step-circle{color:#6c757d;background-color:#e0e0e0;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.modern-step.active .modern-step-circle{color:#fff;background-color:#007bff;border-color:#007bff;transform:scale(1.1);box-shadow:0 0 0 4px #007bff26}.modern-step.completed .modern-step-circle{color:#fff;background-color:#28a745;border-color:#28a745}.modern-step-label{color:#6c757d;font-size:.875rem;font-weight:500;transition:color .3s}.modern-step.active .modern-step-label{color:#007bff;font-weight:600}.modern-step.completed .modern-step-label{color:#28a745}.stepper{justify-content:space-between;align-items:center;margin:30px;display:flex;position:relative}.step{flex-direction:column;align-items:center;display:flex;position:relative}.step-number{z-index:2;background-color:#ccc;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;margin-bottom:5px;display:flex}.step-name{font-size:14px}.active .step-number{color:#fff;background-color:#007bff}.complete .step-number{color:#fff;background-color:#28a745}.progress-bar{background-color:#ccc;height:2px;position:absolute;top:6.8em;left:0}.progress{background-color:#28a745;height:100%;transition:all .2s}body{background-color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.banner{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;justify-content:center;align-items:center;padding:1rem;display:flex}.banner-brand{color:#333;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.banner-logo{width:auto;height:50px;margin-right:1rem}.navbar{background-color:#1a365d;justify-content:space-between;align-items:center;padding:1rem;display:flex}.navbar-links{gap:2rem;display:flex}.navbar a{font-weight:500;text-decoration:none;color:#fff!important}.navbar a:hover{color:#ccc!important}.navbar-right{gap:1rem;display:flex}.navbar-logo,.navbar-brand{display:none}.btn-primary{color:#fff;cursor:pointer;background-color:#007bff;border:none;border-radius:4px;padding:.5rem 1rem}.btn-primary:hover{background-color:#0056b3}.btn-login{color:#fff;cursor:pointer;background-color:#28a745;border:none;border-radius:4px;padding:.5rem 1rem;font-weight:500;text-decoration:none}.btn-login:hover{background-color:#218838;color:#fff!important}.btn-logout{color:#fff;cursor:pointer;background-color:#dc3545;border:none;border-radius:4px;padding:.5rem 1rem;font-weight:500;text-decoration:none}.btn-logout:hover{background-color:#c82333;color:#fff!important}.btn-secondary{color:#fff;cursor:pointer;background-color:#6c757d;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .3s}.btn-secondary:hover{background-color:#545b62}.btn-signup{color:#fff;cursor:pointer;background-color:#6c757d;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none}.btn-signup:hover{background-color:#545b62;text-decoration:none}.btn-edit{color:#007bff;cursor:pointer;background-color:#0000;border:1px solid #007bff;border-radius:4px;padding:.25rem .75rem;font-size:.875rem;text-decoration:none;transition:all .3s}.btn-edit:hover{color:#fff;background-color:#007bff}.form-group{text-align:left;margin-bottom:1rem}.form-group label{color:#333;margin-bottom:.5rem;font-weight:500;display:block}.form-group input{box-sizing:border-box;border:1px solid #ccc;border-radius:4px;width:100%;padding:.75rem;font-size:1rem}.form-group input:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 2px #007bff40}.form-actions{justify-content:space-between;gap:1rem;display:flex}.login-container{flex-direction:column;align-items:center;gap:2rem;padding:3rem 1rem;display:flex;position:relative}.login-box{text-align:center;background-color:#f5f5f5;border:2px solid #dee2e6;border-radius:8px;width:100%;max-width:400px;padding:2rem}.login-box h2{color:#333;margin-bottom:1.5rem}.signup-step{transition:opacity .3s}.verification-options{gap:1rem;margin-bottom:1rem;display:flex}.verification-choice{align-items:center;gap:.5rem;display:flex}.verification-choice input[type=radio]{width:auto;margin:0}.verification-choice label{cursor:pointer;margin:0;font-weight:400}.message{border-radius:4px;margin-bottom:1rem;padding:1rem;font-weight:500}.message.success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.message.error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.highlight-box{text-align:center;background-color:#f5f5f5;border-left:5px solid #e60000;padding:2rem}.info-box{text-align:center;background-color:#e9f4ff;border:1px solid #bee5eb;border-radius:8px;width:100%;max-width:400px;padding:1.5rem}.info-box h3{color:#333;margin-bottom:1rem;font-size:1.1rem}.info-box p{color:#666;margin-bottom:1rem;font-size:.9rem}.admin-report-link{color:#6c757d;font-size:.85rem;text-decoration:none;transition:color .2s;position:absolute;bottom:1.5rem;right:1.5rem}.admin-report-link:hover{color:#007bff;text-decoration:underline}.admin-console-wrapper{background-color:#fff;min-height:100vh;display:flex;position:relative}.sidebar-toggle-btn{cursor:pointer;color:#fff;background-color:#0000;border:2px solid #fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s;display:flex}.sidebar-toggle-btn:hover{background-color:#ffffff26}.admin-sidebar{background-color:#f0f0f0;border-right:1px solid #dee2e6;flex-shrink:0;width:250px;transition:width .3s,opacity .3s;overflow:hidden}.admin-sidebar.collapsed{opacity:0;border-right:none;width:0;padding:0}.admin-nav{padding:1rem 0}.admin-nav-item{cursor:pointer;color:#333;text-align:left;background:0 0;border:none;border-left:4px solid #0000;align-items:center;gap:.75rem;width:100%;padding:1rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.admin-nav-item svg{color:#6c757d;flex-shrink:0}.admin-nav-item:hover{background-color:#e9ecef}.admin-nav-item.active{color:#6a0dad;background-color:#e6e6fa;border-left-color:#6a0dad}.admin-nav-item.active svg{color:#6a0dad}.admin-main-content{flex-direction:column;flex:1;display:flex;overflow-x:auto}.admin-header{color:#fff;background-color:#6a0dad;align-items:center;gap:1rem;padding:1.25rem 2rem;display:flex;box-shadow:0 2px 4px #0000001a}.admin-header h1{margin:0;font-size:1.5rem;font-weight:600}.admin-tabs{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.admin-tabs-nav{gap:0;display:flex}.admin-tab{cursor:pointer;color:#6c757d;background:0 0;border:none;border-bottom:3px solid #0000;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s}.admin-tab:hover{color:#333}.admin-tab.active{color:#6a0dad;border-bottom-color:#6a0dad}.admin-total-count{color:#333;font-size:.95rem}.admin-search-bar{background-color:#fff;border-bottom:1px solid #dee2e6;align-items:center;gap:.75rem;padding:1rem 2rem;display:flex;position:relative}.admin-search-bar svg{color:#6c757d;flex-shrink:0}.admin-search-bar input{border:1px solid #dee2e6;border-radius:6px;outline:none;flex:1;padding:.6rem 2.5rem .6rem 1rem;font-size:.95rem;transition:border-color .2s}.admin-search-bar input:focus{border-color:#6a0dad;box-shadow:0 0 0 3px #6a0dad1a}.admin-search-bar input::placeholder{color:#adb5bd}.admin-search-bar .clear-search{cursor:pointer;color:#6c757d;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;transition:color .2s;display:flex;position:absolute;right:2.5rem}.admin-search-bar .clear-search:hover{color:#333}.admin-location-filter{background-color:#fff;border-bottom:1px solid #dee2e6;align-items:center;gap:.75rem;padding:1rem 2rem;display:flex}.admin-location-filter svg{color:#6a0dad;flex-shrink:0}.admin-location-filter label{color:#333;margin:0;font-size:.95rem;font-weight:500}.admin-location-filter .location-dropdown{cursor:pointer;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;outline:none;flex:1;max-width:300px;padding:.6rem 1rem;font-size:.95rem;transition:border-color .2s}.admin-location-filter .location-dropdown:focus{border-color:#6a0dad;box-shadow:0 0 0 3px #6a0dad1a}.admin-location-filter .location-dropdown:hover{border-color:#6a0dad}.admin-total-count strong{color:#6a0dad;font-weight:600}.admin-content-area{flex:1;padding:2rem;overflow-x:auto}.admin-console-loading{color:#6c757d;justify-content:center;align-items:center;min-height:100vh;font-size:1.1rem;display:flex}.admin-error-message{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;display:flex}.admin-error-message svg{color:#721c24;flex-shrink:0}.admin-empty-state{text-align:center;color:#6c757d;padding:3rem 2rem}.admin-empty-state svg{color:#adb5bd;margin-bottom:1rem}.admin-empty-state p{margin:0;font-size:1rem}.admin-appointments-table-wrapper{width:100%;position:relative;overflow-x:auto}.admin-appointments-table{min-width:100%}.admin-schedule-table{border-collapse:collapse;background-color:#fff;border:2px solid #dee2e6;width:100%;min-width:1200px}.admin-schedule-table thead{background-color:#f8f9fa}.admin-schedule-table th{text-align:left;color:#333;border:1px solid #dee2e6;padding:1rem;font-size:.95rem;font-weight:600}.admin-schedule-table tbody tr.row-even{background-color:#fff}.admin-schedule-table tbody tr.row-odd{background-color:#f8f9fa}.admin-schedule-table td{vertical-align:middle;border:1px solid #dee2e6;padding:1rem}.time-slot-cell{vertical-align:middle;width:200px}.time-slot-box{color:#6a0dad;text-align:center;background-color:#e6e6fa;border:2px solid #6a0dad;border-radius:6px;padding:.75rem 1rem;font-size:.9rem;font-weight:600}.client-list-cell,.location-cell,.gluten-cell,.datetime-cell,.created-cell,.status-cell{min-width:150px}.status-cell{width:120px;min-width:100px}.status-badge{text-align:center;border-radius:20px;padding:.375rem .75rem;font-size:.85rem;font-weight:600;display:inline-block}.status-badge.active{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.status-badge.cancelled{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.client-names-list{flex-direction:column;gap:.5rem;display:flex}.client-name-item{background-color:#fff;border-left:3px solid #6a0dad;align-items:center;min-height:38px;padding:.5rem;font-size:.9rem;display:flex}.client-name-item.location-item{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.admin-placeholder{text-align:center;padding:3rem 2rem}.admin-placeholder h2{color:#333;margin-bottom:1rem}.admin-placeholder p{color:#6c757d;font-size:1rem}.admin-reports-section{padding:2rem}.reports-header{border-bottom:2px solid #dee2e6;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.reports-title-section{flex-direction:column;gap:.5rem;display:flex}.reports-header h2{color:#333;margin:0;font-size:1.5rem}.date-filter-indicator{color:#6c757d;margin:0;font-size:.9rem}.date-filter-indicator strong{color:#6a0dad;font-weight:600}.export-buttons{gap:1rem;display:flex}.export-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.export-btn svg{flex-shrink:0}.csv-btn{color:#fff;background-color:#50c878}.csv-btn:hover{background-color:#45b069;transform:translateY(-2px);box-shadow:0 4px 8px #50c8784d}.pdf-btn{color:#fff;background-color:#e74c3c}.pdf-btn:hover{background-color:#c0392b;transform:translateY(-2px);box-shadow:0 4px 8px #e74c3c4d}.reports-content{flex-direction:column;gap:2rem;display:flex}.charts-container{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.chart-card{background-color:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 8px #0000001a}.chart-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #6a0dad26}.donut-chart{margin-bottom:1rem}.chart-info{text-align:center;width:100%}.location-indicator{border-radius:2px;width:40px;height:4px;margin:0 auto .75rem}.chart-info h3{color:#333;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.chart-info p{color:#6c757d;margin:0;font-size:.9rem}.reports-summary-table{background-color:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.reports-summary-table h3{color:#333;margin:0 0 1.5rem;font-size:1.2rem;font-weight:600}.reports-summary-table table{border-collapse:collapse;width:100%}.reports-summary-table thead{background-color:#f8f9fa}.reports-summary-table th{text-align:left;color:#333;border-bottom:2px solid #dee2e6;padding:1rem;font-size:.95rem;font-weight:600}.reports-summary-table td{border-bottom:1px solid #dee2e6;padding:1rem;font-size:.95rem}.location-name{align-items:center;gap:.75rem;display:flex}.color-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.count-cell,.percentage-cell{text-align:center;font-weight:500}.total-row{background-color:#f8f9fa;font-weight:600}.total-row td{border-bottom:none;padding-top:1.5rem}.admin-edit-section{padding:2rem}.edit-header{border-bottom:2px solid #dee2e6;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.edit-header h2{color:#333;margin:0;font-size:1.5rem}.create-new-btn{color:#fff;cursor:pointer;background-color:#6a0dad;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.create-new-btn:hover{background-color:#5a0c9d;transform:translateY(-2px);box-shadow:0 4px 8px #6a0dad4d}.admin-search-bar.edit-search{margin-bottom:1.5rem}.edit-content{grid-template-columns:350px 1fr;gap:2rem;min-height:600px;display:grid}.appointments-list-panel{background-color:#fff;border-radius:12px;padding:1.5rem;overflow:hidden;box-shadow:0 2px 8px #0000001a}.appointments-list-panel h3{color:#333;margin:0 0 1rem;font-size:1.1rem;font-weight:600}.appointments-list{flex-direction:column;gap:.75rem;max-height:700px;display:flex;overflow-y:auto}.appointment-item{cursor:pointer;background-color:#f8f9fa;border:2px solid #0000;border-radius:8px;padding:1rem;transition:all .2s}.appointment-item:hover{background-color:#e9ecef;border-color:#6a0dad}.appointment-item.selected{background-color:#e6e6fa;border-color:#6a0dad}.appointment-item.cancelled-apt{opacity:.6;background-color:#f8d7da}.apt-item-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.apt-item-header strong{color:#333;font-size:.95rem}.cancelled-tag{color:#fff;background-color:#dc3545;border-radius:12px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.apt-item-details p{color:#6c757d;margin:.25rem 0;font-size:.85rem}.apt-location{font-weight:500;color:#6a0dad!important}.empty-message,.select-message{text-align:center;color:#6c757d;padding:2rem;font-size:.95rem}.edit-form-panel{background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.edit-form-panel h3{color:#333;margin:0 0 1.5rem;font-size:1.2rem;font-weight:600}.edit-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#333;font-size:.95rem;font-weight:600}.form-group input{border:1px solid #dee2e6;border-radius:6px;outline:none;padding:.75rem;font-size:.95rem;transition:border-color .2s}.form-group input:focus{border-color:#6a0dad;box-shadow:0 0 0 3px #6a0dad1a}.form-group input:disabled{cursor:not-allowed;background-color:#e9ecef}.form-group select,.form-select{cursor:pointer;appearance:auto;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;outline:none;padding:.75rem;font-size:.95rem;transition:border-color .2s}.form-group select:focus,.form-select:focus{border-color:#6a0dad;box-shadow:0 0 0 3px #6a0dad1a}.form-date-picker{cursor:pointer;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;outline:none;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .2s}.form-date-picker:focus{border-color:#6a0dad;box-shadow:0 0 0 3px #6a0dad1a}.form-help{color:#6c757d;margin:0;font-size:.85rem;font-style:italic}.form-help.form-warning{color:#dc3545;font-style:normal}.form-actions{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.save-btn,.cancel-toggle-btn,.delete-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.save-btn{color:#fff;background-color:#28a745}.save-btn:hover{background-color:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.cancel-toggle-btn.cancel{color:#333;background-color:#ffc107}.cancel-toggle-btn.cancel:hover{background-color:#e0a800;transform:translateY(-2px);box-shadow:0 4px 8px #ffc1074d}.cancel-toggle-btn.restore{color:#fff;background-color:#17a2b8}.cancel-toggle-btn.restore:hover{background-color:#138496;transform:translateY(-2px);box-shadow:0 4px 8px #17a2b84d}.delete-btn{color:#fff;background-color:#dc3545}.delete-btn:hover{background-color:#c82333;transform:translateY(-2px);box-shadow:0 4px 8px #dc35454d}.appointment-info-box{background-color:#f8f9fa;border-left:4px solid #6a0dad;border-radius:6px;margin-top:1.5rem;padding:1rem}.appointment-info-box h4{color:#333;margin:0 0 1rem;font-size:1rem}.appointment-info-box p{color:#495057;margin:.5rem 0;font-size:.9rem}.text-cancelled{color:#dc3545;font-weight:600}.text-active{color:#28a745;font-weight:600}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:12px;width:90%;max-width:500px;padding:2rem;box-shadow:0 4px 20px #0003}.modal-content h3{color:#333;margin:0 0 1rem;font-size:1.3rem}.modal-content p{color:#495057;margin:.5rem 0;font-size:.95rem}.warning-text{color:#dc3545;font-weight:600}.modal-actions{gap:1rem;margin-top:1.5rem;display:flex}.cancel-modal-btn,.confirm-delete-btn{cursor:pointer;border:none;border-radius:6px;flex:1;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s}.cancel-modal-btn{color:#fff;background-color:#6c757d}.cancel-modal-btn:hover{background-color:#5a6268}.confirm-delete-btn{color:#fff;background-color:#dc3545}.confirm-delete-btn:hover{background-color:#c82333}@media print{.admin-sidebar,.admin-header,.admin-tabs,.admin-search-bar,.admin-location-filter,.export-buttons{display:none!important}.admin-console-wrapper{display:block}.admin-main-content{width:100%;margin-left:0}.admin-reports-section{padding:1rem}.chart-card{break-inside:avoid;page-break-inside:avoid}}.pickup-container{max-width:800px;margin:0 auto;padding:2rem}.progress-bar{justify-content:space-between;margin-bottom:3rem;padding:0 1rem;display:flex}.progress-step{text-align:center;flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.progress-step:not(:last-child):after{content:"";z-index:-1;background-color:#dee2e6;width:80%;height:2px;position:absolute;top:20px;left:60%}.progress-step.active:not(:last-child):after{background-color:#007bff}.step-number{color:#6c757d;background-color:#dee2e6;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.5rem;font-weight:700;display:flex}.progress-step.active .step-number{color:#fff;background-color:#007bff}.progress-step.completed .step-number{color:#fff;background-color:#28a745}.step-label{color:#6c757d;font-size:.875rem;font-weight:500}.progress-step.active .step-label{color:#007bff;font-weight:700}.progress-step.completed .step-label{color:#28a745}.pickup-content{text-align:center}.pickup-content h2{color:#333;margin-bottom:2rem}.location-selection{margin-bottom:2rem}.location-option{cursor:pointer;background-color:#f5f5f5;border:2px solid #dee2e6;border-radius:8px;margin-bottom:1rem;padding:1.5rem;transition:all .3s}.location-option:hover{background-color:#e9f4ff;border-color:#007bff}.location-option input[type=radio]{margin-right:1rem}.location-option label{cursor:pointer;color:#333;font-weight:500}.location-option.selected{background-color:#e9f4ff;border-color:#007bff}.time-selection-container{grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;display:grid}.description-column{background-color:#f8f9fa;border-radius:8px;padding:1.5rem}.calendar-timeslots-column{flex-direction:column;gap:2rem;display:flex}.calendar-column,.timeslots-column{background-color:#f8f9fa;border-radius:8px;padding:1.5rem}.description-column h3,.calendar-column h3,.timeslots-column h3{color:#333;border-bottom:2px solid #007bff;margin-bottom:1rem;padding-bottom:.5rem}.info-section,.selected-info{background-color:#e9f4ff;border-radius:4px;margin-top:1.5rem;padding:1rem}.info-section h4,.selected-info h4{color:#007bff;margin-bottom:.5rem}.info-section ul{margin:0;padding-left:1.2rem}.info-section li{color:#666;margin-bottom:.5rem}.calendar-container{background-color:#fff;border-radius:8px;padding:1rem;box-shadow:0 2px 4px #0000001a}.calendar-nav{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;padding:.5rem .75rem}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.calendar-day{text-align:center;cursor:pointer;border:1px solid #dee2e6;border-radius:4px;padding:.75rem;transition:all .3s}.calendar-day:hover{background-color:#e9f4ff}.calendar-day.selected{color:#fff;background-color:#007bff}.calendar-day.header{cursor:default;background-color:#f8f9fa;font-weight:700}.date-display{color:#fff;text-align:center;background-color:#007bff;border-radius:4px;margin-bottom:1rem;padding:.75rem}.time-sections{margin-bottom:2rem}.time-section{margin-bottom:1.5rem}.time-section h4{color:#007bff;border-bottom:1px solid #dee2e6;margin-bottom:.75rem;padding-bottom:.25rem}.time-section .collapsible-header{color:#007bff;cursor:pointer;border-bottom:1px solid #dee2e6;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.5rem .25rem;transition:background-color .3s;display:flex}.time-section .collapsible-header:hover{background-color:#f8f9fa}.collapse-icon{font-size:1.2rem;font-weight:700;transition:transform .3s}.collapsible-content{max-height:1000px;transition:max-height .3s;overflow:hidden}.collapsible-content.collapsed{max-height:0}.time-slots{grid-template-columns:1fr;gap:.5rem;display:grid}.time-slot{cursor:pointer;text-align:center;background-color:#fff;border:2px solid #dee2e6;border-radius:4px;padding:.75rem;transition:all .3s}.time-slot:hover{background-color:#e9f4ff;border-color:#007bff}#confirmTimeBtn:disabled{cursor:not-allowed;background-color:#6c757d}.confirmation-container{max-width:600px;margin:0 auto}.confirmation-content{background-color:#f8f9fa;border-radius:8px;padding:2rem}.confirmation-content h2{text-align:center;color:#333;margin-bottom:.5rem}.confirmation-subtitle{text-align:center;color:#666;margin-bottom:2rem;font-size:1rem}.appointment-details{background-color:#fff;border-radius:8px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.detail-section{border-bottom:1px solid #dee2e6;margin-bottom:1.5rem;padding-bottom:1rem}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-section h3{color:#007bff;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:1.1rem;display:flex}.detail-value{color:#333;background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin-bottom:.5rem;padding:.5rem;font-size:1rem}.confirmation-notes{background-color:#e9f4ff;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.confirmation-notes h3{color:#007bff;margin-bottom:1rem}.confirmation-notes ul{margin:0;padding-left:1.2rem}.confirmation-notes li{color:#666;margin-bottom:.5rem}.modal{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content{text-align:center;background-color:#fff;border-radius:8px;width:90%;max-width:500px;padding:2rem;box-shadow:0 4px 6px #0000001a}.modal-header h2{color:#28a745;margin-bottom:1rem}.modal-body{margin-bottom:2rem}.confirmation-number{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;margin:1rem 0;padding:1rem}.modal-actions{justify-content:center;gap:1rem;display:flex}.language-switcher{margin-right:1rem}.language-switcher select{color:#333;cursor:pointer;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:.5rem;font-size:.875rem}.language-switcher select:hover{background-color:#e9ecef}.language-switcher select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 2px #007bff40}.scheduler-page-container{flex-direction:column;align-items:center;min-height:calc(100vh - 200px);padding:3rem 1rem;display:flex}.scheduler-card{background-color:#f5f5f5;border:2px solid #dee2e6;border-radius:8px;width:100%;max-width:600px;padding:2rem;box-shadow:0 2px 8px #0000001a}.scheduler-card-wide{max-width:800px}.scheduler-title{color:#333;text-align:center;margin-bottom:.5rem;font-size:1.75rem}.scheduler-subtitle{color:#666;text-align:center;margin-bottom:2rem;font-size:.95rem}.location-cards-grid{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.location-card{cursor:pointer;background-color:#fff;border:2px solid #dee2e6;border-radius:8px;align-items:flex-start;gap:1rem;padding:1.25rem;transition:all .3s;display:flex;position:relative}.location-card:hover{border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #007bff26}.location-card.selected{background-color:#e9f4ff;border-color:#007bff;box-shadow:0 4px 12px #007bff33}.location-card-icon{color:#007bff;flex-shrink:0;margin-top:.25rem}.location-card-content{flex:1}.location-card-title{color:#333;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.location-card-address{color:#666;margin:0;font-size:.95rem;line-height:1.5}.location-card-check{color:#28a745;position:absolute;top:1rem;right:1rem}.scheduler-next-btn{width:100%;margin-top:1rem;padding:.75rem 1.5rem;font-size:1rem}.selected-location-banner{background-color:#e9f4ff;border:1px solid #b8daff;border-radius:6px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;display:flex}.selected-location-content{flex:1;align-items:flex-start;gap:.75rem;display:flex}.selected-location-content svg{color:#007bff;flex-shrink:0;margin-top:.25rem}.selected-location-content strong{color:#333}.location-address-small{color:#666;font-size:.875rem}.scheduler-section{margin-top:2rem}.scheduler-section:first-child{margin-top:0}.scheduler-section-title{color:#333;border-bottom:2px solid #007bff;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.25rem}.calendar-container{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1.25rem}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.calendar-month-display{color:#333;font-size:1.1rem;font-weight:600}.calendar-nav{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .3s;display:flex}.calendar-nav:hover{background:#0056b3}.calendar-nav svg{width:20px;height:20px}.calendar-day{text-align:center;cursor:pointer;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;padding:.75rem;font-weight:500;transition:all .3s}.calendar-day:hover:not(.disabled):not(.header){background-color:#e9f4ff;border-color:#007bff}.calendar-day.selected{color:#fff;background-color:#007bff;border-color:#007bff}.calendar-day.disabled{color:#adb5bd;cursor:not-allowed;background-color:#f8f9fa}.calendar-day.header{cursor:default;background-color:#f8f9fa;border:none;font-weight:700}.selected-date-badge{color:#fff;background-color:#007bff;border-radius:6px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-weight:500;display:inline-flex}.selected-date-badge svg{flex-shrink:0}.no-date-message{color:#856404;text-align:center;background-color:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-bottom:1rem;padding:1rem}.time-slots-grid{flex-direction:column;gap:1.5rem;display:flex}.time-section-modern{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.time-section-header{cursor:pointer;color:#007bff;background-color:#f8f9fa;justify-content:space-between;align-items:center;margin:0;padding:.875rem 1rem;font-size:1rem;font-weight:600;transition:background-color .3s;display:flex}.time-section-header:hover{background-color:#e9ecef}.time-slots-container{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;max-height:400px;padding:1rem;transition:max-height .3s,padding .3s;display:grid;overflow:hidden}.time-slots-container.collapsed{max-height:0;padding:0 1rem}.time-slot{text-align:center;cursor:pointer;background-color:#f8f9fa;border:2px solid #dee2e6;border-radius:6px;padding:.75rem;font-size:.9rem;font-weight:500;transition:all .3s}.time-slot:hover:not(.unavailable){background-color:#e9f4ff;border-color:#007bff;transform:translateY(-2px);box-shadow:0 2px 8px #007bff26}.time-slot.selected{color:#fff;background-color:#007bff;border-color:#007bff}.time-slot.unavailable{color:#6c757d;cursor:not-allowed;opacity:.6;background-color:#e9ecef}.info-cards-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.info-card{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;align-items:flex-start;gap:1rem;padding:1.25rem;transition:all .3s;display:flex}.info-card:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.info-card-icon{color:#007bff;background-color:#e9f4ff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.info-card-content{flex:1}.info-card-content h4{color:#333;margin:0 0 .75rem;font-size:.95rem;font-weight:600}.info-card-content ul{color:#666;margin:0;padding-left:1.25rem}.info-card-content li{margin-bottom:.5rem;font-size:.875rem;line-height:1.5}.time-period-section{margin-bottom:2rem}.time-period-header{color:#007bff;border-bottom:2px solid #e0e0e0;align-items:center;gap:.5rem;margin:0 0 1rem;padding-bottom:.5rem;font-size:1rem;font-weight:600;display:flex}.time-period-header svg{flex-shrink:0}.time-slots-grid-layout{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;display:grid}.time-slots-grid-layout .time-slot{text-align:center;cursor:pointer;background-color:#fff;border:2px solid #dee2e6;border-radius:8px;padding:.875rem .75rem;font-size:.9rem;font-weight:500;transition:all .3s;box-shadow:0 1px 3px #0000000d}.time-slots-grid-layout .time-slot:hover:not(.unavailable){background-color:#e9f4ff;border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #007bff33}.time-slots-grid-layout .time-slot.selected{color:#fff;background-color:#007bff;border-color:#007bff;box-shadow:0 4px 12px #007bff4d}.time-slots-grid-layout .time-slot.unavailable{color:#adb5bd;cursor:not-allowed;opacity:.5;box-shadow:none;background-color:#f8f9fa}.btn-outline-secondary{color:#6c757d;cursor:pointer;background-color:#0000;border:2px solid #6c757d;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;transform:translateY(-1px);box-shadow:0 2px 8px #6c757d33}.btn-confirm{background:linear-gradient(135deg,#007bff 0%,#0056b3 100%);box-shadow:0 2px 8px #007bff4d}.btn-confirm:hover{background:linear-gradient(135deg,#0056b3 0%,#004085 100%);transform:translateY(-1px);box-shadow:0 4px 12px #007bff66}.confirmation-details{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.confirmation-detail-card{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.confirmation-icon{color:#007bff;flex-shrink:0}.confirmation-detail-content{flex:1}.confirmation-detail-label{color:#007bff;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .5rem;font-size:.875rem;font-weight:600}.confirmation-detail-value{color:#333;margin:0;line-height:1.6}.confirmation-notes{background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:2rem;padding:1.25rem}.confirmation-notes h3{color:#856404;margin:0 0 .75rem;font-size:1rem}.confirmation-notes ul{color:#856404;margin:0;padding-left:1.5rem}.confirmation-notes li{margin-bottom:.5rem}.confirmation-actions{justify-content:space-between;gap:1rem;display:flex}.confirmation-actions .btn-secondary,.confirmation-actions .btn-primary{flex:1;padding:.75rem 1.5rem}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{text-align:center;background-color:#fff;border-radius:12px;width:100%;max-width:500px;padding:2.5rem;box-shadow:0 10px 40px #0003}.modal-success-icon{color:#28a745;justify-content:center;margin-bottom:1.5rem;display:flex}.modal-card h2{color:#333;margin-bottom:1rem}.modal-message{color:#666;margin-bottom:1.5rem;font-size:1rem}.confirmation-number-display{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:8px;margin-bottom:1rem;padding:1.25rem}.confirmation-number-display strong{color:#155724;margin-bottom:.5rem;font-size:.875rem;display:block}.confirmation-number-value{color:#155724;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700}.modal-note{color:#666;margin-bottom:1.5rem;font-size:.9rem}.modal-btn{width:100%;padding:.875rem 1.5rem;font-size:1.05rem}@media (width<=768px){.modern-stepper{padding:1rem .5rem .75rem}.modern-step-circle{width:32px;height:32px;font-size:.85rem}.modern-step-label{font-size:.75rem}.modern-step.active .modern-step-circle{transform:scale(1.05)}.scheduler-page-container{padding:1rem .5rem}.scheduler-card{border-radius:6px;padding:1.5rem}.scheduler-title{font-size:1.5rem}.info-cards-grid{grid-template-columns:1fr;gap:.75rem;margin-bottom:1.5rem}.info-card{padding:1rem}.info-card-icon{width:36px;height:36px}.info-card-icon svg{width:18px;height:18px}.info-card-content h4{font-size:.9rem}.info-card-content li{font-size:.8rem}.location-card{padding:1rem}.location-card-title{font-size:1rem}.location-card-address{font-size:.875rem}.selected-location-banner{flex-direction:column;align-items:flex-start;gap:.75rem}.selected-location-banner .btn-edit{text-align:center;align-self:stretch}.calendar-container{padding:1rem}.calendar-grid{gap:.25rem}.calendar-day{padding:.5rem;font-size:.875rem}.time-slots-grid-layout{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.time-slots-grid-layout .time-slot{padding:.75rem .5rem;font-size:.85rem}.time-period-section{margin-bottom:1.5rem}.time-period-header{font-size:.95rem}.time-period-header svg{width:16px;height:16px}.time-slots-container{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.time-slot{padding:.625rem;font-size:.85rem}.confirmation-detail-card{padding:1rem}.confirmation-actions{flex-direction:column;gap:.75rem}.confirmation-actions .btn-secondary,.confirmation-actions .btn-primary,.confirmation-actions .btn-outline-secondary{width:100%}.admin-console-wrapper{flex-direction:column}.admin-sidebar{border-bottom:1px solid #dee2e6;border-right:none;width:100%}.admin-nav{padding:0;display:flex;overflow-x:auto}.admin-nav-item{text-align:center;flex-direction:column;gap:.25rem;min-width:100px;padding:.75rem 1rem;font-size:.85rem}.admin-nav-item svg{width:18px;height:18px}.admin-header h1{font-size:1.25rem}.admin-tabs{flex-direction:column;gap:1rem;padding:1rem}.admin-tabs-nav{width:100%;overflow-x:auto}.admin-tab{white-space:nowrap;padding:.625rem 1rem;font-size:.875rem}.admin-content-area{padding:1rem}.admin-schedule-table{font-size:.85rem}.admin-schedule-table th,.admin-schedule-table td{padding:.75rem .5rem}.time-slot-cell{width:150px}.time-slot-box{padding:.5rem .75rem;font-size:.85rem}.client-name-item{padding:.375rem;font-size:.85rem}.datetime-content .date{font-size:.85rem}.datetime-content .time{font-size:.75rem}.modal-card{padding:2rem 1.5rem}.time-selection-container{grid-template-columns:1fr;gap:1rem}.modal-actions{flex-direction:column}.confirmation-container,.pickup-container{padding:1rem}.progress-bar{padding:0 .5rem}.progress-step{font-size:.75rem}.step-number{width:30px;height:30px;font-size:.875rem}.form-group input{padding:1rem;font-size:1rem}.navbar{flex-direction:column;gap:1rem;padding:.75rem}.navbar-links{gap:1rem}.navbar-right{justify-content:center}.reports-header{flex-direction:column;align-items:flex-start;gap:1rem}.reports-title-section{width:100%}.export-buttons{flex-direction:column;width:100%}.export-btn{justify-content:center;width:100%}.charts-container{grid-template-columns:1fr}.chart-card{padding:1rem}.donut-chart svg{width:180px;height:180px}.reports-summary-table{overflow-x:auto}.edit-content{grid-template-columns:1fr;gap:1rem}.appointments-list{max-height:400px}.form-actions{flex-direction:column}.form-actions button{justify-content:center;width:100%}.modal-content{width:95%;padding:1.5rem}}@media (width<=480px){.modern-stepper{padding:.75rem .25rem .5rem}.stepper-progress-container{height:2px;margin-bottom:1rem}.modern-step-circle{width:28px;height:28px;font-size:.75rem}.modern-step.active .modern-step-circle{transform:scale(1);box-shadow:0 0 0 3px #007bff26}.modern-step-label{font-size:.7rem}.scheduler-page-container{padding:.75rem .25rem}.scheduler-card{padding:1.25rem}.scheduler-title{font-size:1.35rem}.scheduler-subtitle{font-size:.875rem}.info-card{gap:.75rem;padding:.875rem}.info-card-icon{width:32px;height:32px}.info-card-icon svg{width:16px;height:16px}.info-card-content h4{font-size:.85rem}.info-card-content li{font-size:.75rem}.location-card{gap:.75rem;padding:.875rem}.location-card-icon svg{width:20px;height:20px}.calendar-container{padding:.75rem}.calendar-month-display{font-size:1rem}.calendar-nav{width:32px;height:32px}.calendar-day{padding:.375rem;font-size:.8rem}.time-slots-grid-layout{grid-template-columns:1fr 1fr;gap:.5rem}.time-slots-grid-layout .time-slot{padding:.625rem .5rem;font-size:.8rem}.time-period-header{margin-bottom:.75rem;font-size:.9rem}.time-period-header svg{width:14px;height:14px}.time-slot{padding:.5rem;font-size:.8rem}.confirmation-detail-card{gap:.75rem;padding:.875rem}.confirmation-icon svg{width:20px;height:20px}.confirmation-detail-label{font-size:.8rem}.confirmation-detail-value{font-size:.9rem}.modal-card{padding:1.5rem 1rem}.modal-success-icon svg{width:48px;height:48px}.confirmation-number-value{font-size:1.25rem}.admin-nav-item{min-width:90px;padding:.625rem .75rem;font-size:.75rem}.admin-nav-item svg{width:16px;height:16px}.admin-header{padding:1rem 1.5rem}.admin-header h1{font-size:1.1rem}.admin-tab{padding:.5rem .75rem;font-size:.8rem}.admin-content-area{padding:.75rem}.admin-schedule-table{font-size:.8rem}.admin-schedule-table th,.admin-schedule-table td{padding:.625rem .375rem}.time-slot-cell{width:130px}.time-slot-box{padding:.5rem;font-size:.8rem}.client-name-item{padding:.3rem;font-size:.8rem}.admin-total-count{font-size:.875rem}.admin-empty-state{padding:2rem 1rem}.admin-empty-state svg{width:48px;height:48px}.pickup-container{padding:.5rem}.time-selection-container{gap:.75rem}.calendar-column,.timeslots-column,.description-column{padding:1rem}.progress-bar{text-align:center;flex-direction:column;gap:.5rem}.progress-step:not(:last-child):after{display:none}}
