#profile-modal {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.75);
      z-index: 99000;
      align-items: flex-end;
      justify-content: center;
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
    }

    #profile-modal.active {
      display: flex;
    }

    @media (min-width: 640px) {
      #profile-modal {
        align-items: center;
      }

      .prof-modal-box {
        border-radius: 22px !important;
        max-height: 85vh !important;
      }
    }

    .prof-modal-box {
      background: #0f0f0f;
      width: 100%;
      max-width: 480px;
      max-height: 92vh;
      overflow-y: auto;
      border-radius: 22px 22px 0 0;
      box-shadow: 0 -20px 60px rgba(0, 0, 0, 0.5);
      border: 1px solid rgba(255, 255, 255, 0.07);
      position: relative;
      animation: profSlideUp 0.38s cubic-bezier(0.34, 1.56, 0.64, 1);
      color: #fff !important;
    }

    @keyframes profSlideUp {
      from {
        opacity: 0;
        transform: translateY(40px)
      }

      to {
        opacity: 1;
        transform: none
      }
    }

    .prof-header-bar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 18px 20px 0;
    }

    .prof-header-title {
      font-size: 1rem;
      font-weight: 700;
      color: #fff !important;
      font-family: inherit;
    }

    .prof-close-btn {
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.12);
      color: #aaa;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      cursor: pointer;
      font-size: 0.95rem;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: background 0.2s, color 0.2s;
    }

    .prof-close-btn:hover {
      background: rgba(255, 255, 255, 0.16);
      color: #fff;
    }

    .prof-user-card {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 20px 20px 18px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    }

    .prof-avatar-wrap {
      position: relative;
      flex-shrink: 0;
    }

    #prof-avatar {
      width: 64px;
      height: 64px;
      border-radius: 50%;
      object-fit: cover;
      border: 2.5px solid #ffbd59;
    }

    .prof-avatar-online {
      position: absolute;
      bottom: 2px;
      right: 2px;
      width: 12px;
      height: 12px;
      background: #22c55e;
      border-radius: 50%;
      border: 2px solid #0f0f0f;
    }

    .prof-user-info {
      flex: 1;
      min-width: 0;
    }

    #prof-name {
      font-size: 1.05rem;
      font-weight: 700;
      color: #fff !important;
      display: block;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      font-family: inherit;
    }

    #prof-email {
      font-size: 0.8rem;
      color: #94a3b8 !important;
      display: block;
      margin-top: 3px;
      font-family: inherit;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .prof-logout-btn {
      flex-shrink: 0;
      background: rgba(239, 68, 68, 0.1);
      border: 1px solid rgba(239, 68, 68, 0.3);
      color: #f87171 !important;
      font-size: 0.78rem;
      font-weight: 600;
      padding: 6px 12px;
      border-radius: 8px;
      cursor: pointer;
      font-family: inherit;
      display: flex;
      align-items: center;
      gap: 5px;
      transition: background 0.2s;
    }

    .prof-logout-btn:hover {
      background: rgba(239, 68, 68, 0.2);
    }

    .prof-bookings-header {
      padding: 16px 20px 10px;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .prof-bookings-header span {
      font-size: 0.92rem;
      font-weight: 700;
      color: #fff !important;
      font-family: inherit;
    }

    .prof-bookings-header .prof-count {
      background: rgba(255, 189, 89, 0.15);
      border: 1px solid rgba(255, 189, 89, 0.3);
      color: #ffbd59 !important;
      font-size: 0.72rem;
      font-weight: 700;
      padding: 2px 8px;
      border-radius: 20px;
    }

    #prof-bookings-list {
      padding: 0 14px 24px;
    }

    html[lang="ar"] .prof-user-card {
      flex-direction: row-reverse;
    }

    html[lang="ar"] .prof-header-bar {
      flex-direction: row-reverse;
    }

    html[lang="ar"] .prof-bookings-header {
      flex-direction: row-reverse;
    }

    html[lang="ar"] .prof-modal-box {
      direction: rtl;
      text-align: right;
    }