.profile-overview__card{max-width:600px}.profile-overview__form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.profile-overview__field{display:flex;flex-direction:column;gap:.35rem}.profile-overview__field--full{grid-column:1 / -1}.profile-overview__readonly-with-status{display:flex;align-items:center;gap:.5rem}.profile-overview__readonly-with-status input{flex:1}.profile-overview__status-icon{width:1.15rem;height:1.15rem;flex:0 0 auto}.profile-overview__status-icon--verified{color:#16a34a}.profile-overview__status-icon--unverified{color:#dc2626}.profile-overview__inline-btn{padding:.45rem .7rem;font-size:.78rem;white-space:nowrap}.profile-overview__sms-verify{margin-top:.5rem;display:flex;gap:.5rem}.profile-overview__sms-verify input{max-width:170px}.profile-overview__avatar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-top:.5rem;font-size:.78rem;color:#6b7280}.profile-overview__avatar-file-input{display:none}.profile-overview__avatar-editor{display:grid;grid-template-columns:180px 1fr;gap:1rem;margin-top:.75rem}.profile-overview__crop-frame{width:180px;height:180px;border-radius:999px;overflow:hidden;border:1px solid #d1d5db;background:#f3f4f6;position:relative;touch-action:none}.profile-overview__crop-image{position:absolute;left:0;top:0;object-fit:cover;transform-origin:center;cursor:grab;-webkit-user-select:none;user-select:none}.profile-overview__crop-image--dragging{cursor:grabbing}.profile-overview__crop-controls{display:flex;flex-direction:column;gap:.65rem}.profile-overview__crop-controls label{display:flex;flex-direction:column;gap:.35rem;font-size:.78rem;color:#4b5563}.profile-overview__crop-controls input[type=range]{width:100%}.profile-overview__crop-nudge{display:flex;gap:.35rem;flex-wrap:wrap}.profile-overview__source-preview-wrap{display:flex;flex-direction:column;gap:.35rem;font-size:.78rem;color:#4b5563}.profile-overview__source-preview{width:100%;max-width:220px;max-height:120px;object-fit:contain;border:1px solid #d1d5db;border-radius:6px;background:#f9fafb}.profile-overview__modal-backdrop{position:fixed;inset:0;background:#11182780;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000}.profile-overview__modal{width:min(920px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 20px 40px #0003;padding:1rem}.profile-overview__modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.profile-overview__modal-header h3{margin:0;font-size:1rem;color:#111827}.profile-overview__modal-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}.profile-overview__avatar-preview{margin-top:.65rem;width:120px;height:120px;border-radius:999px;object-fit:cover;border:1px solid #d1d5db}.profile-overview__meta{margin-top:.25rem;padding:.85rem 1rem;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;display:grid;grid-template-columns:1fr 1fr;gap:.45rem 1rem;font-size:.85rem;color:#374151}.profile-overview__field label{font-size:.8rem;font-weight:600;color:#374151}.profile-overview__field input,.profile-overview__field textarea{padding:.55rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.profile-overview__field input:focus,.profile-overview__field textarea:focus{outline:none;border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 3px #6366f11a}.profile-overview__field textarea{resize:vertical;min-height:80px}.profile-overview__field input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.profile-overview__actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e5e7eb;grid-column:1 / -1}.profile-overview__btn{padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.35rem;text-decoration:none}.profile-overview__btn--primary{background:var(--color-primary, #6366f1);color:#fff}.profile-overview__btn--primary:hover{opacity:.9}.profile-overview__btn--primary:disabled{opacity:.5;cursor:not-allowed}.profile-overview__btn--secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.profile-overview__btn--secondary:hover{background:#f3f4f6}.profile-overview__success{padding:.75rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#166534;font-size:.85rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.profile-overview__error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.85rem;margin-bottom:1rem}.profile-overview__loading{padding:2rem;text-align:center;color:#6b7280;font-size:.9rem}@media(max-width:768px){.profile-overview__form,.profile-overview__meta{grid-template-columns:1fr}.profile-overview__readonly-with-status{flex-wrap:wrap}.profile-overview__sms-verify{flex-direction:column}.profile-overview__avatar-editor{grid-template-columns:1fr}}.dashboard{max-width:1000px;margin:0 auto}.dashboard__header{margin-bottom:var(--spacing-2xl)}.dashboard__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-xs)}.dashboard__subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin:0}.dashboard__loading,.dashboard__error{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.dashboard__error{background:var(--color-danger-light);border:1px solid var(--color-danger);border-radius:var(--component-radius);color:var(--color-danger)}.dashboard__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--component-radius);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-card__icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.metric-card__icon--blue{background:var(--color-primary)}.metric-card__icon--yellow{background:var(--color-warning)}.metric-card__icon--green{background:var(--color-success)}.metric-card__content{flex:1}.metric-card__value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.metric-card__label{font-size:var(--font-size-sm);color:var(--text-secondary)}.dashboard__quick-actions{margin-bottom:var(--spacing-2xl)}.dashboard__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-md)}.dashboard__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.quick-action{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--component-radius);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.quick-action:hover{background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.quick-action svg{color:var(--color-primary)}.quick-action span{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.dashboard__bookings{margin-bottom:var(--spacing-2xl)}.booking-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.booking-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--component-radius);padding:var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);transition:box-shadow var(--transition-fast)}.booking-card:hover{box-shadow:var(--shadow-sm)}.booking-card__main{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.booking-card__icon{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.booking-card__info{flex:1;min-width:0}.booking-card__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-card__details{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-secondary)}.booking-card__date,.booking-card__time{display:flex;align-items:center;gap:var(--spacing-xs)}.booking-card__facility{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--spacing-xs)}.booking-card__status{flex-shrink:0}.dashboard__empty{text-align:center;padding:var(--spacing-3xl);color:var(--text-secondary)}.dashboard__empty svg{color:var(--text-tertiary);margin-bottom:var(--spacing-md)}.dashboard__empty p{font-size:var(--font-size-lg);margin:0 0 var(--spacing-lg)}.text-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);transition:color var(--transition-fast)}.text-link:hover{color:var(--color-primary-dark);text-decoration:underline}@media(max-width:768px){.dashboard__metrics{grid-template-columns:1fr}.dashboard__quick-actions{gap:var(--spacing-sm)}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.booking-card{flex-direction:column;align-items:flex-start}.booking-card__main,.booking-card__status{width:100%}.dashboard__section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}@media(max-width:480px){.dashboard__title{font-size:var(--font-size-xl)}.metric-card{padding:var(--spacing-md)}.metric-card__value{font-size:var(--font-size-xl)}.quick-actions{grid-template-columns:1fr}}.dashboard__invoices{margin-top:2rem}.invoice-list{display:flex;flex-direction:column;gap:.75rem}.invoice-card{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--bg-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease}.invoice-card:hover{background:var(--bg-tertiary);transform:translateY(-1px)}.invoice-card__main{display:flex;align-items:center;gap:1rem}.invoice-card__icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.invoice-card__info{display:flex;flex-direction:column;gap:.25rem}.invoice-card__title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0}.invoice-card__details{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:var(--text-secondary)}.invoice-card__amount{font-weight:500;color:var(--text-primary)}.invoice-card__status{display:flex;align-items:center}.status--paid{background:var(--color-success-light);color:var(--color-success)}.status--sent{background:var(--color-info-light);color:var(--color-info)}.status--overdue{background:var(--color-danger-light);color:var(--color-danger)}.status--draft{background:var(--bg-tertiary);color:var(--text-secondary)}.status--partially-paid{background:var(--color-warning-light);color:var(--color-warning)}.status--cancelled,.status--credit-noted{background:var(--bg-tertiary);color:var(--text-tertiary)}.change-password__card{max-width:500px}.change-password__form{display:flex;flex-direction:column;gap:1rem}.change-password__field{display:flex;flex-direction:column;gap:.35rem}.change-password__field label{font-size:.8rem;font-weight:600;color:#374151}.change-password__field input{padding:.55rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.change-password__field input:focus{outline:none;border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 3px #6366f11a}.change-password__strength{margin-top:.25rem;padding:.35rem .5rem;border-radius:4px;font-size:.75rem;display:flex;align-items:center;gap:.4rem}.change-password__strength--weak{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.change-password__strength--fair{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.change-password__strength--good{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.change-password__strength--strong{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.change-password__actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.change-password__btn{padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.35rem;text-decoration:none}.change-password__btn--primary{background:var(--color-primary, #6366f1);color:#fff}.change-password__btn--primary:hover{opacity:.9}.change-password__btn--primary:disabled{opacity:.5;cursor:not-allowed}.change-password__btn--secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.change-password__btn--secondary:hover{background:#f3f4f6}.change-password__success{padding:.75rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#166534;font-size:.85rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.change-password__error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.85rem;margin-bottom:1rem}.change-password__loading{padding:2rem;text-align:center;color:#6b7280;font-size:.9rem}
