body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.booking-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.booking-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow-y:auto;width:90%}.modal-header{padding:24px 24px 0}.modal-body{flex:1 1;overflow-y:auto;padding:0 24px 60px}.booking-form,.modal-body{display:flex;flex-direction:column}.booking-form{flex:1 1;gap:24px}.form-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.form-section h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 16px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group input,.form-group select,.form-group textarea{border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-row{grid-gap:16px;gap:16px}.amount-display{background:#f3f4f6;color:#059669;font-size:18px;font-weight:600;padding:10px 12px;text-align:center}.amount-display,.card-element-container{border:1px solid #d1d5db;border-radius:6px}.card-element-container{background:#fff;padding:12px;transition:border-color .2s,box-shadow .2s}.card-element-container:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.error-message{border-radius:6px;font-size:14px;padding:12px}.form-actions{background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;margin-top:20px;padding:24px 0}.btn-book,.btn-cancel,.btn-primary{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s}.btn-cancel{background:#f3f4f6}.btn-cancel:hover{background:#e5e7eb}.btn-book{background:#059669;color:#fff}.btn-book:hover:not(:disabled){background:#047857}.btn-book:disabled{background:#9ca3af;cursor:not-allowed}.btn-primary:hover{background:#2563eb}.loading-content{padding:40px 20px;text-align:center}.loading-icon{animation:pulse 2s infinite;font-size:48px;margin-bottom:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-content h3{color:#111827;font-size:20px;font-weight:600;margin:0 0 12px}.loading-content p{color:#6b7280;font-size:16px;margin:0}.success-content{padding:20px 0;text-align:center}.success-icon{font-size:48px;margin-bottom:16px}.success-content h3{color:#059669;font-size:24px;font-weight:600;margin:0 0 20px}.booking-summary{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin:20px 0;padding:16px;text-align:left}.booking-summary p{font-size:14px;margin:8px 0}.booking-summary strong{color:#374151}.success-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.success-actions .btn-primary,.success-actions .btn-secondary{flex:1 1;max-width:200px}.success-actions .btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.success-actions .btn-secondary:hover{background:#e5e7eb}.datetime-selector{grid-gap:24px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:24px;grid-template-columns:1fr 1fr;padding:16px}.date-selection,.time-selection{margin-bottom:0}.date-selection h4,.time-selection h4{color:#374151;font-size:16px;font-weight:600;margin:0 0 12px}.calendar-grid{grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));max-height:200px;overflow-y:auto}.calendar-day{border:1px solid #d1d5db;border-radius:6px;flex-direction:column;font-size:12px;min-height:50px;padding:8px 4px;transition:all .2s}.calendar-day:hover:not(:disabled){background:#f0f9ff;border-color:#3b82f6}.calendar-day.selected{background:#3b82f6;border-color:#3b82f6}.calendar-day.unavailable{background:#f3f4f6;border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.calendar-day.today{border-color:#059669;border-width:2px}.day-display{font-weight:500}.today-label{color:#059669;font-size:10px;font-weight:600;margin-top:2px}.calendar-day.selected .today-label{color:#bfdbfe}.time-slots-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));max-height:300px;overflow-y:auto}.time-slot{border:1px solid #d1d5db;font-size:14px;padding:10px 12px;transition:all .2s;white-space:nowrap}.time-slot:hover{background:#f0f9ff;border-color:#3b82f6}.time-slot.selected{background:#3b82f6;border-color:#3b82f6}.loading-slots,.no-slots{background:#f9fafb;border:1px dashed #d1d5db;border-radius:6px;color:#6b7280;font-style:italic;padding:20px;text-align:center}.loading-slots{color:#3b82f6}@media (max-width:768px){.datetime-selector{gap:16px;grid-template-columns:1fr}}@media (max-width:640px){.booking-modal{margin:16px;max-height:calc(100vh - 32px);width:calc(100% - 32px)}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.calendar-grid{grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}.time-slots-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.calendar-day{font-size:11px;min-height:40px}.time-slot{font-size:12px;padding:8px 6px}}.stripe-onboarding-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{height:90vh!important;max-width:none!important;min-width:50vw!important;width:50vw!important}.modal-header{margin-bottom:24px;padding:24px 48px 0}.modal-header h2{color:#111827;font-size:24px}.close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.close-btn:hover{background-color:#f3f4f6}.progress-bar{margin-bottom:24px;padding:0 48px 24px;position:relative}.steps{display:flex;justify-content:space-between;position:relative;z-index:1}.step{align-items:center;display:flex;flex:1 1;flex-direction:column;opacity:.5;transition:opacity .3s}.step.active,.step.completed{opacity:1}.step-number{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;margin-bottom:8px;transition:all .3s;width:32px}.step.active .step-number{background:#3b82f6;color:#fff}.step.completed .step-number{background:#10b981;color:#fff}.step-info{max-width:100px;text-align:center}.step-title{color:#374151;font-size:12px;font-weight:600;margin-bottom:2px}.step-description{color:#6b7280;font-size:10px}.progress-fill{background:linear-gradient(90deg,#10b981,#3b82f6);height:2px;left:40px;position:absolute;right:40px;top:16px;transition:width .3s ease;z-index:0}.modal-body{padding:0 48px}.step-content{max-width:none;width:100%}.step-content h3{color:#111827;font-size:20px;font-weight:600;margin:0 0 16px}.form-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr 1fr 1fr 1fr;margin-bottom:24px;width:100%}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:14px;margin-bottom:6px}.form-group input,.form-group select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group small{color:#6b7280;font-size:12px;margin-top:4px}.dob-inputs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 80px 80px}.modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;padding:24px 48px}.button-group{align-items:center;display:flex;gap:12px;justify-content:space-between}.btn-cancel,.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary{background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-cancel{background:#0000;border:1px solid #0000;color:#6b7280}.btn-cancel:hover{color:#374151}@media (max-width:640px){.modal-content{margin:16px;max-height:calc(100vh - 32px);width:calc(100% - 32px)}.form-grid{grid-template-columns:1fr}.steps{flex-direction:column;gap:12px}.step{flex-direction:row;justify-content:flex-start;text-align:left}.step-number{flex-shrink:0;margin-bottom:0;margin-right:12px}.step-info{max-width:none;text-align:left}.progress-fill{display:none}}.session-management{margin:0 auto;max-width:1400px;padding:2rem}.admin-header{margin-bottom:2rem}.admin-header h1{color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem}.admin-header p{color:#6b7280;font-size:1rem}.admin-controls{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem}.control-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.control-group label{color:#374151;font-size:.875rem;font-weight:500}.control-group input,.control-group select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.5rem .75rem}.control-group input[type=text]{min-width:300px}.sessions-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{box-shadow:0 1px 3px #0000001a}.stat-card h3{color:#6b7280;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.stat-card p{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.sessions-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.sessions-table{border-collapse:collapse;width:100%}.sessions-table thead th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.875rem;font-weight:600;padding:1rem;text-align:left}.sessions-table tbody td{border-bottom:1px solid #f3f4f6;color:#1f2937;font-size:.875rem;padding:1rem}.sessions-table tbody tr:hover{background:#f9fafb}.session-id{background:#f3f4f6;border-radius:4px;cursor:help;font-family:monospace;font-size:.75rem;padding:.25rem .5rem}.status-badge{border-radius:12px;color:#fff;display:inline-block;padding:.25rem .75rem;text-transform:capitalize}.action-buttons{gap:.5rem}.btn-view{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:.75rem;padding:.25rem .75rem;transition:all .2s}.btn-view:hover{background:#f3f4f6}.status-select{border:1px solid #d1d5db;border-radius:4px;font-size:.75rem;min-width:100px;padding:.25rem .5rem}.no-results{color:#6b7280;padding:3rem}.modal-content{border-radius:12px;box-shadow:0 10px 25px #0000001a;max-height:80vh;max-width:600px}.modal-header{border-bottom:1px solid #e5e7eb;padding:1.5rem}.modal-header h2{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.modal-close{color:#6b7280;height:30px;width:30px}.modal-close:hover{color:#374151}.modal-body{padding:1.5rem}.session-details-grid{grid-gap:1rem;display:grid}.detail-row{grid-gap:1rem;align-items:center;background:#f9fafb;border-radius:8px;display:grid;gap:1rem;grid-template-columns:1fr 2fr;padding:.75rem}.detail-row strong{color:#374151;font-weight:500}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.btn-delete{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.btn-delete:hover{background:#b91c1c}.btn-cancel{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.btn-cancel:hover{background:#f3f4f6}@media (max-width:768px){.session-management{padding:1rem}.admin-controls{flex-direction:column}.control-group input[type=text]{min-width:auto}.sessions-stats{grid-template-columns:repeat(2,1fr)}.sessions-table-container{overflow-x:auto}.sessions-table{min-width:800px}.modal-content{width:95%}.detail-row{gap:.5rem;grid-template-columns:1fr}}.provider-sessions{margin:0 auto;max-width:1200px;padding:2rem}.sessions-filters{background:#f9fafb;border-radius:8px;padding:1rem}.status-filter{border-radius:6px;font-size:14px;padding:.5rem .75rem}.session-card{box-shadow:0 1px 3px 0 #0000001a;padding:1.5rem;transition:box-shadow .2s}.session-card:hover{box-shadow:0 4px 6px -1px #0000001a}.session-info h3{color:#111827;font-size:20px}.session-status{border-radius:20px;font-size:12px;font-weight:500;padding:.25rem .75rem}.detail-notes,.detail-transfer{width:100%}.session-actions{align-items:center;justify-content:space-between;padding-top:1rem}.action-buttons{align-items:center;display:flex;gap:1rem}.status-info{font-size:14px}.scheduled-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:100%}.waiting-text{align-items:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;display:inline-flex;font-size:14px;font-weight:500;padding:.75rem 1rem;white-space:nowrap}.payment-text{color:#dc2626}.btn-confirm,.btn-end,.btn-start{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-confirm{align-items:center;background:#3b82f6;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:.75rem 1rem;white-space:nowrap}.btn-confirm:hover:not(:disabled){background:#2563eb}.btn-confirm:disabled{background:#9ca3af;opacity:.7}.btn-start{background:#059669;color:#fff}.btn-start:hover{background:#047857}.btn-video-call{background:#059669;border-radius:8px;font-size:14px;font-weight:500;min-width:-webkit-fit-content;min-width:fit-content;transition:all .2s;white-space:nowrap}.btn-video-call:hover{background:#047857}.no-sessions{background:#f9fafb;border-radius:12px;padding:3rem 1rem}.no-sessions-icon{font-size:48px;margin-bottom:1rem}.no-sessions h3{font-size:20px;margin:0 0 .5rem}.no-sessions p{font-size:16px;margin:0}.loading{font-size:18px;padding:3rem}.btn-view-details{display:inline-flex}@media (max-width:768px){.provider-sessions{padding:1rem}.session-details{grid-template-columns:1fr}.session-actions{align-items:stretch}.action-buttons,.session-actions{flex-direction:column;gap:.75rem}.btn-confirm,.btn-end,.btn-start,.btn-view-details{text-align:center}.session-details-layout{flex-direction:column}.session-status-area{align-items:flex-start;text-align:left}.session-header{flex-direction:column;gap:1rem}}.practitioner-sessions{margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.sessions-header{margin-bottom:2rem;text-align:center}.sessions-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem}.sessions-tagline{color:#6b7280;font-size:16px;margin:0;text-align:center}.sessions-filters{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.filter-group{align-items:center!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:1rem;justify-content:center}.filter-group label{display:inline-block!important;flex-shrink:0;font-size:.95rem;white-space:nowrap!important}.status-filter{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;font-size:.95rem;font-weight:500;min-width:180px;padding:.75rem 1rem;transition:all .2s ease}.status-filter:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.sessions-list{gap:1rem}.session-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;padding:2rem;position:relative;transition:all .2s ease}.session-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.session-card:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8);content:"";height:4px;left:0;position:absolute;right:0;top:0}.session-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.session-status-area{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem;text-align:right}.session-schedule{color:#111827;font-size:18px;font-weight:600}.session-info h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.session-status{border-radius:25px;box-shadow:0 2px 4px #0000001a;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.session-details{margin-bottom:1.5rem}.session-details-layout{display:flex;flex-direction:row;gap:1rem;width:100%}.details-column{display:flex;flex:1 1;flex-direction:column;gap:1rem}.detail-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex:1 1;flex-direction:row!important;padding:.75rem}.detail-notes,.detail-payment{width:100%}.detail-label{color:#374151;font-size:12px}.detail-value{color:#111827;font-size:14px;font-weight:500}.session-actions{border-top:2px solid #e5e7eb;display:flex;gap:1rem}.session-actions .action-buttons{align-items:center!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:1rem!important;justify-content:flex-start!important}.session-actions .action-buttons>*{display:inline-flex!important;width:auto!important}.status-info{font-size:.95rem;font-weight:500}.btn-cancel-session{align-items:center;box-sizing:border-box;display:inline-flex!important;justify-content:center;min-height:44px;white-space:nowrap;width:auto}.btn-cancel-session:hover:not(:disabled){background:#dc2626;color:#fff}.btn-cancel-session:disabled{opacity:.6}.status-info span{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#1e293b;display:inline-flex;font-weight:500;min-height:44px;padding:.75rem 1rem}.btn-complete-payment{align-self:flex-start;background:#059669;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-complete-payment:hover:not(:disabled){background:#047857}.btn-complete-payment:disabled{background:#9ca3af;cursor:not-allowed}.waiting-text{background:#fef3c7!important;border-color:#f59e0b!important;color:#92400e}.ready-text{background:#dbeafe!important;border-color:#3b82f6!important;color:#1e40af}.active-text{background:#d1fae5!important;border-color:#10b981!important;color:#065f46}.error-text{border-color:#ef4444!important;color:#991b1b;padding:.75rem 1.5rem}.active-text{background:#dcfce7!important;border-color:#86efac!important;color:#059669}.error-text{background:#fee2e2!important;border-color:#fca5a5!important;color:#dc2626}.completed-badge{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0369a1;display:inline-flex;font-size:14px;font-weight:500;gap:.5rem;padding:.5rem 1rem}.no-sessions{background:#fff;border:2px dashed #d1d5db;border-radius:16px;box-shadow:0 4px 6px #0000000d;padding:4rem 2rem}.no-sessions-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.6}.no-sessions h3{color:#374151;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.no-sessions p{font-size:1rem;line-height:1.6;margin:0 auto 2rem;max-width:400px}.loading{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000000d;color:#6b7280;font-size:1.125rem;padding:4rem;text-align:center}.btn-video-call{align-items:center;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:12px;box-shadow:0 4px 12px #0596694d;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex!important;font-weight:600;gap:1rem;min-height:44px;min-width:220px;overflow:hidden;padding:.75rem 1.5rem;position:relative;transition:all .3s ease;width:auto}.btn-video-call:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 8px 20px #05966966;transform:translateY(-2px)}.btn-video-call:active{transform:translateY(0)}.btn-video-call:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-video-call:hover:before{left:100%}.video-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:1.5rem}.video-text{align-items:flex-start;display:flex;flex-direction:column;text-align:left}.video-title{font-size:1rem;font-weight:700;line-height:1.2}.video-subtitle{font-size:.85rem;font-weight:400;line-height:1.2;opacity:.9}.video-call-container{background:#1f2937;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.cancelled-info{align-items:center;display:flex;flex-direction:row!important;gap:1rem}.cancelled-badge{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626}.cancelled-badge,.refund-info{align-items:center;display:inline-flex;font-size:14px;font-weight:500;gap:.5rem;padding:.5rem 1rem}.refund-info{background:#ecfdf5;border:1px solid #86efac;border-radius:8px;color:#059669}.btn-view-details{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;display:inline-flex!important;font-size:14px;font-weight:500;gap:.5rem;justify-content:center;min-height:44px;padding:.75rem 1.5rem;transition:all .2s;white-space:nowrap;width:auto}.btn-view-details:hover{background:#e5e7eb;border-color:#9ca3af;color:#1f2937}@media (max-width:768px){.practitioner-sessions{padding:1rem}.sessions-header h2{font-size:1.75rem}.sessions-filters{padding:1rem}.filter-group{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:.75rem;justify-content:center}.status-filter{min-width:auto}.session-card{padding:1.5rem}.session-header{align-items:flex-start}.session-details{grid-template-columns:1fr;padding:1rem}.session-actions{align-items:stretch;flex-direction:column}.action-buttons{align-items:stretch!important;flex-direction:column!important;gap:1rem!important}.btn-cancel-session,.btn-video-call,.btn-view-details{width:100%}.session-details-layout{flex-direction:column}.session-status-area{align-items:flex-start;text-align:left}.session-header{flex-direction:column;gap:1rem}.status-info span{text-align:center}.no-sessions{padding:3rem 1rem}.no-sessions h3{font-size:1.25rem}.btn-video-call{justify-content:center;min-width:auto;padding:1.25rem 1rem;width:100%}.video-text{align-items:center;text-align:center}.video-title{font-size:1.1rem}.video-subtitle{font-size:.9rem}}.sessions-filters .filter-group{align-items:center!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:1rem!important;justify-content:center!important}.sessions-filters .filter-group label{margin-bottom:0!important;white-space:nowrap!important}.sessions-filters .filter-group label,.sessions-filters .filter-group select{display:inline-block!important;flex-shrink:0!important}.session-detail-view{background:#fafafa;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.session-detail-header{margin-bottom:2rem}.back-button{margin-bottom:1rem}.session-detail-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin:0}.session-detail-content{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.session-info-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:2rem}.session-basic-info{border-bottom:1px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1.5rem}.session-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.session-title h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.session-status-badge{border-radius:25px;box-shadow:0 2px 4px #0000001a;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.session-amount{background:#ecfdf5;border:1px solid #86efac;border-radius:12px;color:#059669;font-size:2rem;font-weight:700;padding:1rem;text-align:center}.session-details-grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.detail-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;justify-content:space-between;padding:.75rem 0}.detail-item:last-child{border-bottom:none}.detail-item.notes{align-items:stretch;flex-direction:column}.detail-item.notes .value{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-top:.5rem;padding:.75rem}.detail-item .label{color:#6b7280;font-size:.9rem;font-weight:600;min-width:120px}.detail-item .value{color:#1f2937;flex:1 1;font-weight:500;text-align:right}.detail-item .value.refund{color:#059669;font-weight:600}.provider-info-section{margin-bottom:2rem}.provider-info-section h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.provider-card{background:#f8fafc;display:flex;gap:1rem;padding:1.5rem}.provider-avatar{border:2px solid #e2e8f0;flex-shrink:0;overflow:hidden}.provider-avatar .default-avatar{align-items:center;background:#3b82f6;color:#fff;display:flex;font-size:1.2rem;font-weight:600;height:100%;justify-content:center;width:100%}.provider-details h4{color:#1f2937;font-size:1.1rem;margin:0 0 .5rem}.provider-rate{color:#059669;font-size:1rem;font-weight:600;margin:0 0 .75rem}.provider-bio{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0}.session-actions{border-top:1px solid #e2e8f0;padding-top:1.5rem}.btn-cancel-session{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:.75rem 1.5rem;transition:all .2s;width:100%}.btn-cancel-session:hover:not(:disabled){background:#b91c1c}.btn-cancel-session:disabled{background:#9ca3af;cursor:not-allowed}.provider-actions{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;text-align:center}.action-note{color:#6b7280;font-size:.9rem;font-style:italic;margin:0}.messaging-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;display:flex;flex-direction:column;height:-webkit-fit-content;height:fit-content;max-height:800px}.messaging-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:16px 16px 0 0;padding:1.5rem 2rem}.messaging-header h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.messages-area{display:flex;flex:1 1;flex-direction:column;gap:1rem;max-height:500px;overflow-y:auto;padding:1.5rem 2rem}.no-messages{color:#6b7280}.no-messages p{margin:.5rem 0}.message{margin-bottom:1rem}.message.own-message{justify-content:flex-end}.message.other-message{justify-content:flex-start}.message-content{border:1px solid #e2e8f0;max-width:70%}.own-message .message-content{background:#3b82f6;border-color:#2563eb;color:#fff}.message-time{opacity:.7}.message-input-area{border-radius:0 0 16px 16px;padding:1.5rem 2rem}.message-input-container{gap:1rem}.message-input-container textarea{border:1px solid #d1d5db;font-size:14px;transition:border-color .2s}.send-button{transition:background-color .2s}.error,.loading{color:#6b7280;font-size:1.125rem;padding:4rem;text-align:center}@media (max-width:768px){.session-detail-view{padding:1rem}.session-detail-content{gap:1.5rem;grid-template-columns:1fr}.messaging-panel,.session-info-panel{padding:1.5rem}.session-title{gap:1rem}.detail-item,.session-title{align-items:flex-start;flex-direction:column}.detail-item{gap:.5rem}.detail-item .value{text-align:left}.provider-card{align-items:center;flex-direction:column;text-align:center}.provider-avatar{height:80px;width:80px}.messages-area{max-height:400px}.message-content{max-width:85%}.message-input-container{flex-direction:column;gap:.75rem}.send-button{align-self:stretch}}.provider-guidelines{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh;padding:2rem 0}.guidelines-container{margin:0 auto;max-width:1000px;padding:0 2rem}.guidelines-header{margin-bottom:3rem;padding:2rem 0;text-align:center}.guidelines-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:3rem;font-weight:700;margin-bottom:1rem}.guidelines-subtitle{color:#64748b;font-size:1.25rem;line-height:1.6;margin:0 auto;max-width:600px}.guidelines-content{display:flex;flex-direction:column;gap:3rem}.guideline-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;padding:2.5rem}.guideline-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.75rem;font-weight:600;gap:.75rem;margin-bottom:1.5rem}.guideline-points{grid-gap:2rem;display:grid;gap:2rem}.point{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:12px;padding:1.5rem}.point h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.point p{color:#475569;line-height:1.6;margin:0}.best-practices-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.practice-item{align-items:flex-start;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;padding:1.5rem}.practice-icon{flex-shrink:0;font-size:1.5rem}.practice-text{color:#475569;line-height:1.5}.practice-text strong{color:#1e293b}.avoid-list{grid-gap:1rem;display:grid;gap:1rem;margin-top:1rem}.avoid-item{align-items:center;background:#fef2f2;border-left:3px solid #ef4444;border-radius:8px;color:#7f1d1d;display:flex;font-weight:500;gap:1rem;padding:1rem 1.5rem}.avoid-icon{flex-shrink:0;font-size:1.25rem}.guidelines-footer{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:16px;color:#fff;margin-top:4rem;padding:3rem 2rem;text-align:center}.footer-cta h3{font-size:1.75rem;font-weight:600;margin-bottom:1rem}.footer-cta p{font-size:1.125rem;line-height:1.6;margin:0 auto;max-width:600px;opacity:.9}@media (max-width:768px){.guidelines-container{padding:0 1rem}.guidelines-header h1{font-size:2.25rem}.guidelines-subtitle{font-size:1.125rem}.guideline-section{padding:1.5rem}.guideline-section h2{font-size:1.5rem}.point{padding:1rem}.best-practices-grid{grid-template-columns:1fr}.guidelines-footer{padding:2rem 1rem}.footer-cta h3{font-size:1.5rem}.footer-cta p{font-size:1rem}}.practitioner-profile{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh;padding:2rem 0}.profile-container{margin:0 auto;max-width:900px;padding:0 2rem}.profile-header{margin-bottom:2rem}.header-content{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;padding:2rem}.header-content h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:2rem;font-weight:700;margin:0 0 .5rem}.header-subtitle{color:#64748b;font-size:1.125rem;line-height:1.6;margin:0 0 1.5rem}.edit-actions{gap:1rem;justify-content:flex-end}.cancel-btn,.save-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.save-btn{background:#3b82f6}.save-btn:hover:not(:disabled){background:#2563eb}.save-btn:disabled{background:#9ca3af}.cancel-btn{border:1px solid #d1d5db;color:#374151}.cancel-btn:hover:not(:disabled){background:#e5e7eb}.profile-content{display:flex;flex-direction:column;gap:2rem}.profile-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;padding:2rem}.section-header{border-bottom:2px solid #e2e8f0}.edit-btn{background:#fff;border:1px solid #3b82f6;border-radius:6px;color:#3b82f6;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.edit-btn:hover{background:#3b82f6;color:#fff}.edit-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{grid-gap:1rem;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;padding:.75rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.multi-select{grid-gap:.75rem;background:#f9fafb;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-height:300px;overflow-y:auto;padding:1rem}.checkbox-label{align-items:flex-start;padding:.5rem;transition:background-color .2s}.checkbox-label:hover{background:#f3f4f6}.checkbox-input{accent-color:#3b82f6;flex-shrink:0;height:16px;margin:4px 12px 0 0!important;width:16px}.checkbox-text{color:#374151;font-size:.875rem;line-height:20px;margin:0;padding:0}.profile-display{gap:1.5rem}.profile-display,.profile-info{display:flex;flex-direction:column}.profile-info{gap:1rem}.profile-info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.info-column{display:flex;flex-direction:column;gap:1rem}.section-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}.info-item{border-radius:8px;flex-direction:column;gap:.5rem}.info-item strong{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tags{margin-top:.5rem}.tag{background:#dbeafe;border:1px solid #bfdbfe;border-radius:12px;color:#1e40af;padding:.25rem .75rem}.not-specified{color:#9ca3af;font-size:.875rem;font-style:italic}.empty-state{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:3rem 2rem;text-align:center}.empty-state p{color:#64748b;font-size:1.125rem;line-height:1.6;margin:0 0 1.5rem}.get-started-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s}.get-started-btn:hover{box-shadow:0 8px 20px #3b82f666;transform:translateY(-2px)}.loading{font-size:1.25rem}@media (max-width:768px){.practitioner-profile{padding:1rem 0}.profile-container{padding:0 1rem}.header-content,.profile-section{padding:1.5rem}.header-content h2{font-size:1.75rem}.header-subtitle{font-size:1rem}.edit-actions{flex-direction:column}.form-row,.multi-select{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.tags{justify-content:center}.profile-info-grid{grid-template-columns:1fr}.section-actions{flex-direction:column}}.App{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;min-height:100vh}.loading{align-items:center;color:#64748b;display:flex;font-size:1.2rem;height:100vh;justify-content:center}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:6px;box-shadow:0 1px 2px #0000000d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.btn-secondary{background:#fff;border:2px solid #2563eb;border-radius:6px;color:#2563eb;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 22px;transition:all .2s ease}.btn-secondary:hover{background:#2563eb;color:#fff}.card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;padding:1.5rem;transition:all .2s ease}.card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-2px)}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{background:#fff;border:2px solid #d1d5db;border-radius:6px;color:#1e293b;font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .2s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.dashboard{min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#1e40af,#3730a3);color:#fff;padding:3rem 2rem;text-align:center}.dashboard-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.dashboard-main{margin:0 auto;max-width:1200px;padding:2rem}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:3rem}.dashboard-grid .card h3{color:#1e293b;font-weight:600;margin:0 0 .5rem}.dashboard-grid .card p{color:#64748b;line-height:1.5;margin:0 0 1rem}.dashboard-grid .card button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s ease}.dashboard-grid .card button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.theme-samples{border-top:2px solid #e2e8f0;margin-top:3rem;padding-top:3rem}.theme-samples h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:1rem;text-align:center}.theme-samples>p{color:#64748b;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px;text-align:center}.theme-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.theme-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;text-align:center;transition:all .2s ease}.theme-card:hover{border-color:#cbd5e1;box-shadow:0 10px 25px #0000001a;transform:translateY(-2px)}.theme-card h3{color:#1e293b;font-weight:600;margin:0 0 .5rem}.theme-card p{color:#64748b;font-size:.9rem;margin:0 0 1rem}.theme-card button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.theme-card button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.availability-manager{margin:0 auto;max-width:1200px;padding:2rem}.availability-header h2{margin-bottom:.5rem}.availability-tabs{border-bottom:2px solid #e2e8f0;gap:.5rem}.tab-button{border-bottom:3px solid #0000;padding:.75rem 1.5rem}.tab-button:hover{background-color:#f8fafc;color:#1e293b}.tab-button.active{background-color:#eff6ff;border-bottom-color:#2563eb;color:#2563eb}.availability-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:2rem}.calendar-grid{grid-gap:1px;background-color:#e2e8f0;border-radius:6px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);overflow:hidden}.calendar-day{align-items:center;background:#fff;cursor:pointer;display:flex;font-weight:500;justify-content:center;min-height:60px;padding:1rem .5rem;text-align:center;transition:all .2s ease}.calendar-day:hover{background:#f1f5f9}.calendar-day.selected{background:#2563eb;color:#fff}.calendar-day.available{background:#dcfce7;color:#166534}.time-slots{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-top:1rem}.time-slot{background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;font-weight:500;padding:.5rem;text-align:center;transition:all .2s ease}.time-slot:hover{background:#eff6ff;border-color:#2563eb}.time-slot.selected{background:#2563eb;border-color:#2563eb;color:#fff}.time-slot.booked{background:#fee2e2;border-color:#fca5a5;color:#991b1b;cursor:not-allowed}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.modal-header h3{color:#1e293b;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background:#f1f5f9;color:#1e293b}.table{background:#fff;border:1px solid #e2e8f0;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.table td,.table th{border-bottom:1px solid #f1f5f9;padding:12px 16px;text-align:left}.table th{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.table th,.table tr:hover{background:#f8fafc}.status-badge{border-radius:4px;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.confirmed{background:#dcfce7;color:#166534}.status-badge.completed{background:#dbeafe;color:#1e40af}.status-badge.cancelled{background:#fee2e2;color:#991b1b}.app-layout{background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:280px;transition:margin-left .3s ease}.sidebar{background:linear-gradient(180deg,#fff,#f8fafc);border-right:1px solid #e2e8f0;box-shadow:4px 0 6px -1px #0000001a;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:280px;z-index:100}.sidebar-header{background:linear-gradient(135deg,#1e40af,#3730a3);border-bottom:1px solid #e2e8f0;color:#fff;padding:2rem 1.5rem 1.5rem}.sidebar-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.user-welcome{margin-top:1rem}.user-welcome p{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#ffffffe6;font-size:.95rem;font-weight:500;margin:0 0 1rem;padding:8px 12px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.nav-section{margin-bottom:2rem;padding:0 1rem}.nav-section-title{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.1em;margin:0 0 .75rem 1rem;padding:0;text-transform:uppercase}.nav-item{align-items:center;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;margin:2px 0;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.nav-item:hover{background:#f1f5f9;color:#1e293b;transform:translateX(2px)}.nav-item.active{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;color:#2563eb;font-weight:600}.nav-icon{font-size:1.1rem;margin-right:12px;text-align:center;width:20px}.nav-label{flex:1 1}.sidebar-footer{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1rem}.login-btn,.logout-btn{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;margin:4px 0;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.login-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.login-btn:hover,.logout-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.login-btn .nav-icon,.logout-btn .nav-icon{font-size:1.1rem;margin-right:12px;text-align:center;width:20px}.login-container{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:420px;padding:3rem 2.5rem;width:100%}.login-form h2{color:#1e293b;font-size:1.8rem;font-weight:600;margin-bottom:2rem;text-align:center}.login-form input{background:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:14px 16px;transition:all .2s ease;width:100%}.login-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.login-form button[type=submit]{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:1.5rem;padding:14px;transition:all .2s ease;width:100%}.login-form button[type=submit]:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.auth-divider{margin:1.5rem 0;position:relative;text-align:center}.auth-divider:before{background:#e2e8f0;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.auth-divider span{background:#fff;color:#64748b;font-size:.875rem;padding:0 1rem;position:relative}.google-signin-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;display:flex;font-size:1rem;font-weight:500;justify-content:center;margin-bottom:1.5rem;padding:12px;transition:all .2s ease;width:100%}.google-signin-btn:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.google-icon{height:20px;margin-right:12px;width:20px}.toggle-auth{background:none;border:none;color:#2563eb;cursor:pointer;font-size:inherit;font-weight:600;margin:0;padding:0;text-decoration:underline}.toggle-auth:hover{color:#1d4ed8}.error{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;font-size:.875rem;line-height:1.4;margin:.5rem 0;padding:8px 12px;text-align:center}.login-form .error{background-color:#fecaca!important;border:1px solid #f87171!important;border-radius:4px!important;box-sizing:border-box!important;color:#dc2626!important;display:block!important;font-size:.8rem!important;height:auto!important;line-height:1.2!important;margin:8px 0!important;max-height:32px!important;min-height:28px!important;overflow:hidden!important;padding:8px 12px!important;text-align:center!important}.notification-message,.success-message{background:#dcfce7;border:1px solid #86efac;border-radius:6px;color:#166534;font-size:.875rem;line-height:1.4;margin:.5rem 0;padding:8px 12px;text-align:center}.login-form .message,.login-form .notification-message,.login-form .success-message{font-size:.85rem;line-height:1.2;margin:.5rem 0;padding:6px 10px}.message{border-radius:6px;color:#166534;font-size:.85rem;line-height:1.2;margin:.5rem 0}.verification-prompt{background:#fffbeb;border:1px solid #fed7aa;border-radius:6px;margin:1rem 0;padding:1rem}.verification-prompt p{color:#92400e;font-size:.875rem;margin:0 0 1rem}.resend-btn{background:linear-gradient(135deg,#d97706,#b45309);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.resend-btn:hover{background:linear-gradient(135deg,#b45309,#92400e);transform:translateY(-1px)}.role-switcher{margin-top:1rem}.role-switcher select{background:#ffffff1a;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 12px;transition:all .2s ease;width:100%}.role-switcher select:focus{background:#fff3;border-color:#ffffff80;outline:none}.role-switcher option{background:#1e40af;color:#fff}.provider-listing{margin:0 auto;max-width:1200px;padding:2rem}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#2563eb;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-state p{color:#64748b;font-size:1.1rem}.search-section{grid-gap:1.5rem;align-items:end;display:grid;gap:1.5rem;grid-template-columns:2fr 1fr;margin-bottom:1.5rem}.search-bar{display:flex;flex-direction:column}.search-input{font-size:1.1rem;padding:14px 20px}.availability-search label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.availability-inputs{align-items:center;display:flex;gap:.5rem}.clear-btn{font-size:.875rem;padding:8px 16px}.filter-actions{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding-top:1.5rem}.results-count{color:#64748b;font-size:.95rem;font-weight:500}.no-results{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:4rem 2rem;text-align:center}.no-results-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-results h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.no-results p{color:#64748b;font-size:1.1rem;margin:0 0 2rem}.provider-card{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;box-shadow:0 2px 8px #0000000a!important;display:flex!important;flex-direction:column!important;height:360px!important;opacity:1!important;overflow:hidden!important;padding:1.25rem!important;position:relative!important;transition:all .2s ease!important;visibility:visible!important}.provider-card:before{background:linear-gradient(90deg,#2563eb,#3b82f6);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.provider-card:hover:before{transform:scaleX(1)}.provider-card:hover{border-color:#bfdbfe;box-shadow:0 12px 32px #2563eb1f;transform:translateY(-3px)}.provider-header-compact{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.provider-main-info{align-items:center;display:flex;flex:1 1;gap:.75rem}.provider-avatar-small{border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;height:45px;overflow:hidden;transition:border-color .2s ease;width:45px}.provider-card:hover .provider-avatar-small{border-color:#bfdbfe}.provider-avatar-small img{height:100%;object-fit:cover;width:100%}.avatar-placeholder-small{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:.875rem;font-weight:600;height:100%;justify-content:center;width:100%}.provider-basic-info{min-width:0}.provider-name-compact{color:#1e293b;font-size:1.1rem;font-weight:700;line-height:1.2;margin:0 0 .25rem}.provider-rating-compact{align-items:center;display:flex;gap:.375rem;margin-bottom:.25rem}.rating-stars-small{color:#fbbf24;font-size:.8rem}.provider-location-compact,.rating-text-small{color:#64748b;font-size:.8rem}.provider-rate-availability{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:.375rem}.provider-rate-top{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:.5rem .75rem}.rate-amount-small{color:#0c4a6e;font-size:.9rem;font-weight:700;white-space:nowrap}.provider-availability-small .availability-status.small{border-radius:6px;font-size:.65rem;font-weight:500;padding:.25rem .5rem}.provider-availability-small .status-indicator.small{height:6px;width:6px}.provider-avatar img{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;display:flex;font-size:1.2rem;font-weight:600;height:100%;justify-content:center;width:100%}.provider-info{flex:1 1}.provider-info h3{font-size:1.3rem}.provider-rating{margin-bottom:.5rem}.rating-stars{color:#fbbf24;font-size:1rem}.rating-text{font-size:.875rem}.provider-location{color:#64748b;font-size:.875rem}.provider-bio{margin-bottom:.5rem;overflow:hidden}.provider-bio p{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#64748b;display:-webkit-box;font-size:.9rem;line-height:1.4;margin:0;overflow:hidden}.provider-expertise,.provider-languages,.provider-skills{margin-bottom:1.5rem}.provider-expertise h4,.provider-languages h4,.provider-skills h4{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.skills-list{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{padding:4px 10px;transition:all .2s ease}.skill-tag.more{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.provider-expertise p,.provider-languages p{color:#64748b;font-size:.875rem;margin:0}.provider-availability{margin-bottom:1.5rem}.availability-status{font-size:.875rem;gap:.5rem;padding:8px 12px}.availability-status.available{border:1px solid #86efac}.availability-status.unavailable{border:1px solid #fed7aa}.provider-listing-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:3rem;padding:2rem;text-align:center}.provider-listing-header h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0 0 1rem}.provider-listing-header p{color:#64748b;font-size:1.1rem;margin:0 auto;max-width:600px}.filters-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.filter-group label{display:block;font-weight:500;margin-bottom:.5rem}.providers-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.provider-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;padding:2rem;position:relative;transition:all .2s ease}.provider-card:hover{border-color:#cbd5e1;box-shadow:0 10px 25px #0000001a;transform:translateY(-2px)}.provider-header{display:flex;gap:1rem;margin-bottom:1.5rem}.provider-avatar{border:3px solid #e2e8f0;border-radius:50%;height:60px;object-fit:cover;width:60px}.provider-info h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.provider-rating{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.provider-skills{margin-bottom:1rem}.skill-tag{border:1px solid #bfdbfe;border-radius:6px;display:inline-block;margin:2px;padding:4px 8px}.view-profile-btn{background:#fff;border:2px solid #2563eb;color:#2563eb}.view-profile-btn:hover{background:#2563eb;color:#fff}.message-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;color:#fff}.message-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.account-settings,.profile-setup,.provider-profile{margin:0 auto;max-width:1200px;padding:2rem}.profile-header,.settings-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.profile-header h1,.settings-header h1{color:#1e293b;font-size:2rem;font-weight:600;margin:0 0 .5rem}.profile-section,.settings-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.profile-section h2,.settings-section h2{border-bottom:1px solid #e2e8f0;color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.75rem}.earnings-container,.sessions-container{margin:0 auto;max-width:1200px;padding:2rem}.earnings-header,.sessions-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.earnings-header h1,.sessions-header h1{color:#1e293b;font-size:2rem;font-weight:600;margin:0 0 .5rem}.earnings-header h2,.sessions-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:600;margin:0 0 .5rem}.earnings-header p,.sessions-header p{color:#6b7280;font-size:1rem;margin:0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{border-radius:8px;padding:1.5rem;transition:all .2s ease}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-value{color:#2563eb;font-size:2rem;font-weight:700}.stat-label{font-weight:500}.stat-sublabel{color:#94a3b8;font-size:.75rem;margin-top:.25rem}.earnings-stats{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.earnings-stats h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.stat-card.total-earnings{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-card.total-earnings .stat-label,.stat-card.total-earnings .stat-sublabel,.stat-card.total-earnings .stat-value{color:#fff}.stat-card.settled-balance{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.stat-card.settled-balance .stat-label,.stat-card.settled-balance .stat-sublabel,.stat-card.settled-balance .stat-value{color:#fff}.stat-card.not-settled-balance{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.stat-card.not-settled-balance .stat-label,.stat-card.not-settled-balance .stat-sublabel,.stat-card.not-settled-balance .stat-value{color:#fff}.stat-card.paid-amount{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.stat-card.paid-amount .stat-label,.stat-card.paid-amount .stat-sublabel,.stat-card.paid-amount .stat-value{color:#fff}.stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-content{display:flex;flex-direction:column}.payout-actions{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.payout-actions h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.payout-info{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:0 8px 8px 0;margin-bottom:2rem;padding:1rem}.payout-info p{color:#475569;font-size:.875rem;margin:.5rem 0}.payout-buttons{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.payout-option{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s ease}.payout-option:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a}.payout-option-info{margin-bottom:1rem}.payout-option-info h4{color:#1e293b;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.payout-amount{color:#10b981;font-size:1.5rem;font-weight:700;margin:.5rem 0}.payout-description{color:#64748b;font-size:.875rem;margin:0}.btn-payout{border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;letter-spacing:.025em;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .2s ease;width:100%}.btn-payout.settled{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-payout.settled:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-payout.not-settled{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.btn-payout.not-settled:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-1px)}.btn-payout:disabled{background:#94a3b8;box-shadow:none;color:#fff;cursor:not-allowed;transform:none}.payout-history{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.payout-history h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.no-payouts{padding:3rem 1rem;text-align:center}.no-payouts-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-payouts h4{color:#64748b;font-size:1.125rem;margin:0 0 .5rem}.no-payouts p{color:#94a3b8;margin:0}.payouts-table{display:flex;flex-direction:column;gap:.5rem}.table-header{background:#f8fafc;border-radius:8px;color:#475569;font-size:.875rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.table-header,.table-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr 1fr 1fr 1fr;padding:.75rem 1rem}.table-row{border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.table-row:hover{background:#f8fafc;border-color:#cbd5e1}.col-amount,.col-date,.col-session,.col-settled,.col-status{align-items:center;display:flex;font-size:.875rem}.col-amount{color:#059669;font-weight:600}.col-status{border-radius:4px;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.status-settled{background:#d1fae5;color:#065f46}.status-not-settled{background:#fef3c7;color:#92400e}.status-paid{background:#ddd6fe;color:#5b21b6}.status-cancelled{background:#fee2e2;color:#991b1b}@media (max-width:768px){.payout-buttons{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.table-header,.table-row{gap:.5rem;grid-template-columns:1fr}.col-amount,.col-date,.col-session,.col-settled,.col-status{justify-content:space-between}.col-date:before{content:"Created: ";font-weight:600}.col-amount:before{content:"Amount: ";font-weight:600}.col-status:before{content:"Status: ";font-weight:600}.col-settled:before{content:"Settlement: ";font-weight:600}.col-session:before{content:"Session: ";font-weight:600}}.support-container{margin:0 auto;max-width:1000px;padding:2rem}.messages-header,.support-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.messages-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem}.messages-header p{color:#6b7280;font-size:1rem;margin:0}.messages-page{margin:0 auto;max-width:1200px;padding:2rem}.messages-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:grid;grid-template-columns:350px 1fr;height:calc(100vh - 200px);overflow:hidden}.conversations-sidebar{border-right:1px solid #e2e8f0;display:flex;flex-direction:column}.conversations-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1.5rem}.conversations-header h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.conversations-list{flex:1 1;overflow-y:auto}.conversation-item{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:.75rem;padding:1rem 1.5rem;transition:all .2s ease}.conversation-item:hover{background:#f8fafc}.conversation-item.selected{background:#dbeafe;border-right:3px solid #3b82f6}.conversation-avatar{border-radius:50%;flex-shrink:0;height:48px;overflow:hidden;width:48px}.conversation-avatar img{height:100%;object-fit:cover;width:100%}.conversation-avatar .default-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:1rem;font-weight:600;height:100%;justify-content:center;width:100%}.conversation-details{flex:1 1;min-width:0}.conversation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.conversation-header h4{color:#1f2937;font-size:.875rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{color:#6b7280;flex-shrink:0;font-size:.75rem}.conversation-preview{align-items:center;display:flex;justify-content:space-between}.last-message{color:#9ca3af;flex:1 1;font-size:.75rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge{background:#3b82f6;border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;min-width:20px;padding:.25rem .5rem;text-align:center}.no-conversations{color:#6b7280;padding:2rem 1.5rem;text-align:center}.no-conversations p{font-size:.875rem;margin:.5rem 0}.message-area{display:flex;flex-direction:column}.message-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1.5rem}.recipient-info{align-items:center;display:flex;gap:.75rem}.recipient-avatar{border-radius:50%;height:40px;overflow:hidden;width:40px}.recipient-avatar img{height:100%;object-fit:cover;width:100%}.recipient-avatar .default-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:.875rem;font-weight:600;height:100%;justify-content:center;width:100%}.recipient-details h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .25rem}.recipient-type{color:#6b7280;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.messages-list{flex:1 1;padding:1.5rem}.message{display:flex;max-width:85%;min-width:200px}.message.own-message{align-self:flex-end}.message.other-message{align-self:flex-start}.message-content{background:#f3f4f6;border-radius:12px;padding:.75rem 1rem;position:relative}.message.own-message .message-content{background:#3b82f6;border-bottom-right-radius:4px;color:#fff}.message.other-message .message-content{background:#f3f4f6;border-bottom-left-radius:4px;color:#1f2937}.message-content p{word-wrap:break-word;line-height:1.4;margin:0 0 .5rem}.message-time{display:block;font-size:.75rem;opacity:.8}.read-indicator{color:#10b981}.no-conversation-selected,.no-messages{align-items:center;color:#6b7280;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:2rem;text-align:center}.no-conversation-selected h3,.no-messages h3{color:#1f2937;margin:0 0 .5rem}.message-input-area{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1.5rem}.message-input-container{align-items:flex-end;display:flex;gap:.75rem}.message-input-container textarea{border:2px solid #e5e7eb;border-radius:8px;flex:1 1;font-family:inherit;font-size:.875rem;max-height:120px;min-height:40px;padding:.75rem;resize:vertical;transition:border-color .2s ease}.message-input-container textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.send-button{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.send-button:hover:not(:disabled){background:#2563eb}.send-button:disabled{background:#9ca3af;cursor:not-allowed}.character-count{color:#6b7280;font-size:.75rem;margin-top:.5rem;text-align:right}@media (max-width:768px){.messages-page{padding:1rem}.messages-container{display:flex;flex-direction:column;grid-template-columns:1fr;height:auto;min-height:calc(100vh - 150px)}.conversations-sidebar{border-bottom:1px solid #e2e8f0;border-right:none;max-height:200px;order:1}.message-area{flex:1 1;min-height:400px;order:2}.message{max-width:95%;min-width:350px}.message-input-container{align-items:stretch;flex-direction:column;gap:.5rem}}.message-item,.support-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1.5rem;transition:all .2s ease}.message-item:hover,.support-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a}.admin-dashboard{background:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.admin-header{background:linear-gradient(135deg,#1e40af,#3730a3);border-radius:16px;box-shadow:0 8px 32px #1e40af4d;color:#fff;margin-bottom:3rem;padding:3rem 2rem;text-align:center}.admin-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.admin-header p{font-size:1.125rem;margin:0;opacity:.9}.admin-stats{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;margin-bottom:2rem;padding:2.5rem}.admin-stats h3{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin:0 0 2rem}.admin-stats h3:before{content:"📊";font-size:1.5rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;padding:2rem;position:relative;text-align:center;transition:all .3s ease}.stat-card:before{background:linear-gradient(135deg,#6366f1,#8b5cf6);content:"";height:4px;left:0;opacity:.8;position:absolute;right:0;top:0}.stat-card:hover{border-color:#cbd5e1;box-shadow:0 8px 32px #0000001f;transform:translateY(-4px)}.stat-card.users:before{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.stat-card.providers:before{background:linear-gradient(135deg,#10b981,#059669)}.stat-card.learners:before{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-card.conversations:before{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-card.messages:before{background:linear-gradient(135deg,#ec4899,#be185d)}.stat-card.support:before{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon{display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:3rem;margin-bottom:1rem}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.stat-label{color:#64748b;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.admin-sections{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr}.admin-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;padding:2.5rem;transition:all .3s ease}.admin-section:hover{box-shadow:0 8px 32px #00000014}.section-header{border-bottom:2px solid #f1f5f9;margin-bottom:1.5rem;padding-bottom:1rem}.section-header h3{color:#1e293b;font-size:1.25rem;font-weight:700}.view-all-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.view-all-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.quick-actions{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:inherit;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;text-decoration:none;transition:all .3s ease}.action-btn:hover{background:#f0f9ff;border-color:#3b82f6;box-shadow:0 8px 24px #3b82f626;transform:translateY(-2px)}.action-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:2rem}.action-label{color:#1e293b;font-size:.875rem;font-weight:600;text-align:center}.recent-list{display:flex;flex-direction:column;gap:1rem}.recent-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:all .2s ease}.recent-item:hover{background:#f1f5f9;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.item-avatar{align-items:center;background:#e2e8f0;border-radius:50%;display:flex;flex-shrink:0;height:48px;justify-content:center;overflow:hidden;width:48px}.item-avatar img{height:100%;object-fit:cover;width:100%}.default-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6);font-size:.875rem;font-weight:600}.item-icon{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.item-details{flex:1 1}.item-name{color:#1e293b;font-weight:600;margin-bottom:.25rem}.item-meta{color:#64748b;font-size:.875rem}.item-status{align-items:center;display:flex}.status{border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.status.active{background:#d1fae5;color:#065f46}.status.incomplete{background:#fef3c7;color:#92400e}.status.open{background:#dbeafe;color:#1e40af}.status.closed{background:#f3f4f6;color:#374151}.status.resolved{background:#d1fae5;color:#065f46}.no-data{color:#64748b;font-style:italic;padding:2rem;text-align:center}.admin-conversations,.admin-support-cases,.admin-user-management{background:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.admin-filters{grid-gap:1.5rem;align-items:end;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:2rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#374151;font-size:.875rem;font-weight:600}.admin-filters select,.search-input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease}.admin-filters select:focus,.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.search-input::placeholder{color:#9ca3af}.admin-content{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;overflow:hidden}.admin-content-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.admin-content-header h3{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0}.results-count{background:#dbeafe;border-radius:12px;color:#1e40af;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.admin-table{border-collapse:collapse;width:100%}.admin-table thead{background:#f8fafc}.admin-table th{border-bottom:2px solid #e2e8f0;color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem 1.5rem;text-align:left;text-transform:uppercase}.admin-table td{border-bottom:1px solid #f1f5f9;color:#1e293b;padding:1rem 1.5rem}.admin-table tbody tr{transition:all .2s ease}.admin-table tbody tr:hover{background:#f8fafc}.support-filters{grid-gap:2rem;align-items:end;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;display:grid;gap:2rem;grid-template-columns:2fr 1fr 1fr 1fr;margin-bottom:2rem;padding:2rem}.support-search-input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.support-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.support-search-input::placeholder{color:#9ca3af}.support-filter-select{background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.support-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.support-cases-stats{display:flex;gap:2rem;margin-bottom:1.5rem;padding:0 .5rem}.support-stat-item{align-items:center;display:flex;gap:.5rem}.support-stat-label{color:#64748b;font-size:.9rem;font-weight:500}.support-stat-value{color:#2563eb;font-size:1.25rem;font-weight:600}.support-cases-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));padding:1.5rem}.support-case-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:1.5rem;transition:all .2s ease}.support-case-card:hover{border-color:#cbd5e1;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.case-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.case-number-badge{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:.875rem;font-weight:600;padding:.5rem 1rem}.case-badges{display:flex;gap:.5rem}.support-priority-badge,.support-status-badge{border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.support-status-badge{color:#fff}.case-card-content{margin-bottom:1.25rem}.case-subject-title{color:#1e293b;font-size:1.1rem;font-weight:700;line-height:1.4;margin-bottom:.5rem}.case-description-preview{color:#64748b;font-size:.9rem;line-height:1.5}.case-card-meta{align-items:flex-start;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:1.25rem;padding-top:1rem}.case-user-info{flex:1 1}.user-name{color:#374151;font-size:.9rem;font-weight:600}.user-email{color:#64748b;font-size:.8rem;margin-top:.25rem}.category-tag{background:#dbeafe;border-radius:8px;color:#1e40af;font-size:.75rem;font-weight:600;padding:.375rem .75rem}.case-card-footer{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-top:1rem}.case-created-date{color:#64748b;font-size:.8rem;font-weight:500}.case-actions{display:flex;gap:.75rem}.support-edit-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:60px;padding:.5rem 1rem;transition:all .2s ease}.support-edit-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.support-delete-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:60px;padding:.5rem 1rem;transition:all .2s ease}.support-delete-btn:hover{background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.conversation-filters{grid-gap:2rem;align-items:end;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;display:grid;gap:2rem;grid-template-columns:2fr 1fr;margin-bottom:2rem;padding:2rem}.conversation-search-input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.conversation-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.conversation-search-input::placeholder{color:#9ca3af}.conversation-filter-select{background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.conversation-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.conversation-stats{display:flex;gap:2rem;margin-bottom:1.5rem;padding:0 .5rem}.conversation-stat-item{align-items:center;display:flex;gap:.5rem}.conversation-stat-label{color:#64748b;font-size:.9rem;font-weight:500}.conversation-stat-value{color:#2563eb;font-size:1.25rem;font-weight:600}.conversations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));padding:1.5rem}.conversation-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:1.5rem;transition:all .2s ease}.conversation-card:hover{border-color:#cbd5e1;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.conversation-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.conversation-id-badge{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-family:monospace;font-size:.75rem;font-weight:600;padding:.5rem 1rem}.conversation-status-badge{border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.conversation-status-badge.active{background:#dcfce7;color:#166534}.conversation-status-badge.inactive{background:#fef3c7;color:#92400e}.conversation-card-content,.participants-section{margin-bottom:1.25rem}.message-title,.participants-title{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.participants-list{color:#1e293b;font-weight:600;margin-bottom:.25rem}.participant-count{color:#64748b;font-size:.8rem}.last-message-section{border-top:1px solid #f1f5f9;padding-top:1rem}.message-content{color:#374151;font-size:.9rem;line-height:1.5;margin-bottom:.5rem;min-width:300px}.message-sender{color:#64748b;font-size:.8rem;font-style:italic}.conversation-card-footer{align-items:flex-end;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-top:1rem}.activity-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.activity-time{color:#374151;font-size:.8rem;font-weight:500;margin-top:.25rem}.conversation-actions{display:flex;gap:.75rem}.conversation-view-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:80px;padding:.5rem 1rem;transition:all .2s ease}.conversation-view-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.conversation-delete-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:60px;padding:.5rem 1rem;transition:all .2s ease}.conversation-delete-btn:hover{background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.conversation-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.conversation-modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.conversation-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:2rem}.conversation-modal-header h3{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}.conversation-modal-close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.conversation-modal-close-btn:hover{background:#f1f5f9;color:#dc2626}.conversation-modal-body{max-height:60vh;overflow-y:auto;padding:2rem}.conversation-info-section{border-bottom:2px solid #f1f5f9;margin-bottom:2rem;padding-bottom:2rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem}.info-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.info-value{color:#1e293b;font-weight:600;word-break:break-all}.conversation-messages-section{margin-top:2rem}.messages-header{margin-bottom:1.5rem}.messages-header h4{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0}.messages-list{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto}.no-messages{color:#64748b;padding:3rem 1rem;text-align:center}.no-messages-icon{font-size:3rem;margin-bottom:1rem}.conversation-message-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.conversation-message-item:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.message-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:40px;justify-content:center;width:40px}.message-content-wrapper{flex:1 1;min-width:0}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.message-sender-name{color:#374151;font-size:.9rem;font-weight:600}.message-timestamp{color:#64748b;font-size:.75rem}.message-text{word-wrap:break-word;color:#1e293b;line-height:1.6;margin-bottom:.75rem}.message-meta-info{align-items:center;display:flex;gap:1rem}.message-type-badge{background:#dbeafe;border-radius:6px;color:#1e40af;font-size:.65rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.message-read-status{font-size:.75rem;font-weight:600}.message-read-status.read{color:#059669}.message-read-status.unread{color:#dc2626}.conversation-modal-actions{background:#f8fafc;border-top:2px solid #e2e8f0;display:flex;justify-content:flex-end;padding:1.5rem 2rem}.conversation-modal-close-btn-footer{background:linear-gradient(135deg,#64748b,#475569);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:80px;padding:.75rem 1.5rem;transition:all .2s ease}.conversation-modal-close-btn-footer:hover{background:linear-gradient(135deg,#475569,#374151);box-shadow:0 4px 12px #64748b66;transform:translateY(-1px)}.user-management-container{background:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem;width:100%}.user-filters{grid-gap:2rem;align-items:end;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;display:grid;gap:2rem;grid-template-columns:2fr 1fr 1fr 1fr;margin-bottom:2rem;padding:2rem}.user-search-input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.user-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.user-search-input::placeholder{color:#9ca3af}.user-filter-select{background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;font-size:1rem;padding:1rem 1.5rem;transition:all .2s ease;width:100%}.user-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.user-content{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0000000f;overflow:hidden}.user-stats{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1.5rem 1.5rem 0}.user-stat-item{align-items:center;display:flex;gap:.5rem}.user-stat-label{color:#64748b;font-size:.9rem;font-weight:500}.user-stat-value{color:#2563eb;font-size:1.25rem;font-weight:600}.users-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));padding:1.5rem}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:1.5rem;transition:all .2s ease}.user-card:hover{border-color:#cbd5e1;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.user-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.user-avatar-section{align-items:center;display:flex;gap:1rem}.user-avatar-image{object-fit:cover}.user-avatar-default,.user-avatar-image{border:2px solid #e2e8f0;border-radius:50%;height:50px;width:50px}.user-avatar-default{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:1rem;font-weight:700;justify-content:center}.user-name-section{flex:1 1}.user-full-name{color:#1e293b;font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.user-username{color:#64748b;font-size:.85rem;font-style:italic}.user-badges{display:flex;gap:.5rem}.user-admin-badge{border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.user-admin-badge.admin{background:#fef3c7;color:#92400e}.user-admin-badge.regular{background:#e0f2fe;color:#0c4a6e}.user-card-content{margin-bottom:1.25rem}.user-email-section{margin-bottom:1rem}.field-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.field-value{color:#374151;font-weight:500;word-break:break-word}.user-details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.detail-item{display:flex;flex-direction:column;gap:.5rem;padding-left:5px;padding-right:5px}.detail-label{color:#64748b}.detail-label,.user-type-badge{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.user-type-badge{align-self:flex-start;border-radius:8px;padding:.375rem .75rem}.user-type-badge.learner{background:#dcfce7;color:#166534}.user-type-badge.provider{background:#ddd6fe;color:#5b21b6}.user-type-badge.both{background:#fed7d7;color:#c53030}.user-status-badge{align-self:flex-start;border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.user-status-badge.complete{background:#dcfce7;color:#166534}.user-status-badge.incomplete{background:#fef3c7;color:#92400e}.user-card-footer{align-items:flex-end;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-top:1rem}.user-created-section{flex:1 1}.created-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.created-date{color:#374151;font-size:.8rem;font-weight:500}.user-actions{display:flex;gap:.75rem}.user-edit-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:60px;padding:.5rem 1rem;transition:all .2s ease}.user-edit-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.user-delete-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-width:60px;padding:.5rem 1rem;transition:all .2s ease}.user-delete-btn:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.user-delete-btn:disabled{background:#e5e7eb;box-shadow:none;color:#9ca3af;cursor:not-allowed;transform:none}@media (max-width:1200px){.users-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media (max-width:900px){.user-management-container{padding:1rem}.user-filters{gap:1.5rem;grid-template-columns:1fr;padding:1.5rem}.users-grid{grid-template-columns:1fr;padding:1rem}.user-card-footer{align-items:stretch;flex-direction:column;gap:1rem}.user-actions{justify-content:center}.user-details-grid{grid-template-columns:1fr}}@media (max-width:600px){.users-grid{gap:1rem}.user-card{padding:1.25rem}.user-delete-btn,.user-edit-btn{flex:1 1}.user-card-header{align-items:stretch;flex-direction:column;gap:1rem}.user-avatar-section,.user-badges{justify-content:center}}.provider-details{flex:1 1;margin-bottom:.5rem}.provider-details h4{color:#374151;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.provider-skills{margin-bottom:.5rem}.provider-skills .skills-list{display:flex;flex-wrap:wrap;gap:.375rem}.provider-expertise-compact,.provider-languages-compact{margin-bottom:.5rem}.provider-expertise-compact p,.provider-languages-compact p{color:#64748b;font-size:.85rem;line-height:1.3;margin:0}.provider-card .provider-rate{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin:1rem 0 .75rem;padding:.75rem;text-align:center}.provider-card .rate-amount{color:#0c4a6e;display:block;font-size:1.2rem;font-weight:700}.provider-availability{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.availability-status{align-items:center;border-radius:6px;display:flex;font-size:.7rem;font-weight:500;gap:.375rem;padding:.375rem .5rem}.availability-status.available{background:#dcfce7;color:#166534}.availability-status.unavailable{background:#fef3c7;color:#92400e}.status-indicator{border-radius:50%;flex-shrink:0;height:8px;width:8px}.status-indicator.available{background:#16a34a}.status-indicator.unavailable{background:#d97706}.provider-card .provider-actions{grid-gap:.75rem;border-top:1px solid #f1f5f9;display:grid;gap:.75rem;grid-template-columns:2fr 1fr 1fr;margin-top:auto;padding-top:1rem}.provider-card .book-session-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;box-shadow:0 2px 4px #2563eb33;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.provider-card .book-session-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.provider-card .view-profile-btn-compact{background:#fff;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-size:.8rem;font-weight:500;padding:.75rem .5rem;text-align:center;transition:all .2s ease}.provider-card .view-profile-btn-compact:hover{background:#f9fafb;border-color:#9ca3af;color:#111827;transform:translateY(-1px)}.provider-card .message-btn-compact{background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:10px;box-shadow:0 2px 4px #05966933;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.75rem .5rem;text-align:center;transition:all .2s ease}.provider-card .message-btn-compact:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 12px #05966966;transform:translateY(-1px)}.skill-tag{background:#dbeafe;border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;white-space:nowrap}.skill-tag.more{background:#f3f4f6;color:#6b7280}.providers-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.provider-card .provider-rate{background:#f0f9ff!important;border:1px solid #bae6fd!important;border-radius:12px!important;box-shadow:0 1px 3px #0000000d!important;display:block!important;margin:1rem 0 .75rem!important;opacity:1!important;padding:.75rem!important;text-align:center!important;visibility:visible!important}.provider-card .rate-amount{color:#0c4a6e!important;display:block!important;font-size:1.2rem!important;font-weight:700!important}.provider-card .provider-actions{grid-gap:.5rem!important;border-top:1px solid #f1f5f9!important;display:grid!important;gap:.5rem!important;grid-template-columns:2fr 1fr 1fr!important;margin-top:auto!important;opacity:1!important;padding:.75rem 0 .5rem!important;position:relative!important;visibility:visible!important;z-index:1!important}.provider-card .book-session-btn,.provider-card .message-btn-compact,.provider-card .view-profile-btn-compact{display:block!important;opacity:1!important;visibility:visible!important}.provider-card .book-session-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border:none!important;border-radius:8px!important;box-shadow:0 2px 4px #2563eb33!important;color:#fff!important;cursor:pointer!important;font-size:.875rem!important;font-weight:600!important;padding:.75rem 1rem!important;transition:all .2s ease!important}.provider-card .view-profile-btn-compact{background:#fff!important;border:1px solid #d1d5db!important;border-radius:8px!important;color:#374151!important;font-weight:500!important}.provider-card .message-btn-compact,.provider-card .view-profile-btn-compact{cursor:pointer!important;font-size:.8rem!important;padding:.75rem .5rem!important;text-align:center!important;transition:all .2s ease!important}.provider-card .message-btn-compact{background:linear-gradient(135deg,#059669,#047857)!important;border:none!important;border-radius:8px!important;box-shadow:0 2px 4px #05966933!important;color:#fff!important;font-weight:600!important}@media (max-width:1200px){.conversations-grid{grid-template-columns:repeat(auto-fill,minmax(450px,1fr))}}@media (max-width:900px){.conversation-filters{gap:1.5rem;grid-template-columns:1fr}.conversations-grid{grid-template-columns:1fr;padding:1rem}.conversation-card-footer{align-items:stretch;flex-direction:column;gap:1rem}.conversation-actions{justify-content:center}.conversation-modal-overlay{padding:1rem}.conversation-modal-content{max-height:95vh}.conversation-modal-actions,.conversation-modal-body,.conversation-modal-header{padding:1.5rem}}@media (max-width:600px){.conversations-grid{gap:1rem}.conversation-card{padding:1.25rem}.conversation-delete-btn,.conversation-view-btn{flex:1 1}.info-grid{grid-template-columns:1fr}.conversation-message-item{flex-direction:column;gap:.75rem}.message-avatar{align-self:flex-start}}@media (max-width:1200px){.support-cases-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}}@media (max-width:900px){.support-filters{gap:1.5rem;grid-template-columns:1fr}.support-cases-grid{grid-template-columns:1fr;padding:1rem}.case-card-footer,.case-card-meta{align-items:stretch;flex-direction:column;gap:1rem}}@media (max-width:600px){.support-cases-grid{gap:1rem}.support-case-card{padding:1.25rem}.case-actions{justify-content:center}.support-delete-btn,.support-edit-btn{flex:1 1}}.admin-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;padding:1.5rem}.admin-card-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s ease}.admin-card-item:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.admin-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.admin-card-title{color:#1e293b;font-weight:700;margin-bottom:.25rem}.admin-card-meta{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.admin-card-content{color:#374151;line-height:1.6}.admin-card-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-top:1rem;padding-top:1rem}.user-avatar{align-items:center;background:#e5e7eb;border-radius:50%;display:flex;flex-shrink:0;height:40px;justify-content:center;margin-right:.75rem;overflow:hidden;width:40px}.user-avatar img{height:100%;object-fit:cover;width:100%}.user-avatar-initials{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;font-size:.875rem;font-weight:600;height:100%;justify-content:center;width:100%}.admin-action-btns{display:flex;gap:.5rem}.admin-btn{border:none;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.5rem 1rem;text-transform:uppercase;transition:all .2s ease}.admin-btn.edit{background:#dbeafe;color:#1e40af}.admin-btn.edit:hover{background:#bfdbfe;transform:translateY(-1px)}.admin-btn.delete{background:#fee2e2;color:#dc2626}.admin-btn.delete:hover{background:#fecaca;transform:translateY(-1px)}.admin-btn.view{background:#f0f9ff;color:#0284c7}.admin-btn.view:hover{background:#e0f2fe;transform:translateY(-1px)}.badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.badge.online{background:#d1fae5;color:#065f46}.badge.offline{background:#f3f4f6;color:#374151}.badge.admin{background:#ede9fe;color:#6b21a8}.badge.provider{background:#d1fae5;color:#065f46}.badge.learner{background:#fef3c7;color:#92400e}.badge.high-priority{background:#fee2e2;color:#dc2626}.badge.medium-priority{background:#fef3c7;color:#d97706}.badge.low-priority{background:#f0f9ff;color:#0284c7}.admin-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.admin-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;width:100%}.admin-modal-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.admin-modal-title{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0}.admin-modal-close{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:all .2s ease}.admin-modal-close:hover{background:#f1f5f9;color:#1e293b}.admin-modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.admin-form-group{margin-bottom:1.5rem}.admin-form-group label{color:#374151;display:block;font-weight:600;margin-bottom:.5rem}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;padding:.75rem;transition:all .2s ease;width:100%}.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}@media (max-width:768px){.admin-conversations,.admin-support-cases,.admin-user-management{padding:1rem}.admin-header{padding:2rem 1.5rem}.admin-header h2{font-size:2rem}.admin-filters{gap:1rem;grid-template-columns:1fr}.admin-table{font-size:.875rem}.admin-table td,.admin-table th{padding:.75rem 1rem}.admin-action-btns{flex-direction:column;gap:.25rem}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.admin-modal{padding:1rem}.admin-modal-content{padding:1.5rem}}.provider-profile-view{margin:0 auto;max-width:1200px;padding:2rem}.back-button{align-items:center;background:none;border:2px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;margin-bottom:2rem;padding:10px 16px;transition:all .2s ease}.back-button:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.provider-header{grid-gap:2rem;align-items:start;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;display:grid;gap:2rem;grid-template-columns:auto 1fr auto;margin-bottom:2rem;padding:3rem 2rem}.provider-image{border:4px solid #e2e8f0;border-radius:50%;box-shadow:0 4px 16px #0000001a;height:120px;overflow:hidden;position:relative;width:120px}.provider-image img{height:100%;object-fit:cover;width:100%}.default-avatar{align-items:center;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;display:flex;font-size:2.5rem;font-weight:700;height:100%;justify-content:center;width:100%}.provider-basic-info{flex:1 1}.provider-basic-info h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0 0 1rem}.rating-summary{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.stars{display:flex;gap:2px}.star{color:#fbbf24;font-size:1.2rem}.star.empty{color:#d1d5db}.rating-text{color:#64748b;font-weight:500}.hourly-rate{color:#2563eb;font-size:1.8rem;font-weight:700;margin-bottom:1rem}.provider-timezone-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.timezone-location{color:#374151;font-weight:500;margin:0 0 .5rem}.current-time{color:#64748b;font-size:.875rem;margin:0}.provider-actions{display:flex;flex-direction:column;gap:.75rem}.book-session-btn.primary,.send-message-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-width:180px;padding:14px 24px;transition:all .2s ease}.book-session-btn.primary:hover,.send-message-btn.primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.book-session-btn.secondary,.send-message-btn.secondary{background:#fff;border:2px solid #2563eb;border-radius:8px;color:#2563eb;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 22px;transition:all .2s ease;width:100%}.book-session-btn.secondary:hover,.send-message-btn.secondary:hover{background:#2563eb;color:#fff;transform:translateY(-1px)}.provider-content{grid-gap:2rem;gap:2rem;grid-template-columns:2fr 1fr}.right-column-wrapper{display:flex;flex-direction:column;gap:20px}.provider-main{display:flex;flex-direction:column;gap:2rem}.bio-section,.experience-section,.reviews-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.bio-section h2,.experience-section h2,.reviews-section h2{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.75rem}.bio-section p,.experience-section p{color:#64748b;font-size:1rem;line-height:1.7;margin:0}.reviews-list{display:flex;flex-direction:column;gap:1.5rem}.review-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;padding:1.5rem;transition:all .2s ease}.review-card:hover{background:#fff;border-color:#e2e8f0;box-shadow:0 2px 8px #00000014}.review-header{align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.reviewer-name{color:#374151;font-weight:600}.review-rating{display:flex;gap:1px}.review-date{color:#64748b;font-size:.875rem;margin-left:auto}.review-comment{color:#64748b;font-style:italic;margin:0}.provider-sidebar{display:flex;flex-direction:column;gap:1.5rem}.availability-section,.expertise-section,.languages-section,.skills-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.expertise-section h3,.languages-section h3,.skills-section h3{color:#374151;font-size:1rem;font-weight:600;letter-spacing:.05em;margin:0 0 1rem;text-transform:uppercase}.tags{gap:.5rem}.tag{border:1px solid;border-radius:6px;display:inline-block;font-size:.75rem;transition:all .2s ease}.skill-tag{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.skill-tag:hover{background:#dbeafe;border-color:#93c5fd}.expertise-tag{background:#f0fdf4;border-color:#bbf7d0}.expertise-tag:hover{background:#dcfce7;border-color:#86efac}.language-tag{background:#fef3c7;border-color:#fed7aa;color:#92400e}.language-tag:hover{background:#fde68a;border-color:#fbbf24}.availability-section{position:-webkit-sticky;position:sticky;top:2rem}.availability-section-full{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;margin-bottom:2rem;padding:2rem}.availability-header{border-bottom:2px solid #f1f5f9;margin-bottom:2rem;padding-bottom:1.5rem;text-align:center}.availability-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem}.availability-header p{color:#64748b;font-size:1rem;margin:0}.availability-actions{border-top:1px solid #f1f5f9;display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:1.5rem}.availability-section-full .availability-display{margin:0}.availability-section-full .availability-display .availability-header{display:none}.availability-section-full .view-toggle{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.availability-section-full .view-toggle button{background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.availability-section-full .view-toggle button.active,.availability-section-full .view-toggle button:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.availability-section-full .calendar-view{margin:0 auto;max-width:700px}.availability-section-full .calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.availability-section-full .calendar-header h4{color:#1e293b;font-size:1.2rem;font-weight:600;margin:0}.availability-section-full .nav-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.availability-section-full .nav-btn:hover{background:#2563eb;border-color:#2563eb;color:#fff}.availability-section-full .calendar-grid{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.availability-section-full .calendar-days-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:repeat(7,1fr)}.availability-section-full .day-header{border-right:1px solid #f1f5f9;color:#374151;font-size:.875rem;font-weight:600;padding:8px;text-align:center}.availability-section-full .day-header:last-child{border-right:none}.availability-section-full .calendar-week{border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:repeat(7,1fr)}.availability-section-full .calendar-week:last-child{border-bottom:none}.availability-section-full .calendar-day{border-right:1px solid #f1f5f9;cursor:pointer;display:flex;flex-direction:column;min-height:60px;padding:8px;position:relative;transition:all .2s ease}.availability-section-full .calendar-day:last-child{border-right:none}.availability-section-full .calendar-day:hover{background:#f8fafc}.availability-section-full .calendar-day.today{background:#eff6ff;border-color:#bfdbfe}.availability-section-full .calendar-day.has-availability{background:#f0fdf4;cursor:pointer}.availability-section-full .calendar-day.has-availability:hover{background:#dcfce7}.availability-section-full .calendar-day.other-month{background:#fafafa;color:#d1d5db}.availability-section-full .day-number{color:#374151;font-size:.875rem;font-weight:500}.availability-section-full .calendar-day.other-month .day-number{color:#d1d5db}.availability-section-full .availability-indicators{display:flex;flex-wrap:wrap;gap:2px;margin-top:4px}.availability-section-full .availability-dot{background:#16a34a;border-radius:50%;height:6px;width:6px}.availability-section-full .availability-dot.one-off{background:#2563eb}.availability-section-full .calendar-legend{background:#f8fafc;border-radius:6px;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding:.75rem}.availability-section-full .legend-item{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.availability-section-full .list-view{margin:0 auto;max-width:600px}.availability-section-full .list-view h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-align:center}.availability-section-full .availability-list{display:flex;flex-direction:column;gap:.75rem}.availability-section-full .availability-item{align-items:center;background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.availability-section-full .availability-item:hover{background:#fff;border-color:#e2e8f0;box-shadow:0 2px 8px #00000014}.availability-section-full .availability-date{min-width:120px;text-align:center}.availability-section-full .date-main{color:#1e293b;font-size:.9rem;font-weight:600}.availability-section-full .date-year{color:#64748b;font-size:.8rem}.availability-section-full .availability-time{flex:1 1}.availability-section-full .time-range{color:#2563eb;font-size:.95rem;font-weight:600}.availability-section-full .time-provider-tz,.availability-section-full .time-user-tz{color:#64748b;font-size:.8rem;margin-top:2px}.availability-section-full .availability-type{min-width:80px;text-align:center}.availability-section-full .type-badge{border-radius:4px;font-size:.75rem;font-weight:500;letter-spacing:.025em;padding:4px 8px;text-transform:uppercase}.availability-section-full .type-badge.recurring{background:#dcfce7;color:#166534}.availability-section-full .type-badge.one-off{background:#dbeafe;color:#1e40af}.availability-section-full .no-availability{color:#64748b;padding:2rem;text-align:center}.availability-section-full .no-availability p{font-style:italic;margin:0}.error,.loading{align-items:center;color:#64748b;display:flex;font-size:1.2rem;justify-content:center;min-height:60vh}.error{color:#dc2626}.reviews-ratings-page{margin:0 auto;max-width:1200px;padding:2rem}.reviews-container .reviews-header{margin-bottom:30px;text-align:center}.reviews-container .reviews-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:10px}.reviews-container .reviews-header p{color:#6b7280;font-size:1.1rem}.reviews-summary{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 2fr;margin-bottom:40px}.summary-card{background:#fff;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 10px 25px #0000001a;padding:30px;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 15px 35px #00000026;transform:translateY(-2px)}.overall-rating{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.rating-number{color:var(--primary-color);font-size:4rem;font-weight:700;line-height:1;margin-bottom:10px}.rating-stars{margin-bottom:15px}.rating-stars .star{font-size:1.5rem;margin:0 2px}.rating-stars .star.full,.rating-stars .star.half{color:#fbbf24}.rating-stars .star.empty{color:#e5e7eb}.rating-text{color:#6b7280;font-size:1rem}.rating-breakdown h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:20px}.rating-bar{align-items:center;display:flex;gap:15px;margin-bottom:12px}.rating-label{color:var(--text-primary);font-size:.9rem;min-width:60px}.bar-container{background-color:#f3f4f6;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.bar-fill{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));height:100%;transition:width .6s ease-out}.rating-count{color:#6b7280;font-size:.9rem;min-width:30px}.reviews-list h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:25px}.reviews-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.review-card{background:#fff;border:1px solid #f3f4f6;border-radius:12px;padding:25px;transition:transform .2s,box-shadow .2s}.review-card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-2px)}.review-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.reviewer-info .reviewer-name{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:5px}.reviewer-info .review-date{color:#6b7280;font-size:.9rem}.review-rating .star{font-size:1.2rem;margin-right:2px}.review-rating .star.full,.review-rating .star.half{color:#fbbf24}.review-rating .star.empty{color:#e5e7eb}.review-comment{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:15px}.session-reference{border-top:1px solid #f3f4f6;color:#9ca3af;font-family:Courier New,monospace;font-size:.85rem;padding-top:10px}.no-reviews{color:#6b7280;padding:60px 20px;text-align:center}.no-reviews p{font-size:1.1rem}.account-settings{margin:0 auto;max-width:1200px;padding:2rem}.account-container .account-header{border-bottom:2px solid #f3f4f6;margin-bottom:30px;padding-bottom:20px;text-align:center}.account-container .account-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:10px}.account-container .account-header p{color:#6b7280;font-size:1.1rem}.account-section{background:#fff;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:25px;padding:25px;transition:box-shadow .2s}.account-section:hover{box-shadow:0 4px 15px #0000001a}.section-header{border-bottom:1px solid #f3f4f6;margin-bottom:20px}.section-header h3{font-size:1.4rem}.edit-section-btn{background:#0000;border:2px solid var(--primary-color);border-radius:6px;color:var(--primary-color);cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.edit-section-btn:hover{background:var(--primary-color);color:#fff}.profile-picture-section{align-items:flex-start;display:flex;gap:25px}.current-picture{flex-shrink:0}.profile-picture-preview{border:3px solid #e5e7eb;border-radius:50%;height:120px;object-fit:cover;width:120px}.default-picture{align-items:center;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:50%;color:#fff;display:flex;font-size:3rem;font-weight:700;height:120px;justify-content:center;text-transform:uppercase;width:120px}.picture-info{color:#6b7280;flex:1 1}.edit-form{flex:1 1}.edit-form label{font-weight:500}.file-input{margin-bottom:10px}.image-preview{margin:20px 0;text-align:center}.preview-image-large{border:2px solid #e5e7eb;border-radius:8px;margin-bottom:10px;max-height:200px;max-width:200px}.image-preview p{color:#6b7280;font-size:.9rem;margin:0}.form-actions{flex-wrap:wrap;gap:12px;margin-top:25px}.save-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.save-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.save-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-btn{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.cancel-btn:hover{background:#e5e7eb;color:#374151}.remove-photo-btn{background:#fef2f2;border:2px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.remove-photo-btn:hover:not(:disabled){background:#fecaca;border-color:#f87171}.remove-photo-btn:disabled{cursor:not-allowed;opacity:.6}.account-info,.contact-display,.security-display{margin-top:15px}.info-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:15px 0}.info-item:last-child{border-bottom:none}.info-item label{color:#6b7280;font-size:.95rem;font-weight:500}.info-item span{color:var(--text-primary);font-weight:500;padding-right:1rem;text-align:right}.account-type{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:20px;color:#fff!important;display:inline-block;font-size:.875rem;font-weight:600;padding:6px 14px;white-space:nowrap}.status.complete{color:#059669!important;font-weight:600}.status.incomplete{color:#dc2626!important;font-weight:600}.security-note{color:#6b7280;font-size:.9rem;font-style:italic;margin-top:15px}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534}.error-message,.success-message{font-weight:500;margin-bottom:20px;padding:15px}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.profile-setup{margin:0 auto;max-width:800px;min-height:100vh;padding:20px}.profile-setup-container h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:30px;text-align:center}.profile-setup .form-group{margin-bottom:25px}.profile-setup label{color:var(--text-primary);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.profile-setup input,.profile-setup select,.profile-setup textarea{background:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.profile-setup input:focus,.profile-setup select:focus,.profile-setup textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.profile-setup small{color:#9ca3af;display:block;font-size:.85rem;margin-top:5px}.checkbox-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:10px}.checkbox-label{align-items:center;background:#f8f9fa;border-radius:6px;cursor:pointer;display:flex;font-weight:400;gap:8px;padding:8px 12px;transition:background-color .2s ease}.checkbox-label:hover{background:#e9ecef}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0;width:auto}.profile-picture-section .preview-image{border:3px solid var(--primary-color);border-radius:50%;height:120px;margin-bottom:10px;object-fit:cover;width:120px}.certification-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:15px;padding:20px}.cert-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr auto auto;margin-bottom:10px}.remove-cert-btn{align-items:center;background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;width:30px}.add-cert-btn{background:#0000;border:2px dashed var(--primary-color);border-radius:8px;color:var(--primary-color);cursor:pointer;font-weight:500;padding:12px 24px;transition:all .2s ease}.add-cert-btn:hover{background:var(--primary-color);color:#fff}.form-actions{display:flex;gap:15px;justify-content:center;margin-top:40px}.submit-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;min-width:160px;padding:15px 30px;transition:all .2s ease}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.skip-btn{background:#f3f4f6;border:2px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:1.1rem;font-weight:500;min-width:160px;padding:15px 30px;transition:all .2s ease}.skip-btn:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.skip-btn:disabled{cursor:not-allowed;opacity:.6}.help-support{margin:0 auto;max-width:1200px;padding:2rem}.support-container .support-header{border-bottom:2px solid #f3f4f6;margin-bottom:30px;padding-bottom:20px;text-align:center}.support-container .support-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:10px}.support-container .support-header p{color:#6b7280;font-size:1.1rem}.support-actions{margin-bottom:30px;text-align:center}.create-case-btn{background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:8px;box-shadow:0 4px 15px #16a34a4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;letter-spacing:.5px;padding:15px 30px;text-transform:uppercase;transition:all .2s ease}.create-case-btn:hover{background:linear-gradient(135deg,#15803d,#166534);box-shadow:0 6px 20px #16a34a66;transform:translateY(-2px)}.create-case-form{background:#fff;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:30px;padding:30px}.create-case-form h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:25px}.create-case-form .form-group{margin-bottom:20px}.create-case-form label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.create-case-form input,.create-case-form select,.create-case-form textarea{background:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.create-case-form input:focus,.create-case-form select:focus,.create-case-form textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.submit-case-btn{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.submit-case-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark),#1e40af);transform:translateY(-1px)}.submit-case-btn:disabled{cursor:not-allowed;opacity:.6}.cases-section h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:25px}.no-cases{color:#6b7280;padding:60px 20px;text-align:center}.no-cases-icon{font-size:4rem;margin-bottom:20px}.no-cases h4{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:10px}.no-cases p{font-size:1rem}.cases-list{grid-gap:20px;display:grid;gap:20px}.case-card{background:#fff;border:1px solid #f3f4f6;border-radius:12px;padding:25px;transition:transform .2s,box-shadow .2s}.case-card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-2px)}.case-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.case-number{color:var(--primary-color);font-size:.9rem;font-weight:600;margin-bottom:5px}.case-subject{color:var(--text-primary);font-size:1.2rem;font-weight:600}.status-badge{border-radius:20px;font-size:.85rem;font-weight:600;padding:6px 12px}.case-meta{display:flex;font-size:.9rem;gap:20px;margin-bottom:15px}.priority{border-radius:12px;font-size:.8rem;font-weight:600;margin-left:8px;padding:2px 8px}.priority-low{background:#e3f2fd;color:#1976d2}.priority-medium{background:#fff3cd;color:#856404}.priority-high{background:#ffeaa7;color:#d63031}.priority-critical{background:#fdcae1;color:#e84393}.case-description{color:var(--text-secondary);line-height:1.6;margin-bottom:15px}.case-resolution{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:15px;padding:15px}.case-resolution strong{color:#166534;display:block;margin-bottom:8px}.resolution-content{color:#166534;line-height:1.5}.case-dates{border-top:1px solid #f3f4f6;color:#9ca3af;display:flex;font-size:.85rem;justify-content:space-between;padding-top:15px}.provider-profile{margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.profile-container-wide{width:100%}.profile-header{border-bottom:2px solid #f3f4f6;margin-bottom:30px;padding-bottom:20px}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.profile-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;flex:1 1;font-size:2rem;font-weight:600;margin:0}.edit-profile-main-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 25px;transition:all .2s ease;white-space:nowrap}.edit-profile-main-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 6px 16px #f59e0b66;transform:translateY(-2px)}.edit-actions{align-items:center;display:flex;gap:15px}.save-profile-btn{background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:8px;box-shadow:0 4px 12px #16a34a4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 25px;transition:all .2s ease;white-space:nowrap}.save-profile-btn:hover{background:linear-gradient(135deg,#15803d,#166534);box-shadow:0 6px 16px #16a34a66;transform:translateY(-2px)}.cancel-profile-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;box-shadow:0 4px 12px #dc26264d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 25px;transition:all .2s ease;white-space:nowrap}.cancel-profile-btn:hover{background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 6px 16px #dc262666;transform:translateY(-2px)}.availability-section-full-width{background:#fff;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 4px 15px #00000014;margin-bottom:30px;padding:30px;transition:box-shadow .2s ease}.availability-section-full-width:hover{box-shadow:0 8px 25px #0000001f}.provider-content{grid-gap:30px;display:grid;gap:30px}.availability-section-container,.profile-section-container,.stripe-connect-section-container{background:#fff;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 4px 15px #00000014;padding:30px;transition:box-shadow .2s ease}.availability-section-container:hover,.profile-section-container:hover,.stripe-connect-section-container:hover{box-shadow:0 8px 25px #0000001f}.section-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.section-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.edit-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border:none!important;border-radius:8px;box-shadow:0 2px 8px #2563eb4d;color:#fff!important;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;line-height:1.2;min-width:120px;padding:12px 24px;text-align:center;text-decoration:none;transition:all .2s ease;white-space:nowrap}.edit-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)!important;box-shadow:0 4px 12px #2563eb66;color:#fff!important;transform:translateY(-2px)}.edit-btn:focus{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;outline:2px solid #93c5fd;outline-offset:2px}.profile-display{grid-gap:25px;display:grid;gap:25px}.profile-section{background:#f8fafc;border-left:4px solid var(--primary-color);border-radius:12px;padding:20px}.profile-section h3{font-size:1.2rem;margin-bottom:15px}.profile-section h3,.profile-section h4{color:var(--text-primary);font-weight:600}.profile-section h4{font-size:1.1rem;margin-bottom:8px}.profile-section p{color:var(--text-secondary);line-height:1.6;margin-bottom:10px}.profile-section p:last-child{margin-bottom:0}.profile-section strong{color:var(--text-primary);font-weight:600}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.edit-form .form-group,.form-row{margin-bottom:20px}.edit-form label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.edit-form input,.edit-form select,.edit-form textarea{background:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.edit-form input:focus,.edit-form select:focus,.edit-form textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.edit-form small{color:#9ca3af;display:block;font-size:.85rem;margin-top:5px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{border-radius:20px;font-size:.85rem;font-weight:500;padding:6px 12px}.skill-tag{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;color:#1e40af}.expertise-tag{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;color:#166534}.language-tag{background:linear-gradient(135deg,#fef7ff,#fae8ff);border:1px solid #e9d5ff;color:#a21caf}.video-intro iframe{border:2px solid #e5e7eb;border-radius:8px}.certifications-list{grid-gap:15px;display:grid;gap:15px}.certification-display{background:#fff;border:2px solid #f3f4f6;border-radius:8px;padding:15px;transition:border-color .2s ease}.certification-display:hover{border-color:var(--primary-color)}.cert-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.cert-header h4{color:var(--text-primary);margin:0}.cert-year{background:var(--primary-color);border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 8px}.cert-issuer{color:#6b7280;font-weight:500;margin-bottom:8px}.cert-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.stripe-connect-status{display:flex;flex-direction:column;gap:20px}.stripe-connected,.stripe-not-connected{align-items:center;border:2px solid #f3f4f6;border-radius:12px;display:flex;gap:20px;padding:20px}.stripe-not-connected{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fecaca}.stripe-connected{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.status-info{align-items:center;display:flex;flex:1 1;gap:15px}.status-icon{font-size:2.5rem}.status-text h4{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin-bottom:8px}.status-text p{color:#6b7280;margin:0}.connect-details{margin-top:15px}.connect-details p{font-size:.9rem;margin-bottom:5px}.requirements-notice{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626!important;font-weight:500!important;margin-top:10px;padding:8px}.complete-setup-btn,.setup-stripe-btn{background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.complete-setup-btn:hover,.setup-stripe-btn:hover{background:linear-gradient(135deg,#15803d,#166534);transform:translateY(-1px)}.complete-setup-btn:disabled,.setup-stripe-btn:disabled{cursor:not-allowed;opacity:.6}.bank-account-section-container{background:#fff;border:2px solid #f3f4f6;border-radius:12px;margin-bottom:20px;padding:30px;transition:border-color .2s ease}.bank-account-section-container:hover{border-color:#e5e7eb}.bank-account-section-container .section-header{border-bottom:2px solid #f3f4f6;margin-bottom:20px;padding-bottom:15px}.bank-account-section-container .section-header h3{color:var(--text-primary);font-size:1.4rem;font-weight:600;margin:0}.bank-details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:25px}.bank-detail-item{display:flex;flex-direction:column;gap:5px}.bank-detail-item label{color:#374151;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.bank-detail-item span{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:6px;color:#1f2937;font-size:1rem;font-weight:500;padding:8px 12px}.bank-account-info{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e1;border-radius:8px;margin-top:15px;padding:15px}.bank-account-info h5{border-bottom:1px solid #cbd5e1;color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:10px;padding-bottom:5px}.bank-account-info p{color:#475569;font-size:.9rem;margin-bottom:5px}.change-bank-account-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:10px;padding:8px 16px;transition:all .2s ease}.change-bank-account-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px)}.change-bank-account-btn:disabled{cursor:not-allowed;opacity:.6}.bank-account-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.bank-account-modal .modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:500px;overflow-y:auto;padding:0;width:90%}.bank-account-modal .modal-header{align-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px}.bank-account-modal .modal-header h3{font-size:1.3rem;font-weight:600;margin:0}.bank-account-modal .close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:30px;justify-content:center;padding:0;transition:background-color .2s ease;width:30px}.bank-account-modal .close-btn:hover{background:#ffffff1a}.bank-account-modal .modal-body{padding:30px}.bank-account-modal .form-group{margin-bottom:20px}.bank-account-modal .form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:5px}.bank-account-modal .form-group input,.bank-account-modal .form-group select{border:2px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-size:1rem;padding:12px;transition:border-color .2s ease;width:100%}.bank-account-modal .form-group input:focus,.bank-account-modal .form-group select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.bank-account-modal .form-group small{color:#6b7280;display:block;font-size:.8rem;margin-top:5px}.bank-account-modal .modal-footer{display:flex;gap:15px;justify-content:flex-end;padding:20px 30px 30px}.bank-account-modal .btn-cancel{background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.bank-account-modal .btn-cancel:hover{background:#f8fafc;border-color:#cbd5e1}.bank-account-modal .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.bank-account-modal .btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.bank-account-modal .btn-primary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1024px){.provider-content{grid-template-columns:1fr}.availability-section{position:static}}@media (max-width:768px){.provider-profile-view{padding:1rem}.provider-header{gap:1.5rem;grid-template-columns:1fr;padding:2rem 1.5rem;text-align:center}.provider-actions,.provider-image{justify-self:center}.provider-basic-info h1{font-size:2rem}.hourly-rate{font-size:1.5rem}.availability-section-full{padding:1.5rem}.availability-actions{flex-direction:column;gap:.75rem}.availability-actions button{width:100%}.availability-section-full .calendar-day{min-height:50px;padding:6px}.availability-section-full .day-header{font-size:.8rem;padding:6px}.availability-section-full .availability-item{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.75rem}.availability-section-full .availability-date{min-width:auto;text-align:left}.bank-details-grid{gap:15px;grid-template-columns:1fr}.bank-account-section-container{padding:20px}.reviews-ratings-page{padding:15px}.reviews-grid,.reviews-summary{grid-template-columns:1fr}.rating-number{font-size:3rem}.reviews-container .reviews-header h2{font-size:2rem}.review-header{align-items:flex-start;flex-direction:column;gap:.5rem}.review-date{margin-left:0}.account-settings{padding:15px}.account-container .account-header h2{font-size:2rem}.profile-picture-section{align-items:center;flex-direction:column;text-align:center}.form-actions button{width:100%}.info-item{align-items:flex-start;flex-direction:column;gap:8px}.info-item span{text-align:left}.profile-setup{padding:15px}.profile-setup-container h2{font-size:2rem}.checkbox-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.cert-row{gap:10px;grid-template-columns:1fr}.help-support{padding:15px}.support-container .support-header h2{font-size:2rem}.case-header{align-items:flex-start}.case-header,.case-meta{flex-direction:column;gap:10px}.case-dates{flex-direction:column;gap:5px}.provider-profile{padding:15px}.header-content{flex-direction:column;gap:15px;text-align:center}.profile-header h2{font-size:2rem}.edit-actions{flex-direction:column;gap:10px}.cancel-profile-btn,.edit-profile-main-btn,.save-profile-btn{text-align:center;width:100%}.availability-section-container,.availability-section-full-width,.profile-section-container,.stripe-connect-section-container{padding:20px}.section-header{align-items:flex-start;flex-direction:column;gap:15px}.form-row{grid-template-columns:1fr}.status-info,.stripe-connected,.stripe-not-connected{flex-direction:column;text-align:center}.tags{justify-content:center}.cert-header{align-items:flex-start;flex-direction:column;gap:8px}.sidebar{transform:translateX(-100%);transition:transform .3s ease}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0}.dashboard-header{padding:2rem 1rem}.dashboard-header h1{font-size:2rem}.dashboard-main{padding:1rem}.dashboard-grid,.theme-grid{grid-template-columns:1fr}.availability-tabs{flex-wrap:wrap}.modal-content{margin:1rem;padding:1.5rem}.homepage-filters-old{flex-direction:column;gap:1rem}.providers-grid-old{grid-template-columns:1fr}.sessions-actions{flex-direction:column;gap:.5rem}}.dashboard-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr;margin:0 auto;max-width:1200px;min-width:800px;width:100%}.dashboard-left,.dashboard-right{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.dashboard-left{padding:2rem}.dashboard-right{display:flex;flex-direction:column;gap:1.5rem}.find-provider-section h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem}.find-provider-section p{color:#6b7280;font-size:.95rem;margin:0 0 1.5rem}.homepage-filters{align-items:end;display:flex;gap:1rem;margin-bottom:1.5rem}.homepage-filters .search-bar{flex:1 1}.homepage-filters .filter-group{min-width:160px}.homepage-filters .search-input{box-sizing:border-box;height:42px;padding:8px 20px}.homepage-filters .form-select{box-sizing:border-box;height:42px;padding:8px 16px}.homepage-filters .btn-secondary{align-self:end;height:42px;white-space:nowrap}.homepage-providers{min-height:300px}.providers-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.provider-card-mini{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .2s ease}.provider-card-mini:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a}.provider-card-mini .provider-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.provider-card-mini .provider-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.provider-card-mini .provider-avatar img{height:100%;object-fit:cover;width:100%}.provider-card-mini .avatar-placeholder{align-items:center;background:#3b82f6;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:100%;justify-content:center;width:100%}.provider-card-mini .provider-info h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 .25rem}.provider-card-mini .provider-rating{align-items:center;display:flex;gap:.25rem}.provider-card-mini .rating-stars{color:#fbbf24;font-size:.75rem}.provider-card-mini .rating-text{color:#6b7280;font-size:.75rem}.provider-card-mini .provider-rate{color:#059669;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.view-profile-btn-mini{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease;width:100%}.view-profile-btn-mini:hover{background:#e5e7eb;border-color:#9ca3af}.link-btn{background:none;border:none;color:#3b82f6;cursor:pointer;font:inherit;text-decoration:underline}.link-btn:hover{color:#2563eb}.provider-widget,.upcoming-sessions{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.become-provider-widget,.provider-profile-widget{text-align:center}.become-provider-widget h3,.provider-profile-widget h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.become-provider-widget p,.provider-profile-widget p{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.upcoming-sessions h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.sessions-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.session-card-mini{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.session-card-mini .session-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.session-card-mini .session-info h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 .25rem}.session-card-mini .session-role{color:#6b7280;font-size:.75rem;font-style:italic}.session-card-mini .session-status{border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.session-card-mini .session-details p{color:#6b7280;font-size:.8rem;margin:0}.session-card-mini .session-partner{color:#374151;font-weight:500}.sessions-actions{display:flex;gap:.5rem}.sessions-actions .btn-secondary{flex:1 1;font-size:.875rem;padding:.5rem 1rem}.no-sessions{padding:1.5rem 0;text-align:center}.no-sessions p{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.no-sessions .btn-secondary{font-size:.875rem}.login-prompt{padding:1.5rem 0;text-align:center}.login-prompt p{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.login-prompt .btn-primary{font-size:.875rem}.legal-page{margin:0 auto;max-width:1200px}.legal-header,.legal-page{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.legal-header{border:1px solid #e2e8f0;margin-bottom:2rem;text-align:center}.legal-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:600;margin:0 0 .5rem}.legal-header p{color:#6b7280;font-size:1rem;margin:0}.legal-content h1{border-bottom:3px solid #3b82f6;color:#1f2937;font-size:2rem;font-weight:600;margin:0 0 .5rem;padding-bottom:1rem}.legal-content .last-updated{color:#6b7280;font-size:.9rem;font-style:italic;margin-bottom:2rem}.legal-content section{margin-bottom:2rem}.legal-content h2{border-left:4px solid #3b82f6;color:#374151;font-size:1.5rem;font-weight:600;margin:2rem 0 1rem;padding-left:1rem}.legal-content h3{color:#4b5563;font-size:1.25rem;font-weight:600;margin:1.5rem 0 .75rem}.legal-content p{color:#374151;line-height:1.6;margin-bottom:1rem}.legal-content ul{margin:1rem 0;padding-left:1.5rem}.legal-content li{color:#374151;line-height:1.6;margin-bottom:.5rem}.legal-content strong{color:#1f2937;font-weight:600}.legal-links{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.legal-link{color:#6b7280;font-size:.875rem;padding:.5rem 1rem}.legal-link:hover{background:#f3f4f6;color:#374151}.legal-link.active{background:#dbeafe;color:#3b82f6}.legal-link .nav-label{font-size:.875rem}@media (max-width:768px){.legal-page{margin:.5rem;padding:1rem}.legal-content h1{font-size:1.75rem}.legal-content h2{font-size:1.25rem}.legal-content h3{font-size:1.125rem}}.checkout-loading-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.checkout-loading-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;padding:3rem 2rem;text-align:center;width:90%}.checkout-loading-content .loading-icon{animation:pulse 2s infinite;font-size:48px;margin-bottom:16px}.checkout-loading-content h3{color:#111827;font-size:20px;font-weight:600;margin:0 0 12px}.checkout-loading-content p{color:#6b7280;font-size:16px;margin:0}.validation-error{color:#dc2626!important;font-weight:500!important}.password-requirements{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:15px;margin-top:15px;padding:15px}.requirements-title{color:#475569;font-size:.9rem;font-weight:600;margin:0 0 10px}.requirements-list{list-style:none;margin:0;padding:0}.requirements-list li{align-items:center;display:flex;font-size:.85rem;font-weight:500;margin-bottom:8px;padding:4px 0}.requirements-list li:last-child{margin-bottom:0}.requirements-list li.valid{color:#059669}.requirements-list li.valid:before{content:"✓";font-size:1rem;font-weight:700;margin-right:8px}.requirements-list li.invalid{color:#6b7280}.requirements-list li.invalid:before{content:"○";font-size:1rem;font-weight:700;margin-right:8px}.password-input-container{align-items:center;display:flex;margin-bottom:20px;position:relative}.password-input-container input{margin-bottom:0;padding-right:50px;width:100%}.password-toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:4px;position:absolute;right:12px;transition:all .2s ease;z-index:1}.password-toggle-btn:hover{background-color:#f1f5f9;color:#374151}.password-toggle-btn:focus{outline:2px solid #2563eb;outline-offset:2px}.mobile-menu-btn{background:#3b82f6;border:none;border-radius:8px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;left:1rem;padding:.75rem;position:fixed;top:1rem;transition:all .3s ease;z-index:1001}.mobile-menu-btn:hover{background:#2563eb;box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.hamburger{height:18px;position:relative;transition:all .3s ease;width:24px}.hamburger span{background:currentColor;border-radius:2px;display:block;height:3px;left:0;opacity:1;position:absolute;transform:rotate(0deg);transition:all .25s ease-in-out;width:100%}.hamburger span:first-child{top:0}.hamburger span:nth-child(2){top:7px}.hamburger span:nth-child(3){top:14px}.hamburger.active span:first-child{top:7px;transform:rotate(135deg)}.hamburger.active span:nth-child(2){left:-60px;opacity:0}.hamburger.active span:nth-child(3){top:7px;transform:rotate(-135deg)}.mobile-overlay{animation:fadeIn .3s ease-in-out forwards;background:#00000080;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;z-index:999}@keyframes fadeIn{to{opacity:1}}@media (max-width:1024px){.app-layout{position:relative}.main-content{margin-left:0;transition:transform .3s ease}.main-content.mobile-menu-open{transform:translateX(280px)}.sidebar.mobile{transform:translateX(-100%);transition:transform .3s ease;z-index:1000}.sidebar.mobile.open{transform:translateX(0)}}@media (max-width:768px){.main-content{padding:1rem}.admin-dashboard-grid,.conversation-search-container,.dashboard-container,.dashboard-grid,.provider-actions,.provider-cards,.provider-header,.search-section,.session-details{gap:1rem;grid-template-columns:1fr!important}.provider-header{gap:1.5rem;padding:2rem 1rem;text-align:center}.provider-image{justify-self:center;margin-bottom:1rem}.provider-actions{grid-template-columns:1fr 1fr!important;justify-self:center;width:100%}.provider-card .provider-actions{gap:.5rem;grid-template-columns:1fr!important}.provider-card .book-session-btn,.provider-card .message-btn,.provider-card .view-profile-btn{width:100%}.search-section{margin-bottom:1rem}.search-bar{flex-direction:column;gap:.5rem}.filter-section{gap:1rem;grid-template-columns:1fr!important}.dashboard-container{display:flex;flex-direction:column}.dashboard-left{margin-bottom:1rem;order:1}.dashboard-right{order:2}.homepage-filters{flex-direction:column;gap:1rem}.providers-grid{gap:1rem;grid-template-columns:1fr!important}.admin-stats-grid{gap:1rem;grid-template-columns:1fr 1fr!important}.conversation-search-container,.session-details{padding:1rem}.session-header{align-items:flex-start;flex-direction:column;gap:1rem}.account-section{padding:1.5rem}.section-header{align-items:stretch;flex-direction:column;gap:1rem}.profile-picture-section{flex-direction:column;gap:1rem;text-align:center}.form-actions{flex-direction:column;gap:.75rem}.form-actions button{width:100%}.btn-group{flex-direction:column;gap:.5rem}.btn-group button{width:100%}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.card,.container,.page-container{padding:1rem}.card{margin-bottom:1rem}.modal-content{margin:1rem;max-width:calc(100vw - 2rem)}.table-responsive{overflow-x:auto}table{min-width:600px}}@media (min-width:769px) and (max-width:1024px){.main-content{padding:1.5rem}.provider-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.admin-dashboard-grid,.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.search-section{gap:1rem;grid-template-columns:2fr 1fr}.provider-header{grid-template-columns:auto 1fr auto;padding:2rem 1.5rem}.messages-container{grid-template-columns:300px 1fr}.provider-actions,.providers-grid{grid-template-columns:1fr 1fr!important}}@media (min-width:1400px){.main-content{margin-left:auto;margin-right:auto;max-width:1400px;padding-left:280px}.provider-cards{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width:480px){.mobile-menu-btn{left:.75rem;padding:.5rem;top:.75rem}.hamburger{height:15px;width:20px}.main-content{padding:.75rem}.dashboard-grid,.provider-cards{gap:.75rem}.account-section,.card,.session-card{padding:1rem}h1{font-size:1.5rem}h2{font-size:1.25rem}.btn{font-size:.875rem;padding:.75rem 1rem}.modal-content{margin:.5rem;max-width:calc(100vw - 1rem)}}.pending-sessions-section{margin:0 auto;max-width:1200px;padding:0 1.5rem 2rem}.pending-sessions-widget{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #0000000d;overflow:hidden}.pending-sessions-widget .widget-header{background:linear-gradient(135deg,#3b82f6,#2563eb);border-bottom:1px solid #e2e8f0;color:#fff;padding:1.5rem 2rem}.pending-sessions-widget .widget-header h2{font-size:1.5rem;font-weight:600;margin:0 0 .25rem}.pending-sessions-widget .widget-header p{color:#dbeafe;font-size:.95rem;margin:0}.pending-sessions-widget .widget-content{padding:2rem}.pending-sessions-widget .loading-state,.pending-sessions-widget .no-pending{color:#64748b;padding:2rem;text-align:center}.pending-sessions-widget .no-pending .sub-text{color:#94a3b8;display:block;font-size:.875rem;margin-top:.5rem}.pending-sessions-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.pending-session-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:1.5rem;transition:all .2s ease}.pending-session-card:hover{border-color:#cbd5e1;box-shadow:0 8px 25px #00000014;transform:translateY(-1px)}.pending-session-card .session-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.pending-session-card .session-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.pending-session-card .booking-time{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.pending-session-card .session-details{margin-bottom:1.5rem}.pending-session-card .session-details p{color:#475569;font-size:.9rem;margin:.5rem 0}.pending-session-card .session-details strong{color:#1e293b;font-weight:600}.pending-session-card .session-notes{background:#f8fafc;border-left:3px solid #3b82f6;border-radius:8px;font-style:italic;padding:.75rem}.pending-session-card .session-actions{display:flex;flex-wrap:wrap;gap:1rem}.btn-confirm{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;min-width:140px;padding:1rem 1.5rem;transition:all .2s ease}.btn-confirm:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-confirm:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.past-session-notice{width:100%}.past-session-message{align-items:flex-start;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.past-session-icon{color:#dc2626;flex-shrink:0;font-size:1.25rem;margin-top:.125rem}.past-session-message div{flex:1 1}.past-session-message strong{color:#dc2626;display:block;font-weight:600;margin-bottom:.25rem}.past-session-message p{color:#7f1d1d;font-size:.875rem;margin:0}.past-session-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-hide{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.btn-hide:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.btn-hide:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.btn-small{font-size:.875rem;padding:.5rem 1rem}.pending-sessions-widget .view-more{margin-top:1.5rem;text-align:center}@media (max-width:768px){.pending-sessions-section{padding:0 1rem 1.5rem}.pending-sessions-widget .widget-header{padding:1rem 1.5rem}.pending-sessions-widget .widget-content{padding:1.5rem}.pending-sessions-list{gap:1rem;grid-template-columns:1fr}.pending-session-card{padding:1rem}.pending-session-card .session-header{align-items:flex-start;flex-direction:column;gap:.5rem}.past-session-actions,.pending-session-card .session-actions{flex-direction:column}.btn-confirm{min-width:auto}}.weekly-availability-selector{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:2rem}.weekly-availability-selector .availability-header{border-bottom:1px solid #f1f5f9;margin-bottom:1rem;padding-bottom:.75rem}.weekly-availability-selector .availability-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.weekly-availability-selector .availability-header p{color:#64748b;font-size:.95rem;margin:0}.timezone-selector{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem;padding:.75rem}.timezone-display{align-items:center;display:flex}.timezone-label{color:#475569;font-size:.9rem;font-weight:500}.days-container{margin-bottom:1.5rem}.weekly-hours-container{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 300px}.weekly-hours-right{position:-webkit-sticky;position:sticky;top:2rem}.day-row{border-bottom:1px solid #f1f5f9;padding:1rem 0}.day-row:last-child{border-bottom:none}.day-header{justify-content:space-between;margin-bottom:.75rem}.day-header,.day-info{align-items:center;display:flex}.day-info{gap:1rem}.day-circle{align-items:center;background:#3b82f6;border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:32px;justify-content:center;width:32px}.day-label{color:#1e293b;font-size:1rem;font-weight:500;min-width:100px}.unavailable-btn{background:#f1f5f9;border:1px solid #d1d5db;border-radius:8px;color:#64748b;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s ease}.unavailable-btn.inactive{background:#e2e8f0;color:#94a3b8}.unavailable-btn:hover{background:#e2e8f0;border-color:#9ca3af}.time-slots-container{margin-left:48px;padding-top:.5rem}.time-slot-row{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.time-slot-row:last-child{margin-bottom:0}.time-inputs{align-items:center;display:flex;gap:.75rem}.time-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:.875rem;padding:.375rem .5rem;width:100px}.time-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.time-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:.375rem 2.5rem .375rem .5rem;width:120px}.time-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.time-select:hover{border-color:#9ca3af}.time-separator{color:#6b7280;font-weight:500}.slot-actions{display:flex;gap:.5rem}.add-slot-btn,.remove-slot-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;height:24px;justify-content:center;transition:all .2s ease;width:24px}.remove-slot-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.add-slot-btn:hover{background:#dbeafe;border-color:#93c5fd;color:#2563eb}.availability-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.availability-summary h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.summary-list{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.summary-item{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.summary-day{color:#374151;font-weight:500;min-width:80px}.summary-times{color:#059669;font-weight:500}.summary-unavailable{color:#9ca3af;font-style:italic}.save-availability-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 4px 12px #3b82f633;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .2s ease}.save-availability-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 25px #3b82f64d;transform:translateY(-1px)}.save-availability-btn:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.availability-tabs{border-bottom:2px solid #f1f5f9;display:flex;margin-bottom:2rem}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 1.5rem;transition:all .2s ease}.tab-button:hover{color:#3b82f6}.tab-button.active{border-bottom-color:#3b82f6;color:#3b82f6;font-weight:600}.unavailable-day-actions{margin-left:48px;margin-top:.25rem}.add-hours-btn{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease}.add-hours-btn:hover{background:#dbeafe;border-color:#93c5fd;color:#2563eb}.oneoff-availability .section-header{border-bottom:1px solid #f1f5f9;margin-bottom:2rem;padding:1.5rem 0}.oneoff-availability .section-header h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.oneoff-availability .section-header p{color:#64748b;font-size:.95rem;margin:0 0 1rem}.add-slot-btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.add-slot-btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.availability-slots{grid-gap:1.5rem;display:grid;gap:1.5rem}.availability-slot{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:1.5rem}.slot-controls{margin-bottom:1rem}.toggle-label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.toggle-text{color:#374151;font-weight:500}.slot-config{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.date-selector,.time-range{display:flex;flex-direction:column;gap:.5rem}.date-selector label,.time-range label{color:#374151;font-size:.875rem;font-weight:500}.date-selector input,.time-range input{border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:.875rem;padding:.5rem .75rem}.date-selector input:focus,.time-range select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.time-range select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem 2.5rem .5rem .75rem;width:100%}.slot-preview{background:#f8fafc;border-radius:8px;color:#475569;font-size:.875rem;grid-column:1/-1;margin-top:1rem;padding:.75rem}.remove-slot-btn-large{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;justify-self:end;padding:.5rem 1rem;transition:all .2s ease}.remove-slot-btn-large:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.no-slots{color:#64748b;font-style:italic;padding:3rem;text-align:center}@media (max-width:768px){.weekly-availability-selector{padding:1.5rem}.weekly-hours-container{gap:1.5rem;grid-template-columns:1fr}.weekly-hours-right{position:static}.day-header{align-items:flex-start;flex-direction:column;gap:1rem}.day-info{gap:.75rem}.day-circle{font-size:.75rem;height:32px;width:32px}.time-slots-container{margin-left:0;padding-top:1rem}.time-slot-row{align-items:flex-start;flex-direction:column;gap:.75rem}.time-inputs{width:100%}.time-input{width:100px}.time-select{width:110px}.summary-list{grid-template-columns:1fr}.summary-item{align-items:flex-start;flex-direction:column;gap:.25rem}}.admin-breadcrumb{margin-bottom:1rem}.breadcrumb-link{align-items:center;background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.breadcrumb-link:hover{background:#eff6ff;color:#1d4ed8}.provider-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;margin:.75rem 0;padding:.75rem}.provider-details>div{align-items:flex-start;display:flex;gap:.5rem;margin-bottom:.5rem}.provider-details>div:last-child{margin-bottom:0}.provider-details strong{color:#374151;font-weight:600;min-width:-webkit-fit-content;min-width:fit-content;white-space:nowrap}.provider-details span{color:#6b7280;line-height:1.4}.provider-skills strong{color:#059669}.provider-languages strong{color:#3b82f6}.provider-expertise strong{color:#7c3aed}.provider-card-mini{display:flex;flex-direction:column;gap:.75rem}@media (max-width:768px){.provider-details{font-size:.8rem;padding:.5rem}.provider-details>div{flex-direction:column;gap:.25rem}.provider-details strong{white-space:normal}}
/*# sourceMappingURL=main.c8dae272.css.map*/